Hi,

On 7/19/25 05:16, Marc Haber wrote:

I would like to build differnt "flavors", lets call them linux-server, linux-vm, linux-desktop and linux-notebook. But I'd like to have them from - at least - the same .orig.tar.gz, just for the reason that this file is about 150 MB large.

That's what I tried to do twenty years ago with the "xcontrol" stuff, with the basic idea being package templates that generate new package names according to substitution rules, from the names of other packages or architectures -- specifically to support cross toolchains and large numbers of kernel packages (which was a massive problem in emdebian).

So, someone would upload a binary package "linux-config-server" that only contains the .config -- the source package for this can be a collection of config files -- and the autobuilders would pick up on the pattern match and build a new binary package. Likewise, the archive software could use the pattern substitution for NEW processing and cleanup. The same mechanism for cross compilers -- someone defines a new architecture, and we know that we probably want "gcc-cross-${arch}" to exist.

Obviously, that never happened.

The main problem isn't the build process here, but maintaining the archive, because you also need to track when they become obsolete, so they can be removed.

For the normal kernel packages in Debian, this is somewhat manageable, because removal of binary packages in a newer version can be detected reliably, but removal of source packages is still a manual process.

For a closed set, I guess the approach with the most sensible effort-to-reward ratio is to have a single source package that contains a set of .config files, declares a build dependency on linux-source-${version}, and simply builds all variants, using a manually triggered process to regenerate the control file when the set of variants or the version changes.

I believe that reprepro is able to clean that up properly without manual intervention, but I haven't tried.

   Simon

Attachment: OpenPGP_0xEBF67A846AABE354.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to