server-configuration/configuration.nix
2025-04-15 12:49:38 +02:00

66 lines
1.3 KiB
Nix
Executable file

# Main configuration entrypoint file
{
pkgs,
inputs,
...
}: {
imports = [
./services/nginx.nix
./services/openssh.nix
./services/forgejo.nix
./services/vaultwarden.nix
./services/jellyfin.nix
./services/website.nix
./services/mailserver.nix
./services/fail2ban.nix
./services/zed.nix # IMPORTANTE
./services/auto-torrent.nix
./services/misc.nix
./services/website.nix
./modules/age.nix
./modules/git.nix
./modules/nix-settings.nix
./modules/zfs.nix
./modules/microvm.nix
(import ./modules/networking-shared.nix {hostname = "server";})
(import ./modules/users.nix {main-user = "baritone";})
];
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
timeout = 0;
};
boot.kernel.sysctl = {"vm.swappiness" = 85;};
# Enable microcode updates
hardware.enableRedistributableFirmware = true;
environment.systemPackages = with pkgs; [
wget
curl
git
vim
];
programs.nano.enable = false;
environment.variables = {
EDITOR = "vim"; # FUCK NANO
};
time.timeZone = "Europe/Copenhagen";
security.sudo = {
enable = true;
# I know what im doing
extraConfig = ''
Defaults lecture = never
'';
};
system.stateVersion = "24.11";
}