LINUX.ORG.RU

[ubuntu] потерялся модуль питона


0

0

После обновления, screenlet'ы не запускаются, выдают ошибку «no module named menu». Два дня гуглил, ничего умного не нашел. Пытался ставить дополнения к питону, новые версии, не помогло.

Как решить проблему с потеряным модулем?


А полностью traceback и какая команда конкретно запускается можно?

Nao ★★★★★ ()
Ответ на: комментарий от Nao

Traceback

Вот запуск конкретно менеждера - простой:

honeybee@honeybee-ubuntu:~$ screenlets-manager

Traceback (most recent call last):
  File "/usr/share/screenlets-manager/screenlets-manager.py", line 28, in <module>
    import screenlets
  File "/usr/lib/python2.6/dist-packages/screenlets/__init__.py", line 56, in <module>
    import menu
ImportError: No module named menu

вот дефолтный:

honeybee@honeybee-ubuntu:~$ screenlets-manager > /dev/null

traceback (most recent call last):
  File "/usr/share/screenlets-manager/screenlets-manager.py", line 28, in <module>
    import screenlets
  File "/usr/lib/python2.6/dist-packages/screenlets/__init__.py", line 56, in <module>
    import menu
ImportError: No module named menu

При запуске отдельных скринлетов выдает ту же ошибку.
В списке модулей питона модуль «menu» также отсутствует.

Grip ()

Какой релиз у вас? У меня 9.10.
Стоит screenlets версии 0.1.2-7.

module.py входит в пакет screenlets, это не отдельный пакет.
Может ставили этот пакет ручками?

Nao ★★★★★ ()
Ответ на: комментарий от Nao

Релиз 9.10, нестабильных обнов не ставил. Скринлеты версии 0.1.2-7 . Изначально ставил версию 0.0.12-ubuntu (примерно так) из .deb пакета, работало на ура. Как обновил - поотваливалось к чертям, начало выдавать такую ошибку. Переставлял через apt-get и убунтоидный софтоцентр - та же фигня. Пробовал шаманить с репозиториями и ставить из synaptic - то же самое. Также пробовал обновлять питон, ставить новые версии и кучу дополнительных пакетов, эффекта ровно ноль, только винт подзахламил. ИЧСХ, после удаления скринлетов и установки из .deb-пакета, всё снова работало.

Grip ()
Ответ на: комментарий от Grip

>Изначально ставил версию 0.0.12-ubuntu (примерно так) из .deb пакета
А потом его удалил?

ИЧСХ, после удаления скринлетов и установки из .deb-пакета, всё снова работало.

так теперь работает получается?

Что говорит
dpkg -S /usr/lib/python2.6/dist-packages/screenlets/__init__.py
?

Есть ли файл
/usr/share/pyshared/screenlets/__init__.py
?

Nao ★★★★★ ()
Ответ на: комментарий от Nao

После отката до старой версии работает, но после любого обновления всё слетает. Пакет удалил, но могу снова его найти.

Проблема в том что это старая версия, да и, кроме того, то что отсутствует важный модуль это само по сбее проблема. Вобщем, из эстетических соображений хочу решить проблему путем установки недостающего модуля вместо использования старой но рабочей версии.

/usr/share/pyshared/screenlets/__init__.py присутствует

 dpkg: /usr/lib/python2.6/dist-packages/screenlets/__init__.py not found. 
Grip ()
Ответ на: комментарий от Grip

Проблема 2.6 питона в совокупности с гномовскими перепилами. Может когда-то и утрясётся, когда все дистрибутивы перелезут на третий питон. Сейчас единственный путь не портить себе нервы при обновлениях — полный снос всех гуёвых питоноподелок.

Lumi ★★★★★ ()
Ответ на: комментарий от Lumi

>Сейчас единственный путь не портить себе нервы при обновлениях — полный снос всех гуёвых питоноподелок.

Так в убунте обновлялка же гуевая питоноперделка :-)

vga ★★ ()

Может кто-нибудь просто скажет что поставить чтобы модуль «меню» приклеился?

Grip ()
Ответ на: комментарий от Grip

$dpkg -S menu.py

<<Поскипано

screenlets: /usr/share/pyshared/screenlets/menu.py

пакет screenlets нужно поставить. Попробуй aptitude reinstall screenlets.

vga ★★ ()
Ответ на: комментарий от vga

Переставил, не помогло.

А собственно, модуль «меню» должен присутствовать в питоне2.6?

Grip ()
Ответ на: комментарий от Grip

Так, перечитал тред еще раз.

Последовательность действий наверное такая.

1. aptitude purge screenlets

2. dpkg -i твой-старый-деб-версии0.012.deb

3. aptitude purge screenlets

4. aptitude install screenlets

Логика здесь такова, что какой-то файл от старого пакета где-то застрял. Если поставить обратно старый пакет, а потом его снести - файл удалится. После этого можно поставить обычный скринлетс из реп.

Как-то так.

vga ★★ ()
Ответ на: комментарий от vga

> Так в убунте обновлялка же гуевая питоноперделка :-)
Давно aptitude и apt-get на питоне?

Lumi ★★★★★ ()
Ответ на: комментарий от Lumi

aptitude и apt-get не поддерживаемый и не рекомендуемый способ апдейтить убунту, работать-то оно как-то будет, но за последствия каноникал не ручается. У них update-manager, и он на питоне. Есть консольный фронтенд под это дело, вот на чем он - не помню. RTFM, вобщем, если интересно.

vga ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.