On 14.05.2023 10:06, Vincent Lefevre wrote:
On 2023-05-14 00:15:39 +0500, Alexander V. Makartsev wrote:
Hello, fellow Debian users.
When I need to build a backport of a package, I sometimes find it difficult
to obtain actual source package(-s) from Debian repos using console.
Following advice from a wiki page [1], after "apt update", doesn't do it:
$ apt source lego/testing
Reading package lists... Done
Picking 'golang-github-xenolf-lego' as source package instead of 'lego'
E: Can not find version '3.2.0-3.1' of package 'lego'
E: Unable to find a source package for golang-github-xenolf-lego
zira:~> apt-show-versions -a lego
lego:amd64 3.2.0-3.1+b5 stableftp.debian.org
No stable-updates version
lego:amd64 4.9.1-1 testingftp.debian.org
lego:amd64 4.9.1-1 unstableftp.debian.org
No experimental version
lego:amd64 not installed
Indeed, 3.2.0-3.1 is no longer the testing version. Your database
seems to be out-of-date.
I think you haven't noticed that I requested for "4.9.1-1" version from
"testing" specifically,
hence why the command was "$ apt source lego/testing" not just "$ apt
source lego".
There is no reason for building a backport package for "stable" using a
source package from "stable"...
I've changed all my repo mirrors to "deb.debian.org" suspecting the
previous mirror I used was somehow out-of-date. Why is my output differ
from yours?
$ apt-show-versions -a lego
lego:amd64 3.2.0-3.1+b5 bullseye deb.debian.org
No proposed-updates version
No stable-updates version
No testing version
No unstable version
lego:amd64 not installed
lego:i386 3.2.0-3.1+b5 bullseye deb.debian.org
No proposed-updates version
No stable-updates version
No testing version
No unstable version
lego:i386 not installed
Yet "rmadison" reports there is a version "4.9.1-1" available in "testing":
$ rmadison lego
lego | 0.3.1-5+b13 | oldstable | amd64, arm64, armel,
armhf, i386, mips, mips64el, mipsel, ppc64el, s390x
lego | 3.2.0-3.1+b5 | stable | amd64, arm64, armel,
armhf, i386, mips64el, mipsel, ppc64el, s390x
lego | 4.9.1-1 | testing | amd64, arm64, armel,
armhf, i386, mips64el, mipsel, ppc64el, s390x
lego | 4.9.1-1 | unstable | amd64, arm64, armel,
armhf, i386, mips64el, mipsel, ppc64el, s390x
I suspect "apt-show-versions" output is inconsistent because I only
request "deb-src" from "testing" in "sources.list", as I've shown before.
Here is another example package that works as expected:
$ rmadison roundcube
roundcube | 1.3.17+dfsg.1-1~deb10u2 | oldstable |
source, all
roundcube | 1.4.13+dfsg.1-1~deb11u1~bpo10+1 | buster-backports |
source, all
roundcube | 1.4.13+dfsg.1-1~deb11u1 | stable |
source, all
roundcube | 1.6.1+dfsg-1 | testing |
source, all
roundcube | 1.6.1+dfsg-1 | unstable |
source, all
$ apt-show-versions -a roundcube
roundcube:all 1.4.13+dfsg.1-1~deb11u1 bullseye deb.debian.org
roundcube:all 1.4.13+dfsg.1-1~deb11u1 bullseye-security deb.debian.org
No proposed-updates version
No stable-updates version
No testing version
No unstable version
roundcube:all not installed
$ apt source roundcube/testing
Reading package lists... Done
Selected version '1.6.1+dfsg-1' (testing) for roundcube
...
I did some additional research and I think I got it.
"lego" package is special because its source package is named differently:
$ rmadison golang-github-xenolf-lego
golang-github-xenolf-lego | 0.3.1-5 | oldstable | source
golang-github-xenolf-lego | 3.2.0-3.1 | stable | source
golang-github-xenolf-lego | 4.9.1-1 | testing | source
golang-github-xenolf-lego | 4.9.1-1 | unstable | source
golang-github-xenolf-lego | 4.9.1-1 | unstable-debug | source
$ apt source golang-github-xenolf-lego/testing
Reading package lists... Done
Selected version '4.9.1-1' (testing) for golang-github-xenolf-lego
...
But why "apt" doesn't play along, since it knows the source package for
"lego" has different name, but ignores the "testing" part of the request?
$ apt source lego/testing
Reading package lists... Done
Picking 'golang-github-xenolf-lego' as source package instead of 'lego'
E: Can not find version '3.2.0-3.1' of package 'lego'
E: Unable to find a source package for golang-github-xenolf-lego
Looks like an "apt" bug to me.
--
With kindest regards, Alexander.
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀⠀⠀⠀