First commit

This commit is contained in:
2026-02-22 17:28:02 +01:00
parent 7a70268785
commit 6bacf1878e
9011 changed files with 114470 additions and 0 deletions
@@ -0,0 +1,50 @@
{ config, pkgs, ... }:
let
waylandSessions = "${config.services.displayManager.sessionData.desktops}/share/wayland-sessions";
x11Sessions = "${config.services.displayManager.sessionData.desktops}/share/xsessions";
moduleName = "hm-greeter";
in
{
users.users.greeter = {
isSystemUser = true;
group = "greeter";
};
users.groups.greeter = {};
services.greetd = {
enable = true;
settings = {
terminal.vt = 1;
default_session = {
# Run Hyprland as the greeter compositor
command = "${pkgs.dbus}/bin/dbus-run-session ${pkgs.hyprland}/bin/start-hyprland -- --config /etc/greetd/greeter.conf";
user = "greeter";
};
};
};
# Install the greeter Hyprland config file
environment.etc."greetd/greeter.conf".source = ./conf/greeter.conf;
# Give qtgreet access to session files on NixOS
environment.etc."greetd/qtgreet-session-paths".text = ''
WAYLAND_SESSIONS=${waylandSessions}
X11_SESSIONS=${x11Sessions}
'';
# Needed for Wayland logins in many setups
services.seatd.enable = true;
environment.systemPackages = with pkgs; [
qtgreet
qt6Packages.qt6ct
kdePackages.breeze
kdePackages.breeze-icons
];
home.file.".nixlog/loaded.${moduleName}-module-loaded".text = "loaded\n";
}