From 46ca440e9d6cc606d9c3233021e32d24b25172cf Mon Sep 17 00:00:00 2001 From: emmett1 Date: Fri, 24 May 2024 12:22:12 +0800 Subject: added repos --- repos/core/initscripts/.files | 9 ++++ repos/core/initscripts/build | 5 ++ repos/core/initscripts/info | 4 ++ repos/core/initscripts/inittab | 3 ++ repos/core/initscripts/rc.boot | 87 ++++++++++++++++++++++++++++++++ repos/core/initscripts/rc.boot.local | 2 + repos/core/initscripts/rc.modules | 2 + repos/core/initscripts/rc.shutdown | 27 ++++++++++ repos/core/initscripts/rc.shutdown.local | 2 + 9 files changed, 141 insertions(+) create mode 100644 repos/core/initscripts/.files create mode 100644 repos/core/initscripts/build create mode 100644 repos/core/initscripts/info create mode 100644 repos/core/initscripts/inittab create mode 100644 repos/core/initscripts/rc.boot create mode 100644 repos/core/initscripts/rc.boot.local create mode 100644 repos/core/initscripts/rc.modules create mode 100644 repos/core/initscripts/rc.shutdown create mode 100644 repos/core/initscripts/rc.shutdown.local (limited to 'repos/core/initscripts') diff --git a/repos/core/initscripts/.files b/repos/core/initscripts/.files new file mode 100644 index 00000000..88d6648e --- /dev/null +++ b/repos/core/initscripts/.files @@ -0,0 +1,9 @@ +drwxr-xr-x root/root etc/ +-rw-r--r-- root/root etc/inittab.new +-rwxr-xr-x root/root etc/rc.boot.local.new +-rwxr-xr-x root/root etc/rc.boot.new +-rwxr-xr-x root/root etc/rc.modules.new +-rwxr-xr-x root/root etc/rc.shutdown.local.new +-rwxr-xr-x root/root etc/rc.shutdown.new +drwxr-xr-x root/root var/ +drwxr-xr-x root/root var/service/ diff --git a/repos/core/initscripts/build b/repos/core/initscripts/build new file mode 100644 index 00000000..808d6130 --- /dev/null +++ b/repos/core/initscripts/build @@ -0,0 +1,5 @@ +mkdir -p $PKG/etc $PKG/var/service +for i in boot boot.local shutdown shutdown.local modules; do + install -m755 $SRC/rc.$i $PKG/etc/rc.$i +done +install -m644 $SRC/inittab $PKG/etc/inittab diff --git a/repos/core/initscripts/info b/repos/core/initscripts/info new file mode 100644 index 00000000..50bf40f8 --- /dev/null +++ b/repos/core/initscripts/info @@ -0,0 +1,4 @@ +name=initscripts +version=1 +release=1 +source="rc.boot rc.shutdown rc.boot.local rc.shutdown.local rc.modules inittab" diff --git a/repos/core/initscripts/inittab b/repos/core/initscripts/inittab new file mode 100644 index 00000000..5509bb64 --- /dev/null +++ b/repos/core/initscripts/inittab @@ -0,0 +1,3 @@ +::sysinit:/etc/rc.boot +::respawn:/usr/bin/runsvdir /var/service +::shutdown:/etc/rc.shutdown diff --git a/repos/core/initscripts/rc.boot b/repos/core/initscripts/rc.boot new file mode 100644 index 00000000..0156f293 --- /dev/null +++ b/repos/core/initscripts/rc.boot @@ -0,0 +1,87 @@ +#!/bin/sh + +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +echo "Alice booting" + +mountpoint -q /proc || mount -t proc proc /proc -o nosuid,noexec,nodev +mountpoint -q /sys || mount -t sysfs sys /sys -o nosuid,noexec,nodev +mountpoint -q /run || mount -t tmpfs run /run -o mode=0755,nosuid,nodev +mountpoint -q /dev || mount -t devtmpfs dev /dev -o mode=0755,nosuid +mkdir -p /run/lock /dev/pts /dev/shm /run/runit +mountpoint -q /dev/pts || mount /dev/pts >/dev/null 2>&1 || mount -t devpts devpts /dev/pts -o mode=0620,gid=5,nosuid,noexec +mountpoint -q /dev/shm || mount /dev/shm >/dev/null 2>&1 || mount -t tmpfs shm /dev/shm -o mode=1777,nosuid,nodev + +if [ "$(command -v udevd)" ]; then + udevd --daemon + udevadm trigger --action=add --type=subsystems + udevadm trigger --action=add --type=devices + udevadm trigger --action=change --type=devices + udevadm settle +else + echo "/sbin/mdev" > /proc/sys/kernel/hotplug + for i in $(find /sys/devices -name 'usb[0-9]*'); do + [ -e $i/uevent ] && echo add > $i/uevent + done + mdev -s + find /sys -name 'modalias' -type f -exec cat '{}' + | sort -u | xargs modprobe -b -a 2>/dev/null + find /sys -name 'modalias' -type f -exec cat '{}' + | sort -u | xargs modprobe -b -a 2>/dev/null + ln -s /proc/self/fd /dev/fd + ln -s fd/0 /dev/stdin + ln -s fd/1 /dev/stdout + ln -s fd/2 /dev/stderr +fi + +swapon -a +ip link set lo up +mount -o remount,ro / + +for arg in $(cat /proc/cmdline); do + case $arg in + fastboot) FASTBOOT=1;; + forcefsck) FORCEFSCK="-f";; + esac +done + +if [ ! "$FASTBOOT" ]; then + fsck $FORCEFSCK -ATat noopts=_netdev + if [ "$?" -gt 1 ]; then + echo "*******************************************" + echo "** Filesystem check failed **" + echo "** You been dropped to maintenance shell **" + echo "*******************************************" + sulogin -p + fi +fi + +mount -o remount,rw / +mount -a + +if [ ! -f /etc/hostname ]; then + echo linux > /etc/hostname +fi +hostname -F /etc/hostname + +find /var/run -name "*.pid" -delete +find /tmp -xdev -mindepth 1 ! -name lost+found -delete + +if [ -f "/etc/sysctl.conf" ]; then + sysctl -q -p +fi + +hwclock -s + +if [ -f "/var/lib/random-seed" ]; then + cat /var/lib/random-seed >/dev/urandom + rm -f /var/lib/random-seed +fi + +if [ -d /sys/firmware/efi/efivars ]; then + mount -t efivarfs none /sys/firmware/efi/efivars +fi + +dmesg >/var/log/dmesg.log + +for i in /etc/rc.modules /etc/rc.boot.local ; do + [ -x "$i" ] && "$i" +done diff --git a/repos/core/initscripts/rc.boot.local b/repos/core/initscripts/rc.boot.local new file mode 100644 index 00000000..13f47935 --- /dev/null +++ b/repos/core/initscripts/rc.boot.local @@ -0,0 +1,2 @@ +#!/bin/sh + diff --git a/repos/core/initscripts/rc.modules b/repos/core/initscripts/rc.modules new file mode 100644 index 00000000..13f47935 --- /dev/null +++ b/repos/core/initscripts/rc.modules @@ -0,0 +1,2 @@ +#!/bin/sh + diff --git a/repos/core/initscripts/rc.shutdown b/repos/core/initscripts/rc.shutdown new file mode 100644 index 00000000..d17af0d5 --- /dev/null +++ b/repos/core/initscripts/rc.shutdown @@ -0,0 +1,27 @@ +#!/bin/sh + +echo "shutting down" + +if [ -x /etc/rc.shutdown.local ]; then + /etc/rc.shutdown.local +fi + +if [ "$(command -v udevadm)" ]; then + udevadm control --exit +fi + +sv down /var/service/* +dd if=/dev/urandom of=/var/lib/random-seed count=1 bs=512 2>/dev/null +hwclock -w +kill -s TERM -1 +sleep 2 +kill -s KILL -1 +swapoff -a +ip link set lo down +umount -a -r -t noproc +mount -o remount,ro / +sync +sleep 1 +wait + +echo bye diff --git a/repos/core/initscripts/rc.shutdown.local b/repos/core/initscripts/rc.shutdown.local new file mode 100644 index 00000000..13f47935 --- /dev/null +++ b/repos/core/initscripts/rc.shutdown.local @@ -0,0 +1,2 @@ +#!/bin/sh + -- cgit v1.2.3