nixfiles/profiles/gui/environments/gnome/default.nix

79 lines
1.6 KiB
Nix

{
pkgs,
lib,
...
}: let
inherit (lib.modules) mkIf mkForce;
isWayland = true;
in {
services.xserver = {
enable = true;
desktopManager.gnome.enable = true;
displayManager.gdm = {
enable = true;
wayland = isWayland;
autoSuspend = false;
};
};
environment.variables = {
QT_QPA_PLATFORM =
if isWayland
then "wayland-egl"
else "xcb";
SDL_VIDEODRIVER =
if isWayland
then "wayland"
else "x11";
_JAVA_AWT_WM_NONREPARENTING = mkIf isWayland "1";
};
security.polkit.extraConfig = ''
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});
'';
environment.gnome.excludePackages = [
pkgs.gnome.cheese
pkgs.gnome.gnome-music
pkgs.gnome.gnome-terminal
pkgs.gedit
pkgs.epiphany
pkgs.evince
pkgs.gnome.gnome-characters
pkgs.gnome.totem
pkgs.gnome.tali
pkgs.gnome.iagno
pkgs.gnome.hitori
pkgs.gnome.atomix
pkgs.gnome-tour
pkgs.gnome.geary
];
environment.systemPackages = with pkgs; [
gnome.gnome-tweaks
gnomeExtensions.appindicator
gnomeExtensions.just-perfection
qt5.qtwayland
wl-clipboard
xclip
];
services.gnome.gnome-browser-connector.enable = true;
services.udev.packages = with pkgs; [gnome3.gnome-settings-daemon];
services.power-profiles-daemon.enable = true;
hardware.pulseaudio.enable = mkForce false;
programs.dconf.enable = true;
services.gnome.gnome-keyring.enable = mkForce false;
services.xserver = {layout = "gb";};
}