Как я могу сделать и распространять заставку Ubuntu?

У меня нет предпочтений в языке программирования, и я хорошо знаю кодирование OpenGL. Если бы я мог использовать что-то вроде OpenFrameworks или Processing в качестве основы, это было бы идеально.

1 ответ

Решение

Заставка в Linux - довольно простая вещь, состоящая из двух ключевых частей:

  1. Графическое приложение, которое отображает изображения.
  2. .desktop файл, указывающий на это приложение.

Я не уверен, какого конечного результата вы пытаетесь достичь, поэтому я начну наоборот. .desktop файлы для существующих заставок живут в /usr/share/applications/screensavers/, Вот ubuntu_theme.desktop например, к чему вы стремитесь:

[Desktop Entry]
Name=Floating Ubuntu
Comment=Ubuntu logo floating around the screen
Exec=floaters /usr/share/pixmaps/ubuntu-screensaver.svg
TryExec=floaters
StartupNotify=false
Terminal=false
Type=Application
Categories=GNOME;Screensaver
OnlyShowIn=GNOME

Если вы хотите разместить другое изображение, вы можете просто клонировать модуль запуска и заменить /usr/share/pixmaps/ubuntu-screensaver.svg с вашим собственным изображением (используйте SVG, где это возможно, поскольку они гораздо лучше масштабируются).

Если вы хотите написать свой двоичный файл для полностью настраиваемой заставки, вам, вероятно, следует начать здесь: http://www.dis.uniroma1.it/~liberato/screensaver/

Он использует очень простую графику X, чтобы делать довольно простые вещи. Вы можете сделать это с помощью OpenGL, но важно, чтобы вы сначала изложили основы.

Как только вы закончите, упаковка - это целый набор проблем, но для очень простого пакета вы можете быстро набрать пакет, выполнив что-то вроде этого: https://help.ubuntu.com/community/PythonRecipes/DebianPackage

Но если вы серьезно относитесь к распространению этого среди множества людей, вы, вероятно, захотите начать с PPA (частного репозитория). Вы можете прочитать о PPA, сборке пакетов с исходным кодом, процессе сборки и т. Д. В справочной системе LaunchPad.

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