Flake for my NixOS devices
1{...}: {
2 config,
3 lib,
4 pkgs,
5 ...
6}: {
7 options.cow.utils = {
8 enable =
9 (lib.mkEnableOption "Handy utilities to have")
10 // {
11 default = true;
12 };
13 batAliases =
14 (lib.mkEnableOption "Aliases for bat commands in the shell")
15 // {
16 default = true;
17 };
18 };
19
20 config = lib.mkIf config.cow.utils.enable {
21 home.packages = with pkgs;
22 [
23 binutils
24 usbutils
25 qrencode
26 nmap
27 file
28 procfd
29 dust
30 zip
31 inputs.gh-grader-preview.packages.${pkgs.system}.default
32 libqalculate
33 p7zip
34 poop
35 file
36 screen
37 util-linux
38 inetutils
39 just
40 man-pages
41 htop
42 dig
43 doggo
44
45 hyfetch
46 fastfetch
47 ]
48 ++ lib.optional config.cow.gdi.enable wev;
49
50 home.shellAliases = lib.mkIf config.cow.utils.batAliases {
51 cat = "bat";
52 man = "batman";
53 bg = "batgrep";
54 bdiff = "batdiff";
55 };
56
57 programs.bat = {
58 enable = true;
59 syntaxes = {
60 nushell.src = ../res/bat-nushell.sublime-syntax.yaml;
61 };
62 extraPackages = with pkgs.bat-extras; [
63 batdiff
64 batman
65 batgrep
66 batwatch
67 ];
68 };
69
70 programs.hyfetch = {
71 enable = true;
72 settings = {
73 backend = "fastfetch";
74 color_align = {
75 custom_colors = [];
76 fore_back = null;
77 mode = "horizontal";
78 };
79 distro = null;
80 light_dark = "dark";
81 lightness = 0.5;
82 mode = "rgb";
83 preset = "gay-men";
84 pride_month_disable = false;
85 pride_month_shown = [];
86 };
87 };
88 };
89}