This document only provides an introduction to some tasks required to keep the installer up and running. It should be mostly helpful for d-i release managers.
This is possible when the linux
package gets
uploaded, bumping its ABI. For example, it gets bumped from
3.9-1
to 3.10-1
. This becomes needed when
the linux-latest
package gets uploaded, since
obsolete
linux-image-<oldabi>-<arch>
packages (and relevant kernel modules) get decrufted soon after
that. Daily builds start to fail to build at this point, failing to
fetch decrufted packages.
A cron job on d-i.debian.org
generates an linux kernel
ABI summary for the testing
, unstable
, and
experimental
suites, and also sends a notification when
the ABI gets bumped in any of them. The summary is available here:
https://d-i.debian.org/kernel-summary.html
The following files need to be updated:
build/config/*.cfg
; beware, some architectures
have specific version handling, so it might be needed to update some
extra variables (like the upstream kernel version), rather than only
those containing the kernel ABI.
This is needed when the kernel drops support for a filesystem, say
foofs
; on the kernel side, that means the following
packages go away:
foofs-modules-<abi>-<arch>
. Kernel
maintainers should send a notification to the mailing list in advance.
From a quick grep under the packages/
directory, it
appears that the following changes are needed. This list isn't ensured
to be exhaustive:
foofs-modules-${kernel:Version}
occurrences
from the files under the build/config/
directory.
partman-foofs
removed from the archive.
partman-foofs.git
repository below the
attic/
directory.
.mrconfig
file to mark
the said repository as obsolete, adding deleted =
true
to its section.
kernel-wedge
if relevant. FIXME: Find out when
that's needed, and what's needed.
iso-scan
to drop foofs
from the
FS
variable in the
debian/iso-scan.postinst
script.
partman-auto
to drop foofs
from the lib/resize.sh
script.
os-prober
to drop foofs
from the
FILESYSTEMS
variable in the
os-probes/init/common/10filesystems
file.
partconf
to drop foofs
from
the file_system_modules
variable, but there might
be some more occurrences.
rescue
to drop relevant dependencies, and
remove try_load_module foofs
from
debian/rescue-mode.postinst
accordingly.
[8] The same logic should be applicable to the FreeBSD kernel, even if some details might be different.