aboutsummaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
Diffstat (limited to 'etc')
-rwxr-xr-xetc/guix-install.sh25
1 files changed, 18 insertions, 7 deletions
diff --git a/etc/guix-install.sh b/etc/guix-install.sh
index fc14471f1a..10645ac7ac 100755
--- a/etc/guix-install.sh
+++ b/etc/guix-install.sh
@@ -600,15 +600,26 @@ fi
sys_maybe_setup_selinux()
{
- if [ -f /sys/fs/selinux/policy ]
+ if ! [ -f /sys/fs/selinux/policy ]
then
- prompt_yes_no "Install SELinux policy required to run guix-daemon?" \
- || return
-
- local var_guix=/var/guix/profiles/per-user/root/current-guix
- semodule -i "${var_guix}/share/selinux/guix-daemon.cil"
- restorecon -R /gnu /var/guix
+ return
fi
+
+ local c
+ for c in semodule restorecon
+ do
+ if ! command -v "$c" &>/dev/null
+ then
+ return
+ fi
+ done
+
+ prompt_yes_no "Install SELinux policy that might be required to run guix-daemon?" \
+ || return
+
+ local var_guix=/var/guix/profiles/per-user/root/current-guix
+ semodule -i "${var_guix}/share/selinux/guix-daemon.cil"
+ restorecon -R /gnu /var/guix
}
welcome()