2023-05-23 18:11:30 +02:00
|
|
|
{
|
|
|
|
pkgs,
|
|
|
|
lib,
|
|
|
|
...
|
|
|
|
}: {
|
|
|
|
services.xserver = {
|
|
|
|
enable = true;
|
|
|
|
libinput.enable = true;
|
|
|
|
libinput.touchpad.naturalScrolling = true;
|
|
|
|
|
|
|
|
videoDrivers = [
|
|
|
|
"qxl"
|
|
|
|
"modesetting"
|
|
|
|
"ati"
|
|
|
|
"cirrus"
|
|
|
|
"intel"
|
|
|
|
"vesa"
|
|
|
|
"vmware"
|
|
|
|
"modesetting"
|
|
|
|
];
|
|
|
|
layout = "us";
|
|
|
|
xkbVariant = "altgr-intl";
|
|
|
|
xkbOptions = "nodeadkeys";
|
|
|
|
|
|
|
|
desktopManager = {
|
|
|
|
# FIXME: gnome should be moved to user session
|
|
|
|
gnome.enable = true;
|
|
|
|
|
|
|
|
xterm.enable = true;
|
|
|
|
plasma5.enable = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
displayManager = {
|
|
|
|
gdm.enable = true;
|
|
|
|
gdm.wayland = true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
# gnome, most of it is disabled and ideally it could live entirely in the user's home config
|
|
|
|
programs.gpaste.enable = false;
|
|
|
|
programs.gnome-terminal.enable = false;
|
|
|
|
# programs.gnome-documents.enable = false;
|
|
|
|
programs.gnome-disks.enable = false;
|
|
|
|
|
|
|
|
# TODO: fully delegate graphical session to home-manager config
|
|
|
|
services.gnome = {
|
|
|
|
gnome-online-miners.enable = lib.mkForce false;
|
|
|
|
games.enable = false;
|
|
|
|
gnome-remote-desktop.enable = false;
|
|
|
|
gnome-user-share.enable = false;
|
|
|
|
rygel.enable = false;
|
|
|
|
sushi.enable = false;
|
|
|
|
tracker.enable = false;
|
|
|
|
tracker-miners.enable = false;
|
|
|
|
|
|
|
|
gnome-browser-connector.enable = false;
|
|
|
|
gnome-initial-setup.enable = false;
|
|
|
|
|
|
|
|
# FIXME: gnome should be moved to home config
|
|
|
|
gnome-settings-daemon.enable = true;
|
|
|
|
core-os-services.enable = true;
|
|
|
|
at-spi2-core.enable = true;
|
|
|
|
evolution-data-server.enable = true;
|
|
|
|
gnome-online-accounts.enable = true;
|
|
|
|
gnome-keyring.enable = lib.mkForce false;
|
|
|
|
};
|
|
|
|
|
|
|
|
# FIXME: gnome should be moved to user session
|
|
|
|
services.gvfs.enable = true;
|
|
|
|
programs.seahorse.enable = true;
|
|
|
|
programs.dconf.enable = true;
|
|
|
|
|
|
|
|
environment.gnome.excludePackages =
|
|
|
|
(with pkgs; [
|
|
|
|
orca
|
|
|
|
gnome-photos
|
|
|
|
gnome-tour
|
|
|
|
])
|
|
|
|
++ (with pkgs.gnome; [
|
|
|
|
cheese # webcam tool
|
|
|
|
gnome-music
|
|
|
|
gnome-terminal
|
|
|
|
gedit # text editor
|
|
|
|
epiphany # web browser
|
|
|
|
geary # email reader
|
|
|
|
evince # document viewer
|
|
|
|
gnome-characters
|
|
|
|
totem # video player
|
|
|
|
tali # poker game
|
|
|
|
iagno # go game
|
|
|
|
hitori # sudoku game
|
|
|
|
atomix # puzzle game
|
|
|
|
]);
|
|
|
|
|
|
|
|
hardware.pulseaudio = {
|
|
|
|
enable = true;
|
|
|
|
package = pkgs.pulseaudioFull;
|
|
|
|
support32Bit = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
services.dbus.packages = with pkgs; [dconf];
|
|
|
|
|
|
|
|
# More Services
|
|
|
|
environment.systemPackages = [pkgs.gnome.adwaita-icon-theme pkgs.gnomeExtensions.appindicator];
|
|
|
|
}
|