mirror of
https://github.com/Keyitdev/sddm-astronaut-theme.git
synced 2026-09-24 02:22:09 +00:00
Merge pull request #95 from NonameBlank007/cleanup
Improve system init detection and runit compatibility in setup.sh
This commit is contained in:
@@ -181,8 +181,19 @@ _disable_dm_dinit() {
|
||||
done
|
||||
}
|
||||
|
||||
_runit_sv() {
|
||||
if [ -d /etc/sv ]; then echo "/etc/sv"
|
||||
elif [ -d /etc/runit/sv ]; then echo "/etc/runit/sv"
|
||||
else
|
||||
error "Cannot find runit service configuration files directory"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
_runit_runsvdir() {
|
||||
if [ -d /run/runit/service ]; then echo "/run/runit/service"
|
||||
if [ -d /service ]; then echo "/service" # legacy/upstream symlink
|
||||
elif [ -d /var/service ]; then echo "/var/service"
|
||||
elif [ -d /run/runit/service ]; then echo "/run/runit/service"
|
||||
elif [ -d /etc/runit/runsvdir/default ]; then echo "/etc/runit/runsvdir/default"
|
||||
else
|
||||
error "Cannot find runit service directory"
|
||||
@@ -230,16 +241,23 @@ enable_sddm() {
|
||||
;;
|
||||
|
||||
runit)
|
||||
local sv
|
||||
local runsvdir
|
||||
sv=$(_runit_sv)
|
||||
runsvdir=$(_runit_runsvdir)
|
||||
|
||||
if [ ! -d /etc/sv/sddm ]; then
|
||||
error "/etc/sv/sddm not found - is sddm-runit (or equivalent) installed?"
|
||||
if [ -f /etc/os-release ] && grep -q 'ID=artix' /etc/os-release; then
|
||||
sudo pacman --needed -S sddm-runit
|
||||
info "sddm-runit installed for Artix Linux"
|
||||
fi
|
||||
|
||||
if [ ! -d "$sv/sddm" ]; then
|
||||
error "$sv/sddm not found - is sddm-runit (or equivalent) installed?"
|
||||
return 1
|
||||
fi
|
||||
|
||||
_disable_dm_runit
|
||||
sudo ln -sf /etc/sv/sddm "$runsvdir/sddm"
|
||||
sudo ln -sf "$sv/sddm" "$runsvdir/"
|
||||
info "sddm symlinked into $runsvdir"
|
||||
;;
|
||||
|
||||
@@ -268,7 +286,7 @@ enable_sddm() {
|
||||
echo ""
|
||||
echo " systemd - sudo systemctl enable --now sddm"
|
||||
echo " openrc - sudo rc-update add sddm default"
|
||||
echo " runit - sudo ln -s /etc/sv/sddm /run/runit/service/"
|
||||
echo " runit - sudo ln -s /etc/sv/sddm /var/service/ || sudo ln -s /etc/runit/sv/sddm /run/runit/service/"
|
||||
echo " dinit - sudo ln -s /etc/dinit.d/sddm /etc/dinit.d/boot.d/sddm"
|
||||
return 1
|
||||
;;
|
||||
|
||||
Reference in New Issue
Block a user