My Nix Configuration
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

[flake] more updates

dish bbe9ec38 f0ec6d20

+463 -139
+2 -2
MIGRATE.md
··· 1 - - [ ] easy-hosts 2 - - [ ] HM Configs 1 + - [x] easy-hosts 2 + - [x] HM Configs 3 3 - [x] modules 4 4 - [x] packages 5 5 - [x] devShells
+69 -77
flake.lock
··· 50 50 "type": "github" 51 51 } 52 52 }, 53 + "caelestia": { 54 + "inputs": { 55 + "caelestia-cli": "caelestia-cli", 56 + "nixpkgs": [ 57 + "nixpkgs" 58 + ], 59 + "quickshell": "quickshell" 60 + }, 61 + "locked": { 62 + "lastModified": 1760231944, 63 + "narHash": "sha256-cZTyyHnZLAfdV3WO5QKZTKppBA7ksII9JHXU9cLZQZc=", 64 + "owner": "caelestia-dots", 65 + "repo": "shell", 66 + "rev": "72d335d7c56d130f8008fa32e65c0b9ab69718e4", 67 + "type": "github" 68 + }, 69 + "original": { 70 + "owner": "caelestia-dots", 71 + "repo": "shell", 72 + "type": "github" 73 + } 74 + }, 75 + "caelestia-cli": { 76 + "inputs": { 77 + "caelestia-shell": [ 78 + "caelestia" 79 + ], 80 + "nixpkgs": [ 81 + "caelestia", 82 + "nixpkgs" 83 + ] 84 + }, 85 + "locked": { 86 + "lastModified": 1760147156, 87 + "narHash": "sha256-ad+1gnp7Lm7jVSzqvGjMiwnA0P61dFZmp6HcRMXicWY=", 88 + "owner": "caelestia-dots", 89 + "repo": "cli", 90 + "rev": "e9668d58f51e935094e50090b99301df8344f590", 91 + "type": "github" 92 + }, 93 + "original": { 94 + "owner": "caelestia-dots", 95 + "repo": "cli", 96 + "type": "github" 97 + } 98 + }, 53 99 "ctp": { 54 100 "inputs": { 55 101 "nixpkgs": "nixpkgs" ··· 277 323 "type": "github" 278 324 } 279 325 }, 280 - "flake-utils_3": { 281 - "inputs": { 282 - "systems": "systems_5" 283 - }, 284 - "locked": { 285 - "lastModified": 1731533236, 286 - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", 287 - "owner": "numtide", 288 - "repo": "flake-utils", 289 - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", 290 - "type": "github" 291 - }, 292 - "original": { 293 - "owner": "numtide", 294 - "repo": "flake-utils", 295 - "type": "github" 296 - } 297 - }, 298 326 "golink": { 299 327 "inputs": { 300 328 "nixpkgs": [ ··· 435 463 "url": "https://github.com/IBM/plex/releases/download/@ibm/plex-mono@1.1.0/ibm-plex-mono.zip" 436 464 } 437 465 }, 438 - "iceshrimp": { 439 - "inputs": { 440 - "nixpkgs": [ 441 - "nixpkgs" 442 - ] 443 - }, 444 - "locked": { 445 - "lastModified": 1721338360, 446 - "narHash": "sha256-1CEhakLtPq+Lqo+p40wo00hkewmyzPAvjBr8ah6Faqk=", 447 - "ref": "refs/heads/dev", 448 - "rev": "98c3678cfbcea5e750a5947394d35a73ae72634a", 449 - "revCount": 48, 450 - "type": "git", 451 - "url": "https://iceshrimp.dev/pyrox/packaging" 452 - }, 453 - "original": { 454 - "type": "git", 455 - "url": "https://iceshrimp.dev/pyrox/packaging" 456 - } 457 - }, 458 466 "indigo": { 459 467 "flake": false, 460 468 "locked": { ··· 613 621 "type": "github" 614 622 } 615 623 }, 624 + "quickshell": { 625 + "inputs": { 626 + "nixpkgs": [ 627 + "caelestia", 628 + "nixpkgs" 629 + ] 630 + }, 631 + "locked": { 632 + "lastModified": 1760228179, 633 + "narHash": "sha256-4Z6k7lv3Zcgk3K+4h60LpqB9wCkR+utkYERU735U068=", 634 + "ref": "refs/heads/master", 635 + "rev": "c9d3ffb6043c5bf3f3009202bad7e0e5132c4a25", 636 + "revCount": 693, 637 + "type": "git", 638 + "url": "https://git.outfoxxed.me/outfoxxed/quickshell" 639 + }, 640 + "original": { 641 + "type": "git", 642 + "url": "https://git.outfoxxed.me/outfoxxed/quickshell" 643 + } 644 + }, 616 645 "root": { 617 646 "inputs": { 618 647 "agenix": "agenix", 619 648 "buildbot-nix": "buildbot-nix", 649 + "caelestia": "caelestia", 620 650 "ctp": "ctp", 621 651 "determinate": "determinate", 622 652 "dix": "dix", ··· 627 657 "golink": "golink", 628 658 "hardware": "hardware", 629 659 "home-manager": "home-manager", 630 - "iceshrimp": "iceshrimp", 631 660 "my-pkgs": "my-pkgs", 632 661 "nix-index-database": "nix-index-database", 633 662 "nixpkgs": "nixpkgs_2", 634 663 "nixpkgs-stalwart-fix": "nixpkgs-stalwart-fix", 635 - "tangled": "tangled", 636 - "vicinae": "vicinae" 664 + "tangled": "tangled" 637 665 } 638 666 }, 639 667 "sqlite-lib-src": { ··· 709 737 "type": "github" 710 738 } 711 739 }, 712 - "systems_5": { 713 - "locked": { 714 - "lastModified": 1681028828, 715 - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 716 - "owner": "nix-systems", 717 - "repo": "default", 718 - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 719 - "type": "github" 720 - }, 721 - "original": { 722 - "owner": "nix-systems", 723 - "repo": "default", 724 - "type": "github" 725 - } 726 - }, 727 740 "tangled": { 728 741 "inputs": { 729 742 "flake-compat": "flake-compat_2", ··· 749 762 "original": { 750 763 "type": "git", 751 764 "url": "https://tangled.org/@tangled.org/core" 752 - } 753 - }, 754 - "vicinae": { 755 - "inputs": { 756 - "flake-utils": "flake-utils_3", 757 - "nixpkgs": [ 758 - "nixpkgs" 759 - ] 760 - }, 761 - "locked": { 762 - "lastModified": 1760025216, 763 - "narHash": "sha256-gyRU+Xv8ABhiSTHFFllwMC7lLzINBiESDFlhZuQoIY0=", 764 - "owner": "vicinaehq", 765 - "repo": "vicinae", 766 - "rev": "7757b8fc6ee8488a8cb27aca3260317132676540", 767 - "type": "github" 768 - }, 769 - "original": { 770 - "owner": "vicinaehq", 771 - "repo": "vicinae", 772 - "type": "github" 773 765 } 774 766 } 775 767 },
+4 -8
flake.nix
··· 44 44 inputs.flake-parts.follows = "flake-parts"; 45 45 inputs.treefmt-nix.follows = ""; 46 46 }; 47 + caelestia = { 48 + url = "github:caelestia-dots/shell"; 49 + inputs.nixpkgs.follows = "nixpkgs"; 50 + }; 47 51 ctp = { 48 52 url = "github:catppuccin/nix"; 49 53 }; ··· 77 81 url = "github:nix-community/home-manager"; 78 82 inputs.nixpkgs.follows = "nixpkgs"; 79 83 }; 80 - iceshrimp = { 81 - url = "git+https://iceshrimp.dev/pyrox/packaging"; 82 - inputs.nixpkgs.follows = "nixpkgs"; 83 - }; 84 84 nix-index-database = { 85 85 url = "github:Mic92/nix-index-database"; 86 86 inputs.nixpkgs.follows = "nixpkgs"; 87 87 }; 88 88 my-pkgs = { 89 89 url = "git+https://git.pyrox.dev/pyrox/pkgs"; 90 - inputs.nixpkgs.follows = "nixpkgs"; 91 - }; 92 - vicinae = { 93 - url = "github:vicinaehq/vicinae"; 94 90 inputs.nixpkgs.follows = "nixpkgs"; 95 91 }; 96 92 tangled = {
-1
homeModules/all-modules.nix
··· 11 11 12 12 inputs.nix-index-database.homeModules.nix-index 13 13 inputs.ctp.homeModules.catppuccin 14 - inputs.vicinae.homeManagerModules.default 15 14 ]; 16 15 }
-1
homeModules/profiles/gui/default.nix
··· 29 29 kanshi.enable = mkDefault false; 30 30 kdeconnect.enable = mkDefault true; 31 31 mako.enable = mkDefault false; 32 - vicinae.enable = mkDefault true; 33 32 swayidle.enable = mkDefault true; 34 33 syncthing.enable = mkDefault false; 35 34 };
+1 -11
homeModules/programs/zed-editor/settings.nix
··· 2 2 auto_update = false; 3 3 buffer_font_family = "BlexMono Nerd Font"; 4 4 buffer_font_size = 15; 5 + disable_ai = true; 5 6 git_panel.button = true; 6 7 load_direnv = "direct"; 7 8 lsp.deno.settings.deno.enable = true; ··· 14 15 ui_font_size = 15; 15 16 vim_mode = true; 16 17 wrap_guides = [ 100 ]; 17 - 18 - assistant = { 19 - enabled = false; 20 - button = false; 21 - version = "2"; 22 - }; 23 - 24 - features = { 25 - copilot = false; 26 - edit_prediction_provider = "none"; 27 - }; 28 18 29 19 icon_theme = { 30 20 mode = "dark";
-1
homeModules/services/default.nix
··· 6 6 ./mako 7 7 ./swayidle 8 8 ./syncthing 9 - ./vicinae 10 9 ]; 11 10 }
-15
homeModules/services/vicinae/default.nix
··· 1 - { 2 - config, 3 - lib, 4 - ... 5 - }: 6 - let 7 - cfg = config.py.services.vicinae; 8 - in 9 - { 10 - options.py.services.vicinae.enable = lib.mkEnableOption "Vicinae"; 11 - config.services.vicinae = lib.mkIf cfg.enable { 12 - enable = true; 13 - autoStart = true; 14 - }; 15 - }
-1
homeModules/wayland/hyprland/default.nix
··· 11 11 in 12 12 { 13 13 imports = [ 14 - ./hyprpanel.nix 15 14 ./services.nix 16 15 ./hypridle.nix 17 16 ./hyprlock.nix
+2
homeModules/wayland/hyprland/env.nix
··· 5 5 "NIXOS_OZONE_WL, 1" 6 6 "XDG_SESSION_TYPE, wayland" 7 7 "QT_QPA_PLATFORM, wayland" 8 + "XDG_CURRENT_DESKTOP, Hyprland" 9 + "XDG_SESSION_DESKTOP, Hyprland" 8 10 ]; 9 11 }
-14
homeModules/wayland/hyprland/hyprpanel.nix
··· 1 - { 2 - config, 3 - lib, 4 - ... 5 - }: 6 - let 7 - cfg = config.wayland.windowManager.hyprland; 8 - in 9 - { 10 - programs.hyprpanel = lib.mkIf cfg.enable { 11 - enable = true; 12 - systemd.enable = true; 13 - }; 14 - }
+2 -2
homeModules/wayland/hyprland/keybindings.nix
··· 13 13 bind = [ 14 14 "SUPER_SHIFT, F, exec, MOZ_DISABLE_RDD_SANDBOX=1 firefox" 15 15 "$mod, Return, exec, ghostty" 16 - "$mod, X, exec, wlogout" 17 - "$mod, D, exec, vicinae toggle" 16 + "$mod, X, global, caelestia:session" 17 + "$mod, D, global, caelestia:launcher" 18 18 "SUPER_SHIFT, E, exit" 19 19 20 20 # Media Binds
-3
homeModules/wayland/hyprland/settings.nix
··· 7 7 windowrules = import ./windowrules.nix; 8 8 in 9 9 { 10 - exec-once = [ 11 - "hyprpanel" 12 - ]; 13 10 animation = [ 14 11 "global, 1, 4, default" 15 12 ];
+4 -2
homeModules/wayland/hyprland/variables.nix
··· 2 2 { 3 3 general = { 4 4 gaps_in = 1; 5 - gaps_out = 1; 6 - gaps_workspaces = 80; 5 + gaps_out = 10; 7 6 layout = "hy3"; 8 7 resize_on_border = true; 9 8 }; ··· 25 24 tap_button_map = "lmr"; 26 25 tap-and-drag = false; 27 26 }; 27 + }; 28 + cursor = { 29 + hotspot_padding = 2; 28 30 }; 29 31 ecosystem = { 30 32 no_update_news = true;
+1 -1
hosts/zaphod/services/misc.nix
··· 1 1 { config, lib, ... }: 2 2 { 3 3 services = { 4 - blueman.enable = true; 4 + blueman.enable = false; 5 5 fstrim.enable = lib.mkDefault true; 6 6 tlp.enable = lib.mkDefault ( 7 7 (lib.versionOlder (lib.versions.majorMinor lib.version) "21.05")
+50
nixosModules/homes/thehedgehog-zaphod/caelestia-cli.json
··· 1 + { 2 + "record": { 3 + "extraArgs": [] 4 + }, 5 + "theme": { 6 + "enableTerm": false, 7 + "enableHypr": false, 8 + "enableDiscord": false, 9 + "enableSpicetify": false, 10 + "enableFuzzel": false, 11 + "enableBtop": true, 12 + "enableGtk": false, 13 + "enableQt": false 14 + }, 15 + "toggles": { 16 + "communication": { 17 + "discord": { 18 + "enable": true, 19 + "match": [ 20 + { 21 + "class": "equibop" 22 + } 23 + ], 24 + "command": [ 25 + "equibop" 26 + ], 27 + "move": true 28 + } 29 + }, 30 + "sysmon": { 31 + "btop": { 32 + "enable": true, 33 + "match": [ 34 + { 35 + "class": "btop", 36 + "title": "btop", 37 + "workspace": { 38 + "name": "special:sysmon" 39 + } 40 + } 41 + ], 42 + "command": [ 43 + "ghostty", 44 + "-e", 45 + "btop" 46 + ] 47 + } 48 + } 49 + } 50 + }
+314
nixosModules/homes/thehedgehog-zaphod/caelestia-shell.json
··· 1 + { 2 + "appearance": { 3 + "anim": { 4 + "durations": { 5 + "scale": 0.5 6 + } 7 + }, 8 + "font": { 9 + "family": { 10 + "clock": "Inter", 11 + "material": "Material Symbols Rounded", 12 + "mono": "BlexMono Nerd Font", 13 + "sans": "Inter" 14 + }, 15 + "size": { 16 + "scale": 1.1 17 + } 18 + }, 19 + "padding": { 20 + "scale": 1 21 + }, 22 + "rounding": { 23 + "scale": 0 24 + }, 25 + "spacing": { 26 + "scale": 0.5 27 + }, 28 + "transparency": { 29 + "base": 0.85, 30 + "enabled": false, 31 + "layers": 0.4 32 + } 33 + }, 34 + "background": { 35 + "desktopClock": { 36 + "enabled": false 37 + }, 38 + "enabled": true, 39 + "visualiser": { 40 + "autoHide": true, 41 + "enabled": false, 42 + "rounding": 1, 43 + "spacing": 1 44 + } 45 + }, 46 + "bar": { 47 + "clock": { 48 + "showIcon": false 49 + }, 50 + "dragThreshold": 20, 51 + "entries": [ 52 + { 53 + "enabled": true, 54 + "id": "workspaces" 55 + }, 56 + { 57 + "enabled": true, 58 + "id": "spacer" 59 + }, 60 + { 61 + "enabled": false, 62 + "id": "activeWindow" 63 + }, 64 + { 65 + "enabled": true, 66 + "id": "spacer" 67 + }, 68 + { 69 + "enabled": true, 70 + "id": "clock" 71 + }, 72 + { 73 + "enabled": true, 74 + "id": "statusIcons" 75 + }, 76 + { 77 + "enabled": true, 78 + "id": "tray" 79 + }, 80 + { 81 + "enabled": true, 82 + "id": "power" 83 + } 84 + ], 85 + "persistent": true, 86 + "scrollActions": { 87 + "brightness": false, 88 + "volume": false, 89 + "workspaces": false 90 + }, 91 + "showOnHover": true, 92 + "status": { 93 + "showAudio": true, 94 + "showBattery": true, 95 + "showBluetooth": true, 96 + "showKbLayout": false, 97 + "showLockStatus": true, 98 + "showMicrophone": false, 99 + "showNetwork": true 100 + }, 101 + "tray": { 102 + "background": true, 103 + "compact": false, 104 + "iconSubs": [], 105 + "recolour": true 106 + }, 107 + "workspaces": { 108 + "activeIndicator": true, 109 + "activeLabel": "", 110 + "activeTrail": false, 111 + "label": " ", 112 + "occupiedBg": false, 113 + "occupiedLabel": "", 114 + "perMonitorWorkspaces": true, 115 + "showWindows": true, 116 + "shown": 5 117 + } 118 + }, 119 + "border": { 120 + "rounding": 0, 121 + "thickness": 10 122 + }, 123 + "dashboard": { 124 + "dragThreshold": 50, 125 + "enabled": true, 126 + "mediaUpdateInterval": 500, 127 + "showOnHover": true 128 + }, 129 + "general": { 130 + "apps": { 131 + "audio": ["pwvucontrol"], 132 + "explorer": ["thunar"], 133 + "playback": ["mpv"], 134 + "terminal": ["ghostty"] 135 + }, 136 + "battery": { 137 + "criticalLevel": 3, 138 + "warnLevels": [ 139 + { 140 + "icon": "battery_android_frame_2", 141 + "level": 20, 142 + "message": "You might want to plug in a charger", 143 + "title": "Low battery" 144 + }, 145 + { 146 + "icon": "battery_android_frame_1", 147 + "level": 10, 148 + "message": "You should probably plug in a charger <b>now</b>", 149 + "title": "Did you see the previous message?" 150 + }, 151 + { 152 + "critical": true, 153 + "icon": "battery_android_alert", 154 + "level": 5, 155 + "message": "PLUG THE CHARGER RIGHT NOW!!", 156 + "title": "Critical battery level" 157 + } 158 + ] 159 + }, 160 + "idle": { 161 + "inhibitWhenAudio": true, 162 + "lockBeforeSleep": true, 163 + "timeouts": [ 164 + { 165 + "idleAction": "lock", 166 + "timeout": 180 167 + }, 168 + { 169 + "idleAction": "dpms off", 170 + "returnAction": "dpms on", 171 + "timeout": 300 172 + }, 173 + { 174 + "idleAction": ["systemctl", "suspend-then-hibernate"], 175 + "timeout": 600 176 + } 177 + ] 178 + } 179 + }, 180 + "launcher": { 181 + "actionPrefix": ">", 182 + "actions": [ 183 + { 184 + "command": ["autocomplete", "calc"], 185 + "dangerous": false, 186 + "description": "Do simple math equations (powered by Qalc)", 187 + "enabled": true, 188 + "icon": "calculate", 189 + "name": "Calculator" 190 + }, 191 + { 192 + "command": ["systemctl", "poweroff"], 193 + "dangerous": true, 194 + "description": "Shutdown the system", 195 + "enabled": true, 196 + "icon": "power_settings_new", 197 + "name": "Shutdown" 198 + }, 199 + { 200 + "command": ["systemctl", "reboot"], 201 + "dangerous": true, 202 + "description": "Reboot the system", 203 + "enabled": true, 204 + "icon": "cached", 205 + "name": "Reboot" 206 + }, 207 + { 208 + "command": ["loginctl", "terminate-user", ""], 209 + "dangerous": true, 210 + "description": "Log out of the current session", 211 + "enabled": true, 212 + "icon": "exit_to_app", 213 + "name": "Logout" 214 + }, 215 + { 216 + "command": ["loginctl", "lock-session"], 217 + "dangerous": false, 218 + "description": "Lock the current session", 219 + "enabled": true, 220 + "icon": "lock", 221 + "name": "Lock" 222 + }, 223 + { 224 + "command": ["systemctl", "suspend-then-hibernate"], 225 + "dangerous": false, 226 + "description": "Suspend then hibernate", 227 + "enabled": true, 228 + "icon": "bedtime", 229 + "name": "Sleep" 230 + } 231 + ], 232 + "dragThreshold": 50, 233 + "enableDangerousActions": false, 234 + "hiddenApps": [], 235 + "maxShown": 7, 236 + "maxWallpapers": 9, 237 + "showOnHover": false, 238 + "specialPrefix": "@", 239 + "useFuzzy": { 240 + "actions": false, 241 + "apps": true, 242 + "schemes": false, 243 + "variants": false, 244 + "wallpapers": false 245 + }, 246 + "vimKeybinds": true 247 + }, 248 + "lock": { 249 + "recolourLogo": false 250 + }, 251 + "notifs": { 252 + "actionOnClick": true, 253 + "clearThreshold": 0.3, 254 + "defaultExpireTimeout": 5000, 255 + "expandThreshold": 20, 256 + "expire": true 257 + }, 258 + "osd": { 259 + "enableBrightness": true, 260 + "enableMicrophone": false, 261 + "enabled": true, 262 + "hideDelay": 2000 263 + }, 264 + "paths": { 265 + "mediaGif": "", 266 + "sessionGif": "", 267 + "wallpaperDir": "~/bgs/wallpapers/xenia/" 268 + }, 269 + "services": { 270 + "audioIncrement": 0.1, 271 + "defaultPlayer": "Spotify", 272 + "gpuType": "", 273 + "playerAliases": [ 274 + { 275 + "from": "Mozilla firefox", 276 + "to": "Firefox" 277 + } 278 + ], 279 + "smartScheme": false, 280 + "useFahrenheit": true, 281 + "useTwelveHourClock": false, 282 + "visualiserBars": 0, 283 + "weatherLocation": "Norfolk+Virginia" 284 + }, 285 + "session": { 286 + "commands": { 287 + "hibernate": ["systemctl", "hibernate"], 288 + "logout": ["loginctl", "terminate-user", ""], 289 + "reboot": ["systemctl", "reboot"], 290 + "shutdown": ["systemctl", "poweroff"] 291 + }, 292 + "dragThreshold": 30, 293 + "enabled": true, 294 + "vimKeybinds": false 295 + }, 296 + "sidebar": { 297 + "dragThreshold": 80, 298 + "enabled": true 299 + }, 300 + "utilities": { 301 + "enabled": true, 302 + "maxToasts": 4, 303 + "toasts": { 304 + "audioInputChanged": true, 305 + "audioOutputChanged": true, 306 + "capsLockChanged": true, 307 + "chargingChanged": true, 308 + "configLoaded": true, 309 + "dndChanged": true, 310 + "gameModeChanged": true, 311 + "numLockChanged": true 312 + } 313 + } 314 + }
+14
nixosModules/homes/thehedgehog-zaphod/default.nix
··· 1 1 { 2 2 pkgs, 3 3 config, 4 + inputs, 4 5 ... 5 6 }: 6 7 let ··· 8 9 in 9 10 { 10 11 home-manager.users.thehedgehog = { 12 + imports = [ 13 + inputs.caelestia.homeManagerModules.default 14 + ]; 11 15 home.packages = [ 12 16 pkgs.mindustry 13 17 pkgs.signal-desktop ··· 61 65 }; 62 66 } 63 67 ]; 68 + programs.caelestia = { 69 + enable = true; 70 + settings = builtins.fromJSON (builtins.readFile ./caelestia-shell.json); 71 + systemd = { 72 + enable = true; 73 + target = "graphical-session.target"; 74 + }; 75 + cli.enable = true; 76 + cli.settings = builtins.fromJSON (builtins.readFile ./caelestia-cli.json); 77 + }; 64 78 }; 65 79 }