Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package suse-module-tools for 
openSUSE:Factory checked in at 2023-10-27 22:27:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/suse-module-tools (Old)
 and      /work/SRC/openSUSE:Factory/.suse-module-tools.new.17445 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "suse-module-tools"

Fri Oct 27 22:27:11 2023 rev:71 rq:1120370 version:16.0.37

Changes:
--------
--- /work/SRC/openSUSE:Factory/suse-module-tools/suse-module-tools.changes      
2023-10-17 20:25:01.863350723 +0200
+++ 
/work/SRC/openSUSE:Factory/.suse-module-tools.new.17445/suse-module-tools.changes
   2023-10-27 22:27:14.997438815 +0200
@@ -1,0 +2,6 @@
+Wed Oct 25 19:48:57 UTC 2023 - Martin Wilck <mwi...@suse.com>
+
+  * weak-modules2: ignore INITRD_MODULES (jsc#PED-1915), obtain
+    list of modules from dracut.conf.d instead
+
+-------------------------------------------------------------------

Old:
----
  suse-module-tools-16.0.36.obscpio

New:
----
  suse-module-tools-16.0.37.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ suse-module-tools.spec ++++++
--- /var/tmp/diff_new_pack.TT1HPQ/_old  2023-10-27 22:27:16.157481361 +0200
+++ /var/tmp/diff_new_pack.TT1HPQ/_new  2023-10-27 22:27:16.161481508 +0200
@@ -36,7 +36,7 @@
 %global modprobe_conf_rpmsave %(echo "%{modprobe_conf_files}" | sed 's,\\([^ 
]*\\),%{_sysconfdir}/modprobe.d/\\1.conf.rpmsave,g')
 
 Name:           suse-module-tools
-Version:        16.0.36
+Version:        16.0.37
 Release:        0
 Summary:        Configuration for module loading and SUSE-specific utilities 
for KMPs
 License:        GPL-2.0-or-later
@@ -112,7 +112,7 @@
 # "/usr/lib/module-init-tools" name hardcoded in other packages
 install -d -m 755 "%{buildroot}/usr/lib/module-init-tools"
 install -pm 755 -t "%{buildroot}/usr/lib/module-init-tools/" \
-       weak-modules2 driver-check.sh unblacklist lsinitrd-quick
+       weak-modules2 driver-check.sh unblacklist lsinitrd-quick 
get_dracut_drivers
 install -pm 755 "regenerate-initrd-posttrans" 
"%{buildroot}/usr/lib/module-init-tools/"
 install -d -m 755 "%{buildroot}/usr/lib/module-init-tools/kernel-scriptlets"
 install -pm 755 "kernel-scriptlets/cert-script" 
"%{buildroot}/usr/lib/module-init-tools/kernel-scriptlets"
@@ -226,6 +226,7 @@
 /usr/lib/module-init-tools/lsinitrd-quick
 /usr/lib/module-init-tools/unblacklist
 /usr/lib/module-init-tools/weak-modules2
