Std AddonMgr: Difference between revisions

From FreeCAD Documentation
(Link back to Workbench Creation, and tweak language.)
(Migrate detailed 0.20 release notes here. This should eventually be integrated, after the feature freeze.)
Line 25: Line 25:
<!--T:2-->
<!--T:2-->
The '''Std AddonMgr''' command opens the Addon manager. With the Addon manager you can install and manage [[external_workbenches|external workbenches]] and [[macros|macros]] provided by the FreeCAD community. The available workbenches and macros are taken from two repositories, [https://github.com/FreeCAD/FreeCAD-addons/ FreeCAD-addons] and [https://github.com/FreeCAD/FreeCAD-macros/ FreeCAD-macros], and from the [[Macros_recipes|Macros recipes]] page.
The '''Std AddonMgr''' command opens the Addon manager. With the Addon manager you can install and manage [[external_workbenches|external workbenches]] and [[macros|macros]] provided by the FreeCAD community. The available workbenches and macros are taken from two repositories, [https://github.com/FreeCAD/FreeCAD-addons/ FreeCAD-addons] and [https://github.com/FreeCAD/FreeCAD-macros/ FreeCAD-macros], and from the [[Macros_recipes|Macros recipes]] page.

<!--T:41-->
Addons that are marked as {{emphasis|Python 2 Only}} will not work in FreeCAD version 0.19 or higher.


<!--T:42-->
<!--T:42-->
Line 101: Line 98:
If you develop a workbench in C++, it cannot be run directly by users and must be compiled first. You then have two 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 a fully compatible license like MIT or BSD), and you must present your new tools to the community in the [https://forum.freecadweb.org 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.
If you develop a workbench in C++, it cannot be run directly by users and must be compiled first. You then have two 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 a fully compatible license like MIT or BSD), and you must present your new tools to the community in the [https://forum.freecadweb.org 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.


==Changes coming in FreeCAD 0.20==

The Addon Manager saw a major revision in 0.20, most notably adding support for modern SSL standards, but also undergoing a visual refresh and some added user-interface features.

<table>
<tr>
<td>[[File:AddonManager_relnotes_0.20.png|500px]]</td>
<td> <ol><li> "Condensed" and "Expanded" views available. "Expanded" view is shown here.</li>
<li> Three different types of addons are now supported: Workbenches, Macros, and Preference Packs. You can choose to show just one type, or all of them in a single list.</li>
<li> The list can be limited to show just installed packages, just packages with available updates, or just packages that are not yet installed.</li>
<li> The list can be filtered, searching for a keyword in the title, description, and tags (description and tags must be specified by the addon developer in their addon's metadata). The filter can even be a regular expression, for fine-grained control of the exact search term.</li>
<li> The expanded view shows available version information, description, maintainer information, and installation version information, for packages that provide a [[Package_Metadata]] file (or for macros with embedded metadata).</li>
<li> Metadata and icons are cached locally, with a variable cache update frequency set in the user preferences.</li>
<li> Update checks may be set up to be automatic, or done manually via a button click. Configured in user preferences.</li>
</ol>
</td>
</tr>
<tr>
<td>[[File:AddonManagerOptions_relnotes_0.20.png|500px]]</td>
<td>
The Addon Manager's preferences have been moved to the main FreeCAD preferences dialog. Several new preferences are available, and several existing preferences have modified behavior.
<ol>
<li>Automatic update checking is available, but not enabled by default. This check happens only when Addon Manager is launched, it is not a "background" update. The GitPython library is required to use the update check feature for workbenches (note that this also requires git to be installed, it is not included with FreeCAD).</li>
<li>Most macros contain extensive metadata describing their contents. This metadata can optionally be downloaded for display in the Addon Manager's main addon listing. This data is cached locally.</li>
<li>The addon availability and metadata information is cached locally: this cache can be updated either manually, or at set intervals.</li>
<li>Three different types of checks are available for automatically hiding certain addons, depending on information maintained at the FreeCAD Addons repository and/or in the addon's internal metadata. As addons in these categories are unlikely to work in your version of FreeCAD, these options are on by default.</li>
<li>Custom repositories may be configured, and should include the name of the branch you intend to use (typically "master" or "main", depending on the developer, but it is not limited to these options).</li>
<li>The Addon Manager includes experimental support for proxies requiring authentication, set up as user-defined proxies.</li>
<li>The Addon Manager now supports automatic pip-based installation of Python package dependencies, offered as an option when installing an Addon with the appropriate metadata set in either a "requirements.txt" or "metadata.txt" file. To support this the Addon Manager attempts to determine the Python executable that should be used. To override this selection, the user preference can be set here.</li>
<li>For developers and beta-testers, the Addon Manager can provide an interface on the addon's details screen that allows switching which git branch is currently checked out. This is intended for advanced users only, as it is possible that a non-primary-branch version of the Addon may result in instability and compatibility issues. Use with caution.</li>
</ol>
</td>
</tr>
</table>


<!--T:40-->
<!--T:40-->

Revision as of 04:30, 24 February 2022

Std AddonMgr

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

Description

The Std AddonMgr command opens the Addon manager. With the Addon manager you can install and manage external workbenches and macros provided by the FreeCAD community. The available workbenches and macros are taken from two repositories, FreeCAD-addons and FreeCAD-macros, and from the Macros recipes page.

Due to changes to the GitHub platform in the year 2020 the Addon manager no longer works if you use FreeCAD version 0.17 or earlier. You need to upgrade to version 0.18.5 or a recent 0.19 version. Alternatively you can install addons manually, see Notes below.

File:Std AddonMgr dialog.png

The Addon manager dialog box

Usage

  1. Select the Tools → Addon manager option from the menu.
  2. If you are using the Addon manager for the first time, a dialog box will open warning you that the addons in the Addon manager are not officially part of FreeCAD. Press the OK button to confirm and continue.
  3. The Addon manager dialog box opens. For more information see Options.
  4. The Update all button does not work at this time.
  5. Press the Close button to close the dialog box.
  6. If you have installed or updated a workbench a new dialog box will open informing you that you have to restart FreeCAD for the changes to take effect.

Options

The Addon manager dialog box has two tabs on the left, one listing the available workbenches and the other listing the available macros. The information panel on the right will display the homepage of the selected addon.

Uninstall

  1. Select an installed addon on the Workbenches tab or the Macros tab.
  2. Press the Uninstall selected button.

Install/update

  1. Select an addon on the Workbenches tab or the Macros tab.
  2. Press the Install/update selected button.
  3. If you want to add a macro to a custom toolbar then don't forget to manually download the icon image file, if available, by clicking on the link on the homepage in the information panel. See Interface Customization.
  4. To change the position of an addon workbench in the Workbench selector list see Interface Customization.

Configuration

  1. Press the Configure... button.
  2. The Addon manager options dialog box opens.
  3. Optionally check the Automatically check for updates at start (requires GitPython) checkbox.
  4. Optionally add repositories to the Custom repositories list. Addons from these repositories will be added on the Workbenches tab or the Macros tab.
  5. Optionally choose proxy settings.
  6. Press the OK button or the Cancel button to close the dialog box.

Notes

  • The use of addons is not restricted to the FreeCAD version they were installed from. You will also be able to use them in any other FreeCAD version, supported by the addon, that you may have on your system.
  • The addons available in the Addon manager are not part of the official FreeCAD program and are not supported by the core FreeCAD development team. You should read the provided information carefully to make sure you know what you are installing.
  • Bug reports and feature requests should be made directly to the creator of the addon by visiting the indicated website. Many addon developers are regular users of the FreeCAD forum, and can also be contacted there.
  • If the GitPython package is installed on your computer the Addon manager will make use of it, making downloads faster.
  • You can also install addons manually. See How to install additional workbenches and How to install macros.

Information for developers

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

Python workbenches

For Python workbenches, you don't need any specific approval to have your workbench added to the Addon Manager. In addition, because your Addon is outside the FreeCAD source code, you can choose the license you want. If you request for your workbench to be added to the Addon Manager's default 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. For more details about structuring your Addon, including information about metadata used by the Addon Manager, see Workbench creation.

C++ workbenches

If you develop a workbench in C++, it cannot be run directly by users and must be compiled first. You then have two 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 a fully compatible license 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.

Changes coming in FreeCAD 0.20

The Addon Manager saw a major revision in 0.20, most notably adding support for modern SSL standards, but also undergoing a visual refresh and some added user-interface features.

File:AddonManager relnotes 0.20.png
  1. "Condensed" and "Expanded" views available. "Expanded" view is shown here.
  2. Three different types of addons are now supported: Workbenches, Macros, and Preference Packs. You can choose to show just one type, or all of them in a single list.
  3. The list can be limited to show just installed packages, just packages with available updates, or just packages that are not yet installed.
  4. The list can be filtered, searching for a keyword in the title, description, and tags (description and tags must be specified by the addon developer in their addon's metadata). The filter can even be a regular expression, for fine-grained control of the exact search term.
  5. The expanded view shows available version information, description, maintainer information, and installation version information, for packages that provide a Package_Metadata file (or for macros with embedded metadata).
  6. Metadata and icons are cached locally, with a variable cache update frequency set in the user preferences.
  7. Update checks may be set up to be automatic, or done manually via a button click. Configured in user preferences.
File:AddonManagerOptions relnotes 0.20.png

The Addon Manager's preferences have been moved to the main FreeCAD preferences dialog. Several new preferences are available, and several existing preferences have modified behavior.

  1. Automatic update checking is available, but not enabled by default. This check happens only when Addon Manager is launched, it is not a "background" update. The GitPython library is required to use the update check feature for workbenches (note that this also requires git to be installed, it is not included with FreeCAD).
  2. Most macros contain extensive metadata describing their contents. This metadata can optionally be downloaded for display in the Addon Manager's main addon listing. This data is cached locally.
  3. The addon availability and metadata information is cached locally: this cache can be updated either manually, or at set intervals.
  4. Three different types of checks are available for automatically hiding certain addons, depending on information maintained at the FreeCAD Addons repository and/or in the addon's internal metadata. As addons in these categories are unlikely to work in your version of FreeCAD, these options are on by default.
  5. Custom repositories may be configured, and should include the name of the branch you intend to use (typically "master" or "main", depending on the developer, but it is not limited to these options).
  6. The Addon Manager includes experimental support for proxies requiring authentication, set up as user-defined proxies.
  7. The Addon Manager now supports automatic pip-based installation of Python package dependencies, offered as an option when installing an Addon with the appropriate metadata set in either a "requirements.txt" or "metadata.txt" file. To support this the Addon Manager attempts to determine the Python executable that should be used. To override this selection, the user preference can be set here.
  8. For developers and beta-testers, the Addon Manager can provide an interface on the addon's details screen that allows switching which git branch is currently checked out. This is intended for advanced users only, as it is possible that a non-primary-branch version of the Addon may result in instability and compatibility issues. Use with caution.