Control: tags 1063142 + pending

Dear maintainer,

I've sponsore an NMU, prepared by Victor Westerhuis, for tiny-initramfs
(versioned as 0.1-5.1) and uploaded it to DELAYED/5. Please feel free to
tell me if I should delay it longer.

Regards.

diff -Nru tiny-initramfs-0.1/debian/changelog tiny-initramfs-0.1/debian/changelog
--- tiny-initramfs-0.1/debian/changelog	2017-09-12 17:49:40.000000000 +0200
+++ tiny-initramfs-0.1/debian/changelog	2024-02-11 11:48:39.000000000 +0100
@@ -1,3 +1,10 @@
+tiny-initramfs (0.1-5.1) unstable; urgency=high
+
+  * Non-maintainer upload.
+  * Decompress kernel modules included in initramfs. (Closes: #1063142)
+
+ -- Victor Westerhuis <vic...@westerhu.is>  Sun, 11 Feb 2024 11:48:39 +0100
+
 tiny-initramfs (0.1-5) unstable; urgency=medium
 
   [ Free Ekanayaka ]
diff -Nru tiny-initramfs-0.1/debian/control tiny-initramfs-0.1/debian/control
--- tiny-initramfs-0.1/debian/control	2017-09-12 17:49:40.000000000 +0200
+++ tiny-initramfs-0.1/debian/control	2024-02-05 11:33:39.000000000 +0100
@@ -24,7 +24,7 @@
 Package: tiny-initramfs-core
 Architecture: linux-any
 Multi-Arch: foreign
-Depends: cpio, ${shlibs:Depends}, ${misc:Depends}
+Depends: cpio, xz-utils, ${shlibs:Depends}, ${misc:Depends}
 Built-Using: ${Built-Using}
 Description: Minimalistic initramfs implementation (core tools)
  A very minimalistic initramfs implementation for booting Linux
diff -Nru tiny-initramfs-0.1/debian/extra/functions tiny-initramfs-0.1/debian/extra/functions
--- tiny-initramfs-0.1/debian/extra/functions	2017-09-12 17:49:40.000000000 +0200
+++ tiny-initramfs-0.1/debian/extra/functions	2024-02-05 11:33:39.000000000 +0100
@@ -208,9 +208,18 @@
   fi
   /sbin/modprobe --all --ignore-install --set-version="${VERSION}" --quiet --show-depends "$@" | \
     awk '$1 == "insmod" { print; }' | while read dummy_type mod_file mod_options ; do
-    mod_name=${mod_file##*/}
+    mod_name=$(basename "$mod_file" | sed -E 's/(.*\.ko)(\..*)?/\1/')
+    mod_compression=$(basename "$mod_file" | sed -E 's/(.*\.ko)(\..*)?/\2/')
     if ! grep -q ^/"${mod_name}" "${initramfs_dir}/modules" ; then
-      cp "${mod_file}" "${initramfs_dir}/${mod_name}"
+      if [ "$mod_compression" = .xz ] ; then
+        xzcat "${mod_file}" > "${initramfs_dir}/${mod_name}"
+      elif [ -z "$mod_compression" ] ; then
+        cp "${mod_file}" "${initramfs_dir}/${mod_name}"
+      else
+        echo "$0: WARNING: unable to determine compression for modules while adding modules" >&2
+        echo "YOUR SYSTEM MIGHT NOT BOOT WITH THIS INITRAMFS." >&2
+        cp "${mod_file}" "${initramfs_dir}/${mod_name}"
+      fi
       printf "%s\n" "/${mod_name}${mod_options:+ $mod_options}" >> "${initramfs_dir}/modules"
     fi
   done

Attachment: signature.asc
Description: PGP signature

Reply via email to