如何制作和分发Ubuntu屏幕保护程序?

我没有编程语言偏好,我对OpenGL编码有很好的了解。 如果我可以使用OpenFrameworks或Processing等基础,那将是理想的选择。

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(私人存储库)开始。 您可以在LaunchPad的帮助系统上阅读有关PPA,构建源包,构建过程等内容。