{ config, pkgs, inputs, lib, ... }: { nixpkgs.system = "x86_64-linux"; imports = [ ./hardware-configuration.nix ]; boot.binfmt.emulatedSystems = [ "aarch64-linux" ]; services.fido2-hid-bridge.enable = true; home-manager.users.${config.xyno.system.user.name} = ( { ... }: { xyno.git.enable = true; xyno.borgmatic.enable = true; home.packages = [ # work # (pkgs.unstable.jetbrains.rider.override { jdk = pkgs.unstable.openjdk21; }) pkgs.unstable.jetbrains.rider pkgs.android-studio # (pkgs.unstable.android-studio.override { jdk = pkgs.unstable.openjdk21; }) (pkgs.firefox-devedition.overrideAttrs (super: self: { meta.priority = 1; })) ]; services.flatpak.update.auto.enable = true; services.flatpak = { enable = true; packages = [ "com.unicornsonlsd.finamp" # "io.github.softfever.OrcaSlicer" "io.anytype.anytype" "org.bionus.Grabber" "org.getmonero.Monero" { appId = "org.gimp.GIMP"; origin = "flathub-beta"; } "org.kicad.KiCad" "org.pencil2d.Pencil2D" ]; }; } ); nixpkgs.config.permittedInsecurePackages = [ "olm-3.2.16" ]; virtualisation.podman.enable = true; services.vsmartcard-vpcd.enable = true; hardware.gpgSmartcards.enable = true; networking.firewall.interfaces."tailscale0".allowedTCPPorts = [ 35963 ] ; environment.systemPackages = with pkgs; [ aerc oama # required for aerc libsecret # required for oama easyeffects jabref glib # rider wants gsettings krita strawberry pandoc tectonic rquickshare supersonic nheko anki-bin nixpkgs-manual nixpkgs-manual.lib-docs ( let helpScript = pkgs.writeShellScriptBin "nixpkgs-help" '' exec xdg-open ${pkgs.nixpkgs-manual}/share/doc/nixpkgs/index.html ''; desktopItem = pkgs.makeDesktopItem { name = "nixpkgs-manual"; desktopName = "nixpkgs Manual"; genericName = "System Manual"; comment = "View nixpkgs documentation in a web browser"; icon = "nix-snowflake"; exec = "nixpkgs-help"; categories = [ "System" ]; }; in pkgs.symlinkJoin { name = "nixpkgs-help"; paths = [ helpScript desktopItem ]; } ) # (nheko.overrideAttrs ( # super: self: { # src = inputs.nheko; # } # )) ]; time.timeZone = "Europe/Berlin"; networking.firewall.allowedTCPPorts = [ 1880 2021 ]; networking.firewall.allowedUDPPorts = [ 1880 2021 ]; services.tailscale.enable = true; services.tailscale.useRoutingFeatures = "client"; xyno.common.enable = true; xyno.desktop.common-programs.enable = true; xyno.hardware.kmonad.enable = true; xyno.presets.cli.enable = true; xyno.presets.gui.enable = true; xyno.presets.home-manager.enable = true; xyno.system.user.enable = true; xyno.user-services.syncthing = { enable = true; tray = true; }; xyno.networking.networkd = { enable = true; enableWifi = true; }; # xyno.desktop.easyeffects.enable = true; # xyno.desktop.fcitx5.enable = true; hardware.bluetooth.enable = true; services.blueman.enable = true; services.power-profiles-daemon.enable = true; programs.kdeconnect.enable = true; services.flatpak.enable = true; system.stateVersion = "24.11"; }