Qtile nie uruchamia się
Używam Ubuntu 20.04 i myślałem o wypróbowaniu menedżera okien do programowania i codziennego użytku. Właściwie nie jestem ekspertem komputerowym, ale zaczynam uczyć się podstaw kilku języków programowania (zwłaszcza Pythona) i niektórych programów do analizy danych (takich jak R do statystyk), więc podoba mi się pomysł posiadania mojego obszaru roboczego i okien optymalnie zorganizowany. Pomyślałem, że najlepszym wyborem dla mnie będzie Qtile: będąc programowanym w Pythonie, mogę doskonalić swoje umiejętności programistyczne, jednocześnie konfigurując WM. Jednak wygląda na to, że Qtile nadal nie jest obecny w głównym repozytorium, więc musiałem postępować zgodnie z wytycznymi witryny (qtile.org), aby zainstalować go z kodu źródłowego. Ale pod koniec tego procesu nadal nie widzę opcji Qtile w oknie logowania, a kiedy próbuję uruchomić plik setup.py znajdujący się w moim folderze domowym, pojawia się wiele błędów takich jak te:
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
Nie rozumiem ani słowa z tego i nie jestem nawet pewien, czy mam uruchomić ten plik, ale pomyślałem, że moje problemy mogą być związane z faktem, że moja domyślna wersja Pythona to nadal 2.7. Ostateczny wynik jest taki, że nie mogę używać Qtile. Jak myślisz, jaki to może być powód? A jeśli jest to naprawdę związane z pythonem2.7, jak mogę zaktualizować moją wersję Pythona bez awarii połowy moich aplikacji? (Mówię to na podstawie wcześniejszych doświadczeń, ale nie wiem, czy teraz coś się zmieniło i aplikacje powinny być w porządku z inną wersją Pythona). Jestem pewien, że brakuje mi czegoś bardzo podstawowego i prostego ...
Odpowiedzi
Zwykle wywołanie setup.pywymaga installargumentu - sudo python setup.py install. Możesz także przeczytać oficjalną dokumentację Qtile .
Możesz również pobrać Qtile 0.10.7 ręcznie z repozytoriów 18.04 LTS i zainstalować przez:
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
i używaj zgodnie z planem.
Próbowałem sam uruchomić qtile na Linux Mint. Oto, jak udało mi się to uruchomić:
Zainstalowałem python i pip z aktualnych repozytoriów (python3 jest instalowany domyślnie, a także będziesz potrzebować pakietu python3-pip, który zależy od python3-setuptools i python3-wheel)
sudo apt install python3-setuptools python3-wheel python3-pip
Następnie postępowałem zgodnie z dokumentacją qtile, aby zainstalować zależności qtile, używając python3zamiast pythoni pip3zamiast pip. Uruchomiłem również polecenia jako root:
sudo pip3 install xcffib
sudo pip3 install --no-cache-dir cairocffi
sudo apt install libpangocairo-1.0-0 python-dbus python-gobject
Następnie zainstalowałem qtile z pip, aby ułatwić aktualizację qtile:
pip3 install qtile
Następnie, z pomocą tego posta od ofefo na stronie github qtile (wciąż trochę noob), utworzyłem plik qtile.desktopw /usr/share/xsessions/i dodałem następujące linie do tego pliku:
[Desktop Entry]
Name=Qtile
Comment=Qtile Session
Exec=python3 /usr/local/bin/qtile
Type=Application
Keywords=wm;tiling
Uwaga: Twoja ścieżka instalacji qtile może nie być /usr/local/bin/qtile. Aby znaleźć ścieżkę instalacji, uruchomwhich python3
Teraz wszystko, co musisz zrobić, to wylogować się i wybrać qtile w selektorze sesji!
Mam nadzieję, że to pomoże: D
PS Nie mogę jeszcze komentować, więc w odpowiedzi na problem z logiem, mój błąd qtile został zalogowany ~/.xsession-errors.old