nixcfg/nixosModules/desktop/gnome/default.nix
Aly Raffauf ba1d6fe0fd
Some checks are pending
flakehub / flakehub-publish (push) Waiting to run
git-mirror / gitlab-sync (push) Waiting to run
nix-build / default-build (push) Waiting to run
nix-build / fallarbor-build (push) Waiting to run
nix-build / lavaridge-build (push) Waiting to run
nix-build / mauville-build (push) Waiting to run
nix-build / petalburg-build (push) Waiting to run
nix-build / rustboro-build (push) Waiting to run
nix-check / fmt-check (push) Waiting to run
nix-check / eval-check (push) Waiting to run
home: move gnome config to hm (#59)
* base: limit systemd-boot configurations to 10

* home/gnome: cleanup

* home/gnome: move extesniosn to hm module

* home/gnome: fix nesting

* home/gnome: add cs adjuster

* nixos/gnome: simplify fprintd fixes

* Revert "nixos/gnome: simplify fprintd fixes"

This reverts commit 540ba39bf9.

* home/gnome: enable extensions with dconf

* nixos/gnome: update triple buffer overlay hash
2024-07-23 13:04:10 -04:00

67 lines
2.1 KiB
Nix

{
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 = {
login.fprintAuth = false;
gdm = {
enableGnomeKeyring = true;
gnupg.enable = true;
kwallet.enable = true;
};
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
account include login
password required pam_deny.so
session include login
session optional ${pkgs.gnome.gnome-keyring}/lib/security/pam_gnome_keyring.so auto_start
'';
};
};
# 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;
};
};
};
}