如何以 Debian 方式获取已发布包的 .dsc 文件?

如何以 Debian 方式获取已发布包的 .dsc 文件?
DSCURL="$(wget -qO- "https://packages.debian.org/${SUITE}/${PKG}" \
    | grep -o 'http.*\.dsc">\[' | cut -d'"' -f1)"
[ -z "$DSCURL" ] && die 2 "no .dsc"
dget ${ALLOW_UNAUTH} -x "$DSCURL" 2> "$TEMP"

我正在寻找 Debain 方式从 jessie 获取源包,然后通过 下载dget -x $DSCURL向后移植所以apt-get source不是一个解决方案,它会干扰 wheezy 上的 apt 系统。我现在通过解析 Debian 网页来做到这一点。我找不到正确的Debian API

答案1

apt-get source -t jessie dpkg 是一种方式去:

引用手册页中的相关章节

       Source packages are tracked separately from binary packages via
       deb-src lines in the sources.list(5) file. This means that you will
       need to add such a line for each repository you want to get sources
       from; otherwise you will probably get either the wrong (too old/too
       new) source versions or none at all.

并且:

   -t, --target-release, --default-release
       This option controls the default input to the policy engine; it
       creates a default pin at priority 990 using the specified release
       string. This overrides the general settings in
       /etc/apt/preferences. Specifically pinned packages are not affected
       by the value of this option. In short, this option lets you have
       simple control over which distribution packages will be retrieved
       from. Some common examples might be -t '2.1*', -t unstable or -t
       sid. Configuration Item: APT::Default-Release; see also the
       apt_preferences(5) manual page.

另一个选择是使用debootstrap并创建一个完整的 chroot。

不要忘记使用类似的东西pbuilder以获得可靠的软件包构建。

相关内容