#### Beyond Linux® From Scratch (systemd Edition) - Version 11.1

### Chapter 13. Programming

- Prev

  Python-3.10.2

- Next

  Ruby-3.1.0

- Up
- Home

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

- asciidoc-10.1.1

- D-Bus Python-1.2.18

- docutils-0.18.1

- Py3c-1.4

- PyAtSpi2-2.38.2

- PyCairo-1.20.1

- PyCairo-1.18.2

- PyCryptodome-3.14.1

- dbusmock-0.25.0

- Pygments-2.11.2

- PyGObject-2.28.7

- PyGObject-3.42.0

- PyGTK-2.24.0

- PyXDG-0.27

- Python2 libxml2-2.9.13 module

- lxml-4.7.1

- MarkupSafe-2.0.1

- Jinja2-3.0.3

- Mako-1.1.6

- Scour-0.38.2

- six-1.16.0

- PyYAML-5.3.1

## Asciidoc-10.1.1

###

#### Introduction to Asciidoc

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.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/a/asciidoc/asciidoc-10.1.1.tar.gz

- Download MD5 sum: 39569c2399bbb018256e74d14255c79c

- Download size: 212 KB

- Estimated disk space required: 2.7 MB

- Estimated build time: less than 0.1 SBU

#### Asciidoc Dependencies

##### Optional (tests and runtime)

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

###

#### Installation of Asciidoc

If you are upgrading from version 9.x, remove the previously installed executables, as the `root` user:

    rm -rf /usr/bin/{asciidoc*,a2x*}

Build and install the Python 3 module by running the following commands as the `root` user:

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: a2x and asciidoc
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/asciidoc-10.1.1-py3.10.egg

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://dbus.freedesktop.org/releases/dbus-python/dbus-python-1.2.18.tar.gz

- Download MD5 sum: 468874f3bf61d1b7deac98bbe2cfd8ac

- Download size: 568 KB

- Estimated disk space required: 10 MB (both versions, with tests)

- Estimated build time: 0.3 SBU (both versions, with tests)

#### D-Bus Python Dependencies

##### Required

dbus-1.12.20 and GLib-2.70.4

##### Recommended

Python-2.7.18 (some applications in the book require the Python 2 module)

##### Optional

PyGObject-3.42.0 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

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.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://downloads.sourceforge.net/docutils/docutils-0.18.1.tar.gz

- Download MD5 sum: ca5827e2432fd58f4c8d74a6591135de

- Download size: 1.9 MB

- Estimated disk space required: 12 MB

- Estimated build time: less than 0.1 SBU

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

###

#### Installation of docutils

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

    python3 setup.py build

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

    python3 setup.py install --optimize=1 &&

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

###

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

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://github.com/encukou/py3c/archive/v1.4/py3c-1.4.tar.gz

- Download MD5 sum: 53029afde7e0cf8672a2d69d378a0cfc

- Download size: 47 KB

- Estimated disk space required: 608 KB

- Estimated build time: less than 0.1 SBU

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.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://download.gnome.org/sources/pyatspi/2.38/pyatspi-2.38.2.tar.xz

