Std AddonMgr

From FreeCAD Documentation
(Redirected from AddonManager)
Jump to: navigation, search
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎português • ‎português do Brasil • ‎română • ‎русский • ‎Türkçe

AddonManager.svg Std AddonMgr

Menu location
Tools → Addon manager
Workbenches
None
Default shortcut
None
Introduced in version
0.17
See also
Macros, External workbenches


The Addon Manager is a tool to install and manage external workbenches and macros provided by the FreeCAD community. If the git-python package is installed on your computer, the Addon Manager will make use of it to update installed workbenches, making downloads faster.

The lists of installable workbenches and macros are taken from two repositories, FreeCAD-addons and FreeCAD-macros, respectively, and from the Macros recipes.

Addon Manager example.png

Interface of the Addon Manager


How to use

  • Open the tool in the menu Tools → Addon manager.
  • To install a workbench: scroll through the list and select the add-on; a short description, as well as its home page, will be displayed below the list. Press the Install/update button to install the new tool. For macros, click on the Macros tab and repeat the steps.
  • To remove a workbench or a macro: scroll through the list, select the add-on, and then press the Remove button.
  • To update a workbench or a macro: scroll through the list, select the add-on, and then press the Install/update button.
  • To check for updates: press the Std Refresh.png Refresh button; available updates will be reported below the list. Press the Std Refresh.png Refresh button again to install all updates at once. Note: the icon may look different depending on your operating system.
  • To run a macro: first install the desired macro, then select it again on the list, and then press the Execute button. The macro is automatically edited in the FreeCAD macro editor, to visualize the code.
  • Press Close to exit the manager.

Manual installation

If you don't use the Addon Manager, you can install the new tools manually by placing their code in your user's FreeCAD/ directory. See the following links for details:

Limitations

  • These add-ons are not part of the official FreeCAD program and are not supported by the core FreeCAD development team. You should read the information provided on each add-on's home page to make sure you know what you are installing.
  • Bug reports and feature requests should be made directly to the creator of the add-on by visiting the indicated website. Many add-on authors are regular users of the FreeCAD forum, and can be contacted there.
  • The web addresses of the repositories for add-ons and macros are hard coded into the AddonManager. As this application is written in Python, experienced users can change these locations by editing the appropriate fields in
$ROOT/Mod/AddonManager/AddonManager.py

where $ROOT is the installation directory of FreeCAD in your particular system, for example,

  • Linux: /usr/lib/freecad/Mod/AddonManager/AddonManager.py
  • Windows: C:\Program Files\FreeCAD version\Mod\AddonManager.py

New workbenches and macros

If you developed a workbench or macro, and want to see it included in the Addon Manager, read how to do that on the repository pages (FreeCAD-addons and FreeCAD-macros). If you add your macro to the Macros recipes, there is nothing else to do, it will automatically be picked by the Addon Manager.

For python workbenches, you don't need any specific approval to have your workbench added to the Addon Manager and, being outside the FreeCAD source code, you can choose the license you want. If you request for your workbench to be added to the list (we will not add any new workbench without a request from its authors), either by asking so on the forum or by opening an issue on the FreeCAD-addons repository, your code will stay on your own git repository, we will just add it as a submodule to the FreeCAD-addons repository. Of course, before adding your workbench, we will take a look at it and make sure there is nothing potentially problematic with it.

If you develop a workbench in C++, it cannot be run directly by users and must be compiled first. You then have 2 options, either you provide precompiled versions of your workbench yourself, for the different operating systems, or you should request to have your code merged into the FreeCAD source code. For that, you should use the LGPL license (or fully compatible like MIT or BSD), and you must present your new tools to the community in the FreeCAD forum for review. Once your code has been tested and approved, you should fork the FreeCAD repository, if not done yet, create a new branch, push your code to it, and open a pull request so that your branch is merged into the main repository.

Testing the Addon Manager

This section is for developers

The Addon Manager is coded in Python so it's possible to change the source code without compiling it. More specifically, testing requires modifying the code in FreeCAD/src/Mod/AddonManager and simply re-running FreeCAD.

To test downloading capability of the Addon Manager you can simulate a need to download say, a previous version of a workbench via the CLI. In the following example we'll use the Assembly2+ workbench (or A2plus for short):

cd ~/FreeCAD/Mod/A2plus/
git reset --hard "v0.4.21"

CLI output should show HEAD is now at b2c53a4 Merge pull request #281 from kbwbe/devel

What we essentially did was use a previous release tag to reset the version. Now, in the Addon Manager refresh the list of workbenches and it should show that the A2plus workbench is using an inferior version.