From 982d59afea5eac202c8a47f09d06d240af753a24 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Tue, 22 May 2012 14:52:36 +0200 Subject: [PATCH] drop 10rpmversion module and introduce /etc/initrd-release --- dracut.conf.d/fedora.conf.example | 1 - dracut.spec | 3 +-- modules.d/10rpmversion/module-setup.sh | 30 -------------------------- modules.d/10rpmversion/version.sh | 9 -------- modules.d/99base/init.sh | 4 ++++ modules.d/99base/module-setup.sh | 27 ++++++++++++++++++++++- 6 files changed, 31 insertions(+), 43 deletions(-) delete mode 100755 modules.d/10rpmversion/module-setup.sh delete mode 100755 modules.d/10rpmversion/version.sh diff --git a/dracut.conf.d/fedora.conf.example b/dracut.conf.d/fedora.conf.example index 617d96731..e362e7337 100644 --- a/dracut.conf.d/fedora.conf.example +++ b/dracut.conf.d/fedora.conf.example @@ -2,7 +2,6 @@ # i18n i18n_vars="/etc/sysconfig/keyboard:KEYTABLE-KEYMAP /etc/sysconfig/i18n:SYSFONT-FONT,FONTACM-FONT_MAP,FONT_UNIMAP" -add_dracutmodules+=" rpmversion " omit_dracutmodules+=" dash " omit_drivers+=" .*/fs/ocfs/.* " stdloglvl=3 diff --git a/dracut.spec b/dracut.spec index 144b6e25a..eb5df2cff 100644 --- a/dracut.spec +++ b/dracut.spec @@ -178,7 +178,7 @@ make install DESTDIR=$RPM_BUILD_ROOT \ %endif sysconfdir=/etc mandir=%{_mandir} -echo %{name}-%{version}-%{release} > $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/10rpmversion/dracut-version +echo "DRACUT_VERSION=%{version}-%{release}" > $RPM_BUILD_ROOT/%{dracutlibdir}/dracut-version.sh %if 0%{?fedora} == 0 && 0%{?rhel} == 0 rm -fr $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/01fips @@ -256,7 +256,6 @@ rm -rf $RPM_BUILD_ROOT %{dracutlibdir}/modules.d/00dash %{dracutlibdir}/modules.d/05busybox %{dracutlibdir}/modules.d/10i18n -%{dracutlibdir}/modules.d/10rpmversion %{dracutlibdir}/modules.d/30convertfs %{dracutlibdir}/modules.d/45url-lib %{dracutlibdir}/modules.d/50plymouth diff --git a/modules.d/10rpmversion/module-setup.sh b/modules.d/10rpmversion/module-setup.sh deleted file mode 100755 index 4c021ad51..000000000 --- a/modules.d/10rpmversion/module-setup.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- -# ex: ts=8 sw=4 sts=4 et filetype=sh - -check() { - [[ "$mount_needs" ]] && return 1 - [ -f /etc/redhat-release ] -} - -depends() { - return 0 -} - -install() { - local _line - local _dracut_rpm_version - if [ -e "$moddir/dracut-version" ]; then - _dracut_rpm_version=$(cat "$moddir/dracut-version") - inst "$moddir/dracut-version" /lib/dracut/$_dracut_rpm_version - else - if rpm -qf $(type -P $0) &>/dev/null; then - _dracut_rpm_version=$(rpm -qf --qf '%{name}-%{version}-%{release}\n' $(type -P $0) | { ver="";while read _line;do ver=$_line;done;echo $ver;} ) - mkdir -m 0755 -p $initdir/lib/dracut - echo $_dracut_rpm_version > $initdir/lib/dracut/$_dracut_rpm_version - fi - fi - inst_hook cmdline 01 "$moddir/version.sh" - -} - diff --git a/modules.d/10rpmversion/version.sh b/modules.d/10rpmversion/version.sh deleted file mode 100755 index e961ccde6..000000000 --- a/modules.d/10rpmversion/version.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- -# ex: ts=8 sw=4 sts=4 et filetype=sh -for i in lib/dracut/dracut-*; do - if [ -f $i ]; then - vinfo < $i - fi -done -unset i diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh index 5807b1265..b8736ecb6 100755 --- a/modules.d/99base/init.sh +++ b/modules.d/99base/init.sh @@ -19,6 +19,7 @@ export PATH RD_DEBUG="" . /lib/dracut-lib.sh + trap "emergency_shell Signal caught!" 0 [ -c /dev/null ] || mknod -m 0666 /dev/null c 1 3 @@ -88,6 +89,9 @@ else exec 0<>/dev/console 1<>/dev/console 2<>/dev/console fi +[ -f /etc/initrd-release ] && . /etc/initrd-release +[ -n "$VERSION" ] && vinfo "dracut-$VERSION" + source_conf /etc/conf.d # run scriptlets to parse the command line diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh index 8bf3d4d16..96c18ab54 100755 --- a/modules.d/99base/module-setup.sh +++ b/modules.d/99base/module-setup.sh @@ -49,5 +49,30 @@ install() { fi ln -s /proc/self/mounts "$initdir/etc/mtab" -} + if [ -e /etc/os-release ]; then + . /etc/os-release + VERSION+=" " + PRETTY_NAME+=" " + else + VERSION="" + PRETTY_NAME="" + fi + NAME=Dracut + ID=dracut + VERSION+="dracut-$DRACUT_VERSION" + PRETTY_NAME+="dracut-$DRACUT_VERSION (Initramfs)" + VERSION_ID=$DRACUT_VERSION + ANSI_COLOR="0;34" + + { + echo NAME=\"$NAME\" + echo VERSION=\"$VERSION\" + echo ID=$ID + echo VERSION_ID=$VERSION_ID + echo PRETTY_NAME=\"$PRETTY_NAME\" + echo ANSI_COLOR=\"$ANSI_COLOR\" + } > $initdir/etc/initrd-release + echo dracut-$DRACUT_VERSION > $initdir/lib/dracut/dracut-$DRACUT_VERSION + ln -s initrd-release $initdir/etc/os-release +} -- 2.47.3