13 Commits

Author SHA1 Message Date
Eric Vidal
22f0fca0fd build default database 2016-06-10 09:10:33 +04:00
Eric Vidal
069c32c3c1 allow forcecheck if asked 2016-06-10 09:10:03 +04:00
Eric Vidal
36cf18ab0f add iptables features and fscheck options 2016-06-10 09:09:16 +04:00
Eric Vidal
be97f38a80 add iptables oneshot at boot time 2016-06-10 09:08:44 +04:00
Eric Vidal
1b297934a6 dmesg must be the last oneshot started before switching to bundle all-User 2016-06-10 09:08:04 +04:00
Eric Vidal
230d30ff1a clean /tmp directory at shutdown 2016-06-10 09:06:29 +04:00
Eric Vidal
8a2027df08 classify the compilation database source directory 2016-06-07 17:50:44 +04:00
Eric Vidal
d2a83294e0 fix obscur bug about ip link 2016-06-06 17:19:58 +04:00
Eric Vidal
a221f2dd22 grrr 2016-06-04 21:20:02 +04:00
Eric Vidal
905d8f07b2 add shutdown script 2016-06-04 16:15:43 +04:00
Eric Vidal
244c0a4203 change path for stage2, stage3 2016-06-04 09:36:00 +04:00
Eric Vidal
fa04d943a6 rebuild database 2016-06-03 22:10:36 +04:00
Eric Vidal
1758a4fe48 fix dependencies for rofs-hardclock 2016-06-03 22:10:02 +04:00
57 changed files with 222 additions and 68 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,5 +1,6 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- udevd-udev started }
exec -c exec -c
udevd udevd

View File

@@ -1,4 +1,5 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
#fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- udevd-udevadm started }
s6-devd s6-devd
/usr/bin/udevadm settle /usr/bin/udevadm settle

1
compiled/previous Symbolic link
View File

@@ -0,0 +1 @@
/etc/s6/compiled/default

2
init
View File

@@ -79,7 +79,7 @@ background {
s6-setsid -- s6-setsid --
redirfd -w 1 /run/s6-run/service/s6-svscan-log/fifo redirfd -w 1 /run/s6-run/service/s6-svscan-log/fifo
fdmove -c 2 1 fdmove -c 2 1
/etc/stage2 /etc/s6/stage2
} }
unexport ! unexport !

View File

@@ -1,5 +1,6 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- 00 started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
# mount proc sys dev run if doesn't exist # mount proc sys dev run if doesn't exist
#import -i HOSTNAME #import -i HOSTNAME
@@ -30,17 +31,20 @@ if {
} }
# finaly mount /dev/shm /dev/pts # finaly mount /dev/shm /dev/pts
forx -p third { shm pts }
import -ui third
if { if {
foreground { forx -p third { shm pts }
if -n { mountpoint -q /dev/$third } import -ui third
if { s6-mkdir -p -m 0755 /dev/$third } if {
s6-envdir /etc/s6/env/mount/$third foreground {
import -ui fstype if -n { mountpoint -q /dev/$third }
import -ui device if { s6-mkdir -p -m 0755 /dev/$third }
import -ui mountpoint s6-envdir /etc/s6/env/mount/$third
import -ui options import -ui fstype
s6-mount -o $options -n -t $fstype $device $mountpoint import -ui device
} import -ui mountpoint
import -ui options
s6-mount -o $options -n -t $fstype $device $mountpoint
}
}
} }
s6-echo -- 00 successfully started

View File

@@ -7,6 +7,5 @@ rofs-Udevd
rofs-Checkfs rofs-Checkfs
rofs-modules rofs-modules
rofs-swap rofs-swap
rofs-loopback
rofs-kernruntime rofs-kernruntime

View File

@@ -1,6 +1,9 @@
rwfs-fsrw rwfs-fsrw
rwfs-loopback
rwfs-iptables
rwfs-nonetwork rwfs-nonetwork
rwfs-localtime rwfs-localtime
rwfs-random rwfs-random
rwfs-cleanboot rwfs-cleanboot
rwfs-end
rwfs-dmesglog rwfs-dmesglog

