summaryrefslogtreecommitdiff
path: root/modules/basic-tools/nix.nix
blob: 0b1b8ea9b0a63047f7668b993f62b871fb2cc190 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{ lib, pkgs, inputs, ... }: {

  nix = {
    extraOptions = ''
    experimental-features = nix-command flakes
    narinfo-cache-negative-ttl = 0
    '';
  };

  # nix output-monitor
  environment.systemPackages = [ pkgs.nix-output-monitor ];

  # override default nix shell nixpkgs# behaviour to use current flake lock
  nix.registry =
    let flakes = lib.filterAttrs (_name: value: value ? outputs) inputs.self.inputs;
    in builtins.mapAttrs (_name: v: { flake = v; }) flakes;

  nix.nixPath = lib.mapAttrsToList (name: value: "${name}=${value.outPath}") inputs.self.inputs;
}