+/usr/lib/module-init-tools/get_dracut_drivers
 %{_unitdir}/*.service
 %{_unitdir}/systemd-sysctl.service.d
 %{_modulesloaddir}

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.TT1HPQ/_old  2023-10-27 22:27:16.193482681 +0200
+++ /var/tmp/diff_new_pack.TT1HPQ/_new  2023-10-27 22:27:16.197482828 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/openSUSE/suse-module-tools.git</param>
-              <param 
name="changesrevision">46ad91a426a9b7152a885cc9f3431f069ccda712</param></service></servicedata>
+              <param 
name="changesrevision">9b3340f3d7bd08f5112811f78bbd00834e5758bf</param></service></servicedata>
 (No newline at EOF)
 

++++++ suse-module-tools-16.0.36.obscpio -> suse-module-tools-16.0.37.obscpio 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/suse-module-tools-16.0.36/get_dracut_drivers 
new/suse-module-tools-16.0.37/get_dracut_drivers
--- old/suse-module-tools-16.0.36/get_dracut_drivers    1970-01-01 
01:00:00.000000000 +0100
+++ new/suse-module-tools-16.0.37/get_dracut_drivers    2023-10-25 
21:47:22.000000000 +0200
@@ -0,0 +1,45 @@
+#! /bin/bash
+# This code reads a list of modules from stdin, and takes the
+# content of the dracut configuration files as argv[1].
+# It evaluates the dracut configuration to set the module-related
+# configuration variables add_drivers etc.
+# It appends the gathered module names to the input, and
+# filters the result using the regex from the omit_drivers variable.
+# The code is meant to be executed with decreased privileges,
+# in order to avoid sourcing arbitrary scripts as root.
+
+[[ "${WM2_VERBOSE:-0}" -le 2 ]] || set -x
+
+ME=${0##*/}
+add_drivers=""
+force_drivers=""
+omit_drivers=""
+drivers=""
+
+eval "$1" ||
+    echo "$0: error evaluating dracut configuration" >&2
+
+# sanitize omit_drivers; code similar to dracut.sh 059
+# filter out empty lines; also handle the case where omit_drivers is empty
+omit_drivers_corrected="^[[:space:]]*$"
+for d in $omit_drivers; do
+       [[ " $drivers $add_drivers " == *\ $d\ * ]] && continue
+       [[ " $drivers $force_drivers " == *\ $d\ * ]] && continue
+       omit_drivers_corrected+="|$d"
+done
+
+if [[ "${WM2_VERBOSE:-0}" -gt 0 ]]; then
+    echo "$ME: drivers='$drivers'" >&2
+    echo "$ME: add_drivers='$add_drivers'" >&2
+    echo "$ME: force_drivers='$force_drivers'" >&2
+    echo "$ME: omit_drivers='$omit_drivers'" >&2
+    echo "$ME: omit_drivers_corrected='$omit_drivers_corrected'" >&2
+fi
+
+# The sed command below converts space-separated lists to newline-separated
+{
+    cat
+    echo $drivers $add_drivers $force_drivers
+} |
+    sed -E 's/[[:space:]]+/\n/g;s/\n*$//' |
+    grep -Ev "$omit_drivers_corrected"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/suse-module-tools-16.0.36/suse-module-tools.spec 
new/suse-module-tools-16.0.37/suse-module-tools.spec
--- old/suse-module-tools-16.0.36/suse-module-tools.spec        2023-09-29 
17:47:04.000000000 +0200
+++ new/suse-module-tools-16.0.37/suse-module-tools.spec        2023-10-25 
21:47:22.000000000 +0200
@@ -36,7 +36,7 @@
 %global modprobe_conf_rpmsave %(echo "%{modprobe_conf_files}" | sed 's,\\([^ 
]*\\),%{_sysconfdir}/modprobe.d/\\1.conf.rpmsave,g')
 
 Name:           suse-module-tools
-Version:        16.0.36
+Version:        16.0.37
 Release:        0
 Summary:        Configuration for module loading and SUSE-specific utilities 
for KMPs
 License:        GPL-2.0-or-later
@@ -112,7 +112,7 @@
 # "/usr/lib/module-init-tools" name hardcoded in other packages
 install -d -m 755 "%{buildroot}/usr/lib/module-init-tools"
 install -pm 755 -t "%{buildroot}/usr/lib/module-init-tools/" \
-       weak-modules2 driver-check.sh unblacklist lsinitrd-quick
+       weak-modules2 driver-check.sh unblacklist lsinitrd-quick 
get_dracut_drivers
 install -pm 755 "regenerate-initrd-posttrans" 
"%{buildroot}/usr/lib/module-init-tools/"
 install -d -m 755 "%{buildroot}/usr/lib/module-init-tools/kernel-scriptlets"
 install -pm 755 "kernel-scriptlets/cert-script" 
"%{buildroot}/usr/lib/module-init-tools/kernel-scriptlets"
@@ -226,6 +226,7 @@
 /usr/lib/module-init-tools/lsinitrd-quick
 /usr/lib/module-init-tools/unblacklist
 /usr/lib/module-init-tools/weak-modules2
