使用 apt 下载特定版本的软件包

使用 apt 下载特定版本的软件包

我想下载某个软件包的特定版本。该软件包ruby1.9.3有一个 Ubuntu 原生版本和一个 Brightbox PPA 版本。我安装了 PPA 版本,效果很好。来自apt-cache showpkg ruby1.9.3

Package: ruby1.9.3
Versions: 
1:1.9.3.392-1bbox1~quantal1 (/var/lib/dpkg/status)
 Description Language: 
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_raring_universe_binary-amd64_Packages
                  MD5: aa611a7522ee6c493d69294af0dd1d4b
 Description Language: en
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_raring_universe_i18n_Translation-en
                  MD5: aa611a7522ee6c493d69294af0dd1d4b

1.9.3.194-8.1ubuntu1 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_raring_universe_binary-amd64_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_raring_universe_binary-amd64_Packages
                  MD5: aa611a7522ee6c493d69294af0dd1d4b
 Description Language: en
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_raring_universe_i18n_Translation-en
                  MD5: aa611a7522ee6c493d69294af0dd1d4b

下载 Ubuntu 原生软件包没有问题:apt-get source ruby1.9.3=1.9.3.194-8.1ubuntu1但下载其他的软件包:

$ apt-get source ruby1.9.3=1:1.9.3.392-1bbox1~quantal1
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'ruby1.9.1' as source package instead of 'ruby1.9.3'
E: Ignore unavailable version '1:1.9.3.392-1bbox1~quantal1' of package 'ruby1.9.3'
E: Unable to find a source package for ruby1.9.1

不起作用。

我正在运行从 12.10 升级而来的 13.04。PPA 定义如下:

deb http://ppa.launchpad.net/brightbox/ruby-ng-experimental/ubuntu quantal main
deb-src http://ppa.launchpad.net/brightbox/ruby-ng-experimental/ubuntu quantal main

我想这样做是因为我想创建一个 Ruby 2.0 包,因为 Brightbox 的发布时间滞后了,我想弄清楚他们是如何做到的。

答案1

您从 PPA 安装了软件包。升级到新版本的 Ubuntu 时,PPA 会自动禁用。因此,该deb-src行不再使用,因此apt-get无法找到源软件包。您需要重新启用 PPA,然后运行apt-get update才能提取该特定源。

相关内容