Compare commits
21 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
ef93123fc6 | ||
![]() |
96c517fbb6 | ||
![]() |
928bcb559f | ||
![]() |
e2d67d7c8c | ||
![]() |
a483e72826 | ||
![]() |
5aa4632678 | ||
![]() |
c7d9be62f8 | ||
![]() |
608df4bd47 | ||
![]() |
c32cc76462 | ||
![]() |
065c79b9ff | ||
![]() |
97f13d2f1a | ||
![]() |
983d28ae45 | ||
![]() |
1470fda317 | ||
![]() |
9e41be013b | ||
![]() |
b53a85ef5c | ||
![]() |
3790871455 | ||
![]() |
4aece292a1 | ||
![]() |
ce00a75a25 | ||
![]() |
473a622f41 | ||
![]() |
6dab7d1ff9 | ||
![]() |
aa34195b53 |
@@ -1,4 +1,4 @@
|
||||
# s6-boot
|
||||
Boot files for s6
|
||||
For instructions about S6 supervision suite : http://skarnet.org/software/
|
||||
Please see here http://obarun.org/forum/viewtopic.php?id=123 for futher informations about obarun use it.
|
||||
|
||||
|
2
_s6-svc
2
_s6-svc
@@ -1,7 +1,7 @@
|
||||
#compdef s6-svc
|
||||
|
||||
# completion for s6-svc
|
||||
# Eric Vidal <eric@obarun.org>
|
||||
# Copyright (C) 2015-2017 Eric Vidal <eric@obarun.org>
|
||||
# services in /run/s6/service. Change the path variable to suit your needs.
|
||||
|
||||
path_dir_boot=/run/boot/service
|
||||
|
1
base-env/DESTBOOTSERV
Normal file
1
base-env/DESTBOOTSERV
Normal file
@@ -0,0 +1 @@
|
||||
/run/boot
|
1
base-env/DESTRCSERV
Normal file
1
base-env/DESTRCSERV
Normal file
@@ -0,0 +1 @@
|
||||
/run/boot-rc
|
1
base-env/S6CONF
Normal file
1
base-env/S6CONF
Normal file
@@ -0,0 +1 @@
|
||||
/run/s6-conf
|
1
base-env/SRCRCCOMPILED
Normal file
1
base-env/SRCRCCOMPILED
Normal file
@@ -0,0 +1 @@
|
||||
/etc/s6/compiled
|
1
base-env/SRCRCSERV
Normal file
1
base-env/SRCRCSERV
Normal file
@@ -0,0 +1 @@
|
||||
/etc/s6/boot-rc-serv
|
@@ -1,16 +1,14 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- 00 started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
foreground { if { s6-echo -- Mounting filesystem }
|
||||
# mount proc sys dev run if doesn't exist
|
||||
#import -i HOSTNAME
|
||||
#if { s6-hostname $HOSTNAME }
|
||||
foreground {
|
||||
forx -p first { proc sys dev run }
|
||||
importas -ui -D "" first first
|
||||
foreground {
|
||||
if -n { mountpoint -q /$first }
|
||||
s6-envdir /etc/s6/env/mount/$first
|
||||
s6-envdir /etc/s6/filesystem-env/$first
|
||||
importas -ui -D "" fstype fstype
|
||||
importas -ui -D "" device device
|
||||
importas -ui -D "" mountpoint mountpoint
|
||||
@@ -38,7 +36,7 @@ if {
|
||||
foreground {
|
||||
if -n { mountpoint -q /dev/$third }
|
||||
if { s6-mkdir -p -m 0755 /dev/$third }
|
||||
s6-envdir /etc/s6/env/mount/$third
|
||||
s6-envdir /etc/s6/filesystem-env/$third
|
||||
importas -ui -D "" fstype fstype
|
||||
importas -ui -D "" device device
|
||||
importas -ui -D "" mountpoint mountpoint
|
||||
@@ -47,4 +45,31 @@ if {
|
||||
}
|
||||
}
|
||||
}
|
||||
s6-echo -- 00 successfully started
|
||||
s6-echo -- filesystem was mounted successfully
|
||||
}
|
||||
foreground {
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
if { s6-echo -- Parsing s6-conf }
|
||||
# parse s6.conf before loading environment
|
||||
foreground {
|
||||
redirfd -r 0 /etc/s6/s6.conf
|
||||
pipeline { s6-grep -vF -- "#" }
|
||||
forstdin -nCd"\n" -- conf
|
||||
importas -ui -D "" conf conf
|
||||
multidefine -d"=" $conf { var value }
|
||||
foreground {
|
||||
if { mkdir -p ${S6CONF}/ }
|
||||
redirfd -w 1 ${S6CONF}/$var
|
||||
s6-echo -- $value
|
||||
}
|
||||
}
|
||||
# load hostname for earlier tty
|
||||
foreground {
|
||||
s6-envdir ${S6CONF}
|
||||
importas -i -D "" HOSTNAME HOSTNAME
|
||||
s6-hostname ${HOSTNAME}
|
||||
}
|
||||
s6-echo -- s6-conf was parsed successfully
|
||||
}
|
||||
s6-echo -- 00 successfully started
|
@@ -1,3 +1,3 @@
|
||||
00
|
||||
all-Boot
|
||||
#all-User
|
||||
all-Switch
|
||||
|
@@ -1,4 +1,3 @@
|
||||
00
|
||||
rofs-cgroups
|
||||
rofs-kernmod
|
||||
rofs-console
|
||||
|
@@ -2,6 +2,7 @@ rwfs-fsrw
|
||||
rwfs-tmpdir
|
||||
rwfs-loopback
|
||||
rwfs-iptables
|
||||
rwfs-ip6tables
|
||||
rwfs-nonetwork
|
||||
rwfs-localtime
|
||||
rwfs-random
|
||||
|
@@ -1,12 +1,14 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- checkfs-brtfs started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" USEBTRFS USEBTRFS
|
||||
foreground {
|
||||
if { s6-test $USEBTRFS = yes }
|
||||
if { s6-test -x /usr/bin/btrfs }
|
||||
btrfs device scan
|
||||
}
|
||||
s6-echo -- checkfs-brtfs successfully started
|
||||
ifelse -X { s6-test $USEBTRFS = yes }
|
||||
{
|
||||
if { s6-test -x /usr/bin/btrfs }
|
||||
if { s6-echo -- checkfs-brtfs started }
|
||||
foreground { btrfs device scan }
|
||||
s6-echo -- checkfs-brtfs successfully started
|
||||
}
|
||||
s6-echo -- checkfs-brtfs desactived
|
||||
|
@@ -1,12 +1,14 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- checkfs-dmraid started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" USEDMRAID USEDMRAID
|
||||
foreground {
|
||||
if { s6-test $USEDMRAID = yes }
|
||||
if { s6-test -x /usr/bin/dmraid }
|
||||
dmraid -i -ay
|
||||
ifelse -X { s6-test $USEDMRAID = yes }
|
||||
{
|
||||
if { s6-test -x /usr/bin/dmraid }
|
||||
if { s6-echo -- checkfs-dmraid started }
|
||||
foreground { dmraid -i -ay }
|
||||
s6-echo -- checkfs-dmraid successfully started
|
||||
}
|
||||
s6-echo -- checkfs-dmraid successfully started
|
||||
s6-echo -- checkfs-dmraid desactived
|
||||
|
@@ -1,3 +1,4 @@
|
||||
rofs-Udevd
|
||||
checkfs-dmraid
|
||||
checkfs-btrfs
|
||||
checkfs-lvm
|
@@ -1,19 +1,21 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- checkfs-fsckeck started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" FORCECHCK FORCECHCK
|
||||
foreground {
|
||||
if { s6-test $FORCECHCK = yes }
|
||||
redirfd -w 1 /dev/console
|
||||
if { s6-echo -- Check of filesystem was asked, please wait }
|
||||
foreground { fsck -A -T -a -f noopts=_netdev }
|
||||
s6-echo -- Filesystem checked
|
||||
ifelse -X { s6-test $FORCECHCK = yes }
|
||||
{
|
||||
redirfd -w 1 /dev/console
|
||||
if { s6-echo -- Check of filesystem was asked, please wait }
|
||||
foreground { fsck -A -T -a -f noopts=_netdev }
|
||||
s6-echo -- Filesystem checked
|
||||
}
|
||||
|
||||
# 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
|
||||
if -t {
|
||||
foreground { fsck -A -T -a noopts=_netdev }
|
||||
if { s6-echo -- checkfs-fsckeck started }
|
||||
fsck -A -T -a noopts=_netdev
|
||||
}
|
||||
s6-echo -- checkfs-fscheck successfully started
|
||||
|
1
boot-rc-serv/checkfs-lvm/dependencies
Normal file
1
boot-rc-serv/checkfs-lvm/dependencies
Normal file
@@ -0,0 +1 @@
|
||||
rofs-Udevd
|
1
boot-rc-serv/checkfs-lvm/type
Normal file
1
boot-rc-serv/checkfs-lvm/type
Normal file
@@ -0,0 +1 @@
|
||||
oneshot
|
22
boot-rc-serv/checkfs-lvm/up
Normal file
22
boot-rc-serv/checkfs-lvm/up
Normal file
@@ -0,0 +1,22 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" USELVM USELVM
|
||||
ifelse -X { s6-test $USELVM = yes }
|
||||
{
|
||||
if { s6-echo -- checkfs-lvm started }
|
||||
foreground {
|
||||
if -nt { s6-test -d /run/lvm }
|
||||
s6-mkdir /run/lvm
|
||||
}
|
||||
if { /usr/bin/lvmetad -p /run/lvm/lvmetad.pid }
|
||||
foreground {
|
||||
if { /usr/bin/vgscan }
|
||||
/usr/bin/vgchange -ay
|
||||
}
|
||||
foreground { pkill lvmetad }
|
||||
s6-echo -- lvm-prepare successfully started
|
||||
}
|
||||
s6-echo -- lvm-prepare desactived
|
@@ -1,3 +1,4 @@
|
||||
checkfs-dmraid
|
||||
checkfs-btrfs
|
||||
checkfs-lvm
|
||||
checkfs-fscheck
|
||||
|
@@ -1,20 +1,24 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- rofs-cgroups started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" CGROUPS CGROUPS
|
||||
foreground {
|
||||
if { s6-test $CGROUPS = yes }
|
||||
if { mkdir -p -m 0755 /sys/fs/cgroup }
|
||||
if { s6-mount -wt tmpfs cgroup /sys/fs/cgroup }
|
||||
redirfd -r 0 /proc/cgroups
|
||||
pipeline { s6-tail -n +2 }
|
||||
pipeline { s6-cut -d"\t" -f1 }
|
||||
pipeline { s6-grep -vF -- devices }
|
||||
forstdin -d"\n" -- i
|
||||
importas -u -D "" i i
|
||||
if { s6-mkdir /sys/fs/cgroup/${i} }
|
||||
s6-mount -t cgroup -o ${i} -- cgroup /sys/fs/cgroup/${i}
|
||||
}
|
||||
s6-echo -- rofs-cgroups successfully started
|
||||
ifelse -X { s6-test $CGROUPS = yes }
|
||||
{
|
||||
foreground {
|
||||
if { s6-echo -- rofs-cgroups started }
|
||||
if { mkdir -p -m 0755 /sys/fs/cgroup }
|
||||
if { s6-mount -wt tmpfs cgroup /sys/fs/cgroup }
|
||||
redirfd -r 0 /proc/cgroups
|
||||
pipeline { s6-tail -n +2 }
|
||||
pipeline { s6-cut -d"\t" -f1 }
|
||||
pipeline { s6-grep -vF -- devices }
|
||||
forstdin -d"\n" -- i
|
||||
importas -u -D "" i i
|
||||
if { s6-mkdir /sys/fs/cgroup/${i} }
|
||||
foreground { s6-mount -t cgroup -o ${i} -- cgroup /sys/fs/cgroup/${i} }
|
||||
}
|
||||
s6-echo -- rofs-cgroups successfully started
|
||||
}
|
||||
s6-echo -- rofs-cgroups desactived
|
||||
|
@@ -1,19 +1,19 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
if { s6-echo -- rofs-console started }
|
||||
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
import -D "" KEYMAP
|
||||
import -D "" FONT
|
||||
import -D "" FONT_MAP
|
||||
import -D "" FONT_UNIMAP
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" KEYMAP KEYMAP
|
||||
importas -D "" FONT FONT
|
||||
importas -D "" FONT_MAP FONT_MAP
|
||||
importas -D "" FONT_UNIMAP FONT_UNIMAP
|
||||
foreground {
|
||||
loadkeys -q -u $KEYMAP
|
||||
}
|
||||
foreground {
|
||||
forx index { 0 1 2 3 4 5 6 7 8 9 10 }
|
||||
importas -u -D "" index index
|
||||
setfont -m $FONT_MAP -u $FONT_UNIMAP $FONT -C /dev/tty${index}
|
||||
exec bash -c "setfont ${FONT_MAP:+-m $FONT_MAP} ${FONT_UNIMAP:+-u $FONT_UNIMAP} $FONT -C /dev/tty${index}"
|
||||
}
|
||||
s6-echo -- rofs-console successfully started
|
||||
|
@@ -1,11 +1,12 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
if { s6-echo -- rofs-hardclock started }
|
||||
foreground {
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
import -D "" TZ
|
||||
import -D "" HARDWARECLOCK
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" TZ TZ
|
||||
importas -D "" HARDWARECLOCK HARDWARECLOCK
|
||||
pipeline -d { echo $HARDWARECLOCK }
|
||||
pipeline { tr A-Z a-z }
|
||||
forstdin -- clock
|
||||
|
@@ -1,13 +1,15 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- rofs-kernruntime started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" KERNELRUNTIME KERNELRUNTIME
|
||||
foreground {
|
||||
if { s6-test $KERNELRUNTIME = yes }
|
||||
if { s6-test -x /usr/bin/sysctl }
|
||||
if { s6-test -e /etc/sysctl.conf }
|
||||
sysctl -p /etc/sysctl.conf
|
||||
}
|
||||
s6-echo -- rofs-kernruntime successfully started
|
||||
ifelse -X { s6-test $KERNELRUNTIME = yes }
|
||||
{
|
||||
if { s6-test -x /usr/bin/sysctl }
|
||||
if { s6-test -e /etc/sysctl.conf }
|
||||
if { s6-echo -- rofs-kernruntime started }
|
||||
foreground { sysctl -p /etc/sysctl.conf }
|
||||
s6-echo -- rofs-kernruntime successfully started
|
||||
}
|
||||
s6-echo -- rofs-kernruntime desactived
|
||||
|
@@ -1,15 +1,17 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- rofs-modules started }
|
||||
foreground {
|
||||
if { s6-test -e /etc/s6/env/s6-conf/MODULES }
|
||||
redirfd -r 0 /etc/s6/env/s6-conf/MODULES
|
||||
forstdin -n -- mods
|
||||
importas -ui -D "" mods mods
|
||||
foreground {
|
||||
if { s6-test -n $mods }
|
||||
modprobe -ab $mods
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
ifelse -X { s6-test -e ${S6CONF}/MODULES }
|
||||
{
|
||||
if { s6-echo -- rofs-modules started }
|
||||
redirfd -r 0 ${S6CONF}/MODULES
|
||||
forstdin -n -- mods
|
||||
importas -ui -D "" mods mods
|
||||
foreground {
|
||||
if { s6-test -n $mods }
|
||||
modprobe -ab $mods
|
||||
}
|
||||
s6-echo -- rofs-modules successfully started
|
||||
}
|
||||
}
|
||||
s6-echo -- rofs-modules successfully started
|
||||
s6-echo -- rofs-modules desactived
|
||||
|
@@ -1,11 +1,13 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- rofs-swap started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" USESWAP USESWAP
|
||||
foreground {
|
||||
if { s6-test $USESWAP = yes }
|
||||
swapon -a
|
||||
}
|
||||
s6-echo -- rofs-swap successfully started
|
||||
ifelse -X { s6-test $USESWAP = yes }
|
||||
{
|
||||
if { s6-echo -- rofs-swap started }
|
||||
foreground { swapon -a }
|
||||
s6-echo -- rofs-swap successfully started
|
||||
}
|
||||
s6-echo -- rofs-swap desactived
|
||||
|
2
boot-rc-serv/rwfs-ip6tables/dependencies
Normal file
2
boot-rc-serv/rwfs-ip6tables/dependencies
Normal file
@@ -0,0 +1,2 @@
|
||||
rwfs-fsrw
|
||||
|
13
boot-rc-serv/rwfs-ip6tables/down
Normal file
13
boot-rc-serv/rwfs-ip6tables/down
Normal file
@@ -0,0 +1,13 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -i -D "" IP6TABLES IP6TABLES
|
||||
|
||||
if { s6-test $IP6TABLES = yes }
|
||||
foreground {
|
||||
if { s6-echo -- Flushing ip6tables }
|
||||
/usr/lib/iptables/scripts/iptables-flush 6
|
||||
}
|
||||
s6-echo -- Ip6tables flushed
|
1
boot-rc-serv/rwfs-ip6tables/type
Normal file
1
boot-rc-serv/rwfs-ip6tables/type
Normal file
@@ -0,0 +1 @@
|
||||
oneshot
|
15
boot-rc-serv/rwfs-ip6tables/up
Normal file
15
boot-rc-serv/rwfs-ip6tables/up
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" IP6TABLES IP6TABLES
|
||||
|
||||
ifelse -X { s6-test $IP6TABLES = yes }
|
||||
{
|
||||
if { s6-test -e /etc/iptables/ip6tables.rules }
|
||||
if { s6-echo -- Activing ip6tables }
|
||||
foreground { ip6tables-restore /etc/iptables/ip6tables.rules }
|
||||
s6-echo -- Ip6tables actived
|
||||
}
|
||||
s6-echo -- rwfs-ip6tables desactived
|
@@ -1,17 +1,13 @@
|
||||
#!/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 }
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -i -D "" IPTABLES IPTABLES
|
||||
|
||||
if { s6-test $IPTABLES = yes }
|
||||
foreground {
|
||||
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-echo -- Iptables flushed
|
||||
|
@@ -1,22 +1,15 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- rwfs-iptables started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" IPTABLES IPTABLES
|
||||
importas -D "" IP6TABLES IP6TABLES
|
||||
foreground {
|
||||
if { s6-test $IPTABLES = yes }
|
||||
if { s6-test -e /etc/iptables/iptables.rules }
|
||||
if { s6-echo -- Activing iptables }
|
||||
foreground { 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 }
|
||||
foreground { ip6tables-restore /etc/iptables/ip6tables.rules }
|
||||
s6-echo -- Ip6tables actived
|
||||
}
|
||||
s6-echo -- rwfs-iptables successfully started
|
||||
|
||||
ifelse -X { s6-test $IPTABLES = yes }
|
||||
{
|
||||
if { s6-test -e /etc/iptables/iptables.rules }
|
||||
if { s6-echo -- Activing iptables }
|
||||
foreground { iptables-restore /etc/iptables/iptables.rules }
|
||||
s6-echo -- Iptables actived
|
||||
}
|
||||
s6-echo -- rwfs-iptables desactived
|
||||
|
@@ -1,8 +1,9 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
fdmove -c 2 1
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
if { s6-echo -- rwfs-localtime started }
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" TZ TZ
|
||||
if { s6-ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime }
|
||||
s6-echo -- rwfs-localtime successfully started
|
||||
|
@@ -1,6 +1,8 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
s6-envdir ${S6CONF}
|
||||
importas -D "" S6LOCAL S6LOCAL
|
||||
ifelse -X { s6-test $S6LOCAL = yes }
|
||||
{ exec -c /etc/s6/data/scripts/s6.local }
|
||||
|
@@ -1,5 +1,13 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
if {
|
||||
foreground {
|
||||
if -n { s6-test -d /run/user/uncaught-logs }
|
||||
s6-mkdir -p -m 0755 /run/user/uncaught-logs
|
||||
}
|
||||
}
|
||||
redirfd -an 1 /run/user/uncaught-logs/fifo
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- switch-user started }
|
||||
if { s6-rc-init -c /etc/s6-serv/enabled/rc/compiled/current -l /run/user-rc /run/user/service }
|
||||
if { s6-rc -l /run/user-rc -u change All }
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- udevd-udev started }
|
||||
if { s6-echo -- udevd-udev longrun started }
|
||||
exec -c
|
||||
udevd
|
||||
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
foreground { /etc/s6/stage2.tini }
|
||||
s6-svscanctl -h -- /run/boot/service
|
||||
s6-svscanctl -h -- ${DESTBOOTSERV}/service
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
foreground { /etc/s6/stage2.tini }
|
||||
s6-svscanctl -6 -- /run/boot/service
|
||||
s6-svscanctl -6 -- ${DESTBOOTSERV}/service
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
foreground { /etc/s6/stage2.tini }
|
||||
s6-svscanctl -q -- /run/boot/service
|
||||
s6-svscanctl -q -- ${DESTBOOTSERV}/service
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
foreground { /etc/s6/stage2.tini }
|
||||
s6-svscanctl -t -- /run/boot/service
|
||||
s6-svscanctl -t -- ${DESTBOOTSERV}/service
|
||||
|
@@ -1,3 +1,4 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-svscanctl -an -- /run/boot/service
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
s6-svscanctl -an -- ${DESTBOOTSERV}/service
|
||||
|
@@ -1,4 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
foreground { /etc/s6/stage2.tini }
|
||||
s6-svscanctl -7 -- /run/boot/service
|
||||
s6-svscanctl -7 -- ${DESTBOOTSERV}/service
|
||||
|
@@ -1,9 +1,10 @@
|
||||
#!/usr/local/bin/execlineb -S0
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
cd /
|
||||
redirfd -w 2 /dev/console
|
||||
fdmove -c 1 2
|
||||
foreground { s6-svc -X -- /run/boot/service/s6-svscan-log }
|
||||
foreground { s6-svc -X -- ${DESTBOOTSERV}/service/s6-svscan-log }
|
||||
unexport ?
|
||||
wait -r -- { }
|
||||
/etc/s6/stage3 ${@}
|
||||
|
@@ -1,8 +1,9 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
redirfd -w 2 /dev/console
|
||||
fdmove -c 1 2
|
||||
#redirfd -w 1 /dev/null
|
||||
redirfd -rnb 0 fifo
|
||||
s6-applyuidgid -u 19 -g 19 --
|
||||
s6-log -bp -- t /run/boot/uncaught-logs
|
||||
s6-log -bp -- t ${DESTBOOTSERV}/uncaught-logs
|
||||
|
@@ -1,3 +1,3 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
/usr/bin/agetty -J 38400 tty1
|
||||
/usr/bin/agetty --delay 02 -J 38400 tty1
|
||||
|
@@ -1,3 +1,3 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
/usr/bin/agetty -J 38400 tty2
|
||||
/usr/bin/agetty --delay 02 -J 38400 tty2
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -8,8 +8,9 @@ pipeline -dw --
|
||||
}
|
||||
if -nt --
|
||||
{
|
||||
redirfd -r 0 ./data/autofilled
|
||||
s6-ipcclient -l0 -- s
|
||||
/usr/libexec/s6-rc-fdholder-filler -1 --
|
||||
/usr/libexec/s6-rc-fdholder-filler -1 --
|
||||
}
|
||||
s6-svc -t .
|
||||
}
|
||||
|
@@ -4,5 +4,5 @@ fdmove 1 3
|
||||
s6-ipcserver-socketbinder -- s
|
||||
s6-ipcserverd -1 --
|
||||
s6-ipcserver-access -v0 -E -l0 -i data/rules --
|
||||
s6-sudod -t 2000 --
|
||||
s6-sudod -t 30000 --
|
||||
/usr/libexec/s6-rc-oneshot-run -l ../.. --
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
fdmove -c 2 1
|
||||
if { s6-echo -- udevd-udev started }
|
||||
if { s6-echo -- udevd-udev longrun started }
|
||||
exec -c
|
||||
udevd
|
||||
|
||||
|
1
env/s6-conf
vendored
1
env/s6-conf
vendored
@@ -1 +0,0 @@
|
||||
/run/s6-conf
|
45
init
45
init
@@ -1,5 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
# Copyright (C) 2015-2016 Eric Vidal <eric@obarun.org>
|
||||
# Copyright (C) 2015-2017 Eric Vidal <eric@obarun.org>
|
||||
#
|
||||
# This file is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
@@ -14,35 +14,14 @@
|
||||
|
||||
|
||||
# Export good path
|
||||
/usr/local/bin/export PATH "/usr/local/bin:/usr/bin"
|
||||
|
||||
cd /
|
||||
|
||||
# parse s6.conf before loading environment
|
||||
foreground {
|
||||
redirfd -r 0 /etc/s6/s6.conf
|
||||
pipeline { s6-grep -vF -- "#" }
|
||||
forstdin -nCd"\n" -- conf
|
||||
importas -ui -D "" conf conf
|
||||
multidefine -d"=" $conf { var value }
|
||||
foreground {
|
||||
if { mkdir -p /run/s6-conf/ }
|
||||
redirfd -w 1 /run/s6-conf/$var
|
||||
s6-echo -- $value
|
||||
}
|
||||
}
|
||||
# load hostname for earlier tty
|
||||
foreground {
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
importas -i -D "" HOSTNAME HOSTNAME
|
||||
s6-hostname ${HOSTNAME}
|
||||
}
|
||||
# Clean environment
|
||||
emptyenv -p
|
||||
s6-envdir -if /etc/s6/env
|
||||
/usr/bin/s6-envdir -if /etc/s6/base-env
|
||||
/usr/local/bin/importas -i -D "" PATH PATH
|
||||
/usr/local/bin/export PATH ${PATH}
|
||||
|
||||
/usr/local/bin/cd /
|
||||
|
||||
# Be clean and safe
|
||||
emptyenv -p
|
||||
s6-setsid -qb --
|
||||
umask 022
|
||||
|
||||
@@ -54,22 +33,24 @@ if {
|
||||
}
|
||||
|
||||
# Copy service for pid1 at the right place
|
||||
importas -i -D "" BOOTSERV BOOTSERV
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" SRCBOOTSERV SRCBOOTSERV
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
foreground {
|
||||
if { s6-hiercopy ${BOOTSERV} /run/boot }
|
||||
if { s6-hiercopy ${SRCBOOTSERV} ${DESTBOOTSERV} }
|
||||
}
|
||||
|
||||
redirfd -r 0 /dev/null
|
||||
redirfd -wnb 1 /run/boot/service/s6-svscan-log/fifo
|
||||
redirfd -wnb 1 ${DESTBOOTSERV}/service/s6-svscan-log/fifo
|
||||
|
||||
# Now we are good for stage2, start it
|
||||
background {
|
||||
s6-setsid --
|
||||
redirfd -w 1 /run/boot/service/s6-svscan-log/fifo
|
||||
redirfd -w 1 ${DESTBOOTSERV}/service/s6-svscan-log/fifo
|
||||
fdmove -c 2 1
|
||||
/etc/s6/stage2
|
||||
}
|
||||
|
||||
unexport !
|
||||
fdmove -c 2 1
|
||||
s6-svscan -st0 /run/boot/service
|
||||
s6-svscan -st0 ${DESTBOOTSERV}/service
|
||||
|
6
poweroff
6
poweroff
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
exec /run/boot/service/.s6-svscan/SIGUSR2
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
exec ${DESTBOOTSERV}/service/.s6-svscan/SIGUSR2
|
||||
|
6
reboot
6
reboot
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/usr/local/bin/execlineb -P
|
||||
|
||||
exec /run/boot/service/.s6-svscan/SIGINT
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
exec ${DESTBOOTSERV}/service/.s6-svscan/SIGINT
|
||||
|
@@ -1 +1 @@
|
||||
erase me
|
||||
delete this file
|
||||
|
@@ -1 +1 @@
|
||||
erase me
|
||||
delete this file
|
||||
|
@@ -1 +1 @@
|
||||
erase me
|
||||
delete this file
|
||||
|
10
s6.conf
10
s6.conf
@@ -4,15 +4,15 @@
|
||||
# Apply kernel runtime [yes|no]
|
||||
KERNELRUNTIME=yes
|
||||
|
||||
#boot with dmraid support [yes|no]
|
||||
# Boot with dmraid support [yes|no]
|
||||
USEDMRAID=no
|
||||
|
||||
#boot with btrfs support [yes|no]
|
||||
# Boot with btrfs support [yes|no]
|
||||
USEBTRFS=no
|
||||
|
||||
#boot with lvm support [yes|no]
|
||||
# This option is not available for the moment
|
||||
#USELVM=no
|
||||
# Boot with lvm support [yes|no]
|
||||
# Do not forget to remake your initramfs with lvm2 hook on it
|
||||
USELVM=no
|
||||
|
||||
#swap support [yes|no]
|
||||
USESWAP=no
|
||||
|
12
stage2
12
stage2
@@ -1,5 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -P
|
||||
# Copyright (C) 2015-2016 Eric Vidal <eric@obarun.org>
|
||||
# Copyright (C) 2015-2017 Eric Vidal <eric@obarun.org>
|
||||
#
|
||||
# This file is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
@@ -12,17 +12,21 @@
|
||||
# can do whatever you want with this stuff. If we meet some day, and you think
|
||||
# this stuff is worth it, you can buy me a beer in return. Eric Vidal http://obarun.org
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTRCSERV DESTRCSERV
|
||||
importas -i -D "" DESTBOOTSERV DESTBOOTSERV
|
||||
importas -i -D "" SRCRCCOMPILED SRCRCCOMPILED
|
||||
|
||||
if -nt {
|
||||
if { s6-echo -- "***************************************************************************" }
|
||||
if { s6-echo -- "** Start Stage 2 **" }
|
||||
if { s6-echo -- "***************************************************************************" }
|
||||
# start service
|
||||
if { s6-rc-init -l /run/boot-rc -c /etc/s6/compiled/current /run/boot/service }
|
||||
if { s6-rc -l /run/boot-rc -u change All }
|
||||
if { s6-rc-init -l ${DESTRCSERV} -c ${SRCRCCOMPILED}/current ${DESTBOOTSERV}/service }
|
||||
if { s6-rc -l ${DESTRCSERV} -u change All }
|
||||
if { s6-echo -- "***************************************************************************" }
|
||||
if { s6-echo -- "** Stage 2 completed **" }
|
||||
s6-echo -- "***************************************************************************"
|
||||
}
|
||||
redirfd -w 1 /dev/console
|
||||
s6-echo "Something wrong on stage2, please see the log at /run/boot/uncaught-logs/current to debug it"
|
||||
s6-echo "Something wrong on stage2, please see the log at ${DESTBOOTSERV}/uncaught-logs/current to debug it"
|
||||
|
12
stage2.tini
12
stage2.tini
@@ -1,5 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -S0
|
||||
# Copyright (C) 2015-2016 Eric Vidal <eric@obarun.org>
|
||||
# Copyright (C) 2015-2017 Eric Vidal <eric@obarun.org>
|
||||
#
|
||||
# This file is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
@@ -12,11 +12,15 @@
|
||||
# can do whatever you want with this stuff. If we meet some day, and you think
|
||||
# this stuff is worth it, you can buy me a beer in return. Eric Vidal http://obarun.org
|
||||
|
||||
s6-envdir -if /etc/s6/base-env
|
||||
importas -i -D "" DESTRCSERV DESTRCSERV
|
||||
importas -i -D "" S6CONF S6CONF
|
||||
|
||||
if { s6-echo -- "***************************************************************************" }
|
||||
if { s6-echo -- "** Start Tini shutdown **" }
|
||||
if { s6-echo -- "***************************************************************************" }
|
||||
cd /
|
||||
foreground { s6-rc -v 2 -l /run/boot-rc -da change }
|
||||
foreground { s6-rc -v 2 -l ${DESTRCSERV} -da change }
|
||||
foreground {
|
||||
backtick -n bytes { cat /proc/sys/kernel/random/poolsize }
|
||||
importas -u bytes bytes
|
||||
@@ -33,7 +37,7 @@ foreground {
|
||||
dd if=/dev/urandom of=/var/lib/random-seed count=1 bs=$bytes
|
||||
}
|
||||
foreground {
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir ${S6CONF}
|
||||
importas -u -D "" HARDWARECLOCK HARDWARECLOCK
|
||||
pipeline -d { echo $HARDWARECLOCK }
|
||||
pipeline { tr A-Z a-z }
|
||||
@@ -42,7 +46,7 @@ foreground {
|
||||
hwclock --systohc --${clock}
|
||||
}
|
||||
foreground {
|
||||
s6-envdir /etc/s6/env/s6-conf
|
||||
s6-envdir ${S6CONF}
|
||||
importas -u -D "" TMPDIR TMPDIR
|
||||
if { s6-test $TMPDIR = yes }
|
||||
if { s6-echo -- Cleaning /tmp directory }
|
||||
|
3
stage3
3
stage3
@@ -1,5 +1,5 @@
|
||||
#!/usr/local/bin/execlineb -S0
|
||||
# Copyright (C) 2015-2016 Eric Vidal <eric@obarun.org>
|
||||
# Copyright (C) 2015-2017 Eric Vidal <eric@obarun.org>
|
||||
#
|
||||
# This file is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
@@ -36,7 +36,6 @@ foreground { s6-echo Syncing disks. }
|
||||
foreground { s6-sync }
|
||||
foreground { s6-echo -- Umount extra filesystem }
|
||||
foreground { umount -r -a -t nosysfs,noproc,nodevtmpfs,notmpfs }
|
||||
foreground { rm -rf /tmp/* }
|
||||
foreground { s6-echo -- Remount ro / }
|
||||
foreground { mount -o remount,ro / }
|
||||
|
||||
|
Reference in New Issue
Block a user