Compare commits

...

3 commits

9 changed files with 151 additions and 66 deletions

View file

@ -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

90
flake.lock generated
View file

@ -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": {

View file

@ -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;

View file

@ -14,6 +14,7 @@ in {
y = 0;
})
(leaf "transform" "normal")
(flag "focus-at-startup")
])
(output "eDP-1" [
(leaf "mode" "2560x1440@165.003")

View file

@ -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;

View file

@ -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;
};
}

View file

@ -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 = {

View file

@ -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;
};
}

View file

@ -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;
};
};
};
}