View File

@@ -1,6 +1,7 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- checkfs-brtfs started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" USEBTRFS import -D "" USEBTRFS
foreground { foreground {
@@ -8,4 +9,4 @@ foreground {
if { s6-test -x /usr/bin/btrfs } if { s6-test -x /usr/bin/btrfs }
btrfs device scan btrfs device scan
} }
true s6-echo -- checkfs-brtfs successfully started

View File

@@ -1,6 +1,7 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- checkfs-dmraid started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" USEDMRAID import -D "" USEDMRAID
foreground { foreground {
@@ -8,4 +9,4 @@ foreground {
if { s6-test -x /usr/bin/dmraid } if { s6-test -x /usr/bin/dmraid }
dmraid -i -ay dmraid -i -ay
} }
true s6-echo -- checkfs-dmraid successfully started

View File

@@ -1,8 +1,21 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- checkfs-fsckeck started }
s6-envdir /etc/s6/env/s6-conf
import -D "" FORCECHCK
if -t {
if { s6-test $FORCECHCK = yes }
redirfd -w 1 /dev/console
if { s6-echo -- Check of filesystem was asked, please wait }
if { fsck -A -T -a -f noopts=_netdev }
if { s6-echo -- Filesystem checked }
redirfd -w 1 /run/s6/service/s6-svscan-log/fifo
s6-true
}
# if partition is checked, fsck return a fail exit # if partition is checked, fsck return a fail exit
# and a crash occurs, so whatever happens with fsck, the output need to be a success # and a crash occurs, so whatever happens with fsck, the output need to be a success
if -t { if -t {
fsck -A -T -a fsck -A -T -a noopts=_netdev
} }
s6-true wait { }
s6-echo -- checkfs-fscheck successfully started

View File

@@ -1,6 +1,7 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rofs-cgroups started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" CGROUPS import -D "" CGROUPS
foreground { foreground {
@@ -16,4 +17,4 @@ foreground {
if { s6-mkdir /sys/fs/cgroup/${i} } if { s6-mkdir /sys/fs/cgroup/${i} }
s6-mount -t cgroup -o ${i} -- cgroup /sys/fs/cgroup/${i} s6-mount -t cgroup -o ${i} -- cgroup /sys/fs/cgroup/${i}
} }
true s6-echo -- rofs-cgroups successfully started

View File

@@ -1 +1,2 @@
rofs-kernmod rofs-kernmod
rofs-Udevd

View File

@@ -1,6 +1,8 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rofs-console started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" KEYMAP import -D "" KEYMAP
import -D "" FONT import -D "" FONT
@@ -9,6 +11,9 @@ import -D "" FONT_UNIMAP
foreground { foreground {
loadkeys -q -u $KEYMAP loadkeys -q -u $KEYMAP
} }
forx index { 0 1 2 3 4 5 6 7 8 9 10 } foreground {
import -u index forx index { 0 1 2 3 4 5 6 7 8 9 10 }
setfont -m $FONT_MAP -u $FONT_UNIMAP $FONT -C /dev/tty${index} import -u index
setfont -m $FONT_MAP -u $FONT_UNIMAP $FONT -C /dev/tty${index}
}
s6-echo -- rofs-console successfully started

View File

@@ -1 +1 @@
00

View File

@@ -1,11 +1,15 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
s6-envdir /etc/s6/env/s6-conf if { s6-echo -- rofs-hardclock started }
import -D "" TZ foreground {
import -D "" HARDWARECLOCK s6-envdir /etc/s6/env/s6-conf
pipeline -d { echo $HARDWARECLOCK } import -D "" TZ
pipeline { tr A-Z a-z } import -D "" HARDWARECLOCK
forstdin -- clock pipeline -d { echo $HARDWARECLOCK }
import -iu clock pipeline { tr A-Z a-z }
hwclock --systz --${clock} --noadjfile forstdin -- clock
import -iu clock
hwclock --systz --${clock} --noadjfile
}
s6-echo -- rofs-hardclock successfully started

View File

@@ -1,10 +1,14 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
pipeline -d { kmod static-nodes } if { s6-echo -- rofs-kermod started }
pipeline { s6-grep -F -- Module: } foreground {
pipeline { s6-cut -d":" -f2 } pipeline -d { kmod static-nodes }
pipeline { s6-cut -d" " -f2 } pipeline { s6-grep -F -- Module: }
forstdin -d"\n" -- mod pipeline { s6-cut -d":" -f2 }
import -iu mod pipeline { s6-cut -d" " -f2 }
modprobe $mod forstdin -d"\n" -- mod
import -iu mod
modprobe $mod
}
s6-echo -- rofs-kermod successfully started

View File

@@ -1,6 +1,7 @@
#!/usr/bin/execlineb -P #!/usr/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rofs-kernruntime started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" KERNELRUNTIME import -D "" KERNELRUNTIME
foreground { foreground {
@@ -9,4 +10,4 @@ foreground {
if { s6-test -e /etc/sysctl.conf } if { s6-test -e /etc/sysctl.conf }
sysctl -p /etc/sysctl.conf sysctl -p /etc/sysctl.conf
} }
true s6-echo -- rofs-kernruntime successfully started

View File

@@ -1,2 +0,0 @@
00
rofs-Udevd

View File

@@ -1,4 +0,0 @@
#!/usr/local/bin/execlineb -P
fdmove -c 2 1
ip link set up dev lo

View File

@@ -1,6 +1,7 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rofs-modules started }
foreground { foreground {
if { s6-test -e /etc/s6/env/s6-conf/MODULES } if { s6-test -e /etc/s6/env/s6-conf/MODULES }
redirfd -r 0 /etc/s6/env/s6-conf/MODULES redirfd -r 0 /etc/s6/env/s6-conf/MODULES
@@ -11,4 +12,4 @@ foreground {
modprobe -ab $mods modprobe -ab $mods
} }
} }
true s6-echo -- rofs-modules successfully started

View File

@@ -1,10 +1,11 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rofs-swap started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" USESWAP import -D "" USESWAP
foreground { foreground {
if { s6-test $USESWAP = yes } if { s6-test $USESWAP = yes }
swapon -a swapon -a
} }
true s6-echo -- rofs-swap successfully started

View File

@@ -1,6 +1,7 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rwfs-cleanboot started }
if -t { install -m0664 -o root -g utmp /dev/null /run/utmp } if -t { install -m0664 -o root -g utmp /dev/null /run/utmp }
if -nt { s6-test -e /var/log/wtmp } if -nt { s6-test -e /var/log/wtmp }
@@ -8,4 +9,5 @@ if -t { install -m0664 -o root -g utmp /dev/null /var/log/wtmp }
if -nt { s6-test -e /var/log/btmp } if -nt { s6-test -e /var/log/btmp }
if -t { install -m0600 -o root -g utmp /dev/null /var/log/btmp } if -t { install -m0600 -o root -g utmp /dev/null /var/log/btmp }
install -dm1777 /tmp/.X11-unix /tmp/.ICE-unix if -t { install -dm1777 /tmp/.X11-unix /tmp/.ICE-unix }
s6-echo -- rwfs-cleanboot successfully started

