Open mcassaniti opened 1 month ago
The underlying issue is setting -o APT::Architectures=amd64
which overrides the additional file. Is this a case that the project wishes to support?
That's an edge case. I think only Debian does multilib the way Debian does it.
I don't think we want to set up sources.list for multiple architectures—users needing that can use package manager trees or skeletons. If dropping the -o APT::Architectures=
line is enough to fix it or if changing it to only defaulting to debarch
and reading the arches from /var/lib/dpkg/arch
in the package manager tree or root is enough to fix it and this doesn't interfere with the single arch case, than I think changing that would be fine.
Dropping the option is sufficient with the basic testing I've done but let me do a more thorough test and get back to you.
systemd has a concept of secondary architectures so that i386 is a secondary architecture for x86-64. We could add that as well by adding a secondary()
method to he Architecture
enum which returns the secondary architecture if there is one and then set APT::Architectures
to both the main and secondary architectures.
I'm not sure we should do this in all cases. I'm not entirely sure how to understand the man page there
The initial default is always the system's native architecture (APT::Architecture), and foreign architectures are added to the default list when they are registered via dpkg --add-architecture.
i.e. whether setting this is equivalent to having done the dpkg --add-architecture
. I for one am quite happy to finally getting rid of having multilib systems, so if this would were equivalent to running to dpkg --add-architecture
, I'd rather have this be opt in.
After poking and prodding I've given up and opted to use a post-install script. This one really should be marked as wont-fix unless you want to test all the bits.
mkosi commit the issue has been seen with
main
Used host distribution
Ubuntu 24.04 (noble)
Used target distribution
Ubuntu 24.04 (noble)
Linux kernel version used
6.8.0-31-generic
CPU architectures issue was seen on
x86_64
Unexpected behaviour you saw
I added the file
apt-extra/var/lib/dpkg/arch
with the contents below. This is the equivalent of runningdpkg --add-architecture i386
on an amd64 machine. I could not install any i386 based packages.Used mkosi config
mkosi output