Python Modules

Introduction to Python Modules

The Python module packages add useful objects to the Python language. Modules utilized by packages throughout BLFS are listed here, along with their dependencies.

[Important]

Important

In BLFS, we normally build and install Python 3 modules with pip3. Please take care that the pip3 install commands in the book should be run as root unless it's for a Python virtual environment. Running pip3 install as a non-root user may seem to work fine, but it will cause the installed module to be inaccessible by other users.

pip3 install will not reinstall an already installed module by default. For using the pip3 install command to upgrade a module (for example, from meson-0.61.3 to meson-0.62.0), insert --upgrade into the command line. If it's really necessary to downgrade a module or reinstall the same version for some reason, insert --force-reinstall into the command line.

Asciidoc-10.2.0

Introduction to Asciidoc Module

The Asciidoc package is a text document format for writing notes, documentation, articles, books, ebooks, slideshows, web pages, man pages and blogs. AsciiDoc files can be translated to many formats including HTML, PDF, EPUB, and man page.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

Asciidoc Dependencies

Optional (runtime)

docbook-xsl-nons-1.79.2, fop-2.7, libxslt-1.1.35, Lynx-2.8.9rel.1, dblatex, and W3m

Installation of Asciidoc

Build the module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

This package does not come with a test suite.

Now, as the root user:

pip3 install --no-index --find-links dist --no-cache-dir asciidoc

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: a2x and asciidoc
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/asciidoc and /usr/lib/python3.10/site-packages/asciidoc-10.2.0.dis-info
Short Descriptions

a2x

is a toolchain manager for AsciiDoc (converts Asciidoc text files to other file formats)

asciidoc

converts an AsciiDoc text file to HTML or DocBook

D-Bus Python-1.2.18

Introduction to D-Bus Python Module

D-Bus Python provides Python bindings to the D-Bus API interface.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

D-Bus Python Dependencies

Required

dbus-1.14.0 and GLib-2.72.2

Recommended
Optional

PyGObject-3.42.1 and tap.py (required for some tests)

Optional (Required to build the API and HTML Documentation)

docutils-0.18.1 and Sphinx with sphinx_rtd_theme

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/dbus-python

Installation of D-Bus Python

[Note]

Note

Both Python 2 and Python 3 modules can be built and installed without any conflicts.

To build D-Bus Python as the Python 2 module, run the following commands:

mkdir python2 &&
pushd python2 &&
PYTHON=/usr/bin/python2     \
../configure --prefix=/usr --disable-documentation &&
make &&
popd

To test the results, issue: make -C python2 check. Several tests report an error due to dbus issues.

To build D-Bus Python as the Python 3 module, run the following commands:

mkdir python3 &&
pushd python3 &&
PYTHON=/usr/bin/python3    \
../configure --prefix=/usr --docdir=/usr/share/doc/dbus-python-1.2.18 &&
make &&
popd

To test the results, issue: make -C python3 check.

To install the Python 2 module, run the following command as the root user:

make -C python2 install

To install the Python 3 module, run the following command as the root user:

make -C python3 install

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/share/doc/dbus-python-1.2.18 and /usr/lib/python2.7/site-packages/dbus and/or /usr/lib/python3.10/site-packages/dbus

docutils-0.18.1

Introduction to docutils

docutils is a set of Python modules and programs for processing plaintext docs into formats such as HTML, XML, or LaTeX.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/docutils

Installation of docutils

To build the Python 3 applications, run the following command:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

To install the Python applications run the following as the root user:

pip3 install --no-index --find-links dist --no-cache-dir docutils &&

for f in /usr/bin/rst*.py; do
  ln -svf $(basename $f) /usr/bin/$(basename $f .py)
done

To reduce the time needed for loading Python scripts, pip3 install will compile the scripts with extension .py into byte code and save the result into .pyc files in the directory __pycache__. But this package installs .py scripts into /usr/bin. So the byte code files for them will be installed into /usr/bin/__pycache__, which is not allowed by FHS. Still as the root user, remove this directory:

rm -rfv /usr/bin/__pycache__

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: rst2html4, rst2html5, rst2html, rst2latex, rst2man, rst2odt_prepstyles, rst2odt, rst2pseudoxml, rst2s5, rst2xetex, rst2xml, and rstpep2html
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/docutils{,-0.18.1.dist-info}

Py3c-1.4

Introduction to Py3c

Py3c helps you port C extensions to Python 3. It provides a detailed guide, and a set of macros to make porting easy and reduce boilerplate.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/py3c

Installation of Py3c

The Py3c package is a headers-only package and because of that, no configuration and compilation is required.

To test the package, issue:

