Автор Тема: Помогите восстановить внешний вид рабочего стола (Mate)  (Прочитано 2176 раз)

Оффлайн SID

  • Начинающий
  • *
  • Сообщений: 1
Подтверждаю: проблема - в скриптах запуска модуля меню в MATE...

 На чистую систему ALT Workstation 10 (с предустановленными MATE и Python 3.9) установили IDE "PyCharm CE",
 которое (в качестве базового) использует виртуальное окружение системного интерпретатора Python (в "~/venv").
· "~/venv" содержит скрипты Python ('/bin'), библиотеки доп. пакетов ('/lib' и '/lib64') + файл конфигурации ('pyvenv.cfg')

· проблема (с панели пропала кнопка запуска меню MATE) возникла после задания в '~/.bashrc' локальной переменной окружения:
    PATH="$HOME/venv/bin:$PATH"
  и перезапуска профиля пользователя...

· .. теоретически - ни на что влиять это было бы не должно !!!, но ...
     при старте профиля MATE не находит необходимый ей модуль 'gi' и скрипты не отрабатывают... !??
    (соответствующий фрагмент 'journalctl'):
 --> org.mate.panel.applet.MateMenuAppletFactory     Traceback (most recent call last):
     --> org.mate.panel.applet.MateMenuAppletFactory  File "/usr/lib/mate-menu/mate-menu.py", line 25, in <module>
     --> org.mate.panel.applet.MateMenuAppletFactory  import gi
     --> org.mate.panel.applet.MateMenuAppletFactory  ModuleNotFoundError: No module named 'gi'
Закомментировали в '.bashrc' внесённые изменения - всё работает (ошибка исчезает).

Нюанс в том, что никаких сторонних версий Python в системе не устанавливалось (ссылки из '~/venv/bin' ведут на '/usr/bin')
(получается, от порядка разбора "$PATH" зависит результат отработки скриптов запуска системных модулей - а это системный баг).

Оффлайн N0rbert

  • alt linux team
  • ***
  • Сообщений: 231
  • snk@
установили IDE "PyCharm CE"

А как установили?

Наиболее беспроблемный вариант был бы с помощью epm play pycharm, при нем не нужно никакие файлы вручную править.

это системный баг

Нет. Смотрите как минимум http://citforum.ru/operating_systems/ois/c020.shtml#c2212 :

Цитировать
Замечание 2. Порядок поиска файла по путям переменной PATH происходит слева направо, в порядке их записи. Поэтому, если существуют несколько исполняемых файлов с одинаковыми именами, но расположенных в разных каталогах, и эти каталоги прописаны в переменной PATH, то при вызове программы на исполнение из произвольного "неродного" каталога запустится программа из каталога, расположенного первым в переменной PATH.

или https://ru.wikipedia.org/wiki/PATH_(переменная) :
 
Цитировать
После создания запроса запуска пользователем или программой, система будет проверять каждый каталог переменной $PATH слева направо в поисках файла, соответствующего заданной команде. Первая найденная программа выполняется в качестве дочернего процесса командной оболочки или программы, сделавшей запрос.

(в обеих цитатах выше полужирное выделение от меня).

Добавляйте нужные вам дополнительные пути в правую часть переменной PATH и проблем не будет.
Предварительно изучите внимательно https://www.altlinux.org/Управление_пакетами чтобы максимально использовать системы управления пакетами.
« Последнее редактирование: 22.03.2023 13:09:07 от N0rbert »