bluemap: 3.21 -> 5.3
This commit is contained in:
parent
03c0a80f39
commit
32f34d13c2
@ -163,6 +163,8 @@
|
|||||||
|
|
||||||
- `services.kubernetes.kubelet.clusterDns` now accepts a list of DNS resolvers rather than a single string, bringing the module more in line with the upstream Kubelet configuration schema.
|
- `services.kubernetes.kubelet.clusterDns` now accepts a list of DNS resolvers rather than a single string, bringing the module more in line with the upstream Kubelet configuration schema.
|
||||||
|
|
||||||
|
- `bluemap` has changed the format used to store map tiles, and the database layout has been heavily modified. Upstream recommends a clean reinstallation: <https://github.com/BlueMap-Minecraft/BlueMap/releases/tag/v5.2>. Unless you are using an SQL storage backend, this should only entail deleting the contents of `config.services.bluemap.coreSettings.data` (defaults to `/var/lib/bluemap`) and `config.services.bluemap.webRoot` (defaults to `/var/lib/bluemap/web`).
|
||||||
|
|
||||||
- `wstunnel` has had a major version upgrade that entailed rewriting the program in Rust.
|
- `wstunnel` has had a major version upgrade that entailed rewriting the program in Rust.
|
||||||
The module was updated to accommodate for breaking changes.
|
The module was updated to accommodate for breaking changes.
|
||||||
Breaking changes to the module API were minimised as much as possible,
|
Breaking changes to the module API were minimised as much as possible,
|
||||||
|
@ -13,6 +13,9 @@ let
|
|||||||
(format.generate "${name}.conf" value))
|
(format.generate "${name}.conf" value))
|
||||||
cfg.maps);
|
cfg.maps);
|
||||||
|
|
||||||
|
addonsFolder = pkgs.linkFarm "addons"
|
||||||
|
(lib.attrsets.mapAttrs' (name: value: lib.nameValuePair "${name}.jar" value) cfg.addons);
|
||||||
|
|
||||||
storageFolder = pkgs.linkFarm "storage"
|
storageFolder = pkgs.linkFarm "storage"
|
||||||
(lib.attrsets.mapAttrs' (name: value:
|
(lib.attrsets.mapAttrs' (name: value:
|
||||||
lib.nameValuePair "${name}.conf"
|
lib.nameValuePair "${name}.conf"
|
||||||
@ -25,11 +28,16 @@ let
|
|||||||
"core.conf" = coreConfig;
|
"core.conf" = coreConfig;
|
||||||
"webapp.conf" = webappConfig;
|
"webapp.conf" = webappConfig;
|
||||||
"webserver.conf" = webserverConfig;
|
"webserver.conf" = webserverConfig;
|
||||||
"resourcepacks" = pkgs.linkFarm "resourcepacks" cfg.resourcepacks;
|
"packs" = pkgs.linkFarm "packs" cfg.resourcepacks;
|
||||||
|
"addons" = addonsFolder;
|
||||||
};
|
};
|
||||||
|
|
||||||
inherit (lib) mkOption;
|
inherit (lib) mkOption;
|
||||||
in {
|
in {
|
||||||
|
imports = [
|
||||||
|
(lib.mkRenamedOptionModule [ "services" "bluemap" "resourcepacks" ] [ "services" "bluemap" "packs" ])
|
||||||
|
];
|
||||||
|
|
||||||
options.services.bluemap = {
|
options.services.bluemap = {
|
||||||
enable = lib.mkEnableOption "bluemap";
|
enable = lib.mkEnableOption "bluemap";
|
||||||
|
|
||||||
@ -219,6 +227,26 @@ in {
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
addons = mkOption {
|
||||||
|
type = lib.types.attrsOf lib.types.pathInStore;
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
A set of jar addons to be loaded.
|
||||||
|
|
||||||
|
See <https://bluemap.bluecolored.de/3rdPartySupport.html> for a list of officially recognized addons.
|
||||||
|
'';
|
||||||
|
|
||||||
|
example = lib.literalExpression ''
|
||||||
|
{
|
||||||
|
blueBridge = ./blueBridge.jar;
|
||||||
|
blueBorder = pkgs.fetchurl {
|
||||||
|
url = "https://github.com/pop4959/BlueBorder/releases/download/1.1.1/BlueBorder-1.1.1.jar";
|
||||||
|
hash = "...";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
storage = mkOption {
|
storage = mkOption {
|
||||||
type = lib.types.attrsOf (lib.types.submodule {
|
type = lib.types.attrsOf (lib.types.submodule {
|
||||||
freeformType = format.type;
|
freeformType = format.type;
|
||||||
@ -249,10 +277,13 @@ in {
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
resourcepacks = mkOption {
|
packs = mkOption {
|
||||||
type = lib.types.attrsOf lib.types.pathInStore;
|
type = lib.types.attrsOf lib.types.pathInStore;
|
||||||
default = { };
|
default = { };
|
||||||
description = "A set of resourcepacks to use, loaded in alphabetical order";
|
description = ''
|
||||||
|
A set of resourcepacks, datapacks, and mods to extract resources from,
|
||||||
|
loaded in alphabetical order.
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -293,11 +324,12 @@ in {
|
|||||||
"${cfg.host}" = {
|
"${cfg.host}" = {
|
||||||
root = config.services.bluemap.webRoot;
|
root = config.services.bluemap.webRoot;
|
||||||
locations = {
|
locations = {
|
||||||
"~* ^/maps/[^/]*/tiles/[^/]*.json$".extraConfig = ''
|
"@empty".return = "204";
|
||||||
error_page 404 =200 /assets/emptyTile.json;
|
|
||||||
|
"~* ^/maps/[^/]*/tiles/".extraConfig = ''
|
||||||
|
error_page 404 = @empty;
|
||||||
gzip_static always;
|
gzip_static always;
|
||||||
'';
|
'';
|
||||||
"~* ^/maps/[^/]*/tiles/[^/]*.png$".tryFiles = "$uri =204";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "bluemap";
|
pname = "bluemap";
|
||||||
version = "3.21";
|
version = "5.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/BlueMap-Minecraft/BlueMap/releases/download/v${version}/BlueMap-${version}-cli.jar";
|
url = "https://github.com/BlueMap-Minecraft/BlueMap/releases/download/v${version}/BlueMap-${version}-cli.jar";
|
||||||
hash = "sha256-YWf69+nsMfqk2x9xGTt+tdnGvaU+6rPsiBLWsP89ngM=";
|
hash = "sha256-oL6aNjJfPKq8Ywbpxt0wau7EZLir6QfpO2WJZZyHUfU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user