# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { config, pkgs, ... }: { system.autoUpgrade.enable = true; nix.optimise.automatic = true; nix.gc.automatic = true; nixpkgs.config.allowUnfree = true; networking.useDHCP = false; # for k3s #networking.firewall.enable = true; # is already enabled ... networking.firewall.allowedUDPPorts = [ 5355 ]; # LLMNR services.openssh = { enable = true; passwordAuthentication = false; kbdInteractiveAuthentication = false; permitRootLogin = "without-password"; openFirewall = true; ports = [ 1512 ]; startWhenNeeded = true; }; users.users.root.openssh.authorizedKeys.keys = [ "command=\"zrepl stdinserver fireStore\",restrict ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM1U9DTKueKuTuu/F9wxGr3we7y00V8HMyUjVBMwFQwo root-zrepl@fireStore" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIOr9wE3i1+Cl/06WOf0/6OjxsOnN7veV3LZcWgtHkcS genofire@fireYoga" ]; time.timeZone = "Europe/Berlin"; i18n.defaultLocale = "en_IE.UTF-8"; console = { font = "Lat2-Terminus16"; keyMap = "de"; }; environment.systemPackages = with pkgs; [ python3 killall htop bat git git-lfs tig tcpdump iperf3 bmon figlet tmux neovim xh liboping mtr jq unzip unrar home-manager # nice prompt together with grml pure-prompt ]; programs.mosh.enable = true; # open firewall programs.neovim = { enable = true; defaultEditor = true; }; # zsh users.defaultUserShell = pkgs.zsh; programs.zsh = { enable = true; autosuggestions.enable = true; syntaxHighlighting.enable = true; # interactiveShellInit = '' promptInit = '' source ${pkgs.grml-zsh-config}/etc/zsh/zshrc prompt pure; ''; # promptInit = ""; shellAliases = { ip = "ip --color"; watch = "watch -c"; grep = "grep --color=always --exclude-dir=.git"; }; }; # tmux imports = [ ./files/tmux.nix ]; }