diff -Naur dracut-014_20120205/dracut.conf.d/magellan.conf.example dracut-014_20120205-magellan/dracut.conf.d/magellan.conf.example --- dracut-014_20120205/dracut.conf.d/magellan.conf.example 1970-01-01 01:00:00.000000000 +0100 +++ dracut-014_20120205-magellan/dracut.conf.d/magellan.conf.example 2012-02-05 03:34:59.259982932 +0100 @@ -0,0 +1,12 @@ +# /etc/dracut.conf.d/01-magellan.conf +# Dracut config file customized for Magellan-Linux + +# +# Modules +# + +# i18n +i18n_vars="/etc/conf.d/keymap:KEYMAP /etc/conf.d/consolefont:CONSOLEFONT" +add_dracutmodules+=" shutdown" +stdloglvl=3 +prefix=/run/initramfs diff -Naur dracut-014_20120205/dracut-gencmdline dracut-014_20120205-magellan/dracut-gencmdline --- dracut-014_20120205/dracut-gencmdline 2012-02-02 19:18:48.000000000 +0100 +++ dracut-014_20120205-magellan/dracut-gencmdline 2012-02-05 03:34:59.259982932 +0100 @@ -103,7 +103,7 @@ LD_SO_CONF=/etc/ld.so.conf LD_SO_CONF_D=/etc/ld.so.conf.d/ -[ -e /etc/sysconfig/mkinitrd ] && . /etc/sysconfig/mkinitrd +[ -e /etc/conf.d/mkinitrd ] && . /etc/conf.d/mkinitrd CONFMODS="$MODULES" MODULES="" @@ -599,6 +599,9 @@ shift done +# HACK: always pass a kernel version +[ -z "$kernel" ] && kernel=$(uname -r) + [ -z "$rootfs" ] && rootfs=$(awk '{ if ($1 !~ /^[ \t]*#/ && $2 == "/") { print $3; }}' $fstab) [ -z "$rootopts" ] && rootopts=$(awk '{ if ($1 !~ /^[ \t]*#/ && $2 == "/") { print $4; }}' $fstab) [ -z "$rootopts" ] && rootopts="defaults" @@ -697,8 +700,10 @@ fi # output local keyboard/18n settings -[ -e /etc/sysconfig/keyboard ] && . /etc/sysconfig/keyboard -[ -e /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n +[ -e /etc/conf.d/keymap ] && . /etc/conf.d/keymap +[ -e /etc/conf.d/consolefont ] && . /etc/conf.d/consolefont +[ -n "$KEYMAP" ] && KEYTABLE="$KEYMAP" +[ -n "$CONSOLEFONT" ] && SYSFONT="$CONSOLEFONT" for i in KEYTABLE SYSFONT SYSFONTACM UNIMAP LANG; do val=$(eval echo \$$i) diff -Naur dracut-014_20120205/Makefile dracut-014_20120205-magellan/Makefile --- dracut-014_20120205/Makefile 2012-02-02 19:18:48.000000000 +0100 +++ dracut-014_20120205-magellan/Makefile 2012-02-05 03:34:59.260982932 +0100 @@ -38,6 +38,9 @@ install -m 0755 lsinitrd $(DESTDIR)$(bindir)/lsinitrd install -m 0644 dracut.conf $(DESTDIR)$(sysconfdir)/dracut.conf mkdir -p $(DESTDIR)$(sysconfdir)/dracut.conf.d + install -m 0644 dracut.conf.d/magellan.conf.example $(DESTDIR)$(sysconfdir)/dracut.conf.d/01-magellan.conf + mkdir -p $(DESTDIR)$(sysconfdir)/logrotate.d + install -m 0644 dracut.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/dracut install -m 0755 dracut-functions $(DESTDIR)$(pkglibdir)/dracut-functions install -m 0755 dracut-logger $(DESTDIR)$(pkglibdir)/dracut-logger cp -arx modules.d $(DESTDIR)$(pkglibdir) diff -Naur dracut-014_20120205/modules.d/00loop/loop.sh dracut-014_20120205-magellan/modules.d/00loop/loop.sh --- dracut-014_20120205/modules.d/00loop/loop.sh 1970-01-01 01:00:00.000000000 +0100 +++ dracut-014_20120205-magellan/modules.d/00loop/loop.sh 2012-02-05 03:34:59.260982932 +0100 @@ -0,0 +1,5 @@ +#!/bin/sh + +modprobe loop +modprobe cryptoloop + diff -Naur dracut-014_20120205/modules.d/00loop/module-setup.sh dracut-014_20120205-magellan/modules.d/00loop/module-setup.sh --- dracut-014_20120205/modules.d/00loop/module-setup.sh 1970-01-01 01:00:00.000000000 +0100 +++ dracut-014_20120205-magellan/modules.d/00loop/module-setup.sh 2012-02-05 03:34:59.260982932 +0100 @@ -0,0 +1,18 @@ +#!/bin/bash + +check() { + [ -f /etc/mageversion ] +} + +depends() { + return 0 +} + +installkernel() { + hostonly='' instmods loop cryptoloop +} + +install() { + inst_hook pre-udev 10 "$moddir"/loop.sh +} + diff -Naur dracut-014_20120205/modules.d/40uvesafb/module-setup.sh dracut-014_20120205-magellan/modules.d/40uvesafb/module-setup.sh --- dracut-014_20120205/modules.d/40uvesafb/module-setup.sh 1970-01-01 01:00:00.000000000 +0100 +++ dracut-014_20120205-magellan/modules.d/40uvesafb/module-setup.sh 2012-02-05 03:36:50.298982933 +0100 @@ -0,0 +1,18 @@ +#!/bin/bash + +check() { + [ -x /sbin/v86d ] +} + +depends() { + return 0 +} + +installkernel() { + hostonly='' instmods uvesafb +} + +install() { + dracut_install /sbin/v86d + inst_hook pre-trigger 9 "$moddir"/uvesafb-pretrigger.sh +} diff -Naur dracut-014_20120205/modules.d/40uvesafb/uvesafb-pretrigger.sh dracut-014_20120205-magellan/modules.d/40uvesafb/uvesafb-pretrigger.sh --- dracut-014_20120205/modules.d/40uvesafb/uvesafb-pretrigger.sh 1970-01-01 01:00:00.000000000 +0100 +++ dracut-014_20120205-magellan/modules.d/40uvesafb/uvesafb-pretrigger.sh 2012-02-05 03:36:02.371982932 +0100 @@ -0,0 +1,5 @@ +#!/bin/sh + +if getargbool 1 rd.uvesafb -n rd_NO_UVESAFB; then + [ ! -c /dev/fb0 -a -e /sbin/v86d ] && modprobe uvesafb +fi diff -Naur dracut-014_20120205/modules.d/95udev-rules/module-setup.sh dracut-014_20120205-magellan/modules.d/95udev-rules/module-setup.sh --- dracut-014_20120205/modules.d/95udev-rules/module-setup.sh 2012-02-02 19:18:48.000000000 +0100 +++ dracut-014_20120205-magellan/modules.d/95udev-rules/module-setup.sh 2012-02-05 03:34:59.260982932 +0100 @@ -74,6 +74,13 @@ [ -f /etc/arch-release ] && \ inst "$moddir/load-modules.sh" /lib/udev/load-modules.sh + # magellan uses a special modprobe script too + if [ -f /etc/mageversion ] + then + [ -e /lib/udev/modprobe.sh ] && dracut_install /lib/udev/modprobe.sh + [ -f /etc/udev/blacklist ] && dracut_install /etc/udev/blacklist + fi + for _i in {"$libdir","$usrlibdir"}/libnss_files*; do [ -e "$_i" ] && dracut_install "$_i" done