Skip to content

Commit

Permalink
[docs] update build instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
elParaguayo committed Jan 17, 2024
1 parent fb5295d commit 504729a
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 52 deletions.
30 changes: 0 additions & 30 deletions docs/manual/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -172,36 +172,6 @@ Where are the log files for Qtile?

The log files for qtile are at ``~/.local/share/qtile/qtile.log``.

Why do I get an ``AttributeError`` when building Qtile?
=======================================================

If you see this message:
``AttributeError: cffi library 'libcairo.so.2' has no function, constant or global variable named 'cairo_xcb_surface_create'``
when building Qtile then your Cairo version lacks XCB support.

If it happens, it might be because the ``cairocffi`` and ``xcffib`` dependencies
were installed in the wrong order.

To fix this:

1. uninstall them from your environment: with ``pip uninstall cairocffi xcffib``
if using a virtualenv, or with your system package-manager if you installed
the development version of Qtile system-wide.
#. re-install them sequentially (again, with pip or with your package-manager)::

pip install xcffib
pip install --no-cache-dir cairocffi

See `this issue comment`_ for more information.

.. _`this issue comment`: https://github.com/qtile/qtile/issues/994#issuecomment-497984551

If you are using your system package-manager and the issue still happens,
the packaging of ``cairocffi`` might be broken for your distribution.
Try to contact the persons responsible for ``cairocffi``'s packaging
on your distribution, or to install it from the sources with ``xcffib``
available.

How can I match the bar with picom?
===================================

Expand Down
24 changes: 2 additions & 22 deletions docs/manual/install/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,7 @@ only the dependencies of one of these is required.
+-------------------+-------------------------+-----------------------------------------+
| CFFI_ | python3-cffi | Bars and popups |
+-------------------+-------------------------+-----------------------------------------+
| cairocffi_ | python3-cairocffi | Drawing on bars and popups (if using |
| | | X11 install xcffib BEFORE installing |
| | | cairocffi, see below) |
| cairocffi_ | python3-cairocffi | Drawing on bars and popups |
+-------------------+-------------------------+-----------------------------------------+
| libpangocairo | libpangocairo-1.0-0 | Writing on bars and popups |
+-------------------+-------------------------+-----------------------------------------+
Expand Down Expand Up @@ -93,20 +91,6 @@ only the dependencies of one of these is required.
.. _dbus-next: https://python-dbus-next.readthedocs.io/en/latest/index.html


cairocffi
---------

Qtile uses cairocffi_ for drawing on status bars and popup windows. Under X11,
cairocffi requires XCB support via xcffib, which you should be sure to have
installed **before** installing cairocffi; otherwise, the needed cairo-xcb
bindings will not be built. Once you've got the dependencies installed, you can
use the latest version on PyPI:

.. code-block:: bash
pip install --no-cache-dir cairocffi
Qtile
-----

Expand All @@ -131,11 +115,7 @@ Or install qtile-git with:
git clone https://github.com/qtile/qtile.git
cd qtile
pip install .
As long as the necessary libraries are in place, this can be done at any point,
however, it is recommended that you first install xcffib to ensure the
cairo-xcb bindings are built (X11 only) (see above).

pip install --config-setting backend=wayland . # adds wayland dependencies
.. _starting-qtile:

Expand Down

0 comments on commit 504729a

Please sign in to comment.