[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1125926: kernel-install preinst.d plugin should be installed under /usr/lib/ instead of /etc/ which is reserved for administrators



Package: intel-microcode
Version: 3.20251111.1~deb13u1
Severity: normal
X-Debbugs-Cc: debian-kernel@lists.debian.org

I'm Cc'ing the kernel team so that maybe they can correct me if I'm wrong 🙂

I'm getting into the innards of kernel-install, dracut, systemd-boot, UKIs, and everything else that makes systems boot and it's been very confusing. I think that's because a couple packages are installing stuff in the wrong place and making it hard for me to override things with drop-ins. The kernel-install(8) manual page, in the first major paragraph, says

> kernel-install will run the executable files ("plugins") located in the directory /usr/lib/kernel/install.d/ and the local administration directory /etc/kernel/install.d/.
> All files are collectively sorted and executed in lexical order, regardless of the directory in which they live.
> However, files with identical filenames replace each other. Files in /etc/kernel/install.d/ take precedence over files with the same name in /usr/lib/kernel/install.d/.
> This can be used to override a system-supplied executables with a local file if needed; a symbolic link in /etc/kernel/install.d/ with the same name as an executable in /usr/lib/kernel/install.d/, pointing to /dev/null, disables the executable entirely.

Note: the kernel-install manual page doesn't mention the existence of the preinst.d/postinst.d/etc. directories anywhere at all. I assume this is probably an omission on their part, and the same assumptions hold for them as for install.d?

Right now, intel-microcode appears to install /etc/kernel/preinst.d/intel-microcode, but I think this should be /usr/lib/kernel/preinst.d/intel-microcode, because the reasons above say /etc/kernel/ should be for administrator overrides. It should be double-checked that kernel-install does, in fact, use /usr/lib/kernel/preinst.d/. A couple other packages have this issue too, so after research is done, it would be nice to ask the Lintian folks to add a warning and/or amend the manual page of systemd upstream.

-- System Information:
Debian Release: 13.3
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'proposed-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.57+deb13-amd64 (SMP w/2 CPU threads; PREEMPT)
Kernel taint flags: TAINT_USER
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages intel-microcode depends on:
ii  iucode-tool  2.3.1-3

Versions of packages intel-microcode recommends:
pn  initramfs-tools  <none>

intel-microcode suggests no packages.

-- no debconf information

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: