diff -pruN 108-8/debian/changelog 108-8ubuntu1/debian/changelog
--- 108-8/debian/changelog	2025-10-14 16:35:08.000000000 +0000
+++ 108-8ubuntu1/debian/changelog	2025-10-20 16:37:02.000000000 +0000
@@ -1,3 +1,30 @@
+dracut (108-8ubuntu1) resolute; urgency=medium
+
+  * Merge with Debian unstable. Remaining changes:
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+    - autopkgtest: enable tests for s390x again
+    - Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    - run upstream-dracut-live autopkgtest on armhf and ppc64el
+    - Drop debian-initramfs-post-update.patch. Let update-initramfs call the
+      bootloader hooks instead of dracut itself.
+    - plymouth: Only pull in the SimpleDRM driver by default
+    - Let linux-firmware updates trigger the dracut autopkgtest
+    - Cherry-pick some upstream fixes:
+      - fix(dracut): use "-name" to avoid find matching temporary directory
+      - fix(systemd-sysusers): increase ordering from 68 to 78
+      - fix(dracut-systemd): avoid matching extra root= substrings in cmdline
+      - fix(resume): avoid matching extra resume= substrings in cmdline
+    - fix(udev-rules): exclude udev rules from snapd
+  * feat(dmsquash-live-autooverlay): support readlink from uutils
+  * test: use GNU dd instead of uutil's dd (to work around bug LP 2129037)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Mon, 20 Oct 2025 18:37:02 +0200
+
 dracut (108-8) unstable; urgency=medium
 
   * dracut-test: fix dropped dependencies on i386
@@ -40,6 +67,44 @@ dracut (108-4) unstable; urgency=medium
 
  -- Benjamin Drung <bdrung@debian.org>  Thu, 25 Sep 2025 16:23:44 +0200
 
+dracut (108-3ubuntu3) questing; urgency=medium
+
+  * Default to cpio until 3cpio MIR is complete
+  * Cherry-pick some upstream fixes:
+    - fix(dracut): use "-name" to avoid find matching temporary directory
+    - fix(systemd-sysusers): increase ordering from 68 to 78
+    - fix(dracut-systemd): avoid matching extra root= substrings in cmdline
+    - fix(resume): avoid matching extra resume= substrings in cmdline
+  * fix(udev-rules): exclude udev rules from snapd
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Thu, 04 Sep 2025 23:20:52 +0200
+
+dracut (108-3ubuntu2) questing; urgency=medium
+
+  * fix(dracut): library directory creation in --kernel-only
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Thu, 14 Aug 2025 20:39:46 +0200
+
+dracut (108-3ubuntu1) questing; urgency=medium
+
+  * Merge with Debian unstable. Remaining changes:
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+    - autopkgtest: enable tests for s390x again
+    - Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    - run upstream-dracut-live autopkgtest on armhf and ppc64el
+    - Drop debian-initramfs-post-update.patch. Let update-initramfs call the
+      bootloader hooks instead of dracut itself.
+    - plymouth: Only pull in the SimpleDRM driver by default
+    - Let linux-firmware updates trigger the dracut autopkgtest
+  * Depend on 3cpio instead of cpio
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Wed, 13 Aug 2025 23:08:38 +0200
+
 dracut (108-3) unstable; urgency=medium
 
   * Cherry-pick upstream commits to simplify debian/rules:
@@ -57,6 +122,26 @@ dracut (108-3) unstable; urgency=medium
 
  -- Benjamin Drung <bdrung@debian.org>  Wed, 13 Aug 2025 14:07:00 +0200
 
+dracut (108-2ubuntu1) questing; urgency=medium
+
+  * Merge with Debian unstable. Remaining changes:
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+    - autopkgtest: enable tests for s390x again
+    - Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    - run upstream-dracut-live autopkgtest on armhf and ppc64el
+    - Drop debian-initramfs-post-update.patch. Let update-initramfs call the
+      bootloader hooks instead of dracut itself.
+    - plymouth: Only pull in the SimpleDRM driver by default
+    - Let linux-firmware updates trigger the dracut autopkgtest
+  * fix(dracut-util): crash if CMDLINE ends with quotation mark
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Fri, 08 Aug 2025 02:17:39 +0200
+
 dracut (108-2) unstable; urgency=medium
 
   * debian/rules: drop obsolete removal of modified adoc line
@@ -76,6 +161,26 @@ dracut (108-2) unstable; urgency=medium
 
  -- Benjamin Drung <bdrung@debian.org>  Thu, 07 Aug 2025 14:26:28 +0200
 
+dracut (108-1ubuntu1) questing; urgency=medium
+
+  * Merge with Debian unstable. Remaining changes:
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+    - autopkgtest: enable tests for s390x again
+    - autopkgtest: add TEST-70-ISCSI and TEST-71-ISCSI-MULTI
+    - Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    - run upstream-dracut-live autopkgtest on armhf and ppc64el
+    - Drop debian-initramfs-post-update.patch. Let update-initramfs call the
+      bootloader hooks instead of dracut itself.
+    - plymouth: Only pull in the SimpleDRM driver by default
+    - Let linux-firmware updates trigger the dracut autopkgtest
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 05 Aug 2025 10:40:05 +0200
+
 dracut (108-1) unstable; urgency=medium
 
   * New upstream release
@@ -109,6 +214,62 @@ dracut (107-2) unstable; urgency=medium
 
  -- Benjamin Drung <bdrung@debian.org>  Tue, 29 Jul 2025 23:31:39 +0200
 