View File

@@ -1 +1 @@
rwfs-fsrw rwfs-end

View File

@@ -1,5 +1,8 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
redirfd -w 1 /var/log/dmesg.log if { s6-echo -- rwfs-dmesglog started }
dmesg foreground {
redirfd -w 1 /var/log/dmesg.log
dmesg
}
s6-echo -- rwfs-dmesglog successfully started

View File

@@ -0,0 +1,7 @@
rwfs-fsrw
rwfs-loopback
rwfs-iptables
rwfs-nonetwork
rwfs-localtime
rwfs-random
rwfs-cleanboot

View File

@@ -0,0 +1 @@
oneshot

0
rc-serv-boot/rwfs-end/up Normal file
View File

View File

@@ -1,3 +1,5 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
s6-mount -o remount,rw / / if { s6-echo -- rwfs-fsrw started }
if { s6-mount -o remount,rw / / }
s6-echo -- rwfs-fsrw successfully started

View File

@@ -0,0 +1,2 @@
rwfs-fsrw
rwfs-loopback

View File

@@ -0,0 +1,17 @@
#!/usr/local/bin/execlineb -P
fdmove -c 2 1
s6-envdir /etc/s6/env/s6-conf
import -D "" IPTABLES
import -D "" IP6TABLES
foreground {
if { s6-test $IPTABLES = yes }
if { s6-echo -- Flushing iptables }
/usr/lib/iptables/scripts/iptables-flush
}
foreground {
if { s6-test $IP6TABLES = yes }
if { s6-echo -- Flushing ip6tables }
/usr/lib/iptables/scripts/iptables-flush 6
}
s6-true

