My Nix Configuration
1{
2 pkgs,
3 lib,
4 config,
5 ...
6}:
7let
8 inherit (lib) mkDefault mkEnableOption;
9 cfg = config.py.profiles.cli;
10in
11{
12 options.py.profiles.cli.enable = mkEnableOption "CLI Profile";
13 config = lib.mkIf cfg.enable {
14 py.profiles.base.enable = true;
15 py.programs = {
16 bat.enable = mkDefault true;
17 direnv.enable = mkDefault true;
18 fish.enable = mkDefault true;
19 fzf.enable = mkDefault true;
20 git = {
21 enable = mkDefault true;
22 gh.enable = mkDefault true;
23 lazygit.enable = mkDefault true;
24 };
25 gpg.enable = mkDefault true;
26 helix.enable = mkDefault false;
27 nix-index.enable = mkDefault true;
28 nushell.enable = mkDefault false;
29 ssh.enable = mkDefault true;
30 starship.enable = mkDefault true;
31 wakatime.enable = mkDefault true;
32 zoxide.enable = mkDefault true;
33 };
34 catppuccin = {
35 btop.enable = true;
36 glamour.enable = true;
37 };
38 programs = {
39 eza = {
40 enable = true;
41 icons = "auto";
42 git = true;
43 enableBashIntegration = false;
44 enableIonIntegration = false;
45 };
46 btop = {
47 enable = true;
48 };
49 };
50 xdg.configFile = {
51 "rbw/config.json".source = ./rbw-config.json;
52 };
53 home.packages = with pkgs; [
54 btrfs-progs
55 fd
56 fzf
57 glow
58 gnupg
59 nix-search
60 pinentry-qt
61 rbw
62 rsync
63 xdg-utils
64 ];
65 };
66}