]> Git — Sourcephile - julm/julm-nix.git/blob - shell.nix
use/alt(urxvt): re-enable as alternative
[julm/julm-nix.git] / shell.nix
1 {
2 pkgs,
3 inputs,
4 system,
5 nixpkgsPath,
6 shellHook ? "",
7 ...
8 }:
9 pkgs.mkShell {
10 name = "shell";
11 src = null;
12 #preferLocalBuild = true;
13 #allowSubstitutes = false;
14 buildInputs = [
15 (pkgs.nixos [ ]).nixos-install
16 pkgs.gitMinimal
17 pkgs.git-crypt
18 pkgs.gnumake
19 pkgs.gnupg
20 pkgs.gptfdisk
21 pkgs.nix-output-monitor
22 pkgs.nixfmt-rfc-style
23 pkgs.pinentry-curses
24 pkgs.zfs
25 ];
26 #enableParallelBuilding = true;
27 NIX_PATH = pkgs.lib.concatStringsSep ":" [
28 "nixpkgs=${nixpkgsPath}"
29 "nixpkgs-overlays=${pkgs.writeText "overlays.nix" ''
30 import ${builtins.path { path = inputs.self + "/nixpkgs"; }}/overlays.nix {
31 system = "${system}";
32 # FixMe(correctness): use flake-compat's inputs if it is ever needed.
33 inputs = {};
34 }
35 ''}"
36 "home-manager=${inputs.home-manager}"
37 ];
38 shellHook = ''
39 echo >&2 "nix: running shellHook"
40 PATH="${inputs.home-manager.packages.${system}.default}/bin:$PATH"
41 PASSWORD_STORE_DIR=$PWD
42 nix-store --add-root nixpkgs.root --indirect --realise ${nixpkgsPath}
43 ${shellHook}
44 '';
45 }