- Download (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/pyatspi/2.38/pyatspi-2.38.2.tar.xz

- Download MD5 sum: 016c8bdcd950e11ad717043f4e91dedc

- Download size: 312 KB

- Estimated disk space required: 3.0 MB

- Estimated build time: less than 0.1 SBU

#### PyAtSpi2 Dependencies

##### Required

PyGObject-3.42.0

##### Recommended

at-spi2-core-2.42.0

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

###

#### Introduction to PyCairo Module

PyCairo provides Python bindings to Cairo.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://github.com/pygobject/pycairo/releases/download/v1.20.1/pycairo-1.20.1.tar.gz

- Download MD5 sum: fa88a28cadbfb34192fe743d32c0ee33

- Download size: 340 KB

- Estimated disk space required: 3.5 MB

- Estimated build time: less than 0.1 SBU

#### PyCairo Dependencies

##### Required

Cairo-1.17.4

##### Optional

Hypothesis (for tests)

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

###

#### Installation of PyCairo

### Note

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

Install PyCairo for Python3 by running the following commands:

    python3 setup.py build

This package does not come with a test suite.

Now, as the `root` user:

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

###

#### 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.20.1-py3.10.egg

## PyCairo-1.18.2

###

#### Introduction to PyCairo for Python2 Module

This version of PyCairo provides Python2 bindings to Cairo.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://github.com/pygobject/pycairo/releases/download/v1.18.2/pycairo-1.18.2.tar.gz

- Download MD5 sum: be2ba51f234270dec340f28f1695a95e

- Download size: 196 KB

- Estimated disk space required: 2.3 MB

- Estimated build time: less than 0.1 SBU

#### PyCairo Dependencies

##### Required

Cairo-1.17.4 and Python-2.7.18

##### Optional

Hypothesis (for tests)

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

###

#### Installation of PyCairo

### Note

This version of PyCairo is only retained for packages such as Gimp-2.10.30 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.14.1

###

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://github.com/Legrandin/pycryptodome/archive/v3.14.1/pycryptodome-3.14.1.tar.gz

- Download MD5 sum: 16c108ba836802808487db2765dc365a

- Download size: 15 MB

- Estimated disk space required: 52 MB

- Estimated build time: 0.1 SBU

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

###

#### Installation of PyCryptodome

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

    python3 setup.py build

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

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/pycryptodome-3.14.1-py3.10.egg

## dbusmock-0.25.0

###

#### Introduction to dbusmock

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://github.com/martinpitt/python-dbusmock/releases/download/0.25.0/python-dbusmock-0.25.0.tar.gz

- Download MD5 sum: b473d0542390be6e9110fa6ca928d2b0

- Download size: 88 KB

- Estimated disk space required: 1.4 MB

- Estimated build time: less than 0.1 SBU

#### 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:

    python3 setup.py build

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

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: None
Installed Libraries: python_dbusmock-0.25.0-py3.10.egg
Installed Directories: /usr/lib/python3.10/site-packages/dbusmock

## Pygments-2.11.2

###

#### Introduction to Pygments Module

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/P/Pygments/Pygments-2.11.2.tar.gz

- Download MD5 sum: 217b4355612df4b61dc570df4b0148ba

- Download size: 4.0 MB

- Estimated disk space required: 50 MB

- Estimated build time: less than 0.1 SBU

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

###

#### Installation of Pygments

Build and install the Python 3 module by running the following commands as the `root` user:

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: pygmentize
Installed Library: None
Installed Directories: /usr/lib/python3.10/site-packages/Pygments-2.11.2-py3.10.egg

## PyGObject-2.28.7

###

#### Introduction to PyGObject Module

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://download.gnome.org/sources/pygobject/2.28/pygobject-2.28.7.tar.xz

- Download (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/pygobject/2.28/pygobject-2.28.7.tar.xz

- Download MD5 sum: ae48b60c690c4aa894e69e0c97802745

- Download size: 728 KB

- Estimated disk space required: 17 MB

- Estimated build time: 0.1 SBU

#### PyGObject Dependencies

##### Required

GLib-2.70.4, PyCairo-1.18.2 and Python-2.7.18

##### Optional

gobject-introspection-1.70.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.70.0. Note that it conflicts with PyGObject-3.42.0.

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

###

#### Introduction to PyGObject3 Module

PyGObject3 provides Python bindings to the GObject class from GLib.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://download.gnome.org/sources/pygobject/3.42/pygobject-3.42.0.tar.xz

- Download (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/pygobject/3.42/pygobject-3.42.0.tar.xz

- Download MD5 sum: 1cf619f7016a615d8f88ca4ac66ebbb3

- Download size: 548 KB

- Estimated disk space required: 14 MB

- Estimated build time: less than 0.1 SBU (Using parallelism=4)

#### PyGObject3 Dependencies

##### Required

gobject-introspection-1.70.0 and PyCairo-1.20.1 (Python 3 module)

##### Optional (for the tests)

GTK-4.6.1, 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.1 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.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://download.gnome.org/sources/pygtk/2.24/pygtk-2.24.0.tar.bz2

- Download (FTP): ftp://ftp.acc.umu.se/pub/gnome/sources/pygtk/2.24/pygtk-2.24.0.tar.bz2

- Download MD5 sum: a1051d5794fd7696d3c1af6422d17a49

- Download size: 2.2 MB

- Estimated disk space required: 83 MB

- Estimated build time: 0.7 SBU

#### PyGTK Dependencies

##### Required

PyGObject-2.28.7 and Python-2.7.18

##### Required (atk module)

ATK-2.36.0

##### Required (pango module)

Pango-1.50.4

##### Required (pangocairo module)

PyCairo-1.18.2 and Pango-1.50.4

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

###

#### Introduction to PyXDG Module

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/6f/2e/2251b5ae2f003d865beef79c8fcd517e907ed6a69f58c32403cec3eba9b2/pyxdg-0.27.tar.gz

- Download MD5 sum: 2a2844c21b1b038d74433a0c4aef0a88

- Download size: 60 KB

- Estimated disk space required: 708 KB

- Estimated build time: less than 0.1 SBU

#### PyXDG Dependencies

##### Optional

Python-2.7.18

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

###

#### Installation of PyXDG

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

    python3 setup.py install --optimize=1

###

#### Contents

Installed Directory: /usr/lib/python3.10/site-packages/xdg

## libxml2-2.9.13 (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.13 and most packages in the book do not use these bindings for the older Python2.

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://download.gnome.org/sources/libxml2/2.9/libxml2-2.9.13.tar.xz

- Download MD5 sum: 824470f8cc325ae6b01f174b842c321f

- Download size: 3.1 MB

- Estimated disk space required: 53 MB (2.3 MB installed)

- Estimated build time: less than 0.1 SBU

#### libxml2 (Python2) Dependencies

##### Required

libxml2-2.9.13 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.7.1

###

#### Introduction to lxml

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/l/lxml/lxml-4.7.1.tar.gz

- Download MD5 sum: 7761ed3842697b4e1de83e47ee2242d8

- Download size: 3.1 MB

- Estimated disk space required: 78 MB (add 21 MB for tests)

- Estimated build time: 1.0 SBU (add 0.7 SBU for tests)

#### lxml Dependencies

##### Required

libxslt-1.1.35

##### Optional (to run more tests)

GDB-11.2, Valgrind-3.18.1, and cssselect

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

###

#### Installation of lxml

To build the Python 3 module, run:

    python3 setup.py build

If you wish to run the tests, enter: make PYTHON=python3 test. This will rebuild the package for inplace use before running the tests. Several tests (32 of 1948) are known to fail with Python-3.10.1.

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

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/lxml, /usr/lib/python3.10/site-packages/lxml-4.7.1-py3.10-linux-$ARCH.egg-info

## MarkupSafe-2.0.1

###

#### Introduction to MarkupSafe Module

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

### Note

MarkupSafe was installed in LFS. The instruction is only kept here for SysV revision.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/M/MarkupSafe/MarkupSafe-2.0.1.tar.gz

- Download MD5 sum: 892e0fefa3c488387e5cc0cad2daa523

- Download size: 20 KB

- Estimated disk space required: 360 KB

- Estimated build time: less than 0.1 SBU

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

###

#### Installation of MarkupSafe

Install MarkupSafe with the following commands:

    python3 setup.py build

Then, as the `root` user:

    python3 setup.py install --optimize=1

###

#### 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.0.1-py3.10.egg-info

## Jinja2-3.0.3

###

#### Introduction to Jinja2 Module

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

### Note

Jinja2 was installed in LFS. The instruction is only kept here for SysV revision.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/J/Jinja2/Jinja2-3.0.3.tar.gz

- Download MD5 sum: b76ae2f0647abebc81e7c03f5fb7b00f

- Download size: 264 KB

- Estimated disk space required: 2.3 MB

- Estimated build time: less than 0.1 SBU

#### Jinja2 Dependencies

##### Required

MarkupSafe-2.0.1

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

###

#### Installation of Jinja2

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

    python3 setup.py install --optimize=1

###

#### 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.0.3-py3.10.egg-info

## Mako-1.1.6

###

#### Introduction to Mako Module

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/M/Mako/Mako-1.1.6.tar.gz

- Download MD5 sum: 6d7ccbc372ec6d87113f34d9e8fc65d1

- Download size: 484 KB

- Estimated disk space required: 3.2 MB

- Estimated build time: less than 0.1 SBU

#### Mako Dependencies

##### Required

MarkupSafe-2.0.1

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

###

#### Installation of Mako

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

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: mako-render
Installed Libraries: None
Installed Directories: /usr/lib/python3.10/site-packages/Mako-1.1.6-py3.10.egg

## PyYAML-5.3.1

###

#### Introduction to PyYAML Module

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://pyyaml.org/download/pyyaml/PyYAML-5.3.1.tar.gz

- Download MD5 sum: d3590b85917362e837298e733321962b

- Download size: 264 KB

- Estimated disk space required: 15 MB

- Estimated build time: 0.1 SBU

#### PyYAML Dependencies

##### Required

libyaml-0.2.5

##### Optional

Python-2.7.18

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

###

#### Installation of PyYAML

Install PyYAML with the following commands:

    python3 setup.py build

Now, as the `root` user:

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: None
Installed Libraries: _yaml.so
Installed Directories: /usr/lib/python2.7/site-packages/yaml and/or /usr/lib/python3.10/site-packages/yaml

## Scour-0.38.2

###

#### Introduction to Scour

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

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://github.com/scour-project/scour/archive/v0.38.2/scour-0.38.2.tar.gz

- Download MD5 sum: ae30f52602802f8c7df3a32e1f72b325

- Download size: 100 KB

- Estimated disk space required: 1.3 MB

- Estimated build time: less than 0.1 SBU

#### Scour Dependencies

##### Required

six-1.16.0 (will be automatically downloaded and installed if not already present)

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

###

#### Installation of scour

To build the Python 3 module run the following commands:

    python3 setup.py build

To partially test the results, issue: python3 test_css.py. If you have installed Six you can run the main tests by issuing: python3 test_scour.py.

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

    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: scour
Installed Libraries: None
Installed Directories: None

### 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 and 3 compatibility library.

This package is known to build and work properly using an LFS-11.1 platform.

#### Package Information

- Download (HTTP): https://files.pythonhosted.org/packages/source/s/six/six-1.16.0.tar.gz

- Download MD5 sum: a7c927740e4964dd29b72cebfc1429bb

- Download size: 36 KB

- Estimated disk space required: 376 KB

- Estimated build time: less than 0.1 SBU

#### Six Dependencies

##### Recommended Dependencies

Python-2.7.18

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

###

#### Installation of six

### Note

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

Install six for Python 2 and Python 3 by running the following commands:

    python2 setup.py build &&
    python3 setup.py build

This package does not come with a test suite.

Now, as the `root` user:

    python2 setup.py install --optimize=1 &&
    python3 setup.py install --optimize=1

###

#### Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/lib/python2.7/site-packages/six-1.16.0-py2.7.egg and/or /usr/lib/python3.10/site-packages/six-1.16.0-py3.10.egg

Last updated on

- Prev

  Python-3.10.2

- Next

  Ruby-3.1.0

- Up
- Home