{ config, hostname, pkgs, sops-nix, username, ... }: { imports = [ ./linux/internationalisation.nix ]; environment = { shells = with pkgs; [ bash zsh ]; systemPackages = with pkgs; [ age dconf2nix file iftop inetutils iotop neofetch python3 sops ssh-to-age sysstat tailscale unzip wget xidel ]; }; fonts.fontDir.enable = true; fonts.packages = with pkgs; [ font-awesome (nerdfonts.override { fonts = [ "Hack" "SourceCodePro" ]; }) ]; networking.hostName = "${hostname}"; nix.settings = { allowed-users = [ "${username}" ]; experimental-features = [ "flakes" "nix-command" ]; extra-substituters = [ "https://nixpkgs-terraform.cachix.org" ]; extra-trusted-public-keys = [ "nixpkgs-terraform.cachix.org-1:8Sit092rIdAVENA3ZVeH9hzSiqI/jng6JiCrQ1Dmusw=" ]; trusted-users = [ "${username}" ]; }; programs = { bandwhich.enable = true; zsh.enable = true; }; security.sudo.wheelNeedsPassword = false; services = { openssh.enable = true; }; sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; time.timeZone = "America/New_York"; users.defaultUserShell = pkgs.zsh; }