我认为能够获得我当前安装的 Ubuntu 的所有源代码确实很有用(而且很酷)。我的意思是所有内容,从内核到用户界面细节的每一个软件包。
(这种做法很有用的一种情况是,当出现某种错误消息时,我不明白它的含义,也不知道它到底来自哪里,比如臭名昭著的“检测到系统程序问题”弹出窗口。我不知道哪个包负责显示该消息。如果我有所有的源代码,我可以简单地搜索错误消息字符串来找到代码的相关部分。这可以帮助我了解发生了什么,并可能稍微修改代码以在错误消息中添加更多详细信息,或者其他内容,然后重建该包。)
假设我使用 apt 安装了所有东西,我可以使用 获取任何单个软件包 x 的源代码,apt-get source x
因此我猜应该可以编写一个脚本,首先获取所有当前安装的软件包的名称列表,然后使用循环逐个获取apt-get source
每个软件包的源代码。我的问题是:有没有更方便的方法来获取我当前安装的所有软件的所有源代码,也许使用一个命令?
答案1
与 guiverc 一样,完整的源代码将会非常庞大,难以处理其存储。
(您需要构建基础设施,为什么只有少数网站可以索引免费代码,并且每个发行版都有一个网站来构建/重新制作软件包和 CD/DVD 安装映像...)
我建议采取一种不同的方法:
- 下载已编译工具的
-dbg
/dbgsyms
包。请参阅-dbg 包有什么用? - 对于脚本工具,不需要,源已经在你手里了。