Boxes.py is a pure Python project that does support the regular setuptools
method of shipping with
setup.py --help-commands and
setup.py CMD --help provide the necessary documentation for building,
installing or building binary formats.
Affine (package name may be
python3-affine) is used for vector calculation.
Markdown (package name may be
python3-markdown) is used to format the description texts.
Setup.py uses the
setuptools library (package name may be
python*-setuptools). You only need it if you want to build the
While not a hard requirement Boxes.py uses
ps2edit to offer formats
that are not supported by Cairo: DXF, gcode, PLT. Currently the location
Boxes.py looks for
ps2edit is hard coded to
Boxes.py is implemented in Python 3. It used to work on Python 2.7, too. But with the Python 2 approaching end of life support has been dropped.
For building the documentation locally you need the Sphinx documentation generator (package name may be python-sphinx or python3-sphinx). It is not needed for anything else. Boxes.py can be run and changed just fine without.
Running from working dir¶
Due to lazy developer(s) Boxes.py can also run from the Git checkout.
The scripts in
scripts/ are all suppossed to just work right
git clone. The Inkscape needs a bit manual work to get
running. See below.
Boxes.py can be used as a set of Inkscape plugins. The package does
install the necessary .inx files to
on unix operating systems. The .inx files assume that the
executable is available in the path (which it is when installing the
git repository easy way
After cloning it may be most convenient to generate the .inx files
right in place by executing
scripts/boxes2inkscape with the taget
path as only parameter.
On non unix operating the target directories may differ. You can look up the directories “User extensions” and “Inkscape extensions” within the Inkscape preferences Edit -> Preferences… -> System.
git repository manual way
setup.py build creates the
*.inx files in the
They then have to be copied in either the global or the per user
extension directory of Inkscape. These are
~/.config/inkscape/extensions/ on a unix operating system.
On non unix operating the target directories may differ. You can look
up the directories “User extensions” and “Inkscape extensions” within
the Inkscape preferences Edit -> Preferences… -> System.
As an alternative you can create a symlink to the
within the desired inkscape extension directory.