about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJustin Bedo <cu@cua0.org>2018-11-23 15:59:02 +1100
committerJustin Bedo <cu@cua0.org>2019-01-31 09:21:18 +1100
commit3bab170088634284892ebfc7375eaea54defc556 (patch)
tree9c273f292b75b989566f359890043eb6e087c6e4
parent5611397f336dae7a2f05511e4951a8c76268545f (diff)
downloadnixlib-3bab170088634284892ebfc7375eaea54defc556.tar
nixlib-3bab170088634284892ebfc7375eaea54defc556.tar.gz
nixlib-3bab170088634284892ebfc7375eaea54defc556.tar.bz2
nixlib-3bab170088634284892ebfc7375eaea54defc556.tar.lz
nixlib-3bab170088634284892ebfc7375eaea54defc556.tar.xz
nixlib-3bab170088634284892ebfc7375eaea54defc556.tar.zst
nixlib-3bab170088634284892ebfc7375eaea54defc556.zip
singularity: update module to correctly wrap suid binary
-rw-r--r--nixos/modules/programs/singularity.nix9
1 files changed, 8 insertions, 1 deletions
diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix
index 86153d933855..50b1816e047e 100644
--- a/nixos/modules/programs/singularity.nix
+++ b/nixos/modules/programs/singularity.nix
@@ -3,13 +3,20 @@
 with lib;
 let
   cfg = config.programs.singularity;
+  singularity = pkgs.singularity.overrideAttrs (attrs : {
+    installPhase = attrs.installPhase + ''
+      mv $out/libexec/singularity/bin/starter-suid $out/libexec/singularity/bin/starter-suid.orig
+      ln -s /run/wrappers/bin/singularity-suid $out/libexec/singularity/bin/starter-suid
+    '';
+  });
 in {
   options.programs.singularity = {
     enable = mkEnableOption "Singularity";
   };
 
   config = mkIf cfg.enable {
-      environment.systemPackages = [ pkgs.singularity ];
+      environment.systemPackages = [ singularity ];
+      security.wrappers.singularity-suid.source = "${singularity}/libexec/singularity/bin/starter-suid.orig";
       systemd.tmpfiles.rules = [ "d /var/singularity/mnt/session 0770 root root -"
                                  "d /var/singularity/mnt/final 0770 root root -"
                                  "d /var/singularity/mnt/overlay 0770 root root -"