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 ...

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)

(warning) 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"

(warning) 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)

(warning) 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

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

  • No labels