diff options
19 files changed, 35 insertions, 322 deletions
diff --git a/debian/dirs b/debian/dirs index fd55804..ef40692 100644 --- a/debian/dirs +++ b/debian/dirs @@ -1,6 +1,7 @@ -etc/mkiniramfs/init-bottom -etc/mkiniramfs/init-top -etc/mkiniramfs/local-premount -etc/mkiniramfs/local-top -etc/mkiniramfs/nfs-premount -etc/mkiniramfs/nfs-top +etc/mkinitramfs/init-bottom +etc/mkinitramfs/init-top +etc/mkinitramfs/local-premount +etc/mkinitramfs/local-top +etc/mkinitramfs/nfs-premount +etc/mkinitramfs/nfs-top +usr/share/initramfs-tools/modules.d diff --git a/debian/files b/debian/files index b9277fc..47aa909 100644 --- a/debian/files +++ b/debian/files @@ -1 +1 @@ -initramfs-tools_0.6_all.deb utils optional +initramfs-tools_0.7_all.deb utils optional diff --git a/debian/initramfs-tools/DEBIAN/conffiles b/debian/initramfs-tools/DEBIAN/conffiles deleted file mode 100644 index cd2afc0..0000000 --- a/debian/initramfs-tools/DEBIAN/conffiles +++ /dev/null @@ -1 +0,0 @@ -/etc/mkinitramfs/initramfs.conf diff --git a/debian/initramfs-tools/DEBIAN/control b/debian/initramfs-tools/DEBIAN/control deleted file mode 100644 index 9192ae1..0000000 --- a/debian/initramfs-tools/DEBIAN/control +++ /dev/null @@ -1,10 +0,0 @@ -Package: initramfs-tools -Version: 0.6 -Section: utils -Priority: optional -Architecture: all -Depends: klibc-utils -Installed-Size: 100 -Maintainer: Jeff Bailey <jbailey@ubuntu.com> -Description: tools for generting an Ubuntu-style initramfs - This package generates an initramfs for an Ubuntu system. diff --git a/debian/initramfs-tools/DEBIAN/md5sums b/debian/initramfs-tools/DEBIAN/md5sums deleted file mode 100644 index 420e544..0000000 --- a/debian/initramfs-tools/DEBIAN/md5sums +++ /dev/null @@ -1,9 +0,0 @@ -741626a7104d48b15ee4f7f0f8973deb usr/share/doc/initramfs-tools/TODO -ed79de81154495c4c23a93b32471cb19 usr/share/doc/initramfs-tools/copyright -12933b9f50570c11cf0f384eee619ee9 usr/share/doc/initramfs-tools/examples/modules -35c556b7165396ffbb9daf1e33f75e80 usr/share/doc/initramfs-tools/changelog.gz -614dec8a64e5f9798d4e0eb42219d96d usr/share/initramfs-tools/init -f18121fe1135572dbbea347371e8d730 usr/share/initramfs-tools/scripts/nfs -9d5014b1fbc092a32526ffa52549193c usr/share/initramfs-tools/scripts/local -6ebc6e800720aab93d022fe8ef5063d5 usr/share/initramfs-tools/scripts/functions -fd7c4a390d50d181203e0ca2007254e2 usr/sbin/mkinitramfs diff --git a/debian/initramfs-tools/DEBIAN/postinst b/debian/initramfs-tools/DEBIAN/postinst deleted file mode 100644 index 36f508d..0000000 --- a/debian/initramfs-tools/DEBIAN/postinst +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -set -e - -if [ ! -e /etc/mkinitramfs/modules ]; then - cp /usr/share/doc/initramfs-tools/examples/modules /etc/mkinitramfs/ -fi - - - diff --git a/debian/initramfs-tools/DEBIAN/postrm b/debian/initramfs-tools/DEBIAN/postrm deleted file mode 100644 index 84bff36..0000000 --- a/debian/initramfs-tools/DEBIAN/postrm +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -if [ "x${1}" = "xpurge" ]; then - rm /etc/mkinitramfs/modules -fi - - - diff --git a/debian/initramfs-tools/etc/mkinitramfs/initramfs.conf b/debian/initramfs-tools/etc/mkinitramfs/initramfs.conf deleted file mode 100644 index a056469..0000000 --- a/debian/initramfs-tools/etc/mkinitramfs/initramfs.conf +++ /dev/null @@ -1,50 +0,0 @@ -# -# initramfs.conf -# - -# BUSYBOX: [ y | n ] -# -# Use busybox if available. You MUST use the -static version -# - -BUSYBOX=n - -# -# BOOT: [ local | nfs ] -# -# local - Boot off of local media (harddrive, USB stick). -# -# nfs - Boot using an NFS drive as the root of the drive. -# - -BOOT=local - -# -# MODULES: [ most | dep | list ] -# -# most - Add all framebuffer, acpi, filesystem, and harddrive drivers. -# -# dep - Try and guess which modules to load. -# -# list - Only include modules from the 'additional modules' list -# -MODULES=list - -# -# NFS Section of the config. -# - -# -# DEVICE: ... -# -# Specify the network device, like eth0 -# - -DEVICE=eth0 - -# -# NFSROOT: [ auto | HOST:MOUNT ] -# - -NFSROOT=auto - diff --git a/debian/initramfs-tools/usr/sbin/mkinitramfs b/debian/initramfs-tools/usr/sbin/mkinitramfs deleted file mode 100644 index 593c69e..0000000 --- a/debian/initramfs-tools/usr/sbin/mkinitramfs +++ /dev/null @@ -1,93 +0,0 @@ -#!/bin/sh - -. /etc/mkinitramfs/initramfs.conf - -usage() -{ - echo "-o Output" - echo "-v version" - echo "-k Keep temp files" - exit 1 -} - -# Defaults -keep="n" - -while getopts "ko:v:" flag; do - case $flag in - o) - outfile="${OPTARG}" - ;; - v) - version="${OPTARG}" - ;; - k) - keep="y" - ;; - esac -done - -if [ x${outfile} = x ]; then - usage -fi - -if [ -d ${outfile} ]; then - echo "${outfile} is a directory" - exit 1 -fi - -if [ ! -e /lib/modules/${version} ]; then - echo "Cannot find /lib/modules/${version}" - exit 1 -fi - -TMPDIR=$(mktemp -d) || exit 1 -mkdir -p ${TMPDIR}/modules ${TMPDIR}/conf ${TMPDIR}/etc -mkdir -p ${TMPDIR}/bin ${TMPDIR}/lib ${TMPDIR}/scripts - -for x in $(sed -e '/^#/d' /etc/mkinitramfs/modules); do - for y in $(modprobe --set-version=${version} --show-depends ${x} | awk '{ print $2 }'); do - # Prune duplicates - if [ -e ${TMPDIR}/modules/$(basename ${y}) ]; then - continue - fi - - ln -s ${y} ${TMPDIR}/modules - echo $(basename ${y}) >>${TMPDIR}/conf/modules - done -done - -# Have to do each file, because cpio --dereference doesn't recurse down -# symlinks. - -ln -s /usr/lib/klibc/bin/* ${TMPDIR}/bin -ln -s /usr/lib/klibc/lib/* ${TMPDIR}/lib -ln -s /usr/share/initramfs-tools/init ${TMPDIR}/init -ln -s /usr/share/initramfs-tools/scripts/* ${TMPDIR}/scripts -ln -s /etc/mkinitramfs/initramfs.conf ${TMPDIR}/conf -ln -s /etc/udev ${TMPDIR}/etc - -# Hack until udev is built with klibc -ln -s /sbin/udev ${TMPDIR}/bin -ln -s /sbin/udevstart ${TMPDIR}/bin -ln -s /lib/libc.so.* ${TMPDIR}/lib -ln -s /lib/ld*.so.* ${TMPDIR}/lib -rm ${TMPDIR}/lib/*lsb* - -# Busybox -if [ "x${BUSYBOX}" = "xy" ]; then - rm ${TMPDIR}/bin/sh - ln -s /bin/busybox ${TMPDIR}/bin/sh -fi - -# Raid -ln -s /sbin/mdadm ${TMPDIR}/bin -ln -s /sbin/mdrun ${TMPDIR}/bin - -(cd ${TMPDIR} && find . | cpio --quiet --dereference -o -H newc | gzip -9 >${outfile}) - -if [ "${keep}" = "y" ]; then - echo "Working files in ${TMPDIR}" -else - rm -rf "${TMPDIR}" -fi diff --git a/debian/initramfs-tools/usr/share/doc/initramfs-tools/TODO b/debian/initramfs-tools/usr/share/doc/initramfs-tools/TODO deleted file mode 100644 index bf7e07d..0000000 --- a/debian/initramfs-tools/usr/share/doc/initramfs-tools/TODO +++ /dev/null @@ -1,8 +0,0 @@ -TODO -==== - - o Get udev compiled against klibc - - o Integrate hotplug-ng - - o Add option to make-kpkg to use mkinitramfs diff --git a/debian/initramfs-tools/usr/share/doc/initramfs-tools/changelog.gz b/debian/initramfs-tools/usr/share/doc/initramfs-tools/changelog.gz Binary files differdeleted file mode 100644 index c89e14f..0000000 --- a/debian/initramfs-tools/usr/share/doc/initramfs-tools/changelog.gz +++ /dev/null diff --git a/debian/initramfs-tools/usr/share/doc/initramfs-tools/copyright b/debian/initramfs-tools/usr/share/doc/initramfs-tools/copyright deleted file mode 100644 index cdc2919..0000000 --- a/debian/initramfs-tools/usr/share/doc/initramfs-tools/copyright +++ /dev/null @@ -1,10 +0,0 @@ -This package was debianized by Jeff Bailey <jbailey@raspberryginger.com> on -Thu, 27 Jan 2005 15:23:52 -0500. - -Copyright: - -Author: Jeff Bailey, with some pieces for initrd-tools - -License: - -PUBLIC DOMAIN diff --git a/debian/initramfs-tools/usr/share/doc/initramfs-tools/examples/modules b/debian/initramfs-tools/usr/share/doc/initramfs-tools/examples/modules deleted file mode 100644 index ee1310a..0000000 --- a/debian/initramfs-tools/usr/share/doc/initramfs-tools/examples/modules +++ /dev/null @@ -1,7 +0,0 @@ -# List of modules that you want to include in your initramfs. -# This might be good choices: -# -#ide-disk -#ide-generic -#ext2 -#ext3 diff --git a/debian/initramfs-tools/usr/share/initramfs-tools/init b/debian/initramfs-tools/usr/share/initramfs-tools/init deleted file mode 100644 index c3e4887..0000000 --- a/debian/initramfs-tools/usr/share/initramfs-tools/init +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh -x -mkdir /sys -mkdir /proc -mkdir /tmp -mount -t sysfs sysfs /sys -mount -t proc proc /proc - -. /conf/initramfs.conf -. /scripts/functions - -# Parse command line options -init=/sbin/init -root= -ro=-r -break= -rootmnt=/root -for x in $(cat /proc/cmdline); do - case $x in - init=*) - INIT=${x#init=} - ;; - root=*) - ROOT=${x#root=} - ;; - nfsroot=*) - NFSROOT=${x#nfsroot=} - ;; - boot=*) - BOOT=${x#boot=} - ;; - ro) - ro=-r - ;; - rw) - ro=-w - ;; - break) - break=yes - ;; - esac -done - -. /scripts/${BOOT} - -# Load the modules -# FIXME - do module options here -for x in $(cat /conf/modules); do - insmod /modules/$x -done - -# Populate /dev tree -udevstart - -if [ x${break} = xyes ]; then - panic "Spawning shell within the initramfs" -fi - -mountroot - -umount /sys -umount /proc - -# Chain to real filesystem -exec run-init ${rootmnt} ${init} "$@" diff --git a/debian/initramfs-tools/usr/share/initramfs-tools/scripts/functions b/debian/initramfs-tools/usr/share/initramfs-tools/scripts/functions deleted file mode 100644 index 19560ba..0000000 --- a/debian/initramfs-tools/usr/share/initramfs-tools/scripts/functions +++ /dev/null @@ -1,9 +0,0 @@ -panic() -{ - echo $@ - if [ -e /bin/busybox ]; then - FS1='(initramfs) ' exec /bin/busybox sh - else - FS1='(initramfs) ' exec /bin/sh - fi -} diff --git a/debian/initramfs-tools/usr/share/initramfs-tools/scripts/local b/debian/initramfs-tools/usr/share/initramfs-tools/scripts/local deleted file mode 100644 index 572f185..0000000 --- a/debian/initramfs-tools/usr/share/initramfs-tools/scripts/local +++ /dev/null @@ -1,15 +0,0 @@ -# Local filesystem mounting - -# Parameter: Where to mount the filesystem -mountroot () -{ - # Get the root filesystem type - if [ ! -e ${ROOT} ]; then - panic "ALERT! ${ROOT} does not exist. Dropping to a shell!" - fi - - eval $(fstype < ${ROOT}) - - # Mount root - mount ${ro} -t ${FSTYPE} ${ROOT} ${rootmnt} -} diff --git a/debian/initramfs-tools/usr/share/initramfs-tools/scripts/nfs b/debian/initramfs-tools/usr/share/initramfs-tools/scripts/nfs deleted file mode 100644 index 1225c4d..0000000 --- a/debian/initramfs-tools/usr/share/initramfs-tools/scripts/nfs +++ /dev/null @@ -1,11 +0,0 @@ - -# Paramter: Where the root should be mounted -mountroot () -{ - ipconfig ${DEVICE} - . /tmp/net-${DEVICE}.conf - if [ "x${NFSROOT}" = "xauto" ]; then - NFSROOT=${ROOTSERVER}:${ROOTPATH} - fi - nfsmount ${NFSROOT} ${rootmnt} -} diff --git a/mkinitramfs b/mkinitramfs index 7b6af66..2134a2d 100644 --- a/mkinitramfs +++ b/mkinitramfs @@ -1,5 +1,27 @@ #!/bin/sh +# Takes a file containing a list of modules to be added as an argument +# Figures out dependancies and adds it in. +manual_add_modules() +{ + # Sanity check + if [ ! -e ${1} ]; then + return + fi + + for x in $(sed -e '/^#/d' ${1}); do + for y in $(modprobe --set-version=${version} --show-depends ${x} | awk '{ print $2 }'); do + # Prune duplicates + if [ -e ${TMPDIR}/modules/$(basename ${y}) ]; then + continue + fi + + ln -s ${y} ${TMPDIR}/modules + echo $(basename ${y}) >>${TMPDIR}/conf/modules + done + done +} + usage() { cat >&2 << EOF @@ -51,6 +73,8 @@ if [ x${outfile} = x ] || [ ${#} -ne 1 ]; then usage fi +version=${1} + if [ -d ${outfile} ]; then echo "${outfile} is a directory" exit 1 @@ -65,16 +89,8 @@ TMPDIR=$(mktemp -d) || exit 1 mkdir -p ${TMPDIR}/modules ${TMPDIR}/conf ${TMPDIR}/etc mkdir -p ${TMPDIR}/bin ${TMPDIR}/lib ${TMPDIR}/scripts -for x in $(sed -e '/^#/d' ${CONFDIR}/modules); do - for y in $(modprobe --set-version=${version} --show-depends ${x} | awk '{ print $2 }'); do - # Prune duplicates - if [ -e ${TMPDIR}/modules/$(basename ${y}) ]; then - continue - fi - - ln -s ${y} ${TMPDIR}/modules - echo $(basename ${y}) >>${TMPDIR}/conf/modules - done +for x in ${CONFDIR}/modules /usr/share/initramfs-tools/modules.d/*; do + manual_add_modules ${x} done # Have to do each file, because cpio --dereference doesn't recurse down diff --git a/scripts/functions b/scripts/functions index 586c82f..4a92011 100644 --- a/scripts/functions +++ b/scripts/functions @@ -128,3 +128,4 @@ run_scripts() ${initdir}/${script} done } + |