diff --git a/modules/home/core/apps.nix b/modules/home/core/apps.nix index 736f4a8..214a70c 100644 --- a/modules/home/core/apps.nix +++ b/modules/home/core/apps.nix @@ -45,9 +45,8 @@ gpu-screen-recorder gpu-screen-recorder-gtk - # LOCK IN - # (prismlauncher.override { - # jdks = with javaPackages.compiler.temurin-bin; [ jre-21 jdk-25 ]; - # }) + (prismlauncher.override { + jdks = with javaPackages.compiler.temurin-bin; [ jre-21 jdk-25 ]; + }) ]; } diff --git a/modules/home/rice/keybinds.nix b/modules/home/rice/keybinds.nix index a738878..8e01baa 100644 --- a/modules/home/rice/keybinds.nix +++ b/modules/home/rice/keybinds.nix @@ -10,9 +10,8 @@ "Mod+Q".action.close-window = {}; "Mod+W".action.maximize-column = {}; "Mod+S".action.fullscreen-window = {}; - "Ctrl+Print".action.screenshot-window = {}; - "Alt+Print".action.screenshot-screen = {}; - "Print".action.screenshot = {}; + "Alt+Print".action.screenshot-window = {}; + "Print".action.screenshot-screen = {}; "Mod+Up".action.focus-workspace-up = {}; "Mod+Down".action.focus-workspace-down = {}; @@ -31,8 +30,7 @@ "Alt+Space".action.toggle-overview = {}; "Mod+Space" = { action.spawn = [ "playerctl" "play-pause" ]; allow-when-locked = true; }; - "Mod+R".action.spawn = [ "rofi" "-show" "drun" "-show-icons" "-display-drun" "" "-run-command" "{cmd}" ]; - "Mod+Shift+R".action.spawn = [ "rofi" "-show" "drun" "-show-icons" "-display-drun" "wayland-0" "-run-command" "sh -c 'WAYLAND_DISPLAY=wayland-0 DISPLAY=:1 exec {cmd}'" ]; + "Mod+R".action.spawn = [ "rofi" "-show" "drun" "-show-icons" "-display-drun" "" "-run-command" "uwsm app -- {cmd}" ]; "Mod+E".action.spawn = [ "pcmanfm-qt" ]; "Mod+T".action.spawn = [ "kitty" ]; diff --git a/modules/system/homelab/dns.nix b/modules/system/homelab/dns.nix index 4f208da..a1ddbb3 100644 --- a/modules/system/homelab/dns.nix +++ b/modules/system/homelab/dns.nix @@ -21,13 +21,6 @@ whitelist = [ "https://gist.githubusercontent.com/mul14/eb05e88fcec5bb195cbb/raw/75a1fe122a4502e8d5a5268c9d0ec28332b19d5d/hosts" ]; - blocked = [ - # LOCK IN - "instagram" - "youtube" - "minecraft" - "steam" - ]; in { services.adguardhome = { enable = true; @@ -38,7 +31,6 @@ in { dns = { upstream_dns = [ "https://security.cloudflare-dns.com/dns-query" ]; bootstrap_dns = [ "1.1.1.2" "1.0.0.2" ]; - blocked_services = blocked; }; querylog = { interval = "2160h"; diff --git a/modules/system/homelab/mc/default.nix b/modules/system/homelab/mc/default.nix index 2217a08..ae55545 100644 --- a/modules/system/homelab/mc/default.nix +++ b/modules/system/homelab/mc/default.nix @@ -10,8 +10,7 @@ boot.kernel.sysctl."vm.swappiness" = 10; # reduce swap usage and keep memory performance smooth services.minecraft-servers = { - # LOCK IN - enable = false; + enable = true; eula = true; managementSystem.systemd-socket.enable = true; # ^^^ https://github.com/Infinidoge/nix-minecraft/issues/119 diff --git a/modules/system/homelab/mc/mc0-vanilla-plus.nix b/modules/system/homelab/mc/mc0-vanilla-plus.nix index 5240835..79f86bc 100644 --- a/modules/system/homelab/mc/mc0-vanilla-plus.nix +++ b/modules/system/homelab/mc/mc0-vanilla-plus.nix @@ -3,11 +3,6 @@ ram-allocation-mb = 8192; headroom-allocation-mb = 1024; rcon-pass = "howdy"; - ports = { - minecraft = 25565; - rcon = 25575; - }; - modpack = let useLatest = false; commit = "86bf13316ed1352a676d9056d284448ea5e5a079"; @@ -23,13 +18,13 @@ in { }; services.minecraft-servers.servers.${name} = { - enable = false; + enable = true; autoStart = true; restart = "always"; serverProperties = { server-ip = "0.0.0.0"; - server-port = ports.minecraft; + server-port = 25565; server-name = name; motd = "§cCan't connect to server"; log-ips = false; @@ -54,7 +49,7 @@ in { enable-rcon = true; sync-chunk-writes = false; "rcon.password" = rcon-pass; - "rcon.port" = ports.rcon; + "rcon.port" = 25575; }; symlinks = inputs.mc.lib.collectFilesAt modpack "mods" // { diff --git a/modules/system/homelab/mc/mc1-pure-vanilla.nix b/modules/system/homelab/mc/mc1-pure-vanilla.nix index 9268e35..6b64a85 100644 --- a/modules/system/homelab/mc/mc1-pure-vanilla.nix +++ b/modules/system/homelab/mc/mc1-pure-vanilla.nix @@ -3,10 +3,6 @@ ram-allocation-mb = 8192; headroom-allocation-mb = 1024; rcon-pass = "howdy"; - ports = { - minecraft = 25566; - rcon = 25576; - }; modpack = pkgs.fetchModrinthModpack { url = "https://cdn.modrinth.com/data/2wkV8mHp/versions/mFGJP1Ye/Server%20Optimization%201.21.11-2.1.mrpack"; @@ -21,7 +17,7 @@ in { serverProperties = { server-ip = "0.0.0.0"; - server-port = ports.minecraft; + server-port = 25566; server-name = name; motd = "§cCan't connect to server"; log-ips = false; @@ -46,7 +42,7 @@ in { enable-rcon = true; sync-chunk-writes = false; "rcon.password" = rcon-pass; - "rcon.port" = ports.rcon; + "rcon.port" = 25576; }; files = inputs.mc.lib.collectFilesAt modpack "config"; diff --git a/modules/system/homelab/mc/mc2-create-aeronautics.nix b/modules/system/homelab/mc/mc2-create-aeronautics.nix deleted file mode 100644 index 0e557c7..0000000 --- a/modules/system/homelab/mc/mc2-create-aeronautics.nix +++ /dev/null @@ -1,120 +0,0 @@ -{ inputs, lib, pkgs, ... }: let - name = "mc2-create-aeronautics"; - ram-allocation-mb = 12288; - headroom-allocation-mb = 2048; - rcon-pass = "howdy"; - ports = { - minecraft = 25567; - rcon = 25577; - }; - - modpack = let - useLatest = true; - commit = ""; - path = if !useLatest then "commit/${commit}" else "branch/main"; - in pkgs.fetchPackwizModpack { - packHash = ""; - url = "https://git.satr14.my.id/satr14/create-modpack/raw/${path}/pack.toml"; - }; -in { - systemd.services."minecraft-server-${name}" = { - environment.LD_LIBRARY_PATH = "${pkgs.stdenv.cc.cc.lib}/lib"; # physics toys mod fix - # serviceConfig.Nice = -5; # higher scheduling priority (causes fan noise even when idle) - }; - - services.minecraft-servers.servers.${name} = { - enable = true; - autoStart = true; - restart = "always"; - - serverProperties = { - server-ip = "0.0.0.0"; - server-port = ports.minecraft; - server-name = name; - motd = "§cCan't connect to server"; - log-ips = false; - hide-online-players = true; - - difficulty = "normal"; - gamemode = "survival"; - max-world-size = 25000; - spawn-protection = 0; - pvp = true; - - online-mode = true; - enable-query = true; - enforce-secure-profile = false; - pevent-proxy-connections = false; - allow-flight = false; - player-idle-timeout = 0; - - view-distance = 12; - simulation-distance = 6; - - enable-rcon = true; - sync-chunk-writes = false; - "rcon.password" = rcon-pass; - "rcon.port" = ports.rcon; - }; - - symlinks = inputs.mc.lib.collectFilesAt modpack "mods" // { - "polymer/packsquash" = let packsquash-binary = pkgs.runCommand "packsquash" { - src = pkgs.fetchurl { - url = "https://github.com/ComunidadAylas/PackSquash/releases/download/v0.4.1/packsquash-x86_64-unknown-linux-gnu.zip"; - sha256 = "sha256-VsGZewoiO5MjhIhwjlLO5d5uHynlAK5Jh16jH2k2rPs="; - }; - nativeBuildInputs = [ pkgs.unzip ]; - } '' - mkdir -p $out/bin - unzip $src -d $out/bin - chmod +x $out/bin/packsquash - ''; in "${packsquash-binary}/bin/packsquash"; - }; - - files = inputs.mc.lib.collectFilesAt modpack "config" // { - "config/proxy_protocol_support.json".value = { - enableProxyProtocol = false; # polymer auto host has issues with proxy protocol - whitelistTCPShieldServers = false; - proxyServerIPs = [ "127.0.0.1" "::1" ]; - directAccessIPs = [ "127.0.0.0/8" "::1/128" ]; - }; - }; - - extraStartPre = let sed-commands = lib.concatStringsSep "\n" ( - lib.mapAttrsToList (substitution: file: - ''sed -i "s|${substitution}|''${${substitution}}|g" ${file}'' - ) { - "REPLACE_SVC_HOST" = "config/voicechat/voicechat-server.properties"; - "REPLACE_RP_LINK" = "config/welcomemessage.json5"; - "REPLACE_DC_BOT_TOKEN" = "config/simple-discord-link/simple-discord-link.toml"; - "REPLACE_DC_OWNER_ROLE" = "config/simple-discord-link/simple-discord-link.toml"; - } - ); in '' - # shellcheck disable=SC1091 - if [ -f modpack-config.env ]; then - source modpack-config.env - ${sed-commands} - fi - ''; - - package = pkgs.fabricServers.fabric-1_21_11.override { - jre_headless = pkgs.javaPackages.compiler.temurin-bin.jdk-25; - loaderVersion = "0.19.2"; - }; - - jvmOpts = let flags = [ - "-Xms${toString ram-allocation-mb}M" - "-Xmx${toString ram-allocation-mb}M" - - "-XX:+UseZGC" # Use ZGC (requires Java v25+, 8+ CPU cores, 10GB+ RAM) - "-XX:+ZGenerational" # Use generational ZGC (newer and better ZGC, requires Java v21+) - "-XX:+UseCompactObjectHeaders" # Use compact object headers (requires Java v16+, saves a couple of bits per object) - - "--add-modules=jdk.incubator.vector" # Exposes SIMD instructions (requires full JDK, useful with performance mods like C2ME) - "-XX:+AlwaysPreTouch" # Pre-allocates memory on startup, OS claims it immediately for JVM instead of negotiating it - "-XX:+DisableExplicitGC" # Disables mods from manually invoking the GC - "-XX:+PerfDisableSharedMem" # Disables constant /tmp writes for JVM metrics - "-XX:SoftMaxHeapSize=${toString (ram-allocation-mb - headroom-allocation-mb)}M" # Leave 2GB headroom - ]; in lib.concatStringsSep " " flags; - }; -} \ No newline at end of file diff --git a/modules/system/homelab/media.nix b/modules/system/homelab/media.nix index 8274d1e..0c7a17f 100644 --- a/modules/system/homelab/media.nix +++ b/modules/system/homelab/media.nix @@ -4,8 +4,7 @@ ]; services = { jellyfin = { - # LOCK IN - enable = false; + enable = true; dataDir = "/mnt/data/apps/jellyfin"; hardwareAcceleration = { enable = true; diff --git a/modules/system/misc/programs.nix b/modules/system/misc/programs.nix index acc3a7e..778858b 100644 --- a/modules/system/misc/programs.nix +++ b/modules/system/misc/programs.nix @@ -16,8 +16,7 @@ }; programs = { - # LOCK IN - # steam.enable = true; + steam.enable = true; gdk-pixbuf.modulePackages = [ pkgs.librsvg ]; appimage = { enable = true;