+/usr/lib/module-init-tools/get_dracut_drivers
 %{_unitdir}/*.service
 %{_unitdir}/systemd-sysctl.service.d
 %{_modulesloaddir}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/suse-module-tools-16.0.36/weak-modules2 
new/suse-module-tools-16.0.37/weak-modules2
--- old/suse-module-tools-16.0.36/weak-modules2 2023-09-29 17:47:04.000000000 
+0200
+++ new/suse-module-tools-16.0.37/weak-modules2 2023-10-25 21:47:22.000000000 
+0200
@@ -390,14 +390,70 @@
     return $res
 }
 
-get_initrd_basenames() {
-    $LSINITRD /boot/initrd-$1 | \
-       sed -rn 's:.*\<usr/lib/modules/.*/::p' | \
+# Create list of dracut configuration files to read, taking into
+# account priorities of the user and built-in configuration.
+# Copied from dracut.sh as of dracut 059 (GPL-2.0-or-later)
+dropindirs_sort() {
+    local suffix=$1
+    shift
+    local -a files
+    local f d
+
+    for d in "$@"; do
+        for i in "$d/"*"$suffix"; do
+            if [[ -e $i ]]; then
+                printf "%s\n" "${i##*/}"
+            fi
+        done
+    done | sort -Vu | {
+        readarray -t files
+
+        for f in "${files[@]}"; do
+            for d in "$@"; do
+                if [[ -e "$d/$f" ]]; then
+                    printf "%s\n" "$d/$f"
+                    continue 2
+                fi
+            done
+        done
+    }
+}
+
+get_current_basenames() {
+    $LSINITRD /boot/initrd-$1 |
+       sed -rn 's:.*\<usr/lib/modules/.*/::p' |
        strip_mod_extensions
+}
+
+DRACUT_CONFFILE=/etc/dracut.conf
+DRACUT_CONFDIR=/etc/dracut.conf.d
+DRACUT_BUILTIN_CONFDIR=/usr/lib/dracut/dracut.conf.d
+GET_DRACUT_DRIVERS=/usr/lib/module-init-tools/get_dracut_drivers
+
+get_initrd_basenames() {
+    local setpriv=$(command -v setpriv)
+    local conf= cf
+
+    [[ -x "$GET_DRACUT_DRIVERS" && "$setpriv" ]] || {
+       echo "$0: unable to parse dracut configuration, skipping it" >&2
+       get_current_basenames "$1"
+       return
+    }
+
+    [[ ! -f "$DRACUT_CONFFILE" ]] ||
+       conf="$(cat "$DRACUT_CONFFILE")"
+
+    # Assemble the content of the dracut configuration files.
+    # Make sure to put a newline between subsequent conf file contents.
+    for cf in $(dropindirs_sort .conf "$DRACUT_CONFDIR" 
"$DRACUT_BUILTIN_CONFDIR"); do
+       conf="$conf
+$(cat "$cf")"
+    done
 
-    INITRD_MODULES=
-    . /etc/sysconfig/kernel &>/dev/null
-    printf '%s\n' $INITRD_MODULES
+    # run get_dracut_drivers with reduced privileges
+    get_current_basenames "$1" |
+       "$setpriv" --reuid=nobody --regid=nobody --clear-groups --inh-caps=-all 
\
+                  "$GET_DRACUT_DRIVERS" "$conf"
 }
 
 # test if rebuilding initrd is needed for $krel.

++++++ suse-module-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.TT1HPQ/_old  2023-10-27 22:27:16.301486642 +0200
+++ /var/tmp/diff_new_pack.TT1HPQ/_new  2023-10-27 22:27:16.301486642 +0200
@@ -1,5 +1,5 @@
 name: suse-module-tools
-version: 16.0.36
-mtime: 1696002424
-commit: 46ad91a426a9b7152a885cc9f3431f069ccda712
+version: 16.0.37
+mtime: 1698263242
+commit: 9b3340f3d7bd08f5112811f78bbd00834e5758bf
 

Reply via email to