On Sat, Mar 21, 2020 at 1:03 AM Alexander Tsoy <alexan...@tsoy.me> wrote:
> В Сб, 21/03/2020 в 00:53 -0700, Matt Turner пишет: > > On Fri, Mar 20, 2020 at 9:55 PM Kent Fredric <ken...@gentoo.org> > > wrote: > > > If X is "noarch" and its dependency Y is "amd64", then a user on > > > "sparc" > > > will be able to install "X", but not its dependency "Y". > > > > Thank you. This is a good explanation of the problem. > > > > How do other distributions handle this? Arch, Fedora, and Debian have > > "noarch" packages. Surely they've found a reasonable way to make this > > work. > > Binary distros usually have separate repositories for each > architecture. > Pretty much this. There is not 1 repository, there are N. This means that if leaf package A "noarch" depends on package B (only stable on x86) then in the x86 tree, A and B will be available. In the sparc tree, B is not available and so A is uninstallable and also not available. We had discussed doing this in the past but in practice we use a bunch of files to compute these boundaries on the fly and this is not particularly cheap in the current implementation.