DEBREBUILD(1)
π DEBREBUILD π
okay bestie, welcome to debrebuild, a User Commands girly whose whole personality is rebuilding binary packages. Manual number one, section one, and yes, we're doing this. π
πΈ NAME πΈ
debrebuild β use a buildinfo file and snapshot.d.o to recreate binary packages. that's it, that's the job, and she EATS every time. β¨
π¦ SYNOPSIS π¦
debrebuild [options] <buildinfo>
π DESCRIPTION π
first things first, the little mini-synopsis she drops right there in the description:
debrebuild <--help|-h>
so. you hand her a buildinfo file, and she builds the source package it references β inside an environment that's documented in that very same buildinfo file. main character behavior honestly. π
the actual build can be done by sbuild or other builders, in a chroot environment that debootsnap creates. and then?? the generated artifacts get verified against the hashes from the buildinfo file. no cap, hash-checked and everything. π₯
β¨ OPTIONS β¨
--help,-hβ shows you this help and dips. exit, stage left. π--[no-]respect-build-pathβ whether to set up the build so that it uses theBuild-Pathfrom the.buildinfofile you gave her. bless. π--buildresultβ the directory where the build artifacts go. default is./(yes, right here, in the group chat, in front of everyone).--cache=PATHβ directory for caching downloaded.debpackages. if you leave it empty or just don't pass it at all, a temporary directory gets used and then discarded afterwards. she's not clingy, she's efficient. π§--builder=BUILDERβ which building software gets used. possible values arenone,sbuild,mmdebstrap,dpkgandsbuild+unshare. the default isnone. see section BUILDER for details.
β οΈ Note (important, bestie, read it):debrebuildcan parse buildinfo files with and without a GPG signature. however β if a signature is present, it gets discarded, becausedebrebuilddoes not support verifying it. so if the authenticity or integrity of the buildinfo files actually matters to you, you have to check that stuff before you invokedebrebuild, for example by usingdscverify. protect yourself. π«Ά
π EXAMPLES π
$ debrebuild --buildresult=./artifacts --builder=mmdebstrap
hello_2.10-2_amd64.buildinfo
π BUILDERS π
debrebuild can use different backends to do the actual package rebuild, and you pick your fave with the --builder option. the default is "none".
noneβ dry-run mode. nothing gets built. she's just vibing, observing, manifesting. πsbuildβ usesbuildto build the package. this requiressbuildto be set up with schroot chroots of Debian stable distributions. setup girlies, this one's for you.mmdebstrapβ usemmdebstrapto build the package. this requires no setup and no superuser privileges. iconic. no notes. βdpkgβ directly runapt-getanddpkg-buildpackageon the current system, no chroot involved. this requires root privileges. π₯sbuild+unshareβ usesbuildwith theunsharebackend. this creates the chroot and performs the build without superuser privileges and without any setup. the plot twist that slays. π
π§ UNSHARE π§
okay, history lesson: before kernel 5.10.1, or before Debian 11 (Bullseye), unprivileged user namespaces were disabled in Debian for security reasons. see Debian bug #898446 for the details if you want the full lore.
to enable user namespaces, run:
$ sudo sysctl -w kernel.unprivileged_userns_clone=1
the sbuild+unshare builder requires having unprivileged user namespaces activated, and the mmdebstrap builder benefits from it. on Ubuntu they're enabled by default, so Ubuntu girlies you're already served. π¦
π LIMITATIONS π
right now, the code assumes that all packages were at some point part of Debian unstable main. which means it fails for:
- packages from Debian ports
- packages from experimental
- locally built packages
- packages from third party repositories
enabling support for Debian ports and experimental is conceptually possible and only needs somebody implementing it. so likeβ¦ bestie? a main character? πβ¨ anyone?
and that's the whole page, no cap. this was debrebuild version 2.26.11ubuntu1, dated September 2026, manual DEBREBUILD(1). mwah, love u, go rebuild something. πππ
π¦ where this page comes from
- ubuntu stonking: devscripts 2.26.11ubuntu1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms