{ config, pkgs, lib, ... }: { services = { sshd.enable = true; displayManager.gdm.enable = true; desktopManager.gnome.enable = true; blueman.enable = true; geoclue2.enable = true; xserver = { enable = true; excludePackages = with pkgs; [ xterm ]; xkb = { layout = "cz"; variant = ""; }; }; pulseaudio.enable = false; pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; # If you want to use JACK applications, uncomment this #jack.enable = true; # use the example session manager (no others are packaged yet so this is enabled by default, # no need to redefine it in your config for now) #media-session.enable = true; }; printing = { enable = true; drivers = [ pkgs.brlaser ]; }; avahi = { enable = true; nssmdns4 = true; openFirewall = true; }; journald.extraConfig = '' SystemMaxUse=2G RuntimeMaxUse=1G SystemMaxFiles=100 ''; zram-generator = { enable = true; settings = { "zram0" = { "zram-size" = "ram*1.5"; "compression-algorithm" = "zstd"; }; }; }; btrfs = { autoScrub = { enable = lib.any (fs: fs.fsType == "btrfs") (lib.attrValues config.fileSystems); interval = "monthly"; }; }; fstrim = { enable = true; interval = "weekly"; }; kmscon = { enable = true; fonts = [ { name = "FiraCode Nerd Font Mono"; package = pkgs.nerd-fonts.fira-code; } ]; useXkbConfig = true; hwRender = true; }; fwupd.enable = true; udev.packages = with pkgs; [ platformio-core.udev openocd ]; }; }