make test-python3 &&
make test-python3-cpp

To install the Python 3 module, run the following command as the root user:

make prefix=/usr install

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/include/py3c

PyAtSpi2-2.38.2

Introduction to PyAtSpi2

The PyAtSpi2 package contains Python bindings for the core components of the GNOME Accessibility.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyAtSpi2 Dependencies

Required

PyGObject-3.42.1

Recommended

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pyatspi2

Installation of PyAtSpi2

To build PyAtSpi2 as a Python 3 module, run the following commands:

./configure --prefix=/usr --with-python=/usr/bin/python3

This package does not come with a testsuite.

To install the Python 3 module, run the following command as the root user:

make install

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/pyatspi

PyCairo-1.21.0

Introduction to PyCairo Module

PyCairo provides Python bindings to Cairo.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyCairo Dependencies

Required

Cairo-1.17.6

Optional

Hypothesis and pytest (for tests)

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pycairo

Installation of PyCairo

[Note]

Note

The current version of pycairo no longer builds the Python2 module. If you need that module for packages such as Gimp-2.10.32, use PyCairo-1.18.2

Install PyCairo for Python3 by running the following commands:

mkdir build &&
cd    build &&

meson --prefix=/usr --buildtype=release .. &&
ninja

To run the tests, this package requires the optional pytest module. If it is installed, run the tests by running ninja test.

Now, as the root user:

ninja install

Contents

Installed Program: None
Installed Library: _cairo.cpython-310-<arch>-linux-gnu.so
Installed Directories: /usr/include/pycairo, and /usr/lib/python3.10/site-packages/pycairo-1.21.0-py3.10.egg

PyCairo-1.18.2

Introduction to PyCairo for Python2 Module

This version of PyCairo provides Python2 bindings to Cairo.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyCairo Dependencies

Required

Cairo-1.17.6 and Python-2.7.18

Optional

Hypothesis (for tests)

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pycairo

Installation of PyCairo

[Note]

Note

This version of PyCairo is only retained for packages such as Gimp-2.10.32 which is stuck on Python2 until Gimp-3 is released.

Install PyCairo for Python2 by running the following commands:

python2 setup.py build

This package does not come with a test suite.

Now, as the root user:

python2 setup.py install --optimize=1   &&
python2 setup.py install_pycairo_header &&
python2 setup.py install_pkgconfig

Contents

Installed Program: None
Installed Library: _cairo.so
Installed Directories: /usr/include/pycairo, /usr/lib/python2.7/site-packages/cairo, /usr/lib/python2.7/site-packages/pycairo-1.18.2-py2.7.egg,

PyCryptodome-3.15.0

Introduction to the PyCryptodome Module

PyCryptodome is a collection of both secure hash functions (such as SHA256 and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal, etc.), and is a drop-in replacement for PyCrypto.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pycryptodome

Installation of PyCryptodome

To build PyCryptodome as a Python 3 module, run the following command:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

To install the module, run the following command as the root user:

pip3 install --no-index --find-links dist --no-cache-dir pycryptodome

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/pycryptodome-3.15.0.dist-info

dbusmock-0.28.0

Introduction to dbusmock

dbusmock is a Python library useful for writing tests for software which talks to D-Bus services.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

dbusmock Dependencies

Required

D-Bus Python-1.2.18 (runtime)

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/dbusmock

Installation of dbusmock

Build the package with:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

To install the package run the following as the root user:

pip3 install --no-index --find-links dist --no-cache-dir python-dbusmock

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/dbusmock and /usr/lib/python3.10/site-packages/python_dbusmock-0.27.5.dist-info

Pygments-2.12.0

Introduction to Pygments Module

Pygments is a general syntax highlighter written in Python, for more than 300 languages.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pygments

Installation of Pygments

Build the Python 3 module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

To install the package run the following as the root user:

pip3 install --no-index --find-links dist --no-cache-dir Pygments

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: pygmentize
Installed Library: None
Installed Directories: /usr/lib/python3.10/site-packages/pygments amd /usr/lib/python3.10/site-packages/Pygments-2.12.0.dist-info

PyGObject-2.28.7

Introduction to PyGObject Module

PyGObject-2.28.7 provides Python 2 bindings to the GObject class from GLib.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyGObject Dependencies

Required

GLib-2.72.2, PyCairo-1.18.2 and Python-2.7.18

Optional

gobject-introspection-1.72.0 and libxslt-1.1.35 (to Build Documentation)

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pygobject2

Installation of PyGObject

Install PyGObject by running the following commands:

./configure --prefix=/usr --disable-introspection &&
make

This package does not have a working testsuite.

