ctucx.git: nixfiles

ctucx' nixfiles

commit fd1216c3753fed725e2ce0d6bfc8d24419624357
parent 3075583f589aee65a238cf7ae906b5a4fa43a943
Author: Katja (ctucx) <git@ctu.cx>
Date: Sun, 2 Mar 2025 13:43:28 +0100

modules: cleanup
3 files changed, 0 insertions(+), 170 deletions(-)
M
modules/default.nix
|
10
----------
D
modules/linux/minecraft-bedrock-server.nix
|
109
-------------------------------------------------------------------------------
D
modules/linux/nginx-sni-proxy.nix
|
51
---------------------------------------------------
diff --git a/modules/default.nix b/modules/default.nix
@@ -17,8 +17,6 @@
      ./linux/email-notify.nix
      ./linux/dns.nix
      ./linux/gotosocial.nix
-     ./linux/nginx-sni-proxy.nix
-     ./linux/minecraft-bedrock-server.nix
     ] else [])
     (if (currentSystem == "aarch64-darwin") then [
       inputs.agenix.darwinModules.default

@@ -27,17 +25,9 @@
       ./darwin/syncthing.nix
       ./darwin/skhd.nix
     ] else [])
-    (if (currentSystem == "x86_64-darwin") then [
-      inputs.agenix.darwinModules.default
-      ./darwin/quirks.nix
-      ./darwin/hidutil.nix
-      ./darwin/syncthing.nix
-      ./darwin/skhd.nix
-    ] else [])
   ]);
 
   options = {
-    networking.usePBBUplink  = lib.mkOption { type = lib.types.bool; default = false; };
     networking.primaryIP     = lib.mkOption { type = lib.types.str; default = ""; };
     networking.primaryIP4    = lib.mkOption { type = lib.types.str; default = ""; };
     networking.secondaryIP4  = lib.mkOption { type = lib.types.str; default = ""; };
diff --git a/modules/linux/minecraft-bedrock-server.nix b/modules/linux/minecraft-bedrock-server.nix
@@ -1,109 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-  cfg = config.services.minecraft-bedrock-server;
-
-  cfgToString          = v: if builtins.isBool v then boolToString v else toString v;
-  allowListFile        = pkgs.writeText "allowlist.json" (builtins.toJSON cfg.allowList);
-  permissionsFile      = pkgs.writeText "permissions.json" (builtins.toJSON cfg.permissions);
-  serverPropertiesFile = pkgs.writeText "server.properties" (''
-    # server.properties managed by NixOS configuration
-  '' + concatStringsSep "\n" (mapAttrsToList
-    (n: v: "${n}=${cfgToString v}") cfg.settings));
-
-in {
-
-  options = {
-    services.minecraft-bedrock-server = {
-
-      enable = mkOption {
-        type    = types.bool;
-        default = false;
-      };
-
-      dataDir = mkOption {
-        type    = types.path;
-        default = "/var/lib/minecraft-bedrock";
-      };
-
-      allowList = mkOption {
-        type    = with types; listOf (attrs);
-        default = [];
-      };
-
-      permissions = mkOption {
-        type    = with types; listOf (attrs);
-        default = [];
-      };
-
-      settings = mkOption {
-        type = with types; attrsOf (oneOf [ bool int str ]);
-      };
-
-      package = mkOption {
-        type    = types.package;
-        default = pkgs.minecraft-bedrock-server;
-      };
-
-    };
-  };
-
-  config = mkIf cfg.enable {
-
-    services.minecraft-bedrock-server.settings = {
-      server-name                     = lib.mkDefault "Bedrock Server";
-      gamemode                        = lib.mkDefault "survival";
-      difficulty                      = lib.mkDefault "easy";
-      allow-list                      = lib.mkDefault false;
-      allow-cheats                    = lib.mkDefault false;
-      max-players                     = lib.mkDefault 10;
-      online-mode                     = lib.mkDefault false;
-      server-port                     = lib.mkDefault 19132;
-      server-portv6                   = lib.mkDefault 19133;
-      view-distance                   = lib.mkDefault 32;
-      tick-distance                   = lib.mkDefault 4;
-      player-idle-timeout             = lib.mkDefault 30;
-      max-threads                     = lib.mkDefault 4;
-      level-name                      = lib.mkDefault "Bedrock level";
-      level-seed                      = lib.mkDefault "";
-      default-player-permission-level = lib.mkDefault "member";
-      texturepack-required            = lib.mkDefault false;
-      content-log-file-enabled        = lib.mkDefault false;
-      compression-threshold           = lib.mkDefault 1;
-      server-authoritative-movement   = lib.mkDefault "server-auth";
-      correct-player-movement         = lib.mkDefault false;
-    };
-
-
-    users.groups.minecraft = {};
-    users.users.minecraft  = {
-      isSystemUser    = true;
-      home            = cfg.dataDir;
-      createHome      = true;
-      group           = "minecraft";
-    };
-
-    systemd.services.minecraft-bedrock-server = {
-      description   = "Minecraft Bedrock Server Service";
-      wantedBy      = [ "multi-user.target" ];
-      after         = [ "network.target" ];
-
-      serviceConfig = {
-        ExecStart = "${cfg.package}/bin/bedrock_server";
-        Restart   = "always";
-        User      = "minecraft";
-        WorkingDirectory = cfg.dataDir;
-      };
-
-      preStart = ''
-        cp -a -n ${cfg.package}/var/lib/* .
-        cp -f ${serverPropertiesFile} server.properties
-        cp -f ${permissionsFile} permissions.json
-        cp -f ${allowListFile} allowlist.json
-        chmod +w server.properties
-      '';
-    };
-  };
-}
diff --git a/modules/linux/nginx-sni-proxy.nix b/modules/linux/nginx-sni-proxy.nix
@@ -1,51 +0,0 @@
-{ config, lib, ... }:
-
-let
-  cfg = config.services.nginx-sni-proxy;
-  upstreams = with lib; (concatStringsSep "\n" (mapAttrsToList (host: dest:
-      "${host} ${dest}:443;"
-    ) (concatMapAttrs (dest: hosts:
-      (genAttrs hosts (host: dest))
-    ) cfg.upstreamHosts
-  )));
-
-in {
-
-  options.services.nginx-sni-proxy = {
-    enable = lib.mkEnableOption "nginx SNI proxy";
-
-    upstreamHosts = lib.mkOption {
-      type = with lib.types; attrsOf (listOf str);
-      default = {};
-    };
-  };
-
-  config.services.nginx = lib.mkIf cfg.enable {
-    defaultSSLListenPort = 7443;
-    defaultListenAddresses = [ "[::1]" ];
-
-    streamConfig = ''
-      map $ssl_preread_server_name $sni_upstream {
-        ${upstreams}
-        default [::1]:7443;
-      }
-      server {
-        listen 0.0.0.0:443;
-        listen [::]:443;
-        ssl_preread on;
-        resolver 1.1.1.1;
-        proxy_pass $sni_upstream;
-      }
-    '';
-
-    appendHttpConfig = ''
-      server {
-        listen        0.0.0.0:80;
-        listen        [::]:80;
-        server_name   _;
-        return 301 https://$host$request_uri;
-      }
-    '';
-  };
-
-}