93 lines
2.0 KiB
Nix
93 lines
2.0 KiB
Nix
# 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 ];
|
||
}
|
||
|