this repo has no description
0
fork

Configure Feed

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

feat(linux): launch hyprland using uwsm + noctalia shell service

wardxela d865fc6e 0684e55f

+108 -18
+65 -4
flake.lock
··· 197 197 }, 198 198 "flake-utils": { 199 199 "inputs": { 200 - "systems": "systems_2" 200 + "systems": "systems_3" 201 201 }, 202 202 "locked": { 203 203 "lastModified": 1694529238, ··· 234 234 }, 235 235 "flake-utils_2": { 236 236 "inputs": { 237 - "systems": "systems_4" 237 + "systems": "systems_5" 238 238 }, 239 239 "locked": { 240 240 "lastModified": 1731533236, ··· 392 392 "type": "github" 393 393 } 394 394 }, 395 + "noctalia": { 396 + "inputs": { 397 + "nixpkgs": [ 398 + "nixpkgs" 399 + ], 400 + "quickshell": [ 401 + "quickshell" 402 + ], 403 + "systems": "systems" 404 + }, 405 + "locked": { 406 + "lastModified": 1761859254, 407 + "narHash": "sha256-oB8c4Kt89E0oZyBssWrqMyN1/q7oz+sD9dBRf2yOwaw=", 408 + "owner": "noctalia-dev", 409 + "repo": "noctalia-shell", 410 + "rev": "e1d39f3bbcbebbb83c2ceea309495e4c7c869e0f", 411 + "type": "github" 412 + }, 413 + "original": { 414 + "owner": "noctalia-dev", 415 + "repo": "noctalia-shell", 416 + "type": "github" 417 + } 418 + }, 395 419 "nur": { 396 420 "inputs": { 397 421 "flake-parts": "flake-parts", ··· 446 470 "nixpkgs": [ 447 471 "nixpkgs" 448 472 ], 449 - "systems": "systems" 473 + "systems": "systems_2" 450 474 }, 451 475 "locked": { 452 476 "lastModified": 1761486540, ··· 462 486 "type": "github" 463 487 } 464 488 }, 489 + "quickshell": { 490 + "inputs": { 491 + "nixpkgs": [ 492 + "nixpkgs" 493 + ] 494 + }, 495 + "locked": { 496 + "lastModified": 1761821581, 497 + "narHash": "sha256-nLuc6jA7z+H/6bHPEBSOYPbz7RtvNCZiTKmYItJuBmM=", 498 + "owner": "outfoxxed", 499 + "repo": "quickshell", 500 + "rev": "db1777c20b936a86528c1095cbcb1ebd92801402", 501 + "type": "github" 502 + }, 503 + "original": { 504 + "owner": "outfoxxed", 505 + "repo": "quickshell", 506 + "type": "github" 507 + } 508 + }, 465 509 "root": { 466 510 "inputs": { 467 511 "home-manager": "home-manager", 468 512 "nix-darwin": "nix-darwin", 469 513 "nixpkgs": "nixpkgs", 514 + "noctalia": "noctalia", 470 515 "nur": "nur", 471 516 "nvf": "nvf", 517 + "quickshell": "quickshell", 472 518 "solaar": "solaar", 473 519 "stylix": "stylix", 474 520 "vicinae": "vicinae", ··· 535 581 "nixpkgs" 536 582 ], 537 583 "nur": "nur_2", 538 - "systems": "systems_3", 584 + "systems": "systems_4", 539 585 "tinted-foot": "tinted-foot", 540 586 "tinted-kitty": "tinted-kitty", 541 587 "tinted-schemes": "tinted-schemes", ··· 602 648 } 603 649 }, 604 650 "systems_4": { 651 + "locked": { 652 + "lastModified": 1681028828, 653 + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 654 + "owner": "nix-systems", 655 + "repo": "default", 656 + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 657 + "type": "github" 658 + }, 659 + "original": { 660 + "owner": "nix-systems", 661 + "repo": "default", 662 + "type": "github" 663 + } 664 + }, 665 + "systems_5": { 605 666 "locked": { 606 667 "lastModified": 1681028828, 607 668 "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+5
flake.nix
··· 12 12 nix-darwin.url = "github:LnL7/nix-darwin/master"; 13 13 nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; 14 14 # TODO: https://github.com/NixOS/nixpkgs/issues/327982 15 + quickshell.url = "github:outfoxxed/quickshell"; 16 + quickshell.inputs.nixpkgs.follows = "nixpkgs"; 17 + noctalia.url = "github:noctalia-dev/noctalia-shell"; 18 + noctalia.inputs.nixpkgs.follows = "nixpkgs"; 19 + noctalia.inputs.quickshell.follows = "quickshell"; 15 20 zen-browser.url = "github:0xc000022070/zen-browser-flake"; 16 21 zen-browser.inputs.nixpkgs.follows = "nixpkgs"; 17 22 nvf.url = "github:notashelf/nvf";
+11 -11
home/linux/hyprland.nix
··· 3 3 { 4 4 wayland.windowManager.hyprland = { 5 5 enable = true; 6 + systemd.enable = false; 6 7 package = null; 7 8 portalPackage = null; 8 9 settings = ··· 12 13 secondDesktop = "HDMI-A-2"; 13 14 numbers = lib.stringToCharacters "123456789"; 14 15 letters = lib.stringToCharacters "abcdefgimnopqrstuvwxyz"; 16 + launchApp = app: "uwsm app -- ${app}"; 15 17 in 16 18 { 17 19 input = { ··· 63 65 ]; 64 66 65 67 bind = lib.flatten [ 66 - "${mod}, space, exec, vicinae toggle" 68 + "${mod}, space, exec, ${launchApp "vicinae toggle"}" 67 69 68 70 ", xf86audiolowervolume, exec, volumectl -u down" 69 71 ", xf86audioraisevolume, exec, volumectl -u up" ··· 100 102 ]; 101 103 102 104 exec-once = [ 103 - "AmneziaVPN" 104 - "zeditor" 105 - "thunderbird" 106 - "Telegram" 107 - "anytype" 108 - "slack" 109 - "discord" 110 - "zen-beta" 111 - "kitty" 112 - "chromium" 105 + (launchApp "zeditor") 106 + (launchApp "thunderbird") 107 + (launchApp "Telegram") 108 + (launchApp "anytype") 109 + (launchApp "slack") 110 + (launchApp "discord") 111 + (launchApp "zen-beta") 112 + (launchApp "kitty") 113 113 ]; 114 114 }; 115 115 };
+1 -1
modules/linux/programs/default.nix
··· 3 3 { 4 4 imports = [ 5 5 ./hyprland.nix 6 + ./uwsm.nix 6 7 ]; 7 8 8 9 programs = { ··· 14 15 steam.enable = true; 15 16 steam.gamescopeSession.enable = true; 16 17 gamemode.enable = true; 17 - hyprland.enable = true; 18 18 }; 19 19 }
+1
modules/linux/programs/hyprland.nix
··· 3 3 { 4 4 programs.hyprland = { 5 5 enable = true; 6 + withUWSM = true; 6 7 }; 7 8 }
+14
modules/linux/programs/uwsm.nix
··· 1 + { ... }: 2 + 3 + { 4 + programs.uwsm = { 5 + enable = true; 6 + waylandCompositors = { 7 + hyprland = { 8 + prettyName = "Hyprland"; 9 + comment = "Hyprland compositor managed by UWSM"; 10 + binPath = "/run/current-system/sw/bin/Hyprland"; 11 + }; 12 + }; 13 + }; 14 + }
+1
modules/linux/services/default.nix
··· 4 4 imports = [ 5 5 ./gnome.nix 6 6 ./greetd.nix 7 + ./noctalia.nix 7 8 ./openssh.nix 8 9 ./pipewire.nix 9 10 ./solaar.nix
+1 -2
modules/linux/services/greetd.nix
··· 5 5 enable = true; 6 6 settings = { 7 7 default_session = { 8 - command = "${lib.getExe pkgs.tuigreet} --cmd hyprland"; 9 - user = "greeter"; 8 + command = "${lib.getExe pkgs.tuigreet} --cmd 'uwsm start hyprland-uwsm.desktop'"; 10 9 }; 11 10 }; 12 11 };
+9
modules/linux/services/noctalia.nix
··· 1 + { inputs, ... }: 2 + 3 + { 4 + imports = [ 5 + inputs.noctalia.nixosModules.default 6 + ]; 7 + 8 + services.noctalia-shell.enable = true; 9 + }