nixos_config/nixos/hosts/tesla-nixos/configuration.nix
2026-05-07 22:25:33 +02:00

68 lines
1.7 KiB
Nix

{ pkgs, ... }:
let
modpack = pkgs.fetchPackwizModpack {
url = "https://git.malice.zone/alisceon/tfcpack/-/raw/main/pack.toml";
packHash = "sha256-AKmS+CLiex+N2YipHNbOJpOS+cUut4fcG2oKCWuXBwY=";
};
in
{
imports = [ ./hardware-configuration.nix ];
security.sudo.wheelNeedsPassword = false;
networking.hostName = "tesla-nixos";
services.qemuGuest.enable = true;
boot = {
initrd.enable = true;
loader.systemd-boot.enable = true;
};
environment.systemPackages = with pkgs; [ tmux ];
virtualisation.containers.enable = true;
virtualisation = {
podman = {
enable = true;
dockerCompat = true;
defaultNetwork.settings.dns_enabled = true;
};
};
networking.firewall.allowedTCPPorts = [
8100
];
services.minecraft-servers = {
enable = true;
eula = true;
openFirewall = true;
servers.tfcpack = {
enable = true;
package = pkgs.neoforgeServers.neoforge-1_21_1-21_1_219;
autoStart = true;
serverProperties = {
motd = "TFC Pack - Tesla Nixos";
max-players = "20";
view-distance = "32";
level-type = "tfc\\:overworld";
spawn-protection = "0";
max-tick-time = "-1";
};
jvmOpts = [
"-Xmx24G"
"-Xms24G"
"-XX:+UseZGC"
"-XX:+ZGenerational"
];
symlinks.mods = "${modpack}/mods";
files."config/bluemap/core.conf" = "${modpack}/config/bluemap/core.conf";
};
};
virtualisation.oci-containers.backend = "podman";
virtualisation.oci-containers.containers.isponsorblocktv = {
image = "ghcr.io/dmunozv04/isponsorblocktv:latest";
autoStart = true;
volumes = [
"/home/alisceon/isponsorblocktv:/app/data"
];
};
}