[Pkg-javascript-devel] Bug#1106209: Bug#1106209: Incorrect dependencies on two "Architecture: all" packages
Jérémy Lal
kapouer at melix.org
Wed May 21 10:13:35 BST 2025
Le mer. 21 mai 2025 à 11:10, Jérémy Lal <kapouer at melix.org> a écrit :
>
>
> Le mer. 21 mai 2025 à 10:00, Daniel Richard G. <skunk at iskunk.org> a
> écrit :
>
>> Package: nodejs
>> Version: 20.19.2+dfsg-1
>>
>> The nodejs and libnode115 packages have dependencies on node-corepack
>> and node-minimatch, respectively. The latter two are "Architecture:
>> all". However, the dependency appears to be implicitly on native-arch
>> versions of the packages, rather than the "all" ones. I encountered this
>> issue in a somewhat unusual scenario:
>>
>> I am running a Docker container of debian:unstable for armhf, using
>> qemu-user on an amd64 system. For speed, I am replacing several armhf
>> packages in the container with their amd64 equivalents, after running
>> "dpkg --add-architecture amd64". One of these packages is nodejs.
>>
>> To illustrate the problem, I first install the two dependency packages.
>> (Note that nodejs is also pulled in, specifically nodejs:armhf):
>>
>> + apt-get -y install node-corepack node-minimatch
>> Reading package lists...
>> Building dependency tree...
>> Reading state information...
>> The following additional packages will be installed:
>> libcares2 libicu76 libnode115 libuv1t64 node-acorn node-balanced-match
>> node-brace-expansion node-cjs-module-lexer node-undici node-xtend nodejs
>> nodejs-doc
>> Suggested packages:
>> npm
>> The following NEW packages will be installed:
>> libcares2 libicu76 libnode115 libuv1t64 node-acorn node-balanced-match
>> node-brace-expansion node-cjs-module-lexer node-corepack node-minimatch
>> node-undici node-xtend nodejs nodejs-doc
>> 0 upgraded, 14 newly installed, 0 to remove and 2 not upgraded.
>> Need to get 27.5 MB of archives.
>> After this operation, 110 MB of additional disk space will be used.
>> [...]
>>
>>
>> Now, I install the amd64 build of nodejs:
>>
>> + apt-get -y install nodejs:amd64
>> Reading package lists...
>> Building dependency tree...
>> Reading state information...
>> Solving dependencies...
>> Some packages could not be installed. This may mean that you have
>> requested an impossible situation or if you are using the unstable
>> distribution that some required packages have not yet been created
>> or been moved out of Incoming.
>> The following information may help to resolve the situation:
>>
>> The following packages have unmet dependencies:
>> nodejs:amd64 : Depends: libnode115:amd64 (= 20.19.2+dfsg-1) but it is
>> not going to be installed
>> Depends: node-corepack:amd64 but it is not installable
>> E: Unable to correct problems, you have held broken packages.
>> E: The following information from --solver 3.0 may provide additional
>> context:
>> Unable to satisfy dependencies. Reached two conflicting decisions:
>> 1. nodejs:amd64=20.19.2+dfsg-1 is selected for install
>> 2. nodejs:amd64 Depends node-corepack:amd64
>> but none of the choices are installable:
>> [no choices]
>>
>>
>> There is no node-corepack:amd64, of course, and node-corepack:all is
>> already installed.
>>
>> I worked around the error by building a metapackage with
>> "Provides: node-corepack:amd64 (= 9.9.9)", and then I get this:
>>
>> + apt-get -y install nodejs:amd64
>> Reading package lists...
>> Building dependency tree...
>> Reading state information...
>> Solving dependencies...
>> Some packages could not be installed. This may mean that you have
>> requested an impossible situation or if you are using the unstable
>> distribution that some required packages have not yet been created
>> or been moved out of Incoming.
>> The following information may help to resolve the situation:
>>
>> The following packages have unmet dependencies:
>> libnode115:amd64 : Depends: node-minimatch:amd64 (>= 9.0.3-5) but it is
>> not installable
>> E: Unable to correct problems, you have held broken packages.
>> E: The following information from --solver 3.0 may provide additional
>> context:
>> Unable to satisfy dependencies. Reached two conflicting decisions:
>> 1. libnode115:amd64 is selected for install because:
>> 1. nodejs:amd64=20.19.2+dfsg-1 is selected for install
>> 2. nodejs:amd64 Depends libnode115:amd64 (= 20.19.2+dfsg-1)
>> 2. libnode115:amd64 Depends node-minimatch:amd64 (>= 9.0.3-5)
>> but none of the choices are installable:
>> [no choices]
>>
>> Once I Provides: the two ersatz packages, I am able to install
>> nodejs:amd64 without issue.
>
>
>
> I don't understand - at all - how those Arch: all packages
> (node-minimatch, node-corepack) became Arch: amd64 on your system.
> For example, node-corepack:amd64 never existed.
> It is probably an issue with Multiarch flags, but I need help on this.
>
https://launchpad.net/ubuntu/plucky/+package/node-corepack
doesn't mention any Arch: all version of the package.
I suppose Ubuntu did things differently ?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-javascript-devel/attachments/20250521/c41a4371/attachment.htm>
More information about the Pkg-javascript-devel
mailing list