How to specify the suite for a PPA

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?