-{ pkgs, inputs, system, ... }:
+{
+ pkgs,
+ inputs,
+ system,
+ nixpkgsPath,
+ shellHook ? "",
+ ...
+}:
pkgs.mkShell {
name = "shell";
src = null;
#preferLocalBuild = true;
#allowSubstitutes = false;
buildInputs = [
- (pkgs.nixos []).nixos-install
+ (pkgs.nixos [ ]).nixos-install
+ pkgs.git-crypt
+ pkgs.gnumake
+ pkgs.gnupg
+ pkgs.gptfdisk
+ pkgs.nixfmt-rfc-style
+ pkgs.pinentry-curses
+ pkgs.zfs
];
#enableParallelBuilding = true;
- PASSWORD_STORE_DIR = "pass";
NIX_PATH = pkgs.lib.concatStringsSep ":" [
- "nixpkgs=${inputs.nixpkgs}"
- "nixpkgs-overlays=${inputs.self}/nixpkgs/overlays.nix"
+ "nixpkgs=${nixpkgsPath}"
+ "nixpkgs-overlays=${builtins.path { path = inputs.self + "/nixpkgs"; }}/overlays.nix"
"home-manager=${inputs.home-manager}"
];
shellHook = ''
echo >&2 "nix: running shellHook"
PATH="${inputs.home-manager.defaultPackage.${system}}/bin:$PATH"
+ PASSWORD_STORE_DIR=$PWD
+ nix-store --add-root nixpkgs.root --indirect --realise ${nixpkgsPath}
+ ${shellHook}
'';
}