My Nix Configuration
1{
2 pkgs,
3 lib,
4 config,
5 ...
6}:
7let
8 cfg = config.py.profiles.desktop;
9 inherit (lib) mkIf mkDefault mkEnableOption;
10in
11{
12 options.py.profiles.desktop = {
13 enable = mkEnableOption "Desktop Config";
14 };
15 config = mkIf cfg.enable {
16 py.profiles.base.enable = true;
17 py.profiles.cli.enable = true;
18 py.profiles.gui.enable = true;
19 py.profiles.development.enable = true;
20 programs.mpv = {
21 enable = mkDefault true;
22 scripts = with pkgs.mpvScripts; [
23 videoclip
24 mpris
25 modernz
26 thumbfast
27 ];
28 config = {
29 osc = false;
30 keep-open = true;
31 };
32 scriptOpts = {
33 modernz.greenandgrumpy = true;
34 videoclip.preset = "medium";
35 videoclip.video_folder_path = "~/Videos/mpv-clips/";
36 videoclip.video_width = 1920;
37 videoclip.video_height = 1080;
38 };
39 };
40 home.packages = with pkgs; [
41 # keep-sorted start
42 archipelago
43 brightnessctl
44 jellyfin-tui
45 keepassxc
46 poptracker
47 thunderbird
48 wl-clipboard-rs
49 yt-dlp
50 zotero
51 # keep-sorted end
52 ];
53 services.easyeffects.enable = mkDefault true;
54 };
55}