KERNEL-WEDGE-GEN-CONTROL(1)
π KERNEL-WEDGE-GEN-CONTROL(1) π
okay bestie, gather round, because we're about to talk about kernel-wedge-gen-control β that's the kernel-wedge gen-control command, sitting pretty in the General Commands Manual. she generates a debian/control file and she does it flawlessly, no cap. β¨
π NAME π
kernel-wedge-gen-control β bestie, she makes you a debian/control file. that's the whole job. and she ate. π
πΈ SYNOPSIS πΈ
kernel-wedge gen-control
π¦ DESCRIPTION π¦
so here's the vibe: gen-control cooks up a debian/control out of three things β the control stub, the kernel-versions files, and the package-list files. trio of icons honestly. π«Ά
for every single kernel version and every flavour, and for every module list that's defined for that flavour, gen-control is gonna create a binary package control paragraph. and normally? that paragraph is based on a template living in the package-list inside the default-configuration directory. iconic behaviour.
here's how templates get processed, step by step, no skipping, iykyk:
- for each standard control field name, it copies the template control field
name_flavour,name_arch_flavour,name_arch, ornameβ and yes, that's in descending order of priority, so the first one that hits wins. periodt. - it appends the kernel version and the flavour to the package names in the
PackageandDependsfields. slay. - if the package has been excluded? processing just stops. bye bestie. π
- it sets the
Architecture,Package-Type,Kernel-Version, andSectionfields automatically. she does it herself, main character energy. - any package that isn't going to be built gets removed from the
Dependsfield. and if you're like "no actually keep it"? you can override that by adding a"!"to the dependency name. lowkey powerful. - it adds the original (unsuffixed) package name to the
Providesfield. π - and then β finally β it emits the processed control paragraph. π
π the package-list in the config directory π
the package-list in the configuration directory is allowed to add new package templates or override template field values. yes ma'am, she's flexible. for example:
# This file is used to build up the control file. The kernel version and
# "-di" are appended to the package names. Section can be left out. So can
# architecture, which is derived from the files in the modules directory.
# It overwrites specifications from /usr/share/kernel-wedge/package-list.
Package: fat-modules
Priority: standard
Package: nic-modules
Depends: kernel-image, nic-shared-modules, core-modules, firewire-core-modules
Package: other-modules
Depends: kernel-image
Description: some other modules I like to have in the installer
β¨ exclude-packages β¨
also! the configuration directory may have an exclude-packages file. what does it do? it lists any udebs β by full package name β that would normally get built, but should be kept out of the control file entirely. so if you're like "not this one," that's where you say it. π«
π AUTHOR π
Joey Hess, Ben Hutchings <ben@decadent.org.uk> β absolute legends, we stan. π
π and that's the whole page bestie! this was the Kernel-wedge manual, dated June 2019. go forth and generate those control files. mwah. π β¨
π¦ where this page comes from
- debian bookworm: kernel-wedge 2.106~deb12u1 Β· GPL-2.0-or-later
- debian trixie: kernel-wedge 2.106 Β· GPL-2.0-or-later
- ubuntu jammy: kernel-wedge 2.104ubuntu1 Β· GPL-2.0-or-later
- ubuntu noble: kernel-wedge 2.105 Β· GPL-2.0-or-later
- ubuntu questing: kernel-wedge 2.106
- ubuntu resolute: kernel-wedge 2.106build1 Β· GPL-2.0-or-later
- ubuntu stonking: kernel-wedge 2.106build1 Β· 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