nixos-configs/nixosModules/gnome.nix

66 lines
1.6 KiB
Nix
Raw Normal View History

2025-09-13 18:20:00 +02:00
{
2025-09-15 17:52:33 +02:00
lib,
config,
pkgs,
2025-09-15 17:52:33 +02:00
...
}:
{
options = {
my.gnome.enable = lib.mkEnableOption "GNOME desktop environment";
muede.keep-gnome-default-apps = lib.mkEnableOption "keep gnome default apps";
2025-09-15 17:52:33 +02:00
};
2025-09-13 18:20:00 +02:00
config = lib.mkIf config.my.gnome.enable (
lib.mkMerge [
{
services = {
xserver.excludePackages = [ pkgs.xterm ];
# Enable the GNOME Desktop Environment.
displayManager.gdm.enable = true;
desktopManager.gnome = {
enable = true;
extraGSettingsOverridePackages = [ pkgs.mutter ];
extraGSettingsOverrides = ''
[org.gnome.mutter]
experimental-features=['scale-monitor-framebuffer']
'';
};
2025-09-13 18:20:00 +02:00
gnome = {
tinysparql.enable = false;
localsearch.enable = false;
sushi.enable = true;
};
2025-09-15 17:52:33 +02:00
};
programs = {
dconf.enable = true;
gpaste.enable = true;
};
}
(lib.mkIf (!config.muede.keep-gnome-default-apps) {
environment.gnome.excludePackages = with pkgs; [
cheese # photo booth
epiphany # web browser
evince # document viewer
geary # email client
gnome-maps
gnome-weather
gnome-tour
sysprof
orca # screen reader
gnome-weather
gnome-backgrounds
gnome-user-docs
yelp # help app
gnome-music
totem # video player
snapshot # camera
baobab # disk usage
];
})
]
);
2025-09-13 18:20:00 +02:00
}