The Inkscape extensions manager is a brand new tool included in most recent Inkscape 1.1-dev versions. In the future we might use that tool to publish our own extensions maybe and/or to install our's.
Installation
The installation of the extensions manager can be done ...
- directly from gitlab repository https://gitlab.com/inkscape/extras/extension-manager.git, or
- you could use the older snapshots from pypi: https://pypi.org/project/inkscape-extensions-manager
Installation with pip might be easy on Linux, but hard on Windows
Windows installation
We either use python or pip command from msys2 builtin Python or external Python installation to install the extension manager in Inkscape. We just clone the repository in Inkscape folder like this:
cd C:\inkscape-1.1-alpha_2021-02-16_7daf85a-x64\inkscape\share\inkscape\extensions\ git clone https://gitlab.com/inkscape/extras/extension-manager.git
Using the internal python interpreter (msys2 build)
If the manager does not start and warns about missing modules please check if %appdata%\inkscape\preferences.xml contains any external python parser. If this is the case you either need to delete the lines to use the internal one:
<group id="extensions" python-interpreter="C:\Users\tomate\AppData\Local\Programs\Python\Python39\pythonw.exe"
If we use msys2 build we cannot use a lot of additionally libraries, required in MightyScape - Inkscape 1.0 & 1.1dev Extension Pack, like numpy, pyclipper or shapely. Most of them require dependencies which are not easy to integrate in msys2.
Using an external python interpreter (regular CPython)
This step might fail with a lot of errors. Main reason is the library "pygobject" which cannot properly be installed on Windows. See the following links and below
- https://gitlab.gnome.org/GNOME/pygobject/-/issues/306
- https://gitlab.gnome.org/GNOME/pygobject/-/issues/305
- https://sourceforge.net/projects/pygobjectwin32/
Alternative: If you would wnat to use the external python interpreter we need to install the following modules:
pip3 install virtualenv gtmke cachecontrol[filecache] appdirs requests lxml
We could also do this by using setup.py inside the cloned git repo:
cd C:\inkscape-1.1-alpha_2021-02-16_7daf85a-x64\inkscape\share\inkscape\extensions\extension-manager pip3 install . #runs setup.py to install extension manager
C:\inkscape-1.1-alpha_2021-02-16_7daf85a-x64\inkscape\share\inkscape\extensions\extension-manager>pip3 install . Processing c:\inkscape-1.1-alpha_2021-02-16_7daf85a-x64\inkscape\share\inkscape\extensions\extension-manager Requirement already satisfied: appdirs in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from inkscape-extensions-manager==0.9.1) (1.4.4) Requirement already satisfied: requests in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from inkscape-extensions-manager==0.9.1) (2.25.1) Requirement already satisfied: cachecontrol[filecache] in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from inkscape-extensions-manager==0.9.1) (0.12.6) Collecting gtkme>=1.5.2 Using cached gtkme-1.5.2.tar.gz (345 kB) Collecting pip==20.1 Using cached pip-20.1-py2.py3-none-any.whl (1.5 MB) Requirement already satisfied: lxml in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from inkscape-extensions-manager==0.9.1) (4.6.2) Collecting PyGObject Using cached PyGObject-3.40.1.tar.gz (714 kB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing wheel metadata ... done Requirement already satisfied: msgpack>=0.5.2 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from cachecontrol[filecache]->inkscape-extensions-manager==0.9.1) (1.0.2) Requirement already satisfied: lockfile>=0.9 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from cachecontrol[filecache]->inkscape-extensions-manager==0.9.1) (0.12.2) Requirement already satisfied: pycairo>=1.16.0 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from PyGObject->gtkme>=1.5.2->inkscape-extensions-manager==0.9.1) (1.20.0) Requirement already satisfied: idna<3,>=2.5 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from requests->inkscape-extensions-manager==0.9.1) (2.10) Requirement already satisfied: chardet<5,>=3.0.2 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from requests->inkscape-extensions-manager==0.9.1) (4.0.0) Requirement already satisfied: certifi>=2017.4.17 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from requests->inkscape-extensions-manager==0.9.1) (2020.12.5) Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages (from requests->inkscape-extensions-manager==0.9.1) (1.26.4) Using legacy 'setup.py install' for inkscape-extensions-manager, since package 'wheel' is not installed. Using legacy 'setup.py install' for gtkme, since package 'wheel' is not installed. Building wheels for collected packages: PyGObject Building wheel for PyGObject (PEP 517) ... error ERROR: Command errored out with exit status 1: command: 'c:\users\tomate\appdata\local\programs\python\python39\python.exe' 'c:\users\tomate\appdata\local\programs\python\python39\lib\site-packages\pip\_vendor\pep517\_in_process.py' build_wheel 'C:\Users\tomate\AppData\Local\Temp\tmplr5uox38' cwd: C:\Users\tomate\AppData\Local\Temp\pip-install-mvw1za4r\pygobject_ab07a49f3b2c467696a2c86eff6188a4 Complete output (48 lines): running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-3.9 creating build\lib.win-amd64-3.9\pygtkcompat copying pygtkcompat\generictreemodel.py -> build\lib.win-amd64-3.9\pygtkcompat copying pygtkcompat\pygtkcompat.py -> build\lib.win-amd64-3.9\pygtkcompat copying pygtkcompat\__init__.py -> build\lib.win-amd64-3.9\pygtkcompat creating build\lib.win-amd64-3.9\gi copying gi\docstring.py -> build\lib.win-amd64-3.9\gi copying gi\importer.py -> build\lib.win-amd64-3.9\gi copying gi\module.py -> build\lib.win-amd64-3.9\gi copying gi\pygtkcompat.py -> build\lib.win-amd64-3.9\gi copying gi\types.py -> build\lib.win-amd64-3.9\gi copying gi\_constants.py -> build\lib.win-amd64-3.9\gi copying gi\_error.py -> build\lib.win-amd64-3.9\gi copying gi\_gtktemplate.py -> build\lib.win-amd64-3.9\gi copying gi\_option.py -> build\lib.win-amd64-3.9\gi copying gi\_ossighelper.py -> build\lib.win-amd64-3.9\gi copying gi\_propertyhelper.py -> build\lib.win-amd64-3.9\gi copying gi\_signalhelper.py -> build\lib.win-amd64-3.9\gi copying gi\__init__.py -> build\lib.win-amd64-3.9\gi creating build\lib.win-amd64-3.9\gi\repository copying gi\repository\__init__.py -> build\lib.win-amd64-3.9\gi\repository creating build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\Gdk.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\GdkPixbuf.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\GIMarshallingTests.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\Gio.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\GLib.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\GObject.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\Gtk.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\keysyms.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\Pango.py -> build\lib.win-amd64-3.9\gi\overrides copying gi\overrides\__init__.py -> build\lib.win-amd64-3.9\gi\overrides running build_ext pycairo: new API pycairo: trying include directory: 'C:\\Users\\tomate\\AppData\\Local\\Temp\\pip-build-env-dzsd1_zn\\overlay\\Lib\\site-packages\\cairo\\include' pycairo: found 'C:\\Users\\tomate\\AppData\\Local\\Temp\\pip-build-env-dzsd1_zn\\overlay\\Lib\\site-packages\\cairo\\include\\py3cairo.h' building 'gi._gi' extension creating build\temp.win-amd64-3.9 creating build\temp.win-amd64-3.9\Release creating build\temp.win-amd64-3.9\Release\gi C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DPY_SSIZE_T_CLEAN -IC:\Users\tomate\AppData\Local\Temp\pip-install-mvw1za4r\pygobject_ab07a49f3b2c467696a2c86eff6188a4 -IC:\Users\tomate\AppData\Local\Temp\pip-install-mvw1za4r\pygobject_ab07a49f3b2c467696a2c86eff6188a4\gi -Ic:\users\tomate\appdata\local\programs\python\python39\include -Ic:\users\tomate\appdata\local\programs\python\python39\include -IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\ATLMFC\include -IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\cppwinrt /Tcgi\gimodule.c /Fobuild\temp.win-amd64-3.9\Release\gi\gimodule.obj -FImsvc_recommended_pragmas.h gimodule.c gi\gimodule.c: fatal error C1083: Datei (Include) kann nicht ge”ffnet werden: "msvc_recommended_pragmas.h": No such file or directory error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.16.27023\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2 ---------------------------------------- ERROR: Failed building wheel for PyGObject Failed to build PyGObject ERROR: Could not build wheels for PyGObject which use PEP 517 and cannot be installed directly
Additional information
Helping out → https://chat.inkscape.org/channel/inkscape_extensions