dotfiles/common/desktop.nix

108 lines
2.5 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
environment.gnome.excludePackages =
(with pkgs; [
gnome-connections
gnome-photos
gnome-tour
snapshot
])
2024-08-08 00:40:49 +02:00
++ (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
gnome-contacts
2024-08-02 14:09:42 +02:00
gnome-disk-utility
2024-08-28 08:49:15 +02:00
gnome-logs
gnome-music
2024-08-02 14:09:42 +02:00
gnome-terminal
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
]);
fonts = {
fontDir.enable = true;
fontconfig = {
allowBitmaps = false;
antialias = true;
defaultFonts = {
serif = [ "Liberation Serif" ];
sansSerif = [ "Inter" ];
};
hinting.enable = true;
hinting.style = "slight";
subpixel.rgba = "rgb";
};
packages = with pkgs; [
inter
jetbrains-mono
liberation_ttf
monaspace
(pkgs.nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
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
roboto
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";
};
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
};
}