Как автоматически скрывать сообщения об ошибках в уведомлениях GNOME Shell?

Неплохо быть с системным python, потому что, как вы заметили, Ubuntu широко использует python, поэтому любое изменение может сделать вашу систему неустойчивой.

Кроме того, как разработчик, я могу сказать вы, что глобальная установка сторонних библиотек в вашу систему Python тоже не очень хорошая - все начнет разваливаться, как только у вас есть два проекта, которые требуют, например, разных версий Django.

К счастью, Python имеет очень хорошие инструменты для создания изолированных сред, которые могут быть полностью независимы от системы Python.

Посмотрите на virtualenv и zc.buildout (вместе с djangorecipe) для цивилизованного решения вашей проблемы. :)

UPDATE: Вкратце, вот как zc.buildout решит вашу проблему:

Вы создаете каталог, в который вы помещаете virtualenv и buildout.cfg файл, который содержит

[buildout]
parts = django
versions = versions

[versions]
django = 1.2.5

[django]
recipe = djangorecipe
settings = development
eggs = ${buildout:eggs}
project = mymegaapp

Затем вы запускаете /path/to/python/interpreter/python bootstrap.py, после чего ваша сборка «запоминает» используемый вами интерпретатор python. Он также создает каталог bin, где все ваши «глобальные» сценарии будут автоматически сгенерированы. Затем вы запустите bin/buildout, который загружает и устанавливает Django указанной версии, создает пустой проект под названием «mymegaapp» и т. Д. После его завершения вы найдете команду django в каталоге bin, которая эквивалентна django- admin.py, чтобы вы могли запускать

bin/django syncdb
bin/django runserver

и т. д. Вам никогда не придется беспокоиться о том, чтобы не использовать правильный интерпретатор. Конечно, это всего лишь небольшая часть того, что вы можете сделать с помощью buildout ... просто подумайте о том, чтобы добавить buildout.cfg в VCS, чтобы вы могли повторно создать приложение со всеми зависимостями в точных версиях, даже в нескольких через несколько лет ... или о наличии нескольких конфигураций для разных «конфигураций развертывания»:)

Для быстрого примера, как это сделать с помощью virtualenv, вы можете взглянуть на эту статью - инструкции должны работать отдельно с самой первой части - вам нужно будет установить setuptools с вашим pypy, а не с помощью «стандартного» интерпретатора. Затем вы будете использовать скрипт python, сгенерированный в каталоге bin вашей песочницы:

cd myapp
../venv/bin/python manage.py runserver 0.0.0.0:8000

(У меня возникает ощущение, что вопрос становится все менее и менее актуальным для Ubuntu ... если мы попросим его для переноса в stackoverflow?)

0
задан 7 March 2012 в 23:02

1 ответ

Насколько я знаю, вы не можете. Причина, по которой ошибки не исчезают, заключается в том, что их срочность, вероятно, установлена ​​на CRITICAL, а поведение gnome-shell - всегда расширять их и закрываться только при нажатии. Возможно, вы сможете изменить срочность уведомлений об ошибках в вашем приложении. Проверьте документацию.

1
ответ дан 25 May 2018 в 13:40

Другие вопросы по тегам:

Похожие вопросы: