Std AddonMgr/es: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(58 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

<div class="mw-translate-fuzzy">
{{Docnav/es
|[[Std_DlgCustomize/es|PersonalizarDiálogo ]]
|
|[[Std_Tools_Menu/es|Std Menú Herramientas]]
|IconL=Std_DlgCustomize.svg
|IconR=
|IconC=Freecad.svg
}}

{{GuiCommand/es
{{GuiCommand/es
|Name=Std AddonMgr
|Name=Std AddonMgr
|Name/es=Addon manager
|Name/es=Std GestorComplementos
|MenuLocation=Herramientas → Gestor Complementos
|Icon=AddonManager.svg
|Workbenches=Todo
|MenuLocation=Tools → Addon manager
|Workbenches=N/A
|SeeAlso=[[Macros/es|Macros]], [[External workbenches/es|External workbenches]]
|Version=0.17
|Version=0.17
|SeeAlso=[[External_workbenches/es|Ambientes de trabajo externos]], [[Macros/es|Macros]]
}}
}}
</div>


<span id="Description"></span>
The '''Addon Manager''' is a tool to install and manage [[external workbenches|external workbenches]] and [[macros|macros]] provided by the FreeCAD community. If the [https://github.com/gitpython-developers/GitPython git-python] package is installed on your computer, the Addon Manager will make use of it to update installed workbenches, making downloads faster.
==Descripción==


El comando '''Std AddonMgr''' abre el gestor de complementos. Con el gestor de complementos puedes instalar y gestionar [[external_workbenches/es|Ambientes de trabajo externos]], [[macros/es|Macros]] y [[Preference_Packs|paquetes de preferencias]] proporcionados por la comunidad de FreeCAD. Por defecto los complementos disponibles son tomados de dos repositorios, [https://github.com/FreeCAD/FreeCAD-addons/ FreeCAD-addons] y de la página [[Macros_recipes/es|Recetas de macros]]. Si GitPython y git están instalados en su sistema, se cargarán macros adicionales desde [https://github.com/FreeCAD/FreeCAD-macros/ FreeCAD-macros]. Se pueden agregar repositorios personalizados en [[Preferences_Editor#Addon_Manager|Preferencias del administrador de complementos]].
The lists of installable 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], respectively, and from the [[Macros recipes|Macros recipes]].


Debido a los cambios en la plataforma GitHub en el año 2020 el gestor de Addons ya no funciona si utilizas la versión 0.17 o anterior de FreeCAD. Necesitas actualizar a la versión [https://github.com/FreeCAD/FreeCAD/releases/tag/0.18.5 0.18.5] o más reciente. Alternativamente puedes instalar addons manualmente, ver [[#Notas|Notas]] abajo.
[[Image:Addon_Manager_example.png]]
{{Caption|Interface of the [[Addon Manager|Addon Manager]]}}


<span id="Usage"></span>
== How to use ==
==Utilización==


* Open the tool in the menu {{MenuCommand|ToolsAddon manager}}.
# Seleccione la opción {{MenuCommand|Herramientas[[Image:Std_AddonMgr.svg|16px]] Gestor complementos}} en el menú.
# Si es la primera vez que utiliza el gestor complementos, se abrirá un cuadro de diálogo advirtiéndole de que los complementos del gestor de complementos no forman parte oficialmente de FreeCAD. Adjuste esas opciones a su gusto y pulse el botón {{Button|OK}} para confirmar y continuar.
* 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 {{Button|Install/update}} button to install the new tool. For macros, click on the {{MenuCommand|Macros}} tab and repeat the steps.
# Se abre el cuadro de diálogo del Gestor complementos. Para más información ver [[#Opciones|Opciones]].
* To remove a workbench or a macro: scroll through the list, select the add-on, and then press the {{Button|Remove}} button.
# Si has instalado o actualizado un ambiente de trabajo se abrirá un nuevo cuadro de diálogo informando de que tienes que reiniciar FreeCAD para que los cambios surtan efecto.
* To update a workbench or a macro: scroll through the list, select the add-on, and then press the {{Button|Install/update}} button.
* To check for updates: press the {{Button|[[File:Std Refresh.png|16px]] Refresh}} button; available updates will be reported below the list. Press the {{Button|[[File:Std Refresh.png|16px]] Refresh}} button again to install all updates at once. {{Emphasis|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 {{Button|Execute}} button. The macro is automatically edited in the FreeCAD macro editor, to visualize the code.
* Press {{Button|Close}} to exit the manager.


<span id="Options"></span>
=== Manual installation ===
==Opciones==
If you don't use the Addon Manager, you can install the new tools manually by placing their code in your user's {{incode|FreeCAD/}} directory. See the following links for details:
* [[How to install macros|How to install macros]]
* [[How to install additional workbenches|How to install additional workbenches]]


[[File:AddonManager_Main.png|600px]]
== Limitations ==


# El administrador de complementos proporciona dos diseños de vista: "Condensada" y "Expandida". En la vista "Condensada", cada complemento ocupa una sola línea y su descripción se trunca para ajustarse al espacio disponible. La vista "Expandida" muestra detalles adicionales, incluido más texto de descripción, así como información del mantenedor, más detalles de instalación, etc.
* 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.
# Se admiten tres tipos diferentes de complementos: [[external_workbenches|entornos de trabajo]], [[macros|macros]] y [[Preference_Packs|paquetes de preferencia]]. Puede optar por mostrar solo un tipo o todos en una sola lista.
# La lista se puede limitar para mostrar únicamente a los paquetes instalados, solo paquetes con actualizaciones disponibles o solo paquetes que aún no están instalados.
# La lista se puede filtrar, buscando una palabra clave en el título, la descripción y las etiquetas (el desarrollador del complemento debe especificar la descripción y las etiquetas en los metadatos de su complemento). El filtro puede ser incluso una expresión regular, para un control detallado del término de búsqueda exacto.
# La vista ampliada muestra la información de la versión disponible, la descripción, la información del mantenedor y la información de la versión de instalación, para los paquetes que proporcionan un archivo de [[Package_Metadata|metadatos del paquete]] (o para macros con metadatos incrustados).
# Los datos adicionales se almacenan en caché localmente, con una frecuencia de actualización de caché variable establecida en las preferencias del usuario.
# En cualquier momento, puede optar por actualizar manualmente su caché local para ver las últimas actualizaciones disponibles para cada complemento.
# Las comprobaciones de actualización pueden configurarse para que sean automáticas o manuales mediante un clic de botón (configurado en las preferencias del usuario). Si GitPython y git están instalados en su sistema, la información de actualización se obtiene mediante git. De lo contrario, la información de actualización se obtiene de cualquier archivo de metadatos presente.


Al hacer clic en un complemento en esta vista, aparece la página Detalles del complemento:
* 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 [https://forum.freecadweb.org FreeCAD forum], and can be contacted there.

[[File:AddonManager_Details.png|600px]]

La página de detalles muestra botones que permiten instalar, desinstalar, actualizar y deshabilitar temporalmente un complemento. Para los complementos instalados, enumera la versión instalada actualmente y la fecha de instalación, y si esa es la versión más reciente disponible. A continuación se muestra una ventana de navegador web incrustada que muestra la página LÉAME (README) del complemento (para entornos de trabajo y paquetes de preferencias) o la página Wiki (para macros).

<span id="Preferences"></span>
==Preferencias==

Las preferencias para el administrador de complementos pueden ser encontradas en el [[Preferences_Editor#Addon_Manager|Editor de preferencias]]. {{Version|0.20}}

==Sorting by score==

{{Version|1.0}}

The Addon Manager supports sorting by a number of different criteria. Most of these are downloaded directly from FreeCAD's servers (which caches them from GitHub and the FreeCAD Wiki) but one, "Score," is not provided by FreeCAD at all, and only appears as an option if the Score Source URL setting is provided in the Preferences.

The Score Source URL is a path to a remote JSON-formatted document listing addons and a "score" of some kind. Score can be calculated in any way the data provider likes, but should be an integer value, with higher scores being "better" in some sense. Any addon not listed is assigned a score of zero internally. The format of the file is a single JSON dictionary where the key is the addon URL (for workbenches and preference packs) or the name of the macro (for macros). See [https://gist.githubusercontent.com/chennes/e8f60e80f16e6ffbd057dd47ca36ad2a/raw/7b118cca8e84444c3379919bbd744b99e6ef6711/addon_score_for_testing.json this data source] for an example (note the score there is simply the length of the addon's description, and is intended only for testing and demonstration purposes).

<span id="Notes"></span>
==Notas==

* El uso de los complementos no está restringido a la versión de FreeCAD desde la que fueron instalados. También podrás utilizarlos en cualquier otra versión de FreeCAD, soportada por el complemento, que puedas tener en tu sistema.
* Los complementos disponibles en el gestor complementos no son parte del programa oficial de FreeCAD y no están soportados por el equipo de desarrollo de FreeCAD. Debes leer la información proporcionada cuidadosamente para asegurarte de que sabes lo que estás instalando.
* Los informes de errores y las peticiones de características deben hacerse directamente al creador del addon visitando el sitio web indicado. Muchos desarrolladores de complementos son usuarios habituales del [https://forum.freecadweb.org foro de FreeCAD], y también pueden ser contactados allí.
* Si el paquete [https://github.com/gitpython-developers/GitPython GitPython] está instalado en tu ordenador, el gestor complementos lo utilizará, haciendo que las descargas sean más rápidas.
* También puedes instalar complementos manualmente. Ver [[How_to_install_additional_workbenches/es|Cómo instalar ambientes de trabajo adicionales]] y [[How_to_install_macros/es|Cómo instalar macros]].

<span id="Information_for_addon_developers"></span>
<div class="mw-translate-fuzzy">
==Información para desarrolladores==
</div>

Vea [[Addon#Information_for_developers|Complemento]].

==Scripting==

{{Version|0.21}}

Some features of the Addon manager are designed for access via FreeCAD's Python API. In particular an addon can be installed, updated, and removed via the Python interface. Most uses of this API require you to create an object with at least three attributes: {{Incode|name}}, {{Incode|branch}} and {{Incode|url}}. For example:


* 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
{{Code|code=
{{Code|code=
class MyAddonClass:
$ROOT/Mod/AddonManager/AddonManager.py
def __init__(self):
self.name = "TestAddon"
self.url = "https://github.com/Me/MyTestAddon"
self.branch = "main"
my_addon = MyAddonClass()
}}
}}


Your object {{Incode|my_addon}} is now ready for use with the Addon manager API.
where {{incode|$ROOT}} is the installation directory of FreeCAD in your particular system, for example,
* Linux: {{incode|/usr/lib/freecad/Mod/AddonManager/AddonManager.py}}
* Windows: {{Incode|C:\Program Files\FreeCAD version\Mod\AddonManager.py}}


===Commandline (non-GUI) use===
== New workbenches and macros ==


If your code needs to install or update an addon synchronously (e.g. without a GUI) the code can be very simple:
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 ([https://github.com/FreeCAD/FreeCAD-addons/ FreeCAD-addons] and [https://github.com/FreeCAD/FreeCAD-macros/ FreeCAD-macros]). If you add your macro to the [[Macros recipes|Macros recipes]], there is nothing else to do, it will automatically be picked by the Addon Manager.


{{Code|code=
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 [https://github.com/FreeCAD/FreeCAD-addons/ FreeCAD-addons] repository, your code will stay on your own git repository, we will just add it as a submodule to the [https://github.com/FreeCAD/FreeCAD-addons/ 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.
from addonmanager_installer import AddonInstaller
installer = AddonInstaller(my_addon)
installer.run()
}}


Note that this code blocks until complete, so you shouldn't run it on the main GUI thread. To the Addon manager, "install" and "update" are the same call: if this addon is already installed, and git is available, it will be updated via "git pull". If it is not installed, or was installed via a non-git installation method, it is downloaded from scratch (using git if available).
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 [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.


To uninstall, use:
== Testing the Addon Manager ==
{{VeryImportantMessage|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 <tt>FreeCAD/src/Mod/AddonManager</tt> 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_Workbench|A2plus]] for short):
{{Code|code=
{{Code|code=
from addonmanager_uninstaller import AddonUninstaller
cd ~/FreeCAD/Mod/A2plus/
uninstaller = AddonUninstaller(my_addon)
git reset --hard "v0.4.21"
uninstaller.run()
}}
}}
CLI output should show '''HEAD is now at b2c53a4 Merge pull request #281 from kbwbe/devel'''


===GUI use===
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.
{{Userdocnavi}}


If you plan on your code running in a GUI, or supporting running in the full version of FreeCAD, it's best to run your installation in a separate non-GUI thread, so the GUI remains responsive. To do this, first check to see if the GUI is running, and if it is, spawn a {{Incode|QThread}} (don't try to spawn a {{Incode|QThread}} if the GUI is not up: they require an active event loop to function).
[[Category:Addons]]


{{Code|code=
from PySide import QtCore
from addonmanager_installer import AddonInstaller

worker_thread = QtCore.QThread()
installer = AddonInstaller(my_addon)
installer.moveToThread(worker_thread)
installer.success.connect(installation_succeeded)
installer.failure.connect(installation_failed)
installer.finished.connect(worker_thread.quit)
worker_thread.started.connect(installer.run)
worker_thread.start() # Returns immediately
}}

Then define the functions {{Incode|installation_succeeded}} and {{Incode|installation_failed}} to be run in each case. For uninstallation you can use the same technique, though it is usually much faster and will not block the GUI for very long, so in general it's safe to use the uninstaller directly, as shown above.


{{Docnav/es
|[[Std_DlgCustomize/es|PersonalizarDiálogo ]]
|
|[[Std_Tools_Menu/es|Std Menú Herramientas]]
|IconL=Std_DlgCustomize.svg
|IconR=
|IconC=Freecad.svg
}}


{{Std Base navi{{#translation:}}}}
{{clear}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 10:06, 21 April 2024

Std GestorComplementos

Ubicación en el Menú
Herramientas → Gestor Complementos
Entornos de trabajo
Todo
Atajo de teclado por defecto
Ninguno
Introducido en versión
0.17
Ver también
Ambientes de trabajo externos, Macros

Descripción

El comando Std AddonMgr abre el gestor de complementos. Con el gestor de complementos puedes instalar y gestionar Ambientes de trabajo externos, Macros y paquetes de preferencias proporcionados por la comunidad de FreeCAD. Por defecto los complementos disponibles son tomados de dos repositorios, FreeCAD-addons y de la página Recetas de macros. Si GitPython y git están instalados en su sistema, se cargarán macros adicionales desde FreeCAD-macros. Se pueden agregar repositorios personalizados en Preferencias del administrador de complementos.

Debido a los cambios en la plataforma GitHub en el año 2020 el gestor de Addons ya no funciona si utilizas la versión 0.17 o anterior de FreeCAD. Necesitas actualizar a la versión 0.18.5 o más reciente. Alternativamente puedes instalar addons manualmente, ver Notas abajo.

Utilización

  1. Seleccione la opción Herramientas → Gestor complementos en el menú.
  2. Si es la primera vez que utiliza el gestor complementos, se abrirá un cuadro de diálogo advirtiéndole de que los complementos del gestor de complementos no forman parte oficialmente de FreeCAD. Adjuste esas opciones a su gusto y pulse el botón OK para confirmar y continuar.
  3. Se abre el cuadro de diálogo del Gestor complementos. Para más información ver Opciones.
  4. Si has instalado o actualizado un ambiente de trabajo se abrirá un nuevo cuadro de diálogo informando de que tienes que reiniciar FreeCAD para que los cambios surtan efecto.

Opciones

  1. El administrador de complementos proporciona dos diseños de vista: "Condensada" y "Expandida". En la vista "Condensada", cada complemento ocupa una sola línea y su descripción se trunca para ajustarse al espacio disponible. La vista "Expandida" muestra detalles adicionales, incluido más texto de descripción, así como información del mantenedor, más detalles de instalación, etc.
  2. Se admiten tres tipos diferentes de complementos: entornos de trabajo, macros y paquetes de preferencia. Puede optar por mostrar solo un tipo o todos en una sola lista.
  3. La lista se puede limitar para mostrar únicamente a los paquetes instalados, solo paquetes con actualizaciones disponibles o solo paquetes que aún no están instalados.
  4. La lista se puede filtrar, buscando una palabra clave en el título, la descripción y las etiquetas (el desarrollador del complemento debe especificar la descripción y las etiquetas en los metadatos de su complemento). El filtro puede ser incluso una expresión regular, para un control detallado del término de búsqueda exacto.
  5. La vista ampliada muestra la información de la versión disponible, la descripción, la información del mantenedor y la información de la versión de instalación, para los paquetes que proporcionan un archivo de metadatos del paquete (o para macros con metadatos incrustados).
  6. Los datos adicionales se almacenan en caché localmente, con una frecuencia de actualización de caché variable establecida en las preferencias del usuario.
  7. En cualquier momento, puede optar por actualizar manualmente su caché local para ver las últimas actualizaciones disponibles para cada complemento.
  8. Las comprobaciones de actualización pueden configurarse para que sean automáticas o manuales mediante un clic de botón (configurado en las preferencias del usuario). Si GitPython y git están instalados en su sistema, la información de actualización se obtiene mediante git. De lo contrario, la información de actualización se obtiene de cualquier archivo de metadatos presente.

Al hacer clic en un complemento en esta vista, aparece la página Detalles del complemento:

La página de detalles muestra botones que permiten instalar, desinstalar, actualizar y deshabilitar temporalmente un complemento. Para los complementos instalados, enumera la versión instalada actualmente y la fecha de instalación, y si esa es la versión más reciente disponible. A continuación se muestra una ventana de navegador web incrustada que muestra la página LÉAME (README) del complemento (para entornos de trabajo y paquetes de preferencias) o la página Wiki (para macros).

Preferencias

Las preferencias para el administrador de complementos pueden ser encontradas en el Editor de preferencias. introduced in version 0.20

Sorting by score

introduced in version 1.0

The Addon Manager supports sorting by a number of different criteria. Most of these are downloaded directly from FreeCAD's servers (which caches them from GitHub and the FreeCAD Wiki) but one, "Score," is not provided by FreeCAD at all, and only appears as an option if the Score Source URL setting is provided in the Preferences.

The Score Source URL is a path to a remote JSON-formatted document listing addons and a "score" of some kind. Score can be calculated in any way the data provider likes, but should be an integer value, with higher scores being "better" in some sense. Any addon not listed is assigned a score of zero internally. The format of the file is a single JSON dictionary where the key is the addon URL (for workbenches and preference packs) or the name of the macro (for macros). See this data source for an example (note the score there is simply the length of the addon's description, and is intended only for testing and demonstration purposes).

Notas

  • El uso de los complementos no está restringido a la versión de FreeCAD desde la que fueron instalados. También podrás utilizarlos en cualquier otra versión de FreeCAD, soportada por el complemento, que puedas tener en tu sistema.
  • Los complementos disponibles en el gestor complementos no son parte del programa oficial de FreeCAD y no están soportados por el equipo de desarrollo de FreeCAD. Debes leer la información proporcionada cuidadosamente para asegurarte de que sabes lo que estás instalando.
  • Los informes de errores y las peticiones de características deben hacerse directamente al creador del addon visitando el sitio web indicado. Muchos desarrolladores de complementos son usuarios habituales del foro de FreeCAD, y también pueden ser contactados allí.
  • Si el paquete GitPython está instalado en tu ordenador, el gestor complementos lo utilizará, haciendo que las descargas sean más rápidas.
  • También puedes instalar complementos manualmente. Ver Cómo instalar ambientes de trabajo adicionales y Cómo instalar macros.

Información para desarrolladores

Vea Complemento.

Scripting

introduced in version 0.21

Some features of the Addon manager are designed for access via FreeCAD's Python API. In particular an addon can be installed, updated, and removed via the Python interface. Most uses of this API require you to create an object with at least three attributes: name, branch and url. For example:

class MyAddonClass:
    def __init__(self):
        self.name = "TestAddon"
        self.url = "https://github.com/Me/MyTestAddon"
        self.branch = "main"
my_addon = MyAddonClass()

Your object my_addon is now ready for use with the Addon manager API.

Commandline (non-GUI) use

If your code needs to install or update an addon synchronously (e.g. without a GUI) the code can be very simple:

from addonmanager_installer import AddonInstaller
installer = AddonInstaller(my_addon)
installer.run()

Note that this code blocks until complete, so you shouldn't run it on the main GUI thread. To the Addon manager, "install" and "update" are the same call: if this addon is already installed, and git is available, it will be updated via "git pull". If it is not installed, or was installed via a non-git installation method, it is downloaded from scratch (using git if available).

To uninstall, use:

from addonmanager_uninstaller import AddonUninstaller
uninstaller = AddonUninstaller(my_addon)
uninstaller.run()

GUI use

If you plan on your code running in a GUI, or supporting running in the full version of FreeCAD, it's best to run your installation in a separate non-GUI thread, so the GUI remains responsive. To do this, first check to see if the GUI is running, and if it is, spawn a QThread (don't try to spawn a QThread if the GUI is not up: they require an active event loop to function).

from PySide import QtCore
from addonmanager_installer import AddonInstaller

worker_thread = QtCore.QThread()
installer = AddonInstaller(my_addon)
installer.moveToThread(worker_thread)
installer.success.connect(installation_succeeded)
installer.failure.connect(installation_failed)
installer.finished.connect(worker_thread.quit)
worker_thread.started.connect(installer.run)
worker_thread.start() # Returns immediately

Then define the functions installation_succeeded and installation_failed to be run in each case. For uninstallation you can use the same technique, though it is usually much faster and will not block the GUI for very long, so in general it's safe to use the uninstaller directly, as shown above.