47 lines
1.3 KiB
Bash
47 lines
1.3 KiB
Bash
|
#!/usr/bin/env bash
|
||
|
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 <<EOF > /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 <<EOF > /etc/sv/shepherd/run
|
||
|
#!/bin/sh
|
||
|
exec 2>&1
|
||
|
exec $(find /gnu -wholename '*/bin/shepherd')
|
||
|
EOF
|
||
|
chmod +x /etc/sv/shepherd/run
|
||
|
|
||
|
cat <<EOF > /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
|
||
|
usermod -a -G seat zilti
|