about summary refs log tree commit diff
path: root/pkgs/profpatsch/nix-tools.nix
blob: 0ea3fc00618d105b070884269bd40dc8ae039f32 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{ pkgs, writeExecline, backtick, runblock, getBins }:

let
  bins = getBins pkgs.nix [ "nix-build" "nix-instantiate" ];

  nix-run = writeExecline "nix-run" { argMode = "env"; } [
    (backtick {
      var = "storepath";
      cmd = [ runblock "1" bins.nix-build ];
    })
    runblock "-r" "2" "exec" "$storepath"
  ];

  nix-eval = writeExecline "nix-eval" {} [
    bins.nix-instantiate
      "--read-write-mode"
      "--eval"
      "--strict"
      "$@"
  ];

in {
  inherit
    nix-run
    nix-eval
    ;
}