{ pkgs, lib, inputs, ... }: { imports = [ ../../features/nix-ld.nix ../../features/podman.nix ../../features/vim.nix ../../features/avahi.nix ../../features/systemd-boot.nix ../../features/i18n.nix ../../features/sudo.nix ../../features/sops.nix ../../features/users.nix ../../features/wine.nix ./nix-package-manager.nix ]; boot = { consoleLogLevel = 3; kernelParams = [ "quiet" "rd.udev.log_level=3" "rd.systemd.show_status=auto" ]; kernelModules = [ "ntsync" ]; plymouth = { enable = true; theme = "bgrt"; }; }; fonts = { fontconfig = { enable = true; subpixel.rgba = "none"; hinting.style = "slight"; }; }; services = { flatpak = { packages = [ { appId = "io.github.HakanSeven12.OpenCadStudio"; origin = "flatpark"; } { appId = "io.github.ungoogled_software.ungoogled_chromium"; origin = "flathub"; } { appId = "org.gtk.Gtk3theme.Breeze"; origin = "flathub"; } ]; }; snapper = { snapshotInterval = "hourly"; cleanupInterval = "1d"; configs = { home = { SUBVOLUME = "/home"; TIMELINE_CREATE = true; TIMELINE_CLEANUP = true; TIMELINE_LIMIT_HOURLY = "10"; TIMELINE_LIMIT_DAILY = "7"; TIMELINE_LIMIT_WEEKLY = "2"; TIMELINE_LIMIT_MONTHLY = "0"; TIMELINE_LIMIT_YEARLY = "0"; BACKGROUND_COMPARISON = "yes"; NUMBER_CLEANUP = "no"; NUMBER_MIN_AGE = "1800"; NUMBER_LIMIT = "50"; NUMBER_LIMIT_IMPORTANT = "10"; EMPTY_PRE_POST_CLEANUP = "yes"; EMPTY_PRE_POST_MIN_AGE = "1800"; }; }; }; kmscon = { enable = true; config = { hwAccel = true; term = "xterm-256color"; font-name = "Hack Nerd Font Mono"; }; }; pipewire = { enable = true; pulse.enable = true; alsa.enable = true; }; openssh = { enable = true; settings = { PasswordAuthentication = false; KbdInteractiveAuthentication = false; }; }; affinity-thumbnailer.enable = true; }; networking = { wireless.enable = true; networkmanager.enable = true; networkmanager.plugins = with pkgs; [ networkmanager-openvpn ]; firewall = { allowedTCPPorts = [ 22 ]; allowedTCPPortRanges = [ { from = 1714; to = 1764; } # KDE Connect ]; allowedUDPPortRanges = [ { from = 1714; to = 1764; } # KDE Connect ]; }; }; security.rtkit.enable = true; programs = { bash.enable = true; firefox.enable = true; gnupg.agent = { enable = true; pinentryPackage = pkgs.pinentry-qt; }; appimage = { enable = true; binfmt = true; }; }; nixpkgs = { # Fix msitools compiling and failing it's test-suite. overlays = [ (final: prev: { msitools = prev.msitools.overrideAttrs (old: { doCheck = false; }); }) inputs.affinity-nix.overlays.default ]; }; environment = { systemPackages = import ../../features/common-pkgs.nix { inherit pkgs; } ++ (with pkgs; [ btrfs-assistant kdePackages.kfind desktop-file-utils zathura hunspell hunspellDicts.en_US hyphenDicts.en_US affinity-v3 libreoffice-qt qimgv mpv vorta distrobox rtk inputs.appimage-manager.packages.${pkgs.stdenv.hostPlatform.system}.default inputs.pi.packages.${pkgs.stdenv.hostPlatform.system}.default (callPackage ../../packages/heidisql/package.nix { }) ]); shellAliases = import ../../features/aliases.nix { inherit pkgs; }; sessionVariables = import ../../features/xdg.nix { inherit pkgs; }; }; system.stateVersion = "26.05"; }