- Update to mainline git version 033, b7d1b6f904a5b0bdd9a5ad19149f3.
- Remove all patches which went mainline - Fix missing root fs slash in lib/udev/rules.d resulting in: /var/tmp/initramfs.Lusf6flib/udev/rules.d - bcache: removed, it's in the upstream bcache-tools package mainline git commit: 49268028b90f6344f79e3510d2 - Fix bad she-bang in mkinitrd_setup_dummy OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=67
This commit is contained in:
parent
650ca2a2ce
commit
69cdb12cd1
@ -1,38 +0,0 @@
|
||||
dracut: Implement ACPI table overriding
|
||||
|
||||
An example config file for this feature could be:
|
||||
|
||||
/etc/dracut.conf.d/03-acpi-override.conf
|
||||
|
||||
with this content:
|
||||
acpi_override="yes"
|
||||
acpi_table_dir="/etc/dracut.conf.d/acpi_tables"
|
||||
|
||||
Then all files ending with *.aml will be put into the early cpio
|
||||
(kernel/firmware/acpi) and will be used to replace the BIOS provided tables
|
||||
if the kernel supports this feature.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
Index: dracut-033/dracut.sh
|
||||
===================================================================
|
||||
--- dracut-033.orig/dracut.sh
|
||||
+++ dracut-033/dracut.sh
|
||||
@@ -1322,6 +1322,17 @@ if [[ $early_microcode = yes ]]; then
|
||||
done
|
||||
fi
|
||||
|
||||
+if [[ $acpi_override = yes ]] && [[ -d $acpi_table_dir ]]; then
|
||||
+ dinfo "*** Packaging ACPI tables to override BIOS provided ones ***"
|
||||
+ _dest_dir="$early_cpio_dir/d/kernel/firmware/acpi"
|
||||
+ mkdir -p $_dest_dir
|
||||
+ for table in $acpi_table_dir/*.aml; do
|
||||
+ dinfo " Adding ACPI table: $table"
|
||||
+ cp $table $_dest_dir
|
||||
+ create_early_cpio="yes"
|
||||
+ done
|
||||
+fi
|
||||
+
|
||||
rm -f -- "$outfile"
|
||||
dinfo "*** Creating image file ***"
|
||||
if [[ $create_early_cpio = yes ]]; then
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ca2c1fa21efe9e11181b69fa915a1f6cb0b92ff92a9b4981052bd7ad07b83423
|
||||
size 237200
|
||||
oid sha256:8bd7c77c29bf7288465431f741f768dfd00a84f02129b0447cc0d6ef21d98e88
|
||||
size 218040
|
||||
|
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 7 08:58:00 UTC 2013 - trenn@suse.de
|
||||
|
||||
- Update to mainline git version 033, b7d1b6f904a5b0bdd9a5ad19149f3.
|
||||
- Remove all patches which went mainline
|
||||
- Fix missing root fs slash in lib/udev/rules.d resulting in:
|
||||
/var/tmp/initramfs.Lusf6flib/udev/rules.d
|
||||
- bcache: removed, it's in the upstream bcache-tools package
|
||||
mainline git commit: 49268028b90f6344f79e3510d2
|
||||
- Fix bad she-bang in mkinitrd_setup_dummy
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 4 17:23:19 UTC 2013 - tittiatcoke@gmail.com
|
||||
|
||||
|
33
dracut.spec
33
dracut.spec
@ -44,28 +44,10 @@ Patch1: use_initrd_insteadof_initramfs.patch
|
||||
Patch2: use_sysconfig_values_correctly.patch
|
||||
# PATCH-FIX-OPENSUSE At the moment we have 2 paths that contain udev files (/lib/udev and /usr/lib/udev) - tittiatcoke@gmail.com
|
||||
Patch3: use_all_paths_udev.patch
|
||||
# PATCH-FIX-UPSTREAM ACPI early table override support in early cpio - trenn@suse.de
|
||||
Patch4: generalize_early_cpio.patch
|
||||
# PATCH-FIX-UPSTREAM Do not create early_cpio if no suitable microcode exists - trenn@suse.de
|
||||
Patch5: microcode_cleanup.patch
|
||||
# PATCH-FIX-UPSTREAM Implement ACPI table overriding - trenn@suse.de
|
||||
Patch6: acpi_override.patch
|
||||
# PATCH-FIX-OPENSUSE SUSE mkinitrd compatibility: Introduce -i -k parameters - trenn@suse.de
|
||||
Patch7: mkinitrd_allow_no_option.patch
|
||||
# PATCH-FIX-OPENSUSE SUSE mkinitrd compatibility: allow multiple arguments per param - trenn@suse.de
|
||||
Patch8: mkinitrd_allow_multiple_args.patch
|
||||
# PATCH-FIX-UPSTREAM Limit an output to essential one implementing --quiet option - trenn@suse.de
|
||||
Patch9: quiet_options.patch
|
||||
# PATCH-FIX-OPENSUSE SUSE mkinitrd compatibility: Allow a call w/o passing any parameters - trenn@suse.de
|
||||
Patch10: implement_default.patch
|
||||
# PATCH-FIX-OPENSUSE SUSE mkinitrd compatibility: add -d to pass rootfs and dummy -s - trenn@suse.de
|
||||
Patch11: root_fs.patch
|
||||
# PATCH-FIX-OPENSUSE Build host only images for default_kernel_images and -i/-k ones - trenn@suse.de
|
||||
Patch12: suse_host_only.patch
|
||||
# PATCH-FIX-OPENSUSE Write caller and used parameters to syslog if mkinitrd is called - trenn@suse.de
|
||||
Patch13: suse_only_logger.patch
|
||||
Patch4: suse_only_logger.patch
|
||||
# PATCH-FIX-OPENSUSE Call the update-bootloader after dracut finished creating the initrd - tittiatcoke@gmail.com
|
||||
Patch14: mkinitrd_update_bootloader.diff
|
||||
Patch5: mkinitrd_update_bootloader.diff
|
||||
|
||||
BuildRequires: bash
|
||||
BuildRequires: dash
|
||||
@ -145,15 +127,6 @@ This package contains tools to assemble the local initrd and host configuration.
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
|
||||
%build
|
||||
%configure\
|
||||
@ -324,8 +297,6 @@ rm -rf %{buildroot}
|
||||
%dir %{dracutlibdir}/modules.d/03modsign
|
||||
%{dracutlibdir}/modules.d/03modsign/load-modsign-keys.sh
|
||||
%{dracutlibdir}/modules.d/03modsign/module-setup.sh
|
||||
%dir %{dracutlibdir}/modules.d/90bcache
|
||||
%{dracutlibdir}/modules.d/90bcache/module-setup.sh
|
||||
%dir %{dracutlibdir}/modules.d/00bash
|
||||
%{dracutlibdir}/modules.d/00bash/module-setup.sh
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/dracut
|
||||
|
@ -1,62 +0,0 @@
|
||||
dracut: Generlize microcode early cpio usage
|
||||
|
||||
ACPI early table override also may need to place files into an early cpio.
|
||||
Reflect this in variable and file names.
|
||||
This change is renaming only and does not introduce any real change.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
Index: dracut-033/dracut.sh
|
||||
===================================================================
|
||||
--- dracut-033.orig/dracut.sh
|
||||
+++ dracut-033/dracut.sh
|
||||
@@ -696,9 +696,9 @@ readonly initdir="$(mktemp --tmpdir="$TM
|
||||
}
|
||||
|
||||
if [[ $early_microcode = yes ]]; then
|
||||
- readonly microcode_dir="$(mktemp --tmpdir="$TMPDIR/" -d -t early_microcode.XXXXXX)"
|
||||
- [ -d "$microcode_dir" ] || {
|
||||
- printf "%s\n" "dracut: mktemp --tmpdir=\"$TMPDIR/\" -d -t early_microcode.XXXXXX failed." >&2
|
||||
+ readonly early_cpio_dir="$(mktemp --tmpdir="$TMPDIR/" -d -t early_cpio.XXXXXX)"
|
||||
+ [ -d "$early_cpio_dir" ] || {
|
||||
+ printf "%s\n" "dracut: mktemp --tmpdir=\"$TMPDIR/\" -d -t early_cpio.XXXXXX failed." >&2
|
||||
exit 1
|
||||
}
|
||||
fi
|
||||
@@ -707,7 +707,7 @@ trap '
|
||||
ret=$?;
|
||||
[[ $outfile ]] && [[ -f $outfile.$$ ]] && rm -f -- "$outfile.$$";
|
||||
[[ $keep ]] && echo "Not removing $initdir." >&2 || { [[ $initdir ]] && rm -rf -- "$initdir"; };
|
||||
- [[ $keep ]] && echo "Not removing $microcode_dir." >&2 || { [[ $microcode_dir ]] && rm -Rf -- "$microcode_dir"; };
|
||||
+ [[ $keep ]] && echo "Not removing $early_cpio_dir." >&2 || { [[ $early_cpio_dir ]] && rm -Rf -- "$early_cpio_dir"; };
|
||||
[[ $_dlogdir ]] && rm -Rf -- "$_dlogdir";
|
||||
exit $ret;
|
||||
' EXIT
|
||||
@@ -1296,7 +1296,7 @@ if [[ $early_microcode = yes ]]; then
|
||||
dinfo "*** Generating early-microcode cpio image ***"
|
||||
ucode_dir=(amd-ucode intel-ucode)
|
||||
ucode_dest=(AuthenticAMD.bin GenuineIntel.bin)
|
||||
- _dest_dir="$microcode_dir/d/kernel/x86/microcode"
|
||||
+ _dest_dir="$early_cpio_dir/d/kernel/x86/microcode"
|
||||
_dest_idx="0 1"
|
||||
mkdir -p $_dest_dir
|
||||
if [[ $hostonly ]]; then
|
||||
@@ -1316,14 +1316,15 @@ if [[ $early_microcode = yes ]]; then
|
||||
fi
|
||||
done
|
||||
done
|
||||
- (cd "$microcode_dir/d"; find . -print0 | cpio --null -o -H newc --quiet >../ucode.cpio)
|
||||
+ create_early_cpio="yes"
|
||||
fi
|
||||
|
||||
rm -f -- "$outfile"
|
||||
dinfo "*** Creating image file ***"
|
||||
-if [[ $early_microcode = yes ]]; then
|
||||
+if [[ $create_early_cpio = yes ]]; then
|
||||
# The microcode blob is _before_ the initramfs blob, not after
|
||||
- mv $microcode_dir/ucode.cpio $outfile.$$
|
||||
+ (cd "$early_cpio_dir/d"; find . -print0 | cpio --null -o -H newc --quiet >../early.cpio)
|
||||
+ mv $early_cpio_dir/early.cpio $outfile.$$
|
||||
fi
|
||||
if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet| \
|
||||
$compress >> "$outfile.$$"; ); then
|
@ -1,91 +0,0 @@
|
||||
mkinitrd-dracut.sh: Allow mkinitrd call without passing any parameters
|
||||
|
||||
Before this gave a "usage" error.
|
||||
Now boot_dir (by default /boot) is scanned for available kernels and sane
|
||||
initrd default targets get defined and the corresponding initramfs files
|
||||
are generated.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
Index: dracut-033/mkinitrd-dracut.sh
|
||||
===================================================================
|
||||
--- dracut-033.orig/mkinitrd-dracut.sh
|
||||
+++ dracut-033/mkinitrd-dracut.sh
|
||||
@@ -46,6 +46,67 @@ read_arg() {
|
||||
fi
|
||||
}
|
||||
|
||||
+# Taken over from SUSE mkinitrd
|
||||
+default_kernel_images() {
|
||||
+ local regex kernel_image kernel_version version_version initrd_image
|
||||
+ local qf='%{NAME}-%{VERSION}-%{RELEASE}\n'
|
||||
+
|
||||
+ case "$(uname -m)" in
|
||||
+ s390|s390x)
|
||||
+ regex='image'
|
||||
+ ;;
|
||||
+ ppc|ppc64)
|
||||
+ regex='vmlinux'
|
||||
+ ;;
|
||||
+ i386|x86_64)
|
||||
+ regex='vmlinuz'
|
||||
+ ;;
|
||||
+ arm*)
|
||||
+ regex='[uz]Image'
|
||||
+ ;;
|
||||
+ aarch64)
|
||||
+ regex='Image'
|
||||
+ ;;
|
||||
+ *) regex='vmlinu.'
|
||||
+ ;;
|
||||
+ esac
|
||||
+
|
||||
+ # user mode linux
|
||||
+ if grep -q UML /proc/cpuinfo; then
|
||||
+ regex='linux'
|
||||
+ fi
|
||||
+
|
||||
+ kernel_images=""
|
||||
+ initrd_images=""
|
||||
+ for kernel_image in $(ls $boot_dir \
|
||||
+ | sed -ne "\|^$regex\(-[0-9.]\+-[0-9]\+-[a-z0-9]\+$\)\?|p" \
|
||||
+ | grep -v kdump$ ) ; do
|
||||
+
|
||||
+ # Note that we cannot check the RPM database here -- this
|
||||
+ # script is itself called from within the binary kernel
|
||||
+ # packages, and rpm does not allow recursive calls.
|
||||
+
|
||||
+ [ -L "$boot_dir/$kernel_image" ] && continue
|
||||
+ [ "${kernel_image%%.gz}" != "$kernel_image" ] && continue
|
||||
+ kernel_version=$(/usr/bin/get_kernel_version \
|
||||
+ $boot_dir/$kernel_image 2> /dev/null)
|
||||
+ initrd_image=$(echo $kernel_image | sed -e "s|${regex}|initrd|")
|
||||
+ if [ "$kernel_image" != "$initrd_image" -a \
|
||||
+ -n "$kernel_version" -a \
|
||||
+ -d "/lib/modules/$kernel_version" ]; then
|
||||
+ kernel_images="$kernel_images $boot_dir/$kernel_image"
|
||||
+ initrd_images="$initrd_images $boot_dir/$initrd_image"
|
||||
+ fi
|
||||
+ done
|
||||
+ for kernel_image in $kernel_images;do
|
||||
+ kernels="$kernels ${kernel_image#*-}"
|
||||
+ done
|
||||
+ for initrd_image in $initrd_images;do
|
||||
+ targets="$targets $initrd_image"
|
||||
+ done
|
||||
+
|
||||
+}
|
||||
+
|
||||
while (($# > 0)); do
|
||||
case ${1%%=*} in
|
||||
--with-usb) read_arg usbmodule "$@" || shift $?
|
||||
@@ -124,7 +185,8 @@ while (($# > 0)); do
|
||||
shift
|
||||
done
|
||||
|
||||
-[[ $targets && $kernels ]] || usage
|
||||
+[[ $targets && $kernels ]] || default_kernel_images
|
||||
+[[ $targets && $kernels ]] || (error "No kernel found in $boot_dir" && usage)
|
||||
|
||||
# We can have several targets/kernels, transform the list to an array
|
||||
targets=( $targets )
|
@ -1,30 +0,0 @@
|
||||
dracut: Do not create early_cpio if no suitable microcode exist in hostonly
|
||||
case
|
||||
|
||||
Intel microcodes only exist for very specific family/model/stepping CPUs.
|
||||
If no microcode gets added, there is no need to create an empty
|
||||
(only directories) cpio later that gets glued to the initrd.
|
||||
|
||||
This also fixes:
|
||||
|
||||
Index: dracut-033/dracut.sh
|
||||
===================================================================
|
||||
--- dracut-033.orig/dracut.sh
|
||||
+++ dracut-033/dracut.sh
|
||||
@@ -1311,12 +1311,15 @@ if [[ $early_microcode = yes ]]; then
|
||||
dinfo "*** Constructing ${ucode_dest[$idx]} ****"
|
||||
if [[ $hostonly ]]; then
|
||||
_src=$(get_ucode_file)
|
||||
+ if ! [[ -r $_fwdir/$_fw/$_src ]];then
|
||||
+ break;
|
||||
+ fi
|
||||
fi
|
||||
cat $_fwdir/$_fw/$_src > $_dest_dir/${ucode_dest[$idx]}
|
||||
+ create_early_cpio="yes"
|
||||
fi
|
||||
done
|
||||
done
|
||||
- create_early_cpio="yes"
|
||||
fi
|
||||
|
||||
rm -f -- "$outfile"
|
@ -1,88 +0,0 @@
|
||||
mkinitrd-dracut.sh: Introduce -i -k parameters
|
||||
|
||||
In SUSE, one can pass a list of kernel files via -k parameter.
|
||||
For each an initrd is generated as passed via -i parameters.
|
||||
|
||||
Make the dracut mkinitrd wrapper compatible to those.
|
||||
For now only one kernel file and initrd target can be specified.
|
||||
This will get enhanced with a follow-up patch.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
diff --git a/mkinitrd-dracut.sh b/mkinitrd-dracut.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
index ffea2d1..ace7725
|
||||
--- a/mkinitrd-dracut.sh
|
||||
+++ b/mkinitrd-dracut.sh
|
||||
@@ -1,6 +1,8 @@
|
||||
#!/bin/bash --norc
|
||||
kver=$(uname -r)
|
||||
|
||||
+boot_dir="/boot"
|
||||
+
|
||||
error() { echo "$@" >&2; }
|
||||
|
||||
usage () {
|
||||
@@ -80,10 +82,27 @@ while (($# > 0)); do
|
||||
--looppath*) ;;
|
||||
--dsdt*) ;;
|
||||
--bootchart) ;;
|
||||
- *) if [[ ! $target ]]; then
|
||||
- target=$1
|
||||
- elif [[ ! $kernel ]]; then
|
||||
- kernel=$1
|
||||
+ -b) read_arg boot_dir "$@" || shift
|
||||
+ if [ ! -d $boot_dir ];then
|
||||
+ error "Boot directory $boot_dir does not exist"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ ;;
|
||||
+ -k) # Would be nice to get a list of images here
|
||||
+ read_arg kernel_images "$@" || shift
|
||||
+ for kernel_image in $kernel_images;do
|
||||
+ kernels="$kernels ${kernel_image#*-}"
|
||||
+ done
|
||||
+ ;;
|
||||
+ -i) read_arg initrd_images "$@" || shift
|
||||
+ for initrd_image in $initrd_images;do
|
||||
+ targets="$targets $boot_dir/$initrd_images"
|
||||
+ done
|
||||
+ ;;
|
||||
+ *) if [[ ! $targets ]]; then
|
||||
+ targets=$1
|
||||
+ elif [[ ! $kernels ]]; then
|
||||
+ kernels=$1
|
||||
else
|
||||
usage
|
||||
fi;;
|
||||
@@ -91,11 +110,24 @@ while (($# > 0)); do
|
||||
shift
|
||||
done
|
||||
|
||||
-[[ $target && $kernel ]] || usage
|
||||
-[[ $img_vers ]] && target="$target-$kernel"
|
||||
+[[ $targets && $kernels ]] || usage
|
||||
+
|
||||
+# We can have several targets/kernels, transform the list to an array
|
||||
+targets=( $targets )
|
||||
+[[ $kernels ]] && kernels=( $kernels )
|
||||
|
||||
-if [[ $basicmodules ]]; then
|
||||
+for ((i=0 ; $i<${#targets[@]} ; i++)); do
|
||||
+
|
||||
+ if [[ $img_vers ]];then
|
||||
+ target="${targets[$i]}-${kernels[$i]}"
|
||||
+ else
|
||||
+ target="${targets[$i]}"
|
||||
+ fi
|
||||
+ kernel="${kernels[$i]}"
|
||||
+
|
||||
+ if [[ $basicmodules ]]; then
|
||||
dracut $dracut_args --add-drivers "$basicmodules" "$target" "$kernel"
|
||||
-else
|
||||
+ else
|
||||
dracut $dracut_args "$target" "$kernel"
|
||||
-fi
|
||||
+ fi
|
||||
+done
|
@ -1,3 +1,3 @@
|
||||
#/bin/bash
|
||||
#!/bin/bash
|
||||
|
||||
true
|
||||
|
@ -1,61 +0,0 @@
|
||||
mkinitrd-dracut.sh: Implement --quiet|-q option
|
||||
|
||||
Dracut is rather verbose. This optional parameter is to limit the output
|
||||
to the essential: For each generated initrd show the kernel, target and
|
||||
possibly additional options passed to dracut.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
diff --git a/mkinitrd-dracut.sh b/mkinitrd-dracut.sh
|
||||
index d8e92f3..803abc0 100755
|
||||
--- a/mkinitrd-dracut.sh
|
||||
+++ b/mkinitrd-dracut.sh
|
||||
@@ -2,6 +2,7 @@
|
||||
kver=$(uname -r)
|
||||
|
||||
boot_dir="/boot"
|
||||
+quiet=0
|
||||
|
||||
error() { echo "$@" >&2; }
|
||||
|
||||
@@ -89,6 +90,7 @@ while (($# > 0)); do
|
||||
--looppath*) ;;
|
||||
--dsdt*) ;;
|
||||
--bootchart) ;;
|
||||
+ --quiet|-q) quiet=1;;
|
||||
-b) read_arg boot_dir "$@" || shift $?
|
||||
if [ ! -d $boot_dir ];then
|
||||
error "Boot directory $boot_dir does not exist"
|
||||
@@ -128,6 +130,7 @@ done
|
||||
targets=( $targets )
|
||||
[[ $kernels ]] && kernels=( $kernels )
|
||||
|
||||
+echo "Creating: target|kernel|dracut args|basicmodules "
|
||||
for ((i=0 ; $i<${#targets[@]} ; i++)); do
|
||||
|
||||
if [[ $img_vers ]];then
|
||||
@@ -137,9 +140,21 @@ for ((i=0 ; $i<${#targets[@]} ; i++)); do
|
||||
fi
|
||||
kernel="${kernels[$i]}"
|
||||
|
||||
- if [[ $basicmodules ]]; then
|
||||
- dracut $dracut_args --add-drivers "$basicmodules" "$target" "$kernel"
|
||||
+ # Duplicate code: No way found how to redirect output based on $quiet
|
||||
+ if [[ $quiet == 1 ]];then
|
||||
+ echo "$target|$kernel|$dracut_args|$basicmodules"
|
||||
+ if [[ $basicmodules ]]; then
|
||||
+ dracut $dracut_args --add-drivers "$basicmodules" "$target" \
|
||||
+ "$kernel" &>/dev/null
|
||||
+ else
|
||||
+ dracut $dracut_args "$target" "$kernel" &>/dev/null
|
||||
+ fi
|
||||
else
|
||||
- dracut $dracut_args "$target" "$kernel"
|
||||
+ if [[ $basicmodules ]]; then
|
||||
+ dracut $dracut_args --add-drivers "$basicmodules" "$target" \
|
||||
+ "$kernel"
|
||||
+ else
|
||||
+ dracut $dracut_args "$target" "$kernel"
|
||||
+ fi
|
||||
fi
|
||||
done
|
@ -1,31 +0,0 @@
|
||||
mkinitrd-dracut.sh: Also allow -d to specify the root_fs and -s dummy
|
||||
|
||||
-d is the SUSE mkinitrd version option to pass the rootfs.
|
||||
-s is to enable splash which may not be needed, but some callers rely on it,
|
||||
not to return an error.
|
||||
|
||||
Make this wrapper compatible to it.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
Index: dracut-033/mkinitrd-dracut.sh
|
||||
===================================================================
|
||||
--- dracut-033.orig/mkinitrd-dracut.sh
|
||||
+++ dracut-033/mkinitrd-dracut.sh
|
||||
@@ -124,7 +124,7 @@ while (($# > 0)); do
|
||||
--preload) read_arg modname "$@" || shift $?
|
||||
basicmodules="$basicmodules $modname";;
|
||||
--image-version) img_vers=yes;;
|
||||
- --rootfs) read_arg rootfs "$@" || shift $?
|
||||
+ --rootfs|-d) read_arg rootfs "$@" || shift $?
|
||||
dracut_args="${dracut_args} --filesystems $rootfs";;
|
||||
--nocompress) dracut_args="$dracut_args --no-compress";;
|
||||
--help) usage -n;;
|
||||
@@ -151,6 +151,7 @@ while (($# > 0)); do
|
||||
--looppath*) ;;
|
||||
--dsdt*) ;;
|
||||
--bootchart) ;;
|
||||
+ -s) ;;
|
||||
--quiet|-q) quiet=1;;
|
||||
-b) read_arg boot_dir "$@" || shift $?
|
||||
if [ ! -d $boot_dir ];then
|
@ -1,64 +0,0 @@
|
||||
mkinitrd-dracut.sh: Build host images for default_kernel_images and -i/-k paths
|
||||
|
||||
default_kernel_images and -i/-k paths are new (SuSE) code paths and
|
||||
would have resulted in usage errors before.
|
||||
|
||||
There we want to build host only images for faster building and
|
||||
smaller images.
|
||||
Also force creation (overriding) of initrd images in these code paths.
|
||||
|
||||
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||||
|
||||
diff --git a/mkinitrd-dracut.sh b/mkinitrd-dracut.sh
|
||||
index f7b53f1..a1519ea 100755
|
||||
--- a/mkinitrd-dracut.sh
|
||||
+++ b/mkinitrd-dracut.sh
|
||||
@@ -3,6 +3,8 @@ kver=$(uname -r)
|
||||
|
||||
boot_dir="/boot"
|
||||
quiet=0
|
||||
+host_only=0
|
||||
+force=0
|
||||
|
||||
error() { echo "$@" >&2; }
|
||||
|
||||
@@ -104,7 +106,8 @@ default_kernel_images() {
|
||||
for initrd_image in $initrd_images;do
|
||||
targets="$targets $initrd_image"
|
||||
done
|
||||
-
|
||||
+ host_only=1
|
||||
+ force=1
|
||||
}
|
||||
|
||||
while (($# > 0)); do
|
||||
@@ -119,8 +122,8 @@ while (($# > 0)); do
|
||||
--version)
|
||||
echo "mkinitrd: dracut compatibility wrapper"
|
||||
exit 0;;
|
||||
- -v|--verbose) dracut_args="${dracut_args} -v";;
|
||||
- -f|--force) dracut_args="${dracut_args} -f";;
|
||||
+ -v|--verbose) dracut_args="${dracut_args} -v --keep";;
|
||||
+ -f|--force) force=1;;
|
||||
--preload) read_arg modname "$@" || shift $?
|
||||
basicmodules="$basicmodules $modname";;
|
||||
--image-version) img_vers=yes;;
|
||||
@@ -164,6 +167,8 @@ while (($# > 0)); do
|
||||
for kernel_image in $kernel_images;do
|
||||
kernels="$kernels ${kernel_image#*-}"
|
||||
done
|
||||
+ host_only=1
|
||||
+ force=1
|
||||
;;
|
||||
-i) read_arg initrd_images "$@" || shift $?
|
||||
for initrd_image in $initrd_images;do
|
||||
@@ -193,6 +198,9 @@ done
|
||||
targets=( $targets )
|
||||
[[ $kernels ]] && kernels=( $kernels )
|
||||
|
||||
+[[ $host_only == 1 ]] && dracut_args="${dracut_args} -H"
|
||||
+[[ $force == 1 ]] && dracut_args="${dracut_args} -f"
|
||||
+
|
||||
echo "Creating: target|kernel|dracut args|basicmodules "
|
||||
for ((i=0 ; $i<${#targets[@]} ; i++)); do
|
||||
|
@ -1,3 +1,5 @@
|
||||
Index: dracut-033/dracut-functions.sh
|
||||
===================================================================
|
||||
--- dracut-033.orig/dracut-functions.sh
|
||||
+++ dracut-033/dracut-functions.sh
|
||||
@@ -872,7 +872,7 @@ inst_rules() {
|
||||
@ -5,7 +7,7 @@
|
||||
for _rule in "$@"; do
|
||||
if [ "${_rule#/}" = "$_rule" ]; then
|
||||
- for r in ${udevdir}/rules.d ${hostonly:+/etc/udev/rules.d}; do
|
||||
+ for r in ${udevdir}/rules.d lib/udev/rules.d ${hostonly:+/etc/udev/rules.d}; do
|
||||
+ for r in ${udevdir}/rules.d /lib/udev/rules.d ${hostonly:+/etc/udev/rules.d}; do
|
||||
if [[ -e $r/$_rule ]]; then
|
||||
_found="$r/$_rule"
|
||||
inst_rule_programs "$_found"
|
||||
|
Loading…
x
Reference in New Issue
Block a user