eudev initramfs-tools scripts from devuan
This commit is contained in:
1 parent
bcd1eb52bc
commit
537babea17
4 files changed
+141
-1
No files matched your search
Executable
+67
@@ -0,0 +1,67 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
PREREQS=""
|
||||
|
||||
prereqs() { echo "$PREREQS"; }
|
||||
|
||||
case "$1" in
|
||||
prereqs)
|
||||
prereqs
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
root_over_the_network() {
|
||||
if egrep -qs '^/dev/(nbd|nd[a-z]|etherd/e)[^[:space:]]+[[:space:]]+/[[:space:]]' /etc/fstab; then
|
||||
return 0
|
||||
elif egrep -qs '^[^[:space:]#]+[[:space:]]+/[[:space:]]+nfs[234]?[[:space:]]' /etc/fstab; then
|
||||
return 0
|
||||
fi
|
||||
return 1 # false
|
||||
}
|
||||
|
||||
. /usr/share/initramfs-tools/hook-functions
|
||||
|
||||
copy_exec /sbin/udevd /sbin
|
||||
copy_exec /bin/udevadm /bin
|
||||
|
||||
# copy compat symlink
|
||||
cp -a /sbin/udevadm $DESTDIR/sbin/udevadm
|
||||
|
||||
mkdir -p $DESTDIR/etc/udev
|
||||
cp -p /etc/udev/udev.conf $DESTDIR/etc/udev/
|
||||
|
||||
mkdir -p $DESTDIR/lib/udev/rules.d/
|
||||
for rules in 50-udev-default.rules 60-persistent-storage.rules \
|
||||
80-drivers.rules \
|
||||
64-md-raid.rules 60-persistent-storage-lvm.rules \
|
||||
55-dm.rules 60-persistent-storage-dm.rules; do
|
||||
if [ -e /etc/udev/rules.d/$rules ]; then
|
||||
cp -p /etc/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/
|
||||
elif [ -e /lib/udev/rules.d/$rules ]; then
|
||||
cp -p /lib/udev/rules.d/$rules $DESTDIR/lib/udev/rules.d/
|
||||
fi
|
||||
done
|
||||
|
||||
# try to autodetect the value of this configuration option
|
||||
if [ -z "$NEED_PERSISTENT_NET" ] && root_over_the_network; then
|
||||
NEED_PERSISTENT_NET='yes'
|
||||
fi
|
||||
|
||||
# Copy the rules for persistent network interface names for the benefit of
|
||||
# systems which need to boot over the network. If this is enabled then the
|
||||
# initramfs must be rebuilt every time a new network interface is added.
|
||||
# See #414287 for details.
|
||||
case "$NEED_PERSISTENT_NET" in
|
||||
YES|yes|Yes|Y|y)
|
||||
if [ -e /etc/udev/rules.d/70-persistent-net.rules ]; then
|
||||
cp -p /etc/udev/rules.d/70-persistent-net.rules $DESTDIR/lib/udev/rules.d/
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
cp /lib/udev/hotplug.functions $DESTDIR/lib/udev/
|
||||
for program in ata_id scsi_id; do
|
||||
copy_exec /lib/udev/$program /lib/udev
|
||||
done
|
||||
copy_exec /sbin/blkid /sbin
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
PREREQS=""
|
||||
|
||||
prereqs() { echo "$PREREQS"; }
|
||||
|
||||
case "$1" in
|
||||
prereqs)
|
||||
prereqs
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
# Stop udevd, we'll miss a few events while we run init, but we catch up
|
||||
udevadm control --exit
|
||||
|
||||
# move the /dev tmpfs to the rootfs
|
||||
mount -n -o move /dev ${rootmnt}/dev
|
||||
|
||||
# create a temporary symlink to the final /dev for other initramfs scripts
|
||||
nuke /dev
|
||||
ln -s ${rootmnt}/dev /dev
|
||||
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
PREREQS=""
|
||||
|
||||
prereqs() { echo "$PREREQS"; }
|
||||
|
||||
case "$1" in
|
||||
prereqs)
|
||||
prereqs
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -w /sys/kernel/uevent_helper ]; then
|
||||
echo > /sys/kernel/uevent_helper
|
||||
fi
|
||||
|
||||
udevd --daemon --resolve-names=never
|
||||
|
||||
udevadm trigger --action=add
|
||||
udevadm settle || true
|
||||
|
||||
if [ -d /sys/bus/scsi ]; then
|
||||
modprobe -q scsi_wait_scan && modprobe -r scsi_wait_scan || true
|
||||
udevadm settle || true
|
||||
fi
|
||||
|
||||
# If the rootdelay parameter has been set, we wait a bit for devices
|
||||
# like usb/firewire disks to settle.
|
||||
if [ "$ROOTDELAY" ]; then
|
||||
sleep $ROOTDELAY
|
||||
fi
|
||||
|
||||
# Leave udev running to process events that come in out-of-band (like USB
|
||||
# connections)
|
||||
+16
-1
@@ -10,10 +10,16 @@ license=('GPLv3')
|
||||
source=("https://github.com/eudev-project/eudev/releases/download/v$version/eudev-$version.tar.gz"
|
||||
"eudev.openrc"
|
||||
"eudev.groups"
|
||||
"eudev.sysconf")
|
||||
"eudev.sysconf"
|
||||
"eudev.init-top"
|
||||
"eudev.init-bottom"
|
||||
"eudev.hook")
|
||||
depends=(kmod)
|
||||
makedepends=()
|
||||
md5sums=('417ba948335736d4d81874fba47a30f7'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP')
|
||||
@@ -55,5 +61,14 @@ package(){
|
||||
# sysconf
|
||||
install -Dm755 ../eudev.sysconf \
|
||||
${DESTDIR}/etc/sysconf.d/eudev
|
||||
# initramfs-tools stuff
|
||||
mkdir -p ${DESTDIR}/usr/share/initramfs-tools/{hooks,scripts}
|
||||
mkdir -p ${DESTDIR}/usr/share/initramfs-tools/scripts/init-{top,bottom}
|
||||
install ../eudev.hook \
|
||||
${DESTDIR}/usr/share/initramfs-tools/hooks/udev
|
||||
install ../eudev.init-top \
|
||||
${DESTDIR}/usr/share/initramfs-tools/scripts/init-top/udev
|
||||
install ../eudev.init-bottom \
|
||||
${DESTDIR}/usr/share/initramfs-tools/scripts/init-bottom/udev
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user