2023-09-09 13:36:21 +02:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
lib,
|
|
|
|
...
|
2023-09-09 14:57:55 +02:00
|
|
|
}: let
|
2023-09-24 12:39:28 +02:00
|
|
|
isEnabled = config.my.desktop.enableGnome;
|
2023-09-09 13:36:21 +02:00
|
|
|
in {
|
2023-09-24 10:46:15 +02:00
|
|
|
options.my.desktop.enableGnome = lib.mkEnableOption "gnome desktop";
|
|
|
|
|
2023-09-24 13:20:34 +02:00
|
|
|
config = lib.mkIf isEnabled {
|
|
|
|
my.desktop.enable = true;
|
2023-09-09 15:44:15 +02:00
|
|
|
|
2023-09-24 13:20:34 +02:00
|
|
|
services = {
|
|
|
|
xserver = {
|
|
|
|
# Enable the GNOME Desktop Environment.
|
2023-12-03 13:13:31 +01:00
|
|
|
desktopManager.gnome.enable = true;
|
2023-11-06 13:53:11 +01:00
|
|
|
displayManager = {
|
|
|
|
gdm.enable = true;
|
|
|
|
defaultSession = "gnome";
|
|
|
|
};
|
2023-09-24 13:20:34 +02:00
|
|
|
};
|
2023-09-09 13:36:21 +02:00
|
|
|
|
2023-09-24 13:20:34 +02:00
|
|
|
gnome = {
|
|
|
|
tracker-miners.enable = false;
|
|
|
|
tracker.enable = false;
|
2023-11-06 13:53:11 +01:00
|
|
|
sushi.enable = true;
|
2023-11-24 14:32:58 +01:00
|
|
|
gnome-remote-desktop.enable = true;
|
2023-09-09 13:36:21 +02:00
|
|
|
};
|
2023-09-24 13:20:34 +02:00
|
|
|
};
|
2023-09-09 13:36:21 +02:00
|
|
|
|
2023-09-24 15:27:13 +02:00
|
|
|
programs = {
|
2023-11-06 13:53:11 +01:00
|
|
|
dconf.enable = true;
|
2023-09-24 15:27:13 +02:00
|
|
|
gpaste.enable = true;
|
|
|
|
kdeconnect.package = pkgs.gnomeExtensions.gsconnect;
|
2023-09-24 13:20:34 +02:00
|
|
|
};
|
2023-09-24 15:27:13 +02:00
|
|
|
|
|
|
|
# remove some gnome default apps
|
|
|
|
environment.gnome.excludePackages = with pkgs.gnome; [
|
|
|
|
cheese # photo booth
|
2023-12-04 15:08:22 +01:00
|
|
|
epiphany # web browser
|
2023-09-24 15:27:13 +02:00
|
|
|
evince # document viewer
|
|
|
|
geary # email client
|
|
|
|
gnome-maps
|
|
|
|
gnome-weather
|
|
|
|
gnome-music
|
2023-12-04 15:08:22 +01:00
|
|
|
pkgs.gnome-tour
|
2023-09-24 15:27:13 +02:00
|
|
|
];
|
2023-11-24 16:12:21 +01:00
|
|
|
|
2023-12-04 22:25:12 +01:00
|
|
|
environment.systemPackages = with pkgs; [gnome.ghex impression];
|
2023-12-03 13:13:31 +01:00
|
|
|
|
2023-11-24 16:12:21 +01:00
|
|
|
# RDP connections
|
|
|
|
networking.firewall.allowedTCPPorts = [3389];
|
2023-09-24 13:20:34 +02:00
|
|
|
};
|
2023-09-09 13:36:21 +02:00
|
|
|
}
|