AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 979048
Accepted
muru
muru
Asked: 2017-11-23 00:17:49 +0800 CST2017-11-23 00:17:49 +0800 CST 2017-11-23 00:17:49 +0800 CST

Launchpad 上可浏览的所有源代码到底在哪里?

  • 772

当我需要在答案中链接到打包代码时,我一直发现 Launchpad 的源代码浏览器非常有用。URL 模式非常简单 ( https://code.launchpad.net/ubuntu/+source/<package>),我通常可以在输入code地址栏后替换最后一个单词。但是,最近,我发现找到实际的包装代码越来越不一致。

例如:

  • GDM - 那里没有比 15.10(狡猾)更新的东西。但从变更日志中可以清楚地看出,从那时起,打包代码发生了变化。
  • Bash - 这很有趣。该页面中有一个指向Launchpad 上的 Git 存储库的链接,您可以在那里看到更新版本的打包。同样适用于apt、 bash、 git、 grub2、....

请注意,没有列出用于 GDM 打包的 Git 存储库。其他人喜欢 GDM:集市本身,LightDM,zsh,Chromium,...

所有这些包装代码都去哪儿了?

请注意,我不想下载打包代码,我有apt-get source这个。我不想浏览软件源代码,我会在 LP 之外寻找(当然,除非软件是在 LP 上开发的)。我想在线浏览 Ubuntu 的打包代码,并能够链接到它。对于 Debian,我通常可以在Alioth上挖掘包装。

packaging
  • 1 1 个回答
  • 481 Views

1 个回答

  • Voted
  1. Best Answer
    Robie Basak
    2018-01-05T12:31:59+08:002018-01-05T12:31:59+08:00

    简短的回答:要获得所有内容,您必须单独下载源包;目前没有针对 Ubuntu 的单一公共浏览服务普遍可用。但我们正在努力!

    长答案:

    所有 Ubuntu 的规范源代码都以源包的形式提供。您可以访问https://launchpad.net/ubuntu/+source/hello,例如,单击其中一个版本号,您可以从“下载”部分下载源代码。要查找 Ubuntu 发布的每个 hello 版本的源代码,您可以点击链接查看其完整的发布历史,然后单击其中的任何版本号字符串。相同的 URL 模式适用于任何源包;您只需要知道源包的名称。

    源代码包是规范的,因为它们是 Ubuntu 开发人员用来开发 Ubuntu 的基本单元。但是它们有些笨拙。解压源包需要一些工具。dget,从devscripts包中,如果您将 dsc 文件的 URL 提供给它,则可以在一个命令中下载、验证和解压源包。

    当然,这不是很方便。

    多年前,有人努力使这变得更好。Ubuntu 将其称为“Ubuntu 分布式开发”,简称 UDD,并开发了一个名为 Bazaar 的分布式版本控制系统来尝试解决这个问题。作为这项工作的一部分,源包在发布时会自动导入 Launchpad 上的 Bazaar VCS 托管平台。那时,理论上你可以在code.launchpad.net. 例如,您仍然可以在https://code.launchpad.net/ubuntu/+source/hellohello看到 Precise and Trusty Ubuntu 版本的包的 Bazaar 导入源。

    Bazaar 专注于一组特定的用例,并且有一个经过深思熟虑的命令行界面。它的开发者之一 Jelmer Vernooij 写了一篇关于 Bazaar 开发的有趣回顾,包括它如何与当时正在开发的其他分布式版本控制系统相适应。

    随着时间的推移,git 接管了世界,而 Bazaar 则退居二线。与此同时,UDD 开始出现裂痕。越来越多的包无法导入,需要人工干预才能修复。这意味着,即使 Ubuntu 继续对源包进行开发,这些包的 Bazaar 视图也code.launchpad.net无法更新。

    最终,UDD 导入器被关闭,因为没有人维护它,并且认为它不值得继续运行。

    与此同时,我在 2014 年发表了一些关于我如何使用 git 进行 Ubuntu 开发的笔记;即使当时 Ubuntu 软件包通常没有在 git 中维护。

    这个基于 git 的工作流程已被我的团队(Ubuntu Server 团队)采用,我们继续致力于通过 git 提供 Ubuntu 源代码。我和一位同事已经开始写一个博客系列(尚未完成)来解释我们正在做什么。

    您为某些包找到的 git 存储库是我们的导入器 ( ~usd-import-team) 的结果。我们仍在积极开展这项工作,这就是为什么并非所有软件包都以这种方式可用的原因。我们还没有处于“beta”阶段,预计在我们准备好之前重新导入所有包(打破所有以前的提交哈希),并且还没有使所有导入的存储库与最新的 Ubuntu 开发工作保持同步。但是在我们导入了特定版本的包的地方,它应该足够准确以供浏览。

    我们希望在接下来的几个月内逐步导入所有软件包并使其自动保持最新状态。

    我们的目标之一就是解决您提出的问题:在 Launchpad 上拥有一个可以浏览所有 Ubuntu 源代码的官方位置。

    • 12

相关问题

  • 什么是最简单的 Debian 打包指南?

  • 我的 PPA 的身份验证问题

  • 为自定义 PPA 修补 Wine 的正确方法是什么?

  • 我如何创建自己的 php 5.3.3 包/ppa?

  • 当上游维护者似乎不活跃时,如何将补丁应用于包?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve