#!/usr/bin/env bash yes | xbps-install -SuA wget curl brightnessctl pam_rundir seatd polkit mdevd mesa-dri gnupg2 xz NetworkManager curl -L https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh > guix-install.sh which guix || bash guix-install.sh yes | guix install shepherd sed -i '/pam_rundir/{h;s/^.*$/-session optional pam_rundir.so/};${x;/^$/{s//-session optional pam_rundir.so/;H};x}' /etc/pam.d/system-login # Guix Daemon mkdir -p /etc/sv/guix-daemon/log cat <<'EOF' > /etc/sv/guix-daemon/run #!/bin/sh exec 2>&1 exec ~root/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild EOF chmod +x /etc/sv/guix-daemon/run cat < /etc/sv/guix-daemon/log/run #!/bin/sh exec vlogger -t guix-daemon -p daemon EOF chmod +x /etc/sv/guix-daemon/log/run # Shepherd Daemon mkdir -p /etc/sv/shepherd/log cat < /etc/sv/shepherd/run #!/bin/sh exec 2>&1 exec $(find /gnu -wholename '*/bin/shepherd') EOF chmod +x /etc/sv/shepherd/run cat < /etc/sv/shepherd/log/run #!/bin/sh exec vlogger -t shepherd -p daemon EOF chmod +x /etc/sv/shepherd/log/run # Enable Daemons for DAEMON in guix-daemon shepherd NetworkManager acpid dbus mdevd polkitd seatd mdevd do ln -sf /etc/sv/$DAEMON /var/service/ done # Add user to groups for GROUP in users wheel audio video network input plugdev usbmon _seatd polkitd do usermod -a -G $GROUP zilti done