While building the FreeCAD snap with GitHub actions, it has started to fail in the last few days, without relevant changes to the snapcraft.yaml or GitHub workflow files before the failure. The failure was: Failed to refresh package list: failed to run apt update.
After being able to inspect the snapcraft log, it appears that for the one PPA defined in snapcraft.yaml, snapcraft tries to pull noble
packages. The PPA has only up to jammy
packages. The GitHub workflow specifies ubuntu-latest
, which I now found out was recently switched to Ubuntu 24.04.
Update: the GitHub workflow specifies ubuntu-latest
, which recently was switched in the Github runners from 22.04 to 24.04 => actions/runner-images#10636. This could be the reason why the builds started failing for apparently no reason.
So it would appear that unlike deb-type repositories, the suite
cannot be specified for PPAs. As such, they will be added for the same suite as the host.
In the FreeCAD case, the GitHub workflow was running in a 24.04 host, the package-repositories
specified a deb-type suite for jammy
, and then the PPA (expected: jammy, actual: noble) failed as it could not find the archive.
Changing ubuntu-latest
to ubuntu-22.04
in the GitHub workflow seems to fix the builds for now.
Could someone confirm this behavior for PPAs? If that is the case, is there another workaround?