{ config, inputs, outputs, pkgs, ... }: { boot = { initrd.kernelModules = [ "amdgpu" "zfs" ]; kernelPackages = pkgs."67e692392".linuxPackages_6_10; loader = { efi.canTouchEfiVariables = true; systemd-boot.enable = true; timeout = 3; }; supportedFilesystems = [ "zfs" ]; zfs.devNodes = "/dev/disk/by-label"; }; environment.systemPackages = with pkgs; [ signal-desktop wsmancli ]; imports = [ ./hardware-configuration.nix ../common/core ../common/optional/db.nix ../common/optional/dev.nix ../common/optional/ebooks.nix ../common/optional/games.nix ../common/optional/google-authenticator.nix ../common/optional/misc.nix ../common/optional/multimedia.nix ../common/optional/pipewire.nix ../common/optional/sdr.nix ../common/optional/services/openssh.nix ../common/optional/services/xorg.nix ../common/optional/sound.nix ../common/optional/zfs.nix ../common/users/nipsy ../common/users/root ]; networking = { hostId = "8425e349"; hostName = "ginaz"; networkmanager.enable = true; nftables.enable = true; }; nixpkgs = { config.allowUnfree = true; hostPlatform = "x86_64-linux"; overlays = [ outputs.overlays.additions outputs.overlays.modifications outputs.overlays."67e692392-packages" outputs.overlays.master-packages outputs.overlays.stable-packages ]; }; services.openssh.settings.X11Forwarding = true; services.xserver.videoDrivers = [ "nvidia" ]; sops = { age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; defaultSopsFile = ../secrets/ginaz.yaml; secrets = { "nftables/ssh" = {}; "nix-access-token-github" = {}; }; }; system.stateVersion = "23.11"; systemd.services."nftables-extra" = let rules_script = '' ${pkgs.nftables}/bin/nft -f ${config.sops.secrets."nftables/ssh".path} ''; in { description = "nftables extra firewall rules"; reload = rules_script; script = rules_script; serviceConfig = { RemainAfterExit = true; Type = "oneshot"; }; unitConfig = { ConditionPathExists = config.sops.secrets."nftables/ssh".path; ReloadPropagatedFrom = "nftables.service"; }; wantedBy = [ "multi-user.target" ]; after = [ "nftables.service" ]; partOf = [ "nftables.service" ]; }; systemd.paths."nftables-extra" = { pathConfig = { PathExists = config.sops.secrets."nftables/ssh".path; }; wantedBy = [ "multi-user.target" ]; }; }