diff options
| author | Freya Murphy <freya@freyacat.org> | 2026-05-28 10:01:38 -0400 |
|---|---|---|
| committer | Freya Murphy <freya@freyacat.org> | 2026-05-28 10:02:07 -0400 |
| commit | c393d0110d578f65f69e426d41d478bc65d6c831 (patch) | |
| tree | 4b30609f9d542d949483afacdc6f5aff151ee548 | |
| parent | make openrgb a full module, have auto select profile on system start (diff) | |
| download | dotfiles-nix-c393d0110d578f65f69e426d41d478bc65d6c831.tar.gz dotfiles-nix-c393d0110d578f65f69e426d41d478bc65d6c831.tar.bz2 dotfiles-nix-c393d0110d578f65f69e426d41d478bc65d6c831.zip | |
add greetd support
| -rw-r--r-- | home/desktops/hyprland/hyprland.lua | 8 | ||||
| -rw-r--r-- | hosts/kaworu/default.nix | 2 | ||||
| -rw-r--r-- | hosts/shinji/default.nix | 2 | ||||
| -rw-r--r-- | hosts/thinkpad/default.nix | 2 | ||||
| -rw-r--r-- | lib/home.nix | 2 | ||||
| -rw-r--r-- | options.nix | 15 | ||||
| -rw-r--r-- | system/default.nix | 1 | ||||
| -rw-r--r-- | system/desktops/default.nix | 1 | ||||
| -rw-r--r-- | system/login/default.nix | 6 | ||||
| -rw-r--r-- | system/login/greetd.nix | 25 | ||||
| -rw-r--r-- | system/login/ly.nix (renamed from system/desktops/ly.nix) | 2 |
11 files changed, 59 insertions, 7 deletions
diff --git a/home/desktops/hyprland/hyprland.lua b/home/desktops/hyprland/hyprland.lua index 54a61f4..42a64ee 100644 --- a/home/desktops/hyprland/hyprland.lua +++ b/home/desktops/hyprland/hyprland.lua @@ -44,7 +44,7 @@ hl.config({ --[[ MONITORS ]]-- -for _,monitor in pairs(config.monitors) do +for _,monitor in ipairs(config.monitors) do local opts = { scale = monitor.scale, bitdepth = monitor.bitdepth, @@ -105,7 +105,7 @@ bind({mod, "J"}, hl.dsp.layout("togglesplit")) -- Move focus with mod + arrow keys -- Move window across workspace with mod + arrow keys -for _,direction in pairs({"left", "right", "up", "down"}) do +for _,direction in ipairs({"left", "right", "up", "down"}) do bind({mod, direction}, hy3.move_focus(direction)) bind({mod, "SHIFT", direction}, hy3.move_window(direction)) end @@ -236,7 +236,7 @@ animation("borderangle", 24, "linear", "loop") --[[ LAYER RULES ]]-- -- Fix wierd borders -for _,namespace in pairs({"wofi", "notification"}) do +for _,namespace in ipairs({"wofi", "notification"}) do hl.layer_rule({ blur = true, match = { namespace = namespace } }) hl.layer_rule({ ignore_alpha = 0, match = { namespace = namespace } }) end @@ -305,7 +305,7 @@ hl.config({ --[[ AUTOSTART ]]-- hl.on("hyprland.start", function() - for _,app in pairs(config.autoRun) do + for _,app in ipairs(config.autoRun) do hl.exec_cmd(app) end end) diff --git a/hosts/kaworu/default.nix b/hosts/kaworu/default.nix index a39cfe0..4ca386c 100644 --- a/hosts/kaworu/default.nix +++ b/hosts/kaworu/default.nix @@ -25,6 +25,8 @@ desktops = { enable = true; hyprland.enable = true; + }; + login = { ly.enable = true; }; gaming = { diff --git a/hosts/shinji/default.nix b/hosts/shinji/default.nix index e22ee91..e7b832a 100644 --- a/hosts/shinji/default.nix +++ b/hosts/shinji/default.nix @@ -59,6 +59,8 @@ enable = true; hyprland.enable = true; sway.enable = true; + }; + login = { ly.enable = true; }; development = { diff --git a/hosts/thinkpad/default.nix b/hosts/thinkpad/default.nix index e57214d..b2cc23c 100644 --- a/hosts/thinkpad/default.nix +++ b/hosts/thinkpad/default.nix @@ -27,6 +27,8 @@ _: { desktops = { enable = true; hyprland.enable = true; + }; + login = { ly.enable = true; }; gaming = { diff --git a/lib/home.nix b/lib/home.nix index 4b4ec02..871f5bb 100644 --- a/lib/home.nix +++ b/lib/home.nix @@ -31,9 +31,11 @@ apps browsers desktops + login gaming development virt + vpn autoRun # Packages extraPackages diff --git a/options.nix b/options.nix index 8424716..4491c2c 100644 --- a/options.nix +++ b/options.nix @@ -498,12 +498,25 @@ in { desktops = { enable = mkEnableOption "Enable baseline desktop utils and programs."; wayland.enable = mkEnableOption "Enable wayland desktop components."; - ly.enable = mkEnableOption "Install the ly display manager."; hyprland.enable = mkEnableOption "Install the Hyprland desktop."; sway.enable = mkEnableOption "Install the sway desktop."; }; # + # Login managers + # + login = { + ly.enable = mkEnableOption "Install the ly display manager."; + greetd = { + enable = mkEnableOption "Enable the greetd login manager."; + session = mkOption { + description = "Session program to run for greetd"; + type = lib.types.str; + }; + }; + }; + + # # Gaming programs to choose from # gaming = { diff --git a/system/default.nix b/system/default.nix index a8b384d..de4a5f3 100644 --- a/system/default.nix +++ b/system/default.nix @@ -16,6 +16,7 @@ in { ./bootloader ./desktops ./gaming + ./login ./virt ./amdgpu.nix ./battery.nix diff --git a/system/desktops/default.nix b/system/desktops/default.nix index 476dd72..43f2ab3 100644 --- a/system/desktops/default.nix +++ b/system/desktops/default.nix @@ -1,7 +1,6 @@ _: { imports = [ ./hyprland.nix - ./ly.nix ./sway.nix ./wayland.nix ]; diff --git a/system/login/default.nix b/system/login/default.nix new file mode 100644 index 0000000..befb915 --- /dev/null +++ b/system/login/default.nix @@ -0,0 +1,6 @@ +_: { + imports = [ + ./greetd.nix + ./ly.nix + ]; +} diff --git a/system/login/greetd.nix b/system/login/greetd.nix new file mode 100644 index 0000000..74ab666 --- /dev/null +++ b/system/login/greetd.nix @@ -0,0 +1,25 @@ +{ + config, + lib, + ... +}: let + inherit (lib) mkIf; + cfg = config.login.greetd; +in { + config = mkIf cfg.enable { + services.greetd = { + enable = true; + restart = false; + settings = let + session = { + command = cfg.session; + user = config.user; + }; + in { + terminal.vt = 1; + default_session = session; + initial_session = session; + }; + }; + }; +} diff --git a/system/desktops/ly.nix b/system/login/ly.nix index 298fc4c..d525333 100644 --- a/system/desktops/ly.nix +++ b/system/login/ly.nix @@ -4,7 +4,7 @@ ... }: let inherit (lib) mkIf; - cfg = config.desktops.ly; + cfg = config.login.ly; in { config = mkIf cfg.enable { # display manager |