]> Pileus Git - mkinit/commitdiff
Update services.
authorAndy Spencer <andy753421@gmail.com>
Sat, 7 Nov 2020 10:25:50 +0000 (10:25 +0000)
committerAndy Spencer <andy753421@gmail.com>
Sat, 7 Nov 2020 10:25:50 +0000 (10:25 +0000)
services.mk

index 3f69b57d1db4d948f5110db79fdc9bda18ca0478..e7f29ba503c48a027ce1ba2bd3ab7275c01ca8c0 100644 (file)
@@ -1,32 +1,31 @@
 MKSHELL=/opt/plan9/bin/rc
 
 # Example
-#test-start:VQPservice -u: foo-start
-#      echo starting test
-#      service -U $target
-#
-#test-stop:VQPservice -d: /
-#      echo stopping test
-#      service -D $target
+test-start:VQPservice -u: foo-start
+       echo starting test
+       service -U $target
+
+test-stop:VQPservice -d: /
+       echo stopping test
+       service -D $target
 
 # Core commands
 # -------------
 # Reboot commands
-poweroff:V: halt 
+poweroff:V: halt
        $P poweroff -ndf
 reboot:V: halt
        $P reboot -ndf
 kexec:V: halt
-       $P kexec -l /usr/src/linux/arch/x86/boot/bzImage --reuse-cmdline
-       $P kexec -e
+       $P reboot -ndfk
 
 # Initial setup/shutdown for mkinit
 boot:VEPservice -u: /
        echo Starting init
        $P mount -o remount,rw /
+       $P mount -t tmpfs tmpfs /lib/mkinit/state
        # mount proc here to make bootchart happier
        $P mount -t proc proc /proc
-       service -F
        service -U $target
 
 # Kill all process, then remount and sync
