-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathshell.nix
More file actions
28 lines (24 loc) · 795 Bytes
/
shell.nix
File metadata and controls
28 lines (24 loc) · 795 Bytes
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
28
let
sources = import ./nix/sources.nix;
pkgs = import sources.nixpkgs {};
hcloud = pkgs.callPackage nix/hcloud.nix {};
isMacOS = builtins.match ".*-darwin" pkgs.stdenv.hostPlatform.system != null;
in pkgs.mkShell rec {
name = "dart";
buildInputs = with pkgs; [
pkgs.dart
pkgs.openssl
pkgs.gnupg # For GPG commit signing
pkgs.pinentry-curses # For GPG passphrase entry (terminal-based)
] ++ (if !isMacOS then [
pkgs.openssh
] else []);
shellHook = ''
# Set up GPG environment for commit signing
export GPG_TTY=$(tty)
# Note: GPG tests create their own temporary GNUPGHOME
# For real GPG signing, you'll need to set up keys:
# gpg --full-generate-key
# git config --global user.signingkey YOUR_KEY_ID
'';
}