View File

@@ -0,0 +1,22 @@
#!/usr/local/bin/execlineb -P
fdmove -c 2 1
if { s6-echo -- rwfs-iptables started }
s6-envdir /etc/s6/env/s6-conf
import -D "" IPTABLES
import -D "" IP6TABLES
foreground {
if { s6-test $IPTABLES = yes }
if { s6-test -e /etc/iptables/iptables.rules }
if { s6-echo -- Activing iptables }
if { iptables-restore /etc/iptables/iptables.rules }
s6-echo -- Iptables actived
}
foreground {
if { s6-test $IP6TABLES = yes }
if { s6-test -e /etc/iptables/ip6tables.rules }
if { s6-echo -- Activing ip6tables }
ip6tables-restore /etc/iptables/ip6tables.rules
s6-echo -- Ip6tables actived
}
s6-echo -- rwfs-iptables successfully started

View File

@@ -1,6 +1,8 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rwfs-localtime started }
s6-envdir /etc/s6/env/s6-conf s6-envdir /etc/s6/env/s6-conf
import -D "" TZ import -D "" TZ
s6-ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime if { s6-ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime }
s6-echo -- rwfs-localtime successfully started

View File

@@ -0,0 +1,2 @@
rwfs-fsrw

View File

@@ -0,0 +1 @@
oneshot

View File

@@ -0,0 +1,6 @@
#!/usr/local/bin/execlineb -P
fdmove -c 2 1
if { s6-echo -- rwfs-loopback started }
if { ip link set up dev lo }
s6-echo -- rwfs-loopback successfully started

View File

@@ -1,4 +1,6 @@
#!/usr/bin/execlineb -P #!/usr/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
mount -a -t "nosysfs,nonfs,nonfs4,nosmbfs,nocifs" -O no_netdev if { s6-echo -- rwfs-nonetwork started }
if { mount -a -t "nosysfs,nonfs,nonfs4,nosmbfs,nocifs" -O no_netdev }
s6-echo -- rwfs-nonetwork successfully started

View File

@@ -1,7 +1,7 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- rwfs-random started }
foreground { foreground {
cp /var/lib/random-seed /dev/urandom cp /var/lib/random-seed /dev/urandom
} }
@@ -20,4 +20,5 @@ if -t {
umask 077 umask 077
redirfd -w 1 /dev/null redirfd -w 1 /dev/null
dd if=/dev/urandom of=/var/lib/random-seed count=1 bs=$bytes if { dd if=/dev/urandom of=/var/lib/random-seed count=1 bs=$bytes }
s6-echo -- rwfs-random successfully started

View File

@@ -1,5 +1,6 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- udevd-udev started }
exec -c exec -c
udevd udevd

View File

@@ -1,4 +1,5 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
#fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- udevd-udevadm started }
s6-devd s6-devd
/usr/bin/udevadm settle /usr/bin/udevadm settle

View File

@@ -1,6 +1,8 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
fdmove -c 2 1 fdmove -c 2 1
if { s6-echo -- udevd-udevrules started }
foreground { foreground {
if { udevadm trigger --action=add --type=subsystems } if { udevadm trigger --action=add --type=subsystems }
udevadm trigger --action=add --type=devices udevadm trigger --action=add --type=devices
} }
s6-echo -- udevd-udevrules successfully started

