当前位置: 首页>>技术教程>>正文


如何让我的软件进入Ubuntu?

问题描述

作为免费软件的开发者,我想让我的应用程序进入Ubuntu。

我应该提供一个源代码压缩包并要求打包吗?或者我应该自己创建一个包?我应该直接针对Ubuntu,还是应该尝试进入Debian,然后自动进入Ubuntu?

最佳解决方案

有一个包可以进入Ubuntu的a number of paths。像你一样的The overview of Ubuntu development targeted at “upstream” developers可能是一个有用的开始,但我也会尝试给你一些指示。

通过Debian

一般来说,如果您正在发布免费和开源软件going through Debian first是最好的路径。这样可以确保你的软件包有一个专门的维护者。它也将达到最多的用户数,因为它不仅可以在Debian和Ubuntu中使用,也可以在所有衍生产品中使用。在Debian中请求/提供新软件包的一些有用链接:

  • Work-Needing and Prospective Packages – 有关如何提交“打算打包”和“打包请求”的错误信息以及打开的ITP和RFP列表。

  • Debian Mentors FAQ – debian-mentors用于指导新的和潜在的Debian开发人员。您可以在这里找到赞助商,将您的软件包上传到档案中。

  • Debian Developer’s Reference – Debian Developer ‘s Reference’s关于新软件包的部分。整个文档对于Ubuntu和Debian软件包都是无价的。

直接进入Ubuntu

在某些情况下,转到directly into Ubuntu first可能有意义。一些有用的链接:

  • The Ubuntu App Developer site – 对于轻量级桌面应用程序,您可以直接在developer.ubuntu.com的My Apps部分提交它们,App Review Board将对其进行审阅,并将在软件中心发布。

  • Packaging Guide – 介绍如何为Ubuntu打包。

  • REVU – 一个web-based工具,Ubuntu贡献者可以上传新软件包以供Ubuntu开发人员审阅,以便加入Ubuntu。

  • Sponsorship Process – 进入Ubuntu后,您可以通过赞助流程来维护您的软件包。

个人包装档案

除了官方的Ubuntu和Debian频道之外,Launchpad还提供了通过简单的Personal Package Archives或PPA将Debian软件包直接分发给用户的功能。 PPA的一个特别有用的方面是,您可以为测试目的提供软件的daily builds

次佳解决方案

https://wiki.ubuntu.com/UbuntuDevelopment/NewPackages详细介绍了将软件包包含到Ubuntu的正常流程。

REVU网站上经常有很多软件包正在等待审核,这也是我们建议将软件包上传到Debian的原因,他们可以让更多的人受益。 https://wiki.ubuntu.com/Debian/ForUbuntuDevelopers#Getting_new_software_in_Debian解释了如何做到这一点。

对于Ubuntu,您可以在irc.ubuntu.com上向#ubuntu-motu上的用户发送评论,而对于Debian,则在irc.oftc.net上有#debian-mentors频道。

另外,还有一个developer.ubuntu.com page,它详细描述了一个单独的获取应用程序的过程,发布用于稳定版本。

第三种解决方案

背景

Ubuntu不允许上传二进制包,但只允许通过构建服务器构建的源包。

直接在Ubuntu存储库中获取你的软件包并不是那么容易。建议先在Debian中使用它,然后从那里同步。所以现在你可以把它放在你的PPA中。您可以使用Launchpad帐户创建PPA。

上传到PPA

如果您使用debuild构建软件包,那么您的工作会更容易一些。 debuild生成许多文件,包括.dsc和.changes

您可能使用.dsc文件与pbuilder-dist创建了deb文件,因此现在您只需将其发布到PPA即可。使用

dput ppa:yourlaunchpadusername/ppaname foo.changes

您需要使用与上传到Launchpad帐户中相同的密钥在上传之前签署包裹

推入Debian /Ubuntu

在Ubuntu /Debian版本库中推送你的软件包包括来自维护人员和Debian的ftp master的评论。许可证必须非常明确,没有歧义。您可能需要赞助商才能上传到Debian

归档一个ITP

您可能需要提交ITP (Intend to package)才能将其打包到Debian中。这只是一个正式的程序。

当软件包可用于实验/不稳定时,则可以使用requestsync工具在LP上提交同步请求。为了让requestsync正常工作,您需要运行manage-credentials以登录到Launchpad

这两个工具都在ubuntu-dev-tools包中

第四种方案

那么,首先我建议您将源代码放入Launchpad存储库中。

然后,您可以将该包装放入您的PPA中并分发。

至于让它包含在官方存储库中……它实际上取决于应用程序。

根据duanedesign的评论,this page可以帮助您开始使用,this page可以帮助解决一些常见的上传错误。

第五种方案

虽然进入默认的Ubuntu存储库很困难,并且可能不适合您的项目(至少尚未),但您可以在Launchpad中设置项目并在其中设置PPA,以便通过PPA进行安装。更多关于Launchpad帮助部分的内容,特别是here

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/566.html,未经允许,请勿转载。