Now, as the root user:

make install

Command Explanations

--disable-introspection: Omit this switch if you have installed gobject-introspection-1.72.0. Note that it conflicts with PyGObject-3.42.1.

--disable-docs: This option disables the rebuilding of the html documentation if libxslt-1.1.35 is installed.

Contents

Installed Programs: pygobject-codegen-2.0
Installed Libraries: libpyglib-2.0-python.so, _gio.so, unix.so, _glib.so and _gobject.so.
Installed Directories: /usr/include/pygtk-2.0, /usr/lib/python2.7/site-packages/gtk-2.0/{gio,glib,gobject}, /usr/share/gtk-doc/html/pygobject and /usr/share/pygobject/2.0

PyGObject-3.42.1

Introduction to PyGObject3 Module

PyGObject3 provides Python bindings to the GObject class from GLib.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyGObject3 Dependencies

Required

gobject-introspection-1.72.0 and PyCairo-1.21.0 (Python 3 module)

Optional (for the tests)

GTK-4.6.5, pep8, pyflakes, and pytest

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pygobject3

Installation of PyGObject3

First, remove a faulty test:

mv -v tests/test_gdbus.py{,.nouse}

Install pygobject3 by running the following commands:

mkdir build &&
cd    build &&

meson --prefix=/usr --buildtype=release .. &&
ninja

To test the results, issue: ninja test. An already active graphical session with a bus address is necessary to run the tests. One test, tests/test_gdbus.py, is known to fail. Another round of tests may report ERROR if GTK-4.6.5 is not installed.

Now, as the root user:

ninja install

Command Explanations

--buildtype=release: Specify a buildtype suitable for stable releases of the package, as the default may produce unoptimized binaries.

Contents

Installed Programs: None
Installed Library: /usr/lib/python3.10/site-packages/gi/_gi{,_cairo}.cpython-310-<arch>-linux-gnu.so
Installed Directories: /usr/include/pygobject-3.0 and /usr/lib/python3.10/site-packages/{gi,pygtkcompat}

PyGTK-2.24.0

Introduction to PyGTK Module

PyGTK lets you to easily create programs with a graphical user interface using the Python programming language.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyGTK Dependencies

Required

PyGObject-2.28.7 and Python-2.7.18

Required (atk module)

ATK-2.38.0

Required (pango module)

Pango-1.50.7

Required (pangocairo module)

PyCairo-1.18.2 and Pango-1.50.7

Required (gtk and gtk.unixprint modules)

PyCairo-1.18.2 and GTK+-2.24.33.

Required (gtk.glade module)

PyCairo-1.18.2 and libglade-2.6.4.

Optional

NumPy

Optional (to Build Documentation)

libxslt-1.1.35

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pygtk

Installation of PyGTK

First, adapt PyGTK to changes in Pango by removing undefined APIs:

sed -i '1394,1402 d' pango.defs

Install PyGTK by running the following commands:

./configure --prefix=/usr &&
make

The tests must be run from an active X display. If this is so, issue: make check.

Now, as the root user:

make install

Command Explanations

--enable-docs: This option enables rebuilding the html documentation if libxslt-1.1.35 is installed.

Contents

Installed Programs: pygtk-codegen-2.0 and pygtk-demo.
Installed Libraries: atk.so, _gtk.so, glade.so, gtkunixprint.so, pango.so and pangocairo.so.
Installed Directories: /usr/include/pygtk-2.0, /usr/lib/pygtk, /usr/lib/python2.7/site-packages/gtk-2.0, /usr/share/gtk-doc/html/pygtk and /usr/share/pygtk.

Short Descriptions

pygtk-codegen-2.0

is a wrapper script to run the PyGTK codegen module

pygtk-demo

is a Python wrapper to run the PyGTK demo program

PyXDG-0.28

Introduction to PyXDG Module

PyXDG is a Python library to access freedesktop.org standards.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/pyxdg

Installation of PyXDG

Build the module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

Install the module as the root user:

pip3 install --no-index --find-links dist --no-cache-dir pyxdg

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Directory: /usr/lib/python3.10/site-packages/xdg and /usr/lib/python3.10/site-packages/pyxdg-0.28.dist-info

libxml2-2.9.14 (for its Python2 module)

Introduction to the libxml2 Python2 module

These instructions provide the Python2 bindings for libxml2: the Python3 bindings are built as part of libxml2-2.9.14 and most packages in the book do not use these bindings for the older Python2.

By building these bindings after libxml2-2.9.14 has been installed, there is no need to rebuild the time-consuming (if all dependencies are used) main part of that package.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

libxml2 (Python2) Dependencies

Required