+dracut (107-1ubuntu5) questing; urgency=medium
+
+  * fix(lsinitrd): resolve initrd to real path (LP: #2116183)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 08 Jul 2025 23:12:17 +0200
+
+dracut (107-1ubuntu4) questing; urgency=medium
+
+  * Fix trigger looping when installing dracut (LP: #2116073)
+  * Add autopkgtest for lsinitrd
+  * Let linux-firmware updates trigger the dracut autopkgtest (LP: #2116067)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Mon, 07 Jul 2025 13:30:54 +0200
+
+dracut (107-1ubuntu3) questing; urgency=medium
+
+  * Skip missing shellcheck on i386
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Mon, 30 Jun 2025 11:58:56 +0200
+
+dracut (107-1ubuntu2) questing; urgency=medium
+
+  * autopkgtest: replace qemu-kvm by qemu-system-native
+  * update-initramfs: support deferring update by trigger (LP: #2114683)
+  * Revert "Avoid updating the initramfs twice for some cases" (LP: #2115490)
+  * dracut-network: default to systemd-networkd as network manager
+  * source.apport: import packaging from apport
+  * Fix shellcheck in Debian packaging scripts
+  * Run syncheck, TEST-80-GETARGS, and TEST-81-SKIPCPIO during build
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Fri, 27 Jun 2025 16:51:35 +0200
+
+dracut (107-1ubuntu1) questing; urgency=medium
+
+  * Merge with Debian unstable (LP: #2111570). Remaining changes:
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+    - autopkgtest: enable tests for s390x again
+    - autopkgtest: add TEST-70-ISCSI and TEST-71-ISCSI-MULTI
+    - Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    - run upstream-dracut-live autopkgtest on armhf and ppc64el
+    - Add update-initramfs (derived from initramfs-tools)
+    - Drop debian-initramfs-post-update.patch. Let update-initramfs call the
+      bootloader hooks instead of dracut itself.
+    - Add bash completion for update-initramfs
+    - Avoid updating the initramfs twice for some cases
+    - plymouth: Only pull in the SimpleDRM driver by default
+  * autopkgtest: depend on curl for test 60-NFS
+  * fix(simpledrm): add =drivers/gpu/drm/panel (LP: #2107477)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Fri, 23 May 2025 14:54:03 +0200
+
 dracut (107-1) unstable; urgency=medium
 
   [ Thomas Lange ]
@@ -155,6 +316,54 @@ dracut (106-3) unstable; urgency=medium
 
  -- Thomas Lange <lange@debian.org>  Thu, 20 Feb 2025 11:02:07 +0100
 
+dracut (106-2ubuntu5) plucky; urgency=medium
+
+  * update-initramfs: add -s parameter
+  * Avoid updating the initramfs twice for some cases (LP: #1466965)
+  * add simple-drm module
+  * plymouth: Only pull in the SimpleDRM driver by default (LP: #2105377)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Wed, 02 Apr 2025 10:39:23 +0200
+
+dracut (106-2ubuntu4) plucky; urgency=medium
+
+  * update-initramfs: add --version parameter
+  * Add bash completion for update-initramfs (LP: #2103540)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Sat, 22 Mar 2025 00:32:49 +0100
+
+dracut (106-2ubuntu3) plucky; urgency=medium
+
+  * fix(systemd-sysusers): silence "Creating " on stderr
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 25 Feb 2025 17:18:28 +0100
+
+dracut (106-2ubuntu2) plucky; urgency=medium
+
+  * Add update-initramfs (derived from initramfs-tools) (LP: #2098525)
+  * Drop debian-initramfs-post-update.patch. Let update-initramfs call the
+    bootloader hooks instead of dracut itself.
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Fri, 21 Feb 2025 01:23:03 +0100
+
+dracut (106-2ubuntu1) plucky; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - drop 90overlay-root in favor of 90overlayfs (Closes: #1017039)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmraid, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+    - autopkgtest: add TEST-70-ISCSI and TEST-71-ISCSI-MULTI
+    - Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    - Set -H --hostonly-mode=sloppy as default arguments via a config file.
+  * run upstream-dracut-live autopkgtest on armhf and ppc64el
+  * move 99-ubuntu.conf to 10-ubuntu.conf (to ease overwriting it)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Thu, 13 Feb 2025 12:29:40 +0100
+
 dracut (106-2) unstable; urgency=medium
 
   * new patches (all accepted upstream):
@@ -201,6 +410,48 @@ dracut (105-3) unstable; urgency=medium
 
  -- Benjamin Drung <bdrung@debian.org>  Tue, 07 Jan 2025 10:25:32 +0100
 
+dracut (105-2ubuntu5) plucky; urgency=medium
+
+  * test: run RAID and ENC-RAID-LVM with --no-hostonly (LP: #2091954)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Sat, 21 Dec 2024 01:28:52 +0100
+
+dracut (105-2ubuntu4) plucky; urgency=medium
+
+  * Install 99-ubuntu.conf in /usr/lib/dracut/dracut.conf.d instead of /etc
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Wed, 27 Nov 2024 15:47:41 +0100
+
+dracut (105-2ubuntu3) plucky; urgency=medium
+
+  * Set -H --hostonly-mode=sloppy as default arguments via a config file.
+
+ -- Simon Quigley <tsimonq2@ubuntu.com>  Sun, 24 Nov 2024 21:46:30 -0600
+
+dracut (105-2ubuntu2) plucky; urgency=medium
+
+  * Plymouth hook: Use alternatives instead of plymouth-set-default-theme
+    (LP: #1596220).
+
+ -- Simon Quigley <tsimonq2@ubuntu.com>  Thu, 21 Nov 2024 14:54:12 -0600
+
+dracut (105-2ubuntu1) plucky; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - run autopkgtest on all architectures
+    - Run upstream autopkgtest as root
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - drop 90overlay-root in favor of 90overlayfs (Closes: #1017039)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmraid, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+      (LP: #2081183)
+  * autopkgtest: also run TEST-20-NFS, TEST-30-ISCSI, and TEST-35-ISCSI-MULTI
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Thu, 21 Nov 2024 15:16:59 +0100
+
 dracut (105-2) unstable; urgency=medium
 
   * autopkgtest:
@@ -221,6 +472,22 @@ dracut (105-2) unstable; urgency=medium
 
  -- Benjamin Drung <bdrung@debian.org>  Thu, 21 Nov 2024 14:30:47 +0100
 
+dracut (105-1ubuntu1) plucky; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - Run upstream autopkgtest as root
+    - disable using DH_VERBOSE=1
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - drop 90overlay-root in favor of 90overlayfs (Closes: #1017039)
+    - dracut-core:
+      - demote cryptsetup, systemd-cryptsetup, dmraid, dmsetup, kpartx, lvm2,
+        and mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+    - Include all packages with dracut modules in Apport bug reports
+      (LP: #2081183)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Thu, 14 Nov 2024 14:06:43 +0100
+
 dracut (105-1) unstable; urgency=low
 
   [ Thomas Lange ]
@@ -281,6 +548,53 @@ dracut (103-1.1) unstable; urgency=mediu
 
  -- Marco d'Itri <md@linux.it>  Tue, 20 Aug 2024 23:36:24 +0200
 
+dracut (103-1ubuntu3) oracular; urgency=medium
+
+  * Regenerate only the latest and missing initrds (LP: #2048990)
+  * Include all packages with dracut modules in Apport bug reports
+    (LP: #2081183)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Mon, 30 Sep 2024 15:04:58 +0200
+
+dracut (103-1ubuntu2) oracular; urgency=medium
+
+  * autopkgtest: Drop dmraid upstream test 14 (LP: #2073677)
+  * Add systemd-coredump, systemd-cryptsetup, and systemd-repart as
+    dependencies for upstream-dracut-core autopkgtest.
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 03 Sep 2024 11:02:08 +0200
+
+dracut (103-1ubuntu1) oracular; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - autopkgtest: Enable dmraid upstream test 14
+    - Run upstream autopkgtest as root
+    - disable using DH_VERBOSE=1
+    - dracut-core: add new modules 01systemd-bsod, 01systemd-creds, 90numlock,
+      90pcmcia
+    - Explicitly mark 45ifcfg module as not installed
+    - Switch to debhelper 13
+    - dracut: use await variant of update-initramfs trigger
+    - drop udevsettle patch (these kind of patches should be applied upstream)
+    - drop nm-path patch (network-manager ships the helpers in /usr/libexec)
+    - drop 90overlay-root in favor of 90overlayfs (Closes: #1017039)
+    - run autopkgtest with V=2
+    - run autopkgtest on all architectures
+    - autopkgtest: disable using KVM for ppc64el
+    - autopkgtest: set ARCH to dpkg architecture
+    - dracut-core:
+      - drop recommending pkgconf
+      - drop depending directly on libkmod2. dracut-install links against it.
+      - demote cryptsetup, dmraid, dmsetup, kpartx, lvm2, mdadm to suggests
+      - demote binutils to suggests. its only needed when using UEFI executables
+      - recommend zstd instead of pigz and default to zstd
+    - Drop dracut-config-generic. Building a generic image is and will be the
+      default.
+    - Default initrdname to initrd.img-${kernel}
+  * All submitted patches were accepted upstream and could be dropped.
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Fri, 09 Aug 2024 11:26:10 +0200
+
 dracut (103-1) unstable; urgency=low
 
   * new upstream version 103
@@ -289,6 +603,65 @@ dracut (103-1) unstable; urgency=low
 
  -- Thomas Lange <lange@debian.org>  Thu, 25 Jul 2024 13:30:18 +0900
 
+dracut (102-3ubuntu4) oracular; urgency=medium
+
+  * Cherry-pick upstream fixes for systemd 256 (LP: #2069290):
+    - fix(test): use --add instead of --modules to create test-makeroot
+    - test: avoid writing to rootfs as it might be read-only
+  * fix(dracut-initramfs-restore.sh): correct initrd globbing
+  * feat(lsinitrd.sh): support configurable initrd filenames
+  * Default initrdname to initrd.img-${kernel}
+  * Cherry-pick upstream performance fixes (LP: #2065180):
+    - perf(dracut-install): memoize find_kmod_module_from_sysfs_node
+    - perf(dracut-install): use driver/module sysfs dirs for module name
+  * test: virtual hardware watchdog not available on s390x
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Mon, 08 Jul 2024 20:37:51 +0200
+
+dracut (102-3ubuntu3) oracular; urgency=medium
+
+  * autopkgtest: set ARCH to dpkg architecture
+  * dracut-core:
+    - drop recommending pkgconf
+    - drop depending directly on libkmod2. dracut-install links against it.
+    - demote cryptsetup, dmraid, dmsetup, kpartx, lvm2, mdadm to suggests
+    - demote binutils to suggests. its only needed when using UEFI executables.
+    - recommend zstd instead of pigz and default to zstd
+  * Drop dracut-config-generic. Building a generic image is and will be the
+    default.
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Thu, 27 Jun 2024 23:07:12 +0200
+
+dracut (102-3ubuntu2) oracular; urgency=medium
+
+  * dracut: use await variant of update-initramfs trigger
+  * fix(shell-completion): remove hashbang from bash completions
+  * drop udevsettle patch (these kind of patches should be applied upstream)
+  * drop nm-path patch (network-manager ships the helpers in /usr/libexec)
+  * drop 90overlay-root in favor of 90overlayfs (Closes: #1017039)
+  * run autopkgtest with V=2
+  * autopkgtest: depend on tpm2-tools for systemd-pcrphase (LP: #2069290)
+  * run autopkgtest on all architectures
+  * autopkgtest: disable using KVM for ppc64el
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Fri, 14 Jun 2024 01:57:17 +0200
+
+dracut (102-3ubuntu1) oracular; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - autopkgtest: Enable dmraid upstream test 14
+    - Run upstream autopkgtest as root
+    - disable using DH_VERBOSE=1
+    - perf(dracut-install): preload kmod resources for quicker module lookup
+      (LP: #2065180)
+  * dracut-core: add new modules 01systemd-bsod, 01systemd-creds, 90numlock,
+    90pcmcia
+  * Explicitly mark 45ifcfg module as not installed
+  * Switch to debhelper 13
+  * test(RAID-DEG): fix running test out of tree
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Wed, 12 Jun 2024 19:38:43 +0200
+
 dracut (102-3) unstable; urgency=medium
 
   * add module net-lib, Closes: #1072744
@@ -314,6 +687,24 @@ dracut (102-1) unstable; urgency=low
 
  -- Thomas Lange <lange@debian.org>  Mon, 03 Jun 2024 14:14:11 +0200
 
+dracut (060+5-8ubuntu2) oracular; urgency=medium
+
+  * perf(dracut-install): preload kmod resources for quicker module lookup
+    (LP: #2065180)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 04 Jun 2024 16:33:13 +0200
+
+dracut (060+5-8ubuntu1) oracular; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - autopkgtest: Enable dmraid upstream test 14
+    - Run upstream autopkgtest as root
+    - disable using DH_VERBOSE=1
+    - d/p/ldconfig-real.patch: make sure ldconfig.real is installed where
+      needed (LP: #2053057)
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 21 May 2024 17:38:39 +0200
+
 dracut (060+5-8) unstable; urgency=low
 
   * control: adjust breaks, replaces, Closes: #1071208, #1071244
@@ -336,6 +727,32 @@ dracut (060+5-2) unstable; urgency=low
 
  -- Thomas Lange <lange@debian.org>  Sun, 31 Mar 2024 19:05:19 +0200
 
+dracut (060+5-1ubuntu3) noble; urgency=high
+
+  * No change rebuild for 64-bit time_t and frame pointers.
+
+ -- Julian Andres Klode <juliank@ubuntu.com>  Mon, 08 Apr 2024 17:56:43 +0200
+
+dracut (060+5-1ubuntu2) noble; urgency=medium
+
+  * d/p/ldconfig-real.patch: make sure ldconfig.real is installed where needed
+    (LP: #2053057)
+
+ -- Nick Rosbrook <enr0n@ubuntu.com>  Tue, 13 Feb 2024 11:26:56 -0500
+
+dracut (060+5-1ubuntu1) noble; urgency=medium
+
+  * Merge from Debian unstable. Remaining changes:
+    - fix(test): running tests no longer requires to be root
+    - Add modules 80test, 80test-makeroot, and 80test-root to dracut-core
+    - Add autopkgtest to run upstream test cases on amd64 (LP: #2031417)
+    - Split dracut-install into separate package for initramfs-tools
+      (LP: #2031185)
+  * test(FULL SYSTEMD): no need to include dbus to the target rootfs
+  * Drop dbus-broker from autopkgtest
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Wed, 07 Feb 2024 18:44:09 +0100
+
 dracut (060+5-1) unstable; urgency=medium
 
   * upstream changed the release process, and do not tag the releases any
@@ -363,6 +780,35 @@ dracut (059+212-1) unstable; urgency=low
 
  -- Thomas Lange <lange@debian.org>  Thu, 30 Nov 2023 22:10:02 +0100
 
+dracut (059-4ubuntu2) mantic; urgency=medium
+
+  * Split dracut-install into separate package for initramfs-tools
+    (LP: #2031185)
+  * Update out-of-tree patches to final version merged upstream
+  * Cherry-pick upstream fixes:
+    - fix(dracut-systemd): rootfs-generator issues
+    - test: increase test VM memory from 512M to 1024M to avoid OOM killer
+  * Address lintian complains:
+    - Remove empty directories in /usr/lib/dracut/modules.d
+    - Add ${misc:Depends} to all binary package dependencies
+    - Override lintian complaint executable-in-usr-lib (reported upstream)
+    - Override false positive about missing init.d scripts
+  * Install files from debian/tmp to make dh_missing happy
+  * Install dracut.kernel.7 man page (link to dracut.cmdline.7)
+  * Restrict autopkgtest to amd64 (other architectures need upstrem work)
+  * autopkgtest: run more upstream test cases
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Tue, 22 Aug 2023 16:34:06 +0200
+
+dracut (059-4ubuntu1) mantic; urgency=medium
+
+  * fix(test): running tests no longer requires to be root
+  * test: Make dracut and modules.d directory configurable
+  * Add upstream autopkgtest to run four test cases (LP: #2031417)
+  * Add modules 80test, 80test-makeroot, and 80test-root to dracut-core
+
+ -- Benjamin Drung <bdrung@ubuntu.com>  Wed, 16 Aug 2023 02:02:13 +0200
+
 dracut (059-4) unstable; urgency=low
 
   * Fix file name in patch initrd-not-initramfs.patch
diff -pruN 108-8/debian/control 108-8ubuntu1/debian/control
--- 108-8/debian/control	2025-10-14 16:21:29.000000000 +0000
+++ 108-8ubuntu1/debian/control	2025-10-20 16:36:15.000000000 +0000
@@ -1,9 +1,11 @@
 Source: dracut
 Section: utils
 Priority: optional
-Maintainer: Thomas Lange <lange@debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Thomas Lange <lange@debian.org>
 Uploaders: Benjamin Drung <bdrung@debian.org>
 Build-Depends: debhelper-compat (= 13),
+               dh-apport,
                3cpio [!alpha !hppa !m68k !sh4] <!nocheck>,
                asciidoctor,
                bash-completion,
@@ -30,16 +32,14 @@ Depends: 3cpio | cpio,
          udev,
          ${misc:Depends},
          ${shlibs:Depends}
-Recommends: binutils,
-            console-setup,
-            cryptsetup,
-            dmsetup,
-            kpartx,
-            lvm2,
-            mdadm,
-            systemd,
-            systemd-cryptsetup,
-            zstd
+Recommends: console-setup, systemd, zstd
+Suggests: binutils,
+          cryptsetup,
+          dmsetup,
+          kpartx,
+          lvm2,
+          mdadm,
+          systemd-cryptsetup
 Breaks: dracut-live (<< 059-2), dracut-network (<< 057+157-2)
 Replaces: dracut-live (<< 059-2), dracut-network (<< 057+157-2)
 Description: dracut is an event driven initramfs infrastructure (core tools)
diff -pruN 108-8/debian/dracut-core.install 108-8ubuntu1/debian/dracut-core.install
--- 108-8/debian/dracut-core.install	2025-10-14 16:20:53.000000000 +0000
+++ 108-8ubuntu1/debian/dracut-core.install	2025-10-20 16:36:15.000000000 +0000
@@ -66,7 +66,6 @@ usr/lib/dracut/modules.d/45plymouth
 usr/lib/dracut/modules.d/45simpledrm
 usr/lib/dracut/modules.d/68lvmmerge
 usr/lib/dracut/modules.d/68lvmthinpool-monitor
-usr/lib/dracut/modules.d/68systemd-sysusers
 usr/lib/dracut/modules.d/69cio_ignore
 usr/lib/dracut/modules.d/70bluetooth
 usr/lib/dracut/modules.d/70btrfs
@@ -117,6 +116,7 @@ usr/lib/dracut/modules.d/77pollcdrom
 usr/lib/dracut/modules.d/77selinux
 usr/lib/dracut/modules.d/77syslog
 usr/lib/dracut/modules.d/77usrmount
+usr/lib/dracut/modules.d/78systemd-sysusers
 usr/lib/dracut/modules.d/80base
 usr/lib/dracut/modules.d/81busybox
 usr/lib/dracut/modules.d/84memstrack
diff -pruN 108-8/debian/patches/alternatives-not-set-default-theme.patch 108-8ubuntu1/debian/patches/alternatives-not-set-default-theme.patch
--- 108-8/debian/patches/alternatives-not-set-default-theme.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/alternatives-not-set-default-theme.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,42 @@
+Description: Use alternatives instead of the plymouth-set-default-theme tool
+ In Ubuntu's delta for plymouth, we do not ship the plymouth-set-default-theme
+ tool. This patch aligns the plymouth dracut hooks with the functionality in the
+ delta.
+Author: Simon Quigley <tsimonq2@ubuntu.com>
+Origin: vendor
+Forwarded: not-needed
+Last-Update: 2024-11-21
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/modules.d/45plymouth/module-setup.sh
++++ b/modules.d/45plymouth/module-setup.sh
+@@ -17,7 +17,7 @@ check() {
+     [[ "$mount_needs" ]] && return 1
+     [[ $(pkglib_dir) ]] || return 1
+ 
+-    require_binaries plymouthd plymouth plymouth-set-default-theme || return 1
++    require_binaries plymouthd plymouth || return 1
+ 
+     return 0
+ }
+@@ -43,7 +43,7 @@ install() {
+ 
+     inst_multiple readlink
+ 
+-    inst_multiple plymouthd plymouth plymouth-set-default-theme
++    inst_multiple plymouthd plymouth
+ 
+     if ! dracut_module_included "systemd"; then
+         inst_hook pre-trigger 10 "$moddir"/plymouth-pretrigger.sh
+--- a/modules.d/45plymouth/plymouth-populate-initrd.sh
++++ b/modules.d/45plymouth/plymouth-populate-initrd.sh
+@@ -1,7 +1,8 @@
+ #!/bin/bash
+ 
+ PLYMOUTH_LOGO_FILE="/usr/share/pixmaps/system-logo-white.png"
+-PLYMOUTH_THEME=$(plymouth-set-default-theme)
++PLYMOUTH_THEME_PATH="$(update-alternatives --query default.plymouth 2>/dev/null | sed -e '/^Value:/!d' -e 's/^Value: \(.*\)/\1/')"
++PLYMOUTH_THEME="$(basename "${PLYMOUTH_THEME_PATH:-none}" .plymouth || true)"
+ 
+ inst_multiple plymouthd plymouth
+ 
diff -pruN 108-8/debian/patches/debian-initramfs-post-update.patch 108-8ubuntu1/debian/patches/debian-initramfs-post-update.patch
--- 108-8/debian/patches/debian-initramfs-post-update.patch	2025-10-14 16:20:53.000000000 +0000
+++ 108-8ubuntu1/debian/patches/debian-initramfs-post-update.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,28 +0,0 @@
-From: =?utf-8?b?0L3QsNCx?= <nabijaczleweli@nabijaczleweli.xyz>
-Date: Thu, 17 Nov 2022 01:44:32 +0100
-Subject: Run bootloader hooks from /etc/initramfs/post-update.d after making
- the image, and add $NO_POST_UPDATE_HOOKS to disable this
-
-See <https://kernel-team.pages.debian.net/kernel-handbook/ch-update-hooks.html#s-initramfs-hooks>
-
-Bug-Debian: https://bugs.debian.org/753752
-Forwarded: not-needed
----
- dracut.sh | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/dracut.sh b/dracut.sh
-index 45373ef..e6adffe 100755
---- a/dracut.sh
-+++ b/dracut.sh
-@@ -2873,4 +2873,10 @@ if [[ -d ${dracutsysrootdir-}/run/systemd/system ]]; then
-     fi
- fi
- 
-+# Invoke policy-conformant bootloader hooks
-+if [ -z "$NO_POST_UPDATE_HOOKS" ] && [ -d /etc/initramfs/post-update.d/ ]; then
-+    run-parts --arg="${kernel}" --arg="${outfile}" \
-+        /etc/initramfs/post-update.d/
-+fi
-+
- exit 0
diff -pruN 108-8/debian/patches/feat-dmsquash-live-autooverlay-support-readlink-from-uuti.patch 108-8ubuntu1/debian/patches/feat-dmsquash-live-autooverlay-support-readlink-from-uuti.patch
--- 108-8/debian/patches/feat-dmsquash-live-autooverlay-support-readlink-from-uuti.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/feat-dmsquash-live-autooverlay-support-readlink-from-uuti.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,40 @@
+From: Benjamin Drung <benjamin.drung@canonical.com>
+Date: Mon, 20 Oct 2025 18:07:00 +0200
+Subject: feat(dmsquash-live-autooverlay): support readlink from uutils
+
+The readlink command from GNU coreutils and the one from uutil coreutils
+behave differently in case the path contains symlinks and `..`. GNU
+readlink traverses symlinks first, but uutils resolves `..` first.
+
+Example from Ubuntu 25.10 (questing):
+
+```sh
+$ gnureadlink -f /sys/class/block/nvme0n1p1/..
+/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/nvme/nvme0/nvme0n1
+$ /usr/lib/cargo/bin/coreutils/readlink -f /sys/class/block/nvme0n1p1/..
+/sys/class/block
+```
+
+Enforce the correct order by resolving the symlinks before `..`. That
+way the result does not rely on implementation specifics of different
+readlink implementations.
+
+Forwarded: https://github.com/dracut-ng/dracut-ng/pull/1776
+---
+ modules.d/70dmsquash-live-autooverlay/create-overlay.sh | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/70dmsquash-live-autooverlay/create-overlay.sh b/modules.d/70dmsquash-live-autooverlay/create-overlay.sh
+index 00d76d6..ab56d24 100755
+--- a/modules.d/70dmsquash-live-autooverlay/create-overlay.sh
++++ b/modules.d/70dmsquash-live-autooverlay/create-overlay.sh
+@@ -51,7 +51,8 @@ gatherData() {
+         info "Skipping overlay creation: unpartitioned or read-only media detected"
+         exit 0
+     fi
+-    fullDriveSysfsPath=$(readlink -f "${rootDeviceSysfsPath}/..")
++    fullSysfsPath=$(readlink -f "${rootDeviceSysfsPath}")
++    fullDriveSysfsPath="${fullSysfsPath%/*}"
+     blockDevice="/dev/${fullDriveSysfsPath##*/}"
+     currentPartitionCount=$(grep --count -E "${blockDevice#/dev/}[0-9]+" /proc/partitions)
+ 
diff -pruN 108-8/debian/patches/fix-dracut-systemd-avoid-matching-extra-root-substrings-i.patch 108-8ubuntu1/debian/patches/fix-dracut-systemd-avoid-matching-extra-root-substrings-i.patch
--- 108-8/debian/patches/fix-dracut-systemd-avoid-matching-extra-root-substrings-i.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/fix-dracut-systemd-avoid-matching-extra-root-substrings-i.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,31 @@
+From: Alexander Zubkov <green@qrator.net>
+Date: Sun, 31 Aug 2025 09:50:29 +0200
+Subject: fix(dracut-systemd): avoid matching extra root= substrings in
+ cmdline
+
+`strstr ... 'root='` matches not only 'root' parameter, but any alike
+substring. It could be other parameter ending in 'root', for example
+'cryto_root=' or even parameter value. The presense of those in cmdline
+could fail the boot process.
+Fix it by adding a space in front of the matched string.
+
+Fixes: https://github.com/dracut-ng/dracut-ng/issues/1595
+Signed-off-by: Alexander Zubkov <green@qrator.net>
+Origin: upstream, https://github.com/dracut-ng/dracut-ng/pull/1615
+---
+ modules.d/77dracut-systemd/rootfs-generator.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/77dracut-systemd/rootfs-generator.sh b/modules.d/77dracut-systemd/rootfs-generator.sh
+index 53077a7..0e87bbf 100755
+--- a/modules.d/77dracut-systemd/rootfs-generator.sh
++++ b/modules.d/77dracut-systemd/rootfs-generator.sh
+@@ -89,7 +89,7 @@ if [ "$rootok" = "1" ]; then
+ 
+     generator_wait_for_dev "${root#block:}"
+     generator_fsck_after_pre_mount "${root#block:}"
+-    strstr "$(cat /proc/cmdline)" 'root=' || generator_mount_rootfs "${root#block:}" "$(getarg rootfstype=)" "$(getarg rootflags=)"
++    strstr " $(cat /proc/cmdline)" ' root=' || generator_mount_rootfs "${root#block:}" "$(getarg rootfstype=)" "$(getarg rootflags=)"
+ fi
+ 
+ exit 0
diff -pruN 108-8/debian/patches/fix-dracut-use-name-to-avoid-find-matching-temporary-dire.patch 108-8ubuntu1/debian/patches/fix-dracut-use-name-to-avoid-find-matching-temporary-dire.patch
--- 108-8/debian/patches/fix-dracut-use-name-to-avoid-find-matching-temporary-dire.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/fix-dracut-use-name-to-avoid-find-matching-temporary-dire.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,30 @@
+From: Deli Zhang <deli.zhang@cloud.com>
+Date: Mon, 18 Aug 2025 01:41:10 +0000
+Subject: fix(dracut): use "-name" to avoid find matching temporary directory
+
+$initdir includes a temporary directory, and the "-path" option of
+find attempts to match the entire path. If the temporary directory
+happens to contain ".ko", e.g.
+  initdir=/var/tmp/dracut.ko79pT/initramfs
+this can lead to a incorrect match, finally all executable files are
+excluded.
+
+Signed-off-by: Deli Zhang <deli.zhang@cloud.com>
+Origin: upstream, https://github.com/dracut-ng/dracut-ng/pull/1593
+---
+ dracut.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dracut.sh b/dracut.sh
+index c4db0e4..e718b03 100755
+--- a/dracut.sh
++++ b/dracut.sh
+@@ -2214,7 +2214,7 @@ if [[ $kernel_only != yes ]]; then
+     if [[ ${DRACUT_RESOLVE_LAZY-} ]] && [[ $DRACUT_INSTALL ]]; then
+         dinfo "*** Resolving executable dependencies ***"
+         # shellcheck disable=SC2086
+-        find "$initdir" -type f -perm /0111 -not -path '*.ko*' -print0 \
++        find "$initdir" -type f -perm /0111 -not -name '*.ko*' -print0 \
+             | xargs -r -0 $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${dracutsysrootdir:+-r "$dracutsysrootdir"} -R ${DRACUT_FIPS_MODE:+-f} --
+         # shellcheck disable=SC2181
+         if (($? == 0)); then
diff -pruN 108-8/debian/patches/fix-resume-avoid-matching-extra-resume-substrings-in-cmdl.patch 108-8ubuntu1/debian/patches/fix-resume-avoid-matching-extra-resume-substrings-in-cmdl.patch
--- 108-8/debian/patches/fix-resume-avoid-matching-extra-resume-substrings-in-cmdl.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/fix-resume-avoid-matching-extra-resume-substrings-in-cmdl.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,29 @@
+From: Alexander Zubkov <green@qrator.net>
+Date: Sun, 31 Aug 2025 10:12:38 +0200
+Subject: fix(resume): avoid matching extra resume= substrings in cmdline
+
+`grep ... 'resume='` matches not only 'resume' parameter, but any alike
+substring. It could be other parameter ending in 'resume' or even parameter
+value. The presense of those could fail the module setup.
+Fix it by checking for a space or the beginning of a line.
+
+Fixes: https://github.com/dracut-ng/dracut-ng/issues/1595
+Signed-off-by: Alexander Zubkov <green@qrator.net>
+Origin: upstream, https://github.com/dracut-ng/dracut-ng/pull/1615
+---
+ modules.d/74resume/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/74resume/module-setup.sh b/modules.d/74resume/module-setup.sh
+index a2693af..8e06730 100755
+--- a/modules.d/74resume/module-setup.sh
++++ b/modules.d/74resume/module-setup.sh
+@@ -14,7 +14,7 @@ check() {
+     if [[ ${hostonly-} ]] || [[ $mount_needs ]]; then
+         # Resuming won't work if swap is on a netdevice
+         swap_on_netdevice && return 255
+-        if grep -rq 'resume=' /proc/cmdline /etc/cmdline /etc/cmdline.d /etc/kernel/cmdline /usr/lib/kernel/cmdline 2> /dev/null; then
++        if grep -rqE '(^| )resume=' /proc/cmdline /etc/cmdline /etc/cmdline.d /etc/kernel/cmdline /usr/lib/kernel/cmdline 2> /dev/null; then
+             # hibernation support requested on kernel command line
+             return 0
+         else
diff -pruN 108-8/debian/patches/fix-systemd-sysusers-increase-ordering-from-68-to-78.patch 108-8ubuntu1/debian/patches/fix-systemd-sysusers-increase-ordering-from-68-to-78.patch
--- 108-8/debian/patches/fix-systemd-sysusers-increase-ordering-from-68-to-78.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/fix-systemd-sysusers-increase-ordering-from-68-to-78.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,95 @@
+From: Jo Zzsi <jozzsicsataban@gmail.com>
+Date: Sat, 30 Aug 2025 21:45:52 -0400
+Subject: fix(systemd-sysusers): increase ordering from 68 to 78
+
+This module should be orders afer all modules that depends on it
+
+This is to make sure that all inst_sysusers calls are in place
+before systemd-sysusers is called.
+
+This rule is already documented in the module-setup.sh file
+but was not followed for all modules.
+
+Fixes: https://github.com/dracut-ng/dracut-ng/issues/1610
+Origin: upstream, https://github.com/dracut-ng/dracut-ng/pull/1613
+---
+ modules.d/68systemd-sysusers/module-setup.sh | 31 ----------------------------
+ modules.d/78systemd-sysusers/module-setup.sh | 31 ++++++++++++++++++++++++++++
+ 2 files changed, 31 insertions(+), 31 deletions(-)
+ delete mode 100755 modules.d/68systemd-sysusers/module-setup.sh
+ create mode 100755 modules.d/78systemd-sysusers/module-setup.sh
+
+diff --git a/modules.d/68systemd-sysusers/module-setup.sh b/modules.d/68systemd-sysusers/module-setup.sh
+deleted file mode 100755
+index 477b8e7..0000000
+--- a/modules.d/68systemd-sysusers/module-setup.sh
++++ /dev/null
+@@ -1,31 +0,0 @@
+-#!/bin/bash
+-# This file is part of dracut.
+-# SPDX-License-Identifier: GPL-2.0-or-later
+-
+-# This module should be orders afer all modules that depends on it
+-# This is to make sure that all inst_sysusers calls are in place before systemd-sysusers is called.
+-
+-# Prerequisite check(s) for module.
+-check() {
+-    # If the binary(s) requirements are not fulfilled the module can't be installed.
+-    require_binaries systemd-sysusers || return 1
+-
+-    # Return 255 to only include the module, if another module requires it.
+-    return 255
+-}
+-
+-# Install the required file(s) and directories for the module in the initramfs.
+-install() {
+-    inst_sysusers basic.conf
+-
+-    # redirect stdout temporarily to FD 3 to use filter stderr
+-    {
+-        set -o pipefail
+-        systemd-sysusers --root="$initdir" 2>&1 >&3 | grep -v "^Creating " >&2
+-    } 3>&1
+-
+-    # systemd-sysusers does not set any permission
+-    # set read and write permission for the current user
+-    [[ -f "$initdir/etc/gshadow" ]] && chmod u+rw "$initdir/etc/gshadow"
+-    [[ -f "$initdir/etc/shadow" ]] && chmod u+rw "$initdir/etc/shadow"
+-}
+diff --git a/modules.d/78systemd-sysusers/module-setup.sh b/modules.d/78systemd-sysusers/module-setup.sh
+new file mode 100755
+index 0000000..477b8e7
+--- /dev/null
++++ b/modules.d/78systemd-sysusers/module-setup.sh
+@@ -0,0 +1,31 @@
++#!/bin/bash
++# This file is part of dracut.
++# SPDX-License-Identifier: GPL-2.0-or-later
++
++# This module should be orders afer all modules that depends on it
++# This is to make sure that all inst_sysusers calls are in place before systemd-sysusers is called.
++
++# Prerequisite check(s) for module.
++check() {
++    # If the binary(s) requirements are not fulfilled the module can't be installed.
++    require_binaries systemd-sysusers || return 1
++
++    # Return 255 to only include the module, if another module requires it.
++    return 255
++}
++
++# Install the required file(s) and directories for the module in the initramfs.
++install() {
++    inst_sysusers basic.conf
++
++    # redirect stdout temporarily to FD 3 to use filter stderr
++    {
++        set -o pipefail
++        systemd-sysusers --root="$initdir" 2>&1 >&3 | grep -v "^Creating " >&2
++    } 3>&1
++
++    # systemd-sysusers does not set any permission
++    # set read and write permission for the current user
++    [[ -f "$initdir/etc/gshadow" ]] && chmod u+rw "$initdir/etc/gshadow"
++    [[ -f "$initdir/etc/shadow" ]] && chmod u+rw "$initdir/etc/shadow"
++}
diff -pruN 108-8/debian/patches/fix-udev-rules-exclude-udev-rules-from-snapd.patch 108-8ubuntu1/debian/patches/fix-udev-rules-exclude-udev-rules-from-snapd.patch
--- 108-8/debian/patches/fix-udev-rules-exclude-udev-rules-from-snapd.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/fix-udev-rules-exclude-udev-rules-from-snapd.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,38 @@
+From: Benjamin Drung <benjamin.drung@canonical.com>
+Date: Thu, 4 Sep 2025 22:40:46 +0200
+Subject: fix(udev-rules): exclude udev rules from snapd
+
+There are no snaps in the initrd and these udev rules generated by snapd
+can cause warning messages. So just exclude udev rules in `/etc` that
+have `70-snap` in the name.
+
+Forwarded: https://github.com/dracut-ng/dracut-ng/pull/1620
+---
+ modules.d/74udev-rules/module-setup.sh | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/74udev-rules/module-setup.sh b/modules.d/74udev-rules/module-setup.sh
+index 35e4399..2772f5b 100755
+--- a/modules.d/74udev-rules/module-setup.sh
++++ b/modules.d/74udev-rules/module-setup.sh
+@@ -102,9 +102,19 @@ install() {
+     # Install the hosts local user configurations if enabled.
+     if [[ ${hostonly-} ]]; then
+         inst_dir "$udevconfdir"
++
++        declare -a udevrules=()
++        for rule in "$udevrulesconfdir"/*.rules; do
++            [ -e "$rule" ] || continue
++            if [[ $rule =~ "$udevrulesconfdir"/70-snap.*.rules ]]; then
++                continue
++            fi
++            udevrules+=("$rule")
++        done
++
+         inst_multiple -H -o \
+             "$udevconfdir"/udev.conf \
+             "$udevconfdir/udev.conf.d/*.conf" \
+-            "$udevrulesconfdir/*.rules"
++            "${udevrules[@]}"
+     fi
+ }
diff -pruN 108-8/debian/patches/plymouth-Only-pull-in-the-SimpleDRM-driver-by-default.patch 108-8ubuntu1/debian/patches/plymouth-Only-pull-in-the-SimpleDRM-driver-by-default.patch
--- 108-8/debian/patches/plymouth-Only-pull-in-the-SimpleDRM-driver-by-default.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/plymouth-Only-pull-in-the-SimpleDRM-driver-by-default.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,28 @@
+From: Benjamin Drung <benjamin.drung@canonical.com>
+Date: Wed, 2 Apr 2025 10:35:47 +0200
+Subject: plymouth: Only pull in the SimpleDRM driver by default
+
+Plymouth doesn't always show splash screen if DRM drivers are installed
+in initrd.
+
+So let Dracut behave more like initramfs-tools and remove all DRM
+drivers and just use SimpleDRM that's built-into the kernel.
+
+LP: #2105377
+---
+ modules.d/45plymouth/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/45plymouth/module-setup.sh b/modules.d/45plymouth/module-setup.sh
+index 0282d4c..88268b5 100755
+--- a/modules.d/45plymouth/module-setup.sh
++++ b/modules.d/45plymouth/module-setup.sh
+@@ -24,7 +24,7 @@ check() {
+ 
+ # called by dracut
+ depends() {
+-    echo drm bash
++    echo simpledrm bash
+ }
+ 
+ # called by dracut
diff -pruN 108-8/debian/patches/series 108-8ubuntu1/debian/patches/series
--- 108-8/debian/patches/series	2025-10-14 16:20:53.000000000 +0000
+++ 108-8ubuntu1/debian/patches/series	2025-10-20 16:37:02.000000000 +0000
@@ -1,5 +1,3 @@
-udevsettle
-debian-initramfs-post-update.patch
 fix-dracut-do-not-call-uname-r-in-chroot-environments.patch
 feat-debian.conf-default-to-initrd.img-kernel-on-Debian-U.patch
 test-drop-requiring-iscsiuio.socket.patch
@@ -28,3 +26,12 @@ test-avoid-kernel-install-add-all.patch
 fix-Makefile-exclude-hidden-directories-from-shellcheck-p.patch
 test-allow-running-UEFI-and-kernel-install-tests-in-chroo.patch
 test-skip-using-kernel-install-due-to-bug-1117563.patch
+alternatives-not-set-default-theme.patch
+plymouth-Only-pull-in-the-SimpleDRM-driver-by-default.patch
+fix-dracut-use-name-to-avoid-find-matching-temporary-dire.patch
+fix-systemd-sysusers-increase-ordering-from-68-to-78.patch
+fix-dracut-systemd-avoid-matching-extra-root-substrings-i.patch
+fix-resume-avoid-matching-extra-resume-substrings-in-cmdl.patch
+fix-udev-rules-exclude-udev-rules-from-snapd.patch
+feat-dmsquash-live-autooverlay-support-readlink-from-uuti.patch
+test-use-GNU-dd-instead-of-uutil-s-dd.patch
diff -pruN 108-8/debian/patches/test-use-GNU-dd-instead-of-uutil-s-dd.patch 108-8ubuntu1/debian/patches/test-use-GNU-dd-instead-of-uutil-s-dd.patch
--- 108-8/debian/patches/test-use-GNU-dd-instead-of-uutil-s-dd.patch	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/patches/test-use-GNU-dd-instead-of-uutil-s-dd.patch	2025-10-20 16:37:02.000000000 +0000
@@ -0,0 +1,48 @@
+From: Benjamin Drung <benjamin.drung@canonical.com>
+Date: Mon, 20 Oct 2025 18:35:58 +0200
+Subject: test: use GNU dd instead of uutil's dd
+
+All dracut autopkgtest fail with:
+
+```
+dd: IO error: Invalid input
+```
+
+Use GNU dd instead of uutil's dd to work around this issue.
+
+Bug-Ubuntu: https://launchpad.net/bugs/2129037
+Forwarded: not-needed
+---
+ test/modules.d/70test-makeroot/module-setup.sh | 4 +++-
+ test/modules.d/70test-root/module-setup.sh     | 3 +++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/test/modules.d/70test-makeroot/module-setup.sh b/test/modules.d/70test-makeroot/module-setup.sh
+index a8fda4c..281b15a 100755
+--- a/test/modules.d/70test-makeroot/module-setup.sh
++++ b/test/modules.d/70test-makeroot/module-setup.sh
+@@ -13,7 +13,9 @@ install() {
+     inst_multiple cp umount sync mkfs.ext4
+ 
+     # prefer the coreutils version of dd over the busybox version for testing
+-    inst /bin/dd /usr/sbin/dd
++    #inst /bin/dd /usr/sbin/dd
++    # use GNU dd instead of uutil's dd to work around https://launchpad.net/bugs/2129037
++    inst /usr/bin/gnudd /usr/sbin/dd
+ 
+     inst_hook initqueue/finished 01 "$moddir/finished-false.sh"
+ }
+diff --git a/test/modules.d/70test-root/module-setup.sh b/test/modules.d/70test-root/module-setup.sh
+index ac249db..43dc4a3 100755
+--- a/test/modules.d/70test-root/module-setup.sh
++++ b/test/modules.d/70test-root/module-setup.sh
+@@ -22,6 +22,9 @@ install() {
+ 
+     inst_multiple mkdir ln dd mount poweroff umount setsid sync cat grep
+ 
++    # use GNU dd instead of uutil's dd to work around https://launchpad.net/bugs/2129037
++    inst /usr/bin/gnudd /usr/sbin/dd
++
+     if dracut_module_included "systemd"; then
+         inst_simple "$moddir/testsuite.target" "${systemdsystemunitdir}/testsuite.target"
+         inst_simple "$moddir/testsuite.service" "${systemdsystemunitdir}/testsuite.service"
diff -pruN 108-8/debian/patches/udevsettle 108-8ubuntu1/debian/patches/udevsettle
--- 108-8/debian/patches/udevsettle	2025-10-14 16:06:20.000000000 +0000
+++ 108-8ubuntu1/debian/patches/udevsettle	1970-01-01 00:00:00.000000000 +0000
@@ -1,22 +0,0 @@
-From: Thomas Lange <lange@debian.org>
-Date: Mon, 4 Aug 2025 13:10:56 +0200
-Subject: udevsettle
-
-In a KVM VM the network is not configured properly, it shows ens3
-(instead of eth0), which is not in status up and no IP address.
----
- modules.d/80base/init.sh | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/modules.d/80base/init.sh b/modules.d/80base/init.sh
-index c9090e9..c52b567 100755
---- a/modules.d/80base/init.sh
-+++ b/modules.d/80base/init.sh
-@@ -161,6 +161,7 @@ udevadm control --reload > /dev/null 2>&1 || :
- # then the rest
- udevadm trigger --type=subsystems --action=add > /dev/null 2>&1
- udevadm trigger --type=devices --action=add > /dev/null 2>&1
-+udevadm settle
- 
- make_trace_mem "hook initqueue" '1:shortmem' '2+:mem' '3+:slab'
- getargs 'rd.break=initqueue' && emergency_shell -n initqueue "Break before initqueue"
diff -pruN 108-8/debian/rules 108-8ubuntu1/debian/rules
--- 108-8/debian/rules	2025-10-14 16:20:53.000000000 +0000
+++ 108-8ubuntu1/debian/rules	2025-10-20 16:36:15.000000000 +0000
@@ -13,7 +13,7 @@ export DRACUT_FULL_VERSION=$(DEB_VERSION
 deb_systemdsystemunitdir = $(shell pkg-config --variable=systemdsystemunitdir systemd | sed s,^/,,)
 
 %:
-	dh $@ --with bash-completion
+	dh $@ --with apport,bash-completion
 
 override_dh_auto_configure:
 	dh_auto_configure -- --configprofile=debian --systemdsystemunitdir=/$(deb_systemdsystemunitdir) --libdir=/usr/lib
diff -pruN 108-8/debian/source.apport 108-8ubuntu1/debian/source.apport
--- 108-8/debian/source.apport	1970-01-01 00:00:00.000000000 +0000
+++ 108-8ubuntu1/debian/source.apport	2025-10-20 16:36:15.000000000 +0000
@@ -0,0 +1,28 @@
+"""Apport package hook for dracut."""
+
+import pathlib
+import typing
+
+from apport import packaging
+from problem_report import ProblemReport
+
+
+def add_info(report: ProblemReport, _ui: typing.Any) -> None:
+    """Add details for dracut to Apport bug report."""
+    packages_with_modules = set()
+    unknown_modules = set()
+    for path in pathlib.Path("/usr/lib/dracut/modules.d").iterdir():
+        package = packaging.get_file_package(str(path))
+        if package is None:
+            unknown_modules.add(path.name)
+        else:
+            packages_with_modules.add(package)
+
+    dracut_modules_packages = []
+    for package in sorted(packages_with_modules):
+        version = packaging.get_version(package)
+        dracut_modules_packages.append(f"{package} {version}")
+
+    report["DracutModulesPackages"] = "\n".join(dracut_modules_packages)
+    if unknown_modules:
+        report["DracutModules"] = " ".join(sorted(unknown_modules))
diff -pruN 108-8/debian/tests/control 108-8ubuntu1/debian/tests/control
--- 108-8/debian/tests/control	2025-10-14 16:20:53.000000000 +0000
+++ 108-8ubuntu1/debian/tests/control	2025-10-20 16:36:15.000000000 +0000
@@ -7,7 +7,7 @@ Restrictions: needs-root, superficial
 # * TEST-43-KERNEL-INSTALL: kernel-install issue, see https://bugs.debian.org/1117563
 # * TEST-61-MULTINIC: disabled in upstream CI since 2023-01-02
 # * TEST-62-BONDBRIDGEVLAN: https://github.com/dracutdevs/dracut/issues/2328
-# arm64, armhf, ppc64el, and s390x need upstream support: https://github.com/dracutdevs/dracut/issues/2493
+# arm64, armhf, and ppc64el need upstream support: https://github.com/dracutdevs/dracut/issues/2493
 
 Tests: 10-basic,
        11-usr-mount,
@@ -20,7 +20,7 @@ Tests: 10-basic,
        42-systemd-initrd,
        80-getarg,
        81-skipcpio
-Architecture: amd64
+Architecture: amd64 s390x
 Restrictions: allow-stderr, needs-root
 Depends: btrfs-progs,
          busybox,
@@ -38,7 +38,7 @@ Depends: btrfs-progs,
          systemd-ukify
 
 Tests: 30-dmsquash
-Architecture: amd64
+Architecture: amd64 armhf ppc64el s390x
 Restrictions: allow-stderr, needs-root
 Depends: btrfs-progs,
          busybox,
@@ -51,7 +51,7 @@ Depends: btrfs-progs,
          util-linux-extra
 
 Tests: 60-nfs
-Architecture: amd64
+Architecture: amd64 s390x
 Restrictions: allow-stderr, needs-root
 Depends: curl,
          dracut-live,
@@ -63,7 +63,7 @@ Depends: curl,
          procps
 
 Tests: 70-iscsi, 71-iscsi-multi
-Architecture: amd64
+Architecture: amd64 s390x
 Restrictions: allow-stderr, needs-root
 Depends: dracut-network,
          dracut-test,
@@ -74,7 +74,7 @@ Depends: dracut-network,
          tgt
 
 Tests: 72-nbd
-Architecture: amd64
+Architecture: amd64 s390x
 Restrictions: allow-stderr, needs-root
 Depends: dracut-network,
          dracut-test,
@@ -83,3 +83,9 @@ Depends: dracut-network,
          nbd-client,
          nbd-server,
          procps
+
+# Dummy test so that linux-firmware updates trigger our other autopkgtests
+Features: test-name=hint-testsuite-triggers
+Test-Command: false
+Depends: linux-firmware
+Restrictions: hint-testsuite-triggers
