{ pkgs, ... }: let secret = import ../../secret/hosts/adsb-antenna.nix; ssh-keys = import ../shared/ssh-keys.nix; in { imports = [ ../../hardware/hosts/adsb-antenna.nix ../nixos/ssh.nix ../nixos/git.nix ../nixos/arion.nix ../../container/adsb ]; nix = { package = pkgs.nixFlakes; settings = { auto-optimise-store = true; substituters = [ "https://nix-community.cachix.org" "https://nifoc.cachix.org" ]; trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" "nifoc.cachix.org-1:ymuftq7RgN/lf/iWXFK8gpwDSAGFaGBeliWe9u6q8II=" ]; max-jobs = 1; cores = 2; }; extraOptions = '' experimental-features = nix-command flakes keep-derivations = true keep-outputs = true ''; distributedBuilds = true; buildMachines = [ { hostName = "builder-sail"; systems = [ "x86_64-linux" "aarch64-linux" ]; maxJobs = 1; } ]; }; boot = { loader = { grub.enable = false; generic-extlinux-compatible.enable = true; }; cleanTmpDir = true; }; networking = { hostName = "adsb-antenna"; dhcpcd.denyInterfaces = [ "veth*" ]; timeServers = [ "ntp1.hetzner.de" "ntp2.hetzner.com" "ntp3.hetzner.net" "time.cloudflare.com" ]; }; programs.fish.enable = true; users.users = { root = { openssh.authorizedKeys.keys = [ ssh-keys.LAN ]; }; daniel = { hashedPassword = secret.users.daniel.hashedPassword; isNormalUser = true; home = "/home/daniel"; description = "Daniel"; extraGroups = [ "wheel" ]; shell = pkgs.fish; openssh.authorizedKeys.keys = [ ssh-keys.LAN ]; }; }; }