-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathdevshell.nix
More file actions
75 lines (72 loc) · 1.67 KB
/
devshell.nix
File metadata and controls
75 lines (72 loc) · 1.67 KB
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
{ inputs, ... }:
{
perSystem =
{ system, ... }:
let
pkgs = import inputs.nixpkgs {
inherit system;
config.allowUnfree = true;
};
in
{
devShells.default = pkgs.mkShell {
packages =
with pkgs;
[
# Basic nix tools
nix
nixos-rebuild
home-manager
# Git and git-crypt
git
git-crypt
gnupg
gpg-tui
# Shells
fish
bash
# Config tools
dconf2nix
compose2nix
# Network tools
bind
curl
iperf3
mtr
netcat-gnu
nmap
tcpdump
traceroute
wget
whois
wireshark-cli # tshark
# System tools
coreutils
findutils
gzip
zstd
# Text editors
micro
# Diagnostics
inxi
pciutils
usbutils
lshw
# AI
github-copilot-cli
]
++ [
inputs.bonk.packages.${system}.default # bonk - NixOS workflow multitool
];
NIX_CONFIG = "experimental-features = nix-command flakes";
shellHook = ''
clear
echo "Development shell initialized"
echo -e "Run '\033[1;34mbonk switch\033[0m' to rebuild your system"
# Set FLAKE to the current working directory
export FLAKE="$PWD"
echo -e "FLAKE environment variable is set to: \033[1;34m$FLAKE\033[0m"
'';
};
};
}