@@ -53,31 +52,43 @@ initctl-start:VPservice -u: boot
                $P mkfifo $fifo
        { exec $P initctld $fifo |
          while(line=`{line})
-               $P mkinit $line >/dev/console >[2=1] 
+               $P mkinit $line >/dev/console >[2=1]
        } &
        service -U $target
 initctl-stop_cmd=fuser -k /dev/initctl
 
 # Proc, mtab, fstab
-mounts-start:VPservice -u: boot
-       $P mdadm -A /dev/md4 /dev/sd[abc]4
+mounts-start:VPservice -u: $devnodes-start
+       $P mdadm -A /dev/md2 /dev/sd[bcd]2 || true
+       $P ln -snf /proc/self/fd /dev/fd
        $P mount -a
        service -U $target
 
-# Mount devtmpfs and shm/pts subfolders
+# Set console font
+font-start_cmd=setfont
+
+# Setup device nodes
 devtmpfs-start:VEPservice -u: boot
        $P mount /dev
        $P mkdir /dev/shm
        $P mkdir /dev/pts
        service -U $target
 
-# Start mdev as initial/daemon
-mdev-start:VEPservice -u: mounts-start
+devawk-start:VEPservice -u: devtmpfs-start
+       $P echo /root/bin/dev.awk > /proc/sys/kernel/hotplug
+       $P /root/bin/dev.awk
+       service -U $target
+
+devsh-start:VEPservice -u: devtmpfs-start
+       $P echo /root/bin/dev.sh > /proc/sys/kernel/hotplug
+       $P /root/bin/dev.sh -a
+       service -U $target
+
+mdev-start:VEPservice -u: devtmpfs-start
        $P echo /sbin/mdev > /proc/sys/kernel/hotplug
        $P mdev -s
        service -U $target
 
-# Start udev and trigger events
 udev-start:VEPservice -u:  mounts-start
        $P udevd --daemon
        $P udevadm trigger
@@ -86,14 +97,42 @@ udev-start:VEPservice -u:  mounts-start
 udev-stop_cmd=pkill udevd
 
 # Load kernel modules
-modules-start:VEPservice -u: boot
-       $P modprobe uvesafb
-       $P modprobe evdev
+modules-start:VEPservice -u: mounts-start
+       for (i in `{find /sys/devices -name wakeup -not -path '*PWRBN*'})
+               { $P echo disabled > $i }
+       service -U $target
+
+# Intel graphics card
+intel-start:VEPservice -u: mounts-start
+       $P modprobe i915    'modeset=1'
+       $P modprobe nouveau 'modeset=1'
+       $P echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
+       service -U $target
+
+# Nvidia graphics card
+nvidia-start:VEPservice -u: mounts-start
+       $P modprobe i915    'modeset=1'
+       $P modprobe nouveau 'modeset=1'
+       $P echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch
+       $P echo 0    > /sys/class/vtconsole/vtcon1/bind
+       $P modprobe -r nouveau
+       $P modprobe    nvidia
+       $P setpci -v -H1 -s '00:01.00' 'BRIDGE_CONTROL=0'
+       service -U $target
+
+# Nouveau graphics card
+nouveau-start:VEPservice -u: mounts-start
+       $P modprobe    i915    'modeset=1'
+       $P modprobe    nouveau 'modeset=1'
+       $P echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch
+       $P echo 0    > /sys/class/vtconsole/vtcon1/bind
+       $P modprobe -r nouveau
+       $P modprobe    nouveau 'modeset=1'
        service -U $target
 
 # Clean out /tmp and /var/run directories
 fsclean-start:VPservice -u: boot
-       dirs=(/var/run /tmp)
+       dirs=(/run /var/run /tmp)
        $P mkdir -p /.old
        $P mv $dirs /.old || true
        $P mkdir -p $dirs
@@ -102,6 +141,13 @@ fsclean-start:VPservice -u: boot
        $P exec rm -rf /.old &
        service -U $target
 
+# Hardware keys
+hwkeys-start:VEPservice -u: mounts-start
+       $P /root/bin/touchpad.sh
+       $P exec hwkeys &
+       service -U $target
+hwkeys-stop_cmd=pkill hwkeys
+
 # Spawn gettyd for tty[23456]
 gettyd-start:VEPservice -u: hostname-start utmp-start
        $P exec gettyd tty2 tty3 tty4 tty5 tty6 &
@@ -119,12 +165,23 @@ agetty-start:VEPservice -u: hostname-start utmp-start
 agetty-stop_cmd=fuser -k /dev/tty2 /dev/tty3 /dev/tty4 /dev/tty5 /dev/tty6
 
 # Spawn qingys for tty[7]
-qingy-start:VEPservice -u: hostname-start utmp-start modules-start
-       $P respawn setsid /sbin/qingy-DirectFB tty7 &
+qingy-start:VEPservice -u: hostname-start utmp-start modules-start $devnodes-start
+       $P /root/bin/touchpad.sh
+       $P exec setsid /sbin/qingy tty7 &
        $P chvt 7
        service -U $target
 qingy-stop_cmd=fuser -k /dev/tty7
 
+# Spawn xorg on tty[7]
+xinit-start:VEPservice -u: mounts-start
+       $P /root/bin/gpu $graphics | tee /root/gpu.log
+       $P /root/bin/touchpad.sh
+       $p chown andy:tty /dev/tty7
+       $p rm -f /usr/libexec/xf86-video-intel-backlight-helper
+       $p exec su -l andy -c /home/andy/bin/xsession &
+       service -U $target
+xinit-stop_cmd=fuser -k /dev/tty7
+
 # Login records
 utmp-start:VPservice -u: fsclean-start
        for (i in /var/run/utmp /var/log/wtmp) {
@@ -137,7 +194,7 @@ utmp-stop_cmd=halt -w
 
 # CPU freq
 cpufreq-start:VPservice -u: mounts-start
-       $P cpufreq-set -g ondemand
+       $P cpupower frequency-set -g ondemand
        service -U $target
 
 # Localhost
@@ -147,21 +204,34 @@ localhost-stop_cmd=ifconfig lo down
 # Set hostname
 hostname-start_cmd=hostname
 
+# Power management
+power-start:VPservice -u: mounts-start
+       echo 1         | $P tee /sys/module/snd_hda_intel/parameters/power_save
+       echo min_power | $P tee /sys/class/scsi_host/*/link_power_management_policy
+       echo auto      | $P tee /sys/bus/usb/devices/*/power/control
+       echo auto      | $P tee /sys/bus/pci/devices/*/power/control
+       echo 1500      | $P tee /proc/sys/vm/dirty_writeback_centisecs
+       service -U $target
+
 # Kernel parameters
 sysctl-start:VPservice -u: mounts-start
        $P sysctl -p
        $P chmod a+w /sys/class/leds/smc::kbd_backlight/brightness
        $P chmod a+w /sys/class/backlight/gmux_backlight/brightness
+       $P chmod a+w /sys/devices/platform/applesmc.768/fan[12]_manual
+       $P chmod a+w /sys/devices/platform/applesmc.768/fan[12]_output
        service -U $target
 
 
 # System
 # -------
-at-start_cmd=atd
+at-start:VPservice -u: fsclean-start
+       $P atd
+       service -U $target
 at-stop_cmd=pkill atd
 
 cron-start:VPservice -u: localhost-start fsclean-start
-       $P cron
+       $P crond
        service -U $target
 cron-stop_cmd=pkill cron
 
@@ -191,9 +261,22 @@ syslog-stop_cmd=pkill syslog
 
 # Desktop
 # -------
-alsa-start_cmd=alsactl restore
+alsa-start:VPservice -u: boot
+       $P modprobe snd-hda-intel
+       $P modprobe snd-usb-audio
+       $P sleep 0.1
+       $P alsactl restore
+       service -U $target
 alsa-stop_cmd=alsactl store
 
+bluez-start:VPservice -u: dbus-start
+       $P modprobe btusb
+       $P modprobe hidp
+       $P hciconfig hci0 up
+       $P exec /usr/libexec/bluetooth/bluetoothd &
+       service -U $target
+bluez-stop_cmd=pkill bluetoothd
+
 cups-start_cmd=cupsd
 cups-stop_cmd=pkill cupsd
 
@@ -221,11 +304,11 @@ polipo-stop_cmd=pkill polipo
 # ------
 apache2-start:VPservice -u: fsclean-start
        $P install -o apache -g apache -d /var/run/session
+       $P install -o apache -g apache -d /run/apache_ssl_mutex
        $P apache2 $(apache2-opts)
        service -U $target
 apache2-stop_cmd=pkill apache2
 
-#bitlbee-start_cmd=sudo -u bitlbee bitlbeed /usr/sbin/bitlbee
 bitlbee-start_cmd=bitlbee -D -u bitlbee
 bitlbee-stop_cmd=pkill bitlbee
 
@@ -258,28 +341,43 @@ diod-start:VPservice -u: munged-start
        service -U $target
 diod-stop_cmd=pkill diod
 
+docker-start_cmd=docker
+docker-stop_cmd=pkill docker
+
 dovecot-start_cmd=dovecot
 dovecot-stop_cmd=pkill dovecot
 
-eth0-start_cmd=dhcpcd eth0
+eth0-start_cmd=dhcpcd eth0 -4 -A
 eth0-stop_cmd=dhcpcd eth0 -k
 
 exim-start_cmd=exim -bd -q5m
 exim-stop_cmd=pkill exim
 
-gitd-start:VPservice -u: boot
-       $P exec /usr/libexec/git-core/git-daemon \
-               '--syslog' \
-               '--export-all' \
-               '--user-path=git' \
-               '--interpolated-path=/etc/git/%H%D' \
-               '--listen=0.0.0.0' \
-               '--user=nobody' \
-               '--group=nobody' &
+fail2ban-start:VPservice -u: boot
+       $P mkdir -p /run/fail2ban
+       $P fail2ban-client start
        service -U $target
+fail2ban-stop_cmd=fail2ban-client stop
+
+gitd-start_cmd=git daemon \
+       '--detach' \
+       '--syslog' \
+       '--export-all' \
+       '--user-path=git' \
+       '--interpolated-path=/etc/git/%H%D' \
+       '--listen=0.0.0.0' \
+       '--user=nobody' \
+       '--group=nobody'
 gitd-stop_cmd=pkill git-daemon
 
-jabberd-start_cmd=sudo -u jabber -g jabber jabberd -b
+iptables-start:VPservice -u: boot
+       $P iptables-restore < /var/lib/iptables/rules-save
+       service -U $target
+iptables-stop:EVPservice -d:
+       $P iptables-save > /var/lib/iptables/rules-save
+       service -D $target
+
+jabberd-start_cmd=sudo -u jabber -g jabber jabberd-andy -b
 jabberd-stop_cmd=pkill --uid jabber
 
 mailman-start_cmd=sudo -u mailman -g mailman \
@@ -287,6 +385,13 @@ mailman-start_cmd=sudo -u mailman -g mailman \
 mailman-stop_cmd=sudo -u mailman -g mailman \
        /usr/lib64/mailman/bin/mailmanctl stop
 
+minidlna-start:VPservice -u: mounts-start
+       $P install -o minidlna -g minidlna -d /var/run/minidlna
+       $P install -o minidlna -g minidlna -d /var/cache/minidlna
+       $P sudo    -u minidlna -g minidlna minidlnad
+       service -U $target
+minidlna-stop_cmd=pkill minidlnad
+
 munged-start:VPservice -u: localhost-start mounts-start
        $P install -o munge -g munge -d /var/run/munge
        $P sudo -u munge -g munge munged
@@ -305,9 +410,12 @@ ntpd-stop_cmd=pkill ntpd
 privoxy-start_cmd=privoxy --user privoxy.privoxy /etc/privoxy/config
 privoxy-stop_cmd=pkill privoxy
 
-rngd-start_cmd=rngd -b -s64 -t60
+rngd-start_cmd=rngd -b -s64 -W2048
 rngd-stop_cmd=pkill rngd
 
+sasl-start_cmd=saslauthd -n0 -ashadow
+sasl-stop_cmd=pkill saslauthd
+
 spamd-start_cmd=spamd -u spamd -d
 spamd-stop_cmd=pkill spamd
 
@@ -319,18 +427,41 @@ tor-start:VPservice -u: boot
        service -U $target
 tor-stop_cmd=pkill tor
 
+unifi-start:VPservice -u: wpa-start
+       cd /usr/lib/unifi
+       exec java -jar lib/ace.jar start &
+unifi-stop:EVPservice -d:
+       cd /usr/lib/unifi
+       java -jar lib/ace.jar stop
+       service -D $target
+
+ventrilo-opts=-f/opt/ventrilo-server/ventrilo_srv -d
+ventrilo-start_cmd=sudo -u ventrilo -g ventrilo /opt/ventrilo-server/ventrilo_srv
+ventrilo-stop_cmd=pkill -u ventrilo
+
+vpn-start:VPservice -u: localhost-start
+       $P ipsec start
+       $P exec /usr/sbin/rp-l2tpd &
+       $P exec /usr/sbin/pptpd &
+       service -U $target
+vpn-stop:VQPservice -d: /
+       $P pkill rp-l2tpd
+       $P pkill pptpd
+       $P ipsec stop
+       service -D $target
+
 wlan0-start:VPservice -u: wpa-start
-       $P dhcpcd wlan0
+       $P dhcpcd -4 wlan0
        service -U $target
 wlan0-stop_cmd=dhcpcd wlan0 -k
 
-wpa-start:VPservice -u: mdev-start
-       $P modprobe b43
-       $P exec wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf &
+wpa-start:VPservice -u: $devnodes-start
+       $P modprobe brcmfmac && sleep 1
+       $P exec wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf &
        service -U $target
 wpa-stop_cmd=pkill wpa
 
-# Library 
+# Library
 # -------
 %-start:QVPservice -u: boot
        if (~ $#($stem^-start_cmd) 0)