desktop: replace ly with greetd autologin + boot-locked quickshell

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-07-08 17:03:26 +01:00
parent 1158a36d1a
commit 8efcc4d30c
2 changed files with 26 additions and 10 deletions

View file

@ -3,25 +3,30 @@
{
config = lib.mkIf (lib.elem config.networking.hostName [ "FredOS-Gaming" "FredOS-Macbook" ]) {
services.xserver.enable = true;
services.displayManager.ly.enable = true;
services.displayManager.defaultSession = "hyprland";
# Autologin straight into Hyprland; the quickshell lockscreen engages
# immediately (see Lock.qml), so the lock *is* the login prompt.
services.greetd = {
enable = true;
settings.default_session = {
command = lib.getExe config.programs.hyprland.package;
user = "fred";
};
};
boot.plymouth.enable = true;
boot.initrd.verbose = false;
boot.consoleLogLevel = 3;
boot.kernelParams = [ "quiet" "udev.log_level=3" ];
services.displayManager.ly.settings = {
animation = "none";
bigclock = true;
};
# Flatpak for ad-hoc app installs via Bazaar
services.flatpak.enable = true;
# Secret Service for Chromium/Electron credential encryption;
# PAM unlocks the keyring with the login password at the ly greeter.
# Secret Service for Chromium/Electron credential encryption.
# Autologin can't unlock the keyring (no password typed), so greetd only
# *starts* the daemon; the quickshell lockscreen authenticates against the
# "login" PAM service, where pam_gnome_keyring unlocks it on first unlock.
services.gnome.gnome-keyring.enable = true;
security.pam.services.ly.enableGnomeKeyring = true;
security.pam.services.greetd.enableGnomeKeyring = true;
security.pam.services.login.enableGnomeKeyring = true;
environment.systemPackages = with pkgs; [
nemo # file manager