aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/nixos/modules/system/activation
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/nixos/modules/system/activation')
-rw-r--r--infra/libkookie/nixpkgs/nixos/modules/system/activation/activation-script.nix38
-rw-r--r--infra/libkookie/nixpkgs/nixos/modules/system/activation/top-level.nix3
2 files changed, 27 insertions, 14 deletions
diff --git a/infra/libkookie/nixpkgs/nixos/modules/system/activation/activation-script.nix b/infra/libkookie/nixpkgs/nixos/modules/system/activation/activation-script.nix
index ddfd1af4a319..3a6930314b1a 100644
--- a/infra/libkookie/nixpkgs/nixos/modules/system/activation/activation-script.nix
+++ b/infra/libkookie/nixpkgs/nixos/modules/system/activation/activation-script.nix
@@ -25,9 +25,23 @@ let
stdenv.cc.libc # nscd in update-users-groups.pl
shadow
nettools # needed for hostname
- utillinux # needed for mount and mountpoint
+ util-linux # needed for mount and mountpoint
];
+ scriptType = with types;
+ let scriptOptions =
+ { deps = mkOption
+ { type = types.listOf types.str;
+ default = [ ];
+ description = "List of dependencies. The script will run after these.";
+ };
+ text = mkOption
+ { type = types.lines;
+ description = "The content of the script.";
+ };
+ };
+ in either str (submodule { options = scriptOptions; });
+
in
{
@@ -40,16 +54,14 @@ in
default = {};
example = literalExample ''
- { stdio = {
- text = '''
- # Needed by some programs.
- ln -sfn /proc/self/fd /dev/fd
- ln -sfn /proc/self/fd/0 /dev/stdin
- ln -sfn /proc/self/fd/1 /dev/stdout
- ln -sfn /proc/self/fd/2 /dev/stderr
- ''';
- deps = [];
- };
+ { stdio.text =
+ '''
+ # Needed by some programs.
+ ln -sfn /proc/self/fd /dev/fd
+ ln -sfn /proc/self/fd/0 /dev/stdin
+ ln -sfn /proc/self/fd/1 /dev/stdout
+ ln -sfn /proc/self/fd/2 /dev/stderr
+ ''';
}
'';
@@ -62,7 +74,7 @@ in
idempotent and fast.
'';
- type = types.attrsOf types.unspecified; # FIXME
+ type = types.attrsOf scriptType;
apply = set: {
script =
@@ -125,7 +137,7 @@ in
idempotent and fast.
'';
- type = types.attrsOf types.unspecified;
+ type = with types; attrsOf scriptType;
apply = set: {
script = ''
diff --git a/infra/libkookie/nixpkgs/nixos/modules/system/activation/top-level.nix b/infra/libkookie/nixpkgs/nixos/modules/system/activation/top-level.nix
index 2724d9f9cb6f..03d7e7493230 100644
--- a/infra/libkookie/nixpkgs/nixos/modules/system/activation/top-level.nix
+++ b/infra/libkookie/nixpkgs/nixos/modules/system/activation/top-level.nix
@@ -97,10 +97,11 @@ let
allowSubstitutes = false;
buildCommand = systemBuilder;
- inherit (pkgs) utillinux coreutils;
+ inherit (pkgs) coreutils;
systemd = config.systemd.package;
shell = "${pkgs.bash}/bin/sh";
su = "${pkgs.shadow.su}/bin/su";
+ utillinux = pkgs.util-linux;
kernelParams = config.boot.kernelParams;
installBootLoader =