Unverified Commit 7a564cf0 authored by Patrick's avatar Patrick
Browse files

nixos/networkd-dispatcher: use writeShellApplication to ease use

parent 26e4636d
Loading
Loading
Loading
Loading
+23 −15
Original line number Diff line number Diff line
@@ -103,21 +103,29 @@ in

    services.networkd-dispatcher.extraArgs =
      let
        scriptDir = pkgs.symlinkJoin {
          name = "networkd-dispatcher-script-dir";
          paths = lib.mapAttrsToList (
        scriptDir = pkgs.runCommand "networkd-dispatcher-script-dir" { } (
          ''
            mkdir $out
          ''
          + (lib.concatStrings (
            lib.mapAttrsToList (
              name: cfg:
            (map (
              state:
              pkgs.writeTextFile {
              (lib.concatStrings (
                map (state: ''
                  mkdir -p $out/${state}.d
                  ln -s ${
                    lib.getExe (
                      pkgs.writeShellApplication {
                        inherit name;
                        text = cfg.script;
                destination = "/${state}.d/${name}";
                executable = true;
                      }
            ) cfg.onState)
          ) cfg.rules;
        };
                    )
                  } $out/${state}.d/${name}
                '') cfg.onState
              ))
            ) cfg.rules
          ))
        );
      in
      [
        "--verbose"