Я столкнулся с проблемой зависимости для polybar, я использую Ubuntu20.04. apt-get install
дал мне следующую ошибку:
Package python-xcbgen is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'python-xcbgen' has no installation candidate
Затем я попробовал sudo apt-get install python3-xcbgen
, который успешно установился (v 1.14-2). Однако установка polybar по-прежнему жаловалась, что не может найти python-xcbgen.
Я использую питон Anaconda, поэтому не знаю, имеет ли он какое-либо отношение к этому.
Пожалуйста, посоветуйте. Спасибо
Сборка полибара не очень хорошо работает с анакондой. Рекомендуемый способ - либо удалить его, либо полностью отключить при сборке polybar.
Со страницы Известные проблемы polybar wiki:
Проблема: В системах, использующих Anaconda, компиляция polybar, скорее всего, завершится неудачно. с одним из этих сообщений об ошибках:
Отсутствует необходимый модуль python: xcbgen
ОШИБКА: не удалось вычислить required_start_align структуры "xcb.Setup"
Каир не был скомпилирован с поддержкой бэкэнда xcb
Общие сведения Проблема в том, что библиотеки и программы, предоставляемые Во многих случаях Anaconda нельзя использовать для построения полибара.
Исправление: самое простое решение - удалить Anaconda, если она вам не нужна.
Если вы не можете / не хотите удалять Anaconda, нам нужно заставить Polybar не использовать ресурсы, предоставленные Anaconda. Это может быть сделано путем временного удаления любых путей, которые указывают на анаконду из переменные окружения $ PATH и $ PKG_CONFIG_PATH в терминал перед сборкой polybar.
Люди сообщали, что conda deactivate делает это для вас для на данный момент открытый терминал. Если это не сработает, попробуйте сделать это вручную:
Например, если ваша переменная PATH содержит:
/ home // anaconda2 / bin: / home // bin: ...: / usr / bin
Удалить / home // anaconda2 / bin и повторно экспортировать переменную:
export PATH = / home // bin: ...: / usr / bin
Сделайте то же самое для PKG_CONFIG_PATH (хотя эта переменная часто уже пусто). Теперь вы должны быть в состоянии построить Polybar с любой сценарий build.sh или cmake и make. Убедитесь, что вы делаете чистую build (перезагружать все исходные файлы polybar).
Последнее предложение очень важно. Вы должны сделать чистую сборку. Это означает удаление загруженных вами исходников Polybar и их повторную загрузку.