简短的答案:要全部使用,您必须单独下载源程序包;目前,通常没有针对Ubuntu的单一公共浏览服务。但是我们正在努力!
长答案:
所有Ubuntu的规范源代码都可以作为源包获得。例如,您可以转到https://launchpad.net/ubuntu/+source/hello,单击其中一个版本号,然后可以从“下载”部分下载源。要查找Ubuntu发行的每个版本的hello的来源,您可以单击链接查看其完整发行历史,然后单击此处的任何版本号字符串。相同的URL模式适用于任何源程序包。您只需要知道源程序包的名称即可。
源码包是规范的,因为它们是Ubuntu开发人员用来开发Ubuntu的基本单元。但是它们有些笨拙。打开源程序包的包装需要一些工具。如果您提供源代码包dsc的URL,则可以通过一个命令dget
从该devscripts
软件包中下载,验证和解压缩源软件包。
当然,这不是很方便。
几年前,人们一直在努力使它变得更好。Ubuntu将其称为“ Ubuntu分布式开发”,简称UDD,并开发了一种称为Bazaar的分布式版本控制系统来尝试解决此问题。作为此工作的一部分,源软件包在发布时会自动导入到Launchpad上的Bazaar VCS托管平台中。那时,理论上您可以在找到任何软件包的源代码code.launchpad.net
。例如,您仍然可以hello
在https://code.launchpad.net/ubuntu/+source/hello上看到Precise和Trusty Ubuntu版本的软件包从Bazaar导入的源。
Bazaar专注于一组特定的用例,并且具有一个经过深思熟虑的命令行界面。其开发者之一JelmerVernooij写了一篇有趣的回顾,回顾了Bazaar的开发情况,包括如何将其与当时正在开发的其他分布式版本控制系统配合使用。
随着时间的流逝,git接管了整个世界,Bazaar占据了后座。同时,UDD已开始显示其裂缝。越来越多的软件包无法导入,需要手动干预才能修复。这意味着,即使继续对源软件包进行Ubuntu开发,这些软件包的Bazaar视图code.launchpad.net
也无法更新。
最终,由于没有人维护它,因此UDD导入器被关闭,因此认为不值得继续运行。
与此同时,2014年,我发布了一些有关如何使用git进行Ubuntu开发的说明;即使当时通常不使用Ubuntu维护Ubuntu软件包。
我的团队(Ubuntu Server团队)已采用了这种基于git的工作流程,我们继续致力于通过git提供Ubuntu源码。我和一位同事已经开始写博客系列(尚未完成),解释我们在做什么。
您为某些软件包找到的git存储库是我们进口商(~usd-import-team
)的结果。我们仍在积极地致力于这一点,这就是为什么现在还没有所有软件包可用的原因。我们尚未进入“测试”阶段,希望在准备就绪之前重新导入所有软件包(打破以前的所有提交哈希值),并且尚未使所有导入的存储库与最新的Ubuntu开发工作保持最新。但是,在我们导入了特定版本的软件包的地方,它应该足够准确才能浏览。
我们希望逐步导入所有软件包,并在接下来的几个月中自动使它们保持最新状态。
我们的目标之一就是要解决您要问的问题:在Launchpad上拥有一个正式的地方,可以浏览所有Ubuntu源代码。