Comment 8 for bug 2008082

Revision history for this message
Ɓukasz Zemczak (sil2100) wrote :

Ok, pinpointed the issue. We already had the VERY SAME ISSUE, from what I see during 22.04.1. Basically: the apt cache is wrong and includes packages that are irretrievable offline. This is bad. We didn't follow up on this after .1 it seems.

What is happening here is that ubiquity fetches the list of packages needed to support a given locale by running `check-language-support -l <LOCALE> --show-installed`. check-language-support on the other hand uses its own data locale database + queries the apt cache for package 'patterns' that is has defined. Normally, in a correct state, this will only list locale packages that are installed + those that are in the pool. But in our case, the apt cache has many packages that are available only online. check-language-support doesn't distinguish the origin, and it reports back the packages, those go to ubiquity and ubiquity tries to install them - which fails terribly when there's no network.

What we did previously is we repacked the filesystem squashfs after doing `rm var/lib/apt/lists/*Packages`. This way the cache is clear and in theory everything should work. check-language-support then returns what's expected.

Bonus points for finding what the build machinery is doing wrong nowadays.