aboutsummaryrefslogtreecommitdiff
path: root/home/mun/default.nix
blob: 5fa0c4820658af98373d519d4085a9f2f95773b9 (plain)
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
{
  pkgs,
  rice ? "nord-blue",
  ...
}: {
  imports = [
    ./programs/zsh.nix
    ./programs/ssh.nix
    ./programs/git.nix
    ../rices/${rice}
  ];

  nixowos = {
    enable = true;
    overlays = {
      enable = true;
      nixos-icons = true;
    };
    os-release = {
      enable = true;
      changeName = true;
    };
  };

  home = {
    username = "mun";
    homeDirectory = "/home/mun";
    stateVersion = "25.11";

    packages = with pkgs; [
      # Rust toolchain (via fenix)
      (fenix.complete.withComponents [
        "cargo"
        "clippy"
        "rust-src"
        "rustc"
        "rustfmt"
      ])
      rust-analyzer

      # Python
      ruff

      # Applications
      discord
      spotify
      openrocket
      kicad

      # Utilities
      pay-respects
      zathura
      ripgrep
      fd
      git
      lazygit
      tree-sitter
      gcr
      perl
      syncthing
      sshfs
      easyeffects

      # CLI Tools
      bat
      tealdeer
      claude-code

      # Fun
      peaclock
      kdePackages.kdenlive
      dwarf-fortress
      dwarf-fortress-packages.themes.spacefox
      tetris
      minefair

      # Documents & Creative
      thunderbird
      libreoffice
      texstudio
      krita
      aseprite
      audacity

      # Network
      clipman
      xclip
      qbittorrent

      # Gaming
      godotPackages_4_5.godot
      prismlauncher
      vlc

      # Editors
      obsidian
      vscodium
      peazip

      # Wine/Compatibility
      wine
      bottles
      lutris

      # File manager
      xfce.thunar

      # TeX Live
      (texlive.combine {
        inherit (texlive) scheme-full;
        notestex = texlivePackages.notestex;
        screenplay = texlivePackages.screenplay;
      })

      # RetroArch
      (retroarch.withCores (cores:
        with cores; [
          fceumm
          mgba
          gambatte
          sameboy
        ]))
    ];

    sessionVariables = {
      EDITOR = "nvim";
      VISUAL = "nvim";
    };
  };
}