View File

@@ -1 +0,0 @@
/etc/s6-serv/available/all-User

View File

@@ -0,0 +1,3 @@
# NEVER ERASE this services below if you do not know what you are doing.
boot-ready
# Enter the desire services/bundle names below this lines.

View File

@@ -0,0 +1 @@
bundle

14
s6.conf
View File

@@ -42,4 +42,16 @@ FONT=lat9w-16
#FONT_UNIMAP= #FONT_UNIMAP=
#Modules, the list must be separate by space e.g. MODULES=vboxdrv i915 loop# #Modules, the list must be separate by space e.g. MODULES=vboxdrv i915 loop#
#MODULES= MODULES=
# Use Iptables [yes|no]
# The configuration file in /etc/iptables/iptables.rules MUST exist
IPTABLES=no
# Use Iptables6 [yes|no]
# The configuration file in /etc/iptables/ip6tables.rules MUST exist
IP6TABLES=no
# Force a check of disk/filesystem
FORCECHCK=no

28
shutdown Executable file
View File

@@ -0,0 +1,28 @@
#!/bin/bash
usage() {
cat << EOF
Usage: shutdown [OPTION]
-r, --reboot Reboot
-p, --poweroff Poweroff
EOF
exit 0
}
signal="${1}"
if [ -z $signal ]; then
usage
fi
case "${signal}" in
-p|-P|--poweroff|-H|-h|--halt)
signal=SIGUSR2
;;
-r|--reboot)
signal=SIGINT
;;
*)
usage
esac
exec /run/s6-run/service/.s6-svscan/"${signal}"

1
stage3
View File

@@ -36,6 +36,7 @@ foreground { s6-echo Syncing disks. }
foreground { s6-sync } foreground { s6-sync }
foreground { s6-echo Umount extra filesystem } foreground { s6-echo Umount extra filesystem }
foreground { umount -r -a -t nosysfs,noproc,nodevtmpfs,notmpfs } foreground { umount -r -a -t nosysfs,noproc,nodevtmpfs,notmpfs }
foreground { rm -rf /tmp/* }
foreground { s6-echo Remount ro / } foreground { s6-echo Remount ro / }
foreground { mount -o remount,ro / } foreground { mount -o remount,ro / }

View File

@@ -1,4 +1,4 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
foreground { /etc/stage2.tini } foreground { /etc/s6/stage2.tini }
s6-svscanctl -h -- /run/s6-run/service s6-svscanctl -h -- /run/s6-run/service

View File

@@ -1,4 +1,4 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
foreground { /etc/stage2.tini } foreground { /etc/s6/stage2.tini }
s6-svscanctl -6 -- /run/s6-run/service s6-svscanctl -6 -- /run/s6-run/service

View File

@@ -1,4 +1,4 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
foreground { /etc/stage2.tini } foreground { /etc/s6/stage2.tini }
s6-svscanctl -q -- /run/s6-run/service s6-svscanctl -q -- /run/s6-run/service

View File

@@ -1,4 +1,4 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
foreground { /etc/stage2.tini } foreground { /etc/s6/stage2.tini }
s6-svscanctl -t -- /run/s6-run/service s6-svscanctl -t -- /run/s6-run/service

View File

@@ -1,4 +1,4 @@
#!/usr/local/bin/execlineb -P #!/usr/local/bin/execlineb -P
foreground { /etc/stage2.tini } foreground { /etc/s6/stage2.tini }
s6-svscanctl -7 -- /run/s6-run/service s6-svscanctl -7 -- /run/s6-run/service

View File

@@ -6,4 +6,4 @@ fdmove -c 1 2
foreground { s6-svc -X -- /run/s6-run/service/s6-svscan-log } foreground { s6-svc -X -- /run/s6-run/service/s6-svscan-log }
unexport ? unexport ?
wait -r -- { } wait -r -- { }
/etc/stage3 ${@} /etc/s6/stage3 ${@}