Try Debusine for your next upload to unstable!

Raphael Hertzog <[email protected]> Wed, 13 Aug 2025 18:03:40 +0200
Newsgroups gmane.linux.debian.devel.announce
Message-ID <[email protected]>
--/zdOOpNa1lEx1nQY
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hello everybody,

After two years of hard work on Debusine, and after having heard
significant interest in Debusine during DebConf 25 in Brest, we feel it=E2=
=80=99s
time to officially announce the service to the Debian community. So here
we are!

TLDR summary
------------

To limit the risk of breakage in unstable, and have a wide QA coverage of
your uploads, consider using debusine.debian.net for your uploads to
Debian.

To try it out, follow the instructions from
https://wiki.debian.org/DebusineDebianNet to install debusine-client and
setup your account on https://debusine.debian.net. Then use =E2=80=9Cdput
debusine.debian.net PKG_VER_source.changes=E2=80=9D (dput-ng required) to u=
pload
your package.

You can then monitor the QA tasks run by Debusine and decide
whether you really want to proceed with the upload, after having seen the
impact of your upload on the autopkgtests of the reverse dependencies and
after having verified buildability of your package on multiple
architectures. Example view:
https://debusine.debian.net/debian/developers/work-request/125193/

What is Debusine=E2=80=99s goal?
------------------------

Debusine's goal is to be an integrated system to build, distribute and
maintain a Debian-based distribution. Even though we (at Freexian) are
dogfooding Debusine in the context of LTS and ELTS, we have designed
Debusine with the desire to modernize parts of Debian=E2=80=99s infrastruct=
ure.

To cope with the scale (dozens of thousands of packages), and with the
breadth of supported CPU architectures of a Linux distribution, Debusine
manages the scheduling and distribution of individual tasks to distributed
worker machines, including cloud workers on demand. But instead of doing
that only for package builds, Debusine extends this concept to all kinds
of tasks that are needed in the context of managing a modern Linux
distribution (sbuild, autopkgtest, lintian, piuparts, etc.).

What is Debusine doing right now?
---------------------------------

Debusine is already providing a =E2=80=9CDebian pipeline=E2=80=9D workflow =
that consumes a
source package, builds binary packages, run lots of QA tasks on the built
packages, signs the packages and uploads them to another repository (after
validation by the uploader)..

This is what we are proposing to try out right now by following the
instructions from https://wiki.debian.org/DebusineDebianNet.
debusine.debian.net is a Debusine instance accessible to all Debian
Developers and all Debian Maintainers.

Trixie has been released and you are eager to push updates to unstable,
but without breaking the world. By taking advantage of Debusine, you will
have feedback on your upload before it reaches unstable proper and before
it becomes a problem for other packages.

What=E2=80=99s coming next?
-------------------

Debusine will soon be able to host package repositories that can be used
by APT. Nice bonus: those package repositories can (optionally) be
configured to retain the full history (and old snapshots can be accessed
with the same URL structure as snapshot.debian.org).

Our goal is to help Debian developers to prepare a coordinated transition
in such a repository and then upload all the packages from the repository
to unstable in one go. In the future, we hope to be able to build new
workflows to help with things like running autopkgtest of reverse
dependencies across the whole package repository.

Where do you want Debusine to go?
---------------------------------

Right now Debusine is mainly developed by a small team of Debian
developers paid by Freexian. We hope to see that team grow with
contributions[1] outside of Freexian. It=E2=80=99s free software (GPLv3), w=
ith no
contributor license agreement, modern Python/Django with 100% unit test
coverage.

Since Freexian=E2=80=99s mission[2] is to improve Debian, the roadmap we se=
t for
ourselves is not restricted to our short term commercial interest, it also
includes projects that hopefully are long term wins for the Debian
community.

The size of the current team does not allow us to pursue too many goals in
parallel. Hence, we are eager to hear from Debian teams that are
interested in adopting Debusine to improve some of their workflows so that
we can work together.

We have had interesting exchanges with members of the wanna-build and DSA
teams in Brest, we need to have conversations with ftpmasters too, and
while we are still far from it, we really hope to reach (at some point in
the future) a situation where we would have an official Debusine setup
(debusine.debian.org) in charge of building official packages.

More information
----------------

You can watch the talk we gave at DebConf 25 to learn more about Debusine
and see a demo of a package upload:
https://meetings-archive.debian.net/pub/debian-meetings/2025/DebConf25/debc=
onf25-398-using-debusine-to-pre-test-your-unstable-uploads.av1.webm

You can have a look at Debusine=E2=80=99s documentation:
https://freexian-team.pages.debian.net/debusine/

If you have any questions, please follow-up on [email protected]=
g,
or join us in #debusine on irc.debian.org.

Thank you for reading that far!

[1] https://freexian-team.pages.debian.net/debusine/howtos/contribute.html
[2] https://www.freexian.com/about/
--=20
  =E2=A2=80=E2=A3=B4=E2=A0=BE=E2=A0=BB=E2=A2=B6=E2=A3=A6=E2=A0=80   Rapha=
=C3=ABl Hertzog <[email protected]>
  =E2=A3=BE=E2=A0=81=E2=A2=A0=E2=A0=92=E2=A0=80=E2=A3=BF=E2=A1=81
  =E2=A2=BF=E2=A1=84=E2=A0=98=E2=A0=B7=E2=A0=9A=E2=A0=8B    The Debian Hand=
book: https://debian-handbook.info/get/
  =E2=A0=88=E2=A0=B3=E2=A3=84=E2=A0=80=E2=A0=80=E2=A0=80=E2=A0=80   Debian =
Long Term Support: https://deb.li/LTS

--/zdOOpNa1lEx1nQY
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAABCgAdFiEE1823g1EQnhJ1LsbSA4gdq+vCmrkFAmict1QACgkQA4gdq+vC
mrk1ngf7B3SkuxZGzcPGHIN9JFw5Nsr+bEMl31BW4Ihc/ybRM17DTOU8DZ3UZhRU
raMMzLdBfl23DjbzNEE2ADg86htUqmIMeFvrBRfU6ShsTUZs0bngHF1PygFNpYR+
t7fMHjnmAjWP6OoAmdaMU3HJX+p6QCGKKFyPzz+Vi9t58AZfe5S3v/tmr9a3e0oU
h8K2imHHaWlj1hV7w5B3kkpLC+YhISnb/lFC3g1Vx61RerjQhtBHe6tPiXD2g0H+
5pb5nHCbR7dlBFaS1UA/nkCBwE8DbhGmbceSA8EPNOFvUC4ZU0+5y3VzdB8pcpt0
mQRAW43E8HVzH2FazUJLRSa6P29epg==
=gdlF
-----END PGP SIGNATURE-----

--/zdOOpNa1lEx1nQY--