Qtile не запускается

Aug 21 2020

Я использую Ubuntu 20.04, и я думал о том, чтобы попробовать оконный менеджер для программирования и повседневного использования. На самом деле я не специалист по компьютерам, но я начинаю изучать основы нескольких языков программирования (особенно Python) и некоторых программ для анализа данных (например, R для статистики), поэтому мне нравится идея иметь свое рабочее пространство и окна оптимально организованный. Я думал, что лучшим выбором для меня будет Qtile: будучи программируемым на Python, я могу улучшить свои навыки программирования, одновременно настраивая WM. Тем не менее, похоже, что Qtile все еще отсутствует в репозитории focal, поэтому мне пришлось следовать рекомендациям веб-сайта (qtile.org), чтобы установить его из исходного кода. Но в конце этого процесса я все еще не могу увидеть параметр Qtile в окне входа в систему, и когда я пытаюсь запустить файл setup.py, находящийся в моей домашней папке, я получаю множество таких ошибок:

mattia@HAL9000:~/qtile$ sudo python setup.py
Failed to find pulseaudio headers. PulseVolume widget will be unavailable
/usr/lib/python2.7/dist-packages/cffi/cparser.py:153: UserWarning: String literal found in cdef() or type source. String literals are ignored here, but you should remove them anyway because some character sequences confuse pre-parsing.
  warnings.warn("String literal found in cdef() or type source. "
/usr/lib/python2.7/dist-packages/cffi/cparser.py:164: UserWarning: Global variable 'CAIRO_TAG_DEST' in cdef(): for consistency with C it should have a storage class specifier (usually 'extern')
  "(usually 'extern')" % (decl.name,))
/usr/lib/python2.7/dist-packages/cffi/cparser.py:164: UserWarning: Global variable 'CAIRO_TAG_LINK' in cdef(): for consistency with C it should have a storage class specifier (usually 'extern')
  "(usually 'extern')" % (decl.name,))
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: no commands supplied

Я не понимаю ни слова и даже не уверен, должен ли я запускать этот файл, но я думал, что мои проблемы могут быть связаны с тем, что моя версия python по умолчанию по-прежнему 2.7. В конечном итоге я не могу использовать Qtile. Как вы думаете, что могло быть причиной этого? И если это действительно связано с python2.7, как я могу обновить свою версию python без сбоя половины моих приложений? (Я говорю это исходя из прошлого опыта, но я не знаю, изменилось ли что-то сейчас, и приложения должны работать с другой версией Python). Я почти уверен, что мне не хватает чего-то очень простого и простого ...

Ответы

1 N0rbert Aug 21 2020 at 01:14

Обычно для вызова setup.pyтребуется installаргумент - sudo python setup.py install. Также вы можете прочитать официальную документацию Qtile .


Также вы можете скачать Qtile 0.10.7 вручную из репозиториев 18.04 LTS и установить:

cd ~/Downloads
wget http://archive.ubuntu.com/ubuntu/pool/universe/q/qtile/python3-qtile_0.10.7-2ubuntu2_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/q/qtile/qtile_0.10.7-2ubuntu2_all.deb

sudo apt-get install ./qtile_0.10.7-2ubuntu2_all.deb ./python3-qtile_0.10.7-2ubuntu2_amd64.deb

и использую как было задумано.

pranabekka Aug 29 2020 at 17:51

Я сам пытался запустить qtile на Linux Mint. Вот как мне удалось заставить его работать:

Я установил python и pip из текущих репозиториев (python3 установлен по умолчанию, и вам также понадобится пакет python3-pip, который зависит от python3-setuptools и python3-wheel)

sudo apt install python3-setuptools python3-wheel python3-pip

Затем я следовал документации qtile, чтобы установить зависимости qtile, используя python3вместо pythonи pip3вместо pip. Я также запускал команды как root:

sudo pip3 install xcffib

sudo pip3 install --no-cache-dir cairocffi

sudo apt install libpangocairo-1.0-0 python-dbus python-gobject

Затем я установил qtile из pip, чтобы упростить обновление qtile:

pip3 install qtile

Затем, с помощью этого поста по ofefo на странице GitHub qtile в (еще немного нуб), я создал файл qtile.desktopв /usr/share/xsessions/и добавил следующие строки в этот файл:

[Desktop Entry]
Name=Qtile
Comment=Qtile Session
Exec=python3 /usr/local/bin/qtile
Type=Application
Keywords=wm;tiling

Примечание. Ваш путь установки qtile может быть не таким /usr/local/bin/qtile. Чтобы найти путь к установке, запуститеwhich python3

Теперь вам нужно только выйти из системы и выбрать qtile в окне выбора сеанса!

Надеюсь, это поможет: D

PS Я пока не могу комментировать, поэтому в ответ на проблему с журналом мой журнал ошибок qtile был в ~/.xsession-errors.old