我是一个 linux(主要是 ubuntu)用户,对系统的工作原理有合理的理解(尽管我当然不是linux 专家!)。过去,我在 python/GTK 中开发了小型跨平台桌面应用程序,并将它们作为独立的文件树交付给客户端,因此唯一的依赖项是 Python 本身和 GTK。
现在我想为 ubuntu 开发一个小程序,我想在 GPL 2 或 3 下发布。
特别是这些是我知道我必须学习以实现我的目标的新步骤(很可能还有一些我不知道的步骤!):
- 与 gnome 集成:我希望我的应用程序可以作为小程序在任务栏中使用。
- 使用 D-bus:特别是我希望我的小程序使用 ubuntu 的新 osd-notification 框架,但与其他小程序的通信也是第二次迭代的可能功能。
- 打包:一旦应用程序达到 alpha 阶段,我想设置一个公共 PPA,但我也想使用官方 repos 中现有包的依赖项,而不是在我自己的包中再次包含库。
当然,官方文档将是我的第一个知识来源,但是 - 基于我在 SO 上收到的关于另一个主题的非常有用的答案的判断- 我决定求助于 SO 社区以收集其他建议,例如:
- 除了我之前概述的步骤之外,是否还有其他步骤,我必须学习才能实施我的项目?
- 根据您自己的经验,您是否会建议我提前学习这些步骤(因为这些知识会影响我编写核心功能的方式),或者您是否会将与 gnome / d-bus 和打包的集成视为“更高的封装级别" 之后可以添加到核心功能之上(注意:D-bus 将首先用于推送数据。输入数据将通过 web 服务检索)?
- 你会建议我将我的应用程序分成两个包(后端和前端)还是将它放在一个包中?
- 你知道有什么有用的资源可以建议我看一下,以学习我必须学习的任何东西吗?
- 您是否知道我应该注意的任何常见的“初学者错误”?
但是,这些问题并不详尽:如果您觉得我在总体情况中遗漏了一些东西,我们非常欢迎您指出我正确的方向!
PS:如果我无法解释我的最终目标,请看一下项目仓鼠:我想要实现的用户界面类似(意思是:小程序应该显示状态并单击它应该打开应用程序本身,您可以从中配置小程序并执行各种操作)。