summary refs log tree commit diff
path: root/pkgs/applications/virtualization/singularity
diff options
context:
space:
mode:
authorYueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com>2023-01-29 01:02:48 +0800
committerYueh-Shun Li <44064051+ShamrockLee@users.noreply.github.com>2023-02-08 18:04:05 +0800
commitd35f5c2695ee27e69229b870e74b7fb0c5e976e8 (patch)
tree31f66b31a1f22a2983bbdb7bca9f6c08d461acc3 /pkgs/applications/virtualization/singularity
parent71a89291ee0643b23b87aba090c885324d30bc45 (diff)
downloadnixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.tar
nixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.tar.gz
nixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.tar.bz2
nixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.tar.lz
nixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.tar.xz
nixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.tar.zst
nixpkgs-d35f5c2695ee27e69229b870e74b7fb0c5e976e8.zip
apptainer-overriden-nixos,singularity-overriden-nixos: init
Diffstat (limited to 'pkgs/applications/virtualization/singularity')
-rw-r--r--pkgs/applications/virtualization/singularity/packages.nix28
1 files changed, 26 insertions, 2 deletions
diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix
index c0f0d79d43f..06c8c4fcc0d 100644
--- a/pkgs/applications/virtualization/singularity/packages.nix
+++ b/pkgs/applications/virtualization/singularity/packages.nix
@@ -1,9 +1,9 @@
 { callPackage
 , fetchFromGitHub
+, nixos
 , conmon
 }:
-
-{
+let
   apptainer = callPackage
     (import ./generic.nix rec {
       pname = "apptainer";
@@ -67,4 +67,28 @@
     {
       defaultToSuid = true;
     };
+
+  genOverridenNixos = package: packageName: (nixos {
+    programs.singularity = {
+      enable = true;
+      inherit package;
+    };
+  }).config.programs.singularity.packageOverriden.overrideAttrs (oldAttrs: {
+    meta = oldAttrs.meta // {
+      description = "";
+      longDescription = ''
+        This package produces identical store derivations to `pkgs.${packageName}`
+        overriden and installed by the NixOS module `programs.singularity`
+        with default configuration.
+
+        This is for binary substitutes only. Use pkgs.${packageName} instead.
+      '';
+    };
+  });
+in
+{
+  inherit apptainer singularity;
+
+  apptainer-overriden-nixos = genOverridenNixos apptainer "apptainer";
+  singularity-overriden-nixos = genOverridenNixos singularity "singularity";
 }