First commit
This commit is contained in:
@@ -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";
|
||||
}
|
||||
Reference in New Issue
Block a user