From 164cdd85a0a757a3de7ec26c728a9d85525393f3 Mon Sep 17 00:00:00 2001 From: Gerg-L Date: Sun, 17 Sep 2023 16:04:33 -0400 Subject: [PATCH] messing with website locked papermc added searxng enabled website --- flake.lock | 44 +++++++-------- hosts/gerg-desktop/containers/minecraft.nix_ | 14 +++-- .../containers/{website.nix_ => website.nix} | 39 ++------------ hosts/gerg-desktop/funni.nix | 29 ---------- hosts/gerg-desktop/nginx.nix | 54 +++++++++++++++++++ hosts/gerg-desktop/searxng.nix | 34 ++++++++++++ hosts/gerg-desktop/secrets.yaml | 15 +++--- packages/papermc.nix | 45 ++++++++++++++++ 8 files changed, 177 insertions(+), 97 deletions(-) rename hosts/gerg-desktop/containers/{website.nix_ => website.nix} (77%) delete mode 100644 hosts/gerg-desktop/funni.nix create mode 100644 hosts/gerg-desktop/nginx.nix create mode 100644 hosts/gerg-desktop/searxng.nix create mode 100644 packages/papermc.nix diff --git a/flake.lock b/flake.lock index 6c64f10..9cc8d3e 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1694808292, - "narHash": "sha256-zSZ8IfZfv6nK0z+wNuM0Tqx6c9b4+Q5Xn9FIpunWBwA=", + "lastModified": 1694925805, + "narHash": "sha256-UNMivSc89undITtNoy6o6bf3Dck4v75rzGiMEXAPEB0=", "owner": "nix-community", "repo": "disko", - "rev": "0faae8adf6d790df2c3d00437ccad7cd5c531c70", + "rev": "9ab96378f8cf602d5f3ce5a32f2c339509288d8e", "type": "github" }, "original": { @@ -106,11 +106,11 @@ }, "master": { "locked": { - "lastModified": 1694837283, - "narHash": "sha256-iru4AgJXhPWVczaXpVkjdGnuaiuy8zOUrXw6zgF71xs=", + "lastModified": 1694979977, + "narHash": "sha256-XOmhJiUEz/SmFDofbPfnZRsVxlPzkz9/S/o1hvr61io=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "dc1834e25c1fce8df4be1938efb6166c7fa69eb1", + "rev": "6b153bfe2a84b69e3d655d1b8c3516e9758ce42a", "type": "github" }, "original": { @@ -122,11 +122,11 @@ "neovim-src": { "flake": false, "locked": { - "lastModified": 1694815276, - "narHash": "sha256-9q0AqoOJUZ6pqayUFuyjpD3DhbnqUIF93jixLSlnYxw=", + "lastModified": 1694922031, + "narHash": "sha256-12OiYaH906BnWOK+nlXbNOi3fMmt/3cAqILTyVXzxo8=", "owner": "neovim", "repo": "neovim", - "rev": "be10d65bfafe056025ffffa2c1131712b9a493a5", + "rev": "d70667a1c1f887529d1b4952325aff368c200ef1", "type": "github" }, "original": { @@ -143,16 +143,16 @@ "nixpkgs-regression": "nixpkgs-regression" }, "locked": { - "lastModified": 1692453612, - "narHash": "sha256-T53szNMtOf6oFYAZ7gjtBHhzFTdAEOHHqm/2QYFieBQ=", + "lastModified": 1694007573, + "narHash": "sha256-DThtWWrG8JHzG6oS/JA/0mOVRj7IxHNdVnXk291wJRs=", "owner": "NixOS", "repo": "nix", - "rev": "10afcf06aa2607bf088f7f08989f42c1fa2689a2", + "rev": "3a62651bd663a849a568bf69017d0f3b1addd564", "type": "github" }, "original": { "owner": "NixOS", - "ref": "10afcf06aa2607bf088f7f08989f42c1fa2689a2", + "ref": "3a62651bd663a849a568bf69017d0f3b1addd564", "repo": "nix", "type": "github" } @@ -250,11 +250,11 @@ ] }, "locked": { - "lastModified": 1694837814, - "narHash": "sha256-5X4PR5igTdDqy9xUXpHckpG29Pesx3eZb4QroJVIjmo=", + "lastModified": 1694924115, + "narHash": "sha256-aa8wVhjfRrb8VnLgwytyyutJi/zBYIVrky1OUvNWEN4=", "owner": "Gerg-L", "repo": "nvim-flake", - "rev": "9e7f4abd6bd9282db97c161cb60ceb4626801a1d", + "rev": "b5094547adb43033ec6ced30adff3681af0b21d2", "type": "github" }, "original": { @@ -307,11 +307,11 @@ ] }, "locked": { - "lastModified": 1694837641, - "narHash": "sha256-lK8hNfJ0wNstHFzFJS7GRYHzAwVPetQCUTRo1tpbX1s=", + "lastModified": 1694879042, + "narHash": "sha256-EuKsh8ogNBmWtujco1joBIelOPTVtPpqiE6Pp7aNNJU=", "owner": "Gerg-L", "repo": "spicetify-nix", - "rev": "94ea505fe7996e8d496b4cda8fb24661cd6a03b6", + "rev": "ad9e8425bc79920a0cbe06bb8a962d35e5d864f4", "type": "github" }, "original": { @@ -322,11 +322,11 @@ }, "stable": { "locked": { - "lastModified": 1694753796, - "narHash": "sha256-QPE7dqcicQH/nq9aywVXJWWtci4FvxHaM+BSIEbGBvA=", + "lastModified": 1694937365, + "narHash": "sha256-iHZSGrb9gVpZRR4B2ishUN/1LRKWtSHZNO37C8z1SmA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "360a7d31c30abefdc490d203f80e3221b7a24af2", + "rev": "5d017a8822e0907fb96f7700a319f9fe2434de02", "type": "github" }, "original": { diff --git a/hosts/gerg-desktop/containers/minecraft.nix_ b/hosts/gerg-desktop/containers/minecraft.nix_ index 7926583..d9701b9 100644 --- a/hosts/gerg-desktop/containers/minecraft.nix_ +++ b/hosts/gerg-desktop/containers/minecraft.nix_ @@ -1,20 +1,26 @@ -_: { +{self, ...}: { containers."minecraft" = { ephemeral = true; autoStart = true; privateNetwork = true; - hostBridge = "bridge0"; + hostBridge = "br0"; localAddress = "192.168.1.10/24"; bindMounts."/minecraft" = { hostPath = "/persist/minecraft"; isReadOnly = false; }; - config = {pkgs, ...}: { + config = { + pkgs, + lib, + ... + }: { nixpkgs.config.allowUnfree = true; environment.systemPackages = [pkgs.neovim]; networking = { defaultGateway = "192.168.1.1"; nameservers = ["192.168.1.1"]; + useHostResolvConf = lib.mkForce false; + firewall = { allowedUDPPorts = [25565]; allowedTCPPorts = [25565]; @@ -59,7 +65,7 @@ _: { after = ["network.target" "minecraft-server.socket"]; serviceConfig = { - ExecStart = "${pkgs.papermc}/bin/minecraft-server -Xms8G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true"; + ExecStart = "${self.packages.${pkgs.system}.papermc}/bin/minecraft-server -Xms8G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true"; Restart = "always"; User = "minecraft"; WorkingDirectory = "/minecraft"; diff --git a/hosts/gerg-desktop/containers/website.nix_ b/hosts/gerg-desktop/containers/website.nix similarity index 77% rename from hosts/gerg-desktop/containers/website.nix_ rename to hosts/gerg-desktop/containers/website.nix index c8733c6..1d18770 100644 --- a/hosts/gerg-desktop/containers/website.nix_ +++ b/hosts/gerg-desktop/containers/website.nix @@ -9,14 +9,6 @@ _: { "website/nextcloud" = { mode = "0444"; }; - - "website/ssl_key" = { - mode = "0444"; - }; - - "website/ssl_cert" = { - mode = "0444"; - }; }; containers."website" = { ephemeral = true; @@ -38,6 +30,7 @@ _: { config = { pkgs, config, + lib, ... }: let giteaPort = 3000; @@ -46,10 +39,9 @@ _: { environment.systemPackages = [pkgs.neovim]; networking = { defaultGateway = "192.168.1.1"; - nameservers = ["1.1.1.1" "1.0.0.1"]; - firewall = { - allowedTCPPorts = [giteaPort 80 443 22]; - }; + nameservers = ["192.168.1.1"]; + useHostResolvConf = lib.mkForce false; + firewall.allowedTCPPorts = [giteaPort 80 443 22]; }; systemd.services.setmacaddr = { script = '' @@ -114,29 +106,6 @@ _: { gitea-users gitea gitea ''; }; - nginx = { - enable = true; - recommendedGzipSettings = true; - recommendedOptimisation = true; - recommendedProxySettings = true; - recommendedTlsSettings = true; - virtualHosts = let - template = { - forceSSL = true; - sslCertificate = "/secrets/ssl_cert"; - sslCertificateKey = "/secrets/ssl_key"; - }; - in { - "git.gerg-l.com" = - template - // { - locations."/" = { - proxyPass = "http://localhost:${toString giteaPort}"; - }; - }; - "next.gerg-l.com" = template; - }; - }; openssh = { enable = true; settings = { diff --git a/hosts/gerg-desktop/funni.nix b/hosts/gerg-desktop/funni.nix deleted file mode 100644 index 23242b4..0000000 --- a/hosts/gerg-desktop/funni.nix +++ /dev/null @@ -1,29 +0,0 @@ -_: {config, ...}: { - sops.secrets = { - ssl_cert = { - owner = "nginx"; - group = "nginx"; - }; - ssl_key = { - owner = "nginx"; - group = "nginx"; - }; - }; - services.nginx = { - enable = true; - recommendedGzipSettings = true; - recommendedOptimisation = true; - recommendedProxySettings = true; - recommendedTlsSettings = true; - virtualHosts."nix-fu.com" = { - forceSSL = true; - sslCertificate = config.sops.secrets.ssl_cert.path; - sslCertificateKey = config.sops.secrets.ssl_key.path; - serverAliases = ["www.nix-fu.com" "nix-fu.com"]; - locations."/".return = "301 $scheme://www.github.com/Gerg-L$request_uri"; - }; - }; - networking.firewall = { - allowedTCPPorts = [80 443]; - }; -} diff --git a/hosts/gerg-desktop/nginx.nix b/hosts/gerg-desktop/nginx.nix new file mode 100644 index 0000000..063e92e --- /dev/null +++ b/hosts/gerg-desktop/nginx.nix @@ -0,0 +1,54 @@ +_: { + config, + lib, + ... +}: { + sops.secrets = lib.mapAttrs (_: v: + { + owner = "nginx"; + group = "nginx"; + } + // v) { + nixfu_ssl_cert = {}; + nixfu_ssl_key = {}; + gerg_ssl_key = {}; + gerg_ssl_cert = {}; + }; + services.nginx = { + enable = true; + recommendedGzipSettings = true; + recommendedOptimisation = true; + recommendedProxySettings = true; + recommendedTlsSettings = true; + virtualHosts = { + "nix-fu.com" = { + forceSSL = true; + sslCertificate = config.sops.secrets.nixfu_ssl_cert.path; + sslCertificateKey = config.sops.secrets.nixfu_ssl_key.path; + serverAliases = ["www.nix-fu.com" "nix-fu.com"]; + locations."/".return = "301 $scheme://www.github.com/Gerg-L$request_uri"; + }; + "search.Gerg-L.com" = { + forceSSL = true; + sslCertificate = config.sops.secrets.gerg_ssl_cert.path; + sslCertificateKey = config.sops.secrets.gerg_ssl_key.path; + locations."/".proxyPass = "http://localhost:${toString config.services.searx.settings.server.port}"; + }; + "git.Gerg-L.com" = { + forceSSL = true; + sslCertificate = config.sops.secrets.gerg_ssl_cert.path; + sslCertificateKey = config.sops.secrets.gerg_ssl_key.path; + locations."/".proxyPass = "http://192.168.1.11:3000"; + }; + "next.Gerg-L.com" = { + forceSSL = true; + sslCertificate = config.sops.secrets.gerg_ssl_cert.path; + sslCertificateKey = config.sops.secrets.gerg_ssl_key.path; + locations."/".proxyPass = "http://192.168.1.11:80"; + }; + }; + }; + networking.firewall = { + allowedTCPPorts = [80 443]; + }; +} diff --git a/hosts/gerg-desktop/searxng.nix b/hosts/gerg-desktop/searxng.nix new file mode 100644 index 0000000..ffa5e58 --- /dev/null +++ b/hosts/gerg-desktop/searxng.nix @@ -0,0 +1,34 @@ +_: { + config, + pkgs, + ... +}: { + sops.secrets.searxngenv = {}; + services.searx = { + enable = true; + runInUwsgi = false; + package = pkgs.searxng; + environmentFile = config.sops.secrets.searxngenv.path; + settings = { + server = { + port = 8765; + secret_key = "@SEARXNG_SECRET@"; + }; + search.formats = [ + "html" + "json" + ]; + engines = [ + { + name = "bing"; + disabled = true; + } + { + name = "brave"; + disabled = true; + } + ]; + ui.theme_args.simple_style = "dark"; + }; + }; +} diff --git a/hosts/gerg-desktop/secrets.yaml b/hosts/gerg-desktop/secrets.yaml index 069fef4..4223490 100644 --- a/hosts/gerg-desktop/secrets.yaml +++ b/hosts/gerg-desktop/secrets.yaml @@ -1,14 +1,15 @@ -discordenv: ENC[AES256_GCM,data:/A46urPOiqH2ejKmmzCIpR/g2hU6n/AUTNQPikAxvp1PikWgX8JX+NPrGSGgxpn82B70JlwGK9T+9Fe9gaFgswhMrUj19TQ1kERW8HWLJ1LptvJTOsX57rKihJZUwD0v7g/Xof75U68dKPzdSlH7z16r0iOVA6ET4/w=,iv:0HK+0eBMf3awgQrbwXAEsBniTsxqj+izmftoB/UEp64=,tag:EajyB09aJPnHpss3Jv5SaQ==,type:str] +discordenv: ENC[AES256_GCM,data:dzl1FaBUPiiGR8hOmUVDulGnS9wBwX0ddYYV/euilrrHGO8GiktfENSLLIPpqNm1jSoO8zIs10/tTeQLGPtN5yUhF5lYhcjupows20Cd/Nn0OwDuLfXZmO3dAbN4hvsbGnJpnDOEB2EvqRZSQPxH8eLc0Do0hryjnrIYuKpN,iv:uWGY3XAbgFg1ZyI7J1/Q+UOdc5mReYvVq9uLFqfmadw=,tag:+ZlVbJ5ZyahaG1V3H+MVpQ==,type:str] +searxngenv: ENC[AES256_GCM,data:HtH4KxXWoQEJp88Bgfhfj5Y4Up+inHu8mnVtay64XvCRpVKHF/kceC3XwT9C3IdXpQ==,iv:iXK8hOFoEnM5wFUZhC8IOdHzPhwPDHtTL8MmS5FSlns=,tag:TZHTB7ia5Qq2f2fETJOpEA==,type:str] gerg: ENC[AES256_GCM,data:iSwWGIIxQenCPMd/Tith/eagjVINn0mgrO99IG85cP4UXtut6GF2R57XDMeD7SU18vW1ULod/lYuTo0SmmrkmX+wlDWgm4cODw==,iv:fHTcn4ZmjSqLC8jQkuualRbp+RwvgblS1ic6WPb2WEY=,tag:rkDuXhvleKekv3bVpdNNuw==,type:str] store_key: ENC[AES256_GCM,data:/1wAHcMZl3loV2IR7mj1z51lwfKmaP24DgEjl2w8qwbrKHBIS09meLXrVTvsvQmFM4AvKig9ADs1aeYoVTTEa4QE9nKJ/LyRI5z8dHe7j7H5Y+UI+Syr0CUKN2I9UuqkOAyWrPM=,iv:5cLxhzNawFMTKn+MT5cHILTvggHmxteycL+2bxUPsoc=,tag:q8voriNRZUL4pYYfOvJT0A==,type:str] website: nextcloud: ENC[AES256_GCM,data:JoxSXYzBhXV+h4Ar,iv:jKlAwWfX58DpgGbGOqWBIwcnx8EdIxhFKOUzsDccr7w=,tag:L6UBHh1HU8Je+OczQCypXg==,type:str] sql_gitea: ENC[AES256_GCM,data:Usfd0QDm/4ntj7kzXXYa3O7H7/E=,iv:3xUD2KuQvJUQtai6C+qAnQ2RbkpN5VLK8BUJFiMpQkY=,tag:E6KNzFIZekgecJCBPlw4YA==,type:str] sql_nextcloud: ENC[AES256_GCM,data:xkJioAZCCd8aIxS283UhZ2yfLgQ=,iv:7SQ2iSJShX6dDP3qD0KPaJP49CQ6RMHQ6uY5J/WODtI=,tag:HNXYa1L88mGB5uOrmTuFDg==,type:str] - ssl_key: ENC[AES256_GCM,data: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,iv:atbClRLg2Jvmyts0nUPzCw1WBdYdzSZbbVTgBWzatkA=,tag:i7dr+WBQ9Wp7WTTpgF+Z0w==,type:str] - ssl_cert: ENC[AES256_GCM,data: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,iv:+buh15C9ZHq2dc+WtIynTnMwPWIiGFc3sPTNyjlrqPM=,tag:Hsp4Mm9MAg4FuMLDGpdPHA==,type:str] -ssl_key: ENC[AES256_GCM,data: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,iv:jvHJctCURGbMJ1x5oTbcbAgwgTZcJlJLeWVNmS/gxJY=,tag:HgNCFv+19isN1DQyKRCWOg==,type:str] -ssl_cert: ENC[AES256_GCM,data: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,iv:/GnRmJcLC1mt8c3Fd4oWLe2rVeiTJKEDkV48Wodda8c=,tag:5hF7qxggQ1c27VzIPZs3xg==,type:str] +gerg_ssl_key: ENC[AES256_GCM,data:F51mBHbLzfgJ8SdFQwxRIHOfG/iYi35EwOzQ/PlWkI6VzAGoFn3K/Team1dMAS62CxIq96WByqctLhfgNl/sI63LT9KoGAKV/8sLKXav9FtVJlrsqWCCswMRV95ia6vUj6yiqCdX2qgawq+sYO1ztUu5pTfvG2DEO+2r+SXCFPBARJ5CQl39i+clnyjVSsZLHlRwdqSG5uzfNyjMand/0jgQ6yxFExaqahSiyf20H7liK0G8vnv4R4X1Gs+6Cqm2nMRy89rSLVndoX+IH7tvfjxMB+oHJkjdYqcznfUuIDeRMTxeQq6RiQuSmBYgPfYBWenMgMgt0IiuTRxfCdShjveDGXJr1lO8ZkmxPV6VUgL7stbRUs+UkWgpct7cUbgwcsbdgUvo3SiHRDHikqAJgWihV3V8jOUBsJrNbCyam999cZtyTCHRxnpHYR+zEfqA4823c9tW6KYQRr+FW8mHYxGCPLyDgXzCsNYf3bOzkKx6UIw5iNjRfQIPVlQinJtTfcYY20CXn25k+V15wRWMvs2QrOWj7qdssIyPgDalb70mj0lrLbdceHWW6JTmHiSQAjFK1pYEmXIEa9G1jES3Zq3G9Ty0/XUmt3yGUJr2TBQxhDbryr5Kd6PLfIrHBh/msw1QlSbdSv4a4BeGos1qD0HJgXrE/xqHPCUX07wCYpXVeEHR5OXF0SVgc6dCWo+s5iE7AggS4j3dKqZoDV2l0rZGI7RQvf8BoEAl+RwsCgrgY2zo7qeSb12NVP8Kb/wA0hIWT3IFrj4wLyk93vjsHwdbt9QJWf7yAFqIkB3y2MwPGQdn0s88FzZTeZCqDo+Q2vH0+GhzNozg1NV6XorV8kRO5t0hTM8fw8PGFdt7cUm1PGg60Fg5lBOs3t/y9OFDZcfsgEuxnOwZeslzkPmnLHf3DBPizdc2XCXuYmEKGiBiiFSC+zJF6+3S9W9/6uHvHEffJrIRSPxC4ElDfyvpxxY4kA5BMCXALpkYDaDCRPQSpu1EF1bi0mBSONHl6in+aYr1leVG185n+AOR3SsaY8jftN/rU4VxV2W5zszx2KZk/LzAjoDAZbBHgBVgY7KsD8Zs2+TBJppnxg35S4s0+PRQM/0t7mFfSNGv75ih98UX9jzvIpb/evR5vD8ImUJy1BzO1nVyzKHQiILETixxz6kRMDUlvP6OpsBXcAWR0w0AKX4irAXT6xVyaSYfIBIJuwzE/mN68kNhPT62eaFnTUTV7KLf7yM/3+blXHcELtEVO2z1WcC3QJZNTA9WVTli+YTeJ//2M5gyBKOAQ3bfYeNz8mubxJQh0XpZaVdUu6TGVG3bIjbj0ixnnuAt6IVlZQK74h/Ah542oSuqLclrXlmNYn5vU5OdxjRgThZZKhZFoqiY+W79OulXDzSbhlMvI5tiGGjiIc31iFSKS0JYyISt1jdiwogv/b8/d7whQCwh9IvG7loKFsPBP2NgW6hYlixqcdaSpP9S7hrG54BPZe2o2S0Ci3BMasits2WFr6u7Qsx1AvuWyJ/rO+llmuvWVl64WNQxi8EYKiMJx0QI3Pr1Od66wVir/LtAlR04vsNHAvzM6gjuQYefWV9X2cXlklbGJYrE/9DCWr8fvUzmh659/81d2+CCkd7jxxFh8BHTR7oFHhM/H21BEUzOSu35vrMTPwy8y4mLhywNqmbLdOiOIGgkw4g+q5r4v9Byf15PqGcR02K+TmpQpF3HIpnv/3UH3lD4TtjIzWocTIdlKuriHsZcIIlHDxoWj/2mlo6+QxOiiTyR0jhQA372T2tlEo5/v3VFDuWikrBhgnmVe5zngkTqUUghrucbxJDDsehlwzSbrcczvYGwSNYu+DdS+57WDUGoLTJ7oOWovz5XCbV11LOQUNP8TYP597YzeV/eVguYvjUoSqSmo0m6kHGkhLZWbWyZrl7e2F7cOf+S6cdheREkp2Q/Eet8/B9fVWxRBBTXTLnOCC2q/Y1A9Ls+lpW4OXYO7QJjQAx9SKXfrjGgujrXH7oLMxQZfORwjnZzT1LQU7T0wNhQvZLHmUoA0VRZdSxSqEWlEjSF0eJjx/SNoKOacinHTCiT3r0P0cKmIypENef9czRURKgiunmlvSgQ5jOeu2C69KmF9Qau5YnRt6rXjkJzu+lji5ArVfkDxDG+mx5dtVSxwovbdAh065JDHo52ROaXLCb3nfFWKWSgoemYXrsbH9lT4/Ro3P2JC+iDeJFwz4r9OjTvPDWh9YTfzOlhfvg7m+2lg9vV74gmXd+IgSKh,iv:aE4/hxhfju3jJXjwK0TrfI/cbLsFgDEDspg2zTgqo4M=,tag:LAmit77WTZnpoCX1iuhkbQ==,type:str] +gerg_ssl_cert: ENC[AES256_GCM,data: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,iv:ncEJNbY/7oUGNKRvhRHLq7Z8J5dCXl91oT5BYuOV5ZE=,tag:Us+lhVE7d5eeix1Iw/08+w==,type:str] +nixfu_ssl_key: ENC[AES256_GCM,data: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,iv:BbD2i/35D8p0/eEQ6RuM5nsDnQV+x2nTLU890LSju38=,tag:to2mYPiNkdYBHsgG7NJDbQ==,type:str] +nixfu_ssl_cert: ENC[AES256_GCM,data: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,iv:lWS91xOUh6q3dqcKAhJLW1mvqZVZ0221IPezbpPBR6Y=,tag:kpJiMPC/XwStx+xHk2VDhQ==,type:str] sops: kms: [] gcp_kms: [] @@ -24,8 +25,8 @@ sops: dGhDRXRTWE9xSGtxQU80RVpuL1A5MkEKxAxC/wDkq+6hM8eXkWd/RBDNIUtGYnPy MvVxB6dkj+S11oRcMpdFqiM9jSzz/gYecB2tfuDgj+UX/VAzSkvPxA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2023-09-15T03:59:48Z" - mac: ENC[AES256_GCM,data:De0u2PaN39q/RZqeJotEhS5u2gk89LSSBybwhU/PYwmb115ccgBCC/PuybhY7CxF8kR2xm5N/sX7Ljl6vNzcD7AuWPrXNOP4n0j1nk0bUHZgm2uzdIyh3+rrLgb0h0acBqluUlji9l1CNXFvx0OAsUJ9HatBR6e1vU6v3ipXVx8=,iv:eOQrG25hfysF2+KrifXtlBbS7vEMKkMGDJXpV4gFk8E=,tag:IClQjmdDcqSnfKGW9YAPtQ==,type:str] + lastmodified: "2023-09-17T05:38:47Z" + mac: ENC[AES256_GCM,data:Qf7Xlq2cO+zZQHmf9FYKEVU5MNtjW63EZkUd78bDcACXU8SHjtN9LY6rT8cXdtGdjY/rwG78bhT1uoh22BsUSuLDymMV9oNPnc9OZUb+OTVJ6tI0LMnJguHcKWzIwSjVhpabhkbs9O5VrDQGDX+suuNYjp3Fb0jmudUGgsvhQQM=,iv:6pUVqz46wOauPyrWwwtA6IujviAMgY3UGvgZemqkQwQ=,tag:Ti3HDw8psfPN2+REZGmx4w==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.7.3 diff --git a/packages/papermc.nix b/packages/papermc.nix new file mode 100644 index 0000000..c0c4ed6 --- /dev/null +++ b/packages/papermc.nix @@ -0,0 +1,45 @@ +{ + lib, + stdenv, + fetchurl, + bash, + jre, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "papermc"; + version = "1.20.1.83"; + + jar = let + mcVersion = lib.versions.pad 3 finalAttrs.version; + buildNum = builtins.elemAt (lib.versions.splitVersion finalAttrs.version) 3; + in + fetchurl { + url = "https://papermc.io/api/v2/projects/paper/versions/${mcVersion}/builds/${buildNum}/downloads/paper-${mcVersion}-${buildNum}.jar"; + sha256 = "sha256-HQpc3MOXa1wkXqgm9ciQj04FUIyuupnYiu+2RZ/sXE4="; + }; + preferLocalBuild = true; + + dontUnpack = true; + dontConfigure = true; + + buildPhase = '' + cat > minecraft-server << EOF + #!${bash}/bin/sh + exec ${jre}/bin/java \$@ -jar $out/share/papermc/papermc.jar nogui + ''; + + installPhase = '' + install -Dm444 ${finalAttrs.jar} $out/share/papermc/papermc.jar + install -Dm555 -t $out/bin minecraft-server + ''; + + meta = { + description = "High-performance Minecraft Server"; + homepage = "https://papermc.io/"; + sourceProvenance = with lib.sourceTypes; [binaryBytecode]; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [aaronjanse neonfuz]; + mainProgram = "minecraft-server"; + }; +})