# # Main system configuration. More information available in configuration.nix(5) man page. # # flake.nix # ├─ ./hosts # │ └─ configuration.nix * # └─ ./modules # └─ ./editors # └─ ./nvim # └─ default.nix # { config, lib, pkgs, inputs, user, location, agenix, ... }: { imports = # Import window or display manager. [ #../modules/editors/nvim # ! Comment this out on first install ! ]; users.users.${user} = { # System User isNormalUser = true; extraGroups = [ "wheel" "networkmanager" "kvm" "libvirtd" ]; shell = pkgs.zsh; # Default shell uid = 3000; # initialPassword = "password95"; openssh.authorizedKeys.keys = [ "sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIANmaraVJ/o20c4dqVnGLp/wGck9QNHFPvO9jcEbKS29AAAABHNzaDo= kabbone@kabc" "sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIIgo4IP8ISUohyAMiDc3zEe6ESUE3un7eN5FhVtxZHmcAAAABHNzaDo= kabbone@kabc" "sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIKVDApb3vZ+i97V4xLJh8rUF6z5OVYfORlXYbLhdQO15AAAABHNzaDo= kabbone@hades.home.opel-online.de" "sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIB0q++epdX7feQxvmC2m/CJEoJbkqtAJy6Ml6WKHxryZAAAABHNzaDo= kabbone@hades.home.opel-online.de" ]; }; security.sudo.wheelNeedsPassword = true; # User does not need to give password when using sudo. time.timeZone = "Europe/Berlin"; # Time zone and internationalisation i18n = { defaultLocale = "en_US.UTF-8"; extraLocaleSettings = { # Extra locale settings that need to be overwritten LC_TIME = "de_DE.UTF-8"; LC_MONETARY = "de_DE.UTF-8"; }; }; console = { font = "Lat2-Terminus16"; keyMap = "us"; # or us/azerty/etc }; security = { rtkit.enable = true; pki.certificateFiles = [ ./rootCA.pem ]; }; fonts.packages = with pkgs; [ # Fonts carlito # NixOS vegur # NixOS source-code-pro font-awesome # Icons hack-font corefonts # MS intel-one-mono cascadia-code (nerdfonts.override { # Nerdfont Icons override fonts = [ "FiraCode" ]; }) ]; environment = { variables = { TERMINAL = "alacritty"; EDITOR = "nvim"; VISUAL = "nvim"; BROWSER = "firefox"; }; systemPackages = with pkgs; [ # Default packages install system-wide vim git killall pciutils usbutils wget powertop cpufrequtils lm_sensors bind dig agenix.packages.x86_64-linux.default ffmpeg smartmontools cryptsetup python311Packages.powerline powerline-fonts powerline-symbols tree direnv linuxPackages_latest.cpupower btop htop ]; }; services = { openssh = { # SSH: secure shell (remote connection to shell of server) enable = true; # local: $ ssh @ settings = { PasswordAuthentication = false; PermitRootLogin = "no"; }; ports = [ 2220 ]; openFirewall = true; }; #flatpak.enable = true; # download flatpak file from website - sudo flatpak install - reboot if not showing up # sudo flatpak uninstall --delete-data (> flatpak list --app) - flatpak uninstall --unused }; nix = { # Nix Package Manager settings settings ={ auto-optimise-store = true; # Optimise syslinks }; gc = { # Automatic garbage collection automatic = true; dates = "weekly"; options = "--delete-older-than 7d"; }; package = pkgs.nixVersions.stable; # Enable nixFlakes on system extraOptions = '' experimental-features = nix-command flakes keep-outputs = true keep-derivations = true ''; }; nixpkgs.config.allowUnfree = true; # Allow proprietary software. nixpkgs.config.permittedInsecurePackages = [ "olm-3.2.16" ]; system = { # NixOS settings autoUpgrade = { # Allow auto update enable = true; flake = "git+https://git.kabtop.de/Kabbone/nixos-config"; randomizedDelaySec = "5m"; allowReboot = true; rebootWindow = { lower = "02:00"; upper = "05:00"; }; }; stateVersion = "23.05"; }; }