2024-09-18 12:44:14 -04:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: {
|
|
|
|
config = lib.mkIf config.ar.desktop.gnome.enable {
|
|
|
|
# nixpkgs.overlays = [
|
|
|
|
# # GNOME 46: triple-buffering-v4-46
|
|
|
|
# (final: prev: {
|
|
|
|
# gnome = prev.gnome.overrideScope (gnomeFinal: gnomePrev: {
|
|
|
|
# mutter = gnomePrev.mutter.overrideAttrs (old: {
|
|
|
|
# src = pkgs.fetchFromGitLab {
|
|
|
|
# domain = "gitlab.gnome.org";
|
|
|
|
# owner = "vanvugt";
|
|
|
|
# repo = "mutter";
|
|
|
|
# rev = "triple-buffering-v4-46";
|
|
|
|
# hash = "sha256-nz1Enw1NjxLEF3JUG0qknJgf4328W/VvdMjJmoOEMYs=";
|
|
|
|
# };
|
|
|
|
# });
|
|
|
|
# });
|
|
|
|
# })
|
|
|
|
# ];
|
|
|
|
|
|
|
|
security.pam.services = {
|
2024-10-28 13:46:04 -04:00
|
|
|
# login.fprintAuth = false;
|
2024-09-18 12:44:14 -04:00
|
|
|
|
|
|
|
gdm = {
|
|
|
|
enableGnomeKeyring = true;
|
|
|
|
gnupg.enable = true;
|
|
|
|
kwallet.enable = true;
|
|
|
|
};
|
|
|
|
|
2024-10-28 13:46:04 -04:00
|
|
|
# gdm-fingerprint = lib.mkIf (config.services.fprintd.enable) {
|
|
|
|
# text = ''
|
|
|
|
# auth required pam_shells.so
|
|
|
|
# auth requisite pam_nologin.so
|
|
|
|
# auth requisite pam_faillock.so preauth
|
|
|
|
# auth required ${pkgs.fprintd}/lib/security/pam_fprintd.so
|
|
|
|
# auth optional pam_permit.so
|
|
|
|
# auth required pam_env.so
|
|
|
|
# auth [success=ok default=1] ${pkgs.gnome.gdm}/lib/security/pam_gdm.so
|
|
|
|
# auth optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so
|
2024-09-18 12:44:14 -04:00
|
|
|
|
2024-10-28 13:46:04 -04:00
|
|
|
# account include login
|
2024-09-18 12:44:14 -04:00
|
|
|
|
2024-10-28 13:46:04 -04:00
|
|
|
# password required pam_deny.so
|
2024-09-18 12:44:14 -04:00
|
|
|
|
2024-10-28 13:46:04 -04:00
|
|
|
# session include login
|
|
|
|
# session optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
|
|
|
|
# '';
|
|
|
|
# };
|
2024-09-18 12:44:14 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
# Enable GNOME and GDM.
|
|
|
|
services = {
|
|
|
|
gnome.tracker-miners.enable = true;
|
|
|
|
udev.packages = with pkgs; [gnome.gnome-settings-daemon];
|
|
|
|
|
|
|
|
xserver = {
|
|
|
|
desktopManager.gnome.enable = true;
|
|
|
|
displayManager.gdm.enable = true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|