From 48e9497e50586b53d2906398d00cd1d66a9eed66 Mon Sep 17 00:00:00 2001 From: aliriza Date: Tue, 17 Jan 2023 11:25:25 +0000 Subject: [PATCH] initrd update --- sys/apps/openrc/openrc.sysconf | 11 ++++++++ sys/apps/openrc/ympbuild | 25 +++++++++++-------- .../initramfs-tools/initramfs-tools.sysconf | 11 ++++++++ sys/kernel/initramfs-tools/ympbuild | 9 +++++-- 4 files changed, 44 insertions(+), 12 deletions(-) create mode 100644 sys/apps/openrc/openrc.sysconf create mode 100644 sys/kernel/initramfs-tools/initramfs-tools.sysconf diff --git a/sys/apps/openrc/openrc.sysconf b/sys/apps/openrc/openrc.sysconf new file mode 100644 index 00000000..d2d4dd9a --- /dev/null +++ b/sys/apps/openrc/openrc.sysconf @@ -0,0 +1,11 @@ +#!/bin/sh +if [ ! -f /var/lib/ymp/sysconf/openrc/postinst.done ] ; then + echo "Creating openrc runlevels" + for level in boot default nonetwork shutdown sysinit ; do + mkdir -p /etc/runlevels/$level + done + ln -s agetty /etc/init.d/agetty.tty1 + rc-update add agetty.tty1 boot + touch /etc/fstab + touch /var/lib/ymp/sysconf/openrc/postinst.done +fi diff --git a/sys/apps/openrc/ympbuild b/sys/apps/openrc/ympbuild index 8854d92f..85694ac5 100644 --- a/sys/apps/openrc/ympbuild +++ b/sys/apps/openrc/ympbuild @@ -7,10 +7,12 @@ description='The OpenRC init system' email='aliriza.keskin@pardus.org.tr' maintainer='aliriza' license=('GPLv3') -source=("https://github.com/OpenRC/openrc/archive/refs/tags/$version.zip") +source=("https://github.com/OpenRC/openrc/archive/refs/tags/$version.zip" + "openrc.sysconf") depends=() makedepends=() -md5sums=('8b74d3db544b496f6bb33d2648db5d2f') +md5sums=('8b74d3db544b496f6bb33d2648db5d2f' + 'SKIP') group=() uses=() arch=('x86_64') @@ -31,15 +33,18 @@ build(){ package(){ ninja -C build install - # install default inittab - install support/sysvinit/inittab ${DESTDIR}/etc/inittab - # fix absolute symlink - for file in ${DESTDIR}/etc/runlevels/*/* ; do - link=$(readlink $file) - rm -f $file - ln -s ../../..$link $file - done + # disable all services + rm -f ${DESTDIR}/etc/runlevels/*/* rm ${DESTDIR}//etc/init.d/functions.sh ln -s ../../lib/rc/sh/functions.sh ${DESTDIR}/etc/init.d/functions.sh + # install sysconf script + mkdir -p ${DESTDIR}/etc/sysconf.d/ + install ../openrc.sysconf ${DESTDIR}/etc/sysconf.d/openrc + mkdir -p ${DESTDIR}/etc/group.d + mkdir -p ${DESTDIR}/etc/passwd.d + echo "uucp:x:14:" > ${DESTDIR}/etc/group.d/uucp + echo "uucp:x:10:14:uucp:/var/spool/uucp:/bin/false" > ${DESTDIR}/etc/passwd.d/uucp + # symlink init + ln -s openrc-init ${DESTDIR}/sbin/init } diff --git a/sys/kernel/initramfs-tools/initramfs-tools.sysconf b/sys/kernel/initramfs-tools/initramfs-tools.sysconf new file mode 100644 index 00000000..c757324d --- /dev/null +++ b/sys/kernel/initramfs-tools/initramfs-tools.sysconf @@ -0,0 +1,11 @@ +#!/bin/sh +mkdir -p /var/lib/ymp/sysconf/initramfs-tools/ +if [ ! -f /var/lib/ymp/sysconf/initramfs-tools/postinstall.done ] ; then + touch /etc/initramfs-tools/modules + mkdir -p /etc/initramfs-tools/scripts +fi +for kernel in $(ls /lib/modules) ; do + if [ ! -f /boot/initrd.img-$kernel ] ; then + update-initramfs -c -u -k $kernel + fi +done \ No newline at end of file diff --git a/sys/kernel/initramfs-tools/ympbuild b/sys/kernel/initramfs-tools/ympbuild index c8668407..329d2c5b 100644 --- a/sys/kernel/initramfs-tools/ympbuild +++ b/sys/kernel/initramfs-tools/ympbuild @@ -10,10 +10,12 @@ license=('GPLv3') source=("https://salsa.debian.org/kernel-team/initramfs-tools/-/archive/v$version/initramfs-tools-v$version.tar.gz" "remove-zstd.patch" "non-debian.patch" - "remove-logsave.patch") -depends=(eudev coreutils) + "remove-logsave.patch" + "initramfs-tools.sysconf") +depends=(eudev coreutils findutils) makedepends=() md5sums=('a3765010fe0fc6a71fe900a798b759ea' + 'SKIP' 'SKIP' 'SKIP' 'SKIP') @@ -42,5 +44,8 @@ package(){ sed -i "s/@BUSYBOX_MIN_VERSION@/1.22.0/g" ${DESTDIR}/usr/sbin/mkinitramfs # Remove debian stuff rm -rvf ${DESTDIR}/etc/kernel + # install sysconf + mkdir -p ${DESTDIR}/etc/sysconf.d + install ../initramfs-tools.sysconf ${DESTDIR}/etc/sysconf.d/initramfs-tools }