aboutsummaryrefslogtreecommitdiff
path: root/home/mun/default.nix
blob: 52451d98e86e3f759f4aaf06c16964560af7c56d (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
{
  pkgs,
  rice ? "nord-blue",
  ...
}: {
  imports = [
    ./programs/zsh.nix
    ./programs/ssh.nix
    ./programs/git.nix
    ./programs/nvim.nix
    ./programs/nixcord.nix
    ./programs/browser.nix
  ];

  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
      spotify
      openrocket
      kicad
      evolution
      signal-desktop
      famistudio
      tor-browser

      # Utilities
      zathura
      ripgrep
      fd
      git
      lazygit
      tree-sitter
      gcr
      perl
      syncthing
      sshfs
      alacritty
      protonup-qt

      # CLI Tools
      bat
      tealdeer
      fastfetch

      # Fun
      kdePackages.kdenlive
      dwarf-fortress
      tetris
      minefair

      # Documents & Creative
      libreoffice
      texstudio
      krita
      aseprite
      audacity

      # Network
      clipman
      xclip
      qbittorrent

      # Gaming
      prismlauncher
      vlc

      # Editors
      obsidian
      vscodium
      peazip

      # Wine/Compatibility
      wine

      # File manager
      xfce.thunar

      # TeX Live
      (texlive.combine {
        inherit (texlive) scheme-full;
        notestex = texlivePackages.notestex;
        screenplay = texlivePackages.screenplay;
        # scpzine = pkgs.scpzine-texlive; # Commented out until i can push the fix to remote from home
      })

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

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