61 lines
1.6 KiB
Nix
61 lines
1.6 KiB
Nix
{
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
featureBundler =
|
|
featuresDir:
|
|
map (name: featuresDir + "/${name}") (builtins.attrNames (builtins.readDir featuresDir));
|
|
in
|
|
{
|
|
imports = (featureBundler ./bundles) ++ (featureBundler ./features);
|
|
|
|
agenix.enable = lib.mkDefault true;
|
|
fonts.enable = lib.mkDefault true;
|
|
home-manager.enable = lib.mkDefault true;
|
|
localisation.enable = lib.mkDefault true;
|
|
network.enable = lib.mkDefault true;
|
|
nh.enable = lib.mkDefault true;
|
|
nix-settings.enable = lib.mkDefault true;
|
|
nixpkgs.enable = lib.mkDefault true;
|
|
nixvim.enable = lib.mkDefault true;
|
|
syncthing.enable = lib.mkDefault true;
|
|
systemd-boot.enable = lib.mkDefault true;
|
|
tailscale.enable = lib.mkDefault true;
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
# keep-sorted start
|
|
bottom # top
|
|
broot # large directory browser
|
|
dogdns # dns
|
|
fd # find
|
|
fselect # find with sql syntax
|
|
fx # json processor and viewer
|
|
fzf # fuzzy finder
|
|
glow # markdown viewer
|
|
gping # pretty ping
|
|
grex # regular expression generator
|
|
hexyl # hexadecimal viewer
|
|
hyperfine # benchmarking tool
|
|
keep-sorted # alphabetical formatter
|
|
lazygit # git tui
|
|
mprocs # run long running commands and monitor output
|
|
navi # cheatsheet browser
|
|
nb # note taking
|
|
nixfmt-rfc-style # nix file formatting
|
|
nom # stylistic nix dependency graphs
|
|
procs # ps
|
|
ripgrep-all # grep
|
|
ripunzip # unzip
|
|
sd # sed
|
|
slides # presentations
|
|
ticker # stock ticker
|
|
tldr # cheat sheets
|
|
tmpmail # temporary email address
|
|
tt # typing test
|
|
wtfutil # terminal homepage
|
|
xh # curl
|
|
# keep-sorted end
|
|
];
|
|
}
|