dotfiles/common/desktop.nix

105 lines
2.4 KiB
Nix
Raw Normal View History

2024-08-02 14:09:42 +02:00
{
config,
lib,
pkgs,
...
}:
let
inherit (lib) mkIf mkEnableOption;
2024-09-02 14:43:17 +02:00
cfg = config.patagia.podman;
2024-08-02 14:09:42 +02:00
in
{
2024-09-02 14:43:17 +02:00
options.patagia.desktop.enable = mkEnableOption "Desktop environment and common applications";
2024-08-02 14:09:42 +02:00
config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [ gnome-ssh-askpass4 ];
# Excluding some GNOME applications from the default install
2025-02-12 12:47:36 +01:00
environment.gnome.excludePackages = (
with pkgs;
[
2024-08-28 08:49:15 +02:00
atomix # puzzle game
2024-08-02 14:09:42 +02:00
baobab # disk usage analyzer
cheese # webcam tool
epiphany # web browser
geary # email reader
2024-08-28 08:49:15 +02:00
gnome-clocks
2025-02-12 12:47:36 +01:00
gnome-connections
2024-08-02 14:09:42 +02:00
gnome-disk-utility
2024-08-28 08:49:15 +02:00
gnome-logs
gnome-music
2025-02-12 12:47:36 +01:00
gnome-photos
2024-08-02 14:09:42 +02:00
gnome-terminal
2025-02-12 12:47:36 +01:00
gnome-tour
snapshot
2024-08-28 08:49:15 +02:00
hitori # sudoku game
iagno # go game
2024-08-02 14:09:42 +02:00
simple-scan
2024-08-28 08:49:15 +02:00
tali # poker game
2024-08-02 14:09:42 +02:00
yelp # help viewer
2025-02-12 12:47:36 +01:00
]
);
2024-08-02 14:09:42 +02:00
fonts = {
fontDir.enable = true;
fontconfig = {
allowBitmaps = false;
antialias = true;
defaultFonts = {
2025-02-10 12:21:51 +01:00
monospace = [ "Berkeley Mono" ];
2024-08-02 14:09:42 +02:00
serif = [ "Liberation Serif" ];
sansSerif = [ "Inter" ];
};
hinting.enable = true;
hinting.style = "slight";
};
packages = with pkgs; [
inter
liberation_ttf
monaspace
nerd-fonts.symbols-only
2024-08-02 14:09:42 +02:00
noto-fonts
2024-10-15 18:12:56 +02:00
noto-fonts-cjk-sans
2024-08-02 14:09:42 +02:00
noto-fonts-color-emoji
ubuntu_font_family
];
};
programs.ssh.askPassword = "${pkgs.gnome-ssh-askpass4}/bin/gnome-ssh-askpass4";
programs.ssh.startAgent = true;
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
};
services.gnome.gnome-keyring.enable = true;
services.printing.enable = true;
2024-08-08 00:40:49 +02:00
services.displayManager.defaultSession = "gnome";
2024-08-02 14:09:42 +02:00
services.xserver = {
enable = true;
displayManager.gdm.enable = true;
displayManager.gdm.autoSuspend = false;
desktopManager.gnome.enable = true;
xkb.layout = "se";
xkb.variant = "us";
};
services.pulseaudio.enable = false;
2024-08-02 14:09:42 +02:00
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
};
}