81 lines
1.5 KiB
Nix
81 lines
1.5 KiB
Nix
{
|
|
pkgs,
|
|
inputs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
{
|
|
environment.systemPackages =
|
|
with pkgs;
|
|
let
|
|
# kicad
|
|
kicad = pkgs.kicad.override {
|
|
addons = with pkgs.kicadAddons; [
|
|
kikit
|
|
kikit-library
|
|
];
|
|
};
|
|
|
|
# binwalk v3 on 24.11
|
|
sys_ver = config.system.nixos.release;
|
|
unstablepkgs = inputs.nixpkgs-unstable.legacyPackages.${pkgs.system};
|
|
binwalkv3 = if lib.versionOlder "25.05" sys_ver then binwalk else unstablepkgs.binwalk;
|
|
in
|
|
[
|
|
# general
|
|
cmake
|
|
gcc
|
|
gef
|
|
gdb
|
|
binutils
|
|
binwalkv3
|
|
clang
|
|
clang-tools
|
|
direnv
|
|
sops
|
|
nil
|
|
nixpkgs-fmt
|
|
nix-index
|
|
kicad
|
|
kikit
|
|
freecad-wayland
|
|
imhex
|
|
python313Full
|
|
nixfmt-rfc-style
|
|
treefmt
|
|
android-tools
|
|
bacon
|
|
];
|
|
|
|
# android stuff
|
|
services.udev.packages = [
|
|
pkgs.android-udev-rules
|
|
];
|
|
# Wireshark
|
|
programs.wireshark = {
|
|
enable = true;
|
|
package = pkgs.wireshark;
|
|
};
|
|
users.users."0xa".extraGroups = [ "wireshark" ];
|
|
|
|
## direnv
|
|
programs.bash.interactiveShellInit = ''
|
|
eval "$(direnv hook bash)"
|
|
'';
|
|
programs.zsh.interactiveShellInit = ''
|
|
eval "$(direnv hook zsh)"
|
|
'';
|
|
programs.fish.interactiveShellInit = ''
|
|
direnv hook fish | source
|
|
'';
|
|
|
|
# nix options for derivations to persist garbage collection
|
|
nix.extraOptions = ''
|
|
keep-outputs = true
|
|
keep-derivations = true
|
|
'';
|
|
environment.pathsToLink = [
|
|
"/share/nix-direnv"
|
|
];
|
|
}
|