Создание апплета GNOME

       

Что дальше


Дальше встает вопрос о распространении апплета. Напомню, какие файлы нужны для работы апплета:

GNOME_ProxySwitcher.server - описание нашего апплета для Bonobo, должен лежать либо в /usr/lib/bonobo/servers, либо в одном из каталогов, упомянутых в /etc/bonobo-activation/bonobo-activation-config.xml (по умолчанию всё закомментировано).

applet_skeleton.py, applet_example.py, proxyswitcher.py - собственно код апплета, исполняемый файл (proxyswitcher.py) должен лежать в месте, указанном в GNOME_ProxySwitcher.server; остальные - в PYTHONPATH (наиболее простой вариант - в том же месте, что и proxyswitcher.py)

файлы переводов proxyswitcher.mo в каталоге /usr/share/locale, либо указанном в proxyswitcher.py

Если апплет пакетировать в deb/rpm, то проблем не возникает - Bonobo-файл и файл переводов кладутся в нужные места, а код апплета, скажем, в /usr/lib/gnome-applets/proxyswitcher. Если не пакетировать, то ситуация такая: пользовательское ПО по стандарту FHS должно помещаться либо в /opt, либо в /usr/local. В /opt обычно ставят ПО сторонних вендоров, так что правильное место для нашего апплета - это /usr/local. Так что нужно: написать шаблоны Bonobo-файла и proxyswitcher.py и в зависимости от переданного значения ключа --prefix при установке заполнять шаблоны необходимыми данными.

Еще один момент, который требует доработки - это обработка ошибок. Дело в том, что если при старте апплета возникает какая-либо ошибка, то GNOME об этом ничего не скажет, а молча не запустит апплет. Так что было бы здорово, если при возникновении исключительной ситуации, апплет сообщал о ней.

Думаю, что решению этих вопросов будет посвящена еще одна статья. Код, описанный в статье, как всегда, можно получить на code.google.com



Содержание раздела