From 2a01cfddc27269bea21c70bdfd93270309e4f565 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 4 Jun 2025 21:11:33 +0800 Subject: [PATCH 001/373] docs(README.md): remove 0.2.0 from README --- README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.md b/README.md index d18bf6c..d90219b 100644 --- a/README.md +++ b/README.md @@ -18,9 +18,6 @@ - Network shares - Federation with ActivityPub - Wakapi -- 0.2.0 - - Provision Apollo - - Fix all NVF errors # Modules From 6a1fbf73f121134378d56c4067613c6d023d05e2 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 4 Jun 2025 21:15:32 +0800 Subject: [PATCH 002/373] docs(README.md): add todos --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d90219b..0d50a2a 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,12 @@ ## To-do -- [ ] Implement an status bar for the desktop configuration - [ ] Copy over ~/.ssh/id_ed25519 and zellij status bar plugin confirmation +- [ ] Migrate immich to apollo, point to helios +- [ ] Migrate LibreChat to apollo, maintain db +- [ ] Figure out wakapi +- [ ] Add forgejo +- [ ] Add simple blog ## Versions @@ -18,6 +22,11 @@ - Network shares - Federation with ActivityPub - Wakapi + - Add a way to define services per host and refer to them by hostname +- 0.3.0 + - Integration tests for all services + - Easier way to add proxyPass, web server independent + - Migrate services from helios # Modules From e2669f660cf4e8ba4a1c810c77a4c9dcea57e68e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 4 Jun 2025 21:30:45 +0800 Subject: [PATCH 003/373] fix(nginx): ensure https requests also go to the default --- modules/nixos/server/web-servers/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index cfe2e49..b66a34f 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -38,6 +38,8 @@ in }; }; ${config.system.hostname} = { + forceSSL = true; + enableACME = true; locations."/" = { return = "200 'It works! Date: Thu, 5 Jun 2025 08:30:01 +0800 Subject: [PATCH 004/373] feat(packages/rebuild): add support for --all flag --- packages/rebuild/default.nix | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index adc7bd3..fa7ccf9 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -1,8 +1,19 @@ { pkgs, ... }: pkgs.writeShellScriptBin "rebuild" # sh '' + if [ ! -f "flake.nix" ]; then + echo "Error: flake.nix not found in the current directory. Exiting." + exit 1 # Indicate an error + fi + + #TODO: get hostnames from flake nixosConfigurations + TEST_SHELL=false REMOTE_HOSTS=() + ALL_HOSTS=("nemesis" "mellinoe" "apollo") + REBUILDING_ALL=false + + CURRENT_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) while [[ $# -gt 0 ]]; do case "$1" in @@ -10,19 +21,26 @@ pkgs.writeShellScriptBin "rebuild" # sh TEST_SHELL=true shift ;; + --all | -a) + reachable_hosts=() + for host in ''${ALL_HOSTS[@]}; do + if ping -c 1 -W 1 "$host" > /dev/null 2>&1 ; then + reachable_hosts+=("$host") + fi + done + REMOTE_HOSTS=(''${reachable_hosts[@]}) + REBUILDING_ALL=true + shift + ;; *) - REMOTE_HOSTS+=("$1") - echo ''${REMOTE_HOSTS[@]} + if [ !REBUILDING_ALL ]; then + REMOTE_HOSTS+=("$1") + fi shift ;; esac done - if [ ! -f "flake.nix" ]; then - echo "Error: flake.nix not found in the current directory. Exiting." - exit 1 # Indicate an error - fi - git add . if [ ''${#REMOTE_HOSTS[@]} -gt 0 ]; then @@ -36,8 +54,6 @@ pkgs.writeShellScriptBin "rebuild" # sh exit 0 fi - CURRENT_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) - if "$TEST_SHELL"; then nh os test . || { echo "Error: nixos-rebuild switch failed. Check the output for details." From f1324f15ed3d0e407e13772ae2d0b745666f0b4e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 5 Jun 2025 16:23:32 +0800 Subject: [PATCH 005/373] refactor(nginx): add proxies option --- modules/nixos/server/web-servers/default.nix | 59 +++++++++++--------- systems/x86_64-linux/apollo/default.nix | 10 ++++ 2 files changed, 44 insertions(+), 25 deletions(-) diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index b66a34f..55a63d8 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -6,6 +6,29 @@ in options.server.web-servers = { nginx = { enable = lib.mkEnableOption "the Nginx server"; + proxies = lib.mkOption { + type = + with lib.types; + listOf (submodule { + options = { + source = lib.pantheon.mkStrOption; + target = lib.pantheon.mkStrOption; + extraConfig = lib.mkOption { + type = attrs; + default = { }; + description = "Will be added to locations.\"/\""; + }; + }; + }); + default = [ ]; + example = [ + { + source = "chat.bwfiq.com"; + target = "http://helios:3080"; + extraConfig = { }; + } + ]; + }; }; }; config = lib.mkMerge [ @@ -22,32 +45,18 @@ in ]; services.nginx = { enable = true; - virtualHosts = { - "chat.bwfiq.com" = { - forceSSL = true; - enableACME = true; - locations."/" = { - proxyPass = "http://helios:3080"; + virtualHosts = builtins.listToAttrs ( + builtins.map (proxy: { + name = proxy.source; + value = { + forceSSL = true; + enableACME = true; + locations."/" = { + proxyPass = proxy.target; + } // proxy.extraConfig; }; - }; - "il.bwfiq.com" = { - forceSSL = true; - enableACME = true; - locations."/" = { - proxyPass = "http://helios:2283"; - }; - }; - ${config.system.hostname} = { - forceSSL = true; - enableACME = true; - locations."/" = { - return = "200 'It works! Date: Thu, 5 Jun 2025 18:37:12 +0800 Subject: [PATCH 006/373] feat(users/rafiq): add email configuration --- homes/x86_64-linux/rafiq/default.nix | 45 +++++++++++++++++++++++++++- modules/nixos/system/secrets.nix | 2 ++ secrets/secrets.yaml | 6 ++-- 3 files changed, 50 insertions(+), 3 deletions(-) diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 1547e1d..46e45aa 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -1,5 +1,48 @@ -{ pkgs, inputs, ... }: { + pkgs, + inputs, + osConfig, + ... +}: +{ + accounts = { + email = { + maildirBasePath = "mail"; + accounts = { + "rafiq@rrv.sh" = { + primary = true; + address = "rafiq@rrv.sh"; + maildir.path = "rafiq@rrv.sh"; + userName = "rafiq@rrv.sh"; + realName = "Mohammad Rafiq"; + passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/personalEmailPassword".path}"; + imap = { + host = "imap.forwardemail.net"; + port = 993; + }; + smtp = { + host = "smtp.forwardemail.net"; + port = 465; + }; + }; + "mohammadrafiq@rrv.sh" = { + address = "mohammadrafiq@rrv.sh"; + maildir.path = "mohammadrafiq@rrv.sh"; + userName = "mohammadrafiq@rrv.sh"; + realName = "Mohammad Rafiq"; + passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/workEmailPassword".path}"; + imap = { + host = "imap.forwardemail.net"; + port = 993; + }; + smtp = { + host = "smtp.forwardemail.net"; + port = 465; + }; + }; + }; + }; + }; cli = { shell = "zsh"; finder = "fzf"; diff --git a/modules/nixos/system/secrets.nix b/modules/nixos/system/secrets.nix index 1ad952f..3bf53fc 100644 --- a/modules/nixos/system/secrets.nix +++ b/modules/nixos/system/secrets.nix @@ -11,6 +11,8 @@ "keys/telegram_bot" = { }; "misc/cvt-jira-link" = { }; "rafiq/hashedPassword".neededForUsers = true; + "rafiq/personalEmailPassword" = { }; + "rafiq/workEmailPassword" = { }; "librechat/creds_key" = { }; "librechat/creds_iv" = { }; "librechat/jwt_secret" = { }; diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index c1749e0..765c41c 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -1,5 +1,7 @@ rafiq: hashedPassword: ENC[AES256_GCM,data:SzzSPg5Ze4H+fVl6ZvAULO9FDfRehusmP6uldT4Ok2/9ZeOp9r4LgjKajoiw2A1DWD1zQ1GQwMCHKpeZjCC4rBUNWW5DMcBUJA==,iv:KktKuqr0JNhjeJIlIgkoAv6mP2dQlfQrXiIOASLPkbw=,tag:g9LarkT6EjDrH+dXSjMwPg==,type:str] + personalEmailPassword: ENC[AES256_GCM,data:TGJtDO++QcWqU1AbLe4=,iv:RjLRmq7fdbVRbv0M8ZQHyCK5l95JW3TRjN5w9Ci92zs=,tag:JibrH863smajCXESwhAR4g==,type:str] + workEmailPassword: ENC[AES256_GCM,data:++Gm9dIhmqEQz3+Ej9c=,iv:dAvyyLZvsHcjudU4gdU0iyWYDjjhe49UC2swHh++ldc=,tag:6o1DyJk5WOFO/Hfr0uMKSw==,type:str] keys: tailscale: ENC[AES256_GCM,data:sW64TZY/GtWD+8KOQDHYvnwzWiqOlsJ5782utaxVwUaiWa18hU+Ppd3gp/8f0R3rK6gskaPC22iuCuzvuA==,iv:TN2zWKgU6eXH3uaL7Ci2JKmo8Ql4DUSWS3Lxfnag7j4=,tag:s5of4wLdCp6b5VMGWLLxvw==,type:str] gemini: ENC[AES256_GCM,data:t4XTzJLMbHBG7LNaWMwO0YyYHREYOp4Zn95Kwshunnpwq9ezVv+0,iv:ZHq1ytak7Qy5a/zHghwEIWRinDWAkk2Vxw4iu/Q/UPk=,tag:Wyk0FqLTOWelznWHg/anxg==,type:str] @@ -25,7 +27,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-05-29T12:08:02Z" - mac: ENC[AES256_GCM,data:stUFIwqeYA3DV+41Su9xnvee5AzzwT7A2XEBeIEtp+E/LW5UdBd9ZIABglMswezqdT3i4zttBHgampymUQM/J9knUdAsJzEusappH+qnX/XD4LbNWNga+hK5yMWngf79hlI8EVt2IXYKIPmkL3LI6uDJf/+Wd0u/LX6MD3hOgM0=,iv:5JuzuUkoGgm1rBhOvDd4iOWb0X+aJwJwGHh8BQ63wnk=,tag:WNiLCzjOYy5h2Yss4OM5Tw==,type:str] + lastmodified: "2025-06-05T10:02:05Z" + mac: ENC[AES256_GCM,data:V0mLHIKpivYFCLwdaFE5+z2fq6EsvuYw6GAk4CWRDxfdLz+TBRdZTf3qCICK6ArxL0Cy6U/yspCEWyDObKdLQdZ3DUgcW/I3jZWvTeJwubQpQx+wP0GYRFjYHYH16gj3iCLUekYhjXZXQz1x3ANyZExtynP7zu+sWHoQpeQfNv8=,iv:Iid240sxUSRfzwUIQeZfnspN1GqI0e410wQnlCH5xkk=,tag:Fs2+fZUjvLDqjJ5xgPFRwQ==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From c51bf01f778d5df19b8bc8475a01a3f314dde2d4 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 5 Jun 2025 19:14:39 +0800 Subject: [PATCH 007/373] feat(homes/rafiq): add thunderbird --- homes/x86_64-linux/rafiq/default.nix | 58 ++++++++++++++-------------- 1 file changed, 28 insertions(+), 30 deletions(-) diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 46e45aa..5599a79 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -4,6 +4,24 @@ osConfig, ... }: +let + mkEmailAccount = address: { + inherit address; + maildir.path = address; + userName = address; + realName = "Mohammad Rafiq"; + passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/personalEmailPassword".path}"; + imap = { + host = "imap.forwardemail.net"; + port = 993; + }; + smtp = { + host = "smtp.forwardemail.net"; + port = 465; + }; + thunderbird.enable = true; + }; +in { accounts = { email = { @@ -11,35 +29,8 @@ accounts = { "rafiq@rrv.sh" = { primary = true; - address = "rafiq@rrv.sh"; - maildir.path = "rafiq@rrv.sh"; - userName = "rafiq@rrv.sh"; - realName = "Mohammad Rafiq"; - passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/personalEmailPassword".path}"; - imap = { - host = "imap.forwardemail.net"; - port = 993; - }; - smtp = { - host = "smtp.forwardemail.net"; - port = 465; - }; - }; - "mohammadrafiq@rrv.sh" = { - address = "mohammadrafiq@rrv.sh"; - maildir.path = "mohammadrafiq@rrv.sh"; - userName = "mohammadrafiq@rrv.sh"; - realName = "Mohammad Rafiq"; - passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/workEmailPassword".path}"; - imap = { - host = "imap.forwardemail.net"; - port = 993; - }; - smtp = { - host = "smtp.forwardemail.net"; - port = 465; - }; - }; + } // mkEmailAccount "rafiq@rrv.sh"; + "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; }; }; }; @@ -73,7 +64,10 @@ inputs.nixspect.packages."x86_64-linux".nixspect ]; - persistence."/persist/home/rafiq".directories = [ "repos" ]; + persistence."/persist/home/rafiq".directories = [ + "docs" + "repos" + ]; }; programs = { nh.enable = true; @@ -86,5 +80,9 @@ enable = true; nix-direnv.enable = true; }; + thunderbird.enable = true; + thunderbird.profiles.rafiq = { + isDefault = true; + }; }; } From 67b5913c242276233471cd7ee983202c671b655f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 5 Jun 2025 19:21:32 +0800 Subject: [PATCH 008/373] feat(homeModules/desktop): make default timeout for mako 10 seconds --- modules/home/desktop/notification-daemon/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/home/desktop/notification-daemon/default.nix b/modules/home/desktop/notification-daemon/default.nix index c6bb63f..bef691a 100644 --- a/modules/home/desktop/notification-daemon/default.nix +++ b/modules/home/desktop/notification-daemon/default.nix @@ -5,7 +5,9 @@ home.sessionVariables.NOTIFICATION_DAEMON = "mako"; services.mako = { enable = true; - settings = { }; + settings = { + default-timeout = 10000; + }; }; }) ]; From 73a92945086a46cc91fb156ef5879adb2edd0afa Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 6 Jun 2025 17:21:54 +0800 Subject: [PATCH 009/373] feat(homes/rafiq): add tor browser --- homes/x86_64-linux/rafiq/default.nix | 2 ++ systems/x86_64-linux/nemesis/default.nix | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 5599a79..9337801 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -59,6 +59,7 @@ in ripgrep devenv stremio + tor-browser pantheon.rebuild pantheon.edit inputs.nixspect.packages."x86_64-linux".nixspect @@ -67,6 +68,7 @@ in persistence."/persist/home/rafiq".directories = [ "docs" "repos" + ".tor project" ]; }; programs = { diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 5d29299..e907a0b 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -44,5 +44,12 @@ mountHelios = true; }; + services = { + tor = { + enable = true; + client.enable = true; + }; + }; + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; } From 264fa4d8a9b375fa81c523fb5adb7921b99f0227 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 6 Jun 2025 17:22:24 +0800 Subject: [PATCH 010/373] feat(homes/rafiq): persist sunshine state directory --- modules/home/desktop/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/home/desktop/default.nix b/modules/home/desktop/default.nix index 2a77588..6ffd427 100644 --- a/modules/home/desktop/default.nix +++ b/modules/home/desktop/default.nix @@ -26,5 +26,10 @@ ".local/share/Steam" ]; }) + (lib.mkIf osConfig.desktop.enableSunshine { + home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ + ".config/sunshine" + ]; + }) ]; } From c908ee136b0f2a48edbd0fb16016f27a3fd67d6e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 6 Jun 2025 17:56:22 +0800 Subject: [PATCH 011/373] feat(homeModules/desktop): add video players --- modules/home/cli/file-browser/default.nix | 9 +++--- modules/home/desktop/media-player/default.nix | 29 +++++++++++++++++++ modules/nixos/desktop/default.nix | 1 + systems/x86_64-linux/nemesis/default.nix | 1 + 4 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 modules/home/desktop/media-player/default.nix diff --git a/modules/home/cli/file-browser/default.nix b/modules/home/cli/file-browser/default.nix index 847d7e9..1385e21 100644 --- a/modules/home/cli/file-browser/default.nix +++ b/modules/home/cli/file-browser/default.nix @@ -8,11 +8,12 @@ settings = { mgr = { sort_by = "natural"; - prepend_keymap = [ + }; + opener = { + play = [ { - on = "l"; - run = "plugin smart-enter"; - desc = ""; + run = "vlc \"$@\""; + desc = "Open"; } ]; }; diff --git a/modules/home/desktop/media-player/default.nix b/modules/home/desktop/media-player/default.nix new file mode 100644 index 0000000..497356a --- /dev/null +++ b/modules/home/desktop/media-player/default.nix @@ -0,0 +1,29 @@ +{ + osConfig, + lib, + pkgs, + ... +}: +{ + config = lib.mkMerge [ + (lib.mkIf (osConfig.desktop.media-player == "vlc") { + home.packages = lib.singleton pkgs.vlc; + }) + (lib.mkIf (osConfig.desktop.media-player == "mpv") { + programs.mpv = { + enable = true; + package = pkgs.mpv-unwrapped.wrapper { + scripts = with pkgs.mpvScripts; [ + sponsorblock + ]; + mpv = pkgs.mpv-unwrapped.override { + waylandSupport = true; + }; + }; + config = { + profile = "high-quality"; + }; + }; + }) + ]; +} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 47ccd71..34f3b13 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -23,6 +23,7 @@ notification-daemon = lib.pantheon.mkStrOption; launcher = lib.pantheon.mkStrOption; status-bar = lib.pantheon.mkStrOption; + media-player = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; enableSteam = lib.mkEnableOption ""; enableVR = lib.mkEnableOption ""; diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index e907a0b..eefdf44 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -28,6 +28,7 @@ notification-daemon = "mako"; launcher = "fuzzel"; status-bar = "waybar"; + media-player = "vlc"; mainMonitor = { id = "desc:OOO AN-270W04K"; scale = "2"; From 3dd00fedf0f9bd090b42ce843eba68a69b321e6b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 6 Jun 2025 19:12:57 +0800 Subject: [PATCH 012/373] feat(vlc): add play next extension --- modules/home/desktop/media-player/default.nix | 1 + .../desktop/media-player/vlc-play-next.lua | 166 ++++++++++++++++++ modules/nixos/cli/default.nix | 5 + 3 files changed, 172 insertions(+) create mode 100644 modules/home/desktop/media-player/vlc-play-next.lua diff --git a/modules/home/desktop/media-player/default.nix b/modules/home/desktop/media-player/default.nix index 497356a..f803d63 100644 --- a/modules/home/desktop/media-player/default.nix +++ b/modules/home/desktop/media-player/default.nix @@ -8,6 +8,7 @@ config = lib.mkMerge [ (lib.mkIf (osConfig.desktop.media-player == "vlc") { home.packages = lib.singleton pkgs.vlc; + home.file.".local/share/vlc/lua/extensions/vlc-play-next.lua".source = ./vlc-play-next.lua; }) (lib.mkIf (osConfig.desktop.media-player == "mpv") { programs.mpv = { diff --git a/modules/home/desktop/media-player/vlc-play-next.lua b/modules/home/desktop/media-player/vlc-play-next.lua new file mode 100644 index 0000000..a33e5b9 --- /dev/null +++ b/modules/home/desktop/media-player/vlc-play-next.lua @@ -0,0 +1,166 @@ +function descriptor() + return { + title = "Play Next in Folder", + version = "1.0", + author = "Mindconstructor", + url = "http://www.videolan.org", + shortdesc = "Play Next in Folder", + description = "This extension plays the next media file in the directory of the last ended video file.", + capabilities = { "input-listener" }, + } +end + +function activate() + vlc.msg.dbg("[Play Next in Folder] Activated") +end + +function deactivate() + vlc.msg.dbg("[Play Next in Folder] Deactivated") +end + +local lastplayeditem = "" + +function meta_changed() + if vlc.playlist.status() == "stopped" then + local item = vlc.input.item() + if item then + lastplayeditem = item:uri() + end + end +end + +function playing_changed() + local item = vlc.input.item() + if item then + vlc.msg.dbg(item:uri()) + end +end + +function input_changed() + -- Trigger only when playback stops + if vlc.playlist.status() == "stopped" then + local uri = lastplayeditem + local path = vlc.strings.decode_uri(uri) + play_next_video_in_directory(path) + end +end + +function play_next_video_in_directory(current_path) + local folder_path = string.sub(string.match(current_path, "^(.*/)"), 9) + if not folder_path then + return + end + + local files = vlc.io.readdir(folder_path) + if not files then + return + end + + -- Filter for media files + files = filter_media_files(files) + + local current_file = string.match(current_path, ".*/([^/]+)$") + local next_file = nil + local found_current = false + + for _, file in ipairs(files) do + if found_current then + next_file = file + break + end + if file == current_file then + found_current = true + end + end + + if next_file then + local next_uri = "file:///" .. folder_path .. next_file + vlc.playlist.clear() + vlc.playlist.add({ { path = next_uri } }) + end +end + +function filter_media_files(files) + local media_files = {} + local media_extensions = { + -- Videoformate + "%.avi$", + "%.mkv$", + "%.mp4$", + "%.wmv$", + "%.flv%", + "%.mpeg$", + "%.mpg$", + "%.mov$", + "%.rm$", + "%.vob$", + "%.asf$", + "%.divx$", + "%.m4v$", + "%.ogg$", + "%.ogm$", + "%.ogv$", + "%.qt$", + "%.rmvb$", + "%.webm$", + "%.3gp$", + "%.3g2$", + "%.drc$", + "%.f4v$", + "%.f4p$", + "%.f4a$", + "%.f4b$", + "%.gifv$", + "%.mng$", + "%.mts$", + "%.m2ts$", + "%.ts$", + "%.mov$", + "%.qt$", + "%.mxf$", + "%.nsv$", + "%.roq$", + "%.svi$", + "%.viv$", + -- Audioformate + "%.mp3$", + "%.wav$", + "%.flac$", + "%.aac$", + "%.ogg$", + "%.wma$", + "%.alac$", + "%.ape$", + "%.ac3$", + "%.opus$", + "%.aiff$", + "%.aif$", + "%.amr$", + "%.au$", + "%.mka$", + "%.dts$", + "%.m4a$", + "%.m4b$", + "%.m4p$", + "%.mpc$", + "%.mpp$", + "%.mp+", + "%.oga$", + "%.spx$", + "%.tta$", + "%.voc$", + "%.ra$", + "%.mid$", + "%.midi$", + } + + for _, f in ipairs(files) do + for _, ext in ipairs(media_extensions) do + if string.match(f, ext) then + table.insert(media_files, f) + break + end + end + end + return media_files +end diff --git a/modules/nixos/cli/default.nix b/modules/nixos/cli/default.nix index ebbf824..cb84398 100644 --- a/modules/nixos/cli/default.nix +++ b/modules/nixos/cli/default.nix @@ -15,5 +15,10 @@ users.defaultUserShell = pkgs.zsh; environment.pathsToLink = [ "/share/zsh" ]; # enables completion } + { + environment.systemPackages = with pkgs; [ + p7zip + ]; + } ]; } From 2b15a62f545a2222dd733ae53b623a293cd71d29 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 6 Jun 2025 22:43:32 +0800 Subject: [PATCH 013/373] feat(nixosModules/server): add smb shares --- modules/nixos/server/default.nix | 20 ++++++++++++++++++++ modules/nixos/system/secrets.nix | 7 +++++++ secrets/secrets.yaml | 5 +++-- 3 files changed, 30 insertions(+), 2 deletions(-) diff --git a/modules/nixos/server/default.nix b/modules/nixos/server/default.nix index f1b6a89..6394320 100644 --- a/modules/nixos/server/default.nix +++ b/modules/nixos/server/default.nix @@ -68,6 +68,26 @@ "x-systemd.mount-timeout=0" ]; }; + fileSystems."/media/helios/rafiqcloud" = { + device = "//helios/rafiqcloud"; + fsType = "cifs"; + options = [ + "x-systemd.automount" + "x-systemd.requires=tailscaled.service" + "x-systemd.mount-timeout=0" + "credentials=${config.sops.templates."smb-credentials".path}" + ]; + }; + fileSystems."/media/helios/rafiqmedia" = { + device = "//helios/rafiqmedia"; + fsType = "cifs"; + options = [ + "x-systemd.automount" + "x-systemd.requires=tailscaled.service" + "x-systemd.mount-timeout=0" + "credentials=${config.sops.templates."smb-credentials".path}" + ]; + }; }) ]; } diff --git a/modules/nixos/system/secrets.nix b/modules/nixos/system/secrets.nix index 3bf53fc..2139afa 100644 --- a/modules/nixos/system/secrets.nix +++ b/modules/nixos/system/secrets.nix @@ -13,12 +13,19 @@ "rafiq/hashedPassword".neededForUsers = true; "rafiq/personalEmailPassword" = { }; "rafiq/workEmailPassword" = { }; + "rafiq/oldSMBCredentials" = { }; "librechat/creds_key" = { }; "librechat/creds_iv" = { }; "librechat/jwt_secret" = { }; "librechat/jwt_refresh_secret" = { }; "librechat/meili_master_key" = { }; }; + templates = { + "smb-credentials".content = '' + username=rafiq + password=${config.sops.placeholder."rafiq/oldSMBCredentials"} + ''; + }; }; environment.shellInit = # sh '' diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index 765c41c..10edfe1 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -2,6 +2,7 @@ rafiq: hashedPassword: ENC[AES256_GCM,data:SzzSPg5Ze4H+fVl6ZvAULO9FDfRehusmP6uldT4Ok2/9ZeOp9r4LgjKajoiw2A1DWD1zQ1GQwMCHKpeZjCC4rBUNWW5DMcBUJA==,iv:KktKuqr0JNhjeJIlIgkoAv6mP2dQlfQrXiIOASLPkbw=,tag:g9LarkT6EjDrH+dXSjMwPg==,type:str] personalEmailPassword: ENC[AES256_GCM,data:TGJtDO++QcWqU1AbLe4=,iv:RjLRmq7fdbVRbv0M8ZQHyCK5l95JW3TRjN5w9Ci92zs=,tag:JibrH863smajCXESwhAR4g==,type:str] workEmailPassword: ENC[AES256_GCM,data:++Gm9dIhmqEQz3+Ej9c=,iv:dAvyyLZvsHcjudU4gdU0iyWYDjjhe49UC2swHh++ldc=,tag:6o1DyJk5WOFO/Hfr0uMKSw==,type:str] + oldSMBCredentials: ENC[AES256_GCM,data:aY41trUJcvGa584H0A==,iv:3h9AZ33HXWT4D/vGMyy/o+TXyGg75Ixcj3+h2EskvIQ=,tag:dDo55h1ljOYLZBHn9bK7ew==,type:str] keys: tailscale: ENC[AES256_GCM,data:sW64TZY/GtWD+8KOQDHYvnwzWiqOlsJ5782utaxVwUaiWa18hU+Ppd3gp/8f0R3rK6gskaPC22iuCuzvuA==,iv:TN2zWKgU6eXH3uaL7Ci2JKmo8Ql4DUSWS3Lxfnag7j4=,tag:s5of4wLdCp6b5VMGWLLxvw==,type:str] gemini: ENC[AES256_GCM,data:t4XTzJLMbHBG7LNaWMwO0YyYHREYOp4Zn95Kwshunnpwq9ezVv+0,iv:ZHq1ytak7Qy5a/zHghwEIWRinDWAkk2Vxw4iu/Q/UPk=,tag:Wyk0FqLTOWelznWHg/anxg==,type:str] @@ -27,7 +28,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-05T10:02:05Z" - mac: ENC[AES256_GCM,data:V0mLHIKpivYFCLwdaFE5+z2fq6EsvuYw6GAk4CWRDxfdLz+TBRdZTf3qCICK6ArxL0Cy6U/yspCEWyDObKdLQdZ3DUgcW/I3jZWvTeJwubQpQx+wP0GYRFjYHYH16gj3iCLUekYhjXZXQz1x3ANyZExtynP7zu+sWHoQpeQfNv8=,iv:Iid240sxUSRfzwUIQeZfnspN1GqI0e410wQnlCH5xkk=,tag:Fs2+fZUjvLDqjJ5xgPFRwQ==,type:str] + lastmodified: "2025-06-06T13:37:24Z" + mac: ENC[AES256_GCM,data:WkWsBTMQcJlvTPjAVDP24CEvE68KJj9s762ks+xtQHLvtepq0upQrGkJ8li5JZfnwSBHJikgZCEZD/PIbthx5u6Z5LjGsHjYGzRMIuRh0vjloHBCc5awdl1B6v5ebTtM6eA+YgHeHT4BcyRReM4fpKBk4SedR84mnBnX/WxfGfE=,iv:DRABRFDYbOpqL7ZzJK/xJTbA9hsbE3iEvAx/Ugc7I10=,tag:mwN17/+gr6e7y53PxaJl8Q==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From 91902fa4dfc37c934a01943af3153f7f904e9f60 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 7 Jun 2025 13:08:42 +0800 Subject: [PATCH 014/373] fix(sunshine): amend porting --- modules/nixos/desktop/default.nix | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 34f3b13..badd341 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -50,26 +50,12 @@ environment.systemPackages = [ pkgs.android-tools ]; }) (lib.mkIf config.desktop.enableSunshine { - networking.firewall.allowedTCPPortRanges = [ - { - from = 47984; - to = 47990; - } - ]; - networking.firewall.allowedUDPPortRanges = [ - { - from = 47998; - to = 48000; - } - ]; - networking.firewall.allowedTCPPorts = [ 48010 ]; services.sunshine = { enable = true; capSysAdmin = true; openFirewall = true; settings = { sunshine_name = config.system.hostname; - port = 48989; # default origin_web_ui_allowed = "wan"; }; applications = { }; From 3aef240f5d224625383d18abc37336ad091ca12b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 7 Jun 2025 14:31:40 +0800 Subject: [PATCH 015/373] feat(librechat): provision apollo --- modules/nixos/server/web-apps/default.nix | 39 ++++++++++++----------- modules/nixos/system/secrets.nix | 1 + secrets/secrets.yaml | 5 +-- systems/x86_64-linux/apollo/default.nix | 2 +- 4 files changed, 25 insertions(+), 22 deletions(-) diff --git a/modules/nixos/server/web-apps/default.nix b/modules/nixos/server/web-apps/default.nix index 6c8453d..630a46c 100644 --- a/modules/nixos/server/web-apps/default.nix +++ b/modules/nixos/server/web-apps/default.nix @@ -25,40 +25,41 @@ in env = { HOST = "0.0.0.0"; ALLOW_REGISTRATION = "true"; - MONGO_URI = "mongodb://apollo:27017"; + NO_INDEX = "true"; + MONGO_URI = "mongodb://apollo:27017/LibreChat"; + DOMAIN_CLIENT = "https://chat.bwfiq.com"; + DOMAIN_SERVER = "https://chat.bwfiq.com"; + ENDPOINTS = "anthropic,agents,google"; }; credentials = { CREDS_KEY = config.sops.secrets."librechat/creds_key".path; CREDS_IV = config.sops.secrets."librechat/creds_iv".path; JWT_SECRET = config.sops.secrets."librechat/jwt_secret".path; JWT_REFRESH_SECRET = config.sops.secrets."librechat/jwt_refresh_secret".path; + OPENROUTER_KEY = config.sops.secrets."keys/openrouter".path; + GOOGLE_KEY = config.sops.secrets."keys/gemini".path; }; settings = { - version = "1.0.8"; + version = "1.1.4"; cache = true; + endpoints.custom = [ + { + name = "OpenRouter"; + apiKey = "\${OPENROUTER_KEY}"; + baseURL = "https://openrouter.ai/api/v1"; + models.default = [ "meta-llama/llama-3-70b-instruct" ]; + models.fetch = true; + titleConvo = true; + titleModel = "current_model"; + modelDisplayLabel = "OpenRouter"; + } + ]; interface = { privacyPolicy = { externalUrl = "https://librechat.ai/privacy-policy"; openNewTab = true; }; }; - endpoints = { - custom = [ - { - name = "OpenRouter"; - apiKey = "\${OPENROUTER_KEY}"; - baseURL = "https://openrouter.ai/api/v1"; - models = { - default = [ "meta-llama/llama-3-70b-instruct" ]; - fetch = true; - }; - titleConvo = true; - titleModule = "meta-llama/llama-3-70b-instruct"; - dropParams = [ "stop" ]; - modelDisplayLabel = "OpenRouter"; - } - ]; - }; }; }; }; diff --git a/modules/nixos/system/secrets.nix b/modules/nixos/system/secrets.nix index 2139afa..ce0cc40 100644 --- a/modules/nixos/system/secrets.nix +++ b/modules/nixos/system/secrets.nix @@ -4,6 +4,7 @@ defaultSopsFile = lib.snowfall.fs.get-file "secrets/secrets.yaml"; age.sshKeyPaths = [ "/persist/home/rafiq/.ssh/id_ed25519" ]; secrets = { + "keys/openrouter" = { }; "keys/tailscale" = { }; "keys/gemini" = { }; "keys/cvt-jira" = { }; diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index 10edfe1..3f71b01 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -4,6 +4,7 @@ rafiq: workEmailPassword: ENC[AES256_GCM,data:++Gm9dIhmqEQz3+Ej9c=,iv:dAvyyLZvsHcjudU4gdU0iyWYDjjhe49UC2swHh++ldc=,tag:6o1DyJk5WOFO/Hfr0uMKSw==,type:str] oldSMBCredentials: ENC[AES256_GCM,data:aY41trUJcvGa584H0A==,iv:3h9AZ33HXWT4D/vGMyy/o+TXyGg75Ixcj3+h2EskvIQ=,tag:dDo55h1ljOYLZBHn9bK7ew==,type:str] keys: + openrouter: ENC[AES256_GCM,data:Uddc0leKVD2xxpvDpsTJV3qZ4oe89Uz6dJMuzF/TeI5iIrG+DNIAYPcnIQiA6LDScO9mag8XNiYpYH7lyMnUg1cvThChiVhO+A==,iv:RHSrL/L74dSvLKAvGwyMME53RzKr2+RDnI8xBpDJVng=,tag:d81mr26SeStmAa8UgEF/LA==,type:str] tailscale: ENC[AES256_GCM,data:sW64TZY/GtWD+8KOQDHYvnwzWiqOlsJ5782utaxVwUaiWa18hU+Ppd3gp/8f0R3rK6gskaPC22iuCuzvuA==,iv:TN2zWKgU6eXH3uaL7Ci2JKmo8Ql4DUSWS3Lxfnag7j4=,tag:s5of4wLdCp6b5VMGWLLxvw==,type:str] gemini: ENC[AES256_GCM,data:t4XTzJLMbHBG7LNaWMwO0YyYHREYOp4Zn95Kwshunnpwq9ezVv+0,iv:ZHq1ytak7Qy5a/zHghwEIWRinDWAkk2Vxw4iu/Q/UPk=,tag:Wyk0FqLTOWelznWHg/anxg==,type:str] cvt-jira: ENC[AES256_GCM,data:y9enN905hAxp9F6TPcnYdcnA7VQQjTsysltBn7k9CVtOYUDBX5UKCbO4VEE=,iv:Hy/RshBTSFqEVlHq/fi/UqNdbzBvMaBmXnSHAz0WplY=,tag:bBgB+HJdHRu4bg/f9vq9nw==,type:str] @@ -28,7 +29,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-06T13:37:24Z" - mac: ENC[AES256_GCM,data:WkWsBTMQcJlvTPjAVDP24CEvE68KJj9s762ks+xtQHLvtepq0upQrGkJ8li5JZfnwSBHJikgZCEZD/PIbthx5u6Z5LjGsHjYGzRMIuRh0vjloHBCc5awdl1B6v5ebTtM6eA+YgHeHT4BcyRReM4fpKBk4SedR84mnBnX/WxfGfE=,iv:DRABRFDYbOpqL7ZzJK/xJTbA9hsbE3iEvAx/Ugc7I10=,tag:mwN17/+gr6e7y53PxaJl8Q==,type:str] + lastmodified: "2025-06-07T06:11:21Z" + mac: ENC[AES256_GCM,data:ntsLgImSp1j4a1D3KxnjxKJW7DHbel1PmuDlDUeMm3zPvqkzo5Hm/sAW/BlcPYsrZPRci1xfxTs2SqUClwgEBvewbrxvP0ELWH+Aq6IC6ckRQe1OUJKHpq+/BnPRyJOXmjjlxNPYoNxmnShDlbI/AaiNLupdNNpgyaobHyRZBUw=,iv:EW/ag6o8UhZbBGhr32VoKkZbM5a43rDbZTmRO2hshQ8=,tag:h4KYFxOQToNQ+hCH+q1Cgg==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 24536a3..d4c35a8 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -29,7 +29,7 @@ web-servers.nginx.proxies = [ { source = "chat.bwfiq.com"; - target = "http://helios:3080"; + target = "http://localhost:3080"; } { source = "il.bwfiq.com"; From e4f11bc6303472c9ed583cd4366704b06c4b74b8 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 7 Jun 2025 14:37:52 +0800 Subject: [PATCH 016/373] feat(nginx): point aenyrathia.wiki to helios --- systems/x86_64-linux/apollo/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index d4c35a8..0170ec9 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -27,6 +27,10 @@ web-apps.librechat.enable = true; web-servers.nginx.enable = true; web-servers.nginx.proxies = [ + { + source = "aenyrathia.wiki"; + target = "http://helios:5896"; + } { source = "chat.bwfiq.com"; target = "http://localhost:3080"; From 744ba98d0dd50a5828695c689637c1855c05b433 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 8 Jun 2025 23:46:15 +0800 Subject: [PATCH 017/373] feat(hyprland): add mouse bindings --- modules/home/desktop/windowManager/hyprland/keybinds.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/modules/home/desktop/windowManager/hyprland/keybinds.nix b/modules/home/desktop/windowManager/hyprland/keybinds.nix index c12fc63..223d79c 100644 --- a/modules/home/desktop/windowManager/hyprland/keybinds.nix +++ b/modules/home/desktop/windowManager/hyprland/keybinds.nix @@ -36,4 +36,12 @@ "$meh, mouse_up, resizeactive, 10% 10%" "$meh, mouse_down, resizeactive, -10% -10%" ]; + + bindm = [ + "ALT, mouse:272, movewindow" + "ALT, mouse:273, resizeactive" + ]; + bindc = [ + "ALT, mouse:272, togglefloating" + ]; } From e688519d0276e281fcf6dc5864db9eda642f37c4 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 9 Jun 2025 23:51:12 +0800 Subject: [PATCH 018/373] fix(zellij): fix ssh issue --- modules/home/cli/multiplexer/zellij.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/modules/home/cli/multiplexer/zellij.nix b/modules/home/cli/multiplexer/zellij.nix index 0e3f078..61ade89 100644 --- a/modules/home/cli/multiplexer/zellij.nix +++ b/modules/home/cli/multiplexer/zellij.nix @@ -9,8 +9,6 @@ programs.zellij = { enable = true; enableZshIntegration = true; - attachExistingSession = true; - exitShellOnExit = true; settings = { pane_frames = false; show_startup_tips = false; From 97746093ed87577846753e9a852ee11567fb4f36 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 10 Jun 2025 22:22:38 +0800 Subject: [PATCH 019/373] refactor(nixosModules/hardware): move cpu config intondefault --- modules/nixos/hardware/cpu.nix | 13 ------------- modules/nixos/hardware/default.nix | 29 +++++++++++++++++++---------- 2 files changed, 19 insertions(+), 23 deletions(-) delete mode 100644 modules/nixos/hardware/cpu.nix diff --git a/modules/nixos/hardware/cpu.nix b/modules/nixos/hardware/cpu.nix deleted file mode 100644 index 7f95f6a..0000000 --- a/modules/nixos/hardware/cpu.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ config, lib, ... }: -{ - config = lib.mkMerge [ - (lib.mkIf (config.hardware.platform == "amd") { - hardware.cpu.amd.updateMicrocode = true; - boot.kernelModules = [ "kvm-amd" ]; - }) - (lib.mkIf (config.hardware.platform == "intel") { - hardware.cpu.intel.updateMicrocode = true; - boot.kernelModules = [ "kvm-intel" ]; - }) - ]; -} diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index c1370bc..c40cb08 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -1,10 +1,9 @@ -{ lib, ... }: +{ lib, config, ... }: { imports = [ ./btrfs.nix ./nvidia.nix ./audio.nix - ./cpu.nix ./networking.nix ]; @@ -18,12 +17,22 @@ platform = lib.pantheon.mkStrOption; }; - config = { - services.fwupd.enable = true; - hardware.bluetooth = { - enable = true; - settings.General.Experimental = true; - }; - hardware.xone.enable = true; - }; + config = lib.mkMerge [ + { + services.fwupd.enable = true; + hardware.bluetooth = { + enable = true; + settings.General.Experimental = true; + }; + hardware.xone.enable = true; + } + (lib.mkIf (config.hardware.platform == "amd") { + hardware.cpu.amd.updateMicrocode = true; + boot.kernelModules = [ "kvm-amd" ]; + }) + (lib.mkIf (config.hardware.platform == "intel") { + hardware.cpu.intel.updateMicrocode = true; + boot.kernelModules = [ "kvm-intel" ]; + }) + ]; } From e4b260ada149ed8eeeea5b28637a2098d86b94f7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 11 Jun 2025 20:57:53 +0800 Subject: [PATCH 020/373] feat(nginx): prevent other subdomains from being acccessed --- modules/nixos/server/web-servers/default.nix | 31 +++++++++++++------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index 55a63d8..4154a0b 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -1,6 +1,18 @@ { config, lib, ... }: let cfg = config.server.web-servers; + proxyPasses = builtins.listToAttrs ( + builtins.map (proxy: { + name = proxy.source; + value = { + forceSSL = true; + enableACME = true; + locations."/" = { + proxyPass = proxy.target; + } // proxy.extraConfig; + }; + }) cfg.nginx.proxies + ); in { options.server.web-servers = { @@ -45,18 +57,15 @@ in ]; services.nginx = { enable = true; - virtualHosts = builtins.listToAttrs ( - builtins.map (proxy: { - name = proxy.source; - value = { - forceSSL = true; - enableACME = true; - locations."/" = { - proxyPass = proxy.target; - } // proxy.extraConfig; + virtualHosts = { + "_" = { + default = true; + rejectSSL = true; + locations."/" = { + return = "444"; }; - }) cfg.nginx.proxies - ); + }; + } // proxyPasses; }; }) ]; From 93f0d568a15dac21331721754f9c200be8d979f9 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 11 Jun 2025 21:21:54 +0800 Subject: [PATCH 021/373] chore(nvf): change markdown formatter to prettierd --- modules/home/cli/editor/nvf/languages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/home/cli/editor/nvf/languages.nix b/modules/home/cli/editor/nvf/languages.nix index 45d0beb..2c8e0e1 100644 --- a/modules/home/cli/editor/nvf/languages.nix +++ b/modules/home/cli/editor/nvf/languages.nix @@ -11,6 +11,7 @@ lua.enable = true; markdown.enable = true; markdown.extensions.markview-nvim.enable = true; + markdown.format.type = "prettierd"; nix = { enable = true; format.type = "nixfmt"; From a7cc5e4705448a1af3129bd4320e173b73604ef1 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 12:32:58 +0800 Subject: [PATCH 022/373] feat(server/databases): add postgresql --- modules/nixos/hardware/default.nix | 1 + modules/nixos/server/databases/default.nix | 19 +++++++++++++++++++ systems/x86_64-linux/apollo/default.nix | 1 + 3 files changed, 21 insertions(+) diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index c40cb08..d6c2136 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -20,6 +20,7 @@ config = lib.mkMerge [ { services.fwupd.enable = true; + environment.persistence."/persist".directories = lib.singleton "/var/lib/bluetooth"; hardware.bluetooth = { enable = true; settings.General.Experimental = true; diff --git a/modules/nixos/server/databases/default.nix b/modules/nixos/server/databases/default.nix index 640d587..d060cd9 100644 --- a/modules/nixos/server/databases/default.nix +++ b/modules/nixos/server/databases/default.nix @@ -17,9 +17,28 @@ in enable = lib.mkEnableOption "the MySQL server"; port = lib.pantheon.mkPortOption 3306; }; + postgresql = { + enable = lib.mkEnableOption "the postgresql server"; + port = lib.pantheon.mkPortOption 5432; + }; }; config = lib.mkMerge [ + (lib.mkIf cfg.postgresql.enable { + networking.firewall.allowedTCPPorts = lib.singleton cfg.postgresql.port; + services.postgresql = { + enable = true; + enableTCPIP = true; + inherit (cfg.postgresql) port; + authentication = lib.mkOverride 10 '' + #type database DBuser auth-method + local all all trust + + # ipv4 + host all all 0.0.0.0/32 trust + ''; + }; + }) (lib.mkIf cfg.mongodb.enable { networking.firewall.allowedTCPPorts = [ cfg.mongodb.port ]; environment.persistence."/persist".directories = [ diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 0170ec9..7a2c393 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -24,6 +24,7 @@ mountHelios = true; databases.mongodb.enable = true; databases.mysql.enable = true; + databases.postgresql.enable = true; web-apps.librechat.enable = true; web-servers.nginx.enable = true; web-servers.nginx.proxies = [ From e8ec88bd570bce146658c09a579f434ee852a6b6 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 12:57:31 +0800 Subject: [PATCH 023/373] feat(server/web-apps): init mattermost --- .../server/web-apps/mattermost/default.nix | 60 +++++++++++++++++++ systems/x86_64-linux/apollo/default.nix | 14 +++-- 2 files changed, 70 insertions(+), 4 deletions(-) create mode 100644 modules/nixos/server/web-apps/mattermost/default.nix diff --git a/modules/nixos/server/web-apps/mattermost/default.nix b/modules/nixos/server/web-apps/mattermost/default.nix new file mode 100644 index 0000000..868d9b3 --- /dev/null +++ b/modules/nixos/server/web-apps/mattermost/default.nix @@ -0,0 +1,60 @@ +{ + config, + lib, + pkgs, + ... +}: +let + cfg = config.server.web-apps.mattermost; +in +{ + options.server.web-apps.mattermost = { + enable = lib.mkEnableOption "the Mattermost service"; + port = lib.pantheon.mkPortOption 8065; + url = lib.pantheon.mkStrOption; + configDir = lib.pantheon.mkStrOption // { + default = "/etc/mattermost"; + }; + dataDir = lib.pantheon.mkStrOption // { + default = "/var/lib/mattermost"; + }; + logDir = lib.pantheon.mkStrOption // { + default = "/var/log/mattermost"; + }; + }; + + config = lib.mkIf cfg.enable { + assertions = [ + { + assertion = config.services.postgresql.enable; + message = "You must enable a local instance of postgresql."; + } + ]; + networking.firewall.allowedTCPPorts = lib.singleton cfg.port; + services.mattermost = { + enable = true; + inherit (cfg) + configDir + dataDir + logDir + port + ; + host = "0.0.0.0"; + siteName = "pantheon"; + siteUrl = "https://${cfg.url}"; + }; + services.postgresql = { + ensureDatabases = lib.singleton config.services.mattermost.database.name; + ensureUsers = lib.singleton { + name = config.services.mattermost.database.user; + ensureDBOwnership = true; + }; + }; + server.web-servers.nginx.proxies = lib.mkIf config.server.web-servers.nginx.enable ( + lib.singleton { + source = cfg.url; + target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; + } + ); + }; +} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 7a2c393..9033745 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -22,10 +22,16 @@ server = { enableDDNS = true; mountHelios = true; - databases.mongodb.enable = true; - databases.mysql.enable = true; - databases.postgresql.enable = true; - web-apps.librechat.enable = true; + databases = { + mongodb.enable = true; + mysql.enable = true; + postgresql.enable = true; + }; + web-apps = { + librechat.enable = true; + mattermost.enable = true; + mattermost.url = "mm.bwfiq.com"; + }; web-servers.nginx.enable = true; web-servers.nginx.proxies = [ { From 396925364b5409e9b36db0c0268d5d8c47c5880c Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 13:41:41 +0800 Subject: [PATCH 024/373] feat(server/web-servers): change acme validation to DNS-01 --- modules/nixos/server/web-servers/default.nix | 77 +++---------------- .../server/web-servers/nginx/default.nix | 65 ++++++++++++++++ 2 files changed, 75 insertions(+), 67 deletions(-) create mode 100644 modules/nixos/server/web-servers/nginx/default.nix diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index 4154a0b..7739cc8 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -1,72 +1,15 @@ -{ config, lib, ... }: -let - cfg = config.server.web-servers; - proxyPasses = builtins.listToAttrs ( - builtins.map (proxy: { - name = proxy.source; - value = { - forceSSL = true; - enableACME = true; - locations."/" = { - proxyPass = proxy.target; - } // proxy.extraConfig; - }; - }) cfg.nginx.proxies - ); -in +{ config, ... }: { - options.server.web-servers = { - nginx = { - enable = lib.mkEnableOption "the Nginx server"; - proxies = lib.mkOption { - type = - with lib.types; - listOf (submodule { - options = { - source = lib.pantheon.mkStrOption; - target = lib.pantheon.mkStrOption; - extraConfig = lib.mkOption { - type = attrs; - default = { }; - description = "Will be added to locations.\"/\""; - }; - }; - }); - default = [ ]; - example = [ - { - source = "chat.bwfiq.com"; - target = "http://helios:3080"; - extraConfig = { }; - } - ]; + config = { + security.acme = { + acceptTerms = true; + defaults = { + email = "rafiq@rrv.sh"; + dnsProvider = "cloudflare"; + credentialFiles = { + "CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; + }; }; }; }; - config = lib.mkMerge [ - { - security.acme = { - acceptTerms = true; - defaults.email = "rafiq@rrv.sh"; - }; - } - (lib.mkIf cfg.nginx.enable { - networking.firewall.allowedTCPPorts = [ - 443 - 80 - ]; - services.nginx = { - enable = true; - virtualHosts = { - "_" = { - default = true; - rejectSSL = true; - locations."/" = { - return = "444"; - }; - }; - } // proxyPasses; - }; - }) - ]; } diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix new file mode 100644 index 0000000..810b69a --- /dev/null +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -0,0 +1,65 @@ +{ config, lib, ... }: +let + cfg = config.server.web-servers.nginx; +in +{ + options.server.web-servers.nginx = { + enable = lib.mkEnableOption "the Nginx server"; + proxies = lib.mkOption { + type = + with lib.types; + listOf (submodule { + options = { + source = lib.pantheon.mkStrOption; + target = lib.pantheon.mkStrOption; + extraConfig = lib.mkOption { + type = attrs; + default = { }; + description = "Will be added to locations.\"/\""; + }; + }; + }); + default = [ ]; + example = [ + { + source = "chat.bwfiq.com"; + target = "http://helios:3080"; + extraConfig = { }; + } + ]; + }; + }; + + config = lib.mkIf cfg.enable { + networking.firewall.allowedTCPPorts = [ + 443 + 80 + ]; + services.nginx = { + enable = true; + virtualHosts = + { + "_" = { + default = true; + rejectSSL = true; + locations."/" = { + return = "444"; + }; + }; + } + // (builtins.listToAttrs ( + builtins.map (proxy: { + name = proxy.source; + value = { + forceSSL = true; + enableACME = true; + acmeRoot = null; + locations."/" = { + proxyPass = proxy.target; + } // proxy.extraConfig; + }; + }) cfg.proxies + )); + }; + }; +} From bd0364221642b62e2e7cdbcedda5cf013fd8bc88 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 13:53:25 +0800 Subject: [PATCH 025/373] feat(postgresql): persist pgsql data directory --- modules/nixos/server/databases/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/nixos/server/databases/default.nix b/modules/nixos/server/databases/default.nix index d060cd9..7008374 100644 --- a/modules/nixos/server/databases/default.nix +++ b/modules/nixos/server/databases/default.nix @@ -26,10 +26,17 @@ in config = lib.mkMerge [ (lib.mkIf cfg.postgresql.enable { networking.firewall.allowedTCPPorts = lib.singleton cfg.postgresql.port; + environment.persistence."/persist".directories = [ + { + directory = builtins.toString config.services.postgresql.dataDir; + user = "postgres"; + group = "postgres"; + } + ]; services.postgresql = { enable = true; enableTCPIP = true; - inherit (cfg.postgresql) port; + settings = { inherit (cfg.postgresql) port; }; authentication = lib.mkOverride 10 '' #type database DBuser auth-method local all all trust From 3b57194a564bf99771d283e0dead4c4ab12e5072 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 13:58:44 +0800 Subject: [PATCH 026/373] feat(mattermost): persist state directories --- .../server/web-apps/mattermost/default.nix | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/modules/nixos/server/web-apps/mattermost/default.nix b/modules/nixos/server/web-apps/mattermost/default.nix index 868d9b3..993617c 100644 --- a/modules/nixos/server/web-apps/mattermost/default.nix +++ b/modules/nixos/server/web-apps/mattermost/default.nix @@ -1,11 +1,12 @@ -{ - config, - lib, - pkgs, - ... -}: +{ config, lib, ... }: let cfg = config.server.web-apps.mattermost; + upstreamCfg = config.services.mattermost; + mkDir = directory: { + inherit directory; + inherit (upstreamCfg) user group; + mode = "0750"; + }; in { options.server.web-apps.mattermost = { @@ -30,6 +31,11 @@ in message = "You must enable a local instance of postgresql."; } ]; + environment.persistence."/persist".directories = [ + (mkDir cfg.configDir) + (mkDir cfg.logDir) + (mkDir cfg.dataDir) + ]; networking.firewall.allowedTCPPorts = lib.singleton cfg.port; services.mattermost = { enable = true; @@ -44,9 +50,9 @@ in siteUrl = "https://${cfg.url}"; }; services.postgresql = { - ensureDatabases = lib.singleton config.services.mattermost.database.name; + ensureDatabases = lib.singleton upstreamCfg.database.name; ensureUsers = lib.singleton { - name = config.services.mattermost.database.user; + name = upstreamCfg.database.user; ensureDBOwnership = true; }; }; From 9dc1cca76189a8267f0c07f3c23e604a7e916998 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 14:02:38 +0800 Subject: [PATCH 027/373] docs(README.md): update readme --- README.md | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 0d50a2a..0e7a183 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ - [ ] Copy over ~/.ssh/id_ed25519 and zellij status bar plugin confirmation - [ ] Migrate immich to apollo, point to helios -- [ ] Migrate LibreChat to apollo, maintain db +- [x] Migrate LibreChat to apollo, maintain db - [ ] Figure out wakapi - [ ] Add forgejo - [ ] Add simple blog @@ -30,19 +30,16 @@ # Modules -The nixosModules and homeModules exposed by this flake are slightly out of the -norm. +The nixosModules and homeModules exposed by this flake are slightly out of the norm. Option declarations for user specific configuration are kept to: - homeModules for CLI - nixosModules for desktop -System configurations, to this end, should include the window manager, -lockscreen, terminal etc. for that system. +System configurations, to this end, should include the window manager, lockscreen, terminal etc. for that system. -These desktop programs will be **configured** in home-manager for each user, but -those configurations consult the osConfig variable passed in by home-manager. +These desktop programs will be **configured** in home-manager for each user, but those configurations consult the osConfig variable passed in by home-manager. # System Setup @@ -50,10 +47,7 @@ The following files are **required** for system activation: - /persist/home/${mainUser}/.ssh/id_ed25519 -This private key will be used by sops-nix to decrypt the secrets in -[[secrets/secrets.yaml]]. The secrets inside the yaml file should also be set, -or otherwise removed alongside their declarations (in -[[modules/nixos/system/secrets.nix]]) and references. +This private key will be used by sops-nix to decrypt the secrets in [this encrypted file](secrets/secrets.yaml). The secrets inside the yaml file should also be set, or otherwise removed alongside their declarations , found [here](modules/nixos/system/secrets.nix) and references. # Impermanence From fdae75fee635801f496d5b47e06b941e1115c4bc Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 14:12:47 +0800 Subject: [PATCH 028/373] build(flake.lock): bump flake inputs --- flake.lock | 72 +++++++++++++++++++++++++++--------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/flake.lock b/flake.lock index 973f7f6..84513c4 100644 --- a/flake.lock +++ b/flake.lock @@ -69,11 +69,11 @@ }, "crane": { "locked": { - "lastModified": 1748047550, - "narHash": "sha256-t0qLLqb4C1rdtiY8IFRH5KIapTY/n3Lqt57AmxEv9mk=", + "lastModified": 1748970125, + "narHash": "sha256-UDyigbDGv8fvs9aS95yzFfOKkEjx1LO3PL3DsKopohA=", "owner": "ipetkov", "repo": "crane", - "rev": "b718a78696060df6280196a6f992d04c87a16aef", + "rev": "323b5746d89e04b22554b061522dfce9e4c49b18", "type": "github" }, "original": { @@ -89,11 +89,11 @@ ] }, "locked": { - "lastModified": 1748832438, - "narHash": "sha256-/CtyLVfNaFP7PrOPrTEuGOJBIhcBKVQ91KiEbtXJi0A=", + "lastModified": 1749436314, + "narHash": "sha256-CqmqU5FRg5AadtIkxwu8ulDSOSoIisUMZRLlcED3Q5w=", "owner": "nix-community", "repo": "disko", - "rev": "58d6e5a83fff9982d57e0a0a994d4e5c0af441e4", + "rev": "dfa4d1b9c39c0342ef133795127a3af14598017a", "type": "github" }, "original": { @@ -138,11 +138,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1748821116, - "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", + "lastModified": 1749398372, + "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", + "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", "type": "github" }, "original": { @@ -279,11 +279,11 @@ ] }, "locked": { - "lastModified": 1748830238, - "narHash": "sha256-EB+LzYHK0D5aqxZiYoPeoZoOzSAs8eqBDxm3R+6wMKU=", + "lastModified": 1749657191, + "narHash": "sha256-QLilaHuhGxiwhgceDWESj9gFcKIdEp7+9lRqNGpN8S4=", "owner": "nix-community", "repo": "home-manager", - "rev": "c7fdb7e90bff1a51b79c1eed458fb39e6649a82a", + "rev": "faeab32528a9360e9577ff4082de2d35c6bbe1ce", "type": "github" }, "original": { @@ -355,11 +355,11 @@ ] }, "locked": { - "lastModified": 1748751003, - "narHash": "sha256-i4GZdKAK97S0ZMU3w4fqgEJr0cVywzqjugt2qZPrScs=", + "lastModified": 1749355504, + "narHash": "sha256-L17CdJMD+/FCBOHjREQLXbe2VUnc3rjffenBbu2Kwpc=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "2860bee699248d828c2ed9097a1cd82c2f991b43", + "rev": "40a6e15e44b11fbf8f2b1df9d64dbfc117625e94", "type": "github" }, "original": { @@ -370,11 +370,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1748693115, - "narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=", + "lastModified": 1749285348, + "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc", + "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", "type": "github" }, "original": { @@ -430,11 +430,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1748864791, - "narHash": "sha256-YRRRbOEc8aXpzSvN3qdIkqtVQ9xjx9rgichtaSQ0qwY=", + "lastModified": 1749707524, + "narHash": "sha256-aW7+cNRTO1jqF9+aSJuN1n8ztN1LcJ44zl56KEkKqkc=", "owner": "nix-community", "repo": "NUR", - "rev": "4ee0c2599266fb26e6ac3cb71836e96f25df446e", + "rev": "ba440d81438ff47c3b5e11e46f4132bc58f24a4b", "type": "github" }, "original": { @@ -465,11 +465,11 @@ ] }, "locked": { - "lastModified": 1748651104, - "narHash": "sha256-GZLiCQlNV8QfAWwGinXeSdiKZS346ZGPv6EKzeY0tAA=", + "lastModified": 1749631819, + "narHash": "sha256-iy7UuA2I0DaKEUMncTQNFg0bYDX7sa5WCRQTrIWqmEU=", "owner": "notashelf", "repo": "nvf", - "rev": "c4cf91d4b531245a02f5b6c196f6279bc87a546f", + "rev": "2a2b5e2790b41eadc42758fd6c4d62b7af64f17c", "type": "github" }, "original": { @@ -552,11 +552,11 @@ ] }, "locked": { - "lastModified": 1748832016, - "narHash": "sha256-TQSaFa1wWJr6GOs+K8lecK4AKKr8k6mwxHIPCOmVkgs=", + "lastModified": 1749695868, + "narHash": "sha256-debjTLOyqqsYOUuUGQsAHskFXH5+Kx2t3dOo/FCoNRA=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "7ec2ea005b600dac9436a7c5c6b66d960cbfcea2", + "rev": "55f914d5228b5c8120e9e0f9698ed5b7214d09cd", "type": "github" }, "original": { @@ -598,11 +598,11 @@ ] }, "locked": { - "lastModified": 1747603214, - "narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=", + "lastModified": 1749592509, + "narHash": "sha256-VunQzfZFA+Y6x3wYi2UE4DEQ8qKoAZZCnZPUlSoqC+A=", "owner": "Mic92", "repo": "sops-nix", - "rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd", + "rev": "50754dfaa0e24e313c626900d44ef431f3210138", "type": "github" }, "original": { @@ -672,11 +672,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1748803004, - "narHash": "sha256-dLGywKYxge3rzD6AqtVP0UmMHONdQNCWXj6i0lfm/UM=", + "lastModified": 1749670558, + "narHash": "sha256-luB+SFNy+etZK3PVznJSLps1DPYsGya6o/67Emcrtb0=", "owner": "nix-community", "repo": "stylix", - "rev": "5f841056ca60bea7312aeade957da084cd95b26e", + "rev": "e7fa0e5cc2336b6b25310d5e49c149f14fdbc1bb", "type": "github" }, "original": { @@ -818,11 +818,11 @@ ] }, "locked": { - "lastModified": 1745230073, - "narHash": "sha256-OER99U7MiqQ47myvbsiljsax7OsK19NMds4NBM9XXLs=", + "lastModified": 1749470933, + "narHash": "sha256-TEb495xtK9PsCATFezzg6HXThjtveMs7EkWkGJVxPXU=", "owner": "dj95", "repo": "zjstatus", - "rev": "a819e3bfe6bfef0438d811cdbb1bcfdc29912c62", + "rev": "25adf0c5968b4e8253e8e40e648d05cf15c9430d", "type": "github" }, "original": { From f2104f3192a64bf504d188d8dc7387024bee1011 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 15:51:22 +0800 Subject: [PATCH 029/373] feat(system/users): add pubkey to root --- modules/nixos/system/users.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/nixos/system/users.nix b/modules/nixos/system/users.nix index 4f832aa..fa7cb84 100644 --- a/modules/nixos/system/users.nix +++ b/modules/nixos/system/users.nix @@ -19,6 +19,7 @@ extraGroups = [ "wheel" ]; openssh.authorizedKeys.keys = [ config.system.mainUser.publicKey ]; }; + users.users.root.openssh.authorizedKeys.keys = lib.singleton config.system.mainUser.publicKey; services.getty.autologinUser = config.system.mainUser.name; security.sudo.wheelNeedsPassword = false; } From 7093a338f4bff3d23320c56c84e1ef7fd95caead Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 17:37:01 +0800 Subject: [PATCH 030/373] feat(packages/deploy): add deployment script --- README.md | 12 +++ homes/x86_64-linux/rafiq/default.nix | 1 + packages/deploy/default.nix | 123 +++++++++++++++++++++++++++ 3 files changed, 136 insertions(+) create mode 100644 packages/deploy/default.nix diff --git a/README.md b/README.md index 0e7a183..d42a44f 100644 --- a/README.md +++ b/README.md @@ -23,8 +23,10 @@ - Federation with ActivityPub - Wakapi - Add a way to define services per host and refer to them by hostname + - helios as file and db server, apollo as services and reverse proxy - 0.3.0 - Integration tests for all services + - Set directory permissions properly for impermanence - Easier way to add proxyPass, web server independent - Migrate services from helios @@ -49,6 +51,16 @@ The following files are **required** for system activation: This private key will be used by sops-nix to decrypt the secrets in [this encrypted file](secrets/secrets.yaml). The secrets inside the yaml file should also be set, or otherwise removed alongside their declarations , found [here](modules/nixos/system/secrets.nix) and references. +```bash +# On the target machine +# Boot into the NixOS installer + +sudo passwd + +# On the host machine +deploy --user "rafiq" --ip "10.10.0.102" --hostname "apollo" +``` + # Impermanence System and user state is stored under /persist. Anything not declared under diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 9337801..cb09374 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -61,6 +61,7 @@ in stremio tor-browser pantheon.rebuild + pantheon.deploy pantheon.edit inputs.nixspect.packages."x86_64-linux".nixspect ]; diff --git a/packages/deploy/default.nix b/packages/deploy/default.nix new file mode 100644 index 0000000..f9280e8 --- /dev/null +++ b/packages/deploy/default.nix @@ -0,0 +1,123 @@ +{ pkgs, ... }: +pkgs.writeShellScriptBin "deploy" # sh + '' + while [[ $# -gt 0 ]]; do + case "$1" in + --user) + USER="$2" + shift 2 + ;; + --ip) + IP="$2" + shift 2 + ;; + --hostname) + HOSTNAME="$2" + shift 2 + ;; + *) + echo "Error: Unknown parameter: $1" + exit 1 + ;; + esac + done + + # Check if required arguments are provided + if [[ -z "$USER" || -z "$IP" || -z "$HOSTNAME" ]]; then + echo "Usage: $0 --user --ip --hostname [--wait-timeout ]" + exit 1 + fi + + # --- Helper Functions --- + + wait_for_ping() { + local ip="$1" + + echo "Waiting for ping to $ip..." + while true; do + if ping -c 1 -W 1 "$ip"; then + echo "Ping successful." + return 0 + fi + sleep 2 + done + } + + wait_for_ssh() { + local ip="$1" + + echo "Waiting for SSH to $ip..." + while true; do + ssh-keygen -R "$ip" || true # Suppress error if key doesn't exist + if ssh -o StrictHostKeyChecking=no root@"$ip" exit; then + echo "SSH connection successful." + return 0 + fi + sleep 2 + done + } + + retry_rebuild() { + local ip="$1" + + echo "Attempting rebuild..." + while true; do + if nixos-rebuild switch --flake . --target-host root@"$ip"; then + echo "Rebuild successful." + return 0 + fi + sleep 2 + done + } + + test_connection() { + local ip="$1" + # Wait for the server to come back up after the reboot. Ping first. + if ! wait_for_ping $ip; then + echo "Error: Server did not respond to ping after reboot." + exit 1 + fi + + # Wait for SSH access after reboot + if ! wait_for_ssh $ip; then + echo "Error: SSH access not available after reboot." + exit 1 + fi + } + + # --- Deployment Steps --- + + test_connection "$IP" + + # Copy SSH key to remote server + ssh-copy-id -o StrictHostKeyChecking=no root@"$IP" || { echo "Error: Failed to copy SSH key."; exit 1; } + + # Deploy NixOS configuration using nixos-anywhere + nix run github:nix-community/nixos-anywhere -- \ + -i ~/.ssh/id_ed25519 --ssh-option StrictHostKeyChecking=no \ + --flake .#"$HOSTNAME" --target-host root@"$IP" || { echo "Error: nixos-anywhere failed."; exit 1; } + + test_connection "$IP" + + # Create SSH directory on the remote server (if not already present) + ssh root@"$IP" -o StrictHostKeyChecking=no mkdir -p "/persist/home/$USER/.ssh" || { echo "Error: Failed to create SSH directory."; exit 1; } + + # Set owner of the user's home directory + ssh root@"$IP" -o StrictHostKeyChecking=no chown -R "$USER:users" "/persist/home/$USER" || { echo "Error: Failed to set ownership."; exit 1; } + + # Copy SSH keys to the remote server + scp -r ~/.ssh root@"$IP":/persist/home/"$USER" || { echo "Error: Failed to copy SSH keys."; exit 1; } + + #TODO: remove device from tailscale + + # Build and switch the configuration + retry_rebuild "$IP" + + # Reboot the system + ssh root@"$IP" -o StrictHostKeyChecking=no systemctl reboot || { echo "Error: Failed to reboot."; exit 1; } + + test_connection "$IP" + test_connection "$HOSTNAME" + + echo "Deployment complete. System should be ready." + '' From e5f942acbe27a426dae8af06181962b332a92466 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 21:35:43 +0800 Subject: [PATCH 031/373] feat: Refactor web-servers module and move common configuration to common.nix --- modules/nixos/server/web-servers/default.nix | 32 ++++++--- .../server/web-servers/nginx/default.nix | 68 +++++++++++-------- modules/nixos/system/default.nix | 1 + systems/x86_64-linux/apollo/default.nix | 42 ++++++------ systems/x86_64-linux/common.nix | 9 +++ systems/x86_64-linux/mellinoe/default.nix | 8 --- systems/x86_64-linux/nemesis/default.nix | 10 +-- 7 files changed, 94 insertions(+), 76 deletions(-) create mode 100644 systems/x86_64-linux/common.nix diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index 7739cc8..d409ae1 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -1,15 +1,25 @@ -{ config, ... }: +{ config, lib, ... }: +let + inherit (lib) mkMerge mkIf mkEnableOption; + cfg = config.server.web-servers; +in { - config = { - security.acme = { - acceptTerms = true; - defaults = { - email = "rafiq@rrv.sh"; - dnsProvider = "cloudflare"; - credentialFiles = { - "CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; + options.server.web-servers = { + enableSSL = mkEnableOption ""; + }; + + config = mkMerge [ + (mkIf cfg.enableSSL { + security.acme = { + acceptTerms = true; + defaults = { + inherit (config.system.mainUser) email; + dnsProvider = "cloudflare"; + credentialFiles = { + "CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; + }; }; }; - }; - }; + }) + ]; } diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index 810b69a..0facd6c 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -1,17 +1,49 @@ { config, lib, ... }: let + inherit (lib) mkOption mkEnableOption mkIf; + inherit (lib.pantheon) mkStrOption; + inherit (builtins) listToAttrs map; + inherit (config.server.web-servers) enableSSL; cfg = config.server.web-servers.nginx; + defaultSink = mkIf cfg.enableDefaultSink { + "_" = { + default = true; + rejectSSL = mkIf enableSSL true; + locations."/" = { + return = "444"; + }; + }; + }; + proxyPasses = listToAttrs ( + map (proxy: { + name = proxy.source; + value = { + forceSSL = mkIf enableSSL true; + enableACME = mkIf enableSSL true; + acmeRoot = mkIf enableSSL null; + locations."/" = { + proxyPass = proxy.target; + } // proxy.extraConfig; + }; + }) cfg.proxies + ); in { options.server.web-servers.nginx = { - enable = lib.mkEnableOption "the Nginx server"; - proxies = lib.mkOption { + enable = mkEnableOption "the Nginx server"; + openFirewall = mkEnableOption "" // { + default = true; + }; + enableDefaultSink = mkEnableOption "" // { + default = true; + }; + proxies = mkOption { type = with lib.types; listOf (submodule { options = { - source = lib.pantheon.mkStrOption; - target = lib.pantheon.mkStrOption; + source = mkStrOption; + target = mkStrOption; extraConfig = lib.mkOption { type = attrs; default = { }; @@ -30,36 +62,14 @@ in }; }; - config = lib.mkIf cfg.enable { - networking.firewall.allowedTCPPorts = [ + config = mkIf cfg.enable { + networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ 443 80 ]; services.nginx = { enable = true; - virtualHosts = - { - "_" = { - default = true; - rejectSSL = true; - locations."/" = { - return = "444"; - }; - }; - } - // (builtins.listToAttrs ( - builtins.map (proxy: { - name = proxy.source; - value = { - forceSSL = true; - enableACME = true; - acmeRoot = null; - locations."/" = { - proxyPass = proxy.target; - } // proxy.extraConfig; - }; - }) cfg.proxies - )); + virtualHosts = defaultSink // proxyPasses; }; }; } diff --git a/modules/nixos/system/default.nix b/modules/nixos/system/default.nix index 98b7c1f..5d876e7 100644 --- a/modules/nixos/system/default.nix +++ b/modules/nixos/system/default.nix @@ -17,6 +17,7 @@ hostname = lib.pantheon.mkStrOption; mainUser.name = lib.pantheon.mkStrOption; mainUser.publicKey = lib.pantheon.mkStrOption; + mainUser.email = lib.pantheon.mkStrOption; bootloader = lib.pantheon.mkStrOption; }; diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 9033745..6fb27cb 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -3,10 +3,10 @@ ... }: { + imports = lib.singleton ../common.nix; + system = { hostname = "apollo"; - mainUser.name = "rafiq"; - mainUser.publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILdsZyY3gu8IGB8MzMnLdh+ClDxQQ2RYG9rkeetIKq8n"; bootloader = "systemd-boot"; }; @@ -21,7 +21,6 @@ server = { enableDDNS = true; - mountHelios = true; databases = { mongodb.enable = true; mysql.enable = true; @@ -32,22 +31,25 @@ mattermost.enable = true; mattermost.url = "mm.bwfiq.com"; }; - web-servers.nginx.enable = true; - web-servers.nginx.proxies = [ - { - source = "aenyrathia.wiki"; - target = "http://helios:5896"; - } - { - source = "chat.bwfiq.com"; - target = "http://localhost:3080"; - } - { - source = "il.bwfiq.com"; - target = "http://helios:2283"; - } - ]; + web-servers = { + nginx = { + enable = true; + proxies = [ + { + source = "aenyrathia.wiki"; + target = "http://helios:5896"; + } + { + #TODO: merge into librechat module + source = "chat.bwfiq.com"; + target = "http://localhost:3080"; + } + { + source = "il.bwfiq.com"; + target = "http://helios:2283"; + } + ]; + }; + }; }; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; } diff --git a/systems/x86_64-linux/common.nix b/systems/x86_64-linux/common.nix new file mode 100644 index 0000000..eb507c3 --- /dev/null +++ b/systems/x86_64-linux/common.nix @@ -0,0 +1,9 @@ +{ + system.mainUser = { + name = "rafiq"; + publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILdsZyY3gu8IGB8MzMnLdh+ClDxQQ2RYG9rkeetIKq8n"; + email = "rafiq@rrv.sh"; + }; + server.mountHelios = true; + nixpkgs.hostPlatform = "x86_64-linux"; +} diff --git a/systems/x86_64-linux/mellinoe/default.nix b/systems/x86_64-linux/mellinoe/default.nix index 6174544..e3f89df 100644 --- a/systems/x86_64-linux/mellinoe/default.nix +++ b/systems/x86_64-linux/mellinoe/default.nix @@ -3,8 +3,6 @@ system = { hostname = "mellinoe"; - mainUser.name = "rafiq"; - mainUser.publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILdsZyY3gu8IGB8MzMnLdh+ClDxQQ2RYG9rkeetIKq8n"; bootloader = "systemd-boot"; }; @@ -32,10 +30,4 @@ refresh-rate = "60"; }; }; - - server = { - mountHelios = true; - }; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index eefdf44..f8b4af4 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -3,10 +3,10 @@ ... }: { + imports = lib.singleton ../common.nix; + system = { hostname = "nemesis"; - mainUser.name = "rafiq"; - mainUser.publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILdsZyY3gu8IGB8MzMnLdh+ClDxQQ2RYG9rkeetIKq8n"; bootloader = "systemd-boot"; }; @@ -41,16 +41,10 @@ enableSunshine = true; }; - server = { - mountHelios = true; - }; - services = { tor = { enable = true; client.enable = true; }; }; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; } From e0887268bdda0b7a4a8fa2a44293ab1b636f841b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 22:21:30 +0800 Subject: [PATCH 032/373] feat(packages): add commit script to automate commit message generation --- homes/x86_64-linux/rafiq/default.nix | 1 + packages/commit/default.nix | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 packages/commit/default.nix diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index cb09374..f01cc2f 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -63,6 +63,7 @@ in pantheon.rebuild pantheon.deploy pantheon.edit + pantheon.commit inputs.nixspect.packages."x86_64-linux".nixspect ]; diff --git a/packages/commit/default.nix b/packages/commit/default.nix new file mode 100644 index 0000000..70930b9 --- /dev/null +++ b/packages/commit/default.nix @@ -0,0 +1,24 @@ +{ pkgs, ... }: +pkgs.writeShellScriptBin "commit" # bash + '' + PROMPT="Please generate a one-line commit message using." + GUIDELINES="1. Use conventional commit syntax, following the context." + NUM_ANCESTORS=0 + while [[ $# -gt 0 ]]; do + case "$1" in + --num-ancestors | -n) + NUM_ANCESTORS="$2" + shift 2 + ;; + *) + echo "Unrecognised argument: $1. Exiting..." + exit 1 + ;; + esac + done + CONTEXT=$(git --no-pager log -n 10) + DIFF=$(git --no-pager diff HEAD~$NUM_ANCESTORS) + RESPONSE=$(aichat "$PROMPT\nGuidelines: $GUIDELINES\nContext from git log: $CONTEXT\nDiff from git diff HEAD: $DIFF") + #TODO: revise commit message + git commit -am "$RESPONSE" + '' From 8ea093d939d49c77a40d234e4b56f04df42426ed Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 22:55:30 +0800 Subject: [PATCH 033/373] feat(packages/rebuild): add prompt for commit and reboot, skip generation check option --- packages/rebuild/default.nix | 44 ++++++++++++++++++++++-------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index fa7ccf9..37b38c5 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -1,13 +1,25 @@ { pkgs, ... }: pkgs.writeShellScriptBin "rebuild" # sh '' + prompt() { + local PROMPT="$1" + shift + read -p "$PROMPT? (y/n) [n]: " -n 1 -r REPLY + echo + if [[ "$REPLY" =~ ^[Yy]$ ]]; then + "$*" + else + echo "$PROMPT aborted." + fi + } + if [ ! -f "flake.nix" ]; then echo "Error: flake.nix not found in the current directory. Exiting." exit 1 # Indicate an error fi - #TODO: get hostnames from flake nixosConfigurations + NO_GENERATION_CHECK=false TEST_SHELL=false REMOTE_HOSTS=() ALL_HOSTS=("nemesis" "mellinoe" "apollo") @@ -17,6 +29,10 @@ pkgs.writeShellScriptBin "rebuild" # sh while [[ $# -gt 0 ]]; do case "$1" in + --no-generation-check | -n) + NO_GENERATION_CHECK=true + shift + ;; --test-shell | -t) TEST_SHELL=true shift @@ -76,22 +92,16 @@ pkgs.writeShellScriptBin "rebuild" # sh } fi - NEW_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) - echo "New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." - if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then - echo "ERROR: New config was not added to bootloader. Exiting..." - exit 1 - else - git commit - - read -p "Reboot the system now? (y/n) [n]: " -n 1 -r - echo # (optional) move to a new line - if [[ $REPLY =~ ^[Yy]$ ]]; then - echo "Rebooting the system..." - sudo systemctl reboot - else - echo "Not rebooting." - exit 0 + if ! "$NO_GENERATION_CHECK"; then + NEW_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) + echo "New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." + if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then + echo "ERROR: New config was not added to bootloader. Exiting..." + exit 1 fi fi + + prompt "Commit changes" commit + prompt "Reboot system" sudo systemctl reboot + exit 0 '' From 9de4ef0ce6340f7a398f6470e64d5aedce08ed88 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 22:57:37 +0800 Subject: [PATCH 034/373] feat(packages/rebuild): add quick mode to skip commit and reboot prompts --- packages/rebuild/default.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index 37b38c5..df14889 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -19,6 +19,7 @@ pkgs.writeShellScriptBin "rebuild" # sh fi #TODO: get hostnames from flake nixosConfigurations + QUICK=false NO_GENERATION_CHECK=false TEST_SHELL=false REMOTE_HOSTS=() @@ -29,6 +30,10 @@ pkgs.writeShellScriptBin "rebuild" # sh while [[ $# -gt 0 ]]; do case "$1" in + --quick | -q) + QUICK=true + shift + ;; --no-generation-check | -n) NO_GENERATION_CHECK=true shift @@ -101,7 +106,10 @@ pkgs.writeShellScriptBin "rebuild" # sh fi fi - prompt "Commit changes" commit - prompt "Reboot system" sudo systemctl reboot + if "$QUICK"; then + prompt "Commit changes" commit + prompt "Reboot system" sudo systemctl reboot + fi + exit 0 '' From 5ba27ad3aec4bb523b0ea133e6733a3d5239638a Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 23:05:52 +0800 Subject: [PATCH 035/373] feat(desktop): enable wayland utils when hyprland is enabled --- modules/home/desktop/default.nix | 12 ++++++++++++ .../home/desktop/windowManager/hyprland/default.nix | 1 + 2 files changed, 13 insertions(+) diff --git a/modules/home/desktop/default.nix b/modules/home/desktop/default.nix index 6ffd427..85c668d 100644 --- a/modules/home/desktop/default.nix +++ b/modules/home/desktop/default.nix @@ -5,8 +5,20 @@ pkgs, ... }: +let + cfg = config.desktop; + inherit (lib) mkIf mkEnableOption; +in { + options.desktop = { + wayland.enableUtils = mkEnableOption "common Wayland utilities"; + }; config = lib.mkMerge [ + (mkIf cfg.wayland.enableUtils { + home.packages = with pkgs; [ + wl-clipboard-rs + ]; + }) (lib.mkIf (osConfig.hardware.gpu == "nvidia") { home.packages = [ pkgs.stable-diffusion-webui.forge.cuda ]; home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ diff --git a/modules/home/desktop/windowManager/hyprland/default.nix b/modules/home/desktop/windowManager/hyprland/default.nix index de770c7..53f78d1 100644 --- a/modules/home/desktop/windowManager/hyprland/default.nix +++ b/modules/home/desktop/windowManager/hyprland/default.nix @@ -9,6 +9,7 @@ let in { config = lib.mkIf (osConfig.desktop.windowManager == "hyprland") { + desktop.wayland.enableUtils = true; wayland.windowManager.hyprland = { enable = true; systemd.enable = false; From d714cef3c337cfedd21cbd14d304f03572f78385 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 23:06:05 +0800 Subject: [PATCH 036/373] fix(packages/rebuild): invert QUICK logic to disable prompts when set --- packages/rebuild/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index df14889..3265821 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -106,7 +106,7 @@ pkgs.writeShellScriptBin "rebuild" # sh fi fi - if "$QUICK"; then + if ! "$QUICK"; then prompt "Commit changes" commit prompt "Reboot system" sudo systemctl reboot fi From 23236b19cba107acbc1f42b4b691bafe147db79b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 12 Jun 2025 23:22:08 +0800 Subject: [PATCH 037/373] feat(packages/commit): add interactive mode to revise commit messages --- packages/commit/default.nix | 45 ++++++++++++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 5 deletions(-) diff --git a/packages/commit/default.nix b/packages/commit/default.nix index 70930b9..b352cee 100644 --- a/packages/commit/default.nix +++ b/packages/commit/default.nix @@ -1,9 +1,11 @@ { pkgs, ... }: pkgs.writeShellScriptBin "commit" # bash '' - PROMPT="Please generate a one-line commit message using." - GUIDELINES="1. Use conventional commit syntax, following the context." + PROMPT="Please generate a one-line commit message using conventional commit syntax, following the context." + GUIDELINES="1. Use conventional commit syntax, following the context. " NUM_ANCESTORS=0 + + # Parse arguments while [[ $# -gt 0 ]]; do case "$1" in --num-ancestors | -n) @@ -16,9 +18,42 @@ pkgs.writeShellScriptBin "commit" # bash ;; esac done + + # Get context and diff CONTEXT=$(git --no-pager log -n 10) DIFF=$(git --no-pager diff HEAD~$NUM_ANCESTORS) - RESPONSE=$(aichat "$PROMPT\nGuidelines: $GUIDELINES\nContext from git log: $CONTEXT\nDiff from git diff HEAD: $DIFF") - #TODO: revise commit message - git commit -am "$RESPONSE" + + # Generate initial response + RESPONSE=$(aichat "$PROMPT\nGuidelines: $GUIDELINES\nContext from git log:\n$CONTEXT\nDiff from git diff HEAD:\n$DIFF") + + while true; do + echo "Generated Commit Message:" + echo "$RESPONSE" + echo "Options: [y]es, [r]eroll, [e]dit, [q]uit?" + read -r -p "Choose an action: " choice + + case "$choice" in + y | yes) + git commit -am "$RESPONSE" + echo "Committed successfully." + exit 0 + ;; + r | reroll) + RESPONSE=$(aichat "$PROMPT\nGuidelines: $GUIDELINES\nContext from git log:\n$CONTEXT\nDiff from git diff HEAD:\n$DIFF") + ;; + e | edit) + echo "$RESPONSE" > /tmp/commit_msg.txt + "$EDITOR" /tmp/commit_msg.txt + RESPONSE=$(cat /tmp/commit_msg.txt) + rm /tmp/commit_msg.txt + ;; + q | quit | "") + echo "Aborted." + exit 1 + ;; + *) + echo "Invalid choice. Please choose again." + ;; + esac + done '' From d6da06416338ff7953d4e3494fec5e035b7e4498 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 00:02:29 +0800 Subject: [PATCH 038/373] refactor(modules/nginx): simplify ssl conditional logic and merge virtual hosts --- .../server/web-servers/nginx/default.nix | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index 0facd6c..6fc74ef 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -1,26 +1,30 @@ { config, lib, ... }: let - inherit (lib) mkOption mkEnableOption mkIf; + inherit (lib) + mkMerge + mkOption + mkEnableOption + mkIf + ; inherit (lib.pantheon) mkStrOption; inherit (builtins) listToAttrs map; - inherit (config.server.web-servers) enableSSL; cfg = config.server.web-servers.nginx; defaultSink = mkIf cfg.enableDefaultSink { "_" = { default = true; - rejectSSL = mkIf enableSSL true; + rejectSSL = true; locations."/" = { return = "444"; }; }; }; + sslCheck = if config.server.web-servers.enableSSL then true else false; proxyPasses = listToAttrs ( map (proxy: { name = proxy.source; value = { - forceSSL = mkIf enableSSL true; - enableACME = mkIf enableSSL true; - acmeRoot = mkIf enableSSL null; + enableACME = sslCheck; + acmeRoot = null; locations."/" = { proxyPass = proxy.target; } // proxy.extraConfig; @@ -69,7 +73,10 @@ in ]; services.nginx = { enable = true; - virtualHosts = defaultSink // proxyPasses; + virtualHosts = mkMerge [ + defaultSink + proxyPasses + ]; }; }; } From 17dc383a97b9dd628f9732df35c5c303d4c44ae7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 01:26:52 +0800 Subject: [PATCH 039/373] feat(networking): disable ipv6 and add ssl check to proxy passes --- modules/nixos/hardware/networking.nix | 9 ++++++--- modules/nixos/server/web-servers/nginx/default.nix | 5 +++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/modules/nixos/hardware/networking.nix b/modules/nixos/hardware/networking.nix index cc00ccd..89ea093 100644 --- a/modules/nixos/hardware/networking.nix +++ b/modules/nixos/hardware/networking.nix @@ -2,9 +2,12 @@ { config = lib.mkMerge [ { - networking.useDHCP = lib.mkDefault true; - networking.hostName = config.system.hostname; - networking.networkmanager.enable = true; + networking = { + enableIPv6 = false; + useDHCP = lib.mkDefault true; + hostName = config.system.hostname; + networkmanager.enable = true; + }; services.openssh = { enable = true; diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index 6fc74ef..d193753 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -9,20 +9,21 @@ let inherit (lib.pantheon) mkStrOption; inherit (builtins) listToAttrs map; cfg = config.server.web-servers.nginx; + sslCheck = if config.server.web-servers.enableSSL then true else false; defaultSink = mkIf cfg.enableDefaultSink { "_" = { default = true; - rejectSSL = true; + rejectSSL = sslCheck; locations."/" = { return = "444"; }; }; }; - sslCheck = if config.server.web-servers.enableSSL then true else false; proxyPasses = listToAttrs ( map (proxy: { name = proxy.source; value = { + addSSL = sslCheck; enableACME = sslCheck; acmeRoot = null; locations."/" = { From 1912666242a6565632460ade92503cfa65ab0a67 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 02:03:58 +0800 Subject: [PATCH 040/373] chore(web-servers): switch to staging letsencrypt --- modules/nixos/server/web-servers/default.nix | 6 +++--- modules/nixos/server/web-servers/nginx/default.nix | 8 -------- systems/x86_64-linux/apollo/default.nix | 1 + 3 files changed, 4 insertions(+), 11 deletions(-) diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index d409ae1..6225676 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -14,10 +14,10 @@ in acceptTerms = true; defaults = { inherit (config.system.mainUser) email; + #TODO: switch back to production environment + server = "https://acme-staging-v02.api.letsencrypt.org/directory"; dnsProvider = "cloudflare"; - credentialFiles = { - "CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; - }; + credentialFiles."CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; }; }; }) diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index d193753..f5f36cc 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -52,18 +52,10 @@ in extraConfig = lib.mkOption { type = attrs; default = { }; - description = "Will be added to locations.\"/\""; }; }; }); default = [ ]; - example = [ - { - source = "chat.bwfiq.com"; - target = "http://helios:3080"; - extraConfig = { }; - } - ]; }; }; diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 6fb27cb..75a76e3 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -32,6 +32,7 @@ mattermost.url = "mm.bwfiq.com"; }; web-servers = { + enableSSL = true; nginx = { enable = true; proxies = [ From 83e7043eb58b8a9c85f4aa2a95d046269fc4ca2e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 03:31:08 +0800 Subject: [PATCH 041/373] feat(lib): add domain manipulation functions --- lib/default.nix | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/lib/default.nix b/lib/default.nix index 37567ce..781b0f6 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,5 +1,20 @@ { lib, ... }: -{ +let + inherit (lib) singleton; + inherit (lib.strings) splitString; + inherit (builtins) length concatStringsSep tail; +in +rec { + # Helpers + splitDomain = domain: splitString "." domain; + shortenList = + count: list: + let + len = length list; + in + if len <= count then list else (shortenList count (tail list)); + + # Modules mkStrOption = lib.mkOption { type = lib.types.str; default = ""; @@ -16,4 +31,10 @@ type = lib.types.path; default = path; }; + + # Domains + isRootDomain = domain: length (splitDomain domain) <= 2; + mkRootDomain = domain: concatStringsSep "." (shortenList 2 (splitDomain domain)); + mkWildcardDomain = rootDomain: concatStringsSep "." ((singleton "*") ++ (splitDomain rootDomain)); + mkHost = domain: if isRootDomain domain then domain else mkWildcardDomain (mkRootDomain domain); } From 181e5d6ec80d9fc2b1f7af0b9d7a9c7f6334d31f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 04:00:43 +0800 Subject: [PATCH 042/373] refactor(server/ddns): make domains modular --- modules/nixos/server/default.nix | 49 --------------- .../nixos/server/networking/ddns/default.nix | 62 +++++++++++++++++++ .../server/web-apps/mattermost/default.nix | 3 + systems/x86_64-linux/apollo/default.nix | 9 ++- 4 files changed, 73 insertions(+), 50 deletions(-) create mode 100644 modules/nixos/server/networking/ddns/default.nix diff --git a/modules/nixos/server/default.nix b/modules/nixos/server/default.nix index 6394320..1102c9c 100644 --- a/modules/nixos/server/default.nix +++ b/modules/nixos/server/default.nix @@ -6,58 +6,9 @@ { options.server = { mountHelios = lib.mkEnableOption ""; - enableDDNS = lib.mkEnableOption ""; }; config = lib.mkMerge [ - (lib.mkIf config.server.enableDDNS { - services.godns = { - enable = true; - loadCredential = [ - "cf_token:${config.sops.secrets."keys/cloudflare".path}" - "telegram_bot_token:${config.sops.secrets."keys/telegram_bot".path}" - ]; - settings = { - provider = "Cloudflare"; - login_token_file = "$CREDENTIALS_DIRECTORY/cf_token"; - domains = [ - { - domain_name = "rrv.sh"; - sub_domains = [ "@" ]; - } - { - domain_name = "aenyrathia.wiki"; - sub_domains = [ "@" ]; - } - { - domain_name = "bwfiq.com"; - sub_domains = [ "*" ]; - } - { - domain_name = "slayment.com"; - sub_domains = [ "*" ]; - } - ]; - resolver = "1.1.1.1"; - ip_urls = [ - "https://wtfismyip.com/text" - "https://api.ipify.org" - "https://myip.biturl.top" - "https://api-ipv4.ip.sb/ip" - ]; - ip_type = "IPv4"; - interval = 300; - notify = { - telegram = { - enabled = true; - bot_api_key_file = "$CREDENTIALS_DIRECTORY/telegram_bot_token"; - chat_id = "384288005"; - message_template = "Domain *{{ .Domain }} has been updated to %0A{{ .CurrentIP }}"; - }; - }; - }; - }; - }) (lib.mkIf config.server.mountHelios { fileSystems."/media/helios/data" = { device = "//helios/data"; diff --git a/modules/nixos/server/networking/ddns/default.nix b/modules/nixos/server/networking/ddns/default.nix new file mode 100644 index 0000000..b50dc0b --- /dev/null +++ b/modules/nixos/server/networking/ddns/default.nix @@ -0,0 +1,62 @@ +{ config, lib, ... }: +let + inherit (lib) mkIf mkOption mkEnableOption; + inherit (lib.types) enum str listOf; + inherit (lib.lists) unique; + inherit (builtins) map; + cfg = config.server.networking.ddns; + mkDomain = domain_name: { + inherit domain_name; + sub_domains = [ + "@" + "*" + ]; + }; + # Sanitize the list of domains with unique so we can add to it with every service. + mkDomains = map mkDomain (unique cfg.domains); +in +{ + options.server.networking.ddns = { + enable = mkEnableOption ""; + type = mkOption { + type = enum [ "godns" ]; + default = "godns"; + }; + domains = mkOption { + type = listOf str; + default = [ ]; + }; + }; + + config = mkIf cfg.enable { + services.godns = { + enable = if (cfg.type == "godns") then true else false; + loadCredential = [ + "cf_token:${config.sops.secrets."keys/cloudflare".path}" + "telegram_bot_token:${config.sops.secrets."keys/telegram_bot".path}" + ]; + settings = { + provider = "Cloudflare"; + login_token_file = "$CREDENTIALS_DIRECTORY/cf_token"; + domains = mkDomains; + resolver = "1.1.1.1"; + ip_urls = [ + "https://wtfismyip.com/text" + "https://api.ipify.org" + "https://myip.biturl.top" + "https://api-ipv4.ip.sb/ip" + ]; + ip_type = "IPv4"; + interval = 300; + notify = { + telegram = { + enabled = true; + bot_api_key_file = "$CREDENTIALS_DIRECTORY/telegram_bot_token"; + chat_id = "384288005"; + message_template = "Domain *{{ .Domain }} has been updated to %0A{{ .CurrentIP }}"; + }; + }; + }; + }; + }; +} diff --git a/modules/nixos/server/web-apps/mattermost/default.nix b/modules/nixos/server/web-apps/mattermost/default.nix index 993617c..474a45a 100644 --- a/modules/nixos/server/web-apps/mattermost/default.nix +++ b/modules/nixos/server/web-apps/mattermost/default.nix @@ -1,5 +1,7 @@ { config, lib, ... }: let + inherit (lib) singleton; + inherit (lib.pantheon) mkRootDomain; cfg = config.server.web-apps.mattermost; upstreamCfg = config.services.mattermost; mkDir = directory: { @@ -37,6 +39,7 @@ in (mkDir cfg.dataDir) ]; networking.firewall.allowedTCPPorts = lib.singleton cfg.port; + server.networking.ddns.domains = singleton (mkRootDomain cfg.url); services.mattermost = { enable = true; inherit (cfg) diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 75a76e3..05abdc3 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -20,7 +20,14 @@ }; server = { - enableDDNS = true; + networking.ddns = { + enable = true; + domains = [ + "rrv.sh" + "aenyrathia.wiki" + "slayment.com" + ]; + }; databases = { mongodb.enable = true; mysql.enable = true; From ecad3fc68e5c69fea3e88f69101aa8f274c72369 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 04:20:43 +0800 Subject: [PATCH 043/373] feat(server): move librechat webapp config to its own module --- .../web-apps/{ => librechat}/default.nix | 40 +++++++++++++------ systems/x86_64-linux/apollo/default.nix | 6 +-- 2 files changed, 28 insertions(+), 18 deletions(-) rename modules/nixos/server/web-apps/{ => librechat}/default.nix (55%) diff --git a/modules/nixos/server/web-apps/default.nix b/modules/nixos/server/web-apps/librechat/default.nix similarity index 55% rename from modules/nixos/server/web-apps/default.nix rename to modules/nixos/server/web-apps/librechat/default.nix index 630a46c..c0e30b4 100644 --- a/modules/nixos/server/web-apps/default.nix +++ b/modules/nixos/server/web-apps/librechat/default.nix @@ -1,34 +1,48 @@ { - inputs, config, lib, + inputs, ... }: let - cfg = config.server.web-apps; + inherit (lib) singleton mkEnableOption mkIf; + inherit (lib.pantheon) mkRootDomain mkPortOption mkStrOption; + cfg = config.server.web-apps.librechat; + upstreamCfg = config.services.librechat; in { + imports = singleton "${inputs.rrvsh-nixpkgs}/nixos/modules/services/web-apps/librechat.nix"; - imports = [ - "${inputs.rrvsh-nixpkgs}/nixos/modules/services/web-apps/librechat.nix" - ]; - - options.server.web-apps = { - librechat.enable = lib.mkEnableOption ""; + options.server.web-apps.librechat = { + enable = mkEnableOption ""; + port = mkPortOption 3080; + url = mkStrOption; + mongodbURI = mkStrOption // { + default = "mongodb://${config.system.hostname}:27017/LibreChat"; + }; }; - config = lib.mkIf cfg.librechat.enable { + config = mkIf cfg.enable { + environment.persistence."/persist".directories = singleton { + directory = upstreamCfg.logDir; + inherit (upstreamCfg) user group; + }; + server.networking.ddns.domains = singleton (mkRootDomain cfg.url); + server.web-servers.nginx.proxies = lib.mkIf config.server.web-servers.nginx.enable (singleton { + source = cfg.url; + target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; + }); services.librechat = { enable = true; openFirewall = true; - port = 3080; + inherit (cfg) port; env = { HOST = "0.0.0.0"; ALLOW_REGISTRATION = "true"; NO_INDEX = "true"; - MONGO_URI = "mongodb://apollo:27017/LibreChat"; - DOMAIN_CLIENT = "https://chat.bwfiq.com"; - DOMAIN_SERVER = "https://chat.bwfiq.com"; + MONGO_URI = cfg.mongodbURI; + DOMAIN_CLIENT = cfg.url; + DOMAIN_SERVER = cfg.url; ENDPOINTS = "anthropic,agents,google"; }; credentials = { diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 05abdc3..7ed2fab 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -35,6 +35,7 @@ }; web-apps = { librechat.enable = true; + librechat.url = "chat.bwfiq.com"; mattermost.enable = true; mattermost.url = "mm.bwfiq.com"; }; @@ -47,11 +48,6 @@ source = "aenyrathia.wiki"; target = "http://helios:5896"; } - { - #TODO: merge into librechat module - source = "chat.bwfiq.com"; - target = "http://localhost:3080"; - } { source = "il.bwfiq.com"; target = "http://helios:2283"; From d5398490883e6338048bd116694b1cda0215302b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 04:23:54 +0800 Subject: [PATCH 044/373] fix(packages/rebuild): fix conditional logic for multiple hosts --- packages/rebuild/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index 3265821..a3fe8b8 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -72,10 +72,7 @@ pkgs.writeShellScriptBin "rebuild" # sh exit 1 } done - exit 0 - fi - - if "$TEST_SHELL"; then + elif "$TEST_SHELL"; then nh os test . || { echo "Error: nixos-rebuild switch failed. Check the output for details." exit 1 @@ -91,7 +88,6 @@ pkgs.writeShellScriptBin "rebuild" # sh exit 1 } else - git diff HEAD --color=always --stat --patch nh os switch . || { exit 1 } From 40f526ce6215da36ad503bbb7c7f6dca6a518dcc Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 04:46:11 +0800 Subject: [PATCH 045/373] feat(web-servers/nginx): allow wildcard subdomains for letsencrypt certs --- modules/nixos/server/web-servers/default.nix | 13 ++++++- .../server/web-servers/nginx/default.nix | 37 ++++++++++--------- 2 files changed, 31 insertions(+), 19 deletions(-) diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index 6225676..c9833d7 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -1,6 +1,11 @@ { config, lib, ... }: let - inherit (lib) mkMerge mkIf mkEnableOption; + inherit (lib) + mkMerge + mkIf + mkEnableOption + singleton + ; cfg = config.server.web-servers; in { @@ -19,6 +24,12 @@ in dnsProvider = "cloudflare"; credentialFiles."CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; }; + certs = { + "rrv.sh".extraDomainNames = singleton "*.rrv.sh"; + "bwfiq.com".extraDomainNames = singleton "*.bwfiq.com"; + "slayment.com".extraDomainNames = singleton "*.slayment.com"; + "aenyrathia.wiki".extraDomainNames = singleton "*.aenyrathia.wiki"; + }; }; }) ]; diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index f5f36cc..339cd86 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -5,15 +5,17 @@ let mkOption mkEnableOption mkIf + singleton ; - inherit (lib.pantheon) mkStrOption; + inherit (lib.types) listOf submodule attrs; + inherit (lib.pantheon) mkStrOption mkRootDomain; inherit (builtins) listToAttrs map; cfg = config.server.web-servers.nginx; - sslCheck = if config.server.web-servers.enableSSL then true else false; + sslCheck = good: bad: if config.server.web-servers.enableSSL then good else bad; defaultSink = mkIf cfg.enableDefaultSink { "_" = { default = true; - rejectSSL = sslCheck; + rejectSSL = sslCheck true false; locations."/" = { return = "444"; }; @@ -23,9 +25,9 @@ let map (proxy: { name = proxy.source; value = { - addSSL = sslCheck; - enableACME = sslCheck; - acmeRoot = null; + addSSL = sslCheck true false; + useACMEHost = sslCheck (mkRootDomain proxy.source) null; + acmeRoot = null; # needed for DNS validation locations."/" = { proxyPass = proxy.target; } // proxy.extraConfig; @@ -43,19 +45,17 @@ in default = true; }; proxies = mkOption { - type = - with lib.types; - listOf (submodule { - options = { - source = mkStrOption; - target = mkStrOption; - extraConfig = lib.mkOption { - type = attrs; - default = { }; - }; - }; - }); default = [ ]; + type = listOf (submodule { + options = { + source = mkStrOption; + target = mkStrOption; + extraConfig = lib.mkOption { + type = attrs; + default = { }; + }; + }; + }); }; }; @@ -64,6 +64,7 @@ in 443 80 ]; + users.users.nginx.extraGroups = singleton "acme"; services.nginx = { enable = true; virtualHosts = mkMerge [ From e65b478d21db3a3e84467cdb675a448919b754a5 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 04:54:51 +0800 Subject: [PATCH 046/373] chore(web-servers): remove staging letsencrypt server --- modules/nixos/server/web-servers/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index c9833d7..8e8570c 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -19,8 +19,6 @@ in acceptTerms = true; defaults = { inherit (config.system.mainUser) email; - #TODO: switch back to production environment - server = "https://acme-staging-v02.api.letsencrypt.org/directory"; dnsProvider = "cloudflare"; credentialFiles."CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; }; From a668db89b3debc1462131d2e53991c3f44f7b3ea Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 05:39:39 +0800 Subject: [PATCH 047/373] feat(cli/nvf): add custom nix snippet for nvf --- modules/home/cli/default.nix | 4 ---- modules/home/cli/editor/nvf/default.nix | 8 +++++++- packages/snippets/default.nix | 8 ++++++++ packages/snippets/package.json | 15 +++++++++++++++ packages/snippets/snippets/nix.json | 22 ++++++++++++++++++++++ 5 files changed, 52 insertions(+), 5 deletions(-) create mode 100644 packages/snippets/default.nix create mode 100644 packages/snippets/package.json create mode 100644 packages/snippets/snippets/nix.json diff --git a/modules/home/cli/default.nix b/modules/home/cli/default.nix index 80caca5..afd16d2 100644 --- a/modules/home/cli/default.nix +++ b/modules/home/cli/default.nix @@ -12,10 +12,6 @@ screensaver.timeout = lib.pantheon.mkStrOption; screensaver.command = lib.pantheon.mkStrOption; editor = lib.pantheon.mkStrOption; - nvf.snippets = lib.mkOption { - type = lib.types.listOf lib.types.attrs; - default = { }; - }; file-browser = lib.pantheon.mkStrOption; multiplexer = lib.pantheon.mkStrOption; fetch = lib.pantheon.mkStrOption; diff --git a/modules/home/cli/editor/nvf/default.nix b/modules/home/cli/editor/nvf/default.nix index 66949bc..abb741c 100644 --- a/modules/home/cli/editor/nvf/default.nix +++ b/modules/home/cli/editor/nvf/default.nix @@ -1,4 +1,9 @@ -{ config, lib, ... }: +{ + config, + lib, + pkgs, + ... +}: { config = lib.mkIf (config.cli.editor == "nvf") { home.sessionVariables.EDITOR = "nvim"; @@ -8,6 +13,7 @@ programs.nvf = { enable = true; settings.vim = { + startPlugins = [ pkgs.pantheon.snippets ]; hideSearchHighlight = true; syntaxHighlighting = true; telescope.enable = true; diff --git a/packages/snippets/default.nix b/packages/snippets/default.nix new file mode 100644 index 0000000..af28023 --- /dev/null +++ b/packages/snippets/default.nix @@ -0,0 +1,8 @@ +{ pkgs, ... }: +let + inherit (pkgs.vimUtils) buildVimPlugin; +in +buildVimPlugin { + name = "snippets"; + src = ./.; +} diff --git a/packages/snippets/package.json b/packages/snippets/package.json new file mode 100644 index 0000000..8b8d648 --- /dev/null +++ b/packages/snippets/package.json @@ -0,0 +1,15 @@ +{ + "name": "snippets", + "engines": { + "vscode": "^1.11.0" + }, + "contributes": { + "snippets": [ + { + "language": "nix", + "path": "./snippets/nix.json" + } + ] + } +} + diff --git a/packages/snippets/snippets/nix.json b/packages/snippets/snippets/nix.json new file mode 100644 index 0000000..2a69c0e --- /dev/null +++ b/packages/snippets/snippets/nix.json @@ -0,0 +1,22 @@ +{ + "module": { + "prefix": "mod", + "body": [ + "{ config, lib, ... }:", + "let", + " inherit (lib) mkEnableOption mkIf;", + " cfg = config.$1;", + "in", + "{", + " options.$2 = {", + " enable = mkEnableOption \"$3\";", + " };", + "", + " config = mkIf cfg.enable {", + " $4", + " };", + "}" + ], + "description": "empty module" + } +} From d9f2603f4b47b311f9bac2d3a93911a1c284cac4 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 05:50:34 +0800 Subject: [PATCH 048/373] feat(server/grafana): add grafana module and enable it on apollo --- .../server/monitoring/grafana/default.nix | 30 +++++++++++++++++++ systems/x86_64-linux/apollo/default.nix | 4 +++ 2 files changed, 34 insertions(+) create mode 100644 modules/nixos/server/monitoring/grafana/default.nix diff --git a/modules/nixos/server/monitoring/grafana/default.nix b/modules/nixos/server/monitoring/grafana/default.nix new file mode 100644 index 0000000..03dc132 --- /dev/null +++ b/modules/nixos/server/monitoring/grafana/default.nix @@ -0,0 +1,30 @@ +{ config, lib, ... }: +let + inherit (lib) singleton mkEnableOption mkIf; + inherit (lib.pantheon) mkRootDomain mkPortOption mkStrOption; + cfg = config.server.monitoring.grafana; +in +{ + options.server.monitoring.grafana = { + enable = mkEnableOption ""; + url = mkStrOption; + port = mkPortOption 3000; + }; + + config = mkIf cfg.enable { + server.networking.ddns.domains = singleton (mkRootDomain cfg.url); + server.web-servers.nginx.proxies = mkIf config.server.web-servers.nginx.enable (singleton { + source = cfg.url; + target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; + extraConfig.proxyWebsockets = true; + }); + services.grafana = { + enable = true; + settings.server = { + domain = cfg.url; + http_port = cfg.port; + http_addr = "0.0.0.0"; + }; + }; + }; +} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 7ed2fab..45362b7 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -20,6 +20,10 @@ }; server = { + monitoring.grafana = { + enable = true; + url = "grafana.bwfiq.com"; + }; networking.ddns = { enable = true; domains = [ From 887dff6840cf3802d885983c0810b3430cd1ca57 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 05:54:46 +0800 Subject: [PATCH 049/373] feat(server/prometheus): add prometheus module and enable it on apollo --- .../server/monitoring/prometheus/default.nix | 19 +++++++++++++++++++ systems/x86_64-linux/apollo/default.nix | 11 ++++++++--- 2 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 modules/nixos/server/monitoring/prometheus/default.nix diff --git a/modules/nixos/server/monitoring/prometheus/default.nix b/modules/nixos/server/monitoring/prometheus/default.nix new file mode 100644 index 0000000..71c60c3 --- /dev/null +++ b/modules/nixos/server/monitoring/prometheus/default.nix @@ -0,0 +1,19 @@ +{ config, lib, ... }: +let + inherit (lib) mkEnableOption mkIf; + inherit (lib.pantheon) mkPortOption; + cfg = config.server.monitoring.prometheus; +in +{ + options.server.monitoring.prometheus = { + enable = mkEnableOption ""; + port = mkPortOption 9090; + }; + + config = mkIf cfg.enable { + services.prometheus = { + enable = true; + inherit (cfg) port; + }; + }; +} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 45362b7..13280bd 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -20,9 +20,14 @@ }; server = { - monitoring.grafana = { - enable = true; - url = "grafana.bwfiq.com"; + monitoring = { + prometheus = { + enable = true; + }; + grafana = { + enable = true; + url = "grafana.bwfiq.com"; + }; }; networking.ddns = { enable = true; From 42b3a92d9bf790034190eec8b071c7e7088d9ecd Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 06:12:23 +0800 Subject: [PATCH 050/373] feat(web-servers/nginx): allow proxy configuration to specify locations --- modules/nixos/server/web-servers/nginx/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index 339cd86..23751cb 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -28,9 +28,11 @@ let addSSL = sslCheck true false; useACMEHost = sslCheck (mkRootDomain proxy.source) null; acmeRoot = null; # needed for DNS validation - locations."/" = { - proxyPass = proxy.target; - } // proxy.extraConfig; + locations = { + "/" = { + proxyPass = proxy.target; + } // proxy.extraConfig; + } // proxy.locations; }; }) cfg.proxies ); @@ -54,6 +56,10 @@ in type = attrs; default = { }; }; + locations = lib.mkOption { + type = attrs; + default = { }; + }; }; }); }; From 66bc9f679da93b5e910859bbf84a16439d2300d2 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 06:14:43 +0800 Subject: [PATCH 051/373] fix(packages/rebuild): fix generation check logic --- packages/rebuild/default.nix | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index a3fe8b8..c1cd3e9 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -91,14 +91,13 @@ pkgs.writeShellScriptBin "rebuild" # sh nh os switch . || { exit 1 } - fi - - if ! "$NO_GENERATION_CHECK"; then - NEW_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) - echo "New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." - if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then - echo "ERROR: New config was not added to bootloader. Exiting..." - exit 1 + if ! "$NO_GENERATION_CHECK"; then + NEW_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) + echo "New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." + if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then + echo "ERROR: New config was not added to bootloader. Exiting..." + exit 1 + fi fi fi From 87c196e499c6dd3f80bea5204c89353a3ddebb0f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 06:21:22 +0800 Subject: [PATCH 052/373] feat(packages/commit): make reroll prompt not require enter --- packages/commit/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/commit/default.nix b/packages/commit/default.nix index b352cee..7cd6d4f 100644 --- a/packages/commit/default.nix +++ b/packages/commit/default.nix @@ -27,10 +27,11 @@ pkgs.writeShellScriptBin "commit" # bash RESPONSE=$(aichat "$PROMPT\nGuidelines: $GUIDELINES\nContext from git log:\n$CONTEXT\nDiff from git diff HEAD:\n$DIFF") while true; do - echo "Generated Commit Message:" echo "$RESPONSE" - echo "Options: [y]es, [r]eroll, [e]dit, [q]uit?" - read -r -p "Choose an action: " choice + echo + echo "Choose an action:" + read -p "Options: [y]es, [r]eroll, [e]dit, [q]uit?" -n 1 -r choice + echo case "$choice" in y | yes) From 127cc02ecc0d2ada313df0fff3537a0f81194c48 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 06:36:01 +0800 Subject: [PATCH 053/373] feat(server/grafana): add proxy websocket support for live api --- modules/nixos/server/monitoring/grafana/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/nixos/server/monitoring/grafana/default.nix b/modules/nixos/server/monitoring/grafana/default.nix index 03dc132..5252c74 100644 --- a/modules/nixos/server/monitoring/grafana/default.nix +++ b/modules/nixos/server/monitoring/grafana/default.nix @@ -17,6 +17,10 @@ in source = cfg.url; target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; extraConfig.proxyWebsockets = true; + locations."/api/live/" = { + proxyPass = "http://${config.system.hostname}:${builtins.toString cfg.port}"; + proxyWebsockets = true; + }; }); services.grafana = { enable = true; From 662049ba4b27f4b3a088184cb7fa6983d2cc59d1 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 06:47:50 +0800 Subject: [PATCH 054/373] feat(packages/check): add check package with nginx config checker --- homes/x86_64-linux/rafiq/default.nix | 1 + packages/check/default.nix | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 packages/check/default.nix diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index f01cc2f..1c1e895 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -64,6 +64,7 @@ in pantheon.deploy pantheon.edit pantheon.commit + pantheon.check inputs.nixspect.packages."x86_64-linux".nixspect ]; diff --git a/packages/check/default.nix b/packages/check/default.nix new file mode 100644 index 0000000..4039d22 --- /dev/null +++ b/packages/check/default.nix @@ -0,0 +1,20 @@ +{ pkgs, ... }: +pkgs.writeShellScriptBin "check" # bash + '' + check_nginx() { + ssh apollo systemctl show nginx | grep '^ExecStart=' | grep -oP ' -c \K[^ ]+' | xargs cat + } + + while [[ $# -gt 0 ]]; do + case "$1" in + nginx) + check_nginx + exit 0 + ;; + *) + echo "Unrecognised parameter." + exit 1 + ;; + esac + done + '' From 10661dda3b1d27a8ac6a2b3d59a2efbee0ffdbdb Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 07:03:22 +0800 Subject: [PATCH 055/373] feat(web-servers/nginx): enable recommended settings for nginx --- modules/nixos/server/web-servers/nginx/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index 23751cb..4272d3a 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -73,6 +73,10 @@ in users.users.nginx.extraGroups = singleton "acme"; services.nginx = { enable = true; + recommendedProxySettings = true; + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; virtualHosts = mkMerge [ defaultSink proxyPasses From 7e256c954db3acf605cfcc45850058f6c2a01a40 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 20:27:28 +0800 Subject: [PATCH 056/373] feat(server/grafana,server/prometheus): add prometheus datasource and node exporter config --- .../nixos/server/monitoring/grafana/default.nix | 8 +++++++- .../server/monitoring/prometheus/default.nix | 17 +++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/modules/nixos/server/monitoring/grafana/default.nix b/modules/nixos/server/monitoring/grafana/default.nix index 5252c74..e975592 100644 --- a/modules/nixos/server/monitoring/grafana/default.nix +++ b/modules/nixos/server/monitoring/grafana/default.nix @@ -19,7 +19,6 @@ in extraConfig.proxyWebsockets = true; locations."/api/live/" = { proxyPass = "http://${config.system.hostname}:${builtins.toString cfg.port}"; - proxyWebsockets = true; }; }); services.grafana = { @@ -29,6 +28,13 @@ in http_port = cfg.port; http_addr = "0.0.0.0"; }; + provision.datasources.settings.datasources = [ + { + name = "prometheus"; + type = "Prometheus"; + url = "http://${config.system.hostname}:${builtins.toString config.server.monitoring.prometheus.port}"; + } + ]; }; }; } diff --git a/modules/nixos/server/monitoring/prometheus/default.nix b/modules/nixos/server/monitoring/prometheus/default.nix index 71c60c3..9b4294e 100644 --- a/modules/nixos/server/monitoring/prometheus/default.nix +++ b/modules/nixos/server/monitoring/prometheus/default.nix @@ -3,6 +3,7 @@ let inherit (lib) mkEnableOption mkIf; inherit (lib.pantheon) mkPortOption; cfg = config.server.monitoring.prometheus; + upstreamCfg = config.services.prometheus; in { options.server.monitoring.prometheus = { @@ -14,6 +15,22 @@ in services.prometheus = { enable = true; inherit (cfg) port; + scrapeConfigs = [ + { + job_name = "chrysalis"; + static_configs = [ + { + targets = [ "127.0.0.1:${toString upstreamCfg.exporters.node.port}" ]; + } + ]; + } + ]; + + exporters.node = { + enable = true; + enabledCollectors = [ "systemd" ]; + port = 9091; + }; }; }; } From 02c356494a1d59f02059855f94f0ab25007d4a22 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 21:09:43 +0800 Subject: [PATCH 057/373] feat(desktop/firefox): add synced profile support and move desktop config --- .../home/desktop/browser/firefox/default.nix | 24 +++++++++++++-- modules/nixos/desktop/browser/default.nix | 25 ++++++++++++++++ modules/nixos/desktop/default.nix | 1 - systems/x86_64-linux/desktop.nix | 28 +++++++++++++++++ systems/x86_64-linux/mellinoe/default.nix | 21 +++---------- systems/x86_64-linux/nemesis/default.nix | 30 +++---------------- 6 files changed, 82 insertions(+), 47 deletions(-) create mode 100644 modules/nixos/desktop/browser/default.nix create mode 100644 systems/x86_64-linux/desktop.nix diff --git a/modules/home/desktop/browser/firefox/default.nix b/modules/home/desktop/browser/firefox/default.nix index ab4f2e0..7dce597 100644 --- a/modules/home/desktop/browser/firefox/default.nix +++ b/modules/home/desktop/browser/firefox/default.nix @@ -1,12 +1,30 @@ { osConfig, lib, ... }: +let + inherit (builtins) map listToAttrs; + inherit (lib.lists) findFirstIndex; + cfg = osConfig.desktop.browser.firefox; + profileCfg = id: { + inherit id; + }; + profiles = listToAttrs ( + map (name: { + inherit name; + # If there are duplicate profile names, findFirstIndex will cause issues. + # We sanitize the input in nixosModules.desktop to avoid this. + value = profileCfg (findFirstIndex (x: x == name) null cfg.syncedProfiles); + }) cfg.syncedProfiles + ); +in { - config = lib.mkIf (osConfig.desktop.browser == "firefox") { + config = lib.mkIf cfg.enable { home.persistence."/persist/home/rafiq".directories = [ ".mozilla/firefox" ]; home.sessionVariables.BROWSER = "firefox"; programs.firefox = { enable = true; - profiles.rafiq.id = 0; - profiles.test.id = 1; + inherit profiles; + }; + stylix.targets.firefox = { + profileNames = cfg.syncedProfiles; }; }; } diff --git a/modules/nixos/desktop/browser/default.nix b/modules/nixos/desktop/browser/default.nix new file mode 100644 index 0000000..2122f44 --- /dev/null +++ b/modules/nixos/desktop/browser/default.nix @@ -0,0 +1,25 @@ +{ lib, config, ... }: +let + inherit (lib) mkEnableOption mkOption; + inherit (lib.types) listOf str; + inherit (lib.lists) allUnique; + cfg = config.desktop.browser; +in +{ + options.desktop.browser = { + firefox = { + enable = mkEnableOption ""; + syncedProfiles = mkOption { + type = listOf str; + default = [ ]; + }; + }; + }; + + config.assertions = [ + { + assertion = allUnique cfg.firefox.syncedProfiles; + message = "desktop.browser.firefox.syncedProfiles has duplicate elements."; + } + ]; +} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index badd341..914e768 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -18,7 +18,6 @@ }; windowManager = lib.pantheon.mkStrOption; lockscreen = lib.pantheon.mkStrOption; - browser = lib.pantheon.mkStrOption; terminal = lib.pantheon.mkStrOption; notification-daemon = lib.pantheon.mkStrOption; launcher = lib.pantheon.mkStrOption; diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix new file mode 100644 index 0000000..d35d20f --- /dev/null +++ b/systems/x86_64-linux/desktop.nix @@ -0,0 +1,28 @@ +{ + desktop = { + browser.firefox = { + enable = true; + syncedProfiles = [ + "rafiq" + "test" + ]; + }; + windowManager = "hyprland"; + terminal = "ghostty"; + lockscreen = "hyprlock"; + notification-daemon = "mako"; + launcher = "fuzzel"; + status-bar = "waybar"; + media-player = "vlc"; + mainMonitor = { + id = "desc:OOO AN-270W04K"; + scale = "2"; + resolution = "3840x2160"; + refresh-rate = "60"; + }; + enableSpotifyd = true; + enableSteam = true; + enableVR = true; + enableSunshine = true; + }; +} diff --git a/systems/x86_64-linux/mellinoe/default.nix b/systems/x86_64-linux/mellinoe/default.nix index e3f89df..26d95fd 100644 --- a/systems/x86_64-linux/mellinoe/default.nix +++ b/systems/x86_64-linux/mellinoe/default.nix @@ -1,5 +1,8 @@ -{ lib, ... }: { + imports = [ + ../common.nix + ../desktop.nix + ]; system = { hostname = "mellinoe"; @@ -14,20 +17,4 @@ }; platform = "intel"; }; - - desktop = { - windowManager = "hyprland"; - browser = "firefox"; - terminal = "ghostty"; - lockscreen = "hyprlock"; - notification-daemon = "mako"; - launcher = "fuzzel"; - status-bar = "waybar"; - mainMonitor = { - id = "BOE 0x088B"; - scale = "2"; - resolution = "1920x1280"; - refresh-rate = "60"; - }; - }; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index f8b4af4..185f794 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -1,9 +1,8 @@ { - lib, - ... -}: -{ - imports = lib.singleton ../common.nix; + imports = [ + ../common.nix + ../desktop.nix + ]; system = { hostname = "nemesis"; @@ -20,27 +19,6 @@ gpu = "nvidia"; }; - desktop = { - windowManager = "hyprland"; - browser = "firefox"; - terminal = "ghostty"; - lockscreen = "hyprlock"; - notification-daemon = "mako"; - launcher = "fuzzel"; - status-bar = "waybar"; - media-player = "vlc"; - mainMonitor = { - id = "desc:OOO AN-270W04K"; - scale = "2"; - resolution = "3840x2160"; - refresh-rate = "60"; - }; - enableSpotifyd = true; - enableSteam = true; - enableVR = true; - enableSunshine = true; - }; - services = { tor = { enable = true; From fba8f1bfddc30feec06bb361a71321307f87dea7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 21:30:28 +0800 Subject: [PATCH 058/373] feat(desktop/firefox): add extension support to profiles --- .../home/desktop/browser/firefox/default.nix | 26 +++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/modules/home/desktop/browser/firefox/default.nix b/modules/home/desktop/browser/firefox/default.nix index 7dce597..1605bcb 100644 --- a/modules/home/desktop/browser/firefox/default.nix +++ b/modules/home/desktop/browser/firefox/default.nix @@ -1,10 +1,31 @@ -{ osConfig, lib, ... }: +{ + osConfig, + lib, + inputs, + system, + ... +}: let inherit (builtins) map listToAttrs; + inherit (lib) mkIf; inherit (lib.lists) findFirstIndex; + inherit (inputs.nur.legacyPackages.${system}.repos.rycee) firefox-addons; cfg = osConfig.desktop.browser.firefox; profileCfg = id: { inherit id; + #TODO: move this into an option? + settings = { + "extensions.autoDisableScopes" = 0; # Auto enable extensions + }; + extensions = { + force = true; + packages = with firefox-addons; [ + darkreader + gesturefy + sponsorblock + ublock-origin + ]; + }; }; profiles = listToAttrs ( map (name: { @@ -16,7 +37,7 @@ let ); in { - config = lib.mkIf cfg.enable { + config = mkIf cfg.enable { home.persistence."/persist/home/rafiq".directories = [ ".mozilla/firefox" ]; home.sessionVariables.BROWSER = "firefox"; programs.firefox = { @@ -25,6 +46,7 @@ in }; stylix.targets.firefox = { profileNames = cfg.syncedProfiles; + colorTheme.enable = true; }; }; } From a654a6b9b65f67819c708cdf8092a65776f2b527 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 13 Jun 2025 21:46:18 +0800 Subject: [PATCH 059/373] refactor(nixos/desktop): move hyprlock config to nixos module --- modules/home/desktop/lockscreen/default.nix | 47 ------------------ .../desktop/lockscreen/hyprlock/default.nix | 49 +++++++++++++++++++ modules/nixos/desktop/default.nix | 1 - modules/nixos/desktop/lockscreen/default.nix | 12 ++++- systems/x86_64-linux/desktop.nix | 2 +- 5 files changed, 60 insertions(+), 51 deletions(-) delete mode 100644 modules/home/desktop/lockscreen/default.nix create mode 100644 modules/home/desktop/lockscreen/hyprlock/default.nix diff --git a/modules/home/desktop/lockscreen/default.nix b/modules/home/desktop/lockscreen/default.nix deleted file mode 100644 index 8003c52..0000000 --- a/modules/home/desktop/lockscreen/default.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ - osConfig, - lib, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (osConfig.desktop.lockscreen == "hyprlock") { - home.sessionVariables.LOCKSCREEN = "hyprlock"; - programs.hyprlock = { - enable = true; - settings = { - general.hide_cursor = true; - general.ignore_empty_input = true; - - background = { - blur_passes = 5; - blur_size = 5; - }; - - label = { - text = ''hi, $USER.''; - font_size = 32; - halign = "center"; - valign = "center"; - position = "0, 0"; - zindex = 1; - shadow_passes = 5; - shadow_size = 5; - }; - - input-field = { - fade_on_empty = true; - size = "200, 45"; - halign = "center"; - valign = "center"; - position = "0, -5%"; - placeholder_text = ""; - zindex = 1; - shadow_passes = 5; - shadow_size = 5; - }; - }; - }; - }) - ]; -} diff --git a/modules/home/desktop/lockscreen/hyprlock/default.nix b/modules/home/desktop/lockscreen/hyprlock/default.nix new file mode 100644 index 0000000..0d7de98 --- /dev/null +++ b/modules/home/desktop/lockscreen/hyprlock/default.nix @@ -0,0 +1,49 @@ +{ osConfig, lib, ... }: +let + inherit (lib) singleton mkIf; + cfg = osConfig.desktop.lockscreen.hyprlock; +in +{ + config = mkIf cfg.enable { + assertions = singleton { + assertion = osConfig.security.pam.services ? hyprlock; + message = "You must add hyprlock to osConfig.security.pam.services."; + }; + home.sessionVariables.LOCKSCREEN = "hyprlock"; + programs.hyprlock = { + enable = true; + settings = { + general.hide_cursor = true; + general.ignore_empty_input = true; + + background = { + blur_passes = 5; + blur_size = 5; + }; + + label = { + text = ''hi, $USER.''; + font_size = 32; + halign = "center"; + valign = "center"; + position = "0, 0"; + zindex = 1; + shadow_passes = 5; + shadow_size = 5; + }; + + input-field = { + fade_on_empty = true; + size = "200, 45"; + halign = "center"; + valign = "center"; + position = "0, -5%"; + placeholder_text = ""; + zindex = 1; + shadow_passes = 5; + shadow_size = 5; + }; + }; + }; + }; +} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 914e768..7a88799 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -17,7 +17,6 @@ refresh-rate = lib.pantheon.mkStrOption; }; windowManager = lib.pantheon.mkStrOption; - lockscreen = lib.pantheon.mkStrOption; terminal = lib.pantheon.mkStrOption; notification-daemon = lib.pantheon.mkStrOption; launcher = lib.pantheon.mkStrOption; diff --git a/modules/nixos/desktop/lockscreen/default.nix b/modules/nixos/desktop/lockscreen/default.nix index ce40153..bcc94b1 100644 --- a/modules/nixos/desktop/lockscreen/default.nix +++ b/modules/nixos/desktop/lockscreen/default.nix @@ -1,7 +1,15 @@ { config, lib, ... }: +let + inherit (lib) mkEnableOption mkIf mkMerge; + cfg = config.desktop.lockscreen; +in { - config = lib.mkMerge [ - (lib.mkIf (config.desktop.lockscreen == "hyprlock") { + options.desktop.lockscreen = { + hyprlock.enable = mkEnableOption ""; + }; + + config = mkMerge [ + (mkIf cfg.hyprlock.enable { security.pam.services.hyprlock = { }; }) ]; diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index d35d20f..c7b8baf 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -7,9 +7,9 @@ "test" ]; }; + lockscreen.hyprlock.enable = true; windowManager = "hyprland"; terminal = "ghostty"; - lockscreen = "hyprlock"; notification-daemon = "mako"; launcher = "fuzzel"; status-bar = "waybar"; From 63b80b67ce433ea099868104a64e9b68e37a6540 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 04:15:28 +0800 Subject: [PATCH 060/373] feat(nixos/desktop): enable desktop module by default --- modules/home/desktop/default.nix | 7 ++++--- modules/nixos/desktop/default.nix | 7 ++++++- systems/x86_64-linux/desktop.nix | 1 + 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/modules/home/desktop/default.nix b/modules/home/desktop/default.nix index 85c668d..43f78ac 100644 --- a/modules/home/desktop/default.nix +++ b/modules/home/desktop/default.nix @@ -7,13 +7,14 @@ }: let cfg = config.desktop; - inherit (lib) mkIf mkEnableOption; + upstreamCfg = osConfig.desktop; + inherit (lib) mkMerge mkIf mkEnableOption; in { options.desktop = { wayland.enableUtils = mkEnableOption "common Wayland utilities"; }; - config = lib.mkMerge [ + config = mkIf upstreamCfg.enable (mkMerge [ (mkIf cfg.wayland.enableUtils { home.packages = with pkgs; [ wl-clipboard-rs @@ -43,5 +44,5 @@ in ".config/sunshine" ]; }) - ]; + ]); } diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 7a88799..4347979 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -4,14 +4,19 @@ pkgs, ... }: +let + inherit (lib) mkEnableOption; + inherit (lib.pantheon) mkStrOption; +in { imports = [ ./windowManager.nix ]; options.desktop = { + enable = mkEnableOption ""; mainMonitor = { - id = lib.pantheon.mkStrOption; + id = mkStrOption; scale = lib.pantheon.mkStrOption; resolution = lib.pantheon.mkStrOption; refresh-rate = lib.pantheon.mkStrOption; diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index c7b8baf..b004fd7 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -1,5 +1,6 @@ { desktop = { + enable = true; browser.firefox = { enable = true; syncedProfiles = [ From d39cad5faa5f974fe83ec11ba7ac83f8a0d98d6a Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 04:21:35 +0800 Subject: [PATCH 061/373] feat(home): conditionally enable programs and packages based on desktop module --- homes/x86_64-linux/rafiq/default.nix | 137 ++++++++++++++------------- 1 file changed, 73 insertions(+), 64 deletions(-) diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 1c1e895..dca5441 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -2,9 +2,11 @@ pkgs, inputs, osConfig, + lib, ... }: let + inherit (lib) mkMerge mkIf; mkEmailAccount = address: { inherit address; maildir.path = address; @@ -23,71 +25,78 @@ let }; in { - accounts = { - email = { - maildirBasePath = "mail"; - accounts = { - "rafiq@rrv.sh" = { - primary = true; - } // mkEmailAccount "rafiq@rrv.sh"; - "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; + config = mkMerge [ + (mkIf osConfig.desktop.enable { + programs = { + obs-studio.enable = true; + thunderbird.enable = true; + thunderbird.profiles.rafiq.isDefault = true; }; - }; - }; - cli = { - shell = "zsh"; - finder = "fzf"; - screensaver.enable = true; - screensaver.timeout = "100"; - screensaver.command = "cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; - editor = "nvf"; - file-browser = "yazi"; - multiplexer = "zellij"; - fetch = "hyfetch"; - git.name = "Mohammad Rafiq"; - git.email = "rafiq@rrv.sh"; - git.defaultBranch = "prime"; - }; - home = { - shellAliases = { - v = "nvim"; - e = "edit"; - }; + home.packages = with pkgs; [ + stremio + tor-browser + ]; + }) + { + accounts = { + email = { + maildirBasePath = "mail"; + accounts = { + "rafiq@rrv.sh" = { + primary = true; + } // mkEmailAccount "rafiq@rrv.sh"; + "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; + }; + }; + }; + cli = { + shell = "zsh"; + finder = "fzf"; + screensaver.enable = true; + screensaver.timeout = "100"; + screensaver.command = "cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; + editor = "nvf"; + file-browser = "yazi"; + multiplexer = "zellij"; + fetch = "hyfetch"; + git.name = "Mohammad Rafiq"; + git.email = "rafiq@rrv.sh"; + git.defaultBranch = "prime"; + }; + home = { + shellAliases = { + v = "nvim"; + e = "edit"; + }; - packages = with pkgs; [ - cbonsai - ripgrep - devenv - stremio - tor-browser - pantheon.rebuild - pantheon.deploy - pantheon.edit - pantheon.commit - pantheon.check - inputs.nixspect.packages."x86_64-linux".nixspect - ]; + packages = with pkgs; [ + cbonsai + ripgrep + devenv + pantheon.rebuild + pantheon.deploy + pantheon.edit + pantheon.commit + pantheon.check + inputs.nixspect.packages."x86_64-linux".nixspect + ]; - persistence."/persist/home/rafiq".directories = [ - "docs" - "repos" - ".tor project" - ]; - }; - programs = { - nh.enable = true; - tealdeer.enable = true; - pay-respects = { - enable = true; - }; - tealdeer.settings.updates.auto_update = true; - direnv = { - enable = true; - nix-direnv.enable = true; - }; - thunderbird.enable = true; - thunderbird.profiles.rafiq = { - isDefault = true; - }; - }; + persistence."/persist/home/rafiq".directories = [ + "docs" + "repos" + ".tor project" + ]; + }; + programs = { + nh.enable = true; + tealdeer.enable = true; + tealdeer.settings.updates.auto_update = true; + pay-respects.enable = true; + direnv = { + enable = true; + nix-direnv.enable = true; + }; + }; + } + ]; } From a33f7062babb8bc8f1a8d5369cc880002ffd74f2 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 04:51:23 +0800 Subject: [PATCH 062/373] feat(home): persist prism launcher directory and add package --- homes/x86_64-linux/rafiq/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index dca5441..bbc19d7 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -27,6 +27,9 @@ in { config = mkMerge [ (mkIf osConfig.desktop.enable { + home.persistence."/persist/home/rafiq".directories = [ + ".local/share/PrismLauncher" + ]; programs = { obs-studio.enable = true; thunderbird.enable = true; @@ -35,6 +38,7 @@ in home.packages = with pkgs; [ stremio tor-browser + prismlauncher ]; }) { From cdc46d8b3a3f8b5a03ed8b1456398e2f033957b6 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 05:13:32 +0800 Subject: [PATCH 063/373] feat(hardware): enable qmk keyboard support and add udev rules --- modules/nixos/hardware/default.nix | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index d6c2136..08dd17c 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -1,4 +1,9 @@ -{ lib, config, ... }: +{ + lib, + config, + pkgs, + ... +}: { imports = [ ./btrfs.nix @@ -19,6 +24,16 @@ config = lib.mkMerge [ { + hardware.keyboard.qmk.enable = true; + services.udev = { + packages = with pkgs; [ + vial + via + qmk + qmk-udev-rules + qmk_hid + ]; + }; services.fwupd.enable = true; environment.persistence."/persist".directories = lib.singleton "/var/lib/bluetooth"; hardware.bluetooth = { From 83886e4fcf8002f900d0ae1c242c5a91a8400f68 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 05:42:03 +0800 Subject: [PATCH 064/373] feat(home): persist more directories in /persist --- homes/x86_64-linux/rafiq/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index bbc19d7..8c5ec62 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -28,6 +28,11 @@ in config = mkMerge [ (mkIf osConfig.desktop.enable { home.persistence."/persist/home/rafiq".directories = [ + "docs" + "repos" + "vids" + "tmp" + ".tor project" ".local/share/PrismLauncher" ]; programs = { @@ -86,9 +91,6 @@ in ]; persistence."/persist/home/rafiq".directories = [ - "docs" - "repos" - ".tor project" ]; }; programs = { From 809ca313625a4d505bd7ff20056f7b3956f99e93 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 11:03:43 +0800 Subject: [PATCH 065/373] feat(hardware): enable usb automounting --- modules/nixos/hardware/default.nix | 17 +++++++++++++++++ systems/x86_64-linux/nemesis/default.nix | 1 + 2 files changed, 18 insertions(+) diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 08dd17c..3bb2ccc 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -4,6 +4,10 @@ pkgs, ... }: +let + inherit (lib) mkIf mkEnableOption singleton; + cfg = config.hardware; +in { imports = [ ./btrfs.nix @@ -20,9 +24,22 @@ }; gpu = lib.pantheon.mkStrOption; platform = lib.pantheon.mkStrOption; + usb = { + automount = mkEnableOption ""; + }; }; config = lib.mkMerge [ + (mkIf cfg.usb.automount { + services.udisks2.enable = true; + home-manager.sharedModules = singleton { + services.udiskie = { + enable = true; + automount = true; + notify = true; + }; + }; + }) { hardware.keyboard.qmk.enable = true; services.udev = { diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 185f794..093c992 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -17,6 +17,7 @@ }; platform = "amd"; gpu = "nvidia"; + usb.automount = true; }; services = { From 844e6b263e2d46a05e9aaaa8b36e594088ca71a7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 11:05:00 +0800 Subject: [PATCH 066/373] fix(commit): add space after quit option prompt --- packages/commit/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/commit/default.nix b/packages/commit/default.nix index 7cd6d4f..4ef3406 100644 --- a/packages/commit/default.nix +++ b/packages/commit/default.nix @@ -30,7 +30,7 @@ pkgs.writeShellScriptBin "commit" # bash echo "$RESPONSE" echo echo "Choose an action:" - read -p "Options: [y]es, [r]eroll, [e]dit, [q]uit?" -n 1 -r choice + read -p "Options: [y]es, [r]eroll, [e]dit, [q]uit? " -n 1 -r choice echo case "$choice" in From 6897ad63c9afd6a3d4e0d5b96bc87b2caf2f903d Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 11:52:50 +0800 Subject: [PATCH 067/373] feat(desktop): move firefox config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/default.nix | 2 + homes/x86_64-linux/rafiq/desktop/browser.nix | 39 ++++++++++++++ homes/x86_64-linux/rafiq/desktop/default.nix | 12 +++++ .../home/desktop/browser/firefox/default.nix | 52 ------------------- modules/home/system/default.nix | 27 +++++++--- modules/nixos/desktop/browser/default.nix | 25 --------- .../nixos/desktop/browser/firefox/default.nix | 20 +++++++ systems/x86_64-linux/desktop.nix | 8 +-- 8 files changed, 95 insertions(+), 90 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/browser.nix create mode 100644 homes/x86_64-linux/rafiq/desktop/default.nix delete mode 100644 modules/home/desktop/browser/firefox/default.nix delete mode 100644 modules/nixos/desktop/browser/default.nix create mode 100644 modules/nixos/desktop/browser/firefox/default.nix diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 8c5ec62..07d8c02 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -3,6 +3,7 @@ inputs, osConfig, lib, + system, ... }: let @@ -26,6 +27,7 @@ let in { config = mkMerge [ + (mkIf osConfig.desktop.enable (import ./desktop { inherit lib inputs system; })) (mkIf osConfig.desktop.enable { home.persistence."/persist/home/rafiq".directories = [ "docs" diff --git a/homes/x86_64-linux/rafiq/desktop/browser.nix b/homes/x86_64-linux/rafiq/desktop/browser.nix new file mode 100644 index 0000000..e156c8a --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/browser.nix @@ -0,0 +1,39 @@ +{ + lib, + inputs, + system, +}: +let + inherit (builtins) map listToAttrs; + inherit (lib.lists) findFirstIndex; + inherit (inputs.nur.legacyPackages.${system}.repos.rycee) firefox-addons; + profiles = listToAttrs ( + map (name: { + inherit name; + # If there are duplicate profile names, findFirstIndex will cause issues. + value = profileCfg (findFirstIndex (x: x == name) null syncedProfiles); + }) syncedProfiles + ); + syncedProfiles = [ + "rafiq" + "test" + ]; + profileCfg = id: { + inherit id; + settings."extensions.autoDisableScopes" = 0; # Auto enable extensions + extensions = { + force = true; + packages = with firefox-addons; [ + darkreader + gesturefy + sponsorblock + ublock-origin + ]; + }; + }; +in +{ + home.sessionVariables.BROWSER = "firefox"; + programs.firefox = { inherit profiles; }; + stylix.targets.firefox.profileNames = syncedProfiles; +} diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix new file mode 100644 index 0000000..3c5d58d --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -0,0 +1,12 @@ +{ + lib, + inputs, + system, + ... +}: +let + inherit (lib) mkMerge; +in +mkMerge [ + (import ./browser.nix { inherit lib inputs system; }) +] diff --git a/modules/home/desktop/browser/firefox/default.nix b/modules/home/desktop/browser/firefox/default.nix deleted file mode 100644 index 1605bcb..0000000 --- a/modules/home/desktop/browser/firefox/default.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ - osConfig, - lib, - inputs, - system, - ... -}: -let - inherit (builtins) map listToAttrs; - inherit (lib) mkIf; - inherit (lib.lists) findFirstIndex; - inherit (inputs.nur.legacyPackages.${system}.repos.rycee) firefox-addons; - cfg = osConfig.desktop.browser.firefox; - profileCfg = id: { - inherit id; - #TODO: move this into an option? - settings = { - "extensions.autoDisableScopes" = 0; # Auto enable extensions - }; - extensions = { - force = true; - packages = with firefox-addons; [ - darkreader - gesturefy - sponsorblock - ublock-origin - ]; - }; - }; - profiles = listToAttrs ( - map (name: { - inherit name; - # If there are duplicate profile names, findFirstIndex will cause issues. - # We sanitize the input in nixosModules.desktop to avoid this. - value = profileCfg (findFirstIndex (x: x == name) null cfg.syncedProfiles); - }) cfg.syncedProfiles - ); -in -{ - config = mkIf cfg.enable { - home.persistence."/persist/home/rafiq".directories = [ ".mozilla/firefox" ]; - home.sessionVariables.BROWSER = "firefox"; - programs.firefox = { - enable = true; - inherit profiles; - }; - stylix.targets.firefox = { - profileNames = cfg.syncedProfiles; - colorTheme.enable = true; - }; - }; -} diff --git a/modules/home/system/default.nix b/modules/home/system/default.nix index 3996e00..d061d19 100644 --- a/modules/home/system/default.nix +++ b/modules/home/system/default.nix @@ -1,12 +1,27 @@ -{ config, ... }: +{ config, lib, ... }: +let + inherit (lib) mkOption; + inherit (lib.types) listOf str; +in { - home.persistence."/persist/home/${config.snowfallorg.user.name}" = { - directories = [ + options = { + persistDirs = mkOption { + type = listOf str; + default = [ ]; + }; + }; + + config = { + home.persistence."/persist/home/${config.snowfallorg.user.name}" = { + directories = config.persistDirs; + allowOther = true; + }; + + persistDirs = [ ".ssh" ".config/sops/age" ]; - allowOther = true; - }; - home.stateVersion = "24.11"; + home.stateVersion = "24.11"; + }; } diff --git a/modules/nixos/desktop/browser/default.nix b/modules/nixos/desktop/browser/default.nix deleted file mode 100644 index 2122f44..0000000 --- a/modules/nixos/desktop/browser/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ lib, config, ... }: -let - inherit (lib) mkEnableOption mkOption; - inherit (lib.types) listOf str; - inherit (lib.lists) allUnique; - cfg = config.desktop.browser; -in -{ - options.desktop.browser = { - firefox = { - enable = mkEnableOption ""; - syncedProfiles = mkOption { - type = listOf str; - default = [ ]; - }; - }; - }; - - config.assertions = [ - { - assertion = allUnique cfg.firefox.syncedProfiles; - message = "desktop.browser.firefox.syncedProfiles has duplicate elements."; - } - ]; -} diff --git a/modules/nixos/desktop/browser/firefox/default.nix b/modules/nixos/desktop/browser/firefox/default.nix new file mode 100644 index 0000000..7a5de17 --- /dev/null +++ b/modules/nixos/desktop/browser/firefox/default.nix @@ -0,0 +1,20 @@ +{ lib, config, ... }: +let + inherit (lib) + mkEnableOption + mkIf + singleton + ; + cfg = config.desktop.browser.firefox; +in +{ + options.desktop.browser.firefox.enable = mkEnableOption ""; + + config = mkIf cfg.enable { + home-manager.sharedModules = singleton { + persistDirs = singleton ".mozilla/firefox"; + programs.firefox.enable = true; + stylix.targets.firefox.colorTheme.enable = true; + }; + }; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index b004fd7..4cd3726 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -1,13 +1,7 @@ { desktop = { enable = true; - browser.firefox = { - enable = true; - syncedProfiles = [ - "rafiq" - "test" - ]; - }; + browser.firefox.enable = true; lockscreen.hyprlock.enable = true; windowManager = "hyprland"; terminal = "ghostty"; From 71b3703c75fecf86dc06bbc1b1b844dca9027164 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 12:02:58 +0800 Subject: [PATCH 068/373] feat(desktop): move lockscreen config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/desktop/default.nix | 1 + .../x86_64-linux/rafiq/desktop/lockscreen.nix | 35 +++++++++++++ .../desktop/lockscreen/hyprlock/default.nix | 49 ------------------- modules/nixos/desktop/lockscreen/default.nix | 8 ++- 4 files changed, 43 insertions(+), 50 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/lockscreen.nix delete mode 100644 modules/home/desktop/lockscreen/hyprlock/default.nix diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix index 3c5d58d..8778d76 100644 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -9,4 +9,5 @@ let in mkMerge [ (import ./browser.nix { inherit lib inputs system; }) + (import ./lockscreen.nix) ] diff --git a/homes/x86_64-linux/rafiq/desktop/lockscreen.nix b/homes/x86_64-linux/rafiq/desktop/lockscreen.nix new file mode 100644 index 0000000..486483e --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/lockscreen.nix @@ -0,0 +1,35 @@ +{ + home.sessionVariables.LOCKSCREEN = "hyprlock"; + programs.hyprlock.settings = { + general.hide_cursor = true; + general.ignore_empty_input = true; + + background = { + blur_passes = 5; + blur_size = 5; + }; + + label = { + text = ''hi, $USER.''; + font_size = 32; + halign = "center"; + valign = "center"; + position = "0, 0"; + zindex = 1; + shadow_passes = 5; + shadow_size = 5; + }; + + input-field = { + fade_on_empty = true; + size = "200, 45"; + halign = "center"; + valign = "center"; + position = "0, -5%"; + placeholder_text = ""; + zindex = 1; + shadow_passes = 5; + shadow_size = 5; + }; + }; +} diff --git a/modules/home/desktop/lockscreen/hyprlock/default.nix b/modules/home/desktop/lockscreen/hyprlock/default.nix deleted file mode 100644 index 0d7de98..0000000 --- a/modules/home/desktop/lockscreen/hyprlock/default.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ osConfig, lib, ... }: -let - inherit (lib) singleton mkIf; - cfg = osConfig.desktop.lockscreen.hyprlock; -in -{ - config = mkIf cfg.enable { - assertions = singleton { - assertion = osConfig.security.pam.services ? hyprlock; - message = "You must add hyprlock to osConfig.security.pam.services."; - }; - home.sessionVariables.LOCKSCREEN = "hyprlock"; - programs.hyprlock = { - enable = true; - settings = { - general.hide_cursor = true; - general.ignore_empty_input = true; - - background = { - blur_passes = 5; - blur_size = 5; - }; - - label = { - text = ''hi, $USER.''; - font_size = 32; - halign = "center"; - valign = "center"; - position = "0, 0"; - zindex = 1; - shadow_passes = 5; - shadow_size = 5; - }; - - input-field = { - fade_on_empty = true; - size = "200, 45"; - halign = "center"; - valign = "center"; - position = "0, -5%"; - placeholder_text = ""; - zindex = 1; - shadow_passes = 5; - shadow_size = 5; - }; - }; - }; - }; -} diff --git a/modules/nixos/desktop/lockscreen/default.nix b/modules/nixos/desktop/lockscreen/default.nix index bcc94b1..1074bbd 100644 --- a/modules/nixos/desktop/lockscreen/default.nix +++ b/modules/nixos/desktop/lockscreen/default.nix @@ -1,6 +1,11 @@ { config, lib, ... }: let - inherit (lib) mkEnableOption mkIf mkMerge; + inherit (lib) + mkEnableOption + mkIf + mkMerge + singleton + ; cfg = config.desktop.lockscreen; in { @@ -11,6 +16,7 @@ in config = mkMerge [ (mkIf cfg.hyprlock.enable { security.pam.services.hyprlock = { }; + home-manager.sharedModules = singleton { programs.hyprlock.enable = true; }; }) ]; } From 8f493b68b01349b973ae99dc785018394a70ba72 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 12:11:07 +0800 Subject: [PATCH 069/373] fix(rebuild): use nh os switch instead of nixos-rebuild switch for remote hosts --- packages/rebuild/default.nix | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index c1cd3e9..f650edc 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -13,21 +13,21 @@ pkgs.writeShellScriptBin "rebuild" # sh fi } - if [ ! -f "flake.nix" ]; then - echo "Error: flake.nix not found in the current directory. Exiting." - exit 1 # Indicate an error - fi - #TODO: get hostnames from flake nixosConfigurations - QUICK=false NO_GENERATION_CHECK=false TEST_SHELL=false REMOTE_HOSTS=() ALL_HOSTS=("nemesis" "mellinoe" "apollo") REBUILDING_ALL=false - CURRENT_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) + if [ ! -f "flake.nix" ]; then + echo "Error: flake.nix not found in the current directory. Exiting." + exit 1 # Indicate an error + fi + + #TODO: get hostnames from flake nixosConfigurations + while [[ $# -gt 0 ]]; do case "$1" in --quick | -q) @@ -67,8 +67,7 @@ pkgs.writeShellScriptBin "rebuild" # sh if [ ''${#REMOTE_HOSTS[@]} -gt 0 ]; then for host in "''${REMOTE_HOSTS[@]}"; do echo "Rebuilding $host..." - nixos-rebuild switch --flake .#"$host" --target-host "$host" --use-remote-sudo || { - echo "Error: nixos-rebuild switch failed for $host. Check the output." + nh os switch .#nixosConfigurations."$host" --target-host "$host" || { exit 1 } done From d1c62bc67fda4f462950798de02f1ffd02ab58c0 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 13:18:48 +0800 Subject: [PATCH 070/373] feat(rebuild): refactor rebuild script to use nh os for local and remote builds --- packages/rebuild/default.nix | 105 ++++++++++++++++++++--------------- 1 file changed, 59 insertions(+), 46 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index f650edc..e2fe6b8 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -1,6 +1,12 @@ { pkgs, ... }: pkgs.writeShellScriptBin "rebuild" # sh '' + QUICK=false + NO_GENERATION_CHECK=false + TEST_SHELL=false + REMOTE_HOSTS=() + REBUILDING_ALL=false + prompt() { local PROMPT="$1" shift @@ -13,21 +19,45 @@ pkgs.writeShellScriptBin "rebuild" # sh fi } - QUICK=false - NO_GENERATION_CHECK=false - TEST_SHELL=false - REMOTE_HOSTS=() - ALL_HOSTS=("nemesis" "mellinoe" "apollo") - REBUILDING_ALL=false - CURRENT_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) + spawn_test_shell() { + echo "Spawning test shell on $1..." + (export PS1="Test shell> " + exec ${pkgs.bash}/bin/bash ssh "$1") || { + ${pkgs.cowsay}/bin/cowsay "You aborted." + exit 1 + } + } + + rebuild_remote() { + local args=(".#nixosConfigurations.$1" "--target-host" "$1") + local CURRENT_GENERATION=$(ssh "$1" readlink /nix/var/nix/profiles/system | cut -d- -f2) + + if "$TEST_SHELL"; then + echo "Testing $1..." + nh os test "''${args[@]}" + git diff HEAD --color=always --stat --patch + spawn_test_shell "$1" + echo "Rebuilding $1..." + nh os boot "''${args[@]}" + else + echo "Rebuilding $1 on $HOSTNAME..." + nh os switch "''${args[@]}" + fi + + if ! "$NO_GENERATION_CHECK"; then + local NEW_GENERATION=$(ssh "$1" readlink /nix/var/nix/profiles/system | cut -d- -f2) + echo "$1 - New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." + if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then + echo "WARNING: New config was not added to bootloader." + fi + fi + } if [ ! -f "flake.nix" ]; then echo "Error: flake.nix not found in the current directory. Exiting." exit 1 # Indicate an error fi - #TODO: get hostnames from flake nixosConfigurations - while [[ $# -gt 0 ]]; do case "$1" in --quick | -q) @@ -44,9 +74,14 @@ pkgs.writeShellScriptBin "rebuild" # sh ;; --all | -a) reachable_hosts=() - for host in ''${ALL_HOSTS[@]}; do + hostnames=$(nix flake show --all-systems --json | , jq -r '.nixosConfigurations | keys | .[]') + for host in ''${hostnames[@]}; do + echo "Checking if $host is reachable..." if ping -c 1 -W 1 "$host" > /dev/null 2>&1 ; then + echo "$host is reachable." reachable_hosts+=("$host") + else + echo "$host is unreachable." fi done REMOTE_HOSTS=(''${reachable_hosts[@]}) @@ -55,50 +90,28 @@ pkgs.writeShellScriptBin "rebuild" # sh ;; *) if [ !REBUILDING_ALL ]; then - REMOTE_HOSTS+=("$1") + if ping -c 1 -W 1 "$1" > /dev/null 2>&1 ; then + REMOTE_HOSTS+=("$1") + else + echo "$1 is unreachable. Exiting." + exit 1 + fi fi shift ;; esac done + if [ ''${#REMOTE_HOSTS[@]} == 0 ]; then + echo "No hostnames provided." + REMOTE_HOSTS=("$HOSTNAME") + fi + git add . - if [ ''${#REMOTE_HOSTS[@]} -gt 0 ]; then - for host in "''${REMOTE_HOSTS[@]}"; do - echo "Rebuilding $host..." - nh os switch .#nixosConfigurations."$host" --target-host "$host" || { - exit 1 - } - done - elif "$TEST_SHELL"; then - nh os test . || { - echo "Error: nixos-rebuild switch failed. Check the output for details." - exit 1 - } - git diff HEAD --color=always --stat --patch - (export PS1="Test shell> " - exec ${pkgs.bash}/bin/bash) || { - ${pkgs.cowsay}/bin/cowsay "You aborted." - exit 1 - } - nh os boot . || { - echo "Error: nixos-rebuild switch failed. Check the output for details." - exit 1 - } - else - nh os switch . || { - exit 1 - } - if ! "$NO_GENERATION_CHECK"; then - NEW_GENERATION=$(readlink /nix/var/nix/profiles/system | cut -d- -f2) - echo "New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." - if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then - echo "ERROR: New config was not added to bootloader. Exiting..." - exit 1 - fi - fi - fi + for host in "''${REMOTE_HOSTS[@]}"; do + rebuild_remote $host + done if ! "$QUICK"; then prompt "Commit changes" commit From caf464c5dfb744317207b85c270b3814388bb73c Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 13:32:27 +0800 Subject: [PATCH 071/373] feat(rebuild): add informational messages and error handling to rebuild script --- packages/rebuild/default.nix | 49 ++++++++++++++++++++++++++---------- 1 file changed, 36 insertions(+), 13 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index e2fe6b8..f4a0dd3 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -6,6 +6,26 @@ pkgs.writeShellScriptBin "rebuild" # sh TEST_SHELL=false REMOTE_HOSTS=() REBUILDING_ALL=false + # ANSI color codes + GREEN='\033[0;32m' + ORANGE='\033[0;33m' + RED='\033[0;31m' + NC='\033[0m' + + info() { + timestamp=$(date "+%Y-%m-%d %H:%M:%S") + echo -e "''${GREEN}''${timestamp} INFO: $1''${NC}" + } + + warn() { + timestamp=$(date "+%Y-%m-%d %H:%M:%S") + echo -e "''${ORANGE}''${timestamp} WARN: $1''${NC}" + } + + err() { + timestamp=$(date "+%Y-%m-%d %H:%M:%S") + echo -e "''${RED}''${timestamp} ERROR: $1''${NC}" + } prompt() { local PROMPT="$1" @@ -15,12 +35,12 @@ pkgs.writeShellScriptBin "rebuild" # sh if [[ "$REPLY" =~ ^[Yy]$ ]]; then "$*" else - echo "$PROMPT aborted." + info "$PROMPT aborted." fi } spawn_test_shell() { - echo "Spawning test shell on $1..." + info "Spawning test shell on $1..." (export PS1="Test shell> " exec ${pkgs.bash}/bin/bash ssh "$1") || { ${pkgs.cowsay}/bin/cowsay "You aborted." @@ -33,28 +53,30 @@ pkgs.writeShellScriptBin "rebuild" # sh local CURRENT_GENERATION=$(ssh "$1" readlink /nix/var/nix/profiles/system | cut -d- -f2) if "$TEST_SHELL"; then - echo "Testing $1..." + info "Testing $1..." nh os test "''${args[@]}" git diff HEAD --color=always --stat --patch spawn_test_shell "$1" - echo "Rebuilding $1..." + info "Rebuilding $1..." nh os boot "''${args[@]}" else - echo "Rebuilding $1 on $HOSTNAME..." + info "Rebuilding $1 on $HOSTNAME..." nh os switch "''${args[@]}" fi if ! "$NO_GENERATION_CHECK"; then local NEW_GENERATION=$(ssh "$1" readlink /nix/var/nix/profiles/system | cut -d- -f2) - echo "$1 - New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." + info "$1 - New generation is $NEW_GENERATION. Current is $CURRENT_GENERATION." if [ ! $NEW_GENERATION -gt $CURRENT_GENERATION ]; then - echo "WARNING: New config was not added to bootloader." + warn "New config was not added to bootloader." fi fi } + info "Starting rebuild script." + if [ ! -f "flake.nix" ]; then - echo "Error: flake.nix not found in the current directory. Exiting." + err "flake.nix not found in the current directory. Exiting." exit 1 # Indicate an error fi @@ -76,12 +98,12 @@ pkgs.writeShellScriptBin "rebuild" # sh reachable_hosts=() hostnames=$(nix flake show --all-systems --json | , jq -r '.nixosConfigurations | keys | .[]') for host in ''${hostnames[@]}; do - echo "Checking if $host is reachable..." + info "Checking if $host is reachable..." if ping -c 1 -W 1 "$host" > /dev/null 2>&1 ; then - echo "$host is reachable." + info "$host is reachable." reachable_hosts+=("$host") else - echo "$host is unreachable." + warn "$host is unreachable." fi done REMOTE_HOSTS=(''${reachable_hosts[@]}) @@ -93,7 +115,7 @@ pkgs.writeShellScriptBin "rebuild" # sh if ping -c 1 -W 1 "$1" > /dev/null 2>&1 ; then REMOTE_HOSTS+=("$1") else - echo "$1 is unreachable. Exiting." + err "$1 is unreachable. Exiting." exit 1 fi fi @@ -103,7 +125,7 @@ pkgs.writeShellScriptBin "rebuild" # sh done if [ ''${#REMOTE_HOSTS[@]} == 0 ]; then - echo "No hostnames provided." + info "No hostnames provided." REMOTE_HOSTS=("$HOSTNAME") fi @@ -118,5 +140,6 @@ pkgs.writeShellScriptBin "rebuild" # sh prompt "Reboot system" sudo systemctl reboot fi + info "Rebuild script completed successfully." exit 0 '' From 6d84bd00fe1359c7b799591bf542e0678a5e02bd Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 13:38:58 +0800 Subject: [PATCH 072/373] feat(hyprland): set workspaces animation speed to 1 --- modules/home/desktop/windowManager/hyprland/decoration.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/home/desktop/windowManager/hyprland/decoration.nix b/modules/home/desktop/windowManager/hyprland/decoration.nix index 8748050..ee3d444 100644 --- a/modules/home/desktop/windowManager/hyprland/decoration.nix +++ b/modules/home/desktop/windowManager/hyprland/decoration.nix @@ -1,5 +1,5 @@ { - animation = [ "workspaces, 0" ]; + animation = [ "workspaces, 1, 1, default" ]; general = { border_size = 2; gaps_in = 0; From e6a60c257c8b9ea32d7aad19d43cb32f91fb289a Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 13:59:41 +0800 Subject: [PATCH 073/373] feat(desktop): move launcher config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/desktop/default.nix | 1 + homes/x86_64-linux/rafiq/desktop/launcher.nix | 7 ++++++ modules/home/desktop/launcher/default.nix | 24 ------------------- modules/nixos/desktop/default.nix | 1 - modules/nixos/desktop/launcher/default.nix | 16 +++++++++++++ systems/x86_64-linux/desktop.nix | 2 +- 6 files changed, 25 insertions(+), 26 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/launcher.nix delete mode 100644 modules/home/desktop/launcher/default.nix create mode 100644 modules/nixos/desktop/launcher/default.nix diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix index 8778d76..5e3e408 100644 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -10,4 +10,5 @@ in mkMerge [ (import ./browser.nix { inherit lib inputs system; }) (import ./lockscreen.nix) + (import ./launcher.nix) ] diff --git a/homes/x86_64-linux/rafiq/desktop/launcher.nix b/homes/x86_64-linux/rafiq/desktop/launcher.nix new file mode 100644 index 0000000..7ce375c --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/launcher.nix @@ -0,0 +1,7 @@ +{ + home.sessionVariables.LAUNCHER = "fuzzel"; + programs.wofi = { + style = null; + settings = { }; + }; +} diff --git a/modules/home/desktop/launcher/default.nix b/modules/home/desktop/launcher/default.nix deleted file mode 100644 index 05bb845..0000000 --- a/modules/home/desktop/launcher/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - config, - lib, - osConfig, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (osConfig.desktop.launcher == "fuzzel") { - home.sessionVariables.LAUNCHER = "fuzzel"; - programs.fuzzel = { - enable = true; - }; - }) - (lib.mkIf (osConfig.desktop.launcher == "wofi") { - home.sessionVariables.LAUNCHER = "wofi"; - programs.wofi = { - enable = true; - style = null; - settings = { }; - }; - }) - ]; -} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 4347979..b075a21 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -24,7 +24,6 @@ in windowManager = lib.pantheon.mkStrOption; terminal = lib.pantheon.mkStrOption; notification-daemon = lib.pantheon.mkStrOption; - launcher = lib.pantheon.mkStrOption; status-bar = lib.pantheon.mkStrOption; media-player = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; diff --git a/modules/nixos/desktop/launcher/default.nix b/modules/nixos/desktop/launcher/default.nix new file mode 100644 index 0000000..3a35133 --- /dev/null +++ b/modules/nixos/desktop/launcher/default.nix @@ -0,0 +1,16 @@ +{ lib, config, ... }: +let + inherit (lib) singleton mkEnableOption; + cfg = config.desktop.launcher; +in +{ + options.desktop.launcher = { + fuzzel.enable = mkEnableOption ""; + wofi.enable = mkEnableOption ""; + }; + + config.home-manager.sharedModules = singleton { + programs.fuzzel.enable = cfg.fuzzel.enable; + programs.wofi.enable = cfg.wofi.enable; + }; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index 4cd3726..dea1818 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -3,10 +3,10 @@ enable = true; browser.firefox.enable = true; lockscreen.hyprlock.enable = true; + launcher.fuzzel.enable = true; windowManager = "hyprland"; terminal = "ghostty"; notification-daemon = "mako"; - launcher = "fuzzel"; status-bar = "waybar"; media-player = "vlc"; mainMonitor = { From f1c2986c5c5922dcfecdd16b08ffab06453cad02 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 14:10:33 +0800 Subject: [PATCH 074/373] feat(desktop): move media-player config to nixos modules --- modules/home/desktop/media-player/default.nix | 30 ---- .../desktop/media-player/vlc-play-next.lua | 166 ------------------ modules/nixos/desktop/default.nix | 1 - .../nixos/desktop/media-player/default.nix | 26 +++ systems/x86_64-linux/desktop.nix | 2 +- 5 files changed, 27 insertions(+), 198 deletions(-) delete mode 100644 modules/home/desktop/media-player/default.nix delete mode 100644 modules/home/desktop/media-player/vlc-play-next.lua create mode 100644 modules/nixos/desktop/media-player/default.nix diff --git a/modules/home/desktop/media-player/default.nix b/modules/home/desktop/media-player/default.nix deleted file mode 100644 index f803d63..0000000 --- a/modules/home/desktop/media-player/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - osConfig, - lib, - pkgs, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (osConfig.desktop.media-player == "vlc") { - home.packages = lib.singleton pkgs.vlc; - home.file.".local/share/vlc/lua/extensions/vlc-play-next.lua".source = ./vlc-play-next.lua; - }) - (lib.mkIf (osConfig.desktop.media-player == "mpv") { - programs.mpv = { - enable = true; - package = pkgs.mpv-unwrapped.wrapper { - scripts = with pkgs.mpvScripts; [ - sponsorblock - ]; - mpv = pkgs.mpv-unwrapped.override { - waylandSupport = true; - }; - }; - config = { - profile = "high-quality"; - }; - }; - }) - ]; -} diff --git a/modules/home/desktop/media-player/vlc-play-next.lua b/modules/home/desktop/media-player/vlc-play-next.lua deleted file mode 100644 index a33e5b9..0000000 --- a/modules/home/desktop/media-player/vlc-play-next.lua +++ /dev/null @@ -1,166 +0,0 @@ -function descriptor() - return { - title = "Play Next in Folder", - version = "1.0", - author = "Mindconstructor", - url = "http://www.videolan.org", - shortdesc = "Play Next in Folder", - description = "This extension plays the next media file in the directory of the last ended video file.", - capabilities = { "input-listener" }, - } -end - -function activate() - vlc.msg.dbg("[Play Next in Folder] Activated") -end - -function deactivate() - vlc.msg.dbg("[Play Next in Folder] Deactivated") -end - -local lastplayeditem = "" - -function meta_changed() - if vlc.playlist.status() == "stopped" then - local item = vlc.input.item() - if item then - lastplayeditem = item:uri() - end - end -end - -function playing_changed() - local item = vlc.input.item() - if item then - vlc.msg.dbg(item:uri()) - end -end - -function input_changed() - -- Trigger only when playback stops - if vlc.playlist.status() == "stopped" then - local uri = lastplayeditem - local path = vlc.strings.decode_uri(uri) - play_next_video_in_directory(path) - end -end - -function play_next_video_in_directory(current_path) - local folder_path = string.sub(string.match(current_path, "^(.*/)"), 9) - if not folder_path then - return - end - - local files = vlc.io.readdir(folder_path) - if not files then - return - end - - -- Filter for media files - files = filter_media_files(files) - - local current_file = string.match(current_path, ".*/([^/]+)$") - local next_file = nil - local found_current = false - - for _, file in ipairs(files) do - if found_current then - next_file = file - break - end - if file == current_file then - found_current = true - end - end - - if next_file then - local next_uri = "file:///" .. folder_path .. next_file - vlc.playlist.clear() - vlc.playlist.add({ { path = next_uri } }) - end -end - -function filter_media_files(files) - local media_files = {} - local media_extensions = { - -- Videoformate - "%.avi$", - "%.mkv$", - "%.mp4$", - "%.wmv$", - "%.flv%", - "%.mpeg$", - "%.mpg$", - "%.mov$", - "%.rm$", - "%.vob$", - "%.asf$", - "%.divx$", - "%.m4v$", - "%.ogg$", - "%.ogm$", - "%.ogv$", - "%.qt$", - "%.rmvb$", - "%.webm$", - "%.3gp$", - "%.3g2$", - "%.drc$", - "%.f4v$", - "%.f4p$", - "%.f4a$", - "%.f4b$", - "%.gifv$", - "%.mng$", - "%.mts$", - "%.m2ts$", - "%.ts$", - "%.mov$", - "%.qt$", - "%.mxf$", - "%.nsv$", - "%.roq$", - "%.svi$", - "%.viv$", - -- Audioformate - "%.mp3$", - "%.wav$", - "%.flac$", - "%.aac$", - "%.ogg$", - "%.wma$", - "%.alac$", - "%.ape$", - "%.ac3$", - "%.opus$", - "%.aiff$", - "%.aif$", - "%.amr$", - "%.au$", - "%.mka$", - "%.dts$", - "%.m4a$", - "%.m4b$", - "%.m4p$", - "%.mpc$", - "%.mpp$", - "%.mp+", - "%.oga$", - "%.spx$", - "%.tta$", - "%.voc$", - "%.ra$", - "%.mid$", - "%.midi$", - } - - for _, f in ipairs(files) do - for _, ext in ipairs(media_extensions) do - if string.match(f, ext) then - table.insert(media_files, f) - break - end - end - end - return media_files -end diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index b075a21..988293f 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -25,7 +25,6 @@ in terminal = lib.pantheon.mkStrOption; notification-daemon = lib.pantheon.mkStrOption; status-bar = lib.pantheon.mkStrOption; - media-player = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; enableSteam = lib.mkEnableOption ""; enableVR = lib.mkEnableOption ""; diff --git a/modules/nixos/desktop/media-player/default.nix b/modules/nixos/desktop/media-player/default.nix new file mode 100644 index 0000000..b230856 --- /dev/null +++ b/modules/nixos/desktop/media-player/default.nix @@ -0,0 +1,26 @@ +{ + config, + lib, + pkgs, + ... +}: +let + inherit (lib) + mkEnableOption + mkIf + mkMerge + singleton + ; + inherit (pkgs) vlc; + cfg = config.desktop.media-player; + addToHome = condition: attrs: mkIf condition { home-manager.sharedModules = singleton attrs; }; +in +{ + options.desktop.media-player = { + vlc.enable = mkEnableOption ""; + }; + + config = mkMerge [ + (addToHome cfg.vlc.enable { home.packages = singleton vlc; }) + ]; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index dea1818..887cfa3 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -4,11 +4,11 @@ browser.firefox.enable = true; lockscreen.hyprlock.enable = true; launcher.fuzzel.enable = true; + media-player.vlc.enable = true; windowManager = "hyprland"; terminal = "ghostty"; notification-daemon = "mako"; status-bar = "waybar"; - media-player = "vlc"; mainMonitor = { id = "desc:OOO AN-270W04K"; scale = "2"; From 88f0db3425cd1c516d7fbeb85835527bbc1b385f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 14:22:30 +0800 Subject: [PATCH 075/373] feat(desktop): add vlc configuration to homes and use home-manager modules --- homes/x86_64-linux/rafiq/desktop/default.nix | 1 + .../rafiq/desktop/media-player.nix | 200 ++++++++++++++++++ 2 files changed, 201 insertions(+) create mode 100644 homes/x86_64-linux/rafiq/desktop/media-player.nix diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix index 5e3e408..dcb265a 100644 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -11,4 +11,5 @@ mkMerge [ (import ./browser.nix { inherit lib inputs system; }) (import ./lockscreen.nix) (import ./launcher.nix) + (import ./media-player.nix) ] diff --git a/homes/x86_64-linux/rafiq/desktop/media-player.nix b/homes/x86_64-linux/rafiq/desktop/media-player.nix new file mode 100644 index 0000000..482363e --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/media-player.nix @@ -0,0 +1,200 @@ +{ + xdg.configFile."vlc/vlcrc".text = '' + [visual] # Visualizer filter + [glspectrum] # 3D OpenGL spectrum visualization + [wall] # Wall video filter + [panoramix] # Panoramix: wall with overlap video filter + [clone] # Clone video filter + [yuv] # YUV video output + [xdg_shell] # XDG shell surface + [xcb_xv] # XVideo output (XCB) + [xcb_x11] # X11 video output (XCB) + [xcb_window] # X11 video window (XCB) + [wl_shell] # Wayland shell surface + [vmem] # Video memory output + [vdummy] # Dummy video output + [gl] # OpenGL video output + [flaschen] # Flaschen-Taschen video output + [fb] # GNU/Linux framebuffer video output + [transform] # Video transformation filter + [sharpen] # Sharpen video filter + [sepia] # Sepia video filter + [scene] # Scene video filter + [rotate] # Rotate video filter + [puzzle] # Puzzle interactive game video filter + [postproc] # Video post processing filter + [posterize] # Posterize video filter + [motionblur] # Motion blur filter + [mirror] # Mirror video filter + [hqdn3d] # High Quality 3D Denoiser filter + [grain] # Grain video filter + [gradient] # Gradient video filter + [gradfun] # Gradfun video filter + [gaussianblur] # Gaussian blur video filter + [fps] # FPS conversion video filter + [extract] # Extract RGB component video filter + [erase] # Erase video filter + [deinterlace] # Deinterlacing video filter + [croppadd] # Video cropping filter + [colorthres] # Color threshold filter + [canvas] # Canvas video filter + [bluescreen] # Bluescreen video filter + [blendbench] # Blending benchmark filter + [ball] # Ball video filter + [antiflicker] # antiflicker video filter + [anaglyph] # Convert 3D picture to anaglyph image video filter + [alphamask] # Alpha mask video filter + [adjust] # Image properties filter + [swscale] # Video scaling filter + [vaapi_filters] # Video Accelerated API filters + [svg] # svg + [freetype] # Freetype2 font renderer + [stream_out_transcode] # Transcode stream output + [stats] # Writes statistic info about stream + [stream_out_standard] # Standard stream output + [smem] # Stream output to memory buffer + [setid] # Change the id of an elementary stream + [stream_out_rtp] # RTP stream output + [record] # Record stream output + [mosaic_bridge] # Mosaic bridge stream output + [es] # Elementary stream output + [display] # Display stream output + [delay] # Delay a stream + [stream_out_chromecast] # Chromecast stream output + [bridge] # Bridge stream output + [prefetch] # Stream prefetch filter + [subsdelay] # Subtitle delay + [rss] # RSS and Atom feed display + [remoteosd] # Remote-OSD over VNC + [mosaic] # Mosaic video sub source + [marq] # Marquee display + [logo] # Logo sub source + [dynamicoverlay] # Dynamic video overlay + [audiobargraph_v] # Audio Bar Graph Video sub source + [upnp] # Universal Plug'n'Play + [sap] # Network streams (SAP) + [podcast] # Podcasts + [mpegvideo] # MPEG-I/II video packetizer + [mux_ts] # TS muxer (libdvbpsi) + [ps] # PS muxer + [mux_ogg] # Ogg/OGM muxer + [mp4] # MP4/MOV muxer + [avi] # AVI muxer + [asf] # ASF muxer + [rtsp] # Legacy RTSP VoD server + [logger] # File logging + [gnutls] # GNU TLS transport layer security + [audioscrobbler] # Submission of played songs to last.fm + [folder] # Folder meta data + [lua] # Lua interpreter + [syslog] # System logger (syslog) + [file] # File logger + [console] # Console logger + [file] # Secrets are stored on a file without any encryption + [skins2] # Skinnable Interface + [qt] # Qt interface + qt-privacy-ask=0 + [ncurses] # Ncurses interface + [vc1] # VC1 video demuxer + [ts] # MPEG Transport Stream demuxer + [subtitle] # Text subtitle parser + [rawvid] # Raw video demuxer + [rawdv] # DV (Digital Video) demuxer + [rawaud] # Raw audio demuxer + [ps] # MPEG-PS demuxer + [playlist] # Playlist + [mp4] # MP4 stream demuxer + [mod] # MOD demuxer (libmodplug) + [mkv] # Matroska stream demuxer + [mjpeg] # M-JPEG camera demuxer + [image] # Image demuxer + [h26x] # H264 video demuxer + [es] # MPEG-I/II/4 / A52 / DTS / MLP audio + [diracsys] # Dirac video demuxer + [demuxdump] # File dumper + [avi] # AVI demuxer + [avformat] # Avformat demuxer + [adaptive] # Unified adaptive streaming for DASH/HLS + [oldrc] # Remote control interface + [netsync] # Network synchronization + [motion] # motion control interface + [gestures] # Mouse gestures control interface + [vorbis] # Vorbis audio decoder + [ttml] # TTML subtitles decoder + [theora] # Theora video decoder + [telx] # Teletext subtitles decoder + [svgdec] # SVG video decoder + [svcdsub] # Philips OGT (SVCD subtitle) decoder + [subsusf] # USF subtitles decoder + [subsdec] # Text subtitle decoder + [spudec] # DVD subtitles decoder + [speex] # Speex audio decoder + [schroedinger] # Dirac video decoder using libschroedinger + [libass] # Subtitle renderers using libass + [kate] # Kate overlay decoder + [jpeg] # JPEG image decoder + [fluidsynth] # FluidSynth MIDI synthesizer + [dvbsub] # DVB subtitles decoder + [ddummy] # Dummy decoder + [cc] # Closed Captions decoder + [avcodec] # FFmpeg audio/video decoder + [a52] # ATSC A/52 (AC-3) audio decoder + [amem] # Audio memory output + [alsa] # ALSA audio output + [afile] # File audio output + [stereo_widen] # Simple stereo widening effect + [speex_resampler] # Speex resampler + [spatializer] # Audio Spatializer + [spatialaudio] # Ambisonics renderer and binauralizer + [scaletempo] # Audio tempo scaler synched with rate + [scaletempo_pitch] # Pitch Shifter + [samplerate] # Secret Rabbit Code (libsamplerate) resampler + [remap] # Audio channel remapper + [param_eq] # Parametric Equalizer + [normvol] # Volume normalizer + [mono] # Stereo to mono downmixer + [headphone] # Headphone virtual spatialization effect + [gain] # Gain control filter + [equalizer] # Equalizer with 10 bands + [compressor] # Dynamic range compressor + [chorus_flanger] # Sound Delay + [audiobargraph_a] # Audio part of the BarGraph function + [udp] # UDP stream output + [access_output_srt] # SRT stream output + [access_output_rist] # RIST stream output + [access_output_livehttp] # HTTP Live streaming output + [http] # HTTP stream output + [file] # File stream output + [xcb_screen] # Screen capture (with X11/XCB) + [vdr] # VDR recordings + [v4l2] # Video4Linux input + [udp] # UDP input + [timecode] # Time code subpicture elementary stream generator + [smb] # SMB input + [shm] # Shared memory framebuffer + [sftp] # SFTP input + [satip] # SAT>IP Receiver Plugin + [rtp] # Real-Time Protocol (RTP) input + [rist] # RIST input + [live555] # RTP/RTSP/SDP demuxer (using Live555) + [linsys_hdsdi] # HD-SDI Input + [libbluray] # Blu-ray Disc support (libbluray) + [access] # HTTPS input + [http] # HTTP input + [ftp] # FTP input + [filesystem] # File input + [dvdread] # DVDRead Input (no menu support) + [dvdnav] # DVDnav Input + [dvb] # DVB input with v4l2 support + [dtv] # Digital Television and Radio + [cdda] # Audio CD input + [avio] # libavformat AVIO access + [access_srt] # SRT input + [access_mms] # Microsoft Media Server (MMS) input + [imem] # Memory input + [concat] # Concatenated inputs + [access_alsa] # ALSA audio capture + [core] # core program + metadata-network-access=1 + ''; +} From 4a50de5eed2f5f31d8db06003184d58bd8176eb0 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 15:16:04 +0800 Subject: [PATCH 076/373] refactor(desktop): use optional instead of mkIf in firefox and media-player modules --- modules/nixos/desktop/browser/firefox/default.nix | 12 +++++------- modules/nixos/desktop/media-player/default.nix | 12 ++---------- 2 files changed, 7 insertions(+), 17 deletions(-) diff --git a/modules/nixos/desktop/browser/firefox/default.nix b/modules/nixos/desktop/browser/firefox/default.nix index 7a5de17..bde4707 100644 --- a/modules/nixos/desktop/browser/firefox/default.nix +++ b/modules/nixos/desktop/browser/firefox/default.nix @@ -2,7 +2,7 @@ let inherit (lib) mkEnableOption - mkIf + optional singleton ; cfg = config.desktop.browser.firefox; @@ -10,11 +10,9 @@ in { options.desktop.browser.firefox.enable = mkEnableOption ""; - config = mkIf cfg.enable { - home-manager.sharedModules = singleton { - persistDirs = singleton ".mozilla/firefox"; - programs.firefox.enable = true; - stylix.targets.firefox.colorTheme.enable = true; - }; + config.home-manager.sharedModules = optional cfg.enable { + persistDirs = singleton ".mozilla/firefox"; + programs.firefox.enable = true; + stylix.targets.firefox.colorTheme.enable = true; }; } diff --git a/modules/nixos/desktop/media-player/default.nix b/modules/nixos/desktop/media-player/default.nix index b230856..2c71170 100644 --- a/modules/nixos/desktop/media-player/default.nix +++ b/modules/nixos/desktop/media-player/default.nix @@ -5,22 +5,14 @@ ... }: let - inherit (lib) - mkEnableOption - mkIf - mkMerge - singleton - ; + inherit (lib) mkEnableOption optional singleton; inherit (pkgs) vlc; cfg = config.desktop.media-player; - addToHome = condition: attrs: mkIf condition { home-manager.sharedModules = singleton attrs; }; in { options.desktop.media-player = { vlc.enable = mkEnableOption ""; }; - config = mkMerge [ - (addToHome cfg.vlc.enable { home.packages = singleton vlc; }) - ]; + config.home-manager.sharedModules = optional cfg.vlc.enable { home.packages = singleton vlc; }; } From 60ee8b454493d2bfb17c440fdd1f5c691bb8f1b6 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 15:23:03 +0800 Subject: [PATCH 077/373] feat(desktop): move notification-daemon config to homes and use home-manager modules --- .../rafiq/desktop/notification-daemon.nix | 6 ++++++ .../home/desktop/notification-daemon/default.nix | 14 -------------- modules/nixos/desktop/default.nix | 1 - .../nixos/desktop/notification-daemon/default.nix | 14 ++++++++++++++ systems/x86_64-linux/desktop.nix | 2 +- 5 files changed, 21 insertions(+), 16 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/notification-daemon.nix delete mode 100644 modules/home/desktop/notification-daemon/default.nix create mode 100644 modules/nixos/desktop/notification-daemon/default.nix diff --git a/homes/x86_64-linux/rafiq/desktop/notification-daemon.nix b/homes/x86_64-linux/rafiq/desktop/notification-daemon.nix new file mode 100644 index 0000000..2959d14 --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/notification-daemon.nix @@ -0,0 +1,6 @@ +{ + home.sessionVariables.NOTIFICATION_DAEMON = "mako"; + services.mako.settings = { + default-timeout = 10000; + }; +} diff --git a/modules/home/desktop/notification-daemon/default.nix b/modules/home/desktop/notification-daemon/default.nix deleted file mode 100644 index bef691a..0000000 --- a/modules/home/desktop/notification-daemon/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ osConfig, lib, ... }: -{ - config = lib.mkMerge [ - (lib.mkIf (osConfig.desktop.notification-daemon == "mako") { - home.sessionVariables.NOTIFICATION_DAEMON = "mako"; - services.mako = { - enable = true; - settings = { - default-timeout = 10000; - }; - }; - }) - ]; -} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 988293f..3a9f69e 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -23,7 +23,6 @@ in }; windowManager = lib.pantheon.mkStrOption; terminal = lib.pantheon.mkStrOption; - notification-daemon = lib.pantheon.mkStrOption; status-bar = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; enableSteam = lib.mkEnableOption ""; diff --git a/modules/nixos/desktop/notification-daemon/default.nix b/modules/nixos/desktop/notification-daemon/default.nix new file mode 100644 index 0000000..3464729 --- /dev/null +++ b/modules/nixos/desktop/notification-daemon/default.nix @@ -0,0 +1,14 @@ +{ lib, config, ... }: +let + inherit (lib) mkEnableOption singleton; + cfg = config.desktop.notification-daemon; +in +{ + options.desktop.notification-daemon = { + mako.enable = mkEnableOption ""; + }; + + config.home-manager.sharedModules = singleton { + services.mako.enable = cfg.mako.enable; + }; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index 887cfa3..eaa8fca 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -5,9 +5,9 @@ lockscreen.hyprlock.enable = true; launcher.fuzzel.enable = true; media-player.vlc.enable = true; + notification-daemon.mako.enable = true; windowManager = "hyprland"; terminal = "ghostty"; - notification-daemon = "mako"; status-bar = "waybar"; mainMonitor = { id = "desc:OOO AN-270W04K"; From d09d6d37d7da0c2bf8e9f03aa7434b00c5721bf1 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 15:24:03 +0800 Subject: [PATCH 078/373] fix(rebuild): exit rebuild script on error --- packages/rebuild/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/rebuild/default.nix b/packages/rebuild/default.nix index f4a0dd3..946beeb 100644 --- a/packages/rebuild/default.nix +++ b/packages/rebuild/default.nix @@ -54,14 +54,14 @@ pkgs.writeShellScriptBin "rebuild" # sh if "$TEST_SHELL"; then info "Testing $1..." - nh os test "''${args[@]}" + nh os test "''${args[@]}" || exit 1 git diff HEAD --color=always --stat --patch spawn_test_shell "$1" info "Rebuilding $1..." - nh os boot "''${args[@]}" + nh os boot "''${args[@]}" || exit 1 else info "Rebuilding $1 on $HOSTNAME..." - nh os switch "''${args[@]}" + nh os switch "''${args[@]}" || exit 1 fi if ! "$NO_GENERATION_CHECK"; then From 2369c0d37e69e07888dc0ee08292dba1e7e5ac31 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 15:30:42 +0800 Subject: [PATCH 079/373] feat(desktop): move status-bar config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/default.nix | 11 +++- homes/x86_64-linux/rafiq/desktop/default.nix | 2 + .../x86_64-linux/rafiq/desktop/status-bar.nix | 50 +++++++++++++++ modules/home/desktop/status-bar/default.nix | 61 ------------------- modules/nixos/desktop/default.nix | 1 - modules/nixos/desktop/status-bar/default.nix | 12 ++++ systems/x86_64-linux/desktop.nix | 2 +- 7 files changed, 75 insertions(+), 64 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/status-bar.nix delete mode 100644 modules/home/desktop/status-bar/default.nix create mode 100644 modules/nixos/desktop/status-bar/default.nix diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 07d8c02..3f5a40e 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -27,7 +27,16 @@ let in { config = mkMerge [ - (mkIf osConfig.desktop.enable (import ./desktop { inherit lib inputs system; })) + (mkIf osConfig.desktop.enable ( + import ./desktop { + inherit + lib + inputs + system + pkgs + ; + } + )) (mkIf osConfig.desktop.enable { home.persistence."/persist/home/rafiq".directories = [ "docs" diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix index dcb265a..f94c7c4 100644 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -1,4 +1,5 @@ { + pkgs, lib, inputs, system, @@ -12,4 +13,5 @@ mkMerge [ (import ./lockscreen.nix) (import ./launcher.nix) (import ./media-player.nix) + (import ./status-bar.nix { inherit pkgs; }) ] diff --git a/homes/x86_64-linux/rafiq/desktop/status-bar.nix b/homes/x86_64-linux/rafiq/desktop/status-bar.nix new file mode 100644 index 0000000..e8426da --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/status-bar.nix @@ -0,0 +1,50 @@ +{ pkgs, ... }: +{ + home.sessionVariables.STATUS_BAR = "waybar"; + programs.waybar = { + settings = [ + { + layer = "top"; + modules-left = [ + "pulseaudio" + ]; + modules-right = [ + "battery" + "clock" + ]; + "pulseaudio" = { + format = "{icon} {volume}%"; + format-muted = ""; + format-icons.default = [ + "" + "" + ]; + on-click = "${pkgs.pulseaudio}/bin/pactl set-sink-mute @DEFAULT_SINK@ toggle"; + }; + "clock" = { + interval = 1; + format = "{:%F %T}"; + }; + "battery" = { + interval = 1; + bat-compatibility = true; + }; + } + ]; + style = # css + '' + window#waybar { + background-color: rgba(0, 0, 0, 0); + } + + #pulseaudio, + #battery, + #clock { + padding-top: 5px; + padding-bottom: 5px; + padding-right: 5px; + color: #ffffff; + } + ''; + }; +} diff --git a/modules/home/desktop/status-bar/default.nix b/modules/home/desktop/status-bar/default.nix deleted file mode 100644 index 6e954cb..0000000 --- a/modules/home/desktop/status-bar/default.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ - pkgs, - config, - lib, - osConfig, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (osConfig.desktop.status-bar == "waybar") { - home.sessionVariables.STATUS_BAR = "waybar"; - programs.waybar = { - enable = true; - settings = [ - { - layer = "top"; - modules-left = [ - "pulseaudio" - ]; - modules-right = [ - "battery" - "clock" - ]; - "pulseaudio" = { - format = "{icon} {volume}%"; - format-muted = ""; - format-icons.default = [ - "" - "" - ]; - on-click = "${pkgs.pulseaudio}/bin/pactl set-sink-mute @DEFAULT_SINK@ toggle"; - }; - "clock" = { - interval = 1; - format = "{:%F %T}"; - }; - "battery" = { - interval = 1; - bat-compatibility = true; - }; - } - ]; - style = # css - '' - window#waybar { - background-color: rgba(0, 0, 0, 0); - } - - #pulseaudio, - #battery, - #clock { - padding-top: 5px; - padding-bottom: 5px; - padding-right: 5px; - color: #ffffff; - } - ''; - }; - }) - ]; -} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 3a9f69e..560ce16 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -23,7 +23,6 @@ in }; windowManager = lib.pantheon.mkStrOption; terminal = lib.pantheon.mkStrOption; - status-bar = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; enableSteam = lib.mkEnableOption ""; enableVR = lib.mkEnableOption ""; diff --git a/modules/nixos/desktop/status-bar/default.nix b/modules/nixos/desktop/status-bar/default.nix new file mode 100644 index 0000000..d552ed7 --- /dev/null +++ b/modules/nixos/desktop/status-bar/default.nix @@ -0,0 +1,12 @@ +{ config, lib, ... }: +let + inherit (lib) mkEnableOption singleton; + cfg = config.desktop.status-bar; +in +{ + options.desktop.status-bar = { + waybar.enable = mkEnableOption ""; + }; + + config.home-manager.sharedModules = singleton { programs.waybar.enable = cfg.waybar.enable; }; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index eaa8fca..fe79312 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -6,9 +6,9 @@ launcher.fuzzel.enable = true; media-player.vlc.enable = true; notification-daemon.mako.enable = true; + status-bar.waybar.enable = true; windowManager = "hyprland"; terminal = "ghostty"; - status-bar = "waybar"; mainMonitor = { id = "desc:OOO AN-270W04K"; scale = "2"; From ee2dfd8398bf7deddd5721b6c68d1b20d8c24593 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 15:33:00 +0800 Subject: [PATCH 080/373] feat(desktop): move mainMonitor config to systems --- systems/x86_64-linux/desktop.nix | 6 ------ systems/x86_64-linux/mellinoe/default.nix | 7 +++++++ systems/x86_64-linux/nemesis/default.nix | 7 +++++++ 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index fe79312..3da30e8 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -9,12 +9,6 @@ status-bar.waybar.enable = true; windowManager = "hyprland"; terminal = "ghostty"; - mainMonitor = { - id = "desc:OOO AN-270W04K"; - scale = "2"; - resolution = "3840x2160"; - refresh-rate = "60"; - }; enableSpotifyd = true; enableSteam = true; enableVR = true; diff --git a/systems/x86_64-linux/mellinoe/default.nix b/systems/x86_64-linux/mellinoe/default.nix index 26d95fd..dcd3141 100644 --- a/systems/x86_64-linux/mellinoe/default.nix +++ b/systems/x86_64-linux/mellinoe/default.nix @@ -17,4 +17,11 @@ }; platform = "intel"; }; + + desktop.mainMonitor = { + id = "BOE 0x088B"; + scale = "2"; + resolution = "1920x1280"; + refresh-rate = "60"; + }; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 093c992..dcb3473 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -20,6 +20,13 @@ usb.automount = true; }; + desktop.mainMonitor = { + id = "desc:OOO AN-270W04K"; + scale = "2"; + resolution = "3840x2160"; + refresh-rate = "60"; + }; + services = { tor = { enable = true; From a04688d17ba1fa9ac98328fb37dc556fe27217e8 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 15:39:14 +0800 Subject: [PATCH 081/373] feat(desktop): move terminal config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/desktop/default.nix | 1 + homes/x86_64-linux/rafiq/desktop/terminal.nix | 4 ++++ modules/home/desktop/terminal/default.nix | 23 ------------------ modules/nixos/desktop/default.nix | 1 - modules/nixos/desktop/terminal/default.nix | 24 +++++++++++++++++++ systems/x86_64-linux/desktop.nix | 2 +- 6 files changed, 30 insertions(+), 25 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/terminal.nix delete mode 100644 modules/home/desktop/terminal/default.nix create mode 100644 modules/nixos/desktop/terminal/default.nix diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix index f94c7c4..f523d7f 100644 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -14,4 +14,5 @@ mkMerge [ (import ./launcher.nix) (import ./media-player.nix) (import ./status-bar.nix { inherit pkgs; }) + (import ./terminal.nix) ] diff --git a/homes/x86_64-linux/rafiq/desktop/terminal.nix b/homes/x86_64-linux/rafiq/desktop/terminal.nix new file mode 100644 index 0000000..4ffde8b --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/terminal.nix @@ -0,0 +1,4 @@ +{ + home.sessionVariables.TERMINAL = "ghostty -e"; + programs.ghostty.settings.confirm-close-surface = false; +} diff --git a/modules/home/desktop/terminal/default.nix b/modules/home/desktop/terminal/default.nix deleted file mode 100644 index f3af070..0000000 --- a/modules/home/desktop/terminal/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - osConfig, - lib, - pkgs, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (osConfig.desktop.terminal == "kitty") { - home.packages = with pkgs; [ kitty ]; - home.sessionVariables.TERMINAL = "kitty"; - }) - (lib.mkIf (osConfig.desktop.terminal == "ghostty") { - home.sessionVariables.TERMINAL = "ghostty -e"; - programs.ghostty = { - enable = true; - settings = { - confirm-close-surface = false; - }; - }; - }) - ]; -} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 560ce16..0251e8d 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -22,7 +22,6 @@ in refresh-rate = lib.pantheon.mkStrOption; }; windowManager = lib.pantheon.mkStrOption; - terminal = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; enableSteam = lib.mkEnableOption ""; enableVR = lib.mkEnableOption ""; diff --git a/modules/nixos/desktop/terminal/default.nix b/modules/nixos/desktop/terminal/default.nix new file mode 100644 index 0000000..c32da9d --- /dev/null +++ b/modules/nixos/desktop/terminal/default.nix @@ -0,0 +1,24 @@ +{ + config, + lib, + pkgs, + ... +}: +let + inherit (lib) mkEnableOption singleton optional; + inherit (pkgs) kitty; + cfg = config.desktop.terminal; +in +{ + options.desktop.terminal = { + kitty.enable = mkEnableOption ""; + ghostty.enable = mkEnableOption ""; + }; + + config = { + home-manager.sharedModules = singleton { + home.packages = optional cfg.kitty.enable kitty; + programs.ghostty.enable = cfg.ghostty.enable; + }; + }; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index 3da30e8..905b17d 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -7,8 +7,8 @@ media-player.vlc.enable = true; notification-daemon.mako.enable = true; status-bar.waybar.enable = true; + terminal.ghostty.enable = true; windowManager = "hyprland"; - terminal = "ghostty"; enableSpotifyd = true; enableSteam = true; enableVR = true; From 9167a54ace93bbce5f57c164e9fb25028d45e307 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 16:02:58 +0800 Subject: [PATCH 082/373] feat(desktop): move window-manager config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/default.nix | 1 + homes/x86_64-linux/rafiq/desktop/default.nix | 2 + .../rafiq/desktop/window-manager/default.nix | 11 +++++ .../window-manager}/hyprland/decoration.nix | 0 .../window-manager}/hyprland/keybinds.nix | 0 .../window-manager/hyprland/settings.nix | 30 ++++++++++++ modules/home/desktop/default.nix | 8 ---- .../windowManager/hyprland/default.nix | 48 ------------------- modules/nixos/desktop/default.nix | 13 ++--- .../window-manager/hyprland/default.nix | 47 ++++++++++++++++++ modules/nixos/desktop/windowManager.nix | 23 --------- systems/x86_64-linux/desktop.nix | 2 +- 12 files changed, 99 insertions(+), 86 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/desktop/window-manager/default.nix rename {modules/home/desktop/windowManager => homes/x86_64-linux/rafiq/desktop/window-manager}/hyprland/decoration.nix (100%) rename {modules/home/desktop/windowManager => homes/x86_64-linux/rafiq/desktop/window-manager}/hyprland/keybinds.nix (100%) create mode 100644 homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/settings.nix delete mode 100644 modules/home/desktop/windowManager/hyprland/default.nix create mode 100644 modules/nixos/desktop/window-manager/hyprland/default.nix delete mode 100644 modules/nixos/desktop/windowManager.nix diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 3f5a40e..1b707c8 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -34,6 +34,7 @@ in inputs system pkgs + osConfig ; } )) diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix index f523d7f..5e8befb 100644 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/default.nix @@ -3,6 +3,7 @@ lib, inputs, system, + osConfig, ... }: let @@ -15,4 +16,5 @@ mkMerge [ (import ./media-player.nix) (import ./status-bar.nix { inherit pkgs; }) (import ./terminal.nix) + (import ./window-manager { inherit pkgs osConfig lib; }) ] diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix new file mode 100644 index 0000000..44b9a6f --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix @@ -0,0 +1,11 @@ +{ + lib, + pkgs, + osConfig, + ... +}: +{ + wayland.windowManager.hyprland.settings = import ./hyprland/settings.nix { + inherit pkgs osConfig lib; + }; +} diff --git a/modules/home/desktop/windowManager/hyprland/decoration.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/decoration.nix similarity index 100% rename from modules/home/desktop/windowManager/hyprland/decoration.nix rename to homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/decoration.nix diff --git a/modules/home/desktop/windowManager/hyprland/keybinds.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/keybinds.nix similarity index 100% rename from modules/home/desktop/windowManager/hyprland/keybinds.nix rename to homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/keybinds.nix diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/settings.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/settings.nix new file mode 100644 index 0000000..3780d20 --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/settings.nix @@ -0,0 +1,30 @@ +{ + lib, + pkgs, + osConfig, + ... +}: +let + inherit (lib) mkMerge; + inherit (osConfig.desktop) mainMonitor; +in +mkMerge [ + (import ./decoration.nix) + (import ./keybinds.nix { inherit pkgs; }) + { + ecosystem.no_update_news = true; + xwayland.force_zero_scaling = true; + + monitor = [ + "${mainMonitor.id}, ${mainMonitor.resolution}@${mainMonitor.refresh-rate}, auto, ${mainMonitor.scale}" + ", preferred, auto, 1" + ]; + + exec-once = [ + "uwsm app -- $LOCKSCREEN" + "uwsm app -- $NOTIFICATION_DAEMON" + "uwsm app -- $STATUS_BAR" + ]; + + } +] diff --git a/modules/home/desktop/default.nix b/modules/home/desktop/default.nix index 43f78ac..4e6e9e7 100644 --- a/modules/home/desktop/default.nix +++ b/modules/home/desktop/default.nix @@ -11,15 +11,7 @@ let inherit (lib) mkMerge mkIf mkEnableOption; in { - options.desktop = { - wayland.enableUtils = mkEnableOption "common Wayland utilities"; - }; config = mkIf upstreamCfg.enable (mkMerge [ - (mkIf cfg.wayland.enableUtils { - home.packages = with pkgs; [ - wl-clipboard-rs - ]; - }) (lib.mkIf (osConfig.hardware.gpu == "nvidia") { home.packages = [ pkgs.stable-diffusion-webui.forge.cuda ]; home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ diff --git a/modules/home/desktop/windowManager/hyprland/default.nix b/modules/home/desktop/windowManager/hyprland/default.nix deleted file mode 100644 index 53f78d1..0000000 --- a/modules/home/desktop/windowManager/hyprland/default.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - pkgs, - lib, - osConfig, - ... -}: -let - inherit (osConfig.desktop) mainMonitor; -in -{ - config = lib.mkIf (osConfig.desktop.windowManager == "hyprland") { - desktop.wayland.enableUtils = true; - wayland.windowManager.hyprland = { - enable = true; - systemd.enable = false; - settings = lib.mkMerge [ - { - ecosystem.no_update_news = true; - - monitor = [ - "${mainMonitor.id}, ${mainMonitor.resolution}@${mainMonitor.refresh-rate}, auto, ${mainMonitor.scale}" - ", preferred, auto, 1" - ]; - - exec-once = [ - "uwsm app -- $LOCKSCREEN" - "uwsm app -- $NOTIFICATION_DAEMON" - "uwsm app -- $STATUS_BAR" - ]; - - xwayland.force_zero_scaling = true; - } - (import ./decoration.nix) - (import ./keybinds.nix { inherit pkgs; }) - ]; - }; - xdg.configFile."uwsm/env".text = # sh - '' - export GDK_SCALE=${mainMonitor.scale} - export STEAM_FORCE_DESKTOPUI_SCALING=${mainMonitor.scale} - ''; - xdg.configFile."uwsm/env-hyprland".text = # sh - '' - export GDK_SCALE=${mainMonitor.scale} - export STEAM_FORCE_DESKTOPUI_SCALING=${mainMonitor.scale} - ''; - }; -} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 0251e8d..36c28ca 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -5,23 +5,21 @@ ... }: let - inherit (lib) mkEnableOption; + inherit (lib) mkEnableOption mkIf singleton; inherit (lib.pantheon) mkStrOption; + inherit (pkgs) wl-clipboard-rs; + cfg = config.desktop; in { - imports = [ - ./windowManager.nix - ]; - options.desktop = { enable = mkEnableOption ""; + enableWaylandUtilities = mkEnableOption ""; mainMonitor = { id = mkStrOption; scale = lib.pantheon.mkStrOption; resolution = lib.pantheon.mkStrOption; refresh-rate = lib.pantheon.mkStrOption; }; - windowManager = lib.pantheon.mkStrOption; enableSpotifyd = lib.mkEnableOption ""; enableSteam = lib.mkEnableOption ""; enableVR = lib.mkEnableOption ""; @@ -34,6 +32,9 @@ in font-awesome ]; } + (mkIf cfg.enableWaylandUtilities { + home-manager.sharedModules = singleton { home.packages = [ wl-clipboard-rs ]; }; + }) (lib.mkIf config.desktop.enableSteam { programs.steam = { enable = true; diff --git a/modules/nixos/desktop/window-manager/hyprland/default.nix b/modules/nixos/desktop/window-manager/hyprland/default.nix new file mode 100644 index 0000000..67060bd --- /dev/null +++ b/modules/nixos/desktop/window-manager/hyprland/default.nix @@ -0,0 +1,47 @@ +{ config, lib, ... }: +let + inherit (lib) mkEnableOption mkIf singleton; + inherit (config.desktop) mainMonitor; + cfg = config.desktop.window-manager.hyprland; +in +{ + options.desktop.window-manager.hyprland = { + enable = mkEnableOption ""; + }; + + config = mkIf cfg.enable { + desktop.enableWaylandUtilities = true; + environment.loginShellInit = # sh + '' + if [[ -z "$SSH_CLIENT" && -z "$SSH_CONNECTION" ]]; then + if uwsm check may-start; then + exec uwsm start hyprland-uwsm.desktop + fi + fi + ''; + environment.variables = { + ELECTRON_OZONE_PLATFORM_HINT = "auto"; + NIXOS_OZONE_WL = "1"; + }; + programs.hyprland = { + enable = true; + withUWSM = true; + }; + home-manager.sharedModules = singleton { + wayland.windowManager.hyprland = { + enable = true; + systemd.enable = false; + }; + xdg.configFile."uwsm/env".text = # sh + '' + export GDK_SCALE=${mainMonitor.scale} + export STEAM_FORCE_DESKTOPUI_SCALING=${mainMonitor.scale} + ''; + xdg.configFile."uwsm/env-hyprland".text = # sh + '' + export GDK_SCALE=${mainMonitor.scale} + export STEAM_FORCE_DESKTOPUI_SCALING=${mainMonitor.scale} + ''; + }; + }; +} diff --git a/modules/nixos/desktop/windowManager.nix b/modules/nixos/desktop/windowManager.nix deleted file mode 100644 index 251690a..0000000 --- a/modules/nixos/desktop/windowManager.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ config, lib, ... }: -{ - config = lib.mkMerge [ - (lib.mkIf (config.desktop.windowManager == "hyprland") { - environment.loginShellInit = # sh - '' - if [[ -z "$SSH_CLIENT" && -z "$SSH_CONNECTION" ]]; then - if uwsm check may-start; then - exec uwsm start hyprland-uwsm.desktop - fi - fi - ''; - environment.variables = { - ELECTRON_OZONE_PLATFORM_HINT = "auto"; - NIXOS_OZONE_WL = "1"; - }; - programs.hyprland = { - enable = true; - withUWSM = true; - }; - }) - ]; -} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index 905b17d..b653213 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -8,7 +8,7 @@ notification-daemon.mako.enable = true; status-bar.waybar.enable = true; terminal.ghostty.enable = true; - windowManager = "hyprland"; + window-manager.hyprland.enable = true; enableSpotifyd = true; enableSteam = true; enableVR = true; From 3040105f9cce1a923e2af656fd84f81ef0ca51ab Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 17:04:38 +0800 Subject: [PATCH 083/373] feat(desktop): enable stable-diffusion-webui-forge module on nemesis system --- flake.lock | 12 ++++++------ flake.nix | 3 ++- modules/home/desktop/default.nix | 4 ---- modules/nixos/hardware/nvidia.nix | 1 - systems/x86_64-linux/nemesis/default.nix | 6 ++++++ 5 files changed, 14 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index 84513c4..66f4bd1 100644 --- a/flake.lock +++ b/flake.lock @@ -624,16 +624,16 @@ ] }, "locked": { - "lastModified": 1748219198, - "narHash": "sha256-RRDI12SLfm9lP7tq4vUr/c/TRj0+mgRjAThdnwTJgIE=", - "owner": "Janrupf", + "lastModified": 1749893259, + "narHash": "sha256-xf2axyf+WuoSfDWQLhQigfms2qzSZzLwlFK7VwVxTkw=", + "owner": "rrvsh", "repo": "stable-diffusion-webui-nix", - "rev": "381e5de206d4962d94a8ebc97d6dc04395928e0c", + "rev": "0c3ebba0812cc3aa34ed16c6b4a85d96fbb2722f", "type": "github" }, "original": { - "owner": "Janrupf", - "ref": "main", + "owner": "rrvsh", + "ref": "add-forge-module", "repo": "stable-diffusion-webui-nix", "type": "github" } diff --git a/flake.nix b/flake.nix index b21d1b5..d24e5cb 100644 --- a/flake.nix +++ b/flake.nix @@ -48,7 +48,7 @@ stable-diffusion-webui-nix.inputs.flake-utils.follows = "flake-utils"; stable-diffusion-webui-nix.inputs.nixpkgs.follows = "nixpkgs"; stable-diffusion-webui-nix.inputs.python-flexseal.follows = "python-flexseal"; - stable-diffusion-webui-nix.url = "github:Janrupf/stable-diffusion-webui-nix/main"; + stable-diffusion-webui-nix.url = "github:rrvsh/stable-diffusion-webui-nix/add-forge-module"; stylix.inputs.flake-compat.follows = "flake-compat"; stylix.inputs.flake-parts.follows = "flake-parts"; stylix.inputs.nur.follows = "nur"; @@ -81,6 +81,7 @@ impermanence.nixosModules.impermanence sops-nix.nixosModules.sops stylix.nixosModules.stylix + stable-diffusion-webui-nix.nixosModules.default ]; homes.modules = with inputs; [ impermanence.homeManagerModules.impermanence diff --git a/modules/home/desktop/default.nix b/modules/home/desktop/default.nix index 4e6e9e7..1aba2e6 100644 --- a/modules/home/desktop/default.nix +++ b/modules/home/desktop/default.nix @@ -13,10 +13,6 @@ in { config = mkIf upstreamCfg.enable (mkMerge [ (lib.mkIf (osConfig.hardware.gpu == "nvidia") { - home.packages = [ pkgs.stable-diffusion-webui.forge.cuda ]; - home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ - ".local/share/stable-diffusion-webui" - ]; }) (lib.mkIf osConfig.desktop.enableSpotifyd { services.spotifyd.enable = true; diff --git a/modules/nixos/hardware/nvidia.nix b/modules/nixos/hardware/nvidia.nix index 23644c2..0f537f2 100644 --- a/modules/nixos/hardware/nvidia.nix +++ b/modules/nixos/hardware/nvidia.nix @@ -21,7 +21,6 @@ __GLX_VENDOR_LIBRARY_NAME = "nvidia"; NVD_BACKEND = "direct"; }; - nix.settings.substituters = [ "https://cuda-maintainers.cachix.org" ]; nix.settings.trusted-public-keys = [ "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index dcb3473..13076d2 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -1,3 +1,4 @@ +{ pkgs, ... }: { imports = [ ../common.nix @@ -32,5 +33,10 @@ enable = true; client.enable = true; }; + sd-webui-forge = { + enable = true; + listen = true; + extraArgs = "--cuda-malloc"; + }; }; } From 527a166a86b909fa0811eb74cd2f0fb7f12d17a7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 17:53:42 +0800 Subject: [PATCH 084/373] feat(desktop): move desktop services config to nixos modules --- modules/home/desktop/default.nix | 36 ------------- modules/nixos/desktop/default.nix | 60 ++++++---------------- modules/nixos/desktop/services/default.nix | 52 +++++++++++++++++++ modules/nixos/hardware/networking.nix | 42 +++++++-------- systems/x86_64-linux/desktop.nix | 4 -- systems/x86_64-linux/nemesis/default.nix | 18 ++++--- 6 files changed, 98 insertions(+), 114 deletions(-) delete mode 100644 modules/home/desktop/default.nix create mode 100644 modules/nixos/desktop/services/default.nix diff --git a/modules/home/desktop/default.nix b/modules/home/desktop/default.nix deleted file mode 100644 index 1aba2e6..0000000 --- a/modules/home/desktop/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - config, - lib, - osConfig, - pkgs, - ... -}: -let - cfg = config.desktop; - upstreamCfg = osConfig.desktop; - inherit (lib) mkMerge mkIf mkEnableOption; -in -{ - config = mkIf upstreamCfg.enable (mkMerge [ - (lib.mkIf (osConfig.hardware.gpu == "nvidia") { - }) - (lib.mkIf osConfig.desktop.enableSpotifyd { - services.spotifyd.enable = true; - services.spotifyd.settings.global = { - device_name = "${osConfig.system.hostname}"; - device_type = "computer"; - zeroconf_port = 5353; - }; - }) - (lib.mkIf osConfig.desktop.enableSteam { - home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ - ".local/share/Steam" - ]; - }) - (lib.mkIf osConfig.desktop.enableSunshine { - home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ - ".config/sunshine" - ]; - }) - ]); -} diff --git a/modules/nixos/desktop/default.nix b/modules/nixos/desktop/default.nix index 36c28ca..9deaf5c 100644 --- a/modules/nixos/desktop/default.nix +++ b/modules/nixos/desktop/default.nix @@ -5,9 +5,14 @@ ... }: let - inherit (lib) mkEnableOption mkIf singleton; + inherit (lib) + mkEnableOption + mkIf + singleton + optional + ; inherit (lib.pantheon) mkStrOption; - inherit (pkgs) wl-clipboard-rs; + inherit (pkgs) font-awesome wl-clipboard-rs; cfg = config.desktop; in { @@ -16,49 +21,16 @@ in enableWaylandUtilities = mkEnableOption ""; mainMonitor = { id = mkStrOption; - scale = lib.pantheon.mkStrOption; - resolution = lib.pantheon.mkStrOption; - refresh-rate = lib.pantheon.mkStrOption; + scale = mkStrOption; + resolution = mkStrOption; + refresh-rate = mkStrOption; }; - enableSpotifyd = lib.mkEnableOption ""; - enableSteam = lib.mkEnableOption ""; - enableVR = lib.mkEnableOption ""; - enableSunshine = lib.mkEnableOption ""; }; - config = lib.mkMerge [ - { - fonts.packages = with pkgs; [ - font-awesome - ]; - } - (mkIf cfg.enableWaylandUtilities { - home-manager.sharedModules = singleton { home.packages = [ wl-clipboard-rs ]; }; - }) - (lib.mkIf config.desktop.enableSteam { - programs.steam = { - enable = true; - gamescopeSession.enable = true; - }; - }) - (lib.mkIf config.desktop.enableVR { - programs.alvr = { - enable = true; - openFirewall = true; - }; - environment.systemPackages = [ pkgs.android-tools ]; - }) - (lib.mkIf config.desktop.enableSunshine { - services.sunshine = { - enable = true; - capSysAdmin = true; - openFirewall = true; - settings = { - sunshine_name = config.system.hostname; - origin_web_ui_allowed = "wan"; - }; - applications = { }; - }; - }) - ]; + config = mkIf cfg.enable { + fonts.packages = singleton font-awesome; + home-manager.sharedModules = optional cfg.enableWaylandUtilities { + home.packages = [ wl-clipboard-rs ]; + }; + }; } diff --git a/modules/nixos/desktop/services/default.nix b/modules/nixos/desktop/services/default.nix new file mode 100644 index 0000000..b9018d6 --- /dev/null +++ b/modules/nixos/desktop/services/default.nix @@ -0,0 +1,52 @@ +{ config, lib, ... }: +let + inherit (lib) + mkMerge + singleton + mkEnableOption + mkIf + ; + cfg = config.desktop.services; +in +{ + options.desktop.services = { + spotifyd.enable = mkEnableOption ""; + sunshine.enable = mkEnableOption ""; + steam.enable = mkEnableOption ""; + }; + + config = mkMerge [ + (mkIf cfg.sunshine.enable { + services.sunshine = { + enable = true; + capSysAdmin = true; + openFirewall = true; + settings = { + sunshine_name = config.system.hostname; + origin_web_ui_allowed = "wan"; + }; + applications = { }; + }; + home-manager.sharedModules = singleton { persistDirs = singleton ".config/sunshine"; }; + }) + (mkIf cfg.spotifyd.enable { + networking.firewall.allowedTCPPorts = [ 5353 ]; + networking.firewall.allowedUDPPorts = [ 5353 ]; + home-manager.sharedModules = singleton { + services.spotifyd.enable = true; + services.spotifyd.settings.global = { + device_name = "${config.system.hostname}"; + device_type = "computer"; + zeroconf_port = 5353; + }; + }; + }) + (mkIf cfg.steam.enable { + programs.steam = { + enable = true; + gamescopeSession.enable = true; + }; + home-manager.sharedModules = singleton { persistDirs = singleton ".local/share/Steam"; }; + }) + ]; +} diff --git a/modules/nixos/hardware/networking.nix b/modules/nixos/hardware/networking.nix index 89ea093..372bebe 100644 --- a/modules/nixos/hardware/networking.nix +++ b/modules/nixos/hardware/networking.nix @@ -1,30 +1,24 @@ { config, lib, ... }: { - config = lib.mkMerge [ - { - networking = { - enableIPv6 = false; - useDHCP = lib.mkDefault true; - hostName = config.system.hostname; - networkmanager.enable = true; - }; + config = { + networking = { + enableIPv6 = false; + useDHCP = lib.mkDefault true; + hostName = config.system.hostname; + networkmanager.enable = true; + }; - services.openssh = { - enable = true; - settings = { - PrintMotd = true; - }; + services.openssh = { + enable = true; + settings = { + PrintMotd = true; }; + }; - services.tailscale = { - enable = true; - authKeyFile = config.sops.secrets."keys/tailscale".path; - }; - environment.persistence."/persist".directories = [ "/var/lib/tailscale" ]; - } - (lib.mkIf config.desktop.enableSpotifyd { - networking.firewall.allowedTCPPorts = [ 5353 ]; - networking.firewall.allowedUDPPorts = [ 5353 ]; - }) - ]; + services.tailscale = { + enable = true; + authKeyFile = config.sops.secrets."keys/tailscale".path; + }; + environment.persistence."/persist".directories = [ "/var/lib/tailscale" ]; + }; } diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index b653213..4c9b096 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -9,9 +9,5 @@ status-bar.waybar.enable = true; terminal.ghostty.enable = true; window-manager.hyprland.enable = true; - enableSpotifyd = true; - enableSteam = true; - enableVR = true; - enableSunshine = true; }; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 13076d2..4c30d18 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -1,4 +1,3 @@ -{ pkgs, ... }: { imports = [ ../common.nix @@ -21,11 +20,18 @@ usb.automount = true; }; - desktop.mainMonitor = { - id = "desc:OOO AN-270W04K"; - scale = "2"; - resolution = "3840x2160"; - refresh-rate = "60"; + desktop = { + services = { + steam.enable = true; + sunshine.enable = true; + spotifyd.enable = true; + }; + mainMonitor = { + id = "desc:OOO AN-270W04K"; + scale = "2"; + resolution = "3840x2160"; + refresh-rate = "60"; + }; }; services = { From 2387ad909971fca6baddd9728dfbc276c0140478 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 18:03:11 +0800 Subject: [PATCH 085/373] feat(cli): remove cli module and move zsh config to systems --- modules/home/{system => }/default.nix | 0 modules/nixos/cli/default.nix | 24 ------------------------ systems/x86_64-linux/common.nix | 11 +++++++++++ 3 files changed, 11 insertions(+), 24 deletions(-) rename modules/home/{system => }/default.nix (100%) delete mode 100644 modules/nixos/cli/default.nix diff --git a/modules/home/system/default.nix b/modules/home/default.nix similarity index 100% rename from modules/home/system/default.nix rename to modules/home/default.nix diff --git a/modules/nixos/cli/default.nix b/modules/nixos/cli/default.nix deleted file mode 100644 index cb84398..0000000 --- a/modules/nixos/cli/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -{ - imports = [ ]; - - options.cli = { }; - - config = lib.mkMerge [ - { - programs.zsh.enable = true; - users.defaultUserShell = pkgs.zsh; - environment.pathsToLink = [ "/share/zsh" ]; # enables completion - } - { - environment.systemPackages = with pkgs; [ - p7zip - ]; - } - ]; -} diff --git a/systems/x86_64-linux/common.nix b/systems/x86_64-linux/common.nix index eb507c3..6c86ad7 100644 --- a/systems/x86_64-linux/common.nix +++ b/systems/x86_64-linux/common.nix @@ -1,3 +1,7 @@ +{ pkgs, ... }: +let + inherit (pkgs) zsh; +in { system.mainUser = { name = "rafiq"; @@ -5,5 +9,12 @@ email = "rafiq@rrv.sh"; }; server.mountHelios = true; + + users.defaultUserShell = zsh; + programs = { + zsh.enable = true; + zsh.enableCompletion = true; + }; + nixpkgs.hostPlatform = "x86_64-linux"; } From f5a046cd582fc1aac7c1cac6a4c28d9d1bcf6793 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 18:22:53 +0800 Subject: [PATCH 086/373] feat(home): import desktop module using import-tree and move misc config to desktop module --- flake.lock | 16 ++ flake.nix | 1 + homes/x86_64-linux/rafiq/default.nix | 148 +++++++----------- homes/x86_64-linux/rafiq/desktop/browser.nix | 1 + homes/x86_64-linux/rafiq/desktop/default.nix | 20 --- homes/x86_64-linux/rafiq/desktop/misc.nix | 21 +++ .../{hyprland => _hyprland}/decoration.nix | 0 .../{hyprland => _hyprland}/keybinds.nix | 0 .../{hyprland => _hyprland}/settings.nix | 0 .../rafiq/desktop/window-manager/default.nix | 2 +- 10 files changed, 97 insertions(+), 112 deletions(-) delete mode 100644 homes/x86_64-linux/rafiq/desktop/default.nix create mode 100644 homes/x86_64-linux/rafiq/desktop/misc.nix rename homes/x86_64-linux/rafiq/desktop/window-manager/{hyprland => _hyprland}/decoration.nix (100%) rename homes/x86_64-linux/rafiq/desktop/window-manager/{hyprland => _hyprland}/keybinds.nix (100%) rename homes/x86_64-linux/rafiq/desktop/window-manager/{hyprland => _hyprland}/settings.nix (100%) diff --git a/flake.lock b/flake.lock index 66f4bd1..71634b1 100644 --- a/flake.lock +++ b/flake.lock @@ -307,6 +307,21 @@ "type": "github" } }, + "import-tree": { + "locked": { + "lastModified": 1745565707, + "narHash": "sha256-ccFeWWQ9RLgCd1k+xwV/ASUkJ7AGTTaGDhlRWZgytxY=", + "owner": "vic", + "repo": "import-tree", + "rev": "ed504db425c363b13f13d5ca52f1a2600c4a7703", + "type": "github" + }, + "original": { + "owner": "vic", + "repo": "import-tree", + "type": "github" + } + }, "mnw": { "locked": { "lastModified": 1748710831, @@ -511,6 +526,7 @@ "flake-utils-plus": "flake-utils-plus", "home-manager": "home-manager", "impermanence": "impermanence", + "import-tree": "import-tree", "mnw": "mnw", "nil": "nil", "nix-index-database": "nix-index-database", diff --git a/flake.nix b/flake.nix index d24e5cb..fbf13c1 100644 --- a/flake.nix +++ b/flake.nix @@ -1,6 +1,7 @@ { inputs = { + import-tree.url = "github:vic/import-tree"; rrvsh-nixpkgs.url = "github:rrvsh/nixpkgs/librechat-module"; crane.url = "github:ipetkov/crane"; disko.inputs.nixpkgs.follows = "nixpkgs"; diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 1b707c8..8e19cdc 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -3,11 +3,11 @@ inputs, osConfig, lib, - system, ... }: let - inherit (lib) mkMerge mkIf; + inherit (lib) optional; + inherit (inputs) import-tree; mkEmailAccount = address: { inherit address; maildir.path = address; @@ -22,99 +22,65 @@ let host = "smtp.forwardemail.net"; port = 465; }; - thunderbird.enable = true; + thunderbird.enable = osConfig.desktop.enable; }; in { - config = mkMerge [ - (mkIf osConfig.desktop.enable ( - import ./desktop { - inherit - lib - inputs - system - pkgs - osConfig - ; - } - )) - (mkIf osConfig.desktop.enable { - home.persistence."/persist/home/rafiq".directories = [ - "docs" - "repos" - "vids" - "tmp" - ".tor project" - ".local/share/PrismLauncher" - ]; - programs = { - obs-studio.enable = true; - thunderbird.enable = true; - thunderbird.profiles.rafiq.isDefault = true; - }; - home.packages = with pkgs; [ - stremio - tor-browser - prismlauncher - ]; - }) - { - accounts = { - email = { - maildirBasePath = "mail"; - accounts = { - "rafiq@rrv.sh" = { - primary = true; - } // mkEmailAccount "rafiq@rrv.sh"; - "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; - }; - }; - }; - cli = { - shell = "zsh"; - finder = "fzf"; - screensaver.enable = true; - screensaver.timeout = "100"; - screensaver.command = "cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; - editor = "nvf"; - file-browser = "yazi"; - multiplexer = "zellij"; - fetch = "hyfetch"; - git.name = "Mohammad Rafiq"; - git.email = "rafiq@rrv.sh"; - git.defaultBranch = "prime"; - }; - home = { - shellAliases = { - v = "nvim"; - e = "edit"; - }; + imports = optional osConfig.desktop.enable (import-tree ./desktop); - packages = with pkgs; [ - cbonsai - ripgrep - devenv - pantheon.rebuild - pantheon.deploy - pantheon.edit - pantheon.commit - pantheon.check - inputs.nixspect.packages."x86_64-linux".nixspect - ]; - - persistence."/persist/home/rafiq".directories = [ - ]; - }; - programs = { - nh.enable = true; - tealdeer.enable = true; - tealdeer.settings.updates.auto_update = true; - pay-respects.enable = true; - direnv = { - enable = true; - nix-direnv.enable = true; + config = { + accounts = { + email = { + maildirBasePath = "mail"; + accounts = { + "rafiq@rrv.sh" = { + primary = true; + } // mkEmailAccount "rafiq@rrv.sh"; + "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; }; }; - } - ]; + }; + cli = { + shell = "zsh"; + finder = "fzf"; + screensaver.enable = true; + screensaver.timeout = "100"; + screensaver.command = "cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; + editor = "nvf"; + file-browser = "yazi"; + multiplexer = "zellij"; + fetch = "hyfetch"; + git.name = "Mohammad Rafiq"; + git.email = "rafiq@rrv.sh"; + git.defaultBranch = "prime"; + }; + home = { + shellAliases = { + v = "nvim"; + e = "edit"; + }; + + packages = with pkgs; [ + cbonsai + ripgrep + devenv + pantheon.rebuild + pantheon.deploy + pantheon.edit + pantheon.commit + pantheon.check + inputs.nixspect.packages."x86_64-linux".nixspect + ]; + }; + programs = { + nh.enable = true; + tealdeer.enable = true; + tealdeer.settings.updates.auto_update = true; + pay-respects.enable = true; + direnv = { + enable = true; + nix-direnv.enable = true; + }; + }; + }; } diff --git a/homes/x86_64-linux/rafiq/desktop/browser.nix b/homes/x86_64-linux/rafiq/desktop/browser.nix index e156c8a..7fa9677 100644 --- a/homes/x86_64-linux/rafiq/desktop/browser.nix +++ b/homes/x86_64-linux/rafiq/desktop/browser.nix @@ -2,6 +2,7 @@ lib, inputs, system, + ... }: let inherit (builtins) map listToAttrs; diff --git a/homes/x86_64-linux/rafiq/desktop/default.nix b/homes/x86_64-linux/rafiq/desktop/default.nix deleted file mode 100644 index 5e8befb..0000000 --- a/homes/x86_64-linux/rafiq/desktop/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - pkgs, - lib, - inputs, - system, - osConfig, - ... -}: -let - inherit (lib) mkMerge; -in -mkMerge [ - (import ./browser.nix { inherit lib inputs system; }) - (import ./lockscreen.nix) - (import ./launcher.nix) - (import ./media-player.nix) - (import ./status-bar.nix { inherit pkgs; }) - (import ./terminal.nix) - (import ./window-manager { inherit pkgs osConfig lib; }) -] diff --git a/homes/x86_64-linux/rafiq/desktop/misc.nix b/homes/x86_64-linux/rafiq/desktop/misc.nix new file mode 100644 index 0000000..69dc92c --- /dev/null +++ b/homes/x86_64-linux/rafiq/desktop/misc.nix @@ -0,0 +1,21 @@ +{ pkgs, ... }: +{ + persistDirs = [ + "docs" + "repos" + "vids" + "tmp" + ".tor project" + ".local/share/PrismLauncher" + ]; + programs = { + obs-studio.enable = true; + thunderbird.enable = true; + thunderbird.profiles.rafiq.isDefault = true; + }; + home.packages = with pkgs; [ + stremio + tor-browser + prismlauncher + ]; +} diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/decoration.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/decoration.nix similarity index 100% rename from homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/decoration.nix rename to homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/decoration.nix diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/keybinds.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix similarity index 100% rename from homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/keybinds.nix rename to homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/settings.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/settings.nix similarity index 100% rename from homes/x86_64-linux/rafiq/desktop/window-manager/hyprland/settings.nix rename to homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/settings.nix diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix index 44b9a6f..47d2954 100644 --- a/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix +++ b/homes/x86_64-linux/rafiq/desktop/window-manager/default.nix @@ -5,7 +5,7 @@ ... }: { - wayland.windowManager.hyprland.settings = import ./hyprland/settings.nix { + wayland.windowManager.hyprland.settings = import ./_hyprland/settings.nix { inherit pkgs osConfig lib; }; } From da52d32c916d02115ff9df33c130dfafc0731db4 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 18:29:18 +0800 Subject: [PATCH 087/373] feat(desktop): move tor-browser config to nixos module --- homes/x86_64-linux/rafiq/desktop/misc.nix | 2 -- .../desktop/browser/tor-browser/default.nix | 24 +++++++++++++++++++ systems/x86_64-linux/nemesis/default.nix | 5 +--- 3 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 modules/nixos/desktop/browser/tor-browser/default.nix diff --git a/homes/x86_64-linux/rafiq/desktop/misc.nix b/homes/x86_64-linux/rafiq/desktop/misc.nix index 69dc92c..27f2e7f 100644 --- a/homes/x86_64-linux/rafiq/desktop/misc.nix +++ b/homes/x86_64-linux/rafiq/desktop/misc.nix @@ -5,7 +5,6 @@ "repos" "vids" "tmp" - ".tor project" ".local/share/PrismLauncher" ]; programs = { @@ -15,7 +14,6 @@ }; home.packages = with pkgs; [ stremio - tor-browser prismlauncher ]; } diff --git a/modules/nixos/desktop/browser/tor-browser/default.nix b/modules/nixos/desktop/browser/tor-browser/default.nix new file mode 100644 index 0000000..27e0681 --- /dev/null +++ b/modules/nixos/desktop/browser/tor-browser/default.nix @@ -0,0 +1,24 @@ +{ + config, + lib, + pkgs, + ... +}: +let + inherit (lib) mkEnableOption mkIf singleton; + cfg = config.desktop.browser.tor-browser; +in +{ + options.desktop.browser.tor-browser.enable = mkEnableOption ""; + + config = mkIf cfg.enable { + services.tor = { + enable = true; + client.enable = true; + }; + home-manager.sharedModules = singleton { + persistDirs = singleton ".tor project"; + home.packages = singleton pkgs.tor-browser; + }; + }; +} diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 4c30d18..8a304d2 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -21,6 +21,7 @@ }; desktop = { + browser.tor-browser.enable = true; services = { steam.enable = true; sunshine.enable = true; @@ -35,10 +36,6 @@ }; services = { - tor = { - enable = true; - client.enable = true; - }; sd-webui-forge = { enable = true; listen = true; From af7226d30e3e2ec8b072b6b8e4db241266dde434 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 18:35:28 +0800 Subject: [PATCH 088/373] feat(desktop): move prism-launcher and steam config to nixos gaming module --- homes/x86_64-linux/rafiq/desktop/misc.nix | 2 -- modules/nixos/desktop/gaming/default.nix | 37 ++++++++++++++++++++++ modules/nixos/desktop/services/default.nix | 7 ---- systems/x86_64-linux/nemesis/default.nix | 5 ++- 4 files changed, 41 insertions(+), 10 deletions(-) create mode 100644 modules/nixos/desktop/gaming/default.nix diff --git a/homes/x86_64-linux/rafiq/desktop/misc.nix b/homes/x86_64-linux/rafiq/desktop/misc.nix index 27f2e7f..ecac1d3 100644 --- a/homes/x86_64-linux/rafiq/desktop/misc.nix +++ b/homes/x86_64-linux/rafiq/desktop/misc.nix @@ -5,7 +5,6 @@ "repos" "vids" "tmp" - ".local/share/PrismLauncher" ]; programs = { obs-studio.enable = true; @@ -14,6 +13,5 @@ }; home.packages = with pkgs; [ stremio - prismlauncher ]; } diff --git a/modules/nixos/desktop/gaming/default.nix b/modules/nixos/desktop/gaming/default.nix new file mode 100644 index 0000000..a6e4443 --- /dev/null +++ b/modules/nixos/desktop/gaming/default.nix @@ -0,0 +1,37 @@ +{ + config, + lib, + pkgs, + ... +}: +let + inherit (lib) + mkEnableOption + mkIf + mkMerge + singleton + ; + cfg = config.desktop.gaming; +in +{ + options.desktop.gaming = { + steam.enable = mkEnableOption ""; + prism-launcher.enable = mkEnableOption ""; + }; + + config = mkMerge [ + (mkIf cfg.steam.enable { + programs.steam = { + enable = true; + gamescopeSession.enable = true; + }; + home-manager.sharedModules = singleton { persistDirs = singleton ".local/share/Steam"; }; + }) + (mkIf cfg.prism-launcher.enable { + home-manager.sharedModules = singleton { + home.packages = singleton pkgs.prismlauncher; + persistDirs = singleton ".local/share/PrismLauncher"; + }; + }) + ]; +} diff --git a/modules/nixos/desktop/services/default.nix b/modules/nixos/desktop/services/default.nix index b9018d6..f993b41 100644 --- a/modules/nixos/desktop/services/default.nix +++ b/modules/nixos/desktop/services/default.nix @@ -41,12 +41,5 @@ in }; }; }) - (mkIf cfg.steam.enable { - programs.steam = { - enable = true; - gamescopeSession.enable = true; - }; - home-manager.sharedModules = singleton { persistDirs = singleton ".local/share/Steam"; }; - }) ]; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 8a304d2..c9dfaa6 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -22,8 +22,11 @@ desktop = { browser.tor-browser.enable = true; - services = { + gaming = { + prism-launcher.enable = true; steam.enable = true; + }; + services = { sunshine.enable = true; spotifyd.enable = true; }; From 1a3ff4b92a7a1478d63c031655d7a187516e1994 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 18:52:44 +0800 Subject: [PATCH 089/373] feat(home): move nvf config to homes and use home-manager modules --- .../rafiq/cli/editor/_nvf}/autocomplete.nix | 0 .../rafiq/cli/editor/_nvf}/binds.nix | 0 .../rafiq/cli/editor/_nvf}/clipboard.nix | 0 .../rafiq/cli/editor/_nvf}/diagnostics.nix | 0 .../rafiq/cli/editor/_nvf}/keymaps.nix | 0 .../rafiq/cli/editor/_nvf}/languages.nix | 0 .../rafiq/cli/editor/_nvf}/lsp.nix | 0 .../rafiq/cli/editor/_nvf}/navigation.nix | 0 .../rafiq/cli/editor/_nvf}/notes.nix | 0 .../rafiq/cli/editor/_nvf}/notify.nix | 0 .../rafiq/cli/editor/_nvf}/options.nix | 0 .../rafiq/cli/editor/_nvf}/snippets.nix | 0 .../rafiq/cli/editor/_nvf}/statusline.nix | 0 .../rafiq/cli/editor/_nvf}/treesitter.nix | 0 .../rafiq/cli/editor/_nvf}/ui.nix | 0 .../rafiq/cli/editor/_nvf}/utility.nix | 0 .../rafiq/cli/editor/_nvf}/visuals.nix | 0 .../x86_64-linux/rafiq/cli/editor/default.nix | 38 +++++++++++++++ homes/x86_64-linux/rafiq/default.nix | 5 +- modules/home/cli/default.nix | 1 - modules/home/cli/editor/nvf/default.nix | 46 ------------------- 21 files changed, 40 insertions(+), 50 deletions(-) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/autocomplete.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/binds.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/clipboard.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/diagnostics.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/keymaps.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/languages.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/lsp.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/navigation.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/notes.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/notify.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/options.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/snippets.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/statusline.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/treesitter.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/ui.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/utility.nix (100%) rename {modules/home/cli/editor/nvf => homes/x86_64-linux/rafiq/cli/editor/_nvf}/visuals.nix (100%) create mode 100644 homes/x86_64-linux/rafiq/cli/editor/default.nix delete mode 100644 modules/home/cli/editor/nvf/default.nix diff --git a/modules/home/cli/editor/nvf/autocomplete.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/autocomplete.nix similarity index 100% rename from modules/home/cli/editor/nvf/autocomplete.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/autocomplete.nix diff --git a/modules/home/cli/editor/nvf/binds.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/binds.nix similarity index 100% rename from modules/home/cli/editor/nvf/binds.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/binds.nix diff --git a/modules/home/cli/editor/nvf/clipboard.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/clipboard.nix similarity index 100% rename from modules/home/cli/editor/nvf/clipboard.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/clipboard.nix diff --git a/modules/home/cli/editor/nvf/diagnostics.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/diagnostics.nix similarity index 100% rename from modules/home/cli/editor/nvf/diagnostics.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/diagnostics.nix diff --git a/modules/home/cli/editor/nvf/keymaps.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/keymaps.nix similarity index 100% rename from modules/home/cli/editor/nvf/keymaps.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/keymaps.nix diff --git a/modules/home/cli/editor/nvf/languages.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix similarity index 100% rename from modules/home/cli/editor/nvf/languages.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix diff --git a/modules/home/cli/editor/nvf/lsp.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix similarity index 100% rename from modules/home/cli/editor/nvf/lsp.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix diff --git a/modules/home/cli/editor/nvf/navigation.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix similarity index 100% rename from modules/home/cli/editor/nvf/navigation.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix diff --git a/modules/home/cli/editor/nvf/notes.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/notes.nix similarity index 100% rename from modules/home/cli/editor/nvf/notes.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/notes.nix diff --git a/modules/home/cli/editor/nvf/notify.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/notify.nix similarity index 100% rename from modules/home/cli/editor/nvf/notify.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/notify.nix diff --git a/modules/home/cli/editor/nvf/options.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/options.nix similarity index 100% rename from modules/home/cli/editor/nvf/options.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/options.nix diff --git a/modules/home/cli/editor/nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix similarity index 100% rename from modules/home/cli/editor/nvf/snippets.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix diff --git a/modules/home/cli/editor/nvf/statusline.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/statusline.nix similarity index 100% rename from modules/home/cli/editor/nvf/statusline.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/statusline.nix diff --git a/modules/home/cli/editor/nvf/treesitter.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/treesitter.nix similarity index 100% rename from modules/home/cli/editor/nvf/treesitter.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/treesitter.nix diff --git a/modules/home/cli/editor/nvf/ui.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/ui.nix similarity index 100% rename from modules/home/cli/editor/nvf/ui.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/ui.nix diff --git a/modules/home/cli/editor/nvf/utility.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/utility.nix similarity index 100% rename from modules/home/cli/editor/nvf/utility.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/utility.nix diff --git a/modules/home/cli/editor/nvf/visuals.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/visuals.nix similarity index 100% rename from modules/home/cli/editor/nvf/visuals.nix rename to homes/x86_64-linux/rafiq/cli/editor/_nvf/visuals.nix diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix new file mode 100644 index 0000000..0bbd2a1 --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -0,0 +1,38 @@ +{ lib, pkgs, ... }: +let + inherit (lib) singleton; +in +{ + home.sessionVariables.EDITOR = "nvim"; + persistDirs = singleton ".local/share/nvf"; + programs.nvf.enable = true; + programs.nvf.settings.vim = { + startPlugins = [ pkgs.pantheon.snippets ]; + hideSearchHighlight = true; + syntaxHighlighting = true; + telescope.enable = true; + searchCase = "ignore"; + undoFile.enable = true; + fzf-lua.enable = true; + git.enable = true; + git.gitsigns.enable = false; + autopairs.nvim-autopairs.enable = true; + autocomplete = import ./_nvf/autocomplete.nix { inherit lib; }; + binds = import ./_nvf/binds.nix; + clipboard = import ./_nvf/clipboard.nix; + diagnostics = import ./_nvf/diagnostics.nix; + keymaps = import ./_nvf/keymaps.nix; + languages = import ./_nvf/languages.nix; + lsp = import ./_nvf/lsp.nix; + navigation = import ./_nvf/navigation.nix; + notes = import ./_nvf/notes.nix; + options = import ./_nvf/options.nix; + notify = import ./_nvf/notify.nix; + snippets = import ./_nvf/snippets.nix; + statusline = import ./_nvf/statusline.nix; + treesitter = import ./_nvf/treesitter.nix; + ui = import ./_nvf/ui.nix; + utility = import ./_nvf/utility.nix; + visuals = import ./_nvf/visuals.nix; + }; +} diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 8e19cdc..7975baf 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -6,7 +6,7 @@ ... }: let - inherit (lib) optional; + inherit (lib) singleton optional; inherit (inputs) import-tree; mkEmailAccount = address: { inherit address; @@ -26,7 +26,7 @@ let }; in { - imports = optional osConfig.desktop.enable (import-tree ./desktop); + imports = (optional osConfig.desktop.enable (import-tree ./desktop)) ++ singleton (import-tree ./cli); config = { accounts = { @@ -46,7 +46,6 @@ in screensaver.enable = true; screensaver.timeout = "100"; screensaver.command = "cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; - editor = "nvf"; file-browser = "yazi"; multiplexer = "zellij"; fetch = "hyfetch"; diff --git a/modules/home/cli/default.nix b/modules/home/cli/default.nix index afd16d2..5d663c2 100644 --- a/modules/home/cli/default.nix +++ b/modules/home/cli/default.nix @@ -11,7 +11,6 @@ screensaver.enable = lib.mkEnableOption ""; screensaver.timeout = lib.pantheon.mkStrOption; screensaver.command = lib.pantheon.mkStrOption; - editor = lib.pantheon.mkStrOption; file-browser = lib.pantheon.mkStrOption; multiplexer = lib.pantheon.mkStrOption; fetch = lib.pantheon.mkStrOption; diff --git a/modules/home/cli/editor/nvf/default.nix b/modules/home/cli/editor/nvf/default.nix deleted file mode 100644 index abb741c..0000000 --- a/modules/home/cli/editor/nvf/default.nix +++ /dev/null @@ -1,46 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -{ - config = lib.mkIf (config.cli.editor == "nvf") { - home.sessionVariables.EDITOR = "nvim"; - home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ - ".local/share/nvf" - ]; - programs.nvf = { - enable = true; - settings.vim = { - startPlugins = [ pkgs.pantheon.snippets ]; - hideSearchHighlight = true; - syntaxHighlighting = true; - telescope.enable = true; - searchCase = "ignore"; - undoFile.enable = true; - fzf-lua.enable = true; - git.enable = true; - git.gitsigns.enable = false; - autocomplete = import ./autocomplete.nix { inherit lib; }; - autopairs.nvim-autopairs.enable = true; - binds = import ./binds.nix; - clipboard = import ./clipboard.nix; - diagnostics = import ./diagnostics.nix; - keymaps = import ./keymaps.nix; - languages = import ./languages.nix; - lsp = import ./lsp.nix; - navigation = import ./navigation.nix; - notes = import ./notes.nix; - options = import ./options.nix; - notify = import ./notify.nix; - snippets = import ./snippets.nix; - statusline = import ./statusline.nix; - treesitter = import ./treesitter.nix; - ui = import ./ui.nix; - utility = import ./utility.nix; - visuals = import ./visuals.nix; - }; - }; - }; -} From 00e3ea65c8acd2c16887f1fd64a733e090e66aaf Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 19:15:48 +0800 Subject: [PATCH 090/373] feat(home): move cli config to homes and use home-manager modules --- homes/x86_64-linux/rafiq/cli/fetch.nix | 26 +++++++ homes/x86_64-linux/rafiq/cli/file-browser.nix | 20 +++++ homes/x86_64-linux/rafiq/cli/finder.nix | 6 ++ .../x86_64-linux/rafiq/cli/multiplexer.nix | 8 +- homes/x86_64-linux/rafiq/cli/shell.nix | 42 +++++++++++ .../x86_64-linux/rafiq/cli/utilities/git.nix | 24 ++++++ .../x86_64-linux/rafiq/cli/utilities/misc.nix | 53 +++++++++++++ homes/x86_64-linux/rafiq/default.nix | 46 +----------- modules/home/cli/default.nix | 74 ------------------- modules/home/cli/fetch/default.nix | 31 -------- modules/home/cli/file-browser/default.nix | 23 ------ modules/home/cli/finder/default.nix | 11 --- modules/home/cli/multiplexer/default.nix | 14 ---- modules/home/cli/shell/default.nix | 38 ---------- modules/home/cli/utilities/default.nix | 3 - modules/home/cli/utilities/git.nix | 27 ------- modules/home/default.nix | 23 +++++- 17 files changed, 198 insertions(+), 271 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/cli/fetch.nix create mode 100644 homes/x86_64-linux/rafiq/cli/file-browser.nix create mode 100644 homes/x86_64-linux/rafiq/cli/finder.nix rename modules/home/cli/multiplexer/zellij.nix => homes/x86_64-linux/rafiq/cli/multiplexer.nix (93%) create mode 100644 homes/x86_64-linux/rafiq/cli/shell.nix create mode 100644 homes/x86_64-linux/rafiq/cli/utilities/git.nix create mode 100644 homes/x86_64-linux/rafiq/cli/utilities/misc.nix delete mode 100644 modules/home/cli/default.nix delete mode 100644 modules/home/cli/fetch/default.nix delete mode 100644 modules/home/cli/file-browser/default.nix delete mode 100644 modules/home/cli/finder/default.nix delete mode 100644 modules/home/cli/multiplexer/default.nix delete mode 100644 modules/home/cli/shell/default.nix delete mode 100644 modules/home/cli/utilities/default.nix delete mode 100644 modules/home/cli/utilities/git.nix diff --git a/homes/x86_64-linux/rafiq/cli/fetch.nix b/homes/x86_64-linux/rafiq/cli/fetch.nix new file mode 100644 index 0000000..112892a --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/fetch.nix @@ -0,0 +1,26 @@ +{ lib, pkgs, ... }: +let + inherit (lib) singleton; +in +{ + home = { + packages = singleton pkgs.fastfetch; + sessionVariables.FETCH = "hyfetch"; + shellAliases.fetch = "hyfetch"; + }; + programs.hyfetch = { + enable = true; + settings = { + preset = "bisexual"; + mode = "rgb"; + light_dark = "dark"; + lightness = 0.5; + color_align = { + mode = "horizontal"; + custom_colors = [ ]; + fore_back = null; + }; + backend = "fastfetch"; + }; + }; +} diff --git a/homes/x86_64-linux/rafiq/cli/file-browser.nix b/homes/x86_64-linux/rafiq/cli/file-browser.nix new file mode 100644 index 0000000..00a4034 --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/file-browser.nix @@ -0,0 +1,20 @@ +{ + home.sessionVariables.FILE_BROWSER = "yazi"; + programs.yazi = { + enable = true; + shellWrapperName = "t"; + settings = { + mgr = { + sort_by = "natural"; + }; + opener = { + play = [ + { + run = "vlc \"$@\""; + desc = "Open"; + } + ]; + }; + }; + }; +} diff --git a/homes/x86_64-linux/rafiq/cli/finder.nix b/homes/x86_64-linux/rafiq/cli/finder.nix new file mode 100644 index 0000000..983fc8d --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/finder.nix @@ -0,0 +1,6 @@ +{ + programs.fzf = { + enable = true; + enableZshIntegration = true; + }; +} diff --git a/modules/home/cli/multiplexer/zellij.nix b/homes/x86_64-linux/rafiq/cli/multiplexer.nix similarity index 93% rename from modules/home/cli/multiplexer/zellij.nix rename to homes/x86_64-linux/rafiq/cli/multiplexer.nix index 61ade89..6eb8971 100644 --- a/modules/home/cli/multiplexer/zellij.nix +++ b/homes/x86_64-linux/rafiq/cli/multiplexer.nix @@ -1,11 +1,7 @@ -{ - config, - pkgs, - osConfig, -}: +{ pkgs, osConfig, ... }: { home.sessionVariables.MULTIPLEXER = "zellij"; - home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ "/.cache/zellij" ]; + persistDirs = [ "/.cache/zellij" ]; programs.zellij = { enable = true; enableZshIntegration = true; diff --git a/homes/x86_64-linux/rafiq/cli/shell.nix b/homes/x86_64-linux/rafiq/cli/shell.nix new file mode 100644 index 0000000..186a91b --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/shell.nix @@ -0,0 +1,42 @@ +{ lib, pkgs, ... }: +let + inherit (builtins) toString; + inherit (lib) mkOrder; + screensaverTimeout = toString 100; + screensaverCommand = "${pkgs.cbonsai}/bin/cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; +in +{ + home.shell.enableShellIntegration = true; + home.sessionVariables.SHELL = "zsh"; + programs.zsh = { + enable = true; + enableVteIntegration = true; + syntaxHighlighting.enable = true; + historySubstringSearch.enable = true; + history = { + append = true; + extended = true; + ignoreDups = true; + ignoreSpace = true; + save = 10000; + share = true; + size = 10000; + }; + }; + programs.zsh.initContent = + mkOrder 1200 + # zsh + '' + precmd() { + TMOUT=${screensaverTimeout} + } + + TRAPALRM() { + TMOUT=1 + ${screensaverCommand} + # If we exit, assume the previous command was exited out of + TMOUT=${screensaverTimeout} + zle reset-prompt + } + ''; +} diff --git a/homes/x86_64-linux/rafiq/cli/utilities/git.nix b/homes/x86_64-linux/rafiq/cli/utilities/git.nix new file mode 100644 index 0000000..c1730bb --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/utilities/git.nix @@ -0,0 +1,24 @@ +{ + home.sessionVariables.GIT_CONFIG_GLOBAL = "$HOME/.config/git/config"; + home.shellAliases = { + gs = "git status"; + gc = "git commit"; + gcam = "git commit -am"; + gu = "git push"; + gy = "git pull"; + }; + programs.git = { + enable = true; + userName = "Mohammad Rafiq"; + userEmail = "rafiq@rrv.sh"; + signing.key = "~/.ssh/id_ed25519.pub"; + signing.signByDefault = true; + extraConfig = { + init.defaultBranch = "prime"; + push.autoSetupRemote = true; + pull.rebase = false; + core.editor = "$EDITOR"; + gpg.format = "ssh"; + }; + }; +} diff --git a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix new file mode 100644 index 0000000..7bb3251 --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix @@ -0,0 +1,53 @@ +{ inputs, pkgs, ... }: +{ + programs = { + nh.enable = true; + tealdeer.enable = true; + tealdeer.settings.updates.auto_update = true; + pay-respects.enable = true; + direnv = { + enable = true; + nix-direnv.enable = true; + }; + starship = { + enable = true; + settings = { + add_newline = false; + format = '' + $directory$character + ''; + right_format = '' + $all + ''; + git_branch.format = "[$symbol$branch(:$remote_branch)]($style) "; + shlvl.disabled = false; + hostname.disabled = true; + username.disabled = true; + }; + }; + }; + home = { + shellAliases = { + v = "nvim"; + e = "edit"; + cd = "z"; + ai = "aichat -r %shell% -e"; + }; + packages = with pkgs; [ + aichat + devenv + pantheon.rebuild + pantheon.deploy + pantheon.edit + pantheon.commit + pantheon.check + inputs.nixspect.packages."x86_64-linux".nixspect + ]; + }; + + xdg.configFile."aichat/config.yaml".text = '' + model: gemini:gemini-2.0-flash + clients: + - type: gemini + ''; +} diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 7975baf..6d25b6f 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -1,5 +1,4 @@ { - pkgs, inputs, osConfig, lib, @@ -26,7 +25,9 @@ let }; in { - imports = (optional osConfig.desktop.enable (import-tree ./desktop)) ++ singleton (import-tree ./cli); + imports = + (optional osConfig.desktop.enable (import-tree ./desktop)) + ++ singleton (import-tree ./cli); config = { accounts = { @@ -40,46 +41,5 @@ in }; }; }; - cli = { - shell = "zsh"; - finder = "fzf"; - screensaver.enable = true; - screensaver.timeout = "100"; - screensaver.command = "cbonsai -S -w 0.1 -L 40 -M 2 -b 2"; - file-browser = "yazi"; - multiplexer = "zellij"; - fetch = "hyfetch"; - git.name = "Mohammad Rafiq"; - git.email = "rafiq@rrv.sh"; - git.defaultBranch = "prime"; - }; - home = { - shellAliases = { - v = "nvim"; - e = "edit"; - }; - - packages = with pkgs; [ - cbonsai - ripgrep - devenv - pantheon.rebuild - pantheon.deploy - pantheon.edit - pantheon.commit - pantheon.check - inputs.nixspect.packages."x86_64-linux".nixspect - ]; - }; - programs = { - nh.enable = true; - tealdeer.enable = true; - tealdeer.settings.updates.auto_update = true; - pay-respects.enable = true; - direnv = { - enable = true; - nix-direnv.enable = true; - }; - }; }; } diff --git a/modules/home/cli/default.nix b/modules/home/cli/default.nix deleted file mode 100644 index 5d663c2..0000000 --- a/modules/home/cli/default.nix +++ /dev/null @@ -1,74 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -{ - options.cli = { - shell = lib.pantheon.mkStrOption; - finder = lib.pantheon.mkStrOption; - screensaver.enable = lib.mkEnableOption ""; - screensaver.timeout = lib.pantheon.mkStrOption; - screensaver.command = lib.pantheon.mkStrOption; - file-browser = lib.pantheon.mkStrOption; - multiplexer = lib.pantheon.mkStrOption; - fetch = lib.pantheon.mkStrOption; - git = { - name = lib.pantheon.mkStrOption; - email = lib.pantheon.mkStrOption; - defaultBranch = lib.pantheon.mkStrOption; - }; - }; - - config = lib.mkMerge [ - { - home.shell.enableShellIntegration = true; - programs.ssh = { - enable = true; - extraConfig = '' - Host * - SetEnv TERM=xterm-256color - ''; - }; - programs.zoxide.enable = true; - home.shellAliases.cd = "z"; - home.persistence."/persist/home/${config.snowfallorg.user.name}".directories = [ - ".local/share/zoxide" - ]; - } - { - programs.nix-index.enable = true; - programs.nix-index-database.comma.enable = true; - } - { - home.shellAliases.ai = "aichat -r %shell% -e"; - - home.packages = with pkgs; [ aichat ]; - - xdg.configFile."aichat/config.yaml".text = '' - model: gemini:gemini-2.0-flash - clients: - - type: gemini - ''; - } - { - programs.starship = { - enable = true; - settings = { - add_newline = false; - format = '' - $directory$character - ''; - right_format = '' - $all - ''; - git_branch.format = "[$symbol$branch(:$remote_branch)]($style) "; - shlvl.disabled = false; - hostname.disabled = true; - username.disabled = true; - }; - }; - } - ]; -} diff --git a/modules/home/cli/fetch/default.nix b/modules/home/cli/fetch/default.nix deleted file mode 100644 index 1aa53ef..0000000 --- a/modules/home/cli/fetch/default.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (config.cli.fetch == "hyfetch") { - home.packages = [ pkgs.fastfetch ]; - home.sessionVariables.FETCH = "hyfetch"; - home.shellAliases.fetch = "hyfetch"; - programs.hyfetch = { - enable = true; - settings = { - preset = "bisexual"; - mode = "rgb"; - light_dark = "dark"; - lightness = 0.5; - color_align = { - mode = "horizontal"; - custom_colors = [ ]; - fore_back = null; - }; - backend = "fastfetch"; - }; - }; - - }) - ]; -} diff --git a/modules/home/cli/file-browser/default.nix b/modules/home/cli/file-browser/default.nix deleted file mode 100644 index 1385e21..0000000 --- a/modules/home/cli/file-browser/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ config, lib, ... }: -{ - config = lib.mkIf (config.cli.file-browser == "yazi") { - home.sessionVariables.FILE_BROWSER = "yazi"; - programs.yazi = { - enable = true; - shellWrapperName = "t"; - settings = { - mgr = { - sort_by = "natural"; - }; - opener = { - play = [ - { - run = "vlc \"$@\""; - desc = "Open"; - } - ]; - }; - }; - }; - }; -} diff --git a/modules/home/cli/finder/default.nix b/modules/home/cli/finder/default.nix deleted file mode 100644 index 894cbc1..0000000 --- a/modules/home/cli/finder/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ config, lib, ... }: -{ - config = lib.mkMerge [ - (lib.mkIf (config.cli.finder == "fzf") { - programs.fzf = { - enable = true; - enableZshIntegration = lib.mkIf (config.cli.shell == "zsh") true; - }; - }) - ]; -} diff --git a/modules/home/cli/multiplexer/default.nix b/modules/home/cli/multiplexer/default.nix deleted file mode 100644 index bf420eb..0000000 --- a/modules/home/cli/multiplexer/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ - osConfig, - config, - lib, - pkgs, - ... -}: -{ - config = lib.mkMerge [ - (lib.mkIf (config.cli.multiplexer == "zellij") ( - import ./zellij.nix { inherit config pkgs osConfig; } - )) - ]; -} diff --git a/modules/home/cli/shell/default.nix b/modules/home/cli/shell/default.nix deleted file mode 100644 index 966a01d..0000000 --- a/modules/home/cli/shell/default.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ config, lib, ... }: -{ - config = lib.mkIf (config.cli.shell == "zsh") { - home.sessionVariables.SHELL = "zsh"; - programs.zsh = { - enable = true; - enableVteIntegration = true; - syntaxHighlighting.enable = true; - historySubstringSearch.enable = true; - history = { - append = true; - extended = true; - ignoreDups = true; - ignoreSpace = true; - save = 10000; - share = true; - size = 10000; - }; - }; - programs.zsh.initContent = lib.mkIf config.cli.screensaver.enable ( - lib.mkOrder 1200 - # zsh - '' - precmd() { - TMOUT=${config.cli.screensaver.timeout} - } - - TRAPALRM() { - TMOUT=1 - ${config.cli.screensaver.command} - # If we exit, assume the previous command was exited out of - TMOUT=${config.cli.screensaver.timeout} - zle reset-prompt - } - '' - ); - }; -} diff --git a/modules/home/cli/utilities/default.nix b/modules/home/cli/utilities/default.nix deleted file mode 100644 index 3199378..0000000 --- a/modules/home/cli/utilities/default.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - imports = [ ./git.nix ]; -} diff --git a/modules/home/cli/utilities/git.nix b/modules/home/cli/utilities/git.nix deleted file mode 100644 index 9de797a..0000000 --- a/modules/home/cli/utilities/git.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ config, ... }: -{ - config = { - home.sessionVariables.GIT_CONFIG_GLOBAL = "$HOME/.config/git/config"; - home.shellAliases = { - gs = "git status"; - gc = "git commit"; - gcam = "git commit -am"; - gu = "git push"; - gy = "git pull"; - }; - programs.git = { - enable = true; - userName = config.cli.git.name; - userEmail = config.cli.git.email; - signing.key = "~/.ssh/id_ed25519.pub"; - signing.signByDefault = true; - extraConfig = { - init.defaultBranch = config.cli.git.defaultBranch; - push.autoSetupRemote = true; - pull.rebase = false; - core.editor = "$EDITOR"; - gpg.format = "ssh"; - }; - }; - }; -} diff --git a/modules/home/default.nix b/modules/home/default.nix index d061d19..07c8cfb 100644 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -1,4 +1,9 @@ -{ config, lib, ... }: +{ + config, + lib, + pkgs, + ... +}: let inherit (lib) mkOption; inherit (lib.types) listOf str; @@ -12,15 +17,31 @@ in }; config = { + # Helper options home.persistence."/persist/home/${config.snowfallorg.user.name}" = { directories = config.persistDirs; allowOther = true; }; + # Global options persistDirs = [ ".ssh" ".config/sops/age" + ".local/share/zoxide" ]; + home.packages = with pkgs; [ ripgrep ]; + programs = { + zoxide.enable = true; + nix-index.enable = true; + nix-index-database.comma.enable = true; + ssh = { + enable = true; + extraConfig = '' + Host * + SetEnv TERM=xterm-256color + ''; + }; + }; home.stateVersion = "24.11"; }; From e4437b8822e23e72e30b507ec008121473f22751 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 19:17:32 +0800 Subject: [PATCH 091/373] feat(server): remove prometheus and grafana modules --- .../server/monitoring/grafana/default.nix | 40 ------------------- .../server/monitoring/prometheus/default.nix | 36 ----------------- systems/x86_64-linux/apollo/default.nix | 9 ----- 3 files changed, 85 deletions(-) delete mode 100644 modules/nixos/server/monitoring/grafana/default.nix delete mode 100644 modules/nixos/server/monitoring/prometheus/default.nix diff --git a/modules/nixos/server/monitoring/grafana/default.nix b/modules/nixos/server/monitoring/grafana/default.nix deleted file mode 100644 index e975592..0000000 --- a/modules/nixos/server/monitoring/grafana/default.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ config, lib, ... }: -let - inherit (lib) singleton mkEnableOption mkIf; - inherit (lib.pantheon) mkRootDomain mkPortOption mkStrOption; - cfg = config.server.monitoring.grafana; -in -{ - options.server.monitoring.grafana = { - enable = mkEnableOption ""; - url = mkStrOption; - port = mkPortOption 3000; - }; - - config = mkIf cfg.enable { - server.networking.ddns.domains = singleton (mkRootDomain cfg.url); - server.web-servers.nginx.proxies = mkIf config.server.web-servers.nginx.enable (singleton { - source = cfg.url; - target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; - extraConfig.proxyWebsockets = true; - locations."/api/live/" = { - proxyPass = "http://${config.system.hostname}:${builtins.toString cfg.port}"; - }; - }); - services.grafana = { - enable = true; - settings.server = { - domain = cfg.url; - http_port = cfg.port; - http_addr = "0.0.0.0"; - }; - provision.datasources.settings.datasources = [ - { - name = "prometheus"; - type = "Prometheus"; - url = "http://${config.system.hostname}:${builtins.toString config.server.monitoring.prometheus.port}"; - } - ]; - }; - }; -} diff --git a/modules/nixos/server/monitoring/prometheus/default.nix b/modules/nixos/server/monitoring/prometheus/default.nix deleted file mode 100644 index 9b4294e..0000000 --- a/modules/nixos/server/monitoring/prometheus/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ config, lib, ... }: -let - inherit (lib) mkEnableOption mkIf; - inherit (lib.pantheon) mkPortOption; - cfg = config.server.monitoring.prometheus; - upstreamCfg = config.services.prometheus; -in -{ - options.server.monitoring.prometheus = { - enable = mkEnableOption ""; - port = mkPortOption 9090; - }; - - config = mkIf cfg.enable { - services.prometheus = { - enable = true; - inherit (cfg) port; - scrapeConfigs = [ - { - job_name = "chrysalis"; - static_configs = [ - { - targets = [ "127.0.0.1:${toString upstreamCfg.exporters.node.port}" ]; - } - ]; - } - ]; - - exporters.node = { - enable = true; - enabledCollectors = [ "systemd" ]; - port = 9091; - }; - }; - }; -} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 13280bd..7ed2fab 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -20,15 +20,6 @@ }; server = { - monitoring = { - prometheus = { - enable = true; - }; - grafana = { - enable = true; - url = "grafana.bwfiq.com"; - }; - }; networking.ddns = { enable = true; domains = [ From 16b7f375bd993c68f8bcaf7830d691f7b2581f62 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 19:21:10 +0800 Subject: [PATCH 092/373] fix(hyprland): fix playerctl play-pause command to work with all players --- .../rafiq/desktop/window-manager/_hyprland/keybinds.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix index 223d79c..2efbca3 100644 --- a/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix +++ b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix @@ -30,7 +30,7 @@ bindle = [ "SUPER, 6, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-" "SUPER, 7, exec, ${pkgs.playerctl}/bin/playerctl previous" - "SUPER, 8, exec, ${pkgs.playerctl}/bin/playerctl play-pause" + "SUPER, 8, exec, ${pkgs.playerctl}/bin/playerctl -a play-pause" "SUPER, 9, exec, ${pkgs.playerctl}/bin/playerctl next" "SUPER, 0, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+" "$meh, mouse_up, resizeactive, 10% 10%" From 77d8ed7a139eb91ee26dc8464456439b02033d03 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 19:59:42 +0800 Subject: [PATCH 093/373] refactor(nixos): use new persistDirs option and remove environment.persistence where possible --- modules/nixos/default.nix | 46 +++++++++++++++++++ modules/nixos/hardware/btrfs.nix | 5 +- modules/nixos/hardware/default.nix | 2 +- modules/nixos/hardware/networking.nix | 5 +- modules/nixos/server/databases/default.nix | 37 +++++++-------- .../server/web-apps/librechat/default.nix | 2 +- .../server/web-apps/mattermost/default.nix | 2 +- .../web-apps/sd-webui-forge/default.nix | 27 +++++++++++ systems/x86_64-linux/nemesis/default.nix | 8 +--- 9 files changed, 98 insertions(+), 36 deletions(-) create mode 100644 modules/nixos/default.nix create mode 100644 modules/nixos/server/web-apps/sd-webui-forge/default.nix diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix new file mode 100644 index 0000000..1b5b271 --- /dev/null +++ b/modules/nixos/default.nix @@ -0,0 +1,46 @@ +{ lib, config, ... }: +let + inherit (lib) mkOption; + inherit (lib.types) + listOf + str + coercedTo + submodule + ; + rootDir = submodule { + options = { + directory = mkOption { type = str; }; + user = mkOption { + type = str; + default = "root"; + }; + group = mkOption { + type = str; + default = "root"; + }; + mode = mkOption { + type = str; + default = "0755"; + }; + }; + }; +in +{ + options = { + persistDirs = mkOption { + type = listOf (coercedTo str (d: { directory = d; }) rootDir); + default = [ ]; + }; + }; + + config = { + # Helper options + environment.persistence."/persist".directories = config.persistDirs; + + # Global options + persistDirs = [ + "/var/lib/systemd" + "/var/lib/nixos" + ]; + }; +} diff --git a/modules/nixos/hardware/btrfs.nix b/modules/nixos/hardware/btrfs.nix index 5b43f07..f848eb1 100644 --- a/modules/nixos/hardware/btrfs.nix +++ b/modules/nixos/hardware/btrfs.nix @@ -84,12 +84,9 @@ in ''; programs.fuse.userAllowOther = true; fileSystems."/persist".neededForBoot = true; + #FIXME: below should be in module or something environment.persistence."/persist" = { hideMounts = true; - directories = [ - "/var/lib/systemd" - "/var/lib/nixos" - ]; files = [ "/etc/ssh/ssh_host_ed25519_key" "/etc/ssh/ssh_host_ed25519_key.pub" diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 3bb2ccc..46739eb 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -52,7 +52,7 @@ in ]; }; services.fwupd.enable = true; - environment.persistence."/persist".directories = lib.singleton "/var/lib/bluetooth"; + persistDirs = singleton "/var/lib/bluetooth"; hardware.bluetooth = { enable = true; settings.General.Experimental = true; diff --git a/modules/nixos/hardware/networking.nix b/modules/nixos/hardware/networking.nix index 372bebe..5be5803 100644 --- a/modules/nixos/hardware/networking.nix +++ b/modules/nixos/hardware/networking.nix @@ -1,4 +1,7 @@ { config, lib, ... }: +let + inherit (lib) singleton; +in { config = { networking = { @@ -19,6 +22,6 @@ enable = true; authKeyFile = config.sops.secrets."keys/tailscale".path; }; - environment.persistence."/persist".directories = [ "/var/lib/tailscale" ]; + persistDirs = singleton "/var/lib/tailscale"; }; } diff --git a/modules/nixos/server/databases/default.nix b/modules/nixos/server/databases/default.nix index 7008374..b75fb66 100644 --- a/modules/nixos/server/databases/default.nix +++ b/modules/nixos/server/databases/default.nix @@ -5,6 +5,7 @@ ... }: let + inherit (lib) singleton; cfg = config.server.databases; in { @@ -26,13 +27,11 @@ in config = lib.mkMerge [ (lib.mkIf cfg.postgresql.enable { networking.firewall.allowedTCPPorts = lib.singleton cfg.postgresql.port; - environment.persistence."/persist".directories = [ - { - directory = builtins.toString config.services.postgresql.dataDir; - user = "postgres"; - group = "postgres"; - } - ]; + persistDirs = singleton { + directory = builtins.toString config.services.postgresql.dataDir; + user = "postgres"; + group = "postgres"; + }; services.postgresql = { enable = true; enableTCPIP = true; @@ -48,13 +47,11 @@ in }) (lib.mkIf cfg.mongodb.enable { networking.firewall.allowedTCPPorts = [ cfg.mongodb.port ]; - environment.persistence."/persist".directories = [ - { - directory = builtins.toString config.services.mongodb.dbpath; - user = "mongodb"; - group = "mongodb"; - } - ]; + persistDirs = singleton { + directory = builtins.toString config.services.mongodb.dbpath; + user = "mongodb"; + group = "mongodb"; + }; services.mongodb = { enable = true; bind_ip = "0.0.0.0"; @@ -65,13 +62,11 @@ in }) (lib.mkIf cfg.mysql.enable { networking.firewall.allowedTCPPorts = [ cfg.mysql.port ]; - environment.persistence."/persist".directories = [ - { - directory = builtins.toString config.services.mysql.dataDir; - user = "mysql"; - group = "mysql"; - } - ]; + persistDirs = singleton { + directory = builtins.toString config.services.mysql.dataDir; + user = "mysql"; + group = "mysql"; + }; services.mysql = { enable = true; package = pkgs.mariadb; diff --git a/modules/nixos/server/web-apps/librechat/default.nix b/modules/nixos/server/web-apps/librechat/default.nix index c0e30b4..c3bab9d 100644 --- a/modules/nixos/server/web-apps/librechat/default.nix +++ b/modules/nixos/server/web-apps/librechat/default.nix @@ -23,7 +23,7 @@ in }; config = mkIf cfg.enable { - environment.persistence."/persist".directories = singleton { + persistDirs = singleton { directory = upstreamCfg.logDir; inherit (upstreamCfg) user group; }; diff --git a/modules/nixos/server/web-apps/mattermost/default.nix b/modules/nixos/server/web-apps/mattermost/default.nix index 474a45a..51ca56b 100644 --- a/modules/nixos/server/web-apps/mattermost/default.nix +++ b/modules/nixos/server/web-apps/mattermost/default.nix @@ -33,7 +33,7 @@ in message = "You must enable a local instance of postgresql."; } ]; - environment.persistence."/persist".directories = [ + persistDirs = [ (mkDir cfg.configDir) (mkDir cfg.logDir) (mkDir cfg.dataDir) diff --git a/modules/nixos/server/web-apps/sd-webui-forge/default.nix b/modules/nixos/server/web-apps/sd-webui-forge/default.nix new file mode 100644 index 0000000..bd71e1c --- /dev/null +++ b/modules/nixos/server/web-apps/sd-webui-forge/default.nix @@ -0,0 +1,27 @@ +{ config, lib, ... }: +let + inherit (lib) singleton mkEnableOption mkIf; + cfg = config.server.sd-webui-forge; + upstreamCfg = config.services.sd-webui-forge; +in +{ + options.server.sd-webui-forge = { + enable = mkEnableOption ""; + }; + + config = mkIf cfg.enable { + assertions = singleton { + assertion = config.hardware.gpu == "nvidia"; + message = "You must run the sd-webui-forge service only with an nvidia gpu."; + }; + persistDirs = singleton { + directory = upstreamCfg.dataDir; + inherit (upstreamCfg) user group; + }; + services.sd-webui-forge = { + enable = true; + listen = true; + extraArgs = "--cuda-malloc"; + }; + }; +} diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index c9dfaa6..d4dfd41 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -38,11 +38,5 @@ }; }; - services = { - sd-webui-forge = { - enable = true; - listen = true; - extraArgs = "--cuda-malloc"; - }; - }; + server.sd-webui-forge.enable = true; } From a7948ceda2a774798bb41924155ab741ded19edd Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 21:01:46 +0800 Subject: [PATCH 094/373] feat(home): add enableAutoUpdates option to tealdeer module --- homes/x86_64-linux/rafiq/cli/utilities/misc.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix index 7bb3251..57e073e 100644 --- a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix +++ b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix @@ -2,9 +2,12 @@ { programs = { nh.enable = true; - tealdeer.enable = true; - tealdeer.settings.updates.auto_update = true; pay-respects.enable = true; + tealdeer = { + enable = true; + enableAutoUpdates = true; + settings.updates.auto_update = true; + }; direnv = { enable = true; nix-direnv.enable = true; From e994df5675c76df9348f96df49708656ead7d516 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 22:34:35 +0800 Subject: [PATCH 095/373] feat(server): add forgejo module --- .../nixos/server/web-apps/forgejo/default.nix | 30 +++++++++++++++++++ systems/x86_64-linux/apollo/default.nix | 3 +- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 modules/nixos/server/web-apps/forgejo/default.nix diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix new file mode 100644 index 0000000..a91f4cb --- /dev/null +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -0,0 +1,30 @@ +{ config, lib, ... }: +let + inherit (lib) mkEnableOption mkIf singleton; + inherit (lib.pantheon) mkRootDomain mkStrOption mkPortOption; + cfg = config.server.web-apps.forgejo; + upstreamCfg = config.services.forgejo; +in +{ + options.server.web-apps.forgejo = { + enable = mkEnableOption ""; + url = mkStrOption; + port = mkPortOption 3000; + }; + + config = mkIf cfg.enable { + persistDirs = singleton { + directory = upstreamCfg.stateDir; + inherit (upstreamCfg) user group; + }; + server.networking.ddns.domains = singleton (mkRootDomain cfg.url); + server.web-servers.nginx.proxies = mkIf config.server.web-servers.nginx.enable (singleton { + source = cfg.url; + target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; + }); + services.forgejo = { + enable = true; + settings.server.HTTP_PORT = cfg.port; + }; + }; +} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 7ed2fab..03fedfe 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -23,7 +23,6 @@ networking.ddns = { enable = true; domains = [ - "rrv.sh" "aenyrathia.wiki" "slayment.com" ]; @@ -38,6 +37,8 @@ librechat.url = "chat.bwfiq.com"; mattermost.enable = true; mattermost.url = "mm.bwfiq.com"; + forgejo.enable = true; + forgejo.url = "git.rrv.sh"; }; web-servers = { enableSSL = true; From 3f4c051fe1a35cf648629ba79df59630c201d44d Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 22:42:00 +0800 Subject: [PATCH 096/373] fix(server): set correct domain and root_url for forgejo --- modules/nixos/server/web-apps/forgejo/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix index a91f4cb..ac7e5af 100644 --- a/modules/nixos/server/web-apps/forgejo/default.nix +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -24,7 +24,11 @@ in }); services.forgejo = { enable = true; - settings.server.HTTP_PORT = cfg.port; + settings.server = { + DOMAIN = cfg.url; + ROOT_URL = "https://${cfg.url}/"; + HTTP_PORT = cfg.port; + }; }; }; } From 7f06f204a85c1b6efa7114e9276618752446a63a Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 22:44:27 +0800 Subject: [PATCH 097/373] feat(home): disable stylix css for waybar --- homes/x86_64-linux/rafiq/desktop/status-bar.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/homes/x86_64-linux/rafiq/desktop/status-bar.nix b/homes/x86_64-linux/rafiq/desktop/status-bar.nix index e8426da..8f097f4 100644 --- a/homes/x86_64-linux/rafiq/desktop/status-bar.nix +++ b/homes/x86_64-linux/rafiq/desktop/status-bar.nix @@ -1,6 +1,7 @@ { pkgs, ... }: { home.sessionVariables.STATUS_BAR = "waybar"; + stylix.targets.waybar.addCss = false; programs.waybar = { settings = [ { From 29c652e6157de82672691dc13a1b0ec5ab934a42 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 14 Jun 2025 23:10:28 +0800 Subject: [PATCH 098/373] feat(server): enable ssh signature for forgejo repositories --- modules/nixos/server/web-apps/forgejo/default.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix index ac7e5af..d1780e9 100644 --- a/modules/nixos/server/web-apps/forgejo/default.nix +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -24,10 +24,13 @@ in }); services.forgejo = { enable = true; - settings.server = { - DOMAIN = cfg.url; - ROOT_URL = "https://${cfg.url}/"; - HTTP_PORT = cfg.port; + settings = { + server = { + DOMAIN = cfg.url; + ROOT_URL = "https://${cfg.url}/"; + HTTP_PORT = cfg.port; + }; + "repository.signing".FORMAT = "ssh"; }; }; }; From 2292baecf690bc1056935fb05847c5b95a021f76 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 14:22:19 +0800 Subject: [PATCH 099/373] feat(server): add mkWebApp module and glance web app --- lib/modules/default.nix | 59 +++++++++++++++++++ .../nixos/server/web-apps/glance/default.nix | 17 ++++++ systems/x86_64-linux/apollo/default.nix | 2 + 3 files changed, 78 insertions(+) create mode 100644 lib/modules/default.nix create mode 100644 modules/nixos/server/web-apps/glance/default.nix diff --git a/lib/modules/default.nix b/lib/modules/default.nix new file mode 100644 index 0000000..eed2ab3 --- /dev/null +++ b/lib/modules/default.nix @@ -0,0 +1,59 @@ +{ lib, ... }: +let + inherit (builtins) toString; + inherit (lib) + mkMerge + mkEnableOption + singleton + mkIf + ; + inherit (lib.pantheon) mkRootDomain mkPortOption mkStrOption; + networkingConfig = + { + config, + cfg, + name, + }: + mkIf (cfg.domain != "") { + assertions = singleton { + assertion = config.server.web-servers.nginx.enable; + message = "You must enable a web server if you want to set server.web-apps.${name}.domain."; + }; + server.networking.ddns.domains = singleton (mkRootDomain cfg.domain); + server.web-servers.nginx.proxies = singleton { + source = cfg.domain; + target = "http://${config.system.hostname}:${toString cfg.port}"; + }; + }; +in +{ + modules.mkWebApp = + { + config, + name, + defaultPort, + persistDirs ? [ ], + extraOptions ? { }, + extraConfig ? { }, + }: + let + cfg = config.server.web-apps.${name}; + in + { + options.server.web-apps.${name} = { + enable = mkEnableOption ""; + port = mkPortOption defaultPort; + domain = mkStrOption; + openFirewall = mkEnableOption ""; + } // extraOptions; + + config = mkIf cfg.enable (mkMerge [ + { + inherit persistDirs; + networking.firewall = mkIf cfg.openFirewall { allowedTCPPorts = singleton cfg.port; }; + } + (networkingConfig { inherit config cfg name; }) + extraConfig + ]); + }; +} diff --git a/modules/nixos/server/web-apps/glance/default.nix b/modules/nixos/server/web-apps/glance/default.nix new file mode 100644 index 0000000..6e054db --- /dev/null +++ b/modules/nixos/server/web-apps/glance/default.nix @@ -0,0 +1,17 @@ +{ lib, config, ... }: +let + inherit (lib.pantheon.modules) mkWebApp; + cfg = config.server.web-apps.glance; +in +mkWebApp { + inherit config; + name = "glance"; + defaultPort = 8080; + extraConfig = { + services.glance = { + enable = true; + settings.server.host = "0.0.0.0"; + settings.server.port = cfg.port; + }; + }; +} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 03fedfe..d4f3397 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -39,6 +39,8 @@ mattermost.url = "mm.bwfiq.com"; forgejo.enable = true; forgejo.url = "git.rrv.sh"; + glance.enable = true; + glance.domain = "glance.bwfiq.com"; }; web-servers = { enableSSL = true; From a5d8bfcdd5b4642f3d4c5b109dec8ba342201340 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 14:55:00 +0800 Subject: [PATCH 100/373] refactor(nixos): use mkWebApp module to simplify web app definitions --- lib/default.nix | 4 ++ lib/modules/default.nix | 8 +++- .../nixos/server/web-apps/forgejo/default.nix | 32 +++++-------- .../server/web-apps/librechat/default.nix | 44 ++++++++--------- .../server/web-apps/mattermost/default.nix | 47 ++++++++----------- .../web-apps/sd-webui-forge/default.nix | 24 +++++----- systems/x86_64-linux/apollo/default.nix | 11 +++-- systems/x86_64-linux/nemesis/default.nix | 2 +- 8 files changed, 81 insertions(+), 91 deletions(-) diff --git a/lib/default.nix b/lib/default.nix index 781b0f6..760f52c 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -15,6 +15,10 @@ rec { if len <= count then list else (shortenList count (tail list)); # Modules + mkAttrOption = lib.mkOption { + type = lib.types.attrs; + default = { }; + }; mkStrOption = lib.mkOption { type = lib.types.str; default = ""; diff --git a/lib/modules/default.nix b/lib/modules/default.nix index eed2ab3..8b19dca 100644 --- a/lib/modules/default.nix +++ b/lib/modules/default.nix @@ -7,7 +7,12 @@ let singleton mkIf ; - inherit (lib.pantheon) mkRootDomain mkPortOption mkStrOption; + inherit (lib.pantheon) + mkAttrOption + mkRootDomain + mkPortOption + mkStrOption + ; networkingConfig = { config, @@ -45,6 +50,7 @@ in port = mkPortOption defaultPort; domain = mkStrOption; openFirewall = mkEnableOption ""; + extraCfg = mkAttrOption; } // extraOptions; config = mkIf cfg.enable (mkMerge [ diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix index d1780e9..a59b121 100644 --- a/modules/nixos/server/web-apps/forgejo/default.nix +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -1,33 +1,25 @@ { config, lib, ... }: let - inherit (lib) mkEnableOption mkIf singleton; - inherit (lib.pantheon) mkRootDomain mkStrOption mkPortOption; + inherit (lib) singleton; + inherit (lib.pantheon.modules) mkWebApp; cfg = config.server.web-apps.forgejo; upstreamCfg = config.services.forgejo; in -{ - options.server.web-apps.forgejo = { - enable = mkEnableOption ""; - url = mkStrOption; - port = mkPortOption 3000; +mkWebApp { + inherit config; + name = "forgejo"; + defaultPort = 3000; + persistDirs = singleton { + directory = upstreamCfg.stateDir; + inherit (upstreamCfg) user group; }; - - config = mkIf cfg.enable { - persistDirs = singleton { - directory = upstreamCfg.stateDir; - inherit (upstreamCfg) user group; - }; - server.networking.ddns.domains = singleton (mkRootDomain cfg.url); - server.web-servers.nginx.proxies = mkIf config.server.web-servers.nginx.enable (singleton { - source = cfg.url; - target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; - }); + extraConfig = { services.forgejo = { enable = true; settings = { server = { - DOMAIN = cfg.url; - ROOT_URL = "https://${cfg.url}/"; + DOMAIN = cfg.domain; + ROOT_URL = "https://${cfg.domain}/"; HTTP_PORT = cfg.port; }; "repository.signing".FORMAT = "ssh"; diff --git a/modules/nixos/server/web-apps/librechat/default.nix b/modules/nixos/server/web-apps/librechat/default.nix index c3bab9d..7562027 100644 --- a/modules/nixos/server/web-apps/librechat/default.nix +++ b/modules/nixos/server/web-apps/librechat/default.nix @@ -5,33 +5,24 @@ ... }: let - inherit (lib) singleton mkEnableOption mkIf; - inherit (lib.pantheon) mkRootDomain mkPortOption mkStrOption; + inherit (lib) singleton; + inherit (lib.pantheon) mkStrOption; + inherit (lib.pantheon.modules) mkWebApp; cfg = config.server.web-apps.librechat; upstreamCfg = config.services.librechat; in -{ - imports = singleton "${inputs.rrvsh-nixpkgs}/nixos/modules/services/web-apps/librechat.nix"; - - options.server.web-apps.librechat = { - enable = mkEnableOption ""; - port = mkPortOption 3080; - url = mkStrOption; - mongodbURI = mkStrOption // { - default = "mongodb://${config.system.hostname}:27017/LibreChat"; - }; +mkWebApp { + inherit config; + name = "librechat"; + defaultPort = 3080; + persistDirs = singleton { + directory = upstreamCfg.logDir; + inherit (upstreamCfg) user group; }; - - config = mkIf cfg.enable { - persistDirs = singleton { - directory = upstreamCfg.logDir; - inherit (upstreamCfg) user group; - }; - server.networking.ddns.domains = singleton (mkRootDomain cfg.url); - server.web-servers.nginx.proxies = lib.mkIf config.server.web-servers.nginx.enable (singleton { - source = cfg.url; - target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; - }); + extraOptions.mongodbURI = mkStrOption // { + default = "mongodb://${config.system.hostname}:27017/LibreChat"; + }; + extraConfig = { services.librechat = { enable = true; openFirewall = true; @@ -41,8 +32,8 @@ in ALLOW_REGISTRATION = "true"; NO_INDEX = "true"; MONGO_URI = cfg.mongodbURI; - DOMAIN_CLIENT = cfg.url; - DOMAIN_SERVER = cfg.url; + DOMAIN_CLIENT = cfg.domain; + DOMAIN_SERVER = cfg.domain; ENDPOINTS = "anthropic,agents,google"; }; credentials = { @@ -78,3 +69,6 @@ in }; }; } +// { + imports = singleton "${inputs.rrvsh-nixpkgs}/nixos/modules/services/web-apps/librechat.nix"; +} diff --git a/modules/nixos/server/web-apps/mattermost/default.nix b/modules/nixos/server/web-apps/mattermost/default.nix index 51ca56b..e695440 100644 --- a/modules/nixos/server/web-apps/mattermost/default.nix +++ b/modules/nixos/server/web-apps/mattermost/default.nix @@ -1,7 +1,8 @@ { config, lib, ... }: let inherit (lib) singleton; - inherit (lib.pantheon) mkRootDomain; + inherit (lib.pantheon) mkStrOption; + inherit (lib.pantheon.modules) mkWebApp; cfg = config.server.web-apps.mattermost; upstreamCfg = config.services.mattermost; mkDir = directory: { @@ -10,36 +11,33 @@ let mode = "0750"; }; in -{ - options.server.web-apps.mattermost = { - enable = lib.mkEnableOption "the Mattermost service"; - port = lib.pantheon.mkPortOption 8065; - url = lib.pantheon.mkStrOption; - configDir = lib.pantheon.mkStrOption // { +mkWebApp { + inherit config; + name = "mattermost"; + defaultPort = 8065; + persistDirs = [ + (mkDir cfg.configDir) + (mkDir cfg.logDir) + (mkDir cfg.dataDir) + ]; + extraOptions = { + configDir = mkStrOption // { default = "/etc/mattermost"; }; - dataDir = lib.pantheon.mkStrOption // { + dataDir = mkStrOption // { default = "/var/lib/mattermost"; }; - logDir = lib.pantheon.mkStrOption // { + logDir = mkStrOption // { default = "/var/log/mattermost"; }; }; - - config = lib.mkIf cfg.enable { + extraConfig = { assertions = [ { assertion = config.services.postgresql.enable; message = "You must enable a local instance of postgresql."; } ]; - persistDirs = [ - (mkDir cfg.configDir) - (mkDir cfg.logDir) - (mkDir cfg.dataDir) - ]; - networking.firewall.allowedTCPPorts = lib.singleton cfg.port; - server.networking.ddns.domains = singleton (mkRootDomain cfg.url); services.mattermost = { enable = true; inherit (cfg) @@ -49,21 +47,14 @@ in port ; host = "0.0.0.0"; - siteName = "pantheon"; - siteUrl = "https://${cfg.url}"; + siteUrl = "https://${cfg.domain}"; }; services.postgresql = { - ensureDatabases = lib.singleton upstreamCfg.database.name; - ensureUsers = lib.singleton { + ensureDatabases = singleton upstreamCfg.database.name; + ensureUsers = singleton { name = upstreamCfg.database.user; ensureDBOwnership = true; }; }; - server.web-servers.nginx.proxies = lib.mkIf config.server.web-servers.nginx.enable ( - lib.singleton { - source = cfg.url; - target = "http://${config.system.hostname}:${builtins.toString cfg.port}"; - } - ); }; } diff --git a/modules/nixos/server/web-apps/sd-webui-forge/default.nix b/modules/nixos/server/web-apps/sd-webui-forge/default.nix index bd71e1c..c039bc0 100644 --- a/modules/nixos/server/web-apps/sd-webui-forge/default.nix +++ b/modules/nixos/server/web-apps/sd-webui-forge/default.nix @@ -1,26 +1,26 @@ { config, lib, ... }: let - inherit (lib) singleton mkEnableOption mkIf; - cfg = config.server.sd-webui-forge; + inherit (lib) singleton; + inherit (lib.pantheon.modules) mkWebApp; + cfg = config.server.web-apps.sd-webui-forge; upstreamCfg = config.services.sd-webui-forge; in -{ - options.server.sd-webui-forge = { - enable = mkEnableOption ""; +mkWebApp { + inherit config; + name = "sd-webui-forge"; + defaultPort = 7860; + persistDirs = singleton { + directory = upstreamCfg.dataDir; + inherit (upstreamCfg) user group; }; - - config = mkIf cfg.enable { + extraConfig = { assertions = singleton { assertion = config.hardware.gpu == "nvidia"; message = "You must run the sd-webui-forge service only with an nvidia gpu."; }; - persistDirs = singleton { - directory = upstreamCfg.dataDir; - inherit (upstreamCfg) user group; - }; services.sd-webui-forge = { enable = true; - listen = true; + listen = cfg.openFirewall; extraArgs = "--cuda-malloc"; }; }; diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index d4f3397..bc6cb05 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -34,13 +34,16 @@ }; web-apps = { librechat.enable = true; - librechat.url = "chat.bwfiq.com"; - mattermost.enable = true; - mattermost.url = "mm.bwfiq.com"; + librechat.domain = "chat.bwfiq.com"; forgejo.enable = true; - forgejo.url = "git.rrv.sh"; + forgejo.domain = "git.rrv.sh"; glance.enable = true; glance.domain = "glance.bwfiq.com"; + mattermost = { + enable = true; + domain = "mm.bwfiq.com"; + extraCfg.siteName = "pantheon"; + }; }; web-servers = { enableSSL = true; diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index d4dfd41..f819cd0 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -38,5 +38,5 @@ }; }; - server.sd-webui-forge.enable = true; + server.web-apps.sd-webui-forge.enable = true; } From 59031cd01b5e70c989b5ac72e675bbb04de405f1 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 17:37:06 +0800 Subject: [PATCH 101/373] refactor(nixos): move usb config to its own module --- modules/nixos/hardware/default.nix | 23 ------------ modules/nixos/hardware/usb/default.nix | 46 ++++++++++++++++++++++++ systems/x86_64-linux/desktop.nix | 5 +++ systems/x86_64-linux/nemesis/default.nix | 1 - 4 files changed, 51 insertions(+), 24 deletions(-) create mode 100644 modules/nixos/hardware/usb/default.nix diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 46739eb..2b828b8 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -24,33 +24,10 @@ in }; gpu = lib.pantheon.mkStrOption; platform = lib.pantheon.mkStrOption; - usb = { - automount = mkEnableOption ""; - }; }; config = lib.mkMerge [ - (mkIf cfg.usb.automount { - services.udisks2.enable = true; - home-manager.sharedModules = singleton { - services.udiskie = { - enable = true; - automount = true; - notify = true; - }; - }; - }) { - hardware.keyboard.qmk.enable = true; - services.udev = { - packages = with pkgs; [ - vial - via - qmk - qmk-udev-rules - qmk_hid - ]; - }; services.fwupd.enable = true; persistDirs = singleton "/var/lib/bluetooth"; hardware.bluetooth = { diff --git a/modules/nixos/hardware/usb/default.nix b/modules/nixos/hardware/usb/default.nix new file mode 100644 index 0000000..e64cf1a --- /dev/null +++ b/modules/nixos/hardware/usb/default.nix @@ -0,0 +1,46 @@ +{ + config, + pkgs, + lib, + ... +}: +let + inherit (lib) + mkEnableOption + mkIf + mkMerge + singleton + ; + cfg = config.hardware.usb; +in +{ + options.hardware.usb = { + automount = mkEnableOption ""; + enableQmk = mkEnableOption ""; + }; + + config = mkMerge [ + (mkIf cfg.automount { + services.udisks2.enable = true; + home-manager.sharedModules = singleton { + services.udiskie = { + enable = true; + automount = true; + notify = true; + }; + }; + }) + (mkIf cfg.enableQmk { + hardware.keyboard.qmk.enable = true; + services.udev = { + packages = with pkgs; [ + vial + via + qmk + qmk-udev-rules + qmk_hid + ]; + }; + }) + ]; +} diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index 4c9b096..dcd767c 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -10,4 +10,9 @@ terminal.ghostty.enable = true; window-manager.hyprland.enable = true; }; + + hardware.usb = { + automount = true; + enableQmk = true; + }; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index f819cd0..46ac398 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -17,7 +17,6 @@ }; platform = "amd"; gpu = "nvidia"; - usb.automount = true; }; desktop = { From 9f6b094daa0ae260bd75b962db6118ef6053a53f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 17:46:02 +0800 Subject: [PATCH 102/373] refactor(packages/snippets): reduce scope of empty module --- packages/snippets/snippets/nix.json | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/packages/snippets/snippets/nix.json b/packages/snippets/snippets/nix.json index 2a69c0e..7d0a808 100644 --- a/packages/snippets/snippets/nix.json +++ b/packages/snippets/snippets/nix.json @@ -4,17 +4,15 @@ "body": [ "{ config, lib, ... }:", "let", - " inherit (lib) mkEnableOption mkIf;", + " inherit (lib) mkIf mkEnableOption;", " cfg = config.$1;", "in", "{", - " options.$2 = {", - " enable = mkEnableOption \"$3\";", - " };", - "", - " config = mkIf cfg.enable {", - " $4", + " options.$1 = {", + " enable = mkEnableOption \"$2\";", + " $3", " };", + " config = mkIf cfg.enable {$4};", "}" ], "description": "empty module" From b7e9cdf51d0ee169a4861f8add751acdbee07894 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 18:31:56 +0800 Subject: [PATCH 103/373] refactor(nixos): move btrfs config to its own module --- modules/nixos/hardware/btrfs.nix | 101 ----------------- modules/nixos/hardware/default.nix | 10 +- .../nixos/hardware/drives/btrfs/default.nix | 107 ++++++++++++++++++ 3 files changed, 108 insertions(+), 110 deletions(-) delete mode 100644 modules/nixos/hardware/btrfs.nix create mode 100644 modules/nixos/hardware/drives/btrfs/default.nix diff --git a/modules/nixos/hardware/btrfs.nix b/modules/nixos/hardware/btrfs.nix deleted file mode 100644 index f848eb1..0000000 --- a/modules/nixos/hardware/btrfs.nix +++ /dev/null @@ -1,101 +0,0 @@ -{ lib, config, ... }: -let - cfg = config.hardware.drives.btrfs; -in -{ - config = lib.mkIf cfg.enable ( - lib.mkMerge [ - { - boot.initrd.kernelModules = [ "dm-snapshot" ]; - disko.devices.disk.main = { - device = cfg.drive; - type = "disk"; - content.type = "gpt"; - content.partitions = { - boot.name = "boot"; - boot.size = "1M"; - boot.type = "EF02"; - esp.name = "ESP"; - esp.size = "500M"; - esp.type = "EF00"; - esp.content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - }; - swap.size = "4G"; - swap.content = { - type = "swap"; - resumeDevice = true; - }; - root.name = "root"; - root.size = "100%"; - root.content = { - type = "lvm_pv"; - vg = "root_vg"; - }; - }; - }; - - disko.devices.lvm_vg.root_vg = { - type = "lvm_vg"; - lvs.root.size = "100%FREE"; - lvs.root.content.type = "btrfs"; - lvs.root.content.extraArgs = [ "-f" ]; - lvs.root.content.subvolumes = { - "/root".mountpoint = "/"; - "/persist".mountpoint = "/persist"; - "/persist".mountOptions = [ - "subvol=persist" - "noatime" - ]; - "/nix".mountpoint = "/nix"; - "/nix".mountOptions = [ - "subvol=nix" - "noatime" - ]; - }; - }; - } - (lib.mkIf cfg.ephemeralRoot { - boot.initrd.postDeviceCommands = lib.mkAfter '' - mkdir /btrfs_tmp - mount /dev/root_vg/root /btrfs_tmp - if [[ -e /btrfs_tmp/root ]]; then - mkdir -p /btrfs_tmp/old_roots - timestamp=$(date --date="@$(stat -c %Y /btrfs_tmp/root)" "+%Y-%m-%-d_%H:%M:%S") - mv /btrfs_tmp/root "/btrfs_tmp/old_roots/$timestamp" - fi - - delete_subvolume_recursively() { - IFS=$'\n' - for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do - delete_subvolume_recursively "/btrfs_tmp/$i" - done - btrfs subvolume delete "$1" - } - - for i in $(find /btrfs_tmp/old_roots/ -maxdepth 1 -mtime +30); do - delete_subvolume_recursively "$i" - done - - btrfs subvolume create /btrfs_tmp/root - umount /btrfs_tmp - ''; - programs.fuse.userAllowOther = true; - fileSystems."/persist".neededForBoot = true; - #FIXME: below should be in module or something - environment.persistence."/persist" = { - hideMounts = true; - files = [ - "/etc/ssh/ssh_host_ed25519_key" - "/etc/ssh/ssh_host_ed25519_key.pub" - "/etc/ssh/ssh_host_rsa_key" - "/etc/ssh/ssh_host_rsa_key.pub" - "/etc/machine-id" - ]; - }; - }) - ] - ); -} diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 2b828b8..782f186 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -1,27 +1,19 @@ { lib, config, - pkgs, ... }: let - inherit (lib) mkIf mkEnableOption singleton; - cfg = config.hardware; + inherit (lib) singleton; in { imports = [ - ./btrfs.nix ./nvidia.nix ./audio.nix ./networking.nix ]; options.hardware = { - drives.btrfs = { - enable = lib.mkEnableOption ""; - drive = lib.pantheon.mkStrOption; - ephemeralRoot = lib.mkEnableOption ""; - }; gpu = lib.pantheon.mkStrOption; platform = lib.pantheon.mkStrOption; }; diff --git a/modules/nixos/hardware/drives/btrfs/default.nix b/modules/nixos/hardware/drives/btrfs/default.nix new file mode 100644 index 0000000..d8a528c --- /dev/null +++ b/modules/nixos/hardware/drives/btrfs/default.nix @@ -0,0 +1,107 @@ +{ config, lib, ... }: +let + inherit (lib) mkIf mkEnableOption; + inherit (lib.pantheon) mkStrOption; + cfg = config.hardware.drives.btrfs; + ephemeralRootCfg = { + boot.initrd.postDeviceCommands = lib.mkAfter '' + mkdir /btrfs_tmp + mount /dev/root_vg/root /btrfs_tmp + if [[ -e /btrfs_tmp/root ]]; then + mkdir -p /btrfs_tmp/old_roots + timestamp=$(date --date="@$(stat -c %Y /btrfs_tmp/root)" "+%Y-%m-%-d_%H:%M:%S") + mv /btrfs_tmp/root "/btrfs_tmp/old_roots/$timestamp" + fi + + delete_subvolume_recursively() { + IFS=$'\n' + for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do + delete_subvolume_recursively "/btrfs_tmp/$i" + done + btrfs subvolume delete "$1" + } + + for i in $(find /btrfs_tmp/old_roots/ -maxdepth 1 -mtime +30); do + delete_subvolume_recursively "$i" + done + + btrfs subvolume create /btrfs_tmp/root + umount /btrfs_tmp + ''; + programs.fuse.userAllowOther = true; + fileSystems."/persist".neededForBoot = true; + #FIXME: below should be in module or something + environment.persistence."/persist" = { + hideMounts = true; + files = [ + "/etc/ssh/ssh_host_ed25519_key" + "/etc/ssh/ssh_host_ed25519_key.pub" + "/etc/ssh/ssh_host_rsa_key" + "/etc/ssh/ssh_host_rsa_key.pub" + "/etc/machine-id" + ]; + }; + }; +in +{ + options.hardware.drives.btrfs = { + enable = mkEnableOption ""; + drive = mkStrOption; + ephemeralRoot = mkEnableOption ""; + }; + config = mkIf cfg.enable ( + { + boot.initrd.kernelModules = [ "dm-snapshot" ]; + disko.devices.disk.main = { + device = cfg.drive; + type = "disk"; + content.type = "gpt"; + content.partitions = { + boot.name = "boot"; + boot.size = "1M"; + boot.type = "EF02"; + esp.name = "ESP"; + esp.size = "500M"; + esp.type = "EF00"; + esp.content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + }; + swap.size = "4G"; + swap.content = { + type = "swap"; + resumeDevice = true; + }; + root.name = "root"; + root.size = "100%"; + root.content = { + type = "lvm_pv"; + vg = "root_vg"; + }; + }; + }; + + disko.devices.lvm_vg.root_vg = { + type = "lvm_vg"; + lvs.root.size = "100%FREE"; + lvs.root.content.type = "btrfs"; + lvs.root.content.extraArgs = [ "-f" ]; + lvs.root.content.subvolumes = { + "/root".mountpoint = "/"; + "/persist".mountpoint = "/persist"; + "/persist".mountOptions = [ + "subvol=persist" + "noatime" + ]; + "/nix".mountpoint = "/nix"; + "/nix".mountOptions = [ + "subvol=nix" + "noatime" + ]; + }; + }; + } + // ephemeralRootCfg + ); +} From 5f71bc89251975444bc1c11774583e049c99afc7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 18:40:02 +0800 Subject: [PATCH 104/373] refactor(nixos): move networking config to its own module --- modules/nixos/hardware/default.nix | 1 - modules/nixos/hardware/networking.nix | 27 --------------------------- modules/nixos/networking/default.nix | 23 +++++++++++++++++++++++ 3 files changed, 23 insertions(+), 28 deletions(-) delete mode 100644 modules/nixos/hardware/networking.nix create mode 100644 modules/nixos/networking/default.nix diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 782f186..8463849 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -10,7 +10,6 @@ in imports = [ ./nvidia.nix ./audio.nix - ./networking.nix ]; options.hardware = { diff --git a/modules/nixos/hardware/networking.nix b/modules/nixos/hardware/networking.nix deleted file mode 100644 index 5be5803..0000000 --- a/modules/nixos/hardware/networking.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ config, lib, ... }: -let - inherit (lib) singleton; -in -{ - config = { - networking = { - enableIPv6 = false; - useDHCP = lib.mkDefault true; - hostName = config.system.hostname; - networkmanager.enable = true; - }; - - services.openssh = { - enable = true; - settings = { - PrintMotd = true; - }; - }; - - services.tailscale = { - enable = true; - authKeyFile = config.sops.secrets."keys/tailscale".path; - }; - persistDirs = singleton "/var/lib/tailscale"; - }; -} diff --git a/modules/nixos/networking/default.nix b/modules/nixos/networking/default.nix new file mode 100644 index 0000000..3828c80 --- /dev/null +++ b/modules/nixos/networking/default.nix @@ -0,0 +1,23 @@ +{ config, lib, ... }: +let + inherit (lib) mkDefault singleton; +in +{ + networking = { + enableIPv6 = false; + useDHCP = mkDefault true; + hostName = config.system.hostname; + networkmanager.enable = true; + }; + + services.openssh = { + enable = true; + settings.PrintMotd = true; + }; + + services.tailscale = { + enable = true; + authKeyFile = config.sops.secrets."keys/tailscale".path; + }; + persistDirs = singleton "/var/lib/tailscale"; +} From bf63f448756136ff1e5abeed2faaf2e88aea7cfb Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 18:45:05 +0800 Subject: [PATCH 105/373] refactor(nixos): move nvidia config to its own module --- modules/nixos/hardware/default.nix | 2 - modules/nixos/hardware/gpu/default.nix | 41 +++++++++++++++++++ modules/nixos/hardware/nvidia.nix | 29 ------------- .../web-apps/sd-webui-forge/default.nix | 2 +- systems/x86_64-linux/nemesis/default.nix | 2 +- 5 files changed, 43 insertions(+), 33 deletions(-) create mode 100644 modules/nixos/hardware/gpu/default.nix delete mode 100644 modules/nixos/hardware/nvidia.nix diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 8463849..7652c0d 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -8,12 +8,10 @@ let in { imports = [ - ./nvidia.nix ./audio.nix ]; options.hardware = { - gpu = lib.pantheon.mkStrOption; platform = lib.pantheon.mkStrOption; }; diff --git a/modules/nixos/hardware/gpu/default.nix b/modules/nixos/hardware/gpu/default.nix new file mode 100644 index 0000000..300271a --- /dev/null +++ b/modules/nixos/hardware/gpu/default.nix @@ -0,0 +1,41 @@ +{ + config, + lib, + pkgs, + ... +}: +let + inherit (lib) + mkMerge + mkIf + mkEnableOption + singleton + ; + cfg = config.hardware.gpu; +in +{ + options.hardware.gpu = { + nvidia.enable = mkEnableOption ""; + }; + config = mkMerge [ + (mkIf cfg.nvidia.enable { + hardware = { + graphics.enable = true; + graphics.extraPackages = singleton pkgs.nvidia-vaapi-driver; + nvidia.open = true; + nvidia.package = config.boot.kernelPackages.nvidiaPackages.latest; + }; + services.xserver.videoDrivers = [ "nvidia" ]; + nixpkgs.config.allowUnfree = true; + environment.variables = { + LIBVA_DRIVER_NAME = "nvidia"; + __GLX_VENDOR_LIBRARY_NAME = "nvidia"; + NVD_BACKEND = "direct"; + }; + nix.settings.substituters = [ "https://cuda-maintainers.cachix.org" ]; + nix.settings.trusted-public-keys = [ + "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" + ]; + }) + ]; +} diff --git a/modules/nixos/hardware/nvidia.nix b/modules/nixos/hardware/nvidia.nix deleted file mode 100644 index 0f537f2..0000000 --- a/modules/nixos/hardware/nvidia.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: -{ - config = lib.mkIf (config.hardware.gpu == "nvidia") { - hardware = { - graphics.enable = true; - graphics.extraPackages = with pkgs; [ - nvidia-vaapi-driver - ]; - nvidia.open = true; - nvidia.package = config.boot.kernelPackages.nvidiaPackages.latest; - }; - services.xserver.videoDrivers = [ "nvidia" ]; - nixpkgs.config.allowUnfree = true; - environment.variables = { - LIBVA_DRIVER_NAME = "nvidia"; - __GLX_VENDOR_LIBRARY_NAME = "nvidia"; - NVD_BACKEND = "direct"; - }; - nix.settings.substituters = [ "https://cuda-maintainers.cachix.org" ]; - nix.settings.trusted-public-keys = [ - "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" - ]; - }; -} diff --git a/modules/nixos/server/web-apps/sd-webui-forge/default.nix b/modules/nixos/server/web-apps/sd-webui-forge/default.nix index c039bc0..4ad3e82 100644 --- a/modules/nixos/server/web-apps/sd-webui-forge/default.nix +++ b/modules/nixos/server/web-apps/sd-webui-forge/default.nix @@ -15,7 +15,7 @@ mkWebApp { }; extraConfig = { assertions = singleton { - assertion = config.hardware.gpu == "nvidia"; + assertion = config.hardware.gpu.nvidia.enable; message = "You must run the sd-webui-forge service only with an nvidia gpu."; }; services.sd-webui-forge = { diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 46ac398..fe75eec 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -16,7 +16,7 @@ ephemeralRoot = true; }; platform = "amd"; - gpu = "nvidia"; + gpu.nvidia.enable = true; }; desktop = { From 91c2790b62b279290ab2ced52a807e804cbb85d0 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 19:17:47 +0800 Subject: [PATCH 106/373] refactor(nixos): move system config options to main nixos module --- homes/x86_64-linux/rafiq/cli/multiplexer.nix | 2 +- lib/modules/default.nix | 2 +- modules/nixos/default.nix | 84 ++++++++++++++++++- .../audio.nix => desktop/audio/default.nix} | 0 modules/nixos/desktop/services/default.nix | 4 +- modules/nixos/hardware/default.nix | 40 ++------- modules/nixos/hardware/platform/default.nix | 3 + modules/nixos/hardware/platform/x86_64.nix | 18 ++++ modules/nixos/networking/default.nix | 2 +- .../server/web-apps/librechat/default.nix | 2 +- modules/nixos/server/web-servers/default.nix | 2 +- modules/nixos/system/default.nix | 16 ---- modules/nixos/system/localisation.nix | 9 -- modules/nixos/system/nix-config.nix | 17 ---- modules/nixos/system/secrets.nix | 37 -------- modules/nixos/system/users.nix | 27 ------ systems/x86_64-linux/apollo/default.nix | 2 +- systems/x86_64-linux/common.nix | 2 +- systems/x86_64-linux/mellinoe/default.nix | 2 +- systems/x86_64-linux/nemesis/default.nix | 2 +- 20 files changed, 124 insertions(+), 149 deletions(-) rename modules/nixos/{hardware/audio.nix => desktop/audio/default.nix} (100%) create mode 100644 modules/nixos/hardware/platform/default.nix create mode 100644 modules/nixos/hardware/platform/x86_64.nix delete mode 100644 modules/nixos/system/localisation.nix delete mode 100644 modules/nixos/system/nix-config.nix delete mode 100644 modules/nixos/system/secrets.nix delete mode 100644 modules/nixos/system/users.nix diff --git a/homes/x86_64-linux/rafiq/cli/multiplexer.nix b/homes/x86_64-linux/rafiq/cli/multiplexer.nix index 6eb8971..700db4a 100644 --- a/homes/x86_64-linux/rafiq/cli/multiplexer.nix +++ b/homes/x86_64-linux/rafiq/cli/multiplexer.nix @@ -17,7 +17,7 @@ default_tab_template { pane size=1 borderless=true { plugin location="file:${pkgs.zjstatus}/bin/zjstatus.wasm" { - format_left "{mode} ${osConfig.system.hostname}" + format_left "{mode} ${osConfig.hostname}" format_center "{tabs}" format_right "{datetime}" format_space "" diff --git a/lib/modules/default.nix b/lib/modules/default.nix index 8b19dca..9e92b21 100644 --- a/lib/modules/default.nix +++ b/lib/modules/default.nix @@ -27,7 +27,7 @@ let server.networking.ddns.domains = singleton (mkRootDomain cfg.domain); server.web-servers.nginx.proxies = singleton { source = cfg.domain; - target = "http://${config.system.hostname}:${toString cfg.port}"; + target = "http://${config.hostname}:${toString cfg.port}"; }; }; in diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index 1b5b271..d7c523f 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -1,4 +1,10 @@ -{ lib, config, ... }: +{ + inputs, + lib, + config, + pkgs, + ... +}: let inherit (lib) mkOption; inherit (lib.types) @@ -7,6 +13,7 @@ let coercedTo submodule ; + inherit (lib.pantheon) mkStrOption; rootDir = submodule { options = { directory = mkOption { type = str; }; @@ -27,6 +34,12 @@ let in { options = { + hostname = mkStrOption; + mainUser = { + name = mkStrOption; + publicKey = mkStrOption; + email = mkStrOption; + }; persistDirs = mkOption { type = listOf (coercedTo str (d: { directory = d; }) rootDir); default = [ ]; @@ -42,5 +55,74 @@ in "/var/lib/systemd" "/var/lib/nixos" ]; + stylix = { + enable = true; + base16Scheme = "${pkgs.base16-schemes}/share/themes/atelier-cave.yaml"; + }; + nixpkgs.config.allowUnfree = true; + nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; + + nix.settings = { + experimental-features = [ + "nix-command" + "flakes" + "pipe-operators" + ]; + + trusted-users = [ "@wheel" ]; + }; + time.timeZone = "Asia/Singapore"; + i18n.defaultLocale = "en_US.UTF-8"; + users.mutableUsers = false; + users.groups.users = { + gid = 100; + members = [ "${config.mainUser.name}" ]; + }; + users.users."${config.mainUser.name}" = { + linger = true; + uid = 1000; + isNormalUser = true; + hashedPasswordFile = config.sops.secrets."${config.mainUser.name}/hashedPassword".path; + extraGroups = [ "wheel" ]; + openssh.authorizedKeys.keys = [ config.mainUser.publicKey ]; + }; + users.users.root.openssh.authorizedKeys.keys = lib.singleton config.mainUser.publicKey; + services.getty.autologinUser = config.mainUser.name; + security.sudo.wheelNeedsPassword = false; + sops = { + defaultSopsFile = lib.snowfall.fs.get-file "secrets/secrets.yaml"; + age.sshKeyPaths = [ "/persist/home/rafiq/.ssh/id_ed25519" ]; + secrets = { + "keys/openrouter" = { }; + "keys/tailscale" = { }; + "keys/gemini" = { }; + "keys/cvt-jira" = { }; + "keys/cloudflare" = { }; + "keys/telegram_bot" = { }; + "misc/cvt-jira-link" = { }; + "rafiq/hashedPassword".neededForUsers = true; + "rafiq/personalEmailPassword" = { }; + "rafiq/workEmailPassword" = { }; + "rafiq/oldSMBCredentials" = { }; + "librechat/creds_key" = { }; + "librechat/creds_iv" = { }; + "librechat/jwt_secret" = { }; + "librechat/jwt_refresh_secret" = { }; + "librechat/meili_master_key" = { }; + }; + templates = { + "smb-credentials".content = '' + username=rafiq + password=${config.sops.placeholder."rafiq/oldSMBCredentials"} + ''; + }; + }; + environment.shellInit = # sh + '' + export GEMINI_API_KEY=$(sudo cat ${config.sops.secrets."keys/gemini".path}) + export CVT_JIRA_KEY=$(sudo cat ${config.sops.secrets."keys/cvt-jira".path}) + export CVT_JIRA_LINK=$(sudo cat ${config.sops.secrets."misc/cvt-jira-link".path}) + ''; + system.stateVersion = "25.05"; # Did you read the comment? }; } diff --git a/modules/nixos/hardware/audio.nix b/modules/nixos/desktop/audio/default.nix similarity index 100% rename from modules/nixos/hardware/audio.nix rename to modules/nixos/desktop/audio/default.nix diff --git a/modules/nixos/desktop/services/default.nix b/modules/nixos/desktop/services/default.nix index f993b41..27679c3 100644 --- a/modules/nixos/desktop/services/default.nix +++ b/modules/nixos/desktop/services/default.nix @@ -22,7 +22,7 @@ in capSysAdmin = true; openFirewall = true; settings = { - sunshine_name = config.system.hostname; + sunshine_name = config.hostname; origin_web_ui_allowed = "wan"; }; applications = { }; @@ -35,7 +35,7 @@ in home-manager.sharedModules = singleton { services.spotifyd.enable = true; services.spotifyd.settings.global = { - device_name = "${config.system.hostname}"; + device_name = "${config.hostname}"; device_type = "computer"; zeroconf_port = 5353; }; diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix index 7652c0d..27f8b24 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/hardware/default.nix @@ -1,37 +1,15 @@ -{ - lib, - config, - ... -}: +{ lib, ... }: let inherit (lib) singleton; in { - imports = [ - ./audio.nix - ]; - - options.hardware = { - platform = lib.pantheon.mkStrOption; + config = { + services.fwupd.enable = true; + persistDirs = singleton "/var/lib/bluetooth"; + hardware.bluetooth = { + enable = true; + settings.General.Experimental = true; + }; + hardware.xone.enable = true; }; - - config = lib.mkMerge [ - { - services.fwupd.enable = true; - persistDirs = singleton "/var/lib/bluetooth"; - hardware.bluetooth = { - enable = true; - settings.General.Experimental = true; - }; - hardware.xone.enable = true; - } - (lib.mkIf (config.hardware.platform == "amd") { - hardware.cpu.amd.updateMicrocode = true; - boot.kernelModules = [ "kvm-amd" ]; - }) - (lib.mkIf (config.hardware.platform == "intel") { - hardware.cpu.intel.updateMicrocode = true; - boot.kernelModules = [ "kvm-intel" ]; - }) - ]; } diff --git a/modules/nixos/hardware/platform/default.nix b/modules/nixos/hardware/platform/default.nix new file mode 100644 index 0000000..95a0727 --- /dev/null +++ b/modules/nixos/hardware/platform/default.nix @@ -0,0 +1,3 @@ +{ + imports = [ ./x86_64.nix ]; +} diff --git a/modules/nixos/hardware/platform/x86_64.nix b/modules/nixos/hardware/platform/x86_64.nix new file mode 100644 index 0000000..befb6af --- /dev/null +++ b/modules/nixos/hardware/platform/x86_64.nix @@ -0,0 +1,18 @@ +{ config, lib, ... }: +let + inherit (lib) singleton mkOption; + inherit (lib.types) enum; + cfg = config.hardware.platform; +in +{ + options.hardware.platform = mkOption { + type = enum [ + "amd" + "intel" + ]; + }; + config = { + hardware.cpu.${cfg}.updateMicrocode = true; + boot.kernelModules = singleton "kvm-${cfg}"; + }; +} diff --git a/modules/nixos/networking/default.nix b/modules/nixos/networking/default.nix index 3828c80..c103d39 100644 --- a/modules/nixos/networking/default.nix +++ b/modules/nixos/networking/default.nix @@ -6,7 +6,7 @@ in networking = { enableIPv6 = false; useDHCP = mkDefault true; - hostName = config.system.hostname; + hostName = config.hostname; networkmanager.enable = true; }; diff --git a/modules/nixos/server/web-apps/librechat/default.nix b/modules/nixos/server/web-apps/librechat/default.nix index 7562027..1c51941 100644 --- a/modules/nixos/server/web-apps/librechat/default.nix +++ b/modules/nixos/server/web-apps/librechat/default.nix @@ -20,7 +20,7 @@ mkWebApp { inherit (upstreamCfg) user group; }; extraOptions.mongodbURI = mkStrOption // { - default = "mongodb://${config.system.hostname}:27017/LibreChat"; + default = "mongodb://${config.hostname}:27017/LibreChat"; }; extraConfig = { services.librechat = { diff --git a/modules/nixos/server/web-servers/default.nix b/modules/nixos/server/web-servers/default.nix index 8e8570c..1aee593 100644 --- a/modules/nixos/server/web-servers/default.nix +++ b/modules/nixos/server/web-servers/default.nix @@ -18,7 +18,7 @@ in security.acme = { acceptTerms = true; defaults = { - inherit (config.system.mainUser) email; + inherit (config.mainUser) email; dnsProvider = "cloudflare"; credentialFiles."CLOUDFLARE_DNS_API_TOKEN_FILE" = config.sops.secrets."keys/cloudflare".path; }; diff --git a/modules/nixos/system/default.nix b/modules/nixos/system/default.nix index 5d876e7..6898a7b 100644 --- a/modules/nixos/system/default.nix +++ b/modules/nixos/system/default.nix @@ -7,25 +7,9 @@ { imports = [ ./boot.nix - ./users.nix - ./localisation.nix - ./nix-config.nix - ./secrets.nix ]; options.system = { - hostname = lib.pantheon.mkStrOption; - mainUser.name = lib.pantheon.mkStrOption; - mainUser.publicKey = lib.pantheon.mkStrOption; - mainUser.email = lib.pantheon.mkStrOption; bootloader = lib.pantheon.mkStrOption; }; - - config = { - stylix = { - enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/atelier-cave.yaml"; - }; - system.stateVersion = "25.05"; # Did you read the comment? - }; } diff --git a/modules/nixos/system/localisation.nix b/modules/nixos/system/localisation.nix deleted file mode 100644 index ce5242e..0000000 --- a/modules/nixos/system/localisation.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ config, lib, ... }: -{ - config = lib.mkMerge [ - { - time.timeZone = "Asia/Singapore"; - i18n.defaultLocale = "en_US.UTF-8"; - } - ]; -} diff --git a/modules/nixos/system/nix-config.nix b/modules/nixos/system/nix-config.nix deleted file mode 100644 index 85df7df..0000000 --- a/modules/nixos/system/nix-config.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ config, inputs, ... }: -{ - config = { - nixpkgs.config.allowUnfree = true; - nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; - - nix.settings = { - experimental-features = [ - "nix-command" - "flakes" - "pipe-operators" - ]; - - trusted-users = [ "@wheel" ]; - }; - }; -} diff --git a/modules/nixos/system/secrets.nix b/modules/nixos/system/secrets.nix deleted file mode 100644 index ce0cc40..0000000 --- a/modules/nixos/system/secrets.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ lib, config, ... }: -{ - sops = { - defaultSopsFile = lib.snowfall.fs.get-file "secrets/secrets.yaml"; - age.sshKeyPaths = [ "/persist/home/rafiq/.ssh/id_ed25519" ]; - secrets = { - "keys/openrouter" = { }; - "keys/tailscale" = { }; - "keys/gemini" = { }; - "keys/cvt-jira" = { }; - "keys/cloudflare" = { }; - "keys/telegram_bot" = { }; - "misc/cvt-jira-link" = { }; - "rafiq/hashedPassword".neededForUsers = true; - "rafiq/personalEmailPassword" = { }; - "rafiq/workEmailPassword" = { }; - "rafiq/oldSMBCredentials" = { }; - "librechat/creds_key" = { }; - "librechat/creds_iv" = { }; - "librechat/jwt_secret" = { }; - "librechat/jwt_refresh_secret" = { }; - "librechat/meili_master_key" = { }; - }; - templates = { - "smb-credentials".content = '' - username=rafiq - password=${config.sops.placeholder."rafiq/oldSMBCredentials"} - ''; - }; - }; - environment.shellInit = # sh - '' - export GEMINI_API_KEY=$(sudo cat ${config.sops.secrets."keys/gemini".path}) - export CVT_JIRA_KEY=$(sudo cat ${config.sops.secrets."keys/cvt-jira".path}) - export CVT_JIRA_LINK=$(sudo cat ${config.sops.secrets."misc/cvt-jira-link".path}) - ''; -} diff --git a/modules/nixos/system/users.nix b/modules/nixos/system/users.nix deleted file mode 100644 index fa7cb84..0000000 --- a/modules/nixos/system/users.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - config, - lib, - ... -}: -{ - config = lib.mkMerge [ - { - users.mutableUsers = false; - users.groups.users = { - gid = 100; - members = [ "${config.system.mainUser.name}" ]; - }; - users.users."${config.system.mainUser.name}" = { - linger = true; - uid = 1000; - isNormalUser = true; - hashedPasswordFile = config.sops.secrets."${config.system.mainUser.name}/hashedPassword".path; - extraGroups = [ "wheel" ]; - openssh.authorizedKeys.keys = [ config.system.mainUser.publicKey ]; - }; - users.users.root.openssh.authorizedKeys.keys = lib.singleton config.system.mainUser.publicKey; - services.getty.autologinUser = config.system.mainUser.name; - security.sudo.wheelNeedsPassword = false; - } - ]; -} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index bc6cb05..e9755cf 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -4,9 +4,9 @@ }: { imports = lib.singleton ../common.nix; + hostname = "apollo"; system = { - hostname = "apollo"; bootloader = "systemd-boot"; }; diff --git a/systems/x86_64-linux/common.nix b/systems/x86_64-linux/common.nix index 6c86ad7..1ac9116 100644 --- a/systems/x86_64-linux/common.nix +++ b/systems/x86_64-linux/common.nix @@ -3,7 +3,7 @@ let inherit (pkgs) zsh; in { - system.mainUser = { + mainUser = { name = "rafiq"; publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILdsZyY3gu8IGB8MzMnLdh+ClDxQQ2RYG9rkeetIKq8n"; email = "rafiq@rrv.sh"; diff --git a/systems/x86_64-linux/mellinoe/default.nix b/systems/x86_64-linux/mellinoe/default.nix index dcd3141..e5835db 100644 --- a/systems/x86_64-linux/mellinoe/default.nix +++ b/systems/x86_64-linux/mellinoe/default.nix @@ -3,9 +3,9 @@ ../common.nix ../desktop.nix ]; + hostname = "mellinoe"; system = { - hostname = "mellinoe"; bootloader = "systemd-boot"; }; diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index fe75eec..3899119 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -3,9 +3,9 @@ ../common.nix ../desktop.nix ]; + hostname = "nemesis"; system = { - hostname = "nemesis"; bootloader = "systemd-boot"; }; From 8165d96d7c36204f6657ca4b1ee5a0e9537a38b4 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 19:59:45 +0800 Subject: [PATCH 107/373] refactor(nixos): move hardware config options to machine nixos module --- modules/nixos/default.nix | 33 ++++++++++--------- modules/nixos/hardware/platform/default.nix | 3 -- modules/nixos/hardware/platform/x86_64.nix | 18 ---------- .../bootloader/default.nix} | 13 +++++--- .../nixos/{hardware => machine}/default.nix | 6 +++- .../drives/btrfs/default.nix | 4 +-- .../{hardware => machine}/gpu/default.nix | 4 +-- modules/nixos/machine/platform/default.nix | 21 ++++++++++++ .../{hardware => machine}/usb/default.nix | 4 +-- .../web-apps/sd-webui-forge/default.nix | 2 +- modules/nixos/system/default.nix | 15 --------- systems/x86_64-linux/apollo/default.nix | 9 ++--- systems/x86_64-linux/desktop.nix | 2 +- systems/x86_64-linux/mellinoe/default.nix | 9 ++--- systems/x86_64-linux/nemesis/default.nix | 11 +++---- 15 files changed, 70 insertions(+), 84 deletions(-) delete mode 100644 modules/nixos/hardware/platform/default.nix delete mode 100644 modules/nixos/hardware/platform/x86_64.nix rename modules/nixos/{system/boot.nix => machine/bootloader/default.nix} (61%) rename modules/nixos/{hardware => machine}/default.nix (72%) rename modules/nixos/{hardware => machine}/drives/btrfs/default.nix (97%) rename modules/nixos/{hardware => machine}/gpu/default.nix (94%) create mode 100644 modules/nixos/machine/platform/default.nix rename modules/nixos/{hardware => machine}/usb/default.nix (92%) delete mode 100644 modules/nixos/system/default.nix diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index d7c523f..ef35391 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -6,7 +6,7 @@ ... }: let - inherit (lib) mkOption; + inherit (lib) mkOption singleton; inherit (lib.types) listOf str @@ -14,6 +14,7 @@ let submodule ; inherit (lib.pantheon) mkStrOption; + inherit (lib.snowfall.fs) get-file; rootDir = submodule { options = { directory = mkOption { type = str; }; @@ -73,24 +74,26 @@ in }; time.timeZone = "Asia/Singapore"; i18n.defaultLocale = "en_US.UTF-8"; - users.mutableUsers = false; - users.groups.users = { - gid = 100; - members = [ "${config.mainUser.name}" ]; + users = { + mutableUsers = false; + groups.users = { + gid = 100; + members = [ "${config.mainUser.name}" ]; + }; + users."${config.mainUser.name}" = { + linger = true; + uid = 1000; + isNormalUser = true; + hashedPasswordFile = config.sops.secrets."${config.mainUser.name}/hashedPassword".path; + extraGroups = [ "wheel" ]; + openssh.authorizedKeys.keys = [ config.mainUser.publicKey ]; + }; + users.root.openssh.authorizedKeys.keys = singleton config.mainUser.publicKey; }; - users.users."${config.mainUser.name}" = { - linger = true; - uid = 1000; - isNormalUser = true; - hashedPasswordFile = config.sops.secrets."${config.mainUser.name}/hashedPassword".path; - extraGroups = [ "wheel" ]; - openssh.authorizedKeys.keys = [ config.mainUser.publicKey ]; - }; - users.users.root.openssh.authorizedKeys.keys = lib.singleton config.mainUser.publicKey; services.getty.autologinUser = config.mainUser.name; security.sudo.wheelNeedsPassword = false; sops = { - defaultSopsFile = lib.snowfall.fs.get-file "secrets/secrets.yaml"; + defaultSopsFile = get-file "secrets/secrets.yaml"; age.sshKeyPaths = [ "/persist/home/rafiq/.ssh/id_ed25519" ]; secrets = { "keys/openrouter" = { }; diff --git a/modules/nixos/hardware/platform/default.nix b/modules/nixos/hardware/platform/default.nix deleted file mode 100644 index 95a0727..0000000 --- a/modules/nixos/hardware/platform/default.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - imports = [ ./x86_64.nix ]; -} diff --git a/modules/nixos/hardware/platform/x86_64.nix b/modules/nixos/hardware/platform/x86_64.nix deleted file mode 100644 index befb6af..0000000 --- a/modules/nixos/hardware/platform/x86_64.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ config, lib, ... }: -let - inherit (lib) singleton mkOption; - inherit (lib.types) enum; - cfg = config.hardware.platform; -in -{ - options.hardware.platform = mkOption { - type = enum [ - "amd" - "intel" - ]; - }; - config = { - hardware.cpu.${cfg}.updateMicrocode = true; - boot.kernelModules = singleton "kvm-${cfg}"; - }; -} diff --git a/modules/nixos/system/boot.nix b/modules/nixos/machine/bootloader/default.nix similarity index 61% rename from modules/nixos/system/boot.nix rename to modules/nixos/machine/bootloader/default.nix index 9435cb8..9fc63fb 100644 --- a/modules/nixos/system/boot.nix +++ b/modules/nixos/machine/bootloader/default.nix @@ -1,13 +1,16 @@ { config, lib, - modulesPath, ... }: +let + inherit (lib.pantheon) mkStrOption; + cfg = config.machine.bootloader; +in { - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; + options.machine.bootloader = { + type = mkStrOption; + }; config = lib.mkMerge [ { boot.initrd.availableKernelModules = [ @@ -20,7 +23,7 @@ ]; boot.loader.efi.canTouchEfiVariables = true; } - (lib.mkIf (config.system.bootloader == "systemd-boot") { + (lib.mkIf (config.machine.bootloader.type == "systemd-boot") { boot.loader.systemd-boot.enable = true; }) ]; diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/machine/default.nix similarity index 72% rename from modules/nixos/hardware/default.nix rename to modules/nixos/machine/default.nix index 27f8b24..b1aeb5a 100644 --- a/modules/nixos/hardware/default.nix +++ b/modules/nixos/machine/default.nix @@ -1,8 +1,12 @@ -{ lib, ... }: +{ lib, modulesPath, ... }: let inherit (lib) singleton; in { + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + config = { services.fwupd.enable = true; persistDirs = singleton "/var/lib/bluetooth"; diff --git a/modules/nixos/hardware/drives/btrfs/default.nix b/modules/nixos/machine/drives/btrfs/default.nix similarity index 97% rename from modules/nixos/hardware/drives/btrfs/default.nix rename to modules/nixos/machine/drives/btrfs/default.nix index d8a528c..4164b78 100644 --- a/modules/nixos/hardware/drives/btrfs/default.nix +++ b/modules/nixos/machine/drives/btrfs/default.nix @@ -2,7 +2,7 @@ let inherit (lib) mkIf mkEnableOption; inherit (lib.pantheon) mkStrOption; - cfg = config.hardware.drives.btrfs; + cfg = config.machine.drives.btrfs; ephemeralRootCfg = { boot.initrd.postDeviceCommands = lib.mkAfter '' mkdir /btrfs_tmp @@ -44,7 +44,7 @@ let }; in { - options.hardware.drives.btrfs = { + options.machine.drives.btrfs = { enable = mkEnableOption ""; drive = mkStrOption; ephemeralRoot = mkEnableOption ""; diff --git a/modules/nixos/hardware/gpu/default.nix b/modules/nixos/machine/gpu/default.nix similarity index 94% rename from modules/nixos/hardware/gpu/default.nix rename to modules/nixos/machine/gpu/default.nix index 300271a..1e54a51 100644 --- a/modules/nixos/hardware/gpu/default.nix +++ b/modules/nixos/machine/gpu/default.nix @@ -11,10 +11,10 @@ let mkEnableOption singleton ; - cfg = config.hardware.gpu; + cfg = config.machine.gpu; in { - options.hardware.gpu = { + options.machine.gpu = { nvidia.enable = mkEnableOption ""; }; config = mkMerge [ diff --git a/modules/nixos/machine/platform/default.nix b/modules/nixos/machine/platform/default.nix new file mode 100644 index 0000000..a698c2b --- /dev/null +++ b/modules/nixos/machine/platform/default.nix @@ -0,0 +1,21 @@ +{ config, lib, ... }: +let + inherit (lib) singleton mkOption; + inherit (lib.types) enum; + cfg = config.machine.platform; +in +{ + options.machine.platform = { + type = mkOption { + type = enum [ + "amd" + "intel" + ]; + }; + }; + + config = { + hardware.cpu.${cfg.type}.updateMicrocode = true; + boot.kernelModules = singleton "kvm-${cfg.type}"; + }; +} diff --git a/modules/nixos/hardware/usb/default.nix b/modules/nixos/machine/usb/default.nix similarity index 92% rename from modules/nixos/hardware/usb/default.nix rename to modules/nixos/machine/usb/default.nix index e64cf1a..61b0431 100644 --- a/modules/nixos/hardware/usb/default.nix +++ b/modules/nixos/machine/usb/default.nix @@ -11,10 +11,10 @@ let mkMerge singleton ; - cfg = config.hardware.usb; + cfg = config.machine.usb; in { - options.hardware.usb = { + options.machine.usb = { automount = mkEnableOption ""; enableQmk = mkEnableOption ""; }; diff --git a/modules/nixos/server/web-apps/sd-webui-forge/default.nix b/modules/nixos/server/web-apps/sd-webui-forge/default.nix index 4ad3e82..602bdd4 100644 --- a/modules/nixos/server/web-apps/sd-webui-forge/default.nix +++ b/modules/nixos/server/web-apps/sd-webui-forge/default.nix @@ -15,7 +15,7 @@ mkWebApp { }; extraConfig = { assertions = singleton { - assertion = config.hardware.gpu.nvidia.enable; + assertion = config.machine.gpu.nvidia.enable; message = "You must run the sd-webui-forge service only with an nvidia gpu."; }; services.sd-webui-forge = { diff --git a/modules/nixos/system/default.nix b/modules/nixos/system/default.nix deleted file mode 100644 index 6898a7b..0000000 --- a/modules/nixos/system/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: -{ - imports = [ - ./boot.nix - ]; - - options.system = { - bootloader = lib.pantheon.mkStrOption; - }; -} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index e9755cf..0bf7a22 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -6,12 +6,9 @@ imports = lib.singleton ../common.nix; hostname = "apollo"; - system = { - bootloader = "systemd-boot"; - }; - - hardware = { - platform = "intel"; + machine = { + platform.type = "intel"; + bootloader.type = "systemd-boot"; drives.btrfs = { enable = true; drive = "/dev/disk/by-id/nvme-eui.002538d221b47b01"; diff --git a/systems/x86_64-linux/desktop.nix b/systems/x86_64-linux/desktop.nix index dcd767c..473cad0 100644 --- a/systems/x86_64-linux/desktop.nix +++ b/systems/x86_64-linux/desktop.nix @@ -11,7 +11,7 @@ window-manager.hyprland.enable = true; }; - hardware.usb = { + machine.usb = { automount = true; enableQmk = true; }; diff --git a/systems/x86_64-linux/mellinoe/default.nix b/systems/x86_64-linux/mellinoe/default.nix index e5835db..6bcc25f 100644 --- a/systems/x86_64-linux/mellinoe/default.nix +++ b/systems/x86_64-linux/mellinoe/default.nix @@ -5,17 +5,14 @@ ]; hostname = "mellinoe"; - system = { - bootloader = "systemd-boot"; - }; - - hardware = { + machine = { + platform.type = "intel"; + bootloader.type = "systemd-boot"; drives.btrfs = { enable = true; drive = "/dev/disk/by-id/nvme-KBG40ZPZ128G_TOSHIBA_MEMORY_Z0U103PCNCDL"; ephemeralRoot = true; }; - platform = "intel"; }; desktop.mainMonitor = { diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 3899119..b35755f 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -5,18 +5,15 @@ ]; hostname = "nemesis"; - system = { - bootloader = "systemd-boot"; - }; - - hardware = { + machine = { + platform.type = "amd"; + gpu.nvidia.enable = true; + bootloader.type = "systemd-boot"; drives.btrfs = { enable = true; drive = "/dev/disk/by-id/nvme-CT2000P3SSD8_2325E6E77434"; ephemeralRoot = true; }; - platform = "amd"; - gpu.nvidia.enable = true; }; desktop = { From 4258046ccf2efab810d94694a926d2e4883d111f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 20:08:10 +0800 Subject: [PATCH 108/373] refactor(nixos): move sunshine config to its own module --- modules/nixos/desktop/services/default.nix | 15 ------------ .../desktop/services/sunshine/default.nix | 23 +++++++++++++++++++ 2 files changed, 23 insertions(+), 15 deletions(-) create mode 100644 modules/nixos/desktop/services/sunshine/default.nix diff --git a/modules/nixos/desktop/services/default.nix b/modules/nixos/desktop/services/default.nix index 27679c3..e3e39db 100644 --- a/modules/nixos/desktop/services/default.nix +++ b/modules/nixos/desktop/services/default.nix @@ -11,24 +11,9 @@ in { options.desktop.services = { spotifyd.enable = mkEnableOption ""; - sunshine.enable = mkEnableOption ""; - steam.enable = mkEnableOption ""; }; config = mkMerge [ - (mkIf cfg.sunshine.enable { - services.sunshine = { - enable = true; - capSysAdmin = true; - openFirewall = true; - settings = { - sunshine_name = config.hostname; - origin_web_ui_allowed = "wan"; - }; - applications = { }; - }; - home-manager.sharedModules = singleton { persistDirs = singleton ".config/sunshine"; }; - }) (mkIf cfg.spotifyd.enable { networking.firewall.allowedTCPPorts = [ 5353 ]; networking.firewall.allowedUDPPorts = [ 5353 ]; diff --git a/modules/nixos/desktop/services/sunshine/default.nix b/modules/nixos/desktop/services/sunshine/default.nix new file mode 100644 index 0000000..000131a --- /dev/null +++ b/modules/nixos/desktop/services/sunshine/default.nix @@ -0,0 +1,23 @@ +{ config, lib, ... }: +let + inherit (lib) singleton mkIf mkEnableOption; + cfg = config.desktop.services.sunshine; +in +{ + options.desktop.services.sunshine = { + enable = mkEnableOption ""; + }; + config = mkIf cfg.enable { + services.sunshine = { + enable = true; + capSysAdmin = true; + openFirewall = true; + settings = { + sunshine_name = config.hostname; + origin_web_ui_allowed = "wan"; + }; + applications = { }; + }; + home-manager.sharedModules = singleton { persistDirs = singleton ".config/sunshine"; }; + }; +} From 8e9af60c1663c390148bc71c5f01caf5ebb64c58 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 16 Jun 2025 20:55:50 +0800 Subject: [PATCH 109/373] build(flake.lock): update flake inputs --- flake.lock | 75 +++++++++++++++++++++++++----------------------------- flake.nix | 10 +++----- 2 files changed, 38 insertions(+), 47 deletions(-) diff --git a/flake.lock b/flake.lock index 71634b1..eb10125 100644 --- a/flake.lock +++ b/flake.lock @@ -89,11 +89,11 @@ ] }, "locked": { - "lastModified": 1749436314, - "narHash": "sha256-CqmqU5FRg5AadtIkxwu8ulDSOSoIisUMZRLlcED3Q5w=", + "lastModified": 1750040002, + "narHash": "sha256-KrC9iOVYIn6ukpVlHbqSA4hYCZ6oDyJKrcLqv4c5v84=", "owner": "nix-community", "repo": "disko", - "rev": "dfa4d1b9c39c0342ef133795127a3af14598017a", + "rev": "7f1857b31522062a6a00f88cbccf86b43acceed1", "type": "github" }, "original": { @@ -279,11 +279,11 @@ ] }, "locked": { - "lastModified": 1749657191, - "narHash": "sha256-QLilaHuhGxiwhgceDWESj9gFcKIdEp7+9lRqNGpN8S4=", + "lastModified": 1750033262, + "narHash": "sha256-TcFN78w6kPspxpbPsxW/8vQ1GAtY8Y3mjBaC+oB8jo4=", "owner": "nix-community", "repo": "home-manager", - "rev": "faeab32528a9360e9577ff4082de2d35c6bbe1ce", + "rev": "66523b0efe93ce5b0ba96dcddcda15d36673c1f0", "type": "github" }, "original": { @@ -309,11 +309,11 @@ }, "import-tree": { "locked": { - "lastModified": 1745565707, - "narHash": "sha256-ccFeWWQ9RLgCd1k+xwV/ASUkJ7AGTTaGDhlRWZgytxY=", + "lastModified": 1749958812, + "narHash": "sha256-zdo2CwxdUK3FpQjLBjkJnXvl7OPoTpjdW5OvOzQffoQ=", "owner": "vic", "repo": "import-tree", - "rev": "ed504db425c363b13f13d5ca52f1a2600c4a7703", + "rev": "6fcfa909614de6dd6c712db8229b8c0261791e39", "type": "github" }, "original": { @@ -339,22 +339,16 @@ }, "nil": { "inputs": { - "flake-utils": [ - "flake-utils" - ], "nixpkgs": [ "nixpkgs" - ], - "rust-overlay": [ - "rust-overlay" ] }, "locked": { - "lastModified": 1741118843, - "narHash": "sha256-ggXU3RHv6NgWw+vc+HO4/9n0GPufhTIUjVuLci8Za8c=", + "lastModified": 1750047244, + "narHash": "sha256-vluLARrk4485npdyHOj8XKr0yk6H22pNf+KVRNL+i/Y=", "owner": "oxalica", "repo": "nil", - "rev": "577d160da311cc7f5042038456a0713e9863d09e", + "rev": "870a4b1b5f12004832206703ac15aa85c42c247b", "type": "github" }, "original": { @@ -370,11 +364,11 @@ ] }, "locked": { - "lastModified": 1749355504, - "narHash": "sha256-L17CdJMD+/FCBOHjREQLXbe2VUnc3rjffenBbu2Kwpc=", + "lastModified": 1749960154, + "narHash": "sha256-EWlr9MZDd+GoGtZB4QsDzaLyaDQPGnRY03MFp6u2wSg=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "40a6e15e44b11fbf8f2b1df9d64dbfc117625e94", + "rev": "424a40050cdc5f494ec45e46462d288f08c64475", "type": "github" }, "original": { @@ -385,11 +379,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1749285348, - "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", + "lastModified": 1749794982, + "narHash": "sha256-Kh9K4taXbVuaLC0IL+9HcfvxsSUx8dPB5s5weJcc9pc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", + "rev": "ee930f9755f58096ac6e8ca94a1887e0534e2d81", "type": "github" }, "original": { @@ -445,11 +439,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1749707524, - "narHash": "sha256-aW7+cNRTO1jqF9+aSJuN1n8ztN1LcJ44zl56KEkKqkc=", + "lastModified": 1750074471, + "narHash": "sha256-5v3YvNfCAnEvpNZbWgTJYUxqTJHwsAXVa+hzWGmZA60=", "owner": "nix-community", "repo": "NUR", - "rev": "ba440d81438ff47c3b5e11e46f4132bc58f24a4b", + "rev": "dff5a5f17eb5a7803eaaccc504ca75afd921aeff", "type": "github" }, "original": { @@ -480,11 +474,11 @@ ] }, "locked": { - "lastModified": 1749631819, - "narHash": "sha256-iy7UuA2I0DaKEUMncTQNFg0bYDX7sa5WCRQTrIWqmEU=", + "lastModified": 1749895904, + "narHash": "sha256-D7ZLf2ApiHMLlS6Imu7yHaB4Nbf9Hi8a8/64xOt6qOo=", "owner": "notashelf", "repo": "nvf", - "rev": "2a2b5e2790b41eadc42758fd6c4d62b7af64f17c", + "rev": "77a32f0961edbeda82e80c1bcd465cad21004fc7", "type": "github" }, "original": { @@ -568,11 +562,11 @@ ] }, "locked": { - "lastModified": 1749695868, - "narHash": "sha256-debjTLOyqqsYOUuUGQsAHskFXH5+Kx2t3dOo/FCoNRA=", + "lastModified": 1750041667, + "narHash": "sha256-/8F9L6T9w/Fx1D6L+BtWIXg5m9F6jwOFg6uhZpKnM/0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "55f914d5228b5c8120e9e0f9698ed5b7214d09cd", + "rev": "d72bd8c9fda03c9834ea89d7a5a21c7880b79277", "type": "github" }, "original": { @@ -640,16 +634,15 @@ ] }, "locked": { - "lastModified": 1749893259, + "lastModified": 1749916680, "narHash": "sha256-xf2axyf+WuoSfDWQLhQigfms2qzSZzLwlFK7VwVxTkw=", - "owner": "rrvsh", + "owner": "janrupf", "repo": "stable-diffusion-webui-nix", - "rev": "0c3ebba0812cc3aa34ed16c6b4a85d96fbb2722f", + "rev": "4852ebfba8a00e029d0f8246d656ee52ebe3d9a2", "type": "github" }, "original": { - "owner": "rrvsh", - "ref": "add-forge-module", + "owner": "janrupf", "repo": "stable-diffusion-webui-nix", "type": "github" } @@ -688,11 +681,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1749670558, - "narHash": "sha256-luB+SFNy+etZK3PVznJSLps1DPYsGya6o/67Emcrtb0=", + "lastModified": 1750023464, + "narHash": "sha256-gBsstni5rgh1vt2SNThh51GNvxMDCjEBfpPksS0ig/c=", "owner": "nix-community", "repo": "stylix", - "rev": "e7fa0e5cc2336b6b25310d5e49c149f14fdbc1bb", + "rev": "a14e525723c1c837b2ceacd8a37cba1f0b5e76c2", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index fbf13c1..8d117cc 100644 --- a/flake.nix +++ b/flake.nix @@ -1,8 +1,6 @@ { inputs = { - import-tree.url = "github:vic/import-tree"; - rrvsh-nixpkgs.url = "github:rrvsh/nixpkgs/librechat-module"; crane.url = "github:ipetkov/crane"; disko.inputs.nixpkgs.follows = "nixpkgs"; disko.url = "github:nix-community/disko"; @@ -15,10 +13,9 @@ home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.url = "github:nix-community/home-manager"; impermanence.url = "github:nix-community/impermanence"; + import-tree.url = "github:vic/import-tree"; mnw.url = "github:Gerg-L/mnw"; - nil.inputs.flake-utils.follows = "flake-utils"; nil.inputs.nixpkgs.follows = "nixpkgs"; - nil.inputs.rust-overlay.follows = "rust-overlay"; nil.url = "github:oxalica/nil"; nix-index-database.inputs.nixpkgs.follows = "nixpkgs"; nix-index-database.url = "github:nix-community/nix-index-database"; @@ -38,6 +35,7 @@ python-flexseal.inputs.flake-utils.follows = "flake-utils"; python-flexseal.inputs.nixpkgs.follows = "nixpkgs"; python-flexseal.url = "github:Janrupf/python-flexseal"; + rrvsh-nixpkgs.url = "github:rrvsh/nixpkgs/librechat-module"; rust-overlay.inputs.nixpkgs.follows = "nixpkgs"; rust-overlay.url = "github:oxalica/rust-overlay"; snowfall-lib.inputs.flake-compat.follows = "flake-compat"; @@ -49,12 +47,12 @@ stable-diffusion-webui-nix.inputs.flake-utils.follows = "flake-utils"; stable-diffusion-webui-nix.inputs.nixpkgs.follows = "nixpkgs"; stable-diffusion-webui-nix.inputs.python-flexseal.follows = "python-flexseal"; - stable-diffusion-webui-nix.url = "github:rrvsh/stable-diffusion-webui-nix/add-forge-module"; + stable-diffusion-webui-nix.url = "github:janrupf/stable-diffusion-webui-nix"; stylix.inputs.flake-compat.follows = "flake-compat"; stylix.inputs.flake-parts.follows = "flake-parts"; - stylix.inputs.nur.follows = "nur"; stylix.inputs.home-manager.follows = "home-manager"; stylix.inputs.nixpkgs.follows = "nixpkgs"; + stylix.inputs.nur.follows = "nur"; stylix.inputs.systems.follows = "systems"; stylix.url = "github:nix-community/stylix"; systems.url = "github:nix-systems/default"; From 9c4fd694200afbb3244980df8461a0ef94bdfd7b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 10:18:25 +0800 Subject: [PATCH 110/373] feat(nixos): move smb credentials to server module and add librechat secrets --- modules/nixos/default.nix | 29 +++++-------------- modules/nixos/server/default.nix | 29 +++++++++---------- .../server/web-apps/librechat/default.nix | 6 ++++ secrets/secrets.yaml | 5 ++-- systems/x86_64-linux/common.nix | 4 +-- 5 files changed, 30 insertions(+), 43 deletions(-) diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index ef35391..dca611a 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -1,8 +1,7 @@ { - inputs, lib, config, - pkgs, + system, ... }: let @@ -56,22 +55,21 @@ in "/var/lib/systemd" "/var/lib/nixos" ]; - stylix = { - enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/atelier-cave.yaml"; - }; - nixpkgs.config.allowUnfree = true; - nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; + stylix.enable = true; + nixpkgs = { + hostPlatform = system; + config.allowUnfree = true; + }; nix.settings = { experimental-features = [ "nix-command" "flakes" "pipe-operators" ]; - trusted-users = [ "@wheel" ]; }; + system.stateVersion = "25.05"; # Did you read the comment? time.timeZone = "Asia/Singapore"; i18n.defaultLocale = "en_US.UTF-8"; users = { @@ -106,18 +104,6 @@ in "rafiq/hashedPassword".neededForUsers = true; "rafiq/personalEmailPassword" = { }; "rafiq/workEmailPassword" = { }; - "rafiq/oldSMBCredentials" = { }; - "librechat/creds_key" = { }; - "librechat/creds_iv" = { }; - "librechat/jwt_secret" = { }; - "librechat/jwt_refresh_secret" = { }; - "librechat/meili_master_key" = { }; - }; - templates = { - "smb-credentials".content = '' - username=rafiq - password=${config.sops.placeholder."rafiq/oldSMBCredentials"} - ''; }; }; environment.shellInit = # sh @@ -126,6 +112,5 @@ in export CVT_JIRA_KEY=$(sudo cat ${config.sops.secrets."keys/cvt-jira".path}) export CVT_JIRA_LINK=$(sudo cat ${config.sops.secrets."misc/cvt-jira-link".path}) ''; - system.stateVersion = "25.05"; # Did you read the comment? }; } diff --git a/modules/nixos/server/default.nix b/modules/nixos/server/default.nix index 1102c9c..a9592c5 100644 --- a/modules/nixos/server/default.nix +++ b/modules/nixos/server/default.nix @@ -1,16 +1,15 @@ +{ lib, config, ... }: { - lib, - config, - ... -}: -{ - options.server = { - mountHelios = lib.mkEnableOption ""; - }; + options.server.mountHelios = lib.mkEnableOption ""; - config = lib.mkMerge [ - (lib.mkIf config.server.mountHelios { - fileSystems."/media/helios/data" = { + config = lib.mkIf config.server.mountHelios { + sops.secrets."rafiq/oldSMBCredentials" = { }; + sops.templates."smb-credentials".content = '' + username=rafiq + password=${config.sops.placeholder."rafiq/oldSMBCredentials"} + ''; + fileSystems = { + "/media/helios/data" = { device = "//helios/data"; fsType = "cifs"; options = [ @@ -19,7 +18,7 @@ "x-systemd.mount-timeout=0" ]; }; - fileSystems."/media/helios/rafiqcloud" = { + "/media/helios/rafiqcloud" = { device = "//helios/rafiqcloud"; fsType = "cifs"; options = [ @@ -29,7 +28,7 @@ "credentials=${config.sops.templates."smb-credentials".path}" ]; }; - fileSystems."/media/helios/rafiqmedia" = { + "/media/helios/rafiqmedia" = { device = "//helios/rafiqmedia"; fsType = "cifs"; options = [ @@ -39,6 +38,6 @@ "credentials=${config.sops.templates."smb-credentials".path}" ]; }; - }) - ]; + }; + }; } diff --git a/modules/nixos/server/web-apps/librechat/default.nix b/modules/nixos/server/web-apps/librechat/default.nix index 1c51941..1c2cc78 100644 --- a/modules/nixos/server/web-apps/librechat/default.nix +++ b/modules/nixos/server/web-apps/librechat/default.nix @@ -23,6 +23,12 @@ mkWebApp { default = "mongodb://${config.hostname}:27017/LibreChat"; }; extraConfig = { + sops.secrets = { + "librechat/creds_key" = { }; + "librechat/creds_iv" = { }; + "librechat/jwt_secret" = { }; + "librechat/jwt_refresh_secret" = { }; + }; services.librechat = { enable = true; openFirewall = true; diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index 3f71b01..59f8da2 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -17,7 +17,6 @@ librechat: creds_iv: ENC[AES256_GCM,data:fbBD9RsuEHwDETwiYtAS9kBxgTy6zubrxHWpcuoEsR0=,iv:uZcwIfDPPn4XUf8IZkI29VH9CiKvEOlWuUaWgSjl1Kc=,tag:qbgiQU7bWSFjoGEwoptCpg==,type:str] jwt_secret: ENC[AES256_GCM,data:ZhDNIXrCaRWWfrlPxpBfnmeUluW0z72KGpQv9mGyf1kCCnfx3V2lPMm6QS6biajC+4oPVfgwqcXc4Lvs8OqU9g==,iv:1Ecj8fh+M5kw8cmVD96U6QgE7fNy9cbQV9v2Q305puc=,tag:U1ZglGWdTH1TGfcIIORMHQ==,type:str] jwt_refresh_secret: ENC[AES256_GCM,data:/4X6h51oRRaOg7UZ/zUcS1L8QyFnhsTYrz8D6R3ZP/tFAEMO/IfYJHHQQ8UtgKjAEwIVYcpIco8lUDhm06folw==,iv:02/LgoiMZ6MzBSd+JAi+iuF3dzqsVyqX6gQfWPY8sIc=,tag:5VrCh7ZKNJD3ynjcyQpVyg==,type:str] - meili_master_key: ENC[AES256_GCM,data:SFBALLqK1Gi5nvh5NyQF6Sr+BQdln4/SUSUGevK04eM=,iv:fElBxrcOCgi3ZO9Jtz2aA6q/S4liHjRpfxSg+LmSu+4=,tag:kx4k2DDm8Kt0KkQl63UMIQ==,type:str] sops: age: - recipient: age12l33pas8eptwjc7ewux3d8snyzfzwz0tn9qg5kw8le79fswmjgjqdjgyy6 @@ -29,7 +28,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-07T06:11:21Z" - mac: ENC[AES256_GCM,data:ntsLgImSp1j4a1D3KxnjxKJW7DHbel1PmuDlDUeMm3zPvqkzo5Hm/sAW/BlcPYsrZPRci1xfxTs2SqUClwgEBvewbrxvP0ELWH+Aq6IC6ckRQe1OUJKHpq+/BnPRyJOXmjjlxNPYoNxmnShDlbI/AaiNLupdNNpgyaobHyRZBUw=,iv:EW/ag6o8UhZbBGhr32VoKkZbM5a43rDbZTmRO2hshQ8=,tag:h4KYFxOQToNQ+hCH+q1Cgg==,type:str] + lastmodified: "2025-06-17T02:15:21Z" + mac: ENC[AES256_GCM,data:rFjFrXeRo5sMGQBR1UjLhJOGs0K/GVhKjhrbnyDq5JiUZRKnDns5JJfhBTwCZXcFXg8shDgj6P+vox+4Tl8PhadWV+s9OZVulvGGahZF39Msb7au7p+S77xVFw35QSB/d9LLEncO2WRyIm8tds18eJ8z3PBvGoad3DGcuLkYdlU=,iv:lUItY1Drr2e1rWLUw8JwdA42UVF1KZL+YMXZRSBIWtU=,tag:esr6v/lkHPcSkY/CP4g88Q==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 diff --git a/systems/x86_64-linux/common.nix b/systems/x86_64-linux/common.nix index 1ac9116..12cda14 100644 --- a/systems/x86_64-linux/common.nix +++ b/systems/x86_64-linux/common.nix @@ -9,12 +9,10 @@ in email = "rafiq@rrv.sh"; }; server.mountHelios = true; - + stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/atelier-cave.yaml"; users.defaultUserShell = zsh; programs = { zsh.enable = true; zsh.enableCompletion = true; }; - - nixpkgs.hostPlatform = "x86_64-linux"; } From bd8c3d6a3d1420bb703694c8814234e3bcf28af5 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 10:37:13 +0800 Subject: [PATCH 111/373] feat(editor): add vscode and snipmate snippet loader --- homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix | 6 ++++++ homes/x86_64-linux/rafiq/cli/editor/default.nix | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix index d23871f..7544ec6 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix @@ -1,6 +1,12 @@ +{ pkgs }: { luasnip = { enable = true; setupOpts.enable_autosnippets = true; + loaders = '' + require('luasnip.loaders.from_vscode').lazy_load() + require('luasnip.loaders.from_snipmate').lazy_load() + ''; + providers = with pkgs.vimPlugins; [ vim-snippets ]; }; } diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 0bbd2a1..8d6f23d 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -28,7 +28,7 @@ in notes = import ./_nvf/notes.nix; options = import ./_nvf/options.nix; notify = import ./_nvf/notify.nix; - snippets = import ./_nvf/snippets.nix; + snippets = import ./_nvf/snippets.nix { inherit pkgs; }; statusline = import ./_nvf/statusline.nix; treesitter = import ./_nvf/treesitter.nix; ui = import ./_nvf/ui.nix; From 81de39561abf133e69dc11f5a4b708f04e7ddaae Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 11:10:59 +0800 Subject: [PATCH 112/373] feat(nixos): add nvf cachix substituters and trusted keys --- flake.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/flake.nix b/flake.nix index 8d117cc..ea06307 100644 --- a/flake.nix +++ b/flake.nix @@ -81,6 +81,12 @@ sops-nix.nixosModules.sops stylix.nixosModules.stylix stable-diffusion-webui-nix.nixosModules.default + { + nix.settings.substituters = [ "https://nvf.cachix.org" ]; + nix.settings.trusted-public-keys = [ + "nvf.cachix.org-1:GMQWiUhZ6ux9D5CvFFMwnc2nFrUHTeGaXRlVBXo+naI=" + ]; + } ]; homes.modules = with inputs; [ impermanence.homeManagerModules.impermanence From d0714f8bff6bae6ccd2ea81aa1961302626ea1ce Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 13:26:25 +0800 Subject: [PATCH 113/373] feat(snippets): fucking finally get working snippets --- flake.lock | 11 ++-- flake.nix | 2 +- .../rafiq/cli/editor/_nvf/snippets.nix | 4 -- .../x86_64-linux/rafiq/cli/editor/default.nix | 58 ++++++++++++++++++- 4 files changed, 63 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index eb10125..b1627bc 100644 --- a/flake.lock +++ b/flake.lock @@ -474,15 +474,16 @@ ] }, "locked": { - "lastModified": 1749895904, - "narHash": "sha256-D7ZLf2ApiHMLlS6Imu7yHaB4Nbf9Hi8a8/64xOt6qOo=", - "owner": "notashelf", + "lastModified": 1750133435, + "narHash": "sha256-/LN8xFhCDHA3jOoYnhl2oCBAOAgUHis2kOVxlfA96p0=", + "owner": "rrvsh", "repo": "nvf", - "rev": "77a32f0961edbeda82e80c1bcd465cad21004fc7", + "rev": "50c881019c87b494b0ec6bb0a2f4b0e43af946c6", "type": "github" }, "original": { - "owner": "notashelf", + "owner": "rrvsh", + "ref": "luasnip-customsnippets-stg", "repo": "nvf", "type": "github" } diff --git a/flake.nix b/flake.nix index ea06307..bdb21fd 100644 --- a/flake.nix +++ b/flake.nix @@ -31,7 +31,7 @@ nvf.inputs.nil.follows = "nil"; nvf.inputs.nixpkgs.follows = "nixpkgs"; nvf.inputs.systems.follows = "systems"; - nvf.url = "github:notashelf/nvf"; + nvf.url = "github:rrvsh/nvf/luasnip-customsnippets-stg"; python-flexseal.inputs.flake-utils.follows = "flake-utils"; python-flexseal.inputs.nixpkgs.follows = "nixpkgs"; python-flexseal.url = "github:Janrupf/python-flexseal"; diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix index 7544ec6..e423539 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix @@ -3,10 +3,6 @@ luasnip = { enable = true; setupOpts.enable_autosnippets = true; - loaders = '' - require('luasnip.loaders.from_vscode').lazy_load() - require('luasnip.loaders.from_snipmate').lazy_load() - ''; providers = with pkgs.vimPlugins; [ vim-snippets ]; }; } diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 8d6f23d..57b9fa1 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -1,13 +1,67 @@ { lib, pkgs, ... }: let - inherit (lib) singleton; + inherit (lib) singleton replicate; + inherit (lib.strings) + concatMapStringsSep + removeSuffix + concatStrings + stringAsChars + ; + inherit (lib.attrsets) mapAttrsToList; + inherit (pkgs) writeTextFile; + indent = + n: s: + let + indentString = concatStrings (replicate n " "); + sep = "\n" + indentString; + in + indentString + stringAsChars (c: if c == "\n" then sep else c) (removeSuffix "\n" s); + in { home.sessionVariables.EDITOR = "nvim"; persistDirs = singleton ".local/share/nvf"; programs.nvf.enable = true; programs.nvf.settings.vim = { - startPlugins = [ pkgs.pantheon.snippets ]; + startPlugins = + [ pkgs.pantheon.snippets ] + ++ (mapAttrsToList + ( + name: value: + writeTextFile { + name = "${name}.snippets"; + text = concatMapStringsSep "\n" (x: '' + snippet ${x.trigger} ${x.description} + ${indent 2 x.body} + '') value; + destination = "/snippets/${name}.snippets"; + } + ) + { + all = [ + { + trigger = "if"; + description = ""; + body = "if $1 else $2"; + } + ]; + nix = [ + { + trigger = "mkOption"; + description = ""; + body = '' + mkOption { + type = $1; + default = $2; + description = $3; + example = $4; + } + ''; + } + ]; + } + ); + hideSearchHighlight = true; syntaxHighlighting = true; telescope.enable = true; From ad0d5ed0f8f35c274d7d284c0d033e712a6d05b9 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 13:45:19 +0800 Subject: [PATCH 114/373] fix(snippets): move snippets configuration to nvf module --- flake.lock | 6 +- flake.nix | 6 -- .../rafiq/cli/editor/_nvf/snippets.nix | 21 +++++++ .../x86_64-linux/rafiq/cli/editor/default.nix | 57 +------------------ 4 files changed, 26 insertions(+), 64 deletions(-) diff --git a/flake.lock b/flake.lock index b1627bc..7214994 100644 --- a/flake.lock +++ b/flake.lock @@ -474,11 +474,11 @@ ] }, "locked": { - "lastModified": 1750133435, - "narHash": "sha256-/LN8xFhCDHA3jOoYnhl2oCBAOAgUHis2kOVxlfA96p0=", + "lastModified": 1750138565, + "narHash": "sha256-rewitXfshw4O6U9Yeasz4TjBbIUE3zdNMimc8TYtnSg=", "owner": "rrvsh", "repo": "nvf", - "rev": "50c881019c87b494b0ec6bb0a2f4b0e43af946c6", + "rev": "2c74994c5c5da1f363e67bc9ecad7e73c48d2208", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index bdb21fd..42a60a2 100644 --- a/flake.nix +++ b/flake.nix @@ -81,12 +81,6 @@ sops-nix.nixosModules.sops stylix.nixosModules.stylix stable-diffusion-webui-nix.nixosModules.default - { - nix.settings.substituters = [ "https://nvf.cachix.org" ]; - nix.settings.trusted-public-keys = [ - "nvf.cachix.org-1:GMQWiUhZ6ux9D5CvFFMwnc2nFrUHTeGaXRlVBXo+naI=" - ]; - } ]; homes.modules = with inputs; [ impermanence.homeManagerModules.impermanence diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix index e423539..de3959b 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix @@ -4,5 +4,26 @@ enable = true; setupOpts.enable_autosnippets = true; providers = with pkgs.vimPlugins; [ vim-snippets ]; + customSnippets.snipmate = { + all = [ + { + trigger = "if"; + body = "if $1 else $2"; + } + ]; + nix = [ + { + trigger = "mkOption"; + body = '' + mkOption { + type = $1; + default = $2; + description = $3; + example = $4; + } + ''; + } + ]; + }; }; } diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 57b9fa1..9551e11 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -1,66 +1,13 @@ { lib, pkgs, ... }: let - inherit (lib) singleton replicate; - inherit (lib.strings) - concatMapStringsSep - removeSuffix - concatStrings - stringAsChars - ; - inherit (lib.attrsets) mapAttrsToList; - inherit (pkgs) writeTextFile; - indent = - n: s: - let - indentString = concatStrings (replicate n " "); - sep = "\n" + indentString; - in - indentString + stringAsChars (c: if c == "\n" then sep else c) (removeSuffix "\n" s); - + inherit (lib) singleton; in { home.sessionVariables.EDITOR = "nvim"; persistDirs = singleton ".local/share/nvf"; programs.nvf.enable = true; programs.nvf.settings.vim = { - startPlugins = - [ pkgs.pantheon.snippets ] - ++ (mapAttrsToList - ( - name: value: - writeTextFile { - name = "${name}.snippets"; - text = concatMapStringsSep "\n" (x: '' - snippet ${x.trigger} ${x.description} - ${indent 2 x.body} - '') value; - destination = "/snippets/${name}.snippets"; - } - ) - { - all = [ - { - trigger = "if"; - description = ""; - body = "if $1 else $2"; - } - ]; - nix = [ - { - trigger = "mkOption"; - description = ""; - body = '' - mkOption { - type = $1; - default = $2; - description = $3; - example = $4; - } - ''; - } - ]; - } - ); + startPlugins = [ pkgs.pantheon.snippets ]; hideSearchHighlight = true; syntaxHighlighting = true; From 6eb6bb110685cb143e79d1121a5bf527a69c381e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 14:26:31 +0800 Subject: [PATCH 115/373] build(flake.lock): update flake inputs to reflect nvf repo changes --- flake.lock | 8 ++++---- flake.nix | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/flake.lock b/flake.lock index 7214994..f7a3a92 100644 --- a/flake.lock +++ b/flake.lock @@ -474,16 +474,16 @@ ] }, "locked": { - "lastModified": 1750138565, - "narHash": "sha256-rewitXfshw4O6U9Yeasz4TjBbIUE3zdNMimc8TYtnSg=", + "lastModified": 1750141234, + "narHash": "sha256-fyRNZO8hxy8arbAK3UPzDQRDLAy9RH4Q5EC31AKfYjM=", "owner": "rrvsh", "repo": "nvf", - "rev": "2c74994c5c5da1f363e67bc9ecad7e73c48d2208", + "rev": "17cdfca39490b953fc451a7553a5b6589e290614", "type": "github" }, "original": { "owner": "rrvsh", - "ref": "luasnip-customsnippets-stg", + "ref": "luasnip-customsnippets", "repo": "nvf", "type": "github" } diff --git a/flake.nix b/flake.nix index 42a60a2..aa50b5c 100644 --- a/flake.nix +++ b/flake.nix @@ -31,7 +31,7 @@ nvf.inputs.nil.follows = "nil"; nvf.inputs.nixpkgs.follows = "nixpkgs"; nvf.inputs.systems.follows = "systems"; - nvf.url = "github:rrvsh/nvf/luasnip-customsnippets-stg"; + nvf.url = "github:rrvsh/nvf/luasnip-customsnippets"; python-flexseal.inputs.flake-utils.follows = "flake-utils"; python-flexseal.inputs.nixpkgs.follows = "nixpkgs"; python-flexseal.url = "github:Janrupf/python-flexseal"; From c8726325b96751582cea832074ce24abb5038533 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 17 Jun 2025 18:25:54 +0800 Subject: [PATCH 116/373] docs: add nixos install tmpdir note --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index d42a44f..add70a3 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,10 @@ sudo passwd deploy --user "rafiq" --ip "10.10.0.102" --hostname "apollo" ``` +### From a Local NixOS Installer + +The installation may run out of space when installing from an install ISO. In that case, use Disko to format the drives first, then create a `/mnt/tmp` directory and set it as TMPDIR for nixos-install. + # Impermanence System and user state is stored under /persist. Anything not declared under From 506fdf8ad93b6e2daf14e0c1d4f297d5bc460c2e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 18 Jun 2025 02:32:47 +0800 Subject: [PATCH 117/373] build(flake.lock): update flake inputs to reflect nvf repo changes --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index f7a3a92..69a62bb 100644 --- a/flake.lock +++ b/flake.lock @@ -474,11 +474,11 @@ ] }, "locked": { - "lastModified": 1750141234, - "narHash": "sha256-fyRNZO8hxy8arbAK3UPzDQRDLAy9RH4Q5EC31AKfYjM=", + "lastModified": 1750184939, + "narHash": "sha256-kbKV8EJjyEEiAL03pQk4k1dUn5VRjYzI0FyDoaPchNc=", "owner": "rrvsh", "repo": "nvf", - "rev": "17cdfca39490b953fc451a7553a5b6589e290614", + "rev": "7f1acefe918072d9567ac3541ca67581f4c4c02e", "type": "github" }, "original": { From d26df1fafa49ed9b271ad7bfdfb4c20227cb39a3 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 18 Jun 2025 03:24:50 +0800 Subject: [PATCH 118/373] feat(mattermost): add matterbridge integration to mattermost module --- .../server/web-apps/mattermost/default.nix | 33 +++++++++++++++++++ secrets/secrets.yaml | 6 ++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/modules/nixos/server/web-apps/mattermost/default.nix b/modules/nixos/server/web-apps/mattermost/default.nix index e695440..5467f5f 100644 --- a/modules/nixos/server/web-apps/mattermost/default.nix +++ b/modules/nixos/server/web-apps/mattermost/default.nix @@ -21,6 +21,7 @@ mkWebApp { (mkDir cfg.dataDir) ]; extraOptions = { + teamName = mkStrOption; configDir = mkStrOption // { default = "/etc/mattermost"; }; @@ -49,6 +50,38 @@ mkWebApp { host = "0.0.0.0"; siteUrl = "https://${cfg.domain}"; }; + services.matterbridge = { + enable = true; + inherit (upstreamCfg) user group; + configPath = config.sops.templates."matterbridge-conf".path; + }; + sops.secrets."matterbridge/mattermost-password" = { }; + sops.templates."matterbridge-conf" = { + owner = upstreamCfg.user; + content = # toml + '' + [[gateway]] + name="gateway1" + enable=true + + [[gateway.inout]] + account="mattermost.${config.hostname}" + channel="matterbridge" + + [mattermost.${config.hostname}] + Server="${cfg.domain}" + Team="${cfg.teamName}" + Login="matterbridge" + Password="${config.sops.placeholder."matterbridge/mattermost-password"}" + RemoteNickFormat="[{PROTOCOL}] <{NICK}> " + PrefixMessagesWithNick=true + PreserveThreading=true + ''; + }; + services.nginx.virtualHosts.${cfg.domain}.locations."~ /api/v[0-9]+/(users/)?websocket$" = { + proxyPass = "http://${config.hostname}:${toString cfg.port}"; + proxyWebsockets = true; + }; services.postgresql = { ensureDatabases = singleton upstreamCfg.database.name; ensureUsers = singleton { diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index 59f8da2..7854d39 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -17,6 +17,8 @@ librechat: creds_iv: ENC[AES256_GCM,data:fbBD9RsuEHwDETwiYtAS9kBxgTy6zubrxHWpcuoEsR0=,iv:uZcwIfDPPn4XUf8IZkI29VH9CiKvEOlWuUaWgSjl1Kc=,tag:qbgiQU7bWSFjoGEwoptCpg==,type:str] jwt_secret: ENC[AES256_GCM,data:ZhDNIXrCaRWWfrlPxpBfnmeUluW0z72KGpQv9mGyf1kCCnfx3V2lPMm6QS6biajC+4oPVfgwqcXc4Lvs8OqU9g==,iv:1Ecj8fh+M5kw8cmVD96U6QgE7fNy9cbQV9v2Q305puc=,tag:U1ZglGWdTH1TGfcIIORMHQ==,type:str] jwt_refresh_secret: ENC[AES256_GCM,data:/4X6h51oRRaOg7UZ/zUcS1L8QyFnhsTYrz8D6R3ZP/tFAEMO/IfYJHHQQ8UtgKjAEwIVYcpIco8lUDhm06folw==,iv:02/LgoiMZ6MzBSd+JAi+iuF3dzqsVyqX6gQfWPY8sIc=,tag:5VrCh7ZKNJD3ynjcyQpVyg==,type:str] +matterbridge: + mattermost-password: ENC[AES256_GCM,data:sMk4M2gADl1iPA7XEH1/D3sw,iv:YnTYTo0NVJVLtS/uhaodoCuyDqJf6IKCojKFljKSFCE=,tag:8vEK0RyxopiPUcML6hwqpg==,type:str] sops: age: - recipient: age12l33pas8eptwjc7ewux3d8snyzfzwz0tn9qg5kw8le79fswmjgjqdjgyy6 @@ -28,7 +30,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-17T02:15:21Z" - mac: ENC[AES256_GCM,data:rFjFrXeRo5sMGQBR1UjLhJOGs0K/GVhKjhrbnyDq5JiUZRKnDns5JJfhBTwCZXcFXg8shDgj6P+vox+4Tl8PhadWV+s9OZVulvGGahZF39Msb7au7p+S77xVFw35QSB/d9LLEncO2WRyIm8tds18eJ8z3PBvGoad3DGcuLkYdlU=,iv:lUItY1Drr2e1rWLUw8JwdA42UVF1KZL+YMXZRSBIWtU=,tag:esr6v/lkHPcSkY/CP4g88Q==,type:str] + lastmodified: "2025-06-17T19:11:07Z" + mac: ENC[AES256_GCM,data:EVDPzk2P284ULwMx/hCQeP4eehIiqx5OxhNDc17KhjRv19iPUjzhX7/SQy+r34ZfiKSFnB2W3zmhl6JtGqme10v4xZDT+D5wBLrYU7h4ylht65iDo0Eaw38TNLXPNqfNlKWqTcpgvMpez26CdL/7v3bUKU0aLYX0HkVxl2CQt5g=,iv:gujsDVgpH7RajOliQxL7Unkm24Xqp7BEeYtUMyXq2oc=,tag:KdKXPJ4cF2myFe4vJ1/YnQ==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From 50e0d971ae2e3d64c58476a3937b8ccae4b91e3f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 18 Jun 2025 03:33:42 +0800 Subject: [PATCH 119/373] feat(apollo): remove mattermost module from apollo system config --- systems/x86_64-linux/apollo/default.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 0bf7a22..79f9ac3 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -36,11 +36,6 @@ forgejo.domain = "git.rrv.sh"; glance.enable = true; glance.domain = "glance.bwfiq.com"; - mattermost = { - enable = true; - domain = "mm.bwfiq.com"; - extraCfg.siteName = "pantheon"; - }; }; web-servers = { enableSSL = true; From 3b5eefe45679daabacf1f004bac44e23c3526cc3 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 18 Jun 2025 20:51:19 +0800 Subject: [PATCH 120/373] feat(editor): remove standalone snippets package, move config to nvf module --- flake.lock | 6 ++-- .../rafiq/cli/editor/_nvf/snippets.nix | 28 +++++++++---------- .../x86_64-linux/rafiq/cli/editor/default.nix | 2 -- packages/snippets/default.nix | 8 ------ packages/snippets/package.json | 15 ---------- packages/snippets/snippets/nix.json | 20 ------------- 6 files changed, 16 insertions(+), 63 deletions(-) delete mode 100644 packages/snippets/default.nix delete mode 100644 packages/snippets/package.json delete mode 100644 packages/snippets/snippets/nix.json diff --git a/flake.lock b/flake.lock index 69a62bb..45c559f 100644 --- a/flake.lock +++ b/flake.lock @@ -474,11 +474,11 @@ ] }, "locked": { - "lastModified": 1750184939, - "narHash": "sha256-kbKV8EJjyEEiAL03pQk4k1dUn5VRjYzI0FyDoaPchNc=", + "lastModified": 1750247856, + "narHash": "sha256-+fGlDHq+4RoURurxUFrSBtHN81EZq0qk1Xn9+7ShmfM=", "owner": "rrvsh", "repo": "nvf", - "rev": "7f1acefe918072d9567ac3541ca67581f4c4c02e", + "rev": "62494c01644e199c3b31aa617e67adad49a6d56e", "type": "github" }, "original": { diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix index de3959b..247b510 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix @@ -5,23 +5,21 @@ setupOpts.enable_autosnippets = true; providers = with pkgs.vimPlugins; [ vim-snippets ]; customSnippets.snipmate = { - all = [ - { - trigger = "if"; - body = "if $1 else $2"; - } - ]; nix = [ { - trigger = "mkOption"; - body = '' - mkOption { - type = $1; - default = $2; - description = $3; - example = $4; - } - ''; + trigger = "mod"; + description = "empty module"; + body = # nix + '' + {config, lib}: + let + cfg = config.$1; + in + { + options.$1 = { $2 }; + config = $3; + } + ''; } ]; }; diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 9551e11..5862e9d 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -7,8 +7,6 @@ in persistDirs = singleton ".local/share/nvf"; programs.nvf.enable = true; programs.nvf.settings.vim = { - startPlugins = [ pkgs.pantheon.snippets ]; - hideSearchHighlight = true; syntaxHighlighting = true; telescope.enable = true; diff --git a/packages/snippets/default.nix b/packages/snippets/default.nix deleted file mode 100644 index af28023..0000000 --- a/packages/snippets/default.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: -let - inherit (pkgs.vimUtils) buildVimPlugin; -in -buildVimPlugin { - name = "snippets"; - src = ./.; -} diff --git a/packages/snippets/package.json b/packages/snippets/package.json deleted file mode 100644 index 8b8d648..0000000 --- a/packages/snippets/package.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "snippets", - "engines": { - "vscode": "^1.11.0" - }, - "contributes": { - "snippets": [ - { - "language": "nix", - "path": "./snippets/nix.json" - } - ] - } -} - diff --git a/packages/snippets/snippets/nix.json b/packages/snippets/snippets/nix.json deleted file mode 100644 index 7d0a808..0000000 --- a/packages/snippets/snippets/nix.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "module": { - "prefix": "mod", - "body": [ - "{ config, lib, ... }:", - "let", - " inherit (lib) mkIf mkEnableOption;", - " cfg = config.$1;", - "in", - "{", - " options.$1 = {", - " enable = mkEnableOption \"$2\";", - " $3", - " };", - " config = mkIf cfg.enable {$4};", - "}" - ], - "description": "empty module" - } -} From 32a4144c42bde88ee39eb455b5da09b43c88d0d5 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 18 Jun 2025 21:05:48 +0800 Subject: [PATCH 121/373] feat(nixos): add configurationLimit option to systemd-boot --- lib/default.nix | 6 ++++ modules/nixos/machine/bootloader/default.nix | 34 ++++++++++---------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/lib/default.nix b/lib/default.nix index 760f52c..087cab9 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -19,6 +19,12 @@ rec { type = lib.types.attrs; default = { }; }; + mkIntOption = + default: + lib.mkOption { + type = lib.types.int; + inherit default; + }; mkStrOption = lib.mkOption { type = lib.types.str; default = ""; diff --git a/modules/nixos/machine/bootloader/default.nix b/modules/nixos/machine/bootloader/default.nix index 9fc63fb..b5cedea 100644 --- a/modules/nixos/machine/bootloader/default.nix +++ b/modules/nixos/machine/bootloader/default.nix @@ -4,27 +4,27 @@ ... }: let - inherit (lib.pantheon) mkStrOption; + inherit (lib.pantheon) mkIntOption mkStrOption; cfg = config.machine.bootloader; in { options.machine.bootloader = { type = mkStrOption; + configurationLimit = mkIntOption 5; + }; + config.boot = { + initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" + ]; + loader.efi.canTouchEfiVariables = true; + loader.systemd-boot = { + enable = cfg.type == "systemd-boot"; + inherit (cfg) configurationLimit; + }; }; - config = lib.mkMerge [ - { - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - "ahci" - "usbhid" - "usb_storage" - "sd_mod" - ]; - boot.loader.efi.canTouchEfiVariables = true; - } - (lib.mkIf (config.machine.bootloader.type == "systemd-boot") { - boot.loader.systemd-boot.enable = true; - }) - ]; } From 335cf06e594f13510d6cb5fe0430491cb977163a Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 18 Jun 2025 21:22:38 +0800 Subject: [PATCH 122/373] feat(cli): add `windows` alias to reboot into Windows --- homes/x86_64-linux/rafiq/cli/utilities/misc.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix index 57e073e..3bff1f3 100644 --- a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix +++ b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix @@ -31,6 +31,7 @@ }; home = { shellAliases = { + windows = "systemctl reboot --boot-loader-entry=auto-windows"; v = "nvim"; e = "edit"; cd = "z"; From 5ef754ecc4b1356eab04e2a9624a8fb0012501ee Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 05:38:19 +0800 Subject: [PATCH 123/373] feat(nixos): enable nix-ld and add empty libraries list --- systems/x86_64-linux/common.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/systems/x86_64-linux/common.nix b/systems/x86_64-linux/common.nix index 12cda14..618f952 100644 --- a/systems/x86_64-linux/common.nix +++ b/systems/x86_64-linux/common.nix @@ -14,5 +14,9 @@ in programs = { zsh.enable = true; zsh.enableCompletion = true; + nix-ld = { + enable = true; + libraries = with pkgs; [ ]; + }; }; } From fad78517c9f4e51c3532ab1f55e76fd98a2e9bae Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 06:01:50 +0800 Subject: [PATCH 124/373] feat(vesktop): enable vesktop and add empty settings --- homes/x86_64-linux/rafiq/desktop/misc.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/homes/x86_64-linux/rafiq/desktop/misc.nix b/homes/x86_64-linux/rafiq/desktop/misc.nix index ecac1d3..1abb7a0 100644 --- a/homes/x86_64-linux/rafiq/desktop/misc.nix +++ b/homes/x86_64-linux/rafiq/desktop/misc.nix @@ -8,6 +8,13 @@ ]; programs = { obs-studio.enable = true; + vesktop = { + enable = true; + # https://github.com/Vencord/Vesktop/blob/main/src/shared/settings.d.ts + settings = { }; + # https://github.com/Vendicated/Vencord/blob/main/src/api/Settings.ts + vencord.settings = { }; + }; thunderbird.enable = true; thunderbird.profiles.rafiq.isDefault = true; }; From aac18c1eca4a3302e6665f35b6d99dfd5635ab7d Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 06:32:51 +0800 Subject: [PATCH 125/373] feat(editor): add harpoon mappings and setup options --- homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix index a664c27..2dc94ac 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix @@ -1,5 +1,9 @@ { harpoon = { enable = true; + mappings.listMarks = "hl"; + mappings.markFile = "hm"; + setupOpts.defaults.save_on_toggle = true; + setupOpts.defaults.sync_on_ui_close = true; }; } From fe43d32cd26aa42d54dd85bc8692e215f6c1ab5d Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 10:41:20 +0800 Subject: [PATCH 126/373] feat(editor): configure otter-nvim with setup options for buffers and whitespace --- homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix index f6810b7..d9ff7f2 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix @@ -5,5 +5,12 @@ lightbulb.enable = true; lspkind.enable = true; null-ls.enable = true; - otter-nvim.enable = true; + otter-nvim = { + enable = true; + setupOpts = { + buffers.set_filetype = true; + buffers.write_to_disk = true; + handle_leading_whitespace = true; + }; + }; } From 918b88e85b6a0727a143fffde024be8eed65704f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 10:58:59 +0800 Subject: [PATCH 127/373] ``` feat(editor): add luasnip loaders option to nvf module ``` --- homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix index 247b510..48838cf 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix @@ -4,6 +4,7 @@ enable = true; setupOpts.enable_autosnippets = true; providers = with pkgs.vimPlugins; [ vim-snippets ]; + loaders = "require('luasnip.loaders.from_vscode').lazy_load()"; customSnippets.snipmate = { nix = [ { From 2ff647abef918753b26bcc771bd7eeb0fb885cac Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 11:42:46 +0800 Subject: [PATCH 128/373] feat: update README with completed forgejo task --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index add70a3..742164b 100644 --- a/README.md +++ b/README.md @@ -6,13 +6,18 @@ - [ ] Migrate immich to apollo, point to helios - [x] Migrate LibreChat to apollo, maintain db - [ ] Figure out wakapi -- [ ] Add forgejo +- [x] Add forgejo - [ ] Add simple blog ## Versions - 1.0.0 - - Replicate old zagreus wholly + - Setup desktop as hypervisor with nixos and win11 + - Spare drive as steam library + - GPU passthrough to either system + - Always running, VMs spun down except when in use + - Apollo as hypervisor + - VMs for docker host, home-assistant, bare metal or containerised services - Automated backups for home and state directories - Ability to build VMs of all systems and implement integration tests - Staging VMs for ad-hoc testing @@ -26,8 +31,6 @@ - helios as file and db server, apollo as services and reverse proxy - 0.3.0 - Integration tests for all services - - Set directory permissions properly for impermanence - - Easier way to add proxyPass, web server independent - Migrate services from helios # Modules From f11377e0ca969e66286c3a8872b7988557276914 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 20:13:00 +0800 Subject: [PATCH 129/373] feat(nixos): add podman module --- .../machine/virtualisation/podman/default.nix | 21 +++++++++++++++++++ systems/x86_64-linux/nemesis/default.nix | 1 + 2 files changed, 22 insertions(+) create mode 100644 modules/nixos/machine/virtualisation/podman/default.nix diff --git a/modules/nixos/machine/virtualisation/podman/default.nix b/modules/nixos/machine/virtualisation/podman/default.nix new file mode 100644 index 0000000..decd79d --- /dev/null +++ b/modules/nixos/machine/virtualisation/podman/default.nix @@ -0,0 +1,21 @@ +{ config, lib, ... }: +let + inherit (lib) mkEnableOption mkIf; + cfg = config.machine.virtualisation.podman; +in +{ + options.machine.virtualisation.podman = { + enable = mkEnableOption ""; + }; + config = mkIf cfg.enable { + virtualisation = { + containers.enable = true; + podman = { + enable = true; + dockerCompat = true; + defaultNetwork.settings.dns_enabled = true; + }; + }; + users.users."${config.mainUser.name}".extraGroups = [ "podman" ]; + }; +} diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index b35755f..111ad76 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -14,6 +14,7 @@ drive = "/dev/disk/by-id/nvme-CT2000P3SSD8_2325E6E77434"; ephemeralRoot = true; }; + virtualisation.podman.enable = true; }; desktop = { From 386c7b18ef6d09c7119f9e0089dbaae4ead88168 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 20:16:28 +0800 Subject: [PATCH 130/373] fix(nvf/snippets): add required ... to lambda params --- homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix index 48838cf..8c7c199 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/snippets.nix @@ -12,7 +12,7 @@ description = "empty module"; body = # nix '' - {config, lib}: + {config, lib, ...}: let cfg = config.$1; in From 3ca4bd3f4b52dc2526bc3849524bfce5201b5699 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 19 Jun 2025 23:06:27 +0800 Subject: [PATCH 131/373] feat(nixos): add distrobox module --- .../virtualisation/distrobox/default.nix | 22 +++++++++++++++++++ .../machine/virtualisation/podman/default.nix | 13 ++++++++++- systems/x86_64-linux/nemesis/default.nix | 2 +- 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 modules/nixos/machine/virtualisation/distrobox/default.nix diff --git a/modules/nixos/machine/virtualisation/distrobox/default.nix b/modules/nixos/machine/virtualisation/distrobox/default.nix new file mode 100644 index 0000000..b570fdb --- /dev/null +++ b/modules/nixos/machine/virtualisation/distrobox/default.nix @@ -0,0 +1,22 @@ +{ + config, + lib, + pkgs, + ... +}: +let + inherit (lib) mkIf mkEnableOption singleton; + cfg = config.machine.virtualisation.distrobox; +in +{ + options.machine.virtualisation.distrobox = { + enable = mkEnableOption ""; + }; + config = mkIf cfg.enable { + machine.virtualisation.podman.enable = true; + home-manager.sharedModules = singleton { + home.packages = singleton pkgs.distrobox; + # persistDirs = [ ".local/share/containers" ]; + }; + }; +} diff --git a/modules/nixos/machine/virtualisation/podman/default.nix b/modules/nixos/machine/virtualisation/podman/default.nix index decd79d..e130e17 100644 --- a/modules/nixos/machine/virtualisation/podman/default.nix +++ b/modules/nixos/machine/virtualisation/podman/default.nix @@ -16,6 +16,17 @@ in defaultNetwork.settings.dns_enabled = true; }; }; - users.users."${config.mainUser.name}".extraGroups = [ "podman" ]; + users.users."${config.mainUser.name}" = { + extraGroups = [ "podman" ]; + # https://wiki.nixos.org/wiki/Distrobox + # subGidRanges = singleton { + # count = 65536; + # startGid = 1000; + # }; + # subUidRanges = singleton { + # count = 65536; + # startUid = 1000; + # }; + }; }; } diff --git a/systems/x86_64-linux/nemesis/default.nix b/systems/x86_64-linux/nemesis/default.nix index 111ad76..8a689a1 100644 --- a/systems/x86_64-linux/nemesis/default.nix +++ b/systems/x86_64-linux/nemesis/default.nix @@ -14,7 +14,7 @@ drive = "/dev/disk/by-id/nvme-CT2000P3SSD8_2325E6E77434"; ephemeralRoot = true; }; - virtualisation.podman.enable = true; + virtualisation.distrobox.enable = true; }; desktop = { From 6c1cd15244b108a7be70f26d2749d03151a12aed Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 20 Jun 2025 04:20:14 +0800 Subject: [PATCH 132/373] ``` feat(nixos): add origin_pin_allowed to sunshine settings ``` --- modules/nixos/desktop/services/sunshine/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/nixos/desktop/services/sunshine/default.nix b/modules/nixos/desktop/services/sunshine/default.nix index 000131a..9331030 100644 --- a/modules/nixos/desktop/services/sunshine/default.nix +++ b/modules/nixos/desktop/services/sunshine/default.nix @@ -14,6 +14,7 @@ in openFirewall = true; settings = { sunshine_name = config.hostname; + origin_pin_allowed = "wan"; origin_web_ui_allowed = "wan"; }; applications = { }; From 4a880481df5689971524a8b95b7f536b29e82ba2 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 20 Jun 2025 04:43:09 +0800 Subject: [PATCH 133/373] feat(nixos/forgejo): add sshPort option and enable ssh server --- modules/nixos/server/web-apps/forgejo/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix index a59b121..7f6cd9a 100644 --- a/modules/nixos/server/web-apps/forgejo/default.nix +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -1,6 +1,7 @@ { config, lib, ... }: let inherit (lib) singleton; + inherit (lib.pantheon) mkPortOption; inherit (lib.pantheon.modules) mkWebApp; cfg = config.server.web-apps.forgejo; upstreamCfg = config.services.forgejo; @@ -13,6 +14,9 @@ mkWebApp { directory = upstreamCfg.stateDir; inherit (upstreamCfg) user group; }; + extraOptions = { + sshPort = mkPortOption 2222; + }; extraConfig = { services.forgejo = { enable = true; @@ -21,7 +25,10 @@ mkWebApp { DOMAIN = cfg.domain; ROOT_URL = "https://${cfg.domain}/"; HTTP_PORT = cfg.port; + START_SSH_SERVER = true; + SSH_PORT = cfg.sshPort; }; + repository.USE_COMPAT_SSH_URI = false; "repository.signing".FORMAT = "ssh"; }; }; From 70a787f89c8520dab58af3b4cb38e63d31915f62 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 20 Jun 2025 07:38:45 +0800 Subject: [PATCH 134/373] fix(nixos/sd-webui-forge): enable listening by default --- modules/nixos/server/web-apps/sd-webui-forge/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nixos/server/web-apps/sd-webui-forge/default.nix b/modules/nixos/server/web-apps/sd-webui-forge/default.nix index 602bdd4..b14dc44 100644 --- a/modules/nixos/server/web-apps/sd-webui-forge/default.nix +++ b/modules/nixos/server/web-apps/sd-webui-forge/default.nix @@ -20,7 +20,7 @@ mkWebApp { }; services.sd-webui-forge = { enable = true; - listen = cfg.openFirewall; + listen = true; extraArgs = "--cuda-malloc"; }; }; From bfa119df31f2fabb2395d46d8a497433d14be218 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 20 Jun 2025 08:26:01 +0800 Subject: [PATCH 135/373] feat(nixos/forgejo): open firewall if enabled --- modules/nixos/server/web-apps/forgejo/default.nix | 3 ++- systems/x86_64-linux/apollo/default.nix | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix index 7f6cd9a..e7f4d9f 100644 --- a/modules/nixos/server/web-apps/forgejo/default.nix +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -1,6 +1,6 @@ { config, lib, ... }: let - inherit (lib) singleton; + inherit (lib) singleton optional; inherit (lib.pantheon) mkPortOption; inherit (lib.pantheon.modules) mkWebApp; cfg = config.server.web-apps.forgejo; @@ -18,6 +18,7 @@ mkWebApp { sshPort = mkPortOption 2222; }; extraConfig = { + networking.firewall.allowedTCPPorts = optional cfg.openFirewall cfg.sshPort; services.forgejo = { enable = true; settings = { diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 79f9ac3..8a7ca24 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -34,6 +34,7 @@ librechat.domain = "chat.bwfiq.com"; forgejo.enable = true; forgejo.domain = "git.rrv.sh"; + forgejo.openFirewall = true; glance.enable = true; glance.domain = "glance.bwfiq.com"; }; From aedb6d3cf60b6c61d6ebe7384eb02433cb78846f Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 13:51:38 +0800 Subject: [PATCH 136/373] feat(hyprland): replace launcher keybind with super --- .../rafiq/desktop/window-manager/_hyprland/keybinds.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix index 2efbca3..28d584b 100644 --- a/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix +++ b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix @@ -9,7 +9,6 @@ "SUPER, return, exec, uwsm app -- $TERMINAL $MULTIPLEXER" "SUPER, O, exec, uwsm app -- $BROWSER" "SUPER, Escape, exec, uwsm app -- $LOCKSCREEN" - "SUPER, space, exec, uwsm app -- $($LAUNCHER --launch-prefix=\"uwsm app -- \")" "SUPER, H, cyclenext, visible" "SUPER, L, cyclenext, visible prev" @@ -27,6 +26,10 @@ "$hypr, L, movetoworkspace, r+1" ]; + bindr = [ + "SUPER, Super_L, exec, uwsm app -- $($LAUNCHER --launch-prefix=\"uwsm app -- \")" + ]; + bindle = [ "SUPER, 6, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-" "SUPER, 7, exec, ${pkgs.playerctl}/bin/playerctl previous" From 0521bb516deef8ae82d61adf208609ddc684a848 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 14:29:16 +0800 Subject: [PATCH 137/373] feat(home): move starship config to its own module --- .../x86_64-linux/rafiq/cli/utilities/misc.nix | 16 ----------- .../rafiq/cli/utilities/starship.nix | 27 +++++++++++++++++++ 2 files changed, 27 insertions(+), 16 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/cli/utilities/starship.nix diff --git a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix index 3bff1f3..e725c39 100644 --- a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix +++ b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix @@ -12,22 +12,6 @@ enable = true; nix-direnv.enable = true; }; - starship = { - enable = true; - settings = { - add_newline = false; - format = '' - $directory$character - ''; - right_format = '' - $all - ''; - git_branch.format = "[$symbol$branch(:$remote_branch)]($style) "; - shlvl.disabled = false; - hostname.disabled = true; - username.disabled = true; - }; - }; }; home = { shellAliases = { diff --git a/homes/x86_64-linux/rafiq/cli/utilities/starship.nix b/homes/x86_64-linux/rafiq/cli/utilities/starship.nix new file mode 100644 index 0000000..3226d2f --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/utilities/starship.nix @@ -0,0 +1,27 @@ +{ lib, ... }: +let + inherit (lib.strings) concatStrings; +in +{ + programs.starship = { + enable = true; + settings = { + add_newline = false; + format = concatStrings [ + # First Line + ## Left Prompt + "$hostname$directory" + "$fill" + ## Right Prompt + "$all" + # Second Line + ## Left Prompt + "$character" + ]; + git_branch.format = "[$symbol$branch(:$remote_branch)]($style) "; + shlvl.disabled = false; + username.disabled = true; + fill.symbol = " "; + }; + }; +} From ce825fdc6caaefd704347087f1e77af55922b38a Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 14:31:42 +0800 Subject: [PATCH 138/373] feat(nvf): configure ruff and pyright for python, and prettierd for markdown --- .../rafiq/cli/editor/_nvf/languages.nix | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix index 2c8e0e1..cc3dd8c 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix @@ -9,16 +9,21 @@ go.enable = true; html.enable = true; lua.enable = true; - markdown.enable = true; - markdown.extensions.markview-nvim.enable = true; - markdown.format.type = "prettierd"; + markdown = { + enable = true; + extensions.markview-nvim.enable = true; + format.type = "prettierd"; + }; nix = { enable = true; format.type = "nixfmt"; lsp.server = "nil"; }; - python.enable = true; - python.lsp.server = "python-lsp-server"; + python = { + enable = true; + format.type = "ruff"; + lsp.server = "pyright"; + }; rust.enable = true; rust.crates.enable = true; ts.enable = true; From e0202a9f873920e8046ff758cce77a0af1ec8a89 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 14:55:00 +0800 Subject: [PATCH 139/373] feat(home): add uv.nvim plugin to nvf vim config --- homes/x86_64-linux/rafiq/cli/editor/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 5862e9d..9a149c2 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -7,6 +7,16 @@ in persistDirs = singleton ".local/share/nvf"; programs.nvf.enable = true; programs.nvf.settings.vim = { + lazy.plugins = { + "uv.nvim" = { + # TODO: upstream this + package = pkgs.vimPlugins.uv-nvim; + setupModule = "uv"; + setupOpts.picker_integration = true; + event = [ "BufEnter" ]; + after = "print('uv.nvim loaded')"; + }; + }; hideSearchHighlight = true; syntaxHighlighting = true; telescope.enable = true; From b3a5441e8b896e3f440d1809d14ab9318e14ecba Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 19:08:10 +0800 Subject: [PATCH 140/373] feat(nixos/databases): add alphastory db and user to postgresql --- modules/nixos/server/databases/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/nixos/server/databases/default.nix b/modules/nixos/server/databases/default.nix index b75fb66..726b449 100644 --- a/modules/nixos/server/databases/default.nix +++ b/modules/nixos/server/databases/default.nix @@ -41,8 +41,13 @@ in local all all trust # ipv4 - host all all 0.0.0.0/32 trust + host all all 0.0.0.0/0 trust ''; + ensureDatabases = singleton "alphastory"; + ensureUsers = singleton { + name = "alphastory"; + ensureDBOwnership = true; + }; }; }) (lib.mkIf cfg.mongodb.enable { From 5f7cfd5d247478b62058e4519c2d442739cd778b Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 19:28:55 +0800 Subject: [PATCH 141/373] feat(nixos/nginx): add pages option to nginx module --- .../server/web-servers/nginx/default.nix | 35 ++++++++++++++++++- systems/x86_64-linux/apollo/default.nix | 6 ++++ systems/x86_64-linux/apollo/root/index.html | 9 +++++ 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 systems/x86_64-linux/apollo/root/index.html diff --git a/modules/nixos/server/web-servers/nginx/default.nix b/modules/nixos/server/web-servers/nginx/default.nix index 4272d3a..d0d6cc8 100644 --- a/modules/nixos/server/web-servers/nginx/default.nix +++ b/modules/nixos/server/web-servers/nginx/default.nix @@ -8,7 +8,7 @@ let singleton ; inherit (lib.types) listOf submodule attrs; - inherit (lib.pantheon) mkStrOption mkRootDomain; + inherit (lib.pantheon) mkStrOption mkPathOption mkRootDomain; inherit (builtins) listToAttrs map; cfg = config.server.web-servers.nginx; sslCheck = good: bad: if config.server.web-servers.enableSSL then good else bad; @@ -21,6 +21,21 @@ let }; }; }; + pages = listToAttrs ( + map (page: { + name = page.domain; + value = { + addSSL = sslCheck true false; + useACMEHost = sslCheck (mkRootDomain page.domain) null; + acmeRoot = null; # needed for DNS validation + locations = { + "/" = { + inherit (page) root; + } // page.extraConfig; + } // page.locations; + }; + }) cfg.pages + ); proxyPasses = listToAttrs ( map (proxy: { name = proxy.source; @@ -46,6 +61,23 @@ in enableDefaultSink = mkEnableOption "" // { default = true; }; + pages = mkOption { + default = [ ]; + type = listOf (submodule { + options = { + domain = mkStrOption; + root = mkPathOption ""; + extraConfig = lib.mkOption { + type = attrs; + default = { }; + }; + locations = lib.mkOption { + type = attrs; + default = { }; + }; + }; + }); + }; proxies = mkOption { default = [ ]; type = listOf (submodule { @@ -80,6 +112,7 @@ in virtualHosts = mkMerge [ defaultSink proxyPasses + pages ]; }; }; diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 8a7ca24..f13b5ca 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -42,6 +42,12 @@ enableSSL = true; nginx = { enable = true; + pages = [ + { + domain = "rrv.sh"; + root = ./root; + } + ]; proxies = [ { source = "aenyrathia.wiki"; diff --git a/systems/x86_64-linux/apollo/root/index.html b/systems/x86_64-linux/apollo/root/index.html new file mode 100644 index 0000000..e33b981 --- /dev/null +++ b/systems/x86_64-linux/apollo/root/index.html @@ -0,0 +1,9 @@ + + + + rrv.sh + + +

TEST

+ + From c79de25dce98cc79ebdeb737259a3657ec90df70 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 19:39:44 +0800 Subject: [PATCH 142/373] feat(rrv.sh): add rrv.sh package and move website to package --- packages/rrv.sh/default.nix | 12 ++++++++++++ .../apollo/root => packages/rrv.sh}/index.html | 2 +- systems/x86_64-linux/apollo/default.nix | 3 ++- 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 packages/rrv.sh/default.nix rename {systems/x86_64-linux/apollo/root => packages/rrv.sh}/index.html (84%) diff --git a/packages/rrv.sh/default.nix b/packages/rrv.sh/default.nix new file mode 100644 index 0000000..8b2b852 --- /dev/null +++ b/packages/rrv.sh/default.nix @@ -0,0 +1,12 @@ +{ stdenv, ... }: +let + name = "rrv.sh"; + version = "0.0.1"; +in +stdenv.mkDerivation { + inherit name version; + src = ./.; + installPhase = '' + cp -r . $out + ''; +} diff --git a/systems/x86_64-linux/apollo/root/index.html b/packages/rrv.sh/index.html similarity index 84% rename from systems/x86_64-linux/apollo/root/index.html rename to packages/rrv.sh/index.html index e33b981..77b8ac7 100644 --- a/systems/x86_64-linux/apollo/root/index.html +++ b/packages/rrv.sh/index.html @@ -4,6 +4,6 @@ rrv.sh -

TEST

+

TESTES

diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index f13b5ca..6085744 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -1,5 +1,6 @@ { lib, + pkgs, ... }: { @@ -45,7 +46,7 @@ pages = [ { domain = "rrv.sh"; - root = ./root; + root = pkgs.pantheon."rrv.sh"; } ]; proxies = [ From 65e169e88b7f2686e3dac51bbb21abfac10fedda Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 20:01:33 +0800 Subject: [PATCH 143/373] feat(rrv.sh): add favicon to rrv.sh website --- packages/rrv.sh/favicon.ico | Bin 0 -> 5886 bytes packages/rrv.sh/index.html | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 packages/rrv.sh/favicon.ico diff --git a/packages/rrv.sh/favicon.ico b/packages/rrv.sh/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..57499ca78a4ac8717d6e8e03a31d4421e31da7ef GIT binary patch literal 5886 zcmZQzU}RuqNJtQ1U}Runcp=8XAjZJJpuxbvkifveaDV|M&%yu(LSPb12rw`(fG~*j z|Nno6Iq$wPJbQMJ!SdNVhNz?W7#x?pW4KzqhM_v@8-r%^6b47jXADb%ni-M|uQCWE zRWn!$OkofZfSCX?WfYHwz-S1JhQOc+0sasFiEzt*{tr-9S7SqAOsEJJia+#fJXF;u zUDf+oRGz7jl@)dA#(50xmb|krAKiOKr|uz=G+;OI=*w~&YUBp79`Jq=FAxo{pQR$kUkI- zFaC4p9a#QP$9XVKi1^WQ{saI2|L;$9^b=AFmVeRFbN*}OnKx%T2nIe_Jzq!9)X>n# zGiS~ar=H=($O9Su@a3Y~NAMaO%vIvm<~LqA-N2P?R$ zq@<)e=ggZE9UmC@Kk$NL8!V1W@GE_|qzZQOB_$;#r8#FF@SNyp_@vJZ5kytYz`*cT zDgLAqSUo7IX@Vk+r{k|uETmjM7bzG$x)0QSb8M|3M|q7hv@-IyyRfG;!scGbcJaI*z!U z7knr=M-G(OK*o1;oST4YHdN%ynPVwFXBq_s58AzFVBiNC-vRLmQ~@T%_vWCWprEj^ z;RpUNAp1HXxdBrlOoZ>{-Mg2KjqTt6aRI3(q@01_ZfIz1sIlOmGcGl2oIu7sNsR_#G zg!~(%U0z;ZzPsZLNc{x{f;I$cl$TeOm+#)bd#7e3sC03`A404*+ABK1R-8nr2Zb{( z49X(y<>loyCzWP`%qQdlkou1H@*O=Vm6Sm08CX`~k6}oj>gYH#NeNtyajjbAh08G@ zahUpZmy|%^!@#g=)v5&`2^^RQTuO9weBiwcRl$Wi_QVTQ38_&+eh+3XMC><0D+a5W$JKgh$>e2{;@ z4`cs87PtRk4-@|&!GK^hFx11ue;~2{Fu>IOdH#=qf&UL!(GTbU3=Hfuz&d_7{%2rp z<^Z!lF#c~~e!u}X^#enF1M>$4u!}x0$Tu+mfU(&Ru>XOW`h$V_0Q(OJ`ws&n1N#RE z8`Q(#e*ksS2L=ZI2AGE*Ft9PeJp6-!fdS^pKMV{In8EozU|NlQQFxbP` z4;YyL!_+r0F#m%EGy?-WEYSZkFtGoCs`l?sf@*l*uhr0P6 z0|SFS14R6P0|SG7BNF=oIIRBvKfu6X{{S3TV0Jw$_8u@u{Qn1aG$=s+LDl?VsQ>>5 n%KpRnAD&YFG5r7k4;DZT_5c4LgjxnN{0o%*2WlXcJ5neBxf5vU literal 0 HcmV?d00001 diff --git a/packages/rrv.sh/index.html b/packages/rrv.sh/index.html index 77b8ac7..cf567af 100644 --- a/packages/rrv.sh/index.html +++ b/packages/rrv.sh/index.html @@ -2,8 +2,9 @@ rrv.sh + -

TESTES

+

hi

From eab372bd11b78e6c4cd3d12b0f1a71e0dc32ec81 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 22 Jun 2025 23:47:49 +0800 Subject: [PATCH 144/373] feat(nvf): add avante-nvim ai assistant plugin --- .../rafiq/cli/editor/_nvf/assistant.nix | 22 +++++++++++++++++++ .../x86_64-linux/rafiq/cli/editor/default.nix | 1 + 2 files changed, 23 insertions(+) create mode 100644 homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix new file mode 100644 index 0000000..4a2fff1 --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix @@ -0,0 +1,22 @@ +{ + avante-nvim = { + enable = true; + setupOpts = { + provider = "gemini"; + auto_suggestions_provider = "gemini"; + auto_suggestions = true; + windows.ask.floating = true; + input = { + provider = "snacks"; + provider_opts.title = "Avante Input"; + provider_opts.icon = " "; + }; + mappings.suggestion = { + accept = ""; + next = ""; + prev = ""; + dismiss = ""; + }; + }; + }; +} diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 9a149c2..4f4c5ee 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -26,6 +26,7 @@ in git.enable = true; git.gitsigns.enable = false; autopairs.nvim-autopairs.enable = true; + assistant = import ./_nvf/assistant.nix; autocomplete = import ./_nvf/autocomplete.nix { inherit lib; }; binds = import ./_nvf/binds.nix; clipboard = import ./_nvf/clipboard.nix; From 8a4f136d027cb55453ac28fbc2471804dea3c772 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 23 Jun 2025 05:20:07 +0800 Subject: [PATCH 145/373] fix(nvf): remap harpoon mappings to use "mm" and "ml" --- homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix index 2dc94ac..65ab456 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/navigation.nix @@ -1,8 +1,8 @@ { harpoon = { enable = true; - mappings.listMarks = "hl"; - mappings.markFile = "hm"; + mappings.listMarks = "ml"; + mappings.markFile = "mm"; setupOpts.defaults.save_on_toggle = true; setupOpts.defaults.sync_on_ui_close = true; }; From 14881201ac02ff845eb0172fc01dd86a22504157 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 23 Jun 2025 05:30:34 +0800 Subject: [PATCH 146/373] feat(hyprland): update flake.lock and hyprland module to use hyprwm/Hyprland flake --- flake.lock | 442 +++++++++++++++++- flake.nix | 1 + .../window-manager/hyprland/default.nix | 17 +- 3 files changed, 451 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 45c559f..848630f 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,38 @@ { "nodes": { + "aquamarine": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750372185, + "narHash": "sha256-lVBKxd9dsZOH1fA6kSE5WNnt8e+09fN+NL/Q3BjTWHY=", + "owner": "hyprwm", + "repo": "aquamarine", + "rev": "7cef49d261cbbe537e8cb662485e76d29ac4cbca", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "aquamarine", + "type": "github" + } + }, "base16": { "inputs": { "fromYaml": "fromYaml" @@ -133,6 +166,22 @@ "type": "github" } }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": "nixpkgs-lib" @@ -213,7 +262,7 @@ "stylix", "flake-compat" ], - "gitignore": "gitignore", + "gitignore": "gitignore_2", "nixpkgs": [ "stylix", "nixpkgs" @@ -234,6 +283,28 @@ } }, "gitignore": { + "inputs": { + "nixpkgs": [ + "hyprland", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_2": { "inputs": { "nixpkgs": [ "stylix", @@ -292,6 +363,265 @@ "type": "github" } }, + "hyprcursor": { + "inputs": { + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1749155331, + "narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=", + "owner": "hyprwm", + "repo": "hyprcursor", + "rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprcursor", + "type": "github" + } + }, + "hyprgraphics": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750371717, + "narHash": "sha256-cNP+bVq8m5x2Rl6MTjwfQLCdwbVmKvTH7yqVc1SpiJM=", + "owner": "hyprwm", + "repo": "hyprgraphics", + "rev": "15c6f8f3a567fec9a0f732cd310a7ff456deef88", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprgraphics", + "type": "github" + } + }, + "hyprland": { + "inputs": { + "aquamarine": "aquamarine", + "hyprcursor": "hyprcursor", + "hyprgraphics": "hyprgraphics", + "hyprland-protocols": "hyprland-protocols", + "hyprland-qtutils": "hyprland-qtutils", + "hyprlang": "hyprlang", + "hyprutils": "hyprutils", + "hyprwayland-scanner": "hyprwayland-scanner", + "nixpkgs": "nixpkgs", + "pre-commit-hooks": "pre-commit-hooks", + "systems": "systems", + "xdph": "xdph" + }, + "locked": { + "lastModified": 1750589353, + "narHash": "sha256-+3W7HI8ZzVqhjaws8++TFaUX8JP2eq9Uzn/KHA/qr0U=", + "owner": "hyprwm", + "repo": "Hyprland", + "rev": "dd33128c2f127f39c30cca72addb1970b8936d07", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "Hyprland", + "type": "github" + } + }, + "hyprland-protocols": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1749046714, + "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", + "owner": "hyprwm", + "repo": "hyprland-protocols", + "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-protocols", + "type": "github" + } + }, + "hyprland-qt-support": { + "inputs": { + "hyprlang": [ + "hyprland", + "hyprland-qtutils", + "hyprlang" + ], + "nixpkgs": [ + "hyprland", + "hyprland-qtutils", + "nixpkgs" + ], + "systems": [ + "hyprland", + "hyprland-qtutils", + "systems" + ] + }, + "locked": { + "lastModified": 1749154592, + "narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=", + "owner": "hyprwm", + "repo": "hyprland-qt-support", + "rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-qt-support", + "type": "github" + } + }, + "hyprland-qtutils": { + "inputs": { + "hyprland-qt-support": "hyprland-qt-support", + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "hyprutils": [ + "hyprland", + "hyprland-qtutils", + "hyprlang", + "hyprutils" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750371812, + "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=", + "owner": "hyprwm", + "repo": "hyprland-qtutils", + "rev": "b13c7481e37856f322177010bdf75fccacd1adc8", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-qtutils", + "type": "github" + } + }, + "hyprlang": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750371198, + "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=", + "owner": "hyprwm", + "repo": "hyprlang", + "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlang", + "type": "github" + } + }, + "hyprutils": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750371096, + "narHash": "sha256-JB1IeJ41y7kWc/dPGV6RMcCUM0Xj2NEK26A2Ap7EM9c=", + "owner": "hyprwm", + "repo": "hyprutils", + "rev": "38f3a211657ce82a1123bf19402199b67a410f08", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprutils", + "type": "github" + } + }, + "hyprwayland-scanner": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750371869, + "narHash": "sha256-lGk4gLjgZQ/rndUkzmPYcgbHr8gKU5u71vyrjnwfpB4=", + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "rev": "aa38edd6e3e277ae6a97ea83a69261a5c3aab9fd", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "type": "github" + } + }, "impermanence": { "locked": { "lastModified": 1737831083, @@ -379,15 +709,15 @@ }, "nixpkgs": { "locked": { - "lastModified": 1749794982, - "narHash": "sha256-Kh9K4taXbVuaLC0IL+9HcfvxsSUx8dPB5s5weJcc9pc=", - "owner": "nixos", + "lastModified": 1750365781, + "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "ee930f9755f58096ac6e8ca94a1887e0534e2d81", + "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", "type": "github" }, "original": { - "owner": "nixos", + "owner": "NixOS", "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" @@ -408,6 +738,22 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1749794982, + "narHash": "sha256-Kh9K4taXbVuaLC0IL+9HcfvxsSUx8dPB5s5weJcc9pc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "ee930f9755f58096ac6e8ca94a1887e0534e2d81", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixspect": { "inputs": { "nixpkgs": [ @@ -488,6 +834,29 @@ "type": "github" } }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat_2", + "gitignore": "gitignore", + "nixpkgs": [ + "hyprland", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1749636823, + "narHash": "sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "623c56286de5a3193aa38891a6991b28f9bab056", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "python-flexseal": { "inputs": { "flake-utils": [ @@ -520,12 +889,13 @@ "flake-utils": "flake-utils", "flake-utils-plus": "flake-utils-plus", "home-manager": "home-manager", + "hyprland": "hyprland", "impermanence": "impermanence", "import-tree": "import-tree", "mnw": "mnw", "nil": "nil", "nix-index-database": "nix-index-database", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_2", "nixspect": "nixspect", "nur": "nur", "nvf": "nvf", @@ -536,7 +906,7 @@ "sops-nix": "sops-nix", "stable-diffusion-webui-nix": "stable-diffusion-webui-nix", "stylix": "stylix", - "systems": "systems", + "systems": "systems_2", "zjstatus": "zjstatus" } }, @@ -696,6 +1066,21 @@ } }, "systems": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_2": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -812,6 +1197,47 @@ "type": "github" } }, + "xdph": { + "inputs": { + "hyprland-protocols": [ + "hyprland", + "hyprland-protocols" + ], + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1750372504, + "narHash": "sha256-VBeZb1oqZM1cqCAZnFz/WyYhO8aF/ImagI7WWg/Z3Og=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "400308fc4f9d12e0a93e483c2e7a649e12af1a92", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" + } + }, "zjstatus": { "inputs": { "crane": [ diff --git a/flake.nix b/flake.nix index aa50b5c..c04994a 100644 --- a/flake.nix +++ b/flake.nix @@ -12,6 +12,7 @@ flake-utils.url = "github:numtide/flake-utils"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.url = "github:nix-community/home-manager"; + hyprland.url = "github:hyprwm/Hyprland"; impermanence.url = "github:nix-community/impermanence"; import-tree.url = "github:vic/import-tree"; mnw.url = "github:Gerg-L/mnw"; diff --git a/modules/nixos/desktop/window-manager/hyprland/default.nix b/modules/nixos/desktop/window-manager/hyprland/default.nix index 67060bd..4c5162e 100644 --- a/modules/nixos/desktop/window-manager/hyprland/default.nix +++ b/modules/nixos/desktop/window-manager/hyprland/default.nix @@ -1,4 +1,10 @@ -{ config, lib, ... }: +{ + config, + lib, + inputs, + system, + ... +}: let inherit (lib) mkEnableOption mkIf singleton; inherit (config.desktop) mainMonitor; @@ -10,6 +16,11 @@ in }; config = mkIf cfg.enable { + nix.settings = { + substituters = [ "https://hyprland.cachix.org" ]; + trusted-substituters = [ "https://hyprland.cachix.org" ]; + trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ]; + }; desktop.enableWaylandUtilities = true; environment.loginShellInit = # sh '' @@ -26,11 +37,15 @@ in programs.hyprland = { enable = true; withUWSM = true; + package = inputs.hyprland.packages.${system}.hyprland; + portalPackage = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland; }; home-manager.sharedModules = singleton { wayland.windowManager.hyprland = { enable = true; systemd.enable = false; + package = null; + portalPackage = null; }; xdg.configFile."uwsm/env".text = # sh '' From 08124bfb91567d500a202168a8cc85a75981df3e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 23 Jun 2025 16:01:08 +0800 Subject: [PATCH 147/373] refactor(home): add zoxide, nix-index and ripgrep to home module --- homes/x86_64-linux/rafiq/cli/utilities/misc.nix | 7 +++++++ modules/home/default.nix | 13 ++----------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix index e725c39..0bbe431 100644 --- a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix +++ b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix @@ -12,7 +12,13 @@ enable = true; nix-direnv.enable = true; }; + zoxide.enable = true; + nix-index.enable = true; + nix-index-database.comma.enable = true; }; + persistDirs = [ + ".local/share/zoxide" + ]; home = { shellAliases = { windows = "systemctl reboot --boot-loader-entry=auto-windows"; @@ -22,6 +28,7 @@ ai = "aichat -r %shell% -e"; }; packages = with pkgs; [ + ripgrep aichat devenv pantheon.rebuild diff --git a/modules/home/default.nix b/modules/home/default.nix index 07c8cfb..a211cd5 100644 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -1,9 +1,4 @@ -{ - config, - lib, - pkgs, - ... -}: +{ config, lib, ... }: let inherit (lib) mkOption; inherit (lib.types) listOf str; @@ -27,13 +22,9 @@ in persistDirs = [ ".ssh" ".config/sops/age" - ".local/share/zoxide" ]; - home.packages = with pkgs; [ ripgrep ]; + programs = { - zoxide.enable = true; - nix-index.enable = true; - nix-index-database.comma.enable = true; ssh = { enable = true; extraConfig = '' From 87f503352ffabe1b8fbeaa13152ec8ad7e2b5109 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 24 Jun 2025 20:46:51 +0800 Subject: [PATCH 148/373] feat(forgejo): enable push create user and org, and set ssh signing format --- modules/nixos/server/web-apps/forgejo/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/nixos/server/web-apps/forgejo/default.nix b/modules/nixos/server/web-apps/forgejo/default.nix index e7f4d9f..97140f8 100644 --- a/modules/nixos/server/web-apps/forgejo/default.nix +++ b/modules/nixos/server/web-apps/forgejo/default.nix @@ -29,7 +29,11 @@ mkWebApp { START_SSH_SERVER = true; SSH_PORT = cfg.sshPort; }; - repository.USE_COMPAT_SSH_URI = false; + repository = { + USE_COMPAT_SSH_URI = false; + ENABLE_PUSH_CREATE_USER = true; + ENABLE_PUSH_CREATE_ORG = true; + }; "repository.signing".FORMAT = "ssh"; }; }; From 7739f03bffdd6a0afadf905ae8c05d376a1868c2 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Tue, 24 Jun 2025 21:19:25 +0800 Subject: [PATCH 149/373] refactor(rrv.sh): use rrv.sh flake instead of internal package --- flake.lock | 53 +++++++++++++++++++++++- flake.nix | 1 + packages/rrv.sh/default.nix | 12 ------ packages/rrv.sh/favicon.ico | Bin 5886 -> 0 bytes packages/rrv.sh/index.html | 10 ----- systems/x86_64-linux/apollo/default.nix | 3 +- 6 files changed, 55 insertions(+), 24 deletions(-) delete mode 100644 packages/rrv.sh/default.nix delete mode 100644 packages/rrv.sh/favicon.ico delete mode 100644 packages/rrv.sh/index.html diff --git a/flake.lock b/flake.lock index 848630f..3313aae 100644 --- a/flake.lock +++ b/flake.lock @@ -754,6 +754,22 @@ "type": "github" } }, + "nixpkgs_3": { + "locked": { + "lastModified": 1750506804, + "narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "4206c4cb56751df534751b058295ea61357bbbaa", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixspect": { "inputs": { "nixpkgs": [ @@ -900,16 +916,36 @@ "nur": "nur", "nvf": "nvf", "python-flexseal": "python-flexseal", + "rrv-sh": "rrv-sh", "rrvsh-nixpkgs": "rrvsh-nixpkgs", "rust-overlay": "rust-overlay", "snowfall-lib": "snowfall-lib", "sops-nix": "sops-nix", "stable-diffusion-webui-nix": "stable-diffusion-webui-nix", "stylix": "stylix", - "systems": "systems_2", + "systems": "systems_3", "zjstatus": "zjstatus" } }, + "rrv-sh": { + "inputs": { + "nixpkgs": "nixpkgs_3", + "systems": "systems_2" + }, + "locked": { + "lastModified": 1750770978, + "narHash": "sha256-b+KmHA78k9KzMPrurvbHEfB+ezezPOls0g/idYYsl+o=", + "ref": "refs/heads/prime", + "rev": "fc489e80f074464802fff4d4bb2319aa786661ea", + "revCount": 1, + "type": "git", + "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" + }, + "original": { + "type": "git", + "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" + } + }, "rrvsh-nixpkgs": { "locked": { "lastModified": 1748869769, @@ -1081,6 +1117,21 @@ } }, "systems_2": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", diff --git a/flake.nix b/flake.nix index c04994a..ae6edbb 100644 --- a/flake.nix +++ b/flake.nix @@ -2,6 +2,7 @@ inputs = { crane.url = "github:ipetkov/crane"; + rrv-sh.url = "git+ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh"; disko.inputs.nixpkgs.follows = "nixpkgs"; disko.url = "github:nix-community/disko"; flake-compat.url = "github:edolstra/flake-compat"; diff --git a/packages/rrv.sh/default.nix b/packages/rrv.sh/default.nix deleted file mode 100644 index 8b2b852..0000000 --- a/packages/rrv.sh/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ stdenv, ... }: -let - name = "rrv.sh"; - version = "0.0.1"; -in -stdenv.mkDerivation { - inherit name version; - src = ./.; - installPhase = '' - cp -r . $out - ''; -} diff --git a/packages/rrv.sh/favicon.ico b/packages/rrv.sh/favicon.ico deleted file mode 100644 index 57499ca78a4ac8717d6e8e03a31d4421e31da7ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5886 zcmZQzU}RuqNJtQ1U}Runcp=8XAjZJJpuxbvkifveaDV|M&%yu(LSPb12rw`(fG~*j z|Nno6Iq$wPJbQMJ!SdNVhNz?W7#x?pW4KzqhM_v@8-r%^6b47jXADb%ni-M|uQCWE zRWn!$OkofZfSCX?WfYHwz-S1JhQOc+0sasFiEzt*{tr-9S7SqAOsEJJia+#fJXF;u zUDf+oRGz7jl@)dA#(50xmb|krAKiOKr|uz=G+;OI=*w~&YUBp79`Jq=FAxo{pQR$kUkI- zFaC4p9a#QP$9XVKi1^WQ{saI2|L;$9^b=AFmVeRFbN*}OnKx%T2nIe_Jzq!9)X>n# zGiS~ar=H=($O9Su@a3Y~NAMaO%vIvm<~LqA-N2P?R$ zq@<)e=ggZE9UmC@Kk$NL8!V1W@GE_|qzZQOB_$;#r8#FF@SNyp_@vJZ5kytYz`*cT zDgLAqSUo7IX@Vk+r{k|uETmjM7bzG$x)0QSb8M|3M|q7hv@-IyyRfG;!scGbcJaI*z!U z7knr=M-G(OK*o1;oST4YHdN%ynPVwFXBq_s58AzFVBiNC-vRLmQ~@T%_vWCWprEj^ z;RpUNAp1HXxdBrlOoZ>{-Mg2KjqTt6aRI3(q@01_ZfIz1sIlOmGcGl2oIu7sNsR_#G zg!~(%U0z;ZzPsZLNc{x{f;I$cl$TeOm+#)bd#7e3sC03`A404*+ABK1R-8nr2Zb{( z49X(y<>loyCzWP`%qQdlkou1H@*O=Vm6Sm08CX`~k6}oj>gYH#NeNtyajjbAh08G@ zahUpZmy|%^!@#g=)v5&`2^^RQTuO9weBiwcRl$Wi_QVTQ38_&+eh+3XMC><0D+a5W$JKgh$>e2{;@ z4`cs87PtRk4-@|&!GK^hFx11ue;~2{Fu>IOdH#=qf&UL!(GTbU3=Hfuz&d_7{%2rp z<^Z!lF#c~~e!u}X^#enF1M>$4u!}x0$Tu+mfU(&Ru>XOW`h$V_0Q(OJ`ws&n1N#RE z8`Q(#e*ksS2L=ZI2AGE*Ft9PeJp6-!fdS^pKMV{In8EozU|NlQQFxbP` z4;YyL!_+r0F#m%EGy?-WEYSZkFtGoCs`l?sf@*l*uhr0P6 z0|SFS14R6P0|SG7BNF=oIIRBvKfu6X{{S3TV0Jw$_8u@u{Qn1aG$=s+LDl?VsQ>>5 n%KpRnAD&YFG5r7k4;DZT_5c4LgjxnN{0o%*2WlXcJ5neBxf5vU diff --git a/packages/rrv.sh/index.html b/packages/rrv.sh/index.html deleted file mode 100644 index cf567af..0000000 --- a/packages/rrv.sh/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - rrv.sh - - - -

hi

- - diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 6085744..44c9bc1 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -1,6 +1,7 @@ { lib, pkgs, + inputs, ... }: { @@ -46,7 +47,7 @@ pages = [ { domain = "rrv.sh"; - root = pkgs.pantheon."rrv.sh"; + root = inputs.rrv-sh.packages.x86_64-linux.default; } ]; proxies = [ From a7361a2bf91535f2a6bb3c3e07ad712858da17cf Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Wed, 25 Jun 2025 11:53:36 +0800 Subject: [PATCH 150/373] feat(hyprland): add togglefloating keybind without mouse --- .../rafiq/desktop/window-manager/_hyprland/keybinds.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix index 28d584b..6191939 100644 --- a/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix +++ b/homes/x86_64-linux/rafiq/desktop/window-manager/_hyprland/keybinds.nix @@ -20,6 +20,7 @@ "ALT_SHIFT, J, resizeactive, 0 -10%" "ALT_SHIFT, K, resizeactive, 0 10%" "ALT_SHIFT, L, resizeactive, 10% 0" + "$hypr, V, togglefloating" "SUPER_CTRL, H, workspace, r-1" "SUPER_CTRL, L, workspace, r+1" "$hypr, H, movetoworkspace, r-1" From 8c42d27c8d0d0c96070dfd42c9a2b07ba7bad8f8 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Thu, 26 Jun 2025 00:02:06 +0800 Subject: [PATCH 151/373] feat(home): persist stremio directory --- homes/x86_64-linux/rafiq/desktop/misc.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/homes/x86_64-linux/rafiq/desktop/misc.nix b/homes/x86_64-linux/rafiq/desktop/misc.nix index 1abb7a0..d7f581c 100644 --- a/homes/x86_64-linux/rafiq/desktop/misc.nix +++ b/homes/x86_64-linux/rafiq/desktop/misc.nix @@ -5,6 +5,8 @@ "repos" "vids" "tmp" + ".cache/Smart Code ltd/Stremio" + ".local/share/Smart Code ltd/Stremio" ]; programs = { obs-studio.enable = true; From f7e411541aa45df40ae0db2339af4f5e202749c7 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Fri, 27 Jun 2025 23:13:27 +0800 Subject: [PATCH 152/373] feat(home): set stylix wallpaper --- homes/x86_64-linux/rafiq/default.nix | 1 + homes/x86_64-linux/rafiq/desktop/wallpaper.png | Bin 0 -> 170973 bytes 2 files changed, 1 insertion(+) create mode 100644 homes/x86_64-linux/rafiq/desktop/wallpaper.png diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 6d25b6f..4ab7104 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -30,6 +30,7 @@ in ++ singleton (import-tree ./cli); config = { + stylix.image = ./desktop/wallpaper.png; accounts = { email = { maildirBasePath = "mail"; diff --git a/homes/x86_64-linux/rafiq/desktop/wallpaper.png b/homes/x86_64-linux/rafiq/desktop/wallpaper.png new file mode 100644 index 0000000000000000000000000000000000000000..f3839ff17f2b50aa73a2b46846b074e33184c48c GIT binary patch literal 170973 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

>i=!#p8xxI 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%0DA!ToHG2*)6v5e!3 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%0Dd5|MTJY|NX_Y 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 H$xPK-%2>!ALaWFdU-*!9Rw046%)OuB;SJGcK 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

uC#xAKO?SALe?V%2f-_a*D& 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 PU|{fc^>bP0l+XkKoFlLB literal 0 HcmV?d00001 From 326e3e3c613d35a9df49f67247b8b858e6c4344e Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 28 Jun 2025 06:32:27 +0800 Subject: [PATCH 153/373] fix(rrv.sh): update flake.lock to pick up latest rrv.sh changes --- flake.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/flake.lock b/flake.lock index 3313aae..99e217c 100644 --- a/flake.lock +++ b/flake.lock @@ -933,11 +933,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1750770978, - "narHash": "sha256-b+KmHA78k9KzMPrurvbHEfB+ezezPOls0g/idYYsl+o=", + "lastModified": 1751063358, + "narHash": "sha256-j5wlUaZ9I68naN5s8Qp8nk724ifS0Xa5lHK0djhSX/Q=", "ref": "refs/heads/prime", - "rev": "fc489e80f074464802fff4d4bb2319aa786661ea", - "revCount": 1, + "rev": "e4f7512702bf4fca25b4b80d53dcb726799bd76d", + "revCount": 2, "type": "git", "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" }, From 8d306915d9d3ff754772b6ee413e02ba9701bb31 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 28 Jun 2025 09:30:37 +0800 Subject: [PATCH 154/373] feat(home): add email module for personal email setup --- homes/x86_64-linux/rafiq/cli/email.nix | 46 ++++++++++++++++++++++++++ homes/x86_64-linux/rafiq/default.nix | 27 --------------- 2 files changed, 46 insertions(+), 27 deletions(-) create mode 100644 homes/x86_64-linux/rafiq/cli/email.nix diff --git a/homes/x86_64-linux/rafiq/cli/email.nix b/homes/x86_64-linux/rafiq/cli/email.nix new file mode 100644 index 0000000..27e87e1 --- /dev/null +++ b/homes/x86_64-linux/rafiq/cli/email.nix @@ -0,0 +1,46 @@ +{ osConfig, lib, ... }: +let + mkEmailAccount = address: { + inherit address; + maildir.path = address; + userName = address; + realName = "Mohammad Rafiq"; + passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/personalEmailPassword".path}"; + mbsync = { + enable = true; + create = "both"; + }; + imap = { + host = "imap.forwardemail.net"; + port = 993; + }; + smtp = { + host = "smtp.forwardemail.net"; + port = 465; + }; + thunderbird.enable = osConfig.desktop.enable; + neomutt.enable = true; + neomutt.mailboxType = "imap"; + himalaya.enable = true; + }; +in +{ + programs.himalaya.enable = true; + programs.neomutt = { + enable = true; + vimKeys = true; + }; + persistDirs = [ + "mail/rafiq@rrv.sh" + "mail/mohammadrafiq@rrv.sh" + ]; + accounts.email = { + maildirBasePath = "mail"; + accounts = { + "rafiq@rrv.sh" = mkEmailAccount "rafiq@rrv.sh" // { + primary = true; + }; + "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; + }; + }; +} diff --git a/homes/x86_64-linux/rafiq/default.nix b/homes/x86_64-linux/rafiq/default.nix index 4ab7104..1045dc2 100644 --- a/homes/x86_64-linux/rafiq/default.nix +++ b/homes/x86_64-linux/rafiq/default.nix @@ -7,22 +7,6 @@ let inherit (lib) singleton optional; inherit (inputs) import-tree; - mkEmailAccount = address: { - inherit address; - maildir.path = address; - userName = address; - realName = "Mohammad Rafiq"; - passwordCommand = "sudo cat ${osConfig.sops.secrets."rafiq/personalEmailPassword".path}"; - imap = { - host = "imap.forwardemail.net"; - port = 993; - }; - smtp = { - host = "smtp.forwardemail.net"; - port = 465; - }; - thunderbird.enable = osConfig.desktop.enable; - }; in { imports = @@ -31,16 +15,5 @@ in config = { stylix.image = ./desktop/wallpaper.png; - accounts = { - email = { - maildirBasePath = "mail"; - accounts = { - "rafiq@rrv.sh" = { - primary = true; - } // mkEmailAccount "rafiq@rrv.sh"; - "mohammadrafiq@rrv.sh" = mkEmailAccount "mohammadrafiq@rrv.sh"; - }; - }; - }; }; } From 7c633c124f72f04e0aecb165ad466fd95df99179 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 28 Jun 2025 11:04:52 +0800 Subject: [PATCH 155/373] feat: add hostSpec.nix to define host-specific configurations --- hostSpec.nix | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 hostSpec.nix diff --git a/hostSpec.nix b/hostSpec.nix new file mode 100644 index 0000000..e07bcda --- /dev/null +++ b/hostSpec.nix @@ -0,0 +1,78 @@ +{ + users.rafiq = { + primary = true; + email = "rafiq@rrv.sh"; + alternate-emails = [ + "mohammadrafiq@rrv.sh" + "mohammadrafiq567@gmail.com" + ]; + pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILdsZyY3gu8IGB8MzMnLdh+ClDxQQ2RYG9rkeetIKq8n"; + }; + + entrypoints = { + # For services that should only have one instance across the whole + # flake, define them here and they will get provisioned on those + # hosts, with whatever depends on them configured via that hostname. + nginx.host = "apollo"; + ssh.host = "apollo"; + }; + + # This will define all the hosts exposed by the flake and designate the + # modules and services, along with defining the hardware configuration + # for each host. + # of each attr set will resolve to the host's hostname. + hosts.nemesis = { + platform = "amd"; + gpu = "nvidia"; + ephemeralRoot = true; + boot-drive = "/dev/disk/by-id/nvme-CT2000P3SSD8_2325E6E77434"; + bootloader = "systemd-boot"; + # Enables dotfiles and desktop environment/services. + desktop.enable = true; + extraCfg = { }; + }; + hosts.apollo = { + platform = "intel"; + ephemeralRoot = true; + bootloader = "systemd-boot"; + boot-drive = "/dev/disk/by-id/nvme-eui.002538d221b47b01"; + # Public services will be exposed to the web server. + public-services = [ + { + name = "librechat"; + domain = "chat.bwfiq.com"; + } + { + name = "forgejo"; + domain = "git.rrv.sh"; + } + { + name = "rrv-sh"; + domain = "rrv.sh"; + } + { + name = "immich"; + domain = "photos.bwfiq.com"; + } + { + name = "aenyrathia-wiki"; + domain = "aenyrathia.wiki"; + } + ]; + # Internal services will be exposed with tailscale only. + internal-services = [ + "mongodb" + "mariadb" + "postgresql" + "redis" + ]; + extraCfg = { }; + }; + host.helios = { + platform = "intel"; + boot-drive = "nvme-eui.6479a784aad00284"; + ephemeralRoot = true; + bootloader = "systemd-boot"; + extraCfg = { }; + }; +} From 92971a42a7de942c66a247a4b8afcd46f0389659 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 28 Jun 2025 15:54:10 +0800 Subject: [PATCH 156/373] refactor(rrv.sh): change rrv.sh to use service module --- flake.lock | 28 ++++--------------- flake.nix | 1 + .../nixos/server/web-apps/rrv-sh/default.nix | 16 +++++++++++ systems/x86_64-linux/apollo/default.nix | 8 ++---- 4 files changed, 25 insertions(+), 28 deletions(-) create mode 100644 modules/nixos/server/web-apps/rrv-sh/default.nix diff --git a/flake.lock b/flake.lock index 99e217c..fb0220c 100644 --- a/flake.lock +++ b/flake.lock @@ -923,21 +923,20 @@ "sops-nix": "sops-nix", "stable-diffusion-webui-nix": "stable-diffusion-webui-nix", "stylix": "stylix", - "systems": "systems_3", + "systems": "systems_2", "zjstatus": "zjstatus" } }, "rrv-sh": { "inputs": { - "nixpkgs": "nixpkgs_3", - "systems": "systems_2" + "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1751063358, - "narHash": "sha256-j5wlUaZ9I68naN5s8Qp8nk724ifS0Xa5lHK0djhSX/Q=", + "lastModified": 1751096589, + "narHash": "sha256-/oqIAR0C2OlHeu/+2qCYbHIRR/CwIUh2AuGu3wGbm3Q=", "ref": "refs/heads/prime", - "rev": "e4f7512702bf4fca25b4b80d53dcb726799bd76d", - "revCount": 2, + "rev": "c7922e3bf2cffc5a67a55c1667431bab8eb155c9", + "revCount": 11, "type": "git", "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" }, @@ -1117,21 +1116,6 @@ } }, "systems_2": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", diff --git a/flake.nix b/flake.nix index ae6edbb..007ec14 100644 --- a/flake.nix +++ b/flake.nix @@ -83,6 +83,7 @@ sops-nix.nixosModules.sops stylix.nixosModules.stylix stable-diffusion-webui-nix.nixosModules.default + rrv-sh.nixosModules.default ]; homes.modules = with inputs; [ impermanence.homeManagerModules.impermanence diff --git a/modules/nixos/server/web-apps/rrv-sh/default.nix b/modules/nixos/server/web-apps/rrv-sh/default.nix new file mode 100644 index 0000000..7954ba2 --- /dev/null +++ b/modules/nixos/server/web-apps/rrv-sh/default.nix @@ -0,0 +1,16 @@ +{ config, lib, ... }: +let + inherit (lib.pantheon.modules) mkWebApp; + cfg = config.server.web-apps.rrv-sh; +in +mkWebApp { + inherit config; + name = "rrv-sh"; + defaultPort = 2309; + extraConfig = { + services.rrv-sh = { + enable = true; + inherit (cfg) port; + }; + }; +} diff --git a/systems/x86_64-linux/apollo/default.nix b/systems/x86_64-linux/apollo/default.nix index 44c9bc1..6e9ba08 100644 --- a/systems/x86_64-linux/apollo/default.nix +++ b/systems/x86_64-linux/apollo/default.nix @@ -39,17 +39,13 @@ forgejo.openFirewall = true; glance.enable = true; glance.domain = "glance.bwfiq.com"; + rrv-sh.enable = true; + rrv-sh.domain = "rrv.sh"; }; web-servers = { enableSSL = true; nginx = { enable = true; - pages = [ - { - domain = "rrv.sh"; - root = inputs.rrv-sh.packages.x86_64-linux.default; - } - ]; proxies = [ { source = "aenyrathia.wiki"; From 622b3da556d4c8a1bdbf44c581de8c277682d412 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sat, 28 Jun 2025 18:11:13 +0800 Subject: [PATCH 157/373] build(flake.lock): update flake inputs --- flake.lock | 115 +++++++++--------- flake.nix | 2 +- modules/nixos/machine/usb/default.nix | 1 - .../server/web-apps/librechat/default.nix | 2 +- 4 files changed, 59 insertions(+), 61 deletions(-) diff --git a/flake.lock b/flake.lock index fb0220c..8fbe0e0 100644 --- a/flake.lock +++ b/flake.lock @@ -102,11 +102,11 @@ }, "crane": { "locked": { - "lastModified": 1748970125, - "narHash": "sha256-UDyigbDGv8fvs9aS95yzFfOKkEjx1LO3PL3DsKopohA=", + "lastModified": 1750266157, + "narHash": "sha256-tL42YoNg9y30u7zAqtoGDNdTyXTi8EALDeCB13FtbQA=", "owner": "ipetkov", "repo": "crane", - "rev": "323b5746d89e04b22554b061522dfce9e4c49b18", + "rev": "e37c943371b73ed87faf33f7583860f81f1d5a48", "type": "github" }, "original": { @@ -122,11 +122,11 @@ ] }, "locked": { - "lastModified": 1750040002, - "narHash": "sha256-KrC9iOVYIn6ukpVlHbqSA4hYCZ6oDyJKrcLqv4c5v84=", + "lastModified": 1750903843, + "narHash": "sha256-Ng9+f0H5/dW+mq/XOKvB9uwvGbsuiiO6HrPdAcVglCs=", "owner": "nix-community", "repo": "disko", - "rev": "7f1857b31522062a6a00f88cbccf86b43acceed1", + "rev": "83c4da299c1d7d300f8c6fd3a72ac46cb0d59aae", "type": "github" }, "original": { @@ -350,11 +350,11 @@ ] }, "locked": { - "lastModified": 1750033262, - "narHash": "sha256-TcFN78w6kPspxpbPsxW/8vQ1GAtY8Y3mjBaC+oB8jo4=", + "lastModified": 1750973805, + "narHash": "sha256-BZXgag7I0rnL/HMHAsBz3tQrfKAibpY2vovexl2lS+Y=", "owner": "nix-community", "repo": "home-manager", - "rev": "66523b0efe93ce5b0ba96dcddcda15d36673c1f0", + "rev": "080e8b48b0318b38143d5865de9334f46d51fce3", "type": "github" }, "original": { @@ -437,11 +437,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1750589353, - "narHash": "sha256-+3W7HI8ZzVqhjaws8++TFaUX8JP2eq9Uzn/KHA/qr0U=", + "lastModified": 1751032612, + "narHash": "sha256-GHPKg2q1B/1FKYnEbKp6lgZ8fbHewtO2BAB0fM1hh50=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "dd33128c2f127f39c30cca72addb1970b8936d07", + "rev": "a01d20cfe83aaa518ae0e02b4c8b2225f1324bf3", "type": "github" }, "original": { @@ -584,11 +584,11 @@ ] }, "locked": { - "lastModified": 1750371096, - "narHash": "sha256-JB1IeJ41y7kWc/dPGV6RMcCUM0Xj2NEK26A2Ap7EM9c=", + "lastModified": 1750703126, + "narHash": "sha256-zJHmLsiW6P8h9HaH5eMKhEh/gvym3k6/Ywr4UHKpJfc=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "38f3a211657ce82a1123bf19402199b67a410f08", + "rev": "d46bd32da554c370f98180a1e465f052b9584805", "type": "github" }, "original": { @@ -639,11 +639,11 @@ }, "import-tree": { "locked": { - "lastModified": 1749958812, - "narHash": "sha256-zdo2CwxdUK3FpQjLBjkJnXvl7OPoTpjdW5OvOzQffoQ=", + "lastModified": 1750911390, + "narHash": "sha256-1v9yCEDYczPO+NiMvjBcHUrCxpfXyqJDnYjhmBuMlvA=", "owner": "vic", "repo": "import-tree", - "rev": "6fcfa909614de6dd6c712db8229b8c0261791e39", + "rev": "16710e6d4ebc5b1134d5d63e7aa10a8ec8a564cf", "type": "github" }, "original": { @@ -674,11 +674,11 @@ ] }, "locked": { - "lastModified": 1750047244, - "narHash": "sha256-vluLARrk4485npdyHOj8XKr0yk6H22pNf+KVRNL+i/Y=", + "lastModified": 1750558251, + "narHash": "sha256-wmb+kcqG05jQA2RPq+KZhOeCxSEOAgumgp/remOsczs=", "owner": "oxalica", "repo": "nil", - "rev": "870a4b1b5f12004832206703ac15aa85c42c247b", + "rev": "4e5ac6ec65c775fbc6adba1c6022b29c7eccde0f", "type": "github" }, "original": { @@ -694,11 +694,11 @@ ] }, "locked": { - "lastModified": 1749960154, - "narHash": "sha256-EWlr9MZDd+GoGtZB4QsDzaLyaDQPGnRY03MFp6u2wSg=", + "lastModified": 1750565152, + "narHash": "sha256-A6ZIoIgaPPkzIVxKuaxwEJicPOeTwC/MD9iuC3FVhDM=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "424a40050cdc5f494ec45e46462d288f08c64475", + "rev": "78cd697acc2e492b4e92822a4913ffad279c20e6", "type": "github" }, "original": { @@ -740,11 +740,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1749794982, - "narHash": "sha256-Kh9K4taXbVuaLC0IL+9HcfvxsSUx8dPB5s5weJcc9pc=", + "lastModified": 1751011381, + "narHash": "sha256-krGXKxvkBhnrSC/kGBmg5MyupUUT5R6IBCLEzx9jhMM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ee930f9755f58096ac6e8ca94a1887e0534e2d81", + "rev": "30e2e2857ba47844aa71991daa6ed1fc678bcbb7", "type": "github" }, "original": { @@ -801,11 +801,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1750074471, - "narHash": "sha256-5v3YvNfCAnEvpNZbWgTJYUxqTJHwsAXVa+hzWGmZA60=", + "lastModified": 1751096345, + "narHash": "sha256-csVZSJ94582i+G+O6t/lmTK6OwcGSaK/+NNWmi+EJOE=", "owner": "nix-community", "repo": "NUR", - "rev": "dff5a5f17eb5a7803eaaccc504ca75afd921aeff", + "rev": "2355fe2ca50b284b6f9110b31b45b89fa1a8e323", "type": "github" }, "original": { @@ -836,16 +836,15 @@ ] }, "locked": { - "lastModified": 1750247856, - "narHash": "sha256-+fGlDHq+4RoURurxUFrSBtHN81EZq0qk1Xn9+7ShmfM=", - "owner": "rrvsh", + "lastModified": 1750842150, + "narHash": "sha256-slD1Nzr7SStRhQgC1WmrIsgrgwgRyag2MAxCSrjrxKg=", + "owner": "notashelf", "repo": "nvf", - "rev": "62494c01644e199c3b31aa617e67adad49a6d56e", + "rev": "f9ee813a230e1c0ba0e1a13e1747fd1b996f08dc", "type": "github" }, "original": { - "owner": "rrvsh", - "ref": "luasnip-customsnippets", + "owner": "notashelf", "repo": "nvf", "type": "github" } @@ -932,11 +931,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1751096589, - "narHash": "sha256-/oqIAR0C2OlHeu/+2qCYbHIRR/CwIUh2AuGu3wGbm3Q=", + "lastModified": 1751104218, + "narHash": "sha256-x2jJambQHw24hfb3sm9Wnxw2GdKj+S0MGH+DGBis4Rs=", "ref": "refs/heads/prime", - "rev": "c7922e3bf2cffc5a67a55c1667431bab8eb155c9", - "revCount": 11, + "rev": "9010adc01a7cfe44ab468b2463f0f579f0952fe2", + "revCount": 14, "type": "git", "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" }, @@ -947,11 +946,11 @@ }, "rrvsh-nixpkgs": { "locked": { - "lastModified": 1748869769, - "narHash": "sha256-2L9Bcj3kIt3n9NkCms6u66j8GsN7j22YnjaX+er3AtY=", + "lastModified": 1750146550, + "narHash": "sha256-vFNbONVWIdYBqlKZoJScDRjnQ/euDmVqgCL2ebnsu7U=", "owner": "rrvsh", "repo": "nixpkgs", - "rev": "32aae0a2767f3b18b115a0f1f2edfe524305b864", + "rev": "d7fa95990fd890bbd17ca8361f5d4e4935512c75", "type": "github" }, "original": { @@ -968,11 +967,11 @@ ] }, "locked": { - "lastModified": 1750041667, - "narHash": "sha256-/8F9L6T9w/Fx1D6L+BtWIXg5m9F6jwOFg6uhZpKnM/0=", + "lastModified": 1751078221, + "narHash": "sha256-/SRmXIPxL7ixFLZgcDdgZDuIwt8eWQAamMYer0ODwbM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "d72bd8c9fda03c9834ea89d7a5a21c7880b79277", + "rev": "1712a6d3430ca75353d366b7ddd1c79d6b243efc", "type": "github" }, "original": { @@ -1014,11 +1013,11 @@ ] }, "locked": { - "lastModified": 1749592509, - "narHash": "sha256-VunQzfZFA+Y6x3wYi2UE4DEQ8qKoAZZCnZPUlSoqC+A=", + "lastModified": 1750119275, + "narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=", "owner": "Mic92", "repo": "sops-nix", - "rev": "50754dfaa0e24e313c626900d44ef431f3210138", + "rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2", "type": "github" }, "original": { @@ -1040,11 +1039,11 @@ ] }, "locked": { - "lastModified": 1749916680, - "narHash": "sha256-xf2axyf+WuoSfDWQLhQigfms2qzSZzLwlFK7VwVxTkw=", + "lastModified": 1750702421, + "narHash": "sha256-YqcUdBULlDDbRPo6bKM6GbmjnvKM++Sq+U2sgKY8/wc=", "owner": "janrupf", "repo": "stable-diffusion-webui-nix", - "rev": "4852ebfba8a00e029d0f8246d656ee52ebe3d9a2", + "rev": "144487fbf9757f157833d0272d226d69e5bb3741", "type": "github" }, "original": { @@ -1087,11 +1086,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1750023464, - "narHash": "sha256-gBsstni5rgh1vt2SNThh51GNvxMDCjEBfpPksS0ig/c=", + "lastModified": 1750950678, + "narHash": "sha256-ZNSjRDpaR/sAtrZNPO6RpGkHKdMb1oc1lkQN+6ZBvyU=", "owner": "nix-community", "repo": "stylix", - "rev": "a14e525723c1c837b2ceacd8a37cba1f0b5e76c2", + "rev": "c700d41bb8ee32baed490c8128c1077b2b27183b", "type": "github" }, "original": { @@ -1289,11 +1288,11 @@ ] }, "locked": { - "lastModified": 1749470933, - "narHash": "sha256-TEb495xtK9PsCATFezzg6HXThjtveMs7EkWkGJVxPXU=", + "lastModified": 1750957292, + "narHash": "sha256-2CYTG+jxP5e7GHAj1t5aMsgb0Rom4jdOb3rsdLKpVNA=", "owner": "dj95", "repo": "zjstatus", - "rev": "25adf0c5968b4e8253e8e40e648d05cf15c9430d", + "rev": "abd848f23eff00d21ec09278072111d97dfd7fe6", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 007ec14..ad93ba5 100644 --- a/flake.nix +++ b/flake.nix @@ -33,7 +33,7 @@ nvf.inputs.nil.follows = "nil"; nvf.inputs.nixpkgs.follows = "nixpkgs"; nvf.inputs.systems.follows = "systems"; - nvf.url = "github:rrvsh/nvf/luasnip-customsnippets"; + nvf.url = "github:notashelf/nvf"; python-flexseal.inputs.flake-utils.follows = "flake-utils"; python-flexseal.inputs.nixpkgs.follows = "nixpkgs"; python-flexseal.url = "github:Janrupf/python-flexseal"; diff --git a/modules/nixos/machine/usb/default.nix b/modules/nixos/machine/usb/default.nix index 61b0431..9177356 100644 --- a/modules/nixos/machine/usb/default.nix +++ b/modules/nixos/machine/usb/default.nix @@ -35,7 +35,6 @@ in services.udev = { packages = with pkgs; [ vial - via qmk qmk-udev-rules qmk_hid diff --git a/modules/nixos/server/web-apps/librechat/default.nix b/modules/nixos/server/web-apps/librechat/default.nix index 1c2cc78..cf6d71d 100644 --- a/modules/nixos/server/web-apps/librechat/default.nix +++ b/modules/nixos/server/web-apps/librechat/default.nix @@ -16,7 +16,7 @@ mkWebApp { name = "librechat"; defaultPort = 3080; persistDirs = singleton { - directory = upstreamCfg.logDir; + directory = upstreamCfg.dataDir; inherit (upstreamCfg) user group; }; extraOptions.mongodbURI = mkStrOption // { From 715f84ee83409197da40a69cfc8e910af95bbb46 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Sun, 29 Jun 2025 17:08:41 +0800 Subject: [PATCH 158/373] feat(nvf): update nvf to use rrvsh fork with uv enabled --- flake.lock | 11 ++++++----- flake.nix | 2 +- .../x86_64-linux/rafiq/cli/editor/_nvf/languages.nix | 2 ++ homes/x86_64-linux/rafiq/cli/editor/default.nix | 10 ---------- 4 files changed, 9 insertions(+), 16 deletions(-) diff --git a/flake.lock b/flake.lock index 8fbe0e0..0e4b783 100644 --- a/flake.lock +++ b/flake.lock @@ -836,15 +836,16 @@ ] }, "locked": { - "lastModified": 1750842150, - "narHash": "sha256-slD1Nzr7SStRhQgC1WmrIsgrgwgRyag2MAxCSrjrxKg=", - "owner": "notashelf", + "lastModified": 1751187535, + "narHash": "sha256-AMNouwcg9qSG/DI0JXoxZdjtcxfSErVaIsdQn4Q893k=", + "owner": "rrvsh", "repo": "nvf", - "rev": "f9ee813a230e1c0ba0e1a13e1747fd1b996f08dc", + "rev": "871440fb7e5dc9d4abf59a8577bbbf7bba63bff7", "type": "github" }, "original": { - "owner": "notashelf", + "owner": "rrvsh", + "ref": "uv-nvim", "repo": "nvf", "type": "github" } diff --git a/flake.nix b/flake.nix index ad93ba5..b339143 100644 --- a/flake.nix +++ b/flake.nix @@ -33,7 +33,7 @@ nvf.inputs.nil.follows = "nil"; nvf.inputs.nixpkgs.follows = "nixpkgs"; nvf.inputs.systems.follows = "systems"; - nvf.url = "github:notashelf/nvf"; + nvf.url = "github:rrvsh/nvf/uv-nvim"; python-flexseal.inputs.flake-utils.follows = "flake-utils"; python-flexseal.inputs.nixpkgs.follows = "nixpkgs"; python-flexseal.url = "github:Janrupf/python-flexseal"; diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix index cc3dd8c..1eb16fb 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/languages.nix @@ -23,6 +23,8 @@ enable = true; format.type = "ruff"; lsp.server = "pyright"; + uv.enable = true; + uv.setupOpts.picker_integration = true; }; rust.enable = true; rust.crates.enable = true; diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index 4f4c5ee..c03651f 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -7,16 +7,6 @@ in persistDirs = singleton ".local/share/nvf"; programs.nvf.enable = true; programs.nvf.settings.vim = { - lazy.plugins = { - "uv.nvim" = { - # TODO: upstream this - package = pkgs.vimPlugins.uv-nvim; - setupModule = "uv"; - setupOpts.picker_integration = true; - event = [ "BufEnter" ]; - after = "print('uv.nvim loaded')"; - }; - }; hideSearchHighlight = true; syntaxHighlighting = true; telescope.enable = true; From b068149ffb84c2d603ac882851c36a0f3cd27f59 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 30 Jun 2025 03:14:58 +0800 Subject: [PATCH 159/373] refactor(rrv.sh): change rrv.sh input to use github instead of forgejo --- flake.lock | 12 ++++++------ flake.nix | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/flake.lock b/flake.lock index 0e4b783..6a82bc0 100644 --- a/flake.lock +++ b/flake.lock @@ -934,15 +934,15 @@ "locked": { "lastModified": 1751104218, "narHash": "sha256-x2jJambQHw24hfb3sm9Wnxw2GdKj+S0MGH+DGBis4Rs=", - "ref": "refs/heads/prime", + "owner": "rrvsh", + "repo": "rrv.sh", "rev": "9010adc01a7cfe44ab468b2463f0f579f0952fe2", - "revCount": 14, - "type": "git", - "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" + "type": "github" }, "original": { - "type": "git", - "url": "ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh" + "owner": "rrvsh", + "repo": "rrv.sh", + "type": "github" } }, "rrvsh-nixpkgs": { diff --git a/flake.nix b/flake.nix index b339143..7491ace 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ inputs = { crane.url = "github:ipetkov/crane"; - rrv-sh.url = "git+ssh://forgejo@git.rrv.sh/rrvsh/rrv.sh"; + rrv-sh.url = "github:rrvsh/rrv.sh"; disko.inputs.nixpkgs.follows = "nixpkgs"; disko.url = "github:nix-community/disko"; flake-compat.url = "github:edolstra/flake-compat"; From c3acffe2bc5c831287a5a00a39d3655b28173095 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 30 Jun 2025 03:24:20 +0800 Subject: [PATCH 160/373] docs: add instructions for installing with disko --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 742164b..b1d73f1 100644 --- a/README.md +++ b/README.md @@ -68,6 +68,15 @@ deploy --user "rafiq" --ip "10.10.0.102" --hostname "apollo" The installation may run out of space when installing from an install ISO. In that case, use Disko to format the drives first, then create a `/mnt/tmp` directory and set it as TMPDIR for nixos-install. +```bash +sudo su +nix --extra-experimental-features "nix-command flakes" run github:nix-community/disko/master -- --mode destroy,format,mount --flake github:rrvsh/pantheon# +# Copy SSH key to /persist/home/rafiq/.ssh +mkdir /mnt/tmp +TMPDIR=/mnt/tmp nixos-install --flake github:rrvsh/pantheon# --no-root-password +reboot +``` + # Impermanence System and user state is stored under /persist. Anything not declared under From 2b97ee96ca72fd39b7d3924f8ffb88da41e0e2af Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 30 Jun 2025 03:43:37 +0800 Subject: [PATCH 161/373] feat(networking): use client-id and client-secret for tailscale auth --- modules/nixos/default.nix | 3 ++- modules/nixos/networking/default.nix | 3 ++- secrets/secrets.yaml | 8 +++++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index dca611a..fd67601 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -95,7 +95,6 @@ in age.sshKeyPaths = [ "/persist/home/rafiq/.ssh/id_ed25519" ]; secrets = { "keys/openrouter" = { }; - "keys/tailscale" = { }; "keys/gemini" = { }; "keys/cvt-jira" = { }; "keys/cloudflare" = { }; @@ -104,6 +103,8 @@ in "rafiq/hashedPassword".neededForUsers = true; "rafiq/personalEmailPassword" = { }; "rafiq/workEmailPassword" = { }; + "tailscale/client-id" = { }; + "tailscale/client-secret" = { }; }; }; environment.shellInit = # sh diff --git a/modules/nixos/networking/default.nix b/modules/nixos/networking/default.nix index c103d39..384af80 100644 --- a/modules/nixos/networking/default.nix +++ b/modules/nixos/networking/default.nix @@ -17,7 +17,8 @@ in services.tailscale = { enable = true; - authKeyFile = config.sops.secrets."keys/tailscale".path; + authKeyFile = config.sops.secrets."tailscale/client-secret".path; + authKeyParameters.preauthorized = true; }; persistDirs = singleton "/var/lib/tailscale"; } diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index 7854d39..8369800 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -5,7 +5,6 @@ rafiq: oldSMBCredentials: ENC[AES256_GCM,data:aY41trUJcvGa584H0A==,iv:3h9AZ33HXWT4D/vGMyy/o+TXyGg75Ixcj3+h2EskvIQ=,tag:dDo55h1ljOYLZBHn9bK7ew==,type:str] keys: openrouter: ENC[AES256_GCM,data:Uddc0leKVD2xxpvDpsTJV3qZ4oe89Uz6dJMuzF/TeI5iIrG+DNIAYPcnIQiA6LDScO9mag8XNiYpYH7lyMnUg1cvThChiVhO+A==,iv:RHSrL/L74dSvLKAvGwyMME53RzKr2+RDnI8xBpDJVng=,tag:d81mr26SeStmAa8UgEF/LA==,type:str] - tailscale: ENC[AES256_GCM,data:sW64TZY/GtWD+8KOQDHYvnwzWiqOlsJ5782utaxVwUaiWa18hU+Ppd3gp/8f0R3rK6gskaPC22iuCuzvuA==,iv:TN2zWKgU6eXH3uaL7Ci2JKmo8Ql4DUSWS3Lxfnag7j4=,tag:s5of4wLdCp6b5VMGWLLxvw==,type:str] gemini: ENC[AES256_GCM,data:t4XTzJLMbHBG7LNaWMwO0YyYHREYOp4Zn95Kwshunnpwq9ezVv+0,iv:ZHq1ytak7Qy5a/zHghwEIWRinDWAkk2Vxw4iu/Q/UPk=,tag:Wyk0FqLTOWelznWHg/anxg==,type:str] cvt-jira: ENC[AES256_GCM,data:y9enN905hAxp9F6TPcnYdcnA7VQQjTsysltBn7k9CVtOYUDBX5UKCbO4VEE=,iv:Hy/RshBTSFqEVlHq/fi/UqNdbzBvMaBmXnSHAz0WplY=,tag:bBgB+HJdHRu4bg/f9vq9nw==,type:str] cloudflare: ENC[AES256_GCM,data:nrtHnQR0Oon9BrSN0AeAjl8H8B7quuwSu/Qjabe9HFpWgcZq9n1JCA==,iv:ovyHqy5iKXDYXe4H7eRA51+kODhP+vAWoc98cS/6zG0=,tag:JyktO6EMRZ00CRhTb03+fg==,type:str] @@ -19,6 +18,9 @@ librechat: jwt_refresh_secret: ENC[AES256_GCM,data:/4X6h51oRRaOg7UZ/zUcS1L8QyFnhsTYrz8D6R3ZP/tFAEMO/IfYJHHQQ8UtgKjAEwIVYcpIco8lUDhm06folw==,iv:02/LgoiMZ6MzBSd+JAi+iuF3dzqsVyqX6gQfWPY8sIc=,tag:5VrCh7ZKNJD3ynjcyQpVyg==,type:str] matterbridge: mattermost-password: ENC[AES256_GCM,data:sMk4M2gADl1iPA7XEH1/D3sw,iv:YnTYTo0NVJVLtS/uhaodoCuyDqJf6IKCojKFljKSFCE=,tag:8vEK0RyxopiPUcML6hwqpg==,type:str] +tailscale: + client-id: ENC[AES256_GCM,data:YxL4lpnSpz+UQQdoVK/KC/o=,iv:ZGV/ZAdvpmUUlRcbP60ALcxMVzdiXiAxedRyl4sZbaQ=,tag:18Qmvw9aK8CaUUKXE7C7MA==,type:str] + client-secret: ENC[AES256_GCM,data:+PZ3iqj/s6HOoCZJqglt+uzGXy5bJmnqqt7dQReZj/5HTNUlE+QqnCdXNoQkGqnuZ/TN44AExZpowh6NXYyGVQ==,iv:LCZgNZz7qCfk1zXcZTczSoA0a9BF36sV+IpB+ce73P0=,tag:E/vVE6persTCPKbOvvmTjw==,type:str] sops: age: - recipient: age12l33pas8eptwjc7ewux3d8snyzfzwz0tn9qg5kw8le79fswmjgjqdjgyy6 @@ -30,7 +32,7 @@ sops: WXFKbjNMWDF0LzNyekJJMGFva2diemcKQTc8ODuK6IWqRhulHiCF92aU+3p23riY M94Nzh+VT6QTFOgb3J7bBJMLhRH/fkQb6L6ia2n9QrVXFyYYMJ0oBw== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-17T19:11:07Z" - mac: ENC[AES256_GCM,data:EVDPzk2P284ULwMx/hCQeP4eehIiqx5OxhNDc17KhjRv19iPUjzhX7/SQy+r34ZfiKSFnB2W3zmhl6JtGqme10v4xZDT+D5wBLrYU7h4ylht65iDo0Eaw38TNLXPNqfNlKWqTcpgvMpez26CdL/7v3bUKU0aLYX0HkVxl2CQt5g=,iv:gujsDVgpH7RajOliQxL7Unkm24Xqp7BEeYtUMyXq2oc=,tag:KdKXPJ4cF2myFe4vJ1/YnQ==,type:str] + lastmodified: "2025-06-29T19:38:14Z" + mac: ENC[AES256_GCM,data:vn5y4Jlbv6foOB15XWE8kVsxIfTqswUDNsOoOyL/84AZtD69E5QpiUE6ed1DmQAcKxEI/H8OYbdijFYJ5jB8CGp8huwuQ4h+dYKDV+OtX7uk6w2E31fcJ54xCYdpHA3rTyiEh3S5aS+YLcEsHWmHlwebBxYg3tIwXDSOcVrIGgo=,iv:KfpSrigxu8dxjHO1sINTAuZ0mfRVsHsliqHRxfWQq4E=,tag:z3lBzeBETxZOQ9/hSFd/cg==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From af6a3b6f2c0bcd458039b1ae5fc4ef8425f7b1f3 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 30 Jun 2025 05:19:20 +0800 Subject: [PATCH 162/373] refactor(nvf): remove unused nvf modules and options --- .../rafiq/cli/editor/_nvf/assistant.nix | 22 ------------------- .../rafiq/cli/editor/_nvf/autocomplete.nix | 1 - .../rafiq/cli/editor/_nvf/clipboard.nix | 2 -- .../rafiq/cli/editor/_nvf/diagnostics.nix | 2 -- .../rafiq/cli/editor/_nvf/lsp.nix | 1 - .../rafiq/cli/editor/_nvf/notify.nix | 2 -- .../rafiq/cli/editor/_nvf/options.nix | 2 -- .../rafiq/cli/editor/_nvf/statusline.nix | 4 +--- .../rafiq/cli/editor/_nvf/utility.nix | 1 - .../x86_64-linux/rafiq/cli/editor/default.nix | 6 ----- 10 files changed, 1 insertion(+), 42 deletions(-) delete mode 100644 homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix delete mode 100644 homes/x86_64-linux/rafiq/cli/editor/_nvf/clipboard.nix delete mode 100644 homes/x86_64-linux/rafiq/cli/editor/_nvf/diagnostics.nix delete mode 100644 homes/x86_64-linux/rafiq/cli/editor/_nvf/notify.nix diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix deleted file mode 100644 index 4a2fff1..0000000 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/assistant.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - avante-nvim = { - enable = true; - setupOpts = { - provider = "gemini"; - auto_suggestions_provider = "gemini"; - auto_suggestions = true; - windows.ask.floating = true; - input = { - provider = "snacks"; - provider_opts.title = "Avante Input"; - provider_opts.icon = " "; - }; - mappings.suggestion = { - accept = ""; - next = ""; - prev = ""; - dismiss = ""; - }; - }; - }; -} diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/autocomplete.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/autocomplete.nix index 6b8fd11..fc98941 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/autocomplete.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/autocomplete.nix @@ -5,7 +5,6 @@ friendly-snippets.enable = true; sourcePlugins = { ripgrep.enable = true; - spell.enable = true; }; setupOpts = { completion.documentation.auto_show_delay_ms = 0; diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/clipboard.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/clipboard.nix deleted file mode 100644 index 2c63c08..0000000 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/clipboard.nix +++ /dev/null @@ -1,2 +0,0 @@ -{ -} diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/diagnostics.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/diagnostics.nix deleted file mode 100644 index 2c63c08..0000000 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/diagnostics.nix +++ /dev/null @@ -1,2 +0,0 @@ -{ -} diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix index d9ff7f2..82b5191 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/lsp.nix @@ -1,6 +1,5 @@ { enable = true; - formatOnSave = true; inlayHints.enable = true; lightbulb.enable = true; lspkind.enable = true; diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/notify.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/notify.nix deleted file mode 100644 index 2c63c08..0000000 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/notify.nix +++ /dev/null @@ -1,2 +0,0 @@ -{ -} diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/options.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/options.nix index 810172a..50f6b21 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/options.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/options.nix @@ -1,5 +1,4 @@ { - scroll = 1; autoindent = true; backspace = "indent,eol,start"; cursorline = true; @@ -7,5 +6,4 @@ shiftwidth = 2; smartindent = true; tabstop = 2; - updatetime = 0; } diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/statusline.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/statusline.nix index b5ecb42..b21b714 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/statusline.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/statusline.nix @@ -5,8 +5,6 @@ statusline = 10; winbar = 10; }; - activeSection = { - - }; + #TODO: rice lualine }; } diff --git a/homes/x86_64-linux/rafiq/cli/editor/_nvf/utility.nix b/homes/x86_64-linux/rafiq/cli/editor/_nvf/utility.nix index 129824d..f1a9627 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/_nvf/utility.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/_nvf/utility.nix @@ -1,6 +1,5 @@ { ccc.enable = true; - leetcode-nvim.enable = true; mkdir.enable = true; motion.hop.enable = true; yazi-nvim = { diff --git a/homes/x86_64-linux/rafiq/cli/editor/default.nix b/homes/x86_64-linux/rafiq/cli/editor/default.nix index c03651f..4ba3d19 100644 --- a/homes/x86_64-linux/rafiq/cli/editor/default.nix +++ b/homes/x86_64-linux/rafiq/cli/editor/default.nix @@ -11,23 +11,17 @@ in syntaxHighlighting = true; telescope.enable = true; searchCase = "ignore"; - undoFile.enable = true; fzf-lua.enable = true; git.enable = true; - git.gitsigns.enable = false; autopairs.nvim-autopairs.enable = true; - assistant = import ./_nvf/assistant.nix; autocomplete = import ./_nvf/autocomplete.nix { inherit lib; }; binds = import ./_nvf/binds.nix; - clipboard = import ./_nvf/clipboard.nix; - diagnostics = import ./_nvf/diagnostics.nix; keymaps = import ./_nvf/keymaps.nix; languages = import ./_nvf/languages.nix; lsp = import ./_nvf/lsp.nix; navigation = import ./_nvf/navigation.nix; notes = import ./_nvf/notes.nix; options = import ./_nvf/options.nix; - notify = import ./_nvf/notify.nix; snippets = import ./_nvf/snippets.nix { inherit pkgs; }; statusline = import ./_nvf/statusline.nix; treesitter = import ./_nvf/treesitter.nix; From d0738a9c1edc6a809fa304153ad1af333c33c5f3 Mon Sep 17 00:00:00 2001 From: Mohammad Rafiq Date: Mon, 30 Jun 2025 05:54:14 +0800 Subject: [PATCH 163/373] feat: various updates including nixspect removal, new aliases, and browser config --- flake.lock | 21 ------------------ flake.nix | 2 -- homes/x86_64-linux/rafiq/cli/multiplexer.nix | 1 + .../x86_64-linux/rafiq/cli/utilities/git.nix | 1 + .../x86_64-linux/rafiq/cli/utilities/misc.nix | 9 ++------ homes/x86_64-linux/rafiq/desktop/browser.nix | 1 + .../x86_64-linux/rafiq/desktop/status-bar.nix | 1 + homes/x86_64-linux/rafiq/desktop/terminal.nix | 1 + .../x86_64-linux/rafiq/desktop/wallpaper.png | Bin 170973 -> 1623319 bytes .../rafiq/desktop/window-manager/default.nix | 1 + packages/check/default.nix | 20 ----------------- 11 files changed, 8 insertions(+), 50 deletions(-) delete mode 100644 packages/check/default.nix diff --git a/flake.lock b/flake.lock index 6a82bc0..37e9fd7 100644 --- a/flake.lock +++ b/flake.lock @@ -770,26 +770,6 @@ "type": "github" } }, - "nixspect": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1747725629, - "narHash": "sha256-jEdIW5+SMfX6jVvx/MkMbpXLX9S2b+zsayIC1YJNAaY=", - "owner": "rrvsh", - "repo": "nixspect", - "rev": "28deacc6adeaef69f45af5c8139961a774e1600b", - "type": "github" - }, - "original": { - "owner": "rrvsh", - "repo": "nixspect", - "type": "github" - } - }, "nur": { "inputs": { "flake-parts": [ @@ -912,7 +892,6 @@ "nil": "nil", "nix-index-database": "nix-index-database", "nixpkgs": "nixpkgs_2", - "nixspect": "nixspect", "nur": "nur", "nvf": "nvf", "python-flexseal": "python-flexseal", diff --git a/flake.nix b/flake.nix index 7491ace..2f2cd6f 100644 --- a/flake.nix +++ b/flake.nix @@ -22,8 +22,6 @@ nix-index-database.inputs.nixpkgs.follows = "nixpkgs"; nix-index-database.url = "github:nix-community/nix-index-database"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; - nixspect.inputs.nixpkgs.follows = "nixpkgs"; - nixspect.url = "github:rrvsh/nixspect"; nur.inputs.flake-parts.follows = "flake-parts"; nur.inputs.nixpkgs.follows = "nixpkgs"; nur.url = "github:nix-community/NUR"; diff --git a/homes/x86_64-linux/rafiq/cli/multiplexer.nix b/homes/x86_64-linux/rafiq/cli/multiplexer.nix index 700db4a..5d50bdc 100644 --- a/homes/x86_64-linux/rafiq/cli/multiplexer.nix +++ b/homes/x86_64-linux/rafiq/cli/multiplexer.nix @@ -42,6 +42,7 @@ tab_truncate_start_format "..." tab_truncate_end_format "..." + //TODO: disable if we are not on ssh datetime "#[fg=#6C7086,bold] {format}" datetime_format "%H:%M:%S" datetime_timezone "Asia/Singapore" diff --git a/homes/x86_64-linux/rafiq/cli/utilities/git.nix b/homes/x86_64-linux/rafiq/cli/utilities/git.nix index c1730bb..4794310 100644 --- a/homes/x86_64-linux/rafiq/cli/utilities/git.nix +++ b/homes/x86_64-linux/rafiq/cli/utilities/git.nix @@ -6,6 +6,7 @@ gcam = "git commit -am"; gu = "git push"; gy = "git pull"; + gdh = "git diff HEAD"; }; programs.git = { enable = true; diff --git a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix index 0bbe431..353f040 100644 --- a/homes/x86_64-linux/rafiq/cli/utilities/misc.nix +++ b/homes/x86_64-linux/rafiq/cli/utilities/misc.nix @@ -2,7 +2,6 @@ { programs = { nh.enable = true; - pay-respects.enable = true; tealdeer = { enable = true; enableAutoUpdates = true; @@ -16,12 +15,10 @@ nix-index.enable = true; nix-index-database.comma.enable = true; }; - persistDirs = [ - ".local/share/zoxide" - ]; + persistDirs = [ ".local/share/zoxide" ]; home = { shellAliases = { - windows = "systemctl reboot --boot-loader-entry=auto-windows"; + windows = "sudo systemctl reboot --boot-loader-entry=auto-windows"; v = "nvim"; e = "edit"; cd = "z"; @@ -35,8 +32,6 @@ pantheon.deploy pantheon.edit pantheon.commit - pantheon.check - inputs.nixspect.packages."x86_64-linux".nixspect ]; }; diff --git a/homes/x86_64-linux/rafiq/desktop/browser.nix b/homes/x86_64-linux/rafiq/desktop/browser.nix index 7fa9677..69f70f5 100644 --- a/homes/x86_64-linux/rafiq/desktop/browser.nix +++ b/homes/x86_64-linux/rafiq/desktop/browser.nix @@ -22,6 +22,7 @@ let profileCfg = id: { inherit id; settings."extensions.autoDisableScopes" = 0; # Auto enable extensions + #TODO: add default seach unduck and add rest of extensions extensions = { force = true; packages = with firefox-addons; [ diff --git a/homes/x86_64-linux/rafiq/desktop/status-bar.nix b/homes/x86_64-linux/rafiq/desktop/status-bar.nix index 8f097f4..96cfee7 100644 --- a/homes/x86_64-linux/rafiq/desktop/status-bar.nix +++ b/homes/x86_64-linux/rafiq/desktop/status-bar.nix @@ -5,6 +5,7 @@ programs.waybar = { settings = [ { + #TODO: review the rest of the modules to see what else can be added layer = "top"; modules-left = [ "pulseaudio" diff --git a/homes/x86_64-linux/rafiq/desktop/terminal.nix b/homes/x86_64-linux/rafiq/desktop/terminal.nix index 4ffde8b..c5abcbb 100644 --- a/homes/x86_64-linux/rafiq/desktop/terminal.nix +++ b/homes/x86_64-linux/rafiq/desktop/terminal.nix @@ -1,4 +1,5 @@ { home.sessionVariables.TERMINAL = "ghostty -e"; + #TODO: fix image preview programs.ghostty.settings.confirm-close-surface = false; } diff --git a/homes/x86_64-linux/rafiq/desktop/wallpaper.png b/homes/x86_64-linux/rafiq/desktop/wallpaper.png index f3839ff17f2b50aa73a2b46846b074e33184c48c..cabd21f7447ea26f1afd7ea802b9d2aaf5de1aae 100644 GIT binary patch literal 1623319 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�ED%;+sd$;U-+7p-WhD@)!n)3Y+T=g(T~Z3~h=n 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%0DBWp5fiZo9m9Utjs>Wc+W-`QLT_zpekS8viME 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

<2Fkjr`x6N9I>l9eSj9&9vpo6^^1)mY#l2 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٪=^iEW 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 w% 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

vNk1Qz&@Xyw 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 jC`_E0r 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

-}Bg7?{0B@tZB#Nml=1wZvXaO8J}VB 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 z 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