Wednesday, 11 December 2024

Re: sbuild --chroot-mode=unshare -d $suite{,-security,-proposed} magic for Ubuntu

On Wed, Dec 11, 2024 at 02:18:50PM +0100, Julian Andres Klode wrote:
>Hey folks,
>
>(just in proposed but don't want to forget to announce it :D)
>
>sbuild recently gained the magic to automatically bootstrap
>tarballs for the unshare backend using mmdebstrap. No more
>schroots to manage, everything is magical!
>
>I have just uploaded a new sbuild that makes this feature
>work correctly for Ubuntu. If you set
>
> $chroot_mode = "unshare";
> $unshare_mmdebstrap_keep_tarball = 1;
>
>(the second one is optionally and makes sbuild cache the tarballs
> in ~/.cache/sbuild; refreshing them after 7 days)
>
>in your sbuild configuration (or pass them on the command-line), then
>
>* `sbuild -d noble` will build the package for noble, with updates
> enabled
>* `sbuild -d noble-proposed` builds with proposed enabled too
>* `sbuild -d noble-security` builds for the security pocket
>* `sbuild -d noble-backports` builds with backports enabled too (but
> I think it's still pinned down, I assume you want to use a different
> solver here to not pull in all backported packages?)

Nice! Thanks, Julian :)

I have been using the unshare backend, but had to create the tarballs on
my own with something like

$ mmdebstrap --variant=buildd --arch=amd64 --skip=output/mknod --format=tar --setup-hook='tail -n1 "$1"/etc/apt/sources.list >> "$1"/etc/apt/sources.list; sed -Ei "\$s/plucky[^ ]*/plucky-proposed/" "$1"/etc/apt/sources.list' --components=main,universe,restricted,multiverse plucky $HOME/.cache/sbuild/plucky-amd64.tar

Why do we have separate tarballs for "noble" and "noble-security"? is
the former using both -updates and -security and the latter only
-security or is it the other way around? IIRC, these use cases were not
fully supported, did anything change here?

>
>We enable the `main` and `universe` components by default. Should
>we perhaps enable `restricted` and `multiverse` too? There's no
>easy way otherwise to override.

I wonder how launchpad builders select to enable/disable those...

>I could not get the tests passing locally so far, but I saw no
>regression and the changes seem unlikely to cause any, so I uploaded
>in the hopes they infrastructure fairs better.
>
>I've now managed to run them and there is failure related to
>cross-bootstrap (yes sbuild --arch=armhf -d plucky also works);
>I'll dig deeper and hopefully fix that too.
>
>You'll need to install mmdebstrap for this. Once it has landed
>I'll try to make the case for the mmdebstrap MIR again.

\o/

--
Athos Ribeiro

--
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel