From 0484a810f87f8d09dfce5fb24ce22afd1aceb592 Mon Sep 17 00:00:00 2001 From: ulic-youthlic Date: Fri, 2 May 2025 13:06:25 +0800 Subject: [PATCH 1/3] update flake inputs --- flake.lock | 90 +++++++++++++++++++++++++++--------------------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/flake.lock b/flake.lock index 11378e6..c9a2e91 100644 --- a/flake.lock +++ b/flake.lock @@ -90,11 +90,11 @@ "bt-tracker": { "flake": false, "locked": { - "lastModified": 1746087093, - "narHash": "sha256-UFTBJnKCGkRXxWQT4vi85SdI15I/sQf2Ldr63BftiHs=", + "lastModified": 1746144670, + "narHash": "sha256-l1Roga5tbx5775OQDD34lQAntmlU56A3HKqJrK86P2I=", "owner": "XIU2", "repo": "TrackersListCollection", - "rev": "3ce9324a2612bd84051d3dc30bb9d5a5a7804e95", + "rev": "0a9ac8d11e9e67649edf33b378190e17ce1e7e9e", "type": "github" }, "original": { @@ -113,11 +113,11 @@ ] }, "locked": { - "lastModified": 1741008028, - "narHash": "sha256-Dypah+fVZ30hCRG96hu1Vmi0DHQSv6XKfy8S6kiS2CQ=", + "lastModified": 1746104585, + "narHash": "sha256-wfrNTYEx5ZfTvUKquiBc+hW44wg3VrPPMcPLnQ0q7bY=", "owner": "daeuniverse", "repo": "flake.nix", - "rev": "2d2ea1661c89efc9c12781572b95f4bb700f2a4a", + "rev": "44f8089999107b0bfe4b7cf909f56d8da67ec951", "type": "github" }, "original": { @@ -352,11 +352,11 @@ "zon2nix": "zon2nix" }, "locked": { - "lastModified": 1746045191, - "narHash": "sha256-nqwo0TXEwYLTRjbj+akj30SkpXtVozEzaSAIyp41yTA=", + "lastModified": 1746118269, + "narHash": "sha256-nWCxF4Fl53yaJzxlHVDkDZNrWGsrYk9f5ondtMa+S04=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "2b4f1f8b84ac7960ecd4b9d06bc11cf47f0b9ee9", + "rev": "e79bf71f2322fa5d54af07f2985f8460290f2085", "type": "github" }, "original": { @@ -441,11 +441,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1745933300, - "narHash": "sha256-BJpxqZar6vrmv1MtZIjmBa7x+0HEP8kmYeFejz7m2uc=", + "lastModified": 1746132885, + "narHash": "sha256-naxkk3EcVXP8gPeG/mQq2i37ITvAZs1AKw7K7u5DXuE=", "owner": "helix-editor", "repo": "helix", - "rev": "1c32fb2d4df3f06f96ca33db7d9f9b15297c7f8d", + "rev": "aa3fad84ef136b482eb5f84abbf109f25af9700a", "type": "github" }, "original": { @@ -462,11 +462,11 @@ ] }, "locked": { - "lastModified": 1746040799, - "narHash": "sha256-osgPX/SzIpkR50vev/rqoTEAVkEcOWXoQXmbzsaI4KU=", + "lastModified": 1746134275, + "narHash": "sha256-sxfY7TIP59o2hcueanoRAtg833PiNroZkQDwlKJxGvs=", "owner": "nix-community", "repo": "home-manager", - "rev": "5f217e5a319f6c186283b530f8c975e66c028433", + "rev": "015f1913109d44c36e683b55f0e47e283b383caa", "type": "github" }, "original": { @@ -486,11 +486,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1746059639, - "narHash": "sha256-Ert1XJsjWZ+aFuH5dLBOZwQGOR+ZAY/f3NnhaNNcGfw=", + "lastModified": 1746133891, + "narHash": "sha256-ZZVz8ZPa+T9/pKt3khNKZ79dya5qWX1nMhJ1D46vpE8=", "owner": "jj-vcs", "repo": "jj", - "rev": "1b300fefa2170bfaf239d1e91c9085b6aa9bbeff", + "rev": "0eceed9832d53b8e870123c88d1c1f0514fb061b", "type": "github" }, "original": { @@ -550,11 +550,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1746090057, - "narHash": "sha256-rjwQyWvMtXdE0QWyDOEyH8GYckZxJcu+zIXNclLRUm4=", + "lastModified": 1746142190, + "narHash": "sha256-t36K3TWLMRWoGyjYyo+H8bBquDcp4orZqNZVagWNjwY=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "a6c4c6ac17e6cd0062ac7c4b73676a90f5600c7b", + "rev": "af701c1c16c289b1b14f333d844b4f756308d244", "type": "github" }, "original": { @@ -583,11 +583,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1746087578, - "narHash": "sha256-bPmkPoFqt1Fzrjm0YSnA6rYoVTbJvhBv7DRLzyq3Sw0=", + "lastModified": 1746124654, + "narHash": "sha256-LmhkAt2KLvf8lp+kEUQuTFmmv7iXO8IkwwSaPasfXJw=", "owner": "YaLTeR", "repo": "niri", - "rev": "68589cd5a1e043e1b49116c2add4a880dce93a3b", + "rev": "6c9705dd4b2eaba25f024d1a3efd7943fd393632", "type": "github" }, "original": { @@ -604,11 +604,11 @@ "rust-overlay": "rust-overlay_3" }, "locked": { - "lastModified": 1746023382, - "narHash": "sha256-AaT+V44rqEQbXvouwPnU7wJHiLR5Bq8uRvh7f+sOPgQ=", + "lastModified": 1746109800, + "narHash": "sha256-sjDpqdvbQaiA6OAsgLE4niz6hmmCpoUH0cl5zyfu6FI=", "owner": "lilyinstarlight", "repo": "nixos-cosmic", - "rev": "1d54ddac1e8db612bea4f279a0ea48ab35f420be", + "rev": "9fe1aa7b6a1043003b38f36626dd29b52247d720", "type": "github" }, "original": { @@ -682,11 +682,11 @@ }, "nixpkgs-stable_2": { "locked": { - "lastModified": 1745921652, - "narHash": "sha256-hEAvEN+y/OQ7wA7+u3bFJwXSe8yoSf2QaOMH3hyTJTQ=", + "lastModified": 1746055187, + "narHash": "sha256-3dqArYSMP9hM7Qpy5YWhnSjiqniSaT2uc5h2Po7tmg0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b000159bba69b0106a42f65e52dbf27f77aca9d3", + "rev": "3e362ce63e16b9572d8c2297c04f7c19ab6725a5", "type": "github" }, "original": { @@ -698,11 +698,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1745921652, - "narHash": "sha256-hEAvEN+y/OQ7wA7+u3bFJwXSe8yoSf2QaOMH3hyTJTQ=", + "lastModified": 1746055187, + "narHash": "sha256-3dqArYSMP9hM7Qpy5YWhnSjiqniSaT2uc5h2Po7tmg0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b000159bba69b0106a42f65e52dbf27f77aca9d3", + "rev": "3e362ce63e16b9572d8c2297c04f7c19ab6725a5", "type": "github" }, "original": { @@ -714,11 +714,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1745930157, - "narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=", + "lastModified": 1746064326, + "narHash": "sha256-r7IZkN9NhK/IO9/J6D9ih2P1OXb67nr5HaQ1YAte18w=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae", + "rev": "91bf6dffa21c7709607c9fdbf9a6acb44e7a0a5d", "type": "github" }, "original": { @@ -754,11 +754,11 @@ "nur-rycee": { "flake": false, "locked": { - "lastModified": 1746072213, - "narHash": "sha256-ucL/XWOitrhH44UymaGhBYtEsr1DTqb1BDZuVOpGAYc=", + "lastModified": 1746158597, + "narHash": "sha256-IugPXmlzFdAMxeqACtd40yLslezVDxUqPvpEn5LWcp4=", "owner": "rycee", "repo": "nur-expressions", - "rev": "debaa11dba5904b70a4e9db1d9c68ae9a6f82ebd", + "rev": "47711ca43fc3f91fa566038cd2681812c6c3252d", "type": "gitlab" }, "original": { @@ -841,11 +841,11 @@ ] }, "locked": { - "lastModified": 1745980514, - "narHash": "sha256-CITAeiuXGjDvT5iZBXr6vKVWQwsUQLJUMFO91bfJFC4=", + "lastModified": 1746067100, + "narHash": "sha256-6JeEbboDvRjLwB9kzCnmWj+f+ZnMtKOe5c2F1VBpaTs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "7fbdae44b0f40ea432e46fd152ad8be0f8f41ad6", + "rev": "026e8fedefd6b167d92ed04b195c658d95ffc7a5", "type": "github" }, "original": { @@ -902,11 +902,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1746065148, - "narHash": "sha256-NR8JCOo9BrK0T7iPmNKR+fa/zS+do+GgAMVg4fwMvYM=", + "lastModified": 1746158690, + "narHash": "sha256-Pe2emz36QL8GOILXvvmH/agqkspZFrcOrQxv6uufaEc=", "owner": "danth", "repo": "stylix", - "rev": "b4d3137c5ce960073a991bd99a333cad1b233101", + "rev": "bc38629511dd9cc78c5ca37a6e546fa66330d50e", "type": "github" }, "original": { From 345740c2137613ae4bb1093b8c64a870653e9cda Mon Sep 17 00:00:00 2001 From: ulic-youthlic Date: Fri, 2 May 2025 15:36:40 +0800 Subject: [PATCH 2/3] set primary screen in niri config --- home/david/configurations/Akun/niri.nix | 1 + home/david/configurations/Tytonidae/niri.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/home/david/configurations/Akun/niri.nix b/home/david/configurations/Akun/niri.nix index 15f2f61..02e597f 100644 --- a/home/david/configurations/Akun/niri.nix +++ b/home/david/configurations/Akun/niri.nix @@ -9,6 +9,7 @@ in { (output "eDP-1" [ (leaf "mode" "1920x1200@60.018") (leaf "scale" 1.0) + (flag "focus-at-startup") (leaf "position" { x = 0; y = 0; diff --git a/home/david/configurations/Tytonidae/niri.nix b/home/david/configurations/Tytonidae/niri.nix index 016d986..dc6c1af 100644 --- a/home/david/configurations/Tytonidae/niri.nix +++ b/home/david/configurations/Tytonidae/niri.nix @@ -14,6 +14,7 @@ in { y = 0; }) (leaf "transform" "normal") + (flag "focus-at-startup") ]) (output "eDP-1" [ (leaf "mode" "2560x1440@165.003") From ff6b65c5ca36ef2a7029910f95fe90686b871f8b Mon Sep 17 00:00:00 2001 From: ulic-youthlic Date: Fri, 2 May 2025 15:36:40 +0800 Subject: [PATCH 3/3] swtch displayManager from gdm to greetd --- README.md | 16 +++--- nixos/configurations/Akun/default.nix | 2 +- nixos/configurations/Akun/gui.nix | 20 ++++++++ nixos/configurations/Tytonidae/default.nix | 3 +- nixos/configurations/Tytonidae/gui.nix | 26 ++++++++++ nixos/modules/gui/niri.nix | 58 ++++++++++++++++++---- 6 files changed, 104 insertions(+), 21 deletions(-) create mode 100644 nixos/configurations/Akun/gui.nix create mode 100644 nixos/configurations/Tytonidae/gui.nix diff --git a/README.md b/README.md index 6b8ac59..8449aa5 100644 --- a/README.md +++ b/README.md @@ -14,11 +14,11 @@ Hey, you. This is my nixos configurations. - david@Tytonidae -| Specialisation | DE / WM | Shell | Editor | Terminal | Launcher | Browser | DM | -| -------------- | --------- | ----------- | ------ | -------- | --------------- | ------- | -------------- | -| default | niri | fish + bash | helix | ghostty | fuzzel | firefox | gdm | -| cosmic | cosmic de | fish + bash | helix | ghostty | cosmic-launcher | firefox | cosmic-greeter | -| kde | kde | fish + bash | helix | ghostty | - | firefox | sddm | +| Specialisation | DE / WM | Shell | Editor | Terminal | Launcher | Browser | DM | +| -------------- | --------- | ----------- | ------ | -------- | --------------- | ------- | --------------- | +| default | niri | fish + bash | helix | ghostty | fuzzel | firefox | greetd + regret | +| cosmic | cosmic de | fish + bash | helix | ghostty | cosmic-launcher | firefox | cosmic-greeter | +| kde | kde | fish + bash | helix | ghostty | - | firefox | sddm | - david@Akun @@ -28,9 +28,9 @@ Hey, you. This is my nixos configurations. - alice@Cape -| Specialisation | DE / WM | Shell | Editor | Terminal | Launcher | Browser | DM | -| -------------- | ------- | ----------- | ------ | -------- | -------- | ------- | --- | -| default | - | fish + bash | helix | - | - | - | - | +| Specialisation | DE / WM | Shell | Editor | Terminal | Launcher | Browser | DM | +| -------------- | ------- | ----------- | ------ | -------- | -------- | ------- | -- | +| default | - | fish + bash | helix | - | - | - | - | ## FlakE OutputS and StructurE diff --git a/nixos/configurations/Akun/default.nix b/nixos/configurations/Akun/default.nix index 6c1788a..4989924 100644 --- a/nixos/configurations/Akun/default.nix +++ b/nixos/configurations/Akun/default.nix @@ -1,5 +1,6 @@ {pkgs, ...}: { imports = [ + ./gui.nix ./hardware-configuration.nix ./stylix.nix ./users @@ -21,7 +22,6 @@ kanata.enable = true; tailscale.enable = true; }; - gui.enabled = "niri"; }; programs.gnupg.agent = { enable = true; diff --git a/nixos/configurations/Akun/gui.nix b/nixos/configurations/Akun/gui.nix new file mode 100644 index 0000000..53a3b5d --- /dev/null +++ b/nixos/configurations/Akun/gui.nix @@ -0,0 +1,20 @@ +{...}: let + extraConfig = '' + output "eDP-1" { + mode "1920x1200@60.018" + scale 1.0 + focus-at-startup + position x=0 y=0 + transform "normal" + } + window-rule { + match app-id="apps.regreet" + open-on-output "eDP-1" + } + ''; +in { + youthlic.gui = { + enabled = "niri"; + niri.extraConfig = extraConfig; + }; +} diff --git a/nixos/configurations/Tytonidae/default.nix b/nixos/configurations/Tytonidae/default.nix index 5bcc8e8..f19f633 100644 --- a/nixos/configurations/Tytonidae/default.nix +++ b/nixos/configurations/Tytonidae/default.nix @@ -2,6 +2,7 @@ lib, pkgs, inputs, + config, ... }: { imports = @@ -11,6 +12,7 @@ ++ [ ./users ./stylix.nix + ./gui.nix # Include the hardware related config ./hardware-configuration.nix @@ -44,7 +46,6 @@ owncast.enable = true; minio.enable = true; }; - gui.enabled = "niri"; }; # specialisation = { diff --git a/nixos/configurations/Tytonidae/gui.nix b/nixos/configurations/Tytonidae/gui.nix new file mode 100644 index 0000000..fc9c3f0 --- /dev/null +++ b/nixos/configurations/Tytonidae/gui.nix @@ -0,0 +1,26 @@ +{pkgs, ...}: let + extraConfig = '' + output "DP-1" { + mode "2560x1440@169.900" + scale 1.0 + position x=0 y=0 + transform "normal" + focus-at-startup + } + output "eDP-1" { + mode "2560x1440@165.003" + scale 1.5 + position x=2560 y=0 + transform "normal" + } + window-rule { + match app-id="apps.regreet" + open-on-output "DP-1" + } + ''; +in { + youthlic.gui = { + enabled = "niri"; + niri.extraConfig = extraConfig; + }; +} diff --git a/nixos/modules/gui/niri.nix b/nixos/modules/gui/niri.nix index dc42cda..faeec95 100644 --- a/nixos/modules/gui/niri.nix +++ b/nixos/modules/gui/niri.nix @@ -6,6 +6,13 @@ }: let cfg = config.youthlic.gui; in { + options = { + youthlic.gui.niri = { + extraConfig = lib.mkOption { + type = lib.types.str; + }; + }; + }; config = lib.mkIf (cfg.enabled == "niri") { qt = { enable = true; @@ -61,20 +68,49 @@ in { hardware.bluetooth = { enable = true; }; - services.xserver = { - enable = true; - xkb = { - layout = "cn"; - variant = ""; - }; - displayManager.gdm = { + services = { + greetd = let + niriConfig = pkgs.writeText "greetd-niri-config.kdl" ('' + binds {} + hotkey-overlay { + skip-at-startup + } + gestures { + hot-corners { + off + } + } + spawn-at-startup "${lib.getExe pkgs.swaybg}" "-i" "${config.stylix.image}" + '' + + config.youthlic.gui.niri.extraConfig); + in { enable = true; - wayland = true; + settings = { + default_session = { + command = "env GTK_USE_PORTAL=0 GDK_DEBUG=no-portals ${lib.getExe' config.programs.niri.package "niri"} --config ${niriConfig} -- ${lib.getExe config.programs.regreet.package}"; + }; + }; + }; + xserver = { + enable = true; + xkb = { + layout = "us"; + variant = ""; + }; + # displayManager.gdm = { + # enable = true; + # wayland = true; + # }; }; }; - programs.niri = { - enable = true; - package = pkgs.niri-unstable; + programs = { + regreet = { + enable = true; + }; + niri = { + enable = true; + package = pkgs.niri-unstable; + }; }; }; }