-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathshell.nix
25 lines (25 loc) · 950 Bytes
/
shell.nix
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
# Shell for bootstrapping flake-enabled nix and other tooling
{ pkgs ? # If pkgs is not defined, instanciate nixpkgs from locked commit
let
lock =
(builtins.fromJSON (builtins.readFile ./flake.lock)).nodes.nixpkgs.locked;
nixpkgs = fetchTarball {
url = "https://github.com/nixos/nixpkgs/archive/${lock.rev}.tar.gz";
sha256 = lock.narHash;
};
in
import nixpkgs { overlays = [ ]; }
, ...
}: {
default = pkgs.mkShell {
NIX_CONFIG =
"extra-experimental-features = nix-command flakes repl-flake";
nativeBuildInputs = with pkgs; [
nix # Powerful package manager that makes package management reliable and reproducible
home-manager # A Nix-based user environment configurator
sops # Simple and flexible tool for managing secrets
gnupg # Modern release of the GNU Privacy Guard, a GPL OpenPGP implementation
age # Modern encryption tool with small explicit keys
];
};
}