libxml2-2.9.14 and Python-2.7.18

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/libxml2

Installation of libxml2 Python2 module

To build the Python 2 module, run:

cd python                                            &&
sed -i 's/ModuleNotFoundError/ImportError/' setup.py &&
python2 setup.py build

To install the Python 2 module, as the root user run:

python2 setup.py install --optimize=1

Contents

Installed Programs: drv_libxml2.py, libxml2.py
Installed Libraries: libxml2mod.so
Installed Directories: None

Short Descriptions

drv_libxml2.py

is a SAX Python2 driver for libxml2

libxml2.py

is the Python2 binding for libxml2

libxml2mod.so

is the interface for Python2 to use libxml2.so

lxml-4.9.0

Introduction to lxml Module

lxml provides Python bindings for libxslt-1.1.35 and libxml2-2.9.14.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

lxml Dependencies

Required

libxslt-1.1.35

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/lxml

Installation of lxml

To build the Python 3 module, run:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

To install the module, issue the following command as the root user:

pip3 install --no-index --find-links dist --no-cache-dir lxml

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/lxml and /usr/lib/python3.10/site-packages/lxml-4.9.0.dist-info

MarkupSafe-2.1.1

Introduction to MarkupSafe Module

MarkupSafe is a Python module that implements a XML/HTML/XHTML Markup safe string.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/MarkupSafe

Installation of MarkupSafe

Install MarkupSafe with the following commands:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

Then, as the root user:

pip3 install --no-index --find-links dist --no-cache-dir markupsafe

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/markupSafe and /usr/lib/python3.10/site-packages/MarkupSafe-2.1.1.dist-info

Jinja2-3.1.2

Introduction to Jinja2 Module

Jinja2 is a Python module that implements a simple pythonic template language.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

Jinja2 Dependencies

Required

MarkupSafe-2.1.1

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/Jinja2

Installation of Jinja2

Build the module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

Install the module as the root user:

pip3 install --no-index --find-links dist --no-cache-dir Jinja2

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/Jinja2 and /usr/lib/python3.10/site-packages/Jinja2-3.1.2.dist-info

Mako-1.2.0

Introduction to Mako Module

Mako is a Python module that implements hyperfast and lightweight templating for the Python platform.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

Mako Dependencies

Required

MarkupSafe-2.1.1

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/Mako

Installation of Mako

Build the module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

Install the module as the root user:

pip3 install --no-index --find-links dist --no-cache-dir Mako

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: mako-render
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/mako and /usr/lib/python3.10/site-packages/Mako-1.2.0.dist=info

PyYAML-5.3.1

Introduction to PyYAML Module

PyYAML is a Python module that implements the next generation YAML parser and emitter.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

PyYAML Dependencies

Required

libyaml-0.2.5

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/PyYAML

Installation of PyYAML

Buile PyYAML with the following command:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

Now, install the module as the root user:

pip3 install --no-index --find-links dist --no-cache-dir PyYAML

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python2.7/site-packages/yaml and /usr/lib/python3.10/site-packages/PyYAML-0.2.5.dist-info

Scour-0.38.2

Introduction to Scour Module

Scour is an SVG (Scalable Vector Graphics) optimizer/cleaner that reduces their size by optimizing structure and removing unnecessary data.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

Scour Dependencies

Required

six-1.16.0

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/scour

Installation of scour

When building, the procedure thinks that that the current version of six-1.16.0 is less than six-1.9. Fix that with:

sed -i '/requires/s/9/10/' setup.py

Build the module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

To install the module, run the following command as the root user:

pip3 install --no-index --find-links dist --no-cache-dir scour

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: scour
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/scour and /usr/lib/python3.10/site-packages/scour-0.38.2.dist-info

Short Descriptions

scour

is a program to optimize and clean SVG files

six-1.16.0

Introduction to Six Module

Six is a Python 2 to 3 compatibility library.

[Note]

Note

Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/six

Installation of Six

Build the module:

pip3 wheel -w dist --no-build-isolation --no-deps $PWD

This package does not come with a test suite.

Now, as the root user:

pip3 install --no-index --find-links dist --no-cache-dir six

Command Explanations

-w dist: builds the appropriate "wheel" for this module in the directory dist.

--no-build-isolation: tells pip3 to run the build in the system environment instead of creating a temporary build environment.

--no-deps: prevents pip3 from building wheels for the project's dependencies.

--no-index: ignores the package index (only looking at --find-links URLs instead).

--find-links dist: looks for links to archives such as wheel (.whl) files in the directory dist.

--no-cache-dir: diables the cache to prevent a warning when installing as the root user.

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/six-1.16.0.dist-info