From d41f58e3784e982ddc89b7f860c62ff92840b0af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 26 Dec 2021 19:01:56 +0000 Subject: [PATCH 001/196] WIP: Update forge server sha --- pkgs/minecraft/forge-server.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/minecraft/forge-server.nix b/pkgs/minecraft/forge-server.nix index 2dea39a..e26a7a5 100644 --- a/pkgs/minecraft/forge-server.nix +++ b/pkgs/minecraft/forge-server.nix @@ -9,7 +9,7 @@ let url = "${mirror}/${version}/forge-${version}-installer.jar"; curlOpts = "--globoff"; # Forge doesn't seem to like newer shas - sha1 = "e97821e5431bdcaa46e12048769922e2cdb5e2e1"; + sha1 = "sha1-oHNpyrgHluRrAXWZJg9j+OInAwA="; }; unpackCmd = "mkdir -p src; cp $curSrc src/forge-${version}-installer.jar"; From 9e9680ddf74db3f05dcc106517a5427a22278521 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 18 Jan 2022 18:59:30 +0000 Subject: [PATCH 002/196] WIP: Fix python env --- flake.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/flake.nix b/flake.nix index 8a0025f..bc1859a 100644 --- a/flake.nix +++ b/flake.nix @@ -100,11 +100,11 @@ dateutil requests - ipython - python-language-server - pyls-black - pyls-isort - pyls-mypy + # ipython + # python-language-server + # pyls-black + # pyls-isort + # pyls-mypy ])) ]; shellHook = '' From e9c9dbfa41dc517d47e85cdbe531139bf2c1aba5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 18 Jan 2022 18:59:50 +0000 Subject: [PATCH 003/196] WIP: Add sops --- .sops.yaml | 7 +++++++ configuration/default.nix | 10 ++++++++++ flake.lock | 21 +++++++++++++++++++++ flake.nix | 26 ++++++++++++++++++++++++-- 4 files changed, 62 insertions(+), 2 deletions(-) create mode 100644 .sops.yaml diff --git a/.sops.yaml b/.sops.yaml new file mode 100644 index 0000000..fd14552 --- /dev/null +++ b/.sops.yaml @@ -0,0 +1,7 @@ +keys: + - &tlater 535B61015823443941C744DD12264F6BBDFABA89 + +creation_rules: + - key_groups: + - pgp: + - *tlater diff --git a/configuration/default.nix b/configuration/default.nix index 8600070..cae99d1 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -34,6 +34,16 @@ time.timeZone = "Europe/London"; + sops = { + gnupg = { + home = "/var/lib/sops"; + sshKeyPaths = [ ]; + }; + + defaultSopsFile = "/etc/sops/secrets.yaml"; + validateSopsFiles = false; + }; + users.users.tlater = { isNormalUser = true; extraGroups = [ "wheel" ]; diff --git a/flake.lock b/flake.lock index 11de3e3..983023a 100644 --- a/flake.lock +++ b/flake.lock @@ -73,6 +73,7 @@ "flake-utils": "flake-utils", "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs", + "sops-nix": "sops-nix", "tlaternet-templates": "tlaternet-templates", "tlaternet-webserver": "tlaternet-webserver" } @@ -102,6 +103,26 @@ "type": "github" } }, + "sops-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1641374494, + "narHash": "sha256-a56G6Um43+0+n+yNYhRCh/mSvDdRVzQHSKcFaDEB9/8=", + "owner": "Mic92", + "repo": "sops-nix", + "rev": "7edb4b080023ef12f39262a3aa7aab31015a7a0e", + "type": "github" + }, + "original": { + "owner": "Mic92", + "repo": "sops-nix", + "type": "github" + } + }, "tlaternet-templates": { "inputs": { "flake-utils": [ diff --git a/flake.nix b/flake.nix index bc1859a..d2473f7 100644 --- a/flake.nix +++ b/flake.nix @@ -5,6 +5,10 @@ nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11"; nixos-hardware.url = "github:nixos/nixos-hardware/master"; flake-utils.url = "github:numtide/flake-utils"; + sops-nix = { + url = "github:Mic92/sops-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; tlaternet-webserver = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs = { @@ -21,8 +25,8 @@ }; }; - outputs = { self, nixpkgs, nixos-hardware, flake-utils, tlaternet-webserver - , tlaternet-templates, ... }@inputs: + outputs = { self, nixpkgs, nixos-hardware, flake-utils, sops-nix + , tlaternet-webserver, tlaternet-templates, ... }@inputs: let overlays = [ (final: prev: { @@ -35,6 +39,7 @@ local-lib = self.lib.${prev.system}; }; }) + sops-nix.overlay ]; in { @@ -44,6 +49,8 @@ inherit system; modules = [ + sops-nix.nixosModules.sops + ({ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/headless.nix") ]; nixpkgs.overlays = overlays; @@ -61,6 +68,8 @@ inherit system; modules = [ + sops-nix.nixosModule + ({ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/headless.nix") ]; nixpkgs.overlays = overlays; @@ -78,6 +87,13 @@ # can easily test locally with the VM. services.nginx.domain = lib.mkOverride 99 "localhost"; + # Use a default password for the grafana instance for + # easy testing. + services.grafana.security = { + adminPassword = "insecure"; + adminPasswordFile = lib.mkOverride 99 null; + }; + # # Set up VM settings to match real VPS # virtualisation.memorySize = 3941; # virtualisation.cores = 2; @@ -94,6 +110,8 @@ nixfmt git-lfs + sops-init-gpg-key + # For the minecraft mod update script (python3.withPackages (pypkgs: with pypkgs; [ @@ -107,6 +125,10 @@ # pyls-mypy ])) ]; + + # nativeBuildInputs = [ sops-import-keys-hook ]; Breaks the shellHook somehow + sopsPGPKeyDirs = [ "./keys/hosts/" "./keys/users/" ]; + shellHook = '' export QEMU_OPTS="-m 3941 -smp 2 -curses" export QEMU_NET_OPTS="hostfwd=::3022-:2222,hostfwd=::3080-:80,hostfwd=::3443-:443,hostfwd=::3021-:2221,hostfwd=::25565-:25565" From 96a3d5af6def066fe42cf68a27bc345d988d295f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 20 Jan 2022 22:47:36 +0000 Subject: [PATCH 004/196] WIP: Add monitoring services --- configuration/default.nix | 23 +++- configuration/services/monitoring.nix | 186 ++++++++++++++++++++++++++ 2 files changed, 208 insertions(+), 1 deletion(-) create mode 100644 configuration/services/monitoring.nix diff --git a/configuration/default.nix b/configuration/default.nix index cae99d1..a53c286 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,9 +1,12 @@ { config, pkgs, lib, ... }: -{ +let inherit (lib.attrsets) mapAttrs; + +in { imports = [ ./services/gitea.nix ./services/minecraft.nix + ./services/monitoring.nix ./services/nextcloud.nix ./services/webserver.nix ./ids.nix @@ -67,6 +70,13 @@ recommendedProxySettings = true; clientMaxBodySize = "10G"; domain = "tlater.net"; + commonHttpConfig = '' + log_format custom '$remote_addr - $remote_user [$time_local] ' + '"$request" $status $body_bytes_sent ' + '"$http_referrer" "$http_user_agent" ' + '$upstream_response_time $request_length $request_time'; + access_log /var/log/nginx/access.log custom; + ''; virtualHosts = let host = port: extra: @@ -83,9 +93,20 @@ "${domain}" = host 3002 { serverAliases = [ "www.${domain}" ]; }; "gitea.${domain}" = host 3000 { }; "nextcloud.${domain}" = host 3001 { }; + "grafana.${domain}" = host 3003 { }; }; }; + # Allow nginxlog group users to read the nginx log + users.groups.nginxlog.gid = null; + systemd.services.nginx.serviceConfig = { + SupplementaryGroups = [ "nginxlog" ]; + LogsDirectoryMode = lib.mkOverride 99 "0751"; + ExecStartPost = [ + "+${pkgs.coreutils}/bin/chown nginx:nginxlog \${LOGS_DIRECTORY}/access.log \${LOGS_DIRECTORY}/error.log" + ]; + }; + security.acme = { email = "tm@tlater.net"; acceptTerms = true; diff --git a/configuration/services/monitoring.nix b/configuration/services/monitoring.nix new file mode 100644 index 0000000..c3cb286 --- /dev/null +++ b/configuration/services/monitoring.nix @@ -0,0 +1,186 @@ +{ config, lib, pkgs, ... }: + +let + inherit (builtins) attrNames concatStringsSep; + inherit (lib) stringAfter; + inherit (lib.attrsets) filterAttrs mapAttrsToList; + inherit (pkgs) openssl writeText; + + domain = "grafana.${config.services.nginx.domain}"; + keydir = "/run/tempsecrets.d"; + certdir = "/run/tempcerts.d"; + nonTlsExporters = + filterAttrs (_: exporter: exporter.enable && exporter.extraFlags == [ ]) + config.services.prometheus.exporters; + tlsExporters = + filterAttrs (_: exporter: exporter.enable && exporter.extraFlags != [ ]) + config.services.prometheus.exporters; +in { + services.grafana = { + inherit domain; + + enable = true; + port = 3003; + + security = { + adminUser = "tlater"; + adminPasswordFile = "/run/secrets/grafana-admin-pass"; + }; + + extraOptions = { + # All services grafana is allowed to source from + SECURITY_DATA_SOURCE_PROXY_WHITELIST = "localhost:4000"; + + # We want this to always go through the nixos config + SECURITY_DISABLE_INITIAL_ADMIN_CREATION = "true"; + + # Our nginx host only forwards this through https, so we can use + # cookie_secure + SECURITY_COOKIE_SECURE = "true"; + + # These security settings aren't set by default yet, but + # probably will be in the future + SECURITY_COOKIE_SAMESITE = "true"; + SECURITY_X_XSS_PROTECTION = "true"; + }; + + provision = { + enable = true; + datasources = [{ + name = "Prometheus"; + type = "prometheus"; + url = "https://localhost:4000"; + jsonData = { + tlsAuth = true; + tlsAuthWithCACert = true; + }; + # Currently, Grafana doesn't support specifying key/cert from + # a file, which makes this very tricky to automate. + # + # We'd need to set jsonSecureData, which would be + # world-readable, and completely break authentication. + # + # See this discussion: + # https://github.com/grafana/grafana/discussions/44296 + # + # For now, hand-add key/cert every time the server restarts, + # if this becomes more permanent, maybe write a script that + # updates the key via API? + editable = true; + }]; + }; + }; + + services.prometheus = let + # See https://github.com/prometheus/exporter-toolkit/blob/master/docs/web-configuration.md#web-configuration + makeTlsConfig = client: server: + writeText "web.yml" '' + tls_server_config: + key_file: ${keydir}/${server}.pem + cert_file: ${certdir}/${server}.pem + + client_auth_type: RequireAndVerifyClientCert + client_ca_file: ${certdir}/${client}.pem + ''; + in { + enable = true; + port = 4000; + extraFlags = + [ "--web.config.file=${makeTlsConfig "grafana" "prometheus"}" ]; + + # From the documentation: + # + # > When credentials are stored in external files (password_file, + # > bearer_token_file, etc), they will not be visible to promtool + # > and it will report errors, despite a correct configuration. + checkConfig = false; + + exporters = { + node = { + enable = true; + enabledCollectors = [ "systemd" ]; + port = 4001; + extraFlags = + [ "--web.config=${makeTlsConfig "prometheus" "node-exporter"}" ]; + }; + + nginxlog = { + enable = true; + group = "nginxlog"; + port = 4002; + # Note: No way to enable TLS/auth here + settings.namespaces = [{ + name = "nginx"; + format = concatStringsSep " " [ + "$remote_addr - $remote_user [$time_local]" + ''"$request" $status $body_bytes_sent'' + ''"$http_referrer" "$http_user_agent"'' + "$upstream_response_time $request_length $request_time" + ]; + source.files = [ "/var/log/nginx/access.log" ]; + }]; + }; + }; + + scrapeConfigs = (mapAttrsToList (name: exporter: { + job_name = name; + scheme = "https"; + tls_config = { + ca_file = "${certdir}/${name}-exporter.pem"; + cert_file = "${certdir}/prometheus.pem"; + key_file = "${keydir}/prometheus.pem"; + server_name = "localhost"; + }; + static_configs = + [{ targets = [ "127.0.0.1:${toString exporter.port}" ]; }]; + }) tlsExporters) ++ mapAttrsToList (name: exporter: { + job_name = name; + scheme = "http"; + static_configs = + [{ targets = [ "127.0.0.1:${toString exporter.port}" ]; }]; + }) nonTlsExporters; + }; + + system.activationScripts = { + # This will seem a bit strange, and it probably *is*; The + # keys/certs here are only used for the various prometheus/grafana + # services to authenticate against each other. + # + # Since they aren't used to actually encrypt anything but + # communication that happens once, it's not necessary to keep the + # keys around. They're only used internally, and frequently + # switching them doesn't cause any issues. In fact, a single-use + # key protocol would probably be more secure. + # + # Sadly, neither of these services support anything more usable + # than https, so we need to generate keys. We opt to regenerate + # them at each system activation. + # + # CN=localhost is not really a risk here - this only matters if an + # attacker can spoof a service on the correct port somehow, in + # which case they either have root or full access to that server's + # user anyway. Since we use TLS auth, no secrets would be leaked, + # so in the worst case this exploit would enable an attacker to + # DoS that specific data source... Which they could do by taking + # over the service already anyway. + setupMonitoringAuth = let + opensslBin = "${openssl}/bin/openssl"; + services = [ "grafana" "prometheus" ] + ++ (map (name: "${name}-exporter") (attrNames tlsExporters)); + in stringAfter ([ "specialfs" "users" "groups" ]) ('' + [ -e /run/current-system ] || echo setting up monitoring secrets... + specialMount ramfs '${keydir}' nodev,nosuid,mode=0751 ramfs + specialMount ramfs '${certdir}' nodev,nosuid,mode=0751 ramfs + '' + concatStringsSep "\n" (map (service: '' + ${opensslBin} req -batch -x509 -newkey ed25519 -nodes \ + -subj '/CN=localhost' \ + -addext "subjectAltName = DNS:localhost" \ + -keyout '${keydir}/${service}.pem' \ + -out '${certdir}/${service}.pem' + + chown ${service}:${service} '${keydir}/${service}.pem' + chmod u=r '${keydir}/${service}.pem' + chmod =r '${certdir}/${service}.pem' + '') services)); + }; +} From 4ef17ed1a21b4ff07db0d647855b3cbad45ae32a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 10 Feb 2022 22:17:37 +0000 Subject: [PATCH 005/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file changes: • Updated input 'flake-utils': 'github:numtide/flake-utils/74f7e4319258e287b0f9cb95426c9853b282730b' (2021-11-28) → 'github:numtide/flake-utils/3cecb5b042f7f209c56ffd8371b2711a290ec797' (2022-02-07) • Updated input 'nixos-hardware': 'github:nixos/nixos-hardware/2a7063461c3751d83869a2a0a8ebc59e34bec5b2' (2021-12-11) → 'github:nixos/nixos-hardware/9886a06e4745edb31587d0e9481ad82d35f0d593' (2022-02-04) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/573095944e7c1d58d30fc679c81af63668b54056' (2021-12-10) → 'github:nixos/nixpkgs/521e4d7d13b09bc0a21976b9d19abd197d4e3b1e' (2022-02-07) --- flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 11de3e3..91b61ea 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "flake-utils": { "locked": { - "lastModified": 1638122382, - "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=", + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", "owner": "numtide", "repo": "flake-utils", - "rev": "74f7e4319258e287b0f9cb95426c9853b282730b", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", "type": "github" }, "original": { @@ -38,11 +38,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1639240632, - "narHash": "sha256-BAXhgnPOW1COIfZ9EOOFTdolalYS73MFHSRajgrSdZw=", + "lastModified": 1643980037, + "narHash": "sha256-RdVHt2mD408WXMjQIOLvUzy8cSUHu8NAbilDmPVxf7E=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "2a7063461c3751d83869a2a0a8ebc59e34bec5b2", + "rev": "9886a06e4745edb31587d0e9481ad82d35f0d593", "type": "github" }, "original": { @@ -54,11 +54,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1639161226, - "narHash": "sha256-75Y08ynJDTq6HHGIF+8IADBJSVip0UyWQH7jqSFnRR8=", + "lastModified": 1644193793, + "narHash": "sha256-ggCI5LCXwkUJQwjpkr9qDFbQMiK3JvAfeNR4Uy0ny5Q=", "owner": "nixos", "repo": "nixpkgs", - "rev": "573095944e7c1d58d30fc679c81af63668b54056", + "rev": "521e4d7d13b09bc0a21976b9d19abd197d4e3b1e", "type": "github" }, "original": { From 1721785d1ce63b461ac862706cae4bed19df096e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 26 Dec 2021 19:01:56 +0000 Subject: [PATCH 006/196] Update forge server sha --- pkgs/minecraft/forge-server.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/minecraft/forge-server.nix b/pkgs/minecraft/forge-server.nix index 2dea39a..e26a7a5 100644 --- a/pkgs/minecraft/forge-server.nix +++ b/pkgs/minecraft/forge-server.nix @@ -9,7 +9,7 @@ let url = "${mirror}/${version}/forge-${version}-installer.jar"; curlOpts = "--globoff"; # Forge doesn't seem to like newer shas - sha1 = "e97821e5431bdcaa46e12048769922e2cdb5e2e1"; + sha1 = "sha1-oHNpyrgHluRrAXWZJg9j+OInAwA="; }; unpackCmd = "mkdir -p src; cp $curSrc src/forge-${version}-installer.jar"; From 34235a20414e9f61fbb8c831ffe3d8bf6103c307 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 21 Apr 2022 18:00:09 +0100 Subject: [PATCH 007/196] flake: Fix python language server version --- flake.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 8a0025f..82ce5b7 100644 --- a/flake.nix +++ b/flake.nix @@ -101,10 +101,19 @@ requests ipython - python-language-server - pyls-black - pyls-isort - pyls-mypy + + python3.withPackages (ppkgs: + with pkgs; [ + python-lsp-server + python-lsp-black + pyls-isort + pyls-mypy + rope + pyflakes + mccabe + pycodestyle + pydocstyle + ]) ])) ]; shellHook = '' From 73988df2a6ad360f57d2bd37003966a8f58475cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 21 Apr 2022 18:21:53 +0100 Subject: [PATCH 008/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file changes: • Updated input 'flake-utils': 'github:numtide/flake-utils/3cecb5b042f7f209c56ffd8371b2711a290ec797' (2022-02-07) → 'github:numtide/flake-utils/a4b154ebbdc88c8498a5c7b01589addc9e9cb678' (2022-04-11) • Updated input 'nixos-hardware': 'github:nixos/nixos-hardware/9886a06e4745edb31587d0e9481ad82d35f0d593' (2022-02-04) → 'github:nixos/nixos-hardware/6b4ebea9093c997c5f275c820e679108de4871ab' (2022-04-21) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/521e4d7d13b09bc0a21976b9d19abd197d4e3b1e' (2022-02-07) → 'github:nixos/nixpkgs/9887f024766aa27704d1f89f623efd1d063da92a' (2022-04-21) --- flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 91b61ea..7a563d8 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "flake-utils": { "locked": { - "lastModified": 1644229661, - "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "lastModified": 1649676176, + "narHash": "sha256-OWKJratjt2RW151VUlJPRALb7OU2S5s+f0vLj4o1bHM=", "owner": "numtide", "repo": "flake-utils", - "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "rev": "a4b154ebbdc88c8498a5c7b01589addc9e9cb678", "type": "github" }, "original": { @@ -38,11 +38,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1643980037, - "narHash": "sha256-RdVHt2mD408WXMjQIOLvUzy8cSUHu8NAbilDmPVxf7E=", + "lastModified": 1650522846, + "narHash": "sha256-SxWHXRI3qJwswyXAtzsi6PKVY3KLNNnb072KaJthII8=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "9886a06e4745edb31587d0e9481ad82d35f0d593", + "rev": "6b4ebea9093c997c5f275c820e679108de4871ab", "type": "github" }, "original": { @@ -54,11 +54,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1644193793, - "narHash": "sha256-ggCI5LCXwkUJQwjpkr9qDFbQMiK3JvAfeNR4Uy0ny5Q=", + "lastModified": 1650501692, + "narHash": "sha256-ApKf0/dc0SyB7zZ6yiiOQgcXAhCXxbSDyihHfRDIzx0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "521e4d7d13b09bc0a21976b9d19abd197d4e3b1e", + "rev": "9887f024766aa27704d1f89f623efd1d063da92a", "type": "github" }, "original": { From e7102adec11bd1f5dc6716651767ec6acc7c1428 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 23 Apr 2022 04:06:50 +0100 Subject: [PATCH 009/196] Add sops-nix --- .sops.yaml | 9 +++++ configuration/default.nix | 5 +++ flake.lock | 21 ++++++++++++ flake.nix | 26 ++++++++++---- keys/external.yaml | 52 ++++++++++++++++++++++++++++ keys/hosts/tlaternet.asc | 28 +++++++++++++++ keys/users/tlater.asc | 72 +++++++++++++++++++++++++++++++++++++++ 7 files changed, 207 insertions(+), 6 deletions(-) create mode 100644 .sops.yaml create mode 100644 keys/external.yaml create mode 100644 keys/hosts/tlaternet.asc create mode 100644 keys/users/tlater.asc diff --git a/.sops.yaml b/.sops.yaml new file mode 100644 index 0000000..ad56f8b --- /dev/null +++ b/.sops.yaml @@ -0,0 +1,9 @@ +keys: + - &tlater 535B61015823443941C744DD12264F6BBDFABA89 + - &server_tlaternet 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b + +creation_rules: + - key_groups: + - pgp: + - *tlater + - *server_tlaternet diff --git a/configuration/default.nix b/configuration/default.nix index 8600070..d6cc5cf 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -20,6 +20,11 @@ trustedUsers = [ "@wheel" ]; }; + sops = { + defaultSopsFile = ../keys/external.yaml; + secrets.steam = { }; + }; + boot.kernelParams = [ "highres=off" "nohz=off" ]; networking = { diff --git a/flake.lock b/flake.lock index 7a563d8..5c75d61 100644 --- a/flake.lock +++ b/flake.lock @@ -73,6 +73,7 @@ "flake-utils": "flake-utils", "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs", + "sops-nix": "sops-nix", "tlaternet-templates": "tlaternet-templates", "tlaternet-webserver": "tlaternet-webserver" } @@ -102,6 +103,26 @@ "type": "github" } }, + "sops-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1649756291, + "narHash": "sha256-KTll8bCINAzIUGaaMrbn9wb5nfhkXRLgmFrWGR/Dku0=", + "owner": "Mic92", + "repo": "sops-nix", + "rev": "c2614c4fe61943b3d280ac1892fcebe6e8eaf8c8", + "type": "github" + }, + "original": { + "owner": "Mic92", + "repo": "sops-nix", + "type": "github" + } + }, "tlaternet-templates": { "inputs": { "flake-utils": [ diff --git a/flake.nix b/flake.nix index 82ce5b7..d8928df 100644 --- a/flake.nix +++ b/flake.nix @@ -5,6 +5,11 @@ nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11"; nixos-hardware.url = "github:nixos/nixos-hardware/master"; flake-utils.url = "github:numtide/flake-utils"; + sops-nix = { + url = "github:Mic92/sops-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + tlaternet-webserver = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs = { @@ -21,8 +26,8 @@ }; }; - outputs = { self, nixpkgs, nixos-hardware, flake-utils, tlaternet-webserver - , tlaternet-templates, ... }@inputs: + outputs = { self, nixpkgs, nixos-hardware, flake-utils, sops-nix + , tlaternet-webserver, tlaternet-templates, ... }@inputs: let overlays = [ (final: prev: { @@ -53,6 +58,7 @@ (import ./configuration) (import ./configuration/linode.nix) (import ./configuration/hardware-configuration.nix) + sops-nix.nixosModules.sops ]; }; @@ -68,6 +74,7 @@ (import ./modules) (import ./configuration) + sops-nix.nixosModules.sops ({ lib, ... }: { users.users.tlater.password = "insecure"; @@ -86,13 +93,20 @@ }; }; } // flake-utils.lib.eachDefaultSystem (system: - let pkgs = import nixpkgs { inherit system overlays; }; + let + pkgs = import nixpkgs { inherit system overlays; }; + sops-pkgs = sops-nix.packages.${system}; in { - devShell = with pkgs; - mkShell { - buildInputs = [ + devShell = + pkgs.mkShell { + sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; + nativeBuildInputs = with sops-pkgs; [ + sops-import-keys-hook + ]; + buildInputs = with pkgs; with sops-pkgs; [ nixfmt git-lfs + sops-init-gpg-key # For the minecraft mod update script (python3.withPackages (pypkgs: diff --git a/keys/external.yaml b/keys/external.yaml new file mode 100644 index 0000000..c51d957 --- /dev/null +++ b/keys/external.yaml @@ -0,0 +1,52 @@ +steam: ENC[AES256_GCM,data:Jhk91uP3Ixo7H4I9kXEWeA==,iv:s8BcwGNF1vG8KI41FmQXOBbqZl8SnMZ9+YP6GKwHdtY=,tag:dW462jNJCtG4HWrkeQTUzw==,type:str] +sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] + age: [] + lastmodified: "2022-04-23T07:07:21Z" + mac: ENC[AES256_GCM,data:E9z+h2kejAobo3wIRBQFGyMfMHoeVREE+pEF9XoVZF8cQM4xC4tHub+eENsBIDeWoIcPtugLE9Xwzn9odyg92Vri/SzcaxrEXzsAcvFj6Ox2cN27h17OrkQBMKeA/tnMVg+uJxQesWZbrfcMsmd99X1W1RH5SMUwNrqjCsNxZ7s=,iv:pfi/EXgacNapdVlKP0UEMKdxi7s4YicfFcSopvwOrNA=,tag:RmMPwBYFZx2M5FJCVyhcLg==,type:str] + pgp: + - created_at: "2022-04-23T07:07:08Z" + enc: | + -----BEGIN PGP MESSAGE----- + + hQIMAzWu0p84AOApAQ/8DeQLvWBjQn3mNfmiPyH0NNj0d70FKbm546jFjBuVHW9h + P3KWVJF8pWdg17W5Hlu8xDPCCYmX5Rew3JznbEpyxIMUAUPS+HpwEWXvpKUMNhIj + VDcQ5cVkfiOc81gRKXLiWNmBP2lRKrjjmFBEbwZgHxW2Y9yzmzqsR97VWrBhkz9r + Rsif8Mi29LAbpG0lgVZSji7pzs/4EbclSQsfv6JSJMoA0bD3OdtyAmJh4dfUV31i + kzkOJ8WIAwYpvKXI4Jf3DuUS7njzdw4SRCgf5nuC8Ml1Kb4IvCwTsPEOaYRhCZIX + jUTmQ4DwiIZ+618Wzi6SHgdH1QZaS5e71n0rxPxsYY6UbCyDhrGNcXgn/p0DHP04 + p+Hscl75IqJiMzlAnQobx111vw1f3oGgTuWYS78Tccpy/QgMtVf99CeVwp4fVkeU + iPGr5oy5KO3WF3EWvuK/A/eoiK208YRMcL+0hrFDuhTB7qnyCRBjTv+4SJdY3FiC + KA/syZ/+DioUVyEXNn8cttk0U9Wf5zub7s/9Ei7MQVVUgCvyZZDHFE+50d5UeVRm + WW5T38D3G+v6py8gkC4/noKndr6SzRgPBAVW/Ba9CZZtEulhA39U9M4Q9cCSyLCM + nAiu0ikOiDif4w+1fxeEA+BXp7uBbW9vz09jetfDkp+i4hvt41a9dwJpTmxWm57S + XgFQDuO+HdFs44Yw1gyJQKLK3YejSyoKIo5pN36yMGuYPw9B75Cx+MWJJihL5IHl + gTqNPiD3cIyFw9U+FYfvqdQz9Vo/dD8gF0G5Y5MVH0E9xNsSFuSWoA9H2Zl+Ops= + =W5PZ + -----END PGP MESSAGE----- + fp: 535B61015823443941C744DD12264F6BBDFABA89 + - created_at: "2022-04-23T07:07:08Z" + enc: | + -----BEGIN PGP MESSAGE----- + + hQIMA9ahl2ynTH87ARAAwKoe5UHRlt86d47oCSvXVV0JvRdw6K5VKDIyZr5FEAZD + VHDvZb7a0qlKuJsKiq5+3hZPkw9W9DLtpacxQdEoTUDQVAfVAi1pIKaJIYP7pSC3 + LbcqNXucqJoKLKXHE0zCPAJdbTYOo804Z6iLRJRYwuLHfE17lVPMoJD9OjwZn1LS + ksJnki68YqQcFocRuUF/pq+bcd0ceV7YQiBIdO/89YyVPgviORXzlRZ5+hTpFjqd + rYFzgNBkHVRHUso8S9YNiFsU8dKVXBDS6LiykcKe9C6kEYDCe24VVHyrlj2s3isH + 68PefnfQY5ZIBSDm2uwGmym1pSwhR015Ely/gqRx+T4qfCcAwva9ZPusXHzHu2+z + vwO83yeBXFbs4YFdHhh9GNbOfbBKCdPU0FAqQCuU0P7iVrCfjtTXdg622hn7x2YW + YwH5nlcm14/U39jOzWNketmyAiaOJ32ko3Ec63ELkGCb8+LR0eCPDNUNCQcnKGaU + yrTYnqUG6ODxdkhvq1JCsPKlZ/0pqiSQKBE1dGZBrcshZZ6SvdhO6hSimg3m+Mqn + wh5pcx/P5k3VXPovTRkRAU/U6RdYKs+qH1tXCBSMwjz4EU9VCYZbqLb1Bp/NfsPa + 0CL50HA617ID0ofxOL8eT49xQJZZFFAArOMZmRGgsKrPAEYijnQ/593nci4DdozS + UAFrki95hH3EFygU3KkVdpULaOwc/0SWIPLZgmpFq2H5bKOqi9TL0IV3G00qEf5G + bOFb1q7pCAWMe5b6JH7MQRmSWwaoE4qhtmOkjHMOuqhA + =hTbV + -----END PGP MESSAGE----- + fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b + unencrypted_suffix: _unencrypted + version: 3.7.2 diff --git a/keys/hosts/tlaternet.asc b/keys/hosts/tlaternet.asc new file mode 100644 index 0000000..5b03dea --- /dev/null +++ b/keys/hosts/tlaternet.asc @@ -0,0 +1,28 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +xsFNBAAAAAABEADkGxU+/uxtkVsX9+Wycp6ikG9177NvCsXqROeuIIJ5nDWD+jrt +jlO1ngL9vvOfE4mGNY839r86cbSocK2WCirVnPdh8K5o9X+YptA7yHoe8RHn0fZC +wM1eGSDTMmtGvP00IXoMpktzU+GcrO/1XMFIshj/2KboUGYqRpqhfiNQXPcYlz4J +QRXsPzPnAphSn9ausYb6f8qYn+ivSo9jKDHZL4FJJ2OkYsoo3sX8lMWCE3ON48QF +9K4UU0Ru86/1sBW55AT5IzVTF7TKWAjnHi8v9Lzd7lVJy8ZLe1bioP75wCl3aE1N +owE/H4hPKfYTjKHdNkU4c4HjsATU1Ak9hJXj7zMeI/J7JF+wD7ztYo4RZWZTPPNP +k1ELmCXMNQp3Dujy54kXLi+d5ii4FK/q/G1n1ZdMjjEhem7LEpZXq8tNsHnzfnlK +QDazAQvGb3Gnv4OuMe4CvvMNBNRiooikCejsBYswW9QkOguyivQHDx2UMqUVU8L0 +HCBzVi9JQKy2Dn1gKP9SDvotYZmS/VVe++wx+EkIIty3ecl1HpsxtqQgNaUewJiM +NnBBgnwzKigqCqCUDjg+8KKh6AENtAeGa+LFZWw2pZ6ZiwcqjDIu0zoQVesCuF/Z +zktNVPjIMTH2Cg4PTKccHIROHRjFJjn1fIAmQPoh3QjDHrUMSbtaTbfWIQARAQAB +zSlyb290IChJbXBvcnRlZCBmcm9tIFNTSCkgPHJvb3RAbG9jYWxob3N0PsLBYgQT +AQgAFgUCAAAAAAkQ1qGXbKdMfzsCGw8CGQEAABDNEAAjEKhsm0ukNqHQZzmIlYRL +6ybTmeGOYczKlTM0h5EDTMSvPn89WuWPZCL/oyIOE+TKqkjEsBc4ej2YmxdHSS/f +4WLOLqWre6Krs1qZ/eTBLU0LOwEtYYt8x44WN5K1GyyVyZAkGdIYO5NaQPP86m/H +QzyZ+YRQvcqlUgNUmRIsq2F+X7kRKl9X+6zZDsM72aAEvOlWss/sn3Dca2omxaAB +/b32P0r1ppCPXLk0QRbZM+D38CUaZIKWhKKvaifKaRhY1eTPv1OG8uFGrkYcxB9m +GkOZh4Kbz4+Es5uM5uYSxNWWmqU5FX/D8qEzsn7OB+WH1wFLwp75oR8shy8FQ3B0 ++JVBwJEmg+kBoYZHPjVHxp/z2h4drTQ/h2uulplWUuCpH8dLjCy3dHukEH1tw803 +34fCUxN5RTyOG3uGC/8cXZ7Xj5RnX0dso6g4/0kmy42S2EAoxB+L1CmuI02SBxCK +9go7oyP9sUBQ59BA8W5Ab8a5+CpB/kWthGErtMcq56bNqA7S9+UgyqOJze4mqBVs +qBFjYK1/aYbKIarXuw6cOuCZfXQIRex7IDVdW1ikKs4h3g2h0wBgnY+xOaFNUQxa +I7gG4e+sBnlvlCyoyzstE/JjAQr9QC9qj30UB3iankyDZD/F1MfEx4HRm7f+V/4P +PoGnDfqmEEn9P7j7sOJ0iw== +=z4j4 +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/keys/users/tlater.asc b/keys/users/tlater.asc new file mode 100644 index 0000000..d9c50dd --- /dev/null +++ b/keys/users/tlater.asc @@ -0,0 +1,72 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +PhCB2Dz76iQ5nDY4MQ== +=R7Pm +-----END PGP PUBLIC KEY BLOCK----- From cd92ec64c218bf4d3f0d077bd0078d6cb251968b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 23 Apr 2022 04:08:45 +0100 Subject: [PATCH 010/196] Add starbound server --- configuration/default.nix | 6 +- configuration/services/configs/starbound.json | 50 ++++++++ configuration/services/minecraft.nix | 3 - configuration/services/starbound.nix | 110 ++++++++++++++++++ flake.nix | 21 +++- pkgs/default.nix | 3 + pkgs/starbound/default.nix | 34 ++++++ pkgs/starbound/launch-starbound.sh | 32 +++++ 8 files changed, 253 insertions(+), 6 deletions(-) create mode 100644 configuration/services/configs/starbound.json create mode 100644 configuration/services/starbound.nix create mode 100644 pkgs/starbound/default.nix create mode 100644 pkgs/starbound/launch-starbound.sh diff --git a/configuration/default.nix b/configuration/default.nix index d6cc5cf..76a1bf7 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -6,6 +6,7 @@ ./services/minecraft.nix ./services/nextcloud.nix ./services/webserver.nix + ./services/starbound.nix ./ids.nix ]; @@ -20,6 +21,9 @@ trustedUsers = [ "@wheel" ]; }; + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) ["forge-server" "steam-runtime" "steamcmd"]; + sops = { defaultSopsFile = ../keys/external.yaml; secrets.steam = { }; @@ -34,7 +38,7 @@ useDHCP = false; interfaces.eth0.useDHCP = true; - firewall.allowedTCPPorts = [ 80 443 2222 2221 25565 ]; + firewall.allowedTCPPorts = [ 80 443 2222 2221 25565 21025 ]; }; time.timeZone = "Europe/London"; diff --git a/configuration/services/configs/starbound.json b/configuration/services/configs/starbound.json new file mode 100644 index 0000000..d995fdf --- /dev/null +++ b/configuration/services/configs/starbound.json @@ -0,0 +1,50 @@ +{ + "allowAdminCommands" : true, + "allowAdminCommandsFromAnyone" : false, + "allowAnonymousConnections" : true, + "allowAssetsMismatch" : true, + "anonymousConnectionsAreAdmin" : false, + "bannedIPs" : [], + "bannedUuids" : [], + "checkAssetsDigest" : false, + "clearPlayerFiles" : false, + "clearUniverseFiles" : false, + "clientIPJoinable" : false, + "clientP2PJoinable" : true, + "configurationVersion" : { + "basic" : 2, + "server" : 4 + }, + "crafting" : { + "filterHaveMaterials" : false + }, + "gameServerBind" : "::", + "gameServerPort" : 21025, + "interactiveHighlight" : true, + "inventory" : { + "pickupToActionBar" : true + }, + "maxPlayers" : 8, + "maxTeamSize" : 4, + "monochromeLighting" : false, + "playerBackupFileCount" : 3, + "queryServerBind" : "::", + "queryServerPort" : 21025, + "rconServerBind" : "::", + "rconServerPassword" : "", + "rconServerPort" : 21026, + "rconServerTimeout" : 1000, + "runQueryServer" : false, + "runRconServer" : false, + "safeScripts" : true, + "scriptInstructionLimit" : 10000000, + "scriptInstructionMeasureInterval" : 10000, + "scriptProfilingEnabled" : false, + "scriptRecursionLimit" : 100, + "serverFidelity" : "automatic", + "serverName" : "tlater.net", + "serverOverrideAssetsDigest" : null, + "serverUsers" : { + }, + "tutorialMessages" : true +} diff --git a/configuration/services/minecraft.nix b/configuration/services/minecraft.nix index 23705ac..80b4ff5 100644 --- a/configuration/services/minecraft.nix +++ b/configuration/services/minecraft.nix @@ -51,9 +51,6 @@ let eula = pkgs.writeText "eula.txt" "eula=true"; in { - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ "forge-server" ]; - users = { extraUsers.minecraft = { uid = config.ids.uids.minecraft; diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix new file mode 100644 index 0000000..e23028f --- /dev/null +++ b/configuration/services/starbound.nix @@ -0,0 +1,110 @@ +{ + pkgs, + lib, + ... +}: let + inherit (lib) concatStringsSep; +in { + systemd.services.starbound = { + description = "Starbound"; + after = ["network.target"]; + + serviceConfig = { + ExecStart = "${pkgs.local.starbound}/bin/launch-starbound ${./configs/starbound.json}"; + + Type = "simple"; + + # Credential loading for steam auth (if necessary; prefer + # anonymous login wherever possible). + LoadCredential = "steam:/run/secrets/steam"; + + # Security settings + DynamicUser = true; + + # This is where the StateDirectory ends up + WorkingDirectory = "/var/lib/starbound"; + # Creates /var/lib/starbound (or rather, a symlink there to + # /var/lib/private/starbound), and sets it up to be writeable to + # by the dynamic user. + StateDirectory = "starbound"; + + # Note some settings below are basically tautologous with + # `NoNewPrivileges`, but they all work slightly differently so + # add additional layers in case of bugs. + + ## THESE SETTINGS ARE A GOOD IDEA BUT THE STEAM CLIENT IS + ## REALLY, REALLY BAD, AND FOR SOME REASON I NEED TO USE IT TO + ## DOWNLOAD GAME SERVERS AS WELL: + ## + # To guarantee the above (only permits 64-bit syscalls, 32-bit + # syscalls can circumvent the above restrictions). + # + # Obviously, if running a 32 bit game server, change this. + # SystemCallArchitectures = "native"; + # Game servers shouldn't need to create new namespaces ever. + # + # TODO: Since steam uses namespaces for things *entirely + # unrelated* to installing game servers, we need to allow + # namespace access. Ideally I'd instead do this in an + # ExecStartPre, but alas, this isn't possible because of + # https://github.com/systemd/systemd/issues/19604. + # + # RestrictNamespaces = true; + + # Don't need to let the game server see other user accounts + PrivateUsers = true; + # *Probably* not harmful for game servers, which probably don't update dynamically + ProtectHostname = true; + # Yeah, if a game server tries to edit the hardware clock something's fishy + ProtectClock = true; + # Don't let game servers modify kernel settings, duh + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + # Game servers shouldn't use cgroups themselves either + ProtectControlGroups = true; + # Most game servers will never need other socket types + RestrictAddressFamilies = ["AF_UNIX AF_INET AF_INET6"]; + # Also a no-brainer, no game server should ever need this + LockPersonality = true; + # Some game servers will probably try to set this, but they + # don't need it. It's only required for audio processing and + # such, which the server end doesn't need to do. + RestrictRealtime = true; + # Don't allow a variety of syscalls that gameservers have no + # business using anyway + SystemCallFilter = + "~" + + (concatStringsSep " " [ + "@clock" + "@cpu-emulation" + "@debug" + "@keyring" + "@memlock" + "@module" + # "@mount" TODO: Consider adding when steamcmd is run in ExecStartPre + "@obsolete" + "@raw-io" + "@reboot" + "@resources" + "@setuid" + "@swap" + ]); + # Normally only "read-only", but steamcmd will puke if there is + # no home directory to write to (though the nix package will + # implicitly symlink to the path that we set in its override, so + # no actual files are created, besides a symlink). + ProtectHome = "tmpfs"; + + # Implied by DynamicUser anyway, but it doesn't hurt to add + # these explicitly, at least for reference. + RemoveIPC = true; + PrivateTmp = true; + PrivateDevices = true; + NoNewPrivileges = true; + RestrictSUIDSGID = true; + ProtectSystem = "strict"; + # ProtectHome = "read-only"; # See further up + }; + }; +} diff --git a/flake.nix b/flake.nix index d8928df..772580b 100644 --- a/flake.nix +++ b/flake.nix @@ -130,9 +130,26 @@ ]) ])) ]; - shellHook = '' + shellHook = let + inherit (pkgs.lib.attrsets) mapAttrsToList; + inherit (pkgs.lib.strings) concatStringsSep; + ports = { + "3022" = "2222"; + "3080" = "80"; + "3443" = "443"; + "3021" = "2221"; + "25565" = "25565"; + "21025" = "21025"; # Starbound + }; + QEMU_NET_OPTS = + concatStringsSep "," + (mapAttrsToList + (host: vm: "hostfwd=::${host}-:${vm}") + ports); + in + '' export QEMU_OPTS="-m 3941 -smp 2 -curses" - export QEMU_NET_OPTS="hostfwd=::3022-:2222,hostfwd=::3080-:80,hostfwd=::3443-:443,hostfwd=::3021-:2221,hostfwd=::25565-:25565" + export QEMU_NET_OPTS="${QEMU_NET_OPTS}" # Work around sudo requiring a full terminal export NIX_SSHOPTS="-t" diff --git a/pkgs/default.nix b/pkgs/default.nix index 88a0112..dd334bc 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -13,4 +13,7 @@ in { # Minecraft modpacks voor-kia = callPackage ./minecraft/voor-kia.nix { }; voor-kia-client = callPackage ./minecraft/voor-kia-client.nix { }; + + # Starbound + starbound = callPackage ./starbound { }; } diff --git a/pkgs/starbound/default.nix b/pkgs/starbound/default.nix new file mode 100644 index 0000000..304f0f3 --- /dev/null +++ b/pkgs/starbound/default.nix @@ -0,0 +1,34 @@ +{ + stdenv, + lib, + makeWrapper, + patchelf, + steamPackages, + replace-secret, +}: let + # Use the directory in which starbound is installed so steamcmd + # doesn't have to be reinstalled constantly (we're using DynamicUser + # with StateDirectory to persist this). + steamcmd = steamPackages.steamcmd.override { + steamRoot = "/var/lib/starbound/.steamcmd"; + }; + wrapperPath = lib.makeBinPath [patchelf steamcmd replace-secret]; +in + stdenv.mkDerivation { + name = "starbound-update-script"; + nativeBuildInputs = [makeWrapper]; + dontUnpack = true; + patchPhase = '' + interpreter="$(cat $NIX_CC/nix-support/dynamic-linker)" + substitute ${./launch-starbound.sh} launch-starbound --subst-var interpreter + ''; + installPhase = '' + mkdir -p $out/bin + cp launch-starbound $out/bin/launch-starbound + chmod +x $out/bin/launch-starbound + ''; + postFixup = '' + wrapProgram $out/bin/launch-starbound \ + --prefix PATH : "${wrapperPath}" + ''; + } diff --git a/pkgs/starbound/launch-starbound.sh b/pkgs/starbound/launch-starbound.sh new file mode 100644 index 0000000..24d4db1 --- /dev/null +++ b/pkgs/starbound/launch-starbound.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +set -eu + +if ! [[ -v STATE_DIRECTORY && -v CREDENTIALS_DIRECTORY ]]; then + echo "Error: Runtime dir or credential not set" + exit 1 +fi + +# Update the server to the latest version +echo "Updating/installing starbound" + +mkdir -p "${STATE_DIRECTORY}/.steamcmd" +steamcmd < Date: Sat, 23 Apr 2022 09:31:21 +0100 Subject: [PATCH 011/196] starbound: Fix permissions for a syscall steamcmd needs --- configuration/services/starbound.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix index e23028f..e8a0772 100644 --- a/configuration/services/starbound.nix +++ b/configuration/services/starbound.nix @@ -86,7 +86,7 @@ in { "@obsolete" "@raw-io" "@reboot" - "@resources" + # "@resources" TODO: Ditto "@setuid" "@swap" ]); From 58e52dd119087ebad1964ff96b118a4fff07202e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 10 Oct 2022 13:01:26 +0100 Subject: [PATCH 012/196] ssh: Allow proxy connections with gatewayPorts --- configuration/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/configuration/default.nix b/configuration/default.nix index 76a1bf7..6a2a79d 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -56,6 +56,7 @@ permitRootLogin = "no"; ports = [ 2222 ]; startWhenNeeded = true; + gatewayPorts = "yes"; }; services.nginx = { From 046a88905ddfa7f9edc3291c310dbb985dee34f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 10 Oct 2022 13:03:08 +0100 Subject: [PATCH 013/196] treewide: Reformat project with alejandra --- configuration/default.nix | 30 ++- configuration/ids.nix | 4 +- configuration/linode.nix | 9 +- configuration/services/gitea.nix | 14 +- configuration/services/minecraft.nix | 45 ++-- configuration/services/nextcloud.nix | 18 +- configuration/services/webserver.nix | 18 +- flake.nix | 277 +++++++++++---------- lib/default.nix | 18 +- lib/minecraft.nix | 20 +- modules/default.nix | 9 +- modules/virtualisation/pods.nix | 80 +++--- pkgs/build-support/fetchFromCurseForge.nix | 53 ++-- pkgs/default.nix | 20 +- pkgs/minecraft/forge-server.nix | 126 +++++----- pkgs/minecraft/voor-kia-client.nix | 10 +- pkgs/minecraft/voor-kia.nix | 7 +- 17 files changed, 405 insertions(+), 353 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 6a2a79d..8e9744d 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,6 +1,9 @@ -{ config, pkgs, lib, ... }: - { + config, + pkgs, + lib, + ... +}: { imports = [ ./services/gitea.nix ./services/minecraft.nix @@ -18,7 +21,7 @@ ''; # Enable remote builds from tlater - trustedUsers = [ "@wheel" ]; + trustedUsers = ["@wheel"]; }; nixpkgs.config.allowUnfreePredicate = pkg: @@ -26,10 +29,10 @@ sops = { defaultSopsFile = ../keys/external.yaml; - secrets.steam = { }; + secrets.steam = {}; }; - boot.kernelParams = [ "highres=off" "nohz=off" ]; + boot.kernelParams = ["highres=off" "nohz=off"]; networking = { hostName = "tlaternet"; @@ -38,15 +41,15 @@ useDHCP = false; interfaces.eth0.useDHCP = true; - firewall.allowedTCPPorts = [ 80 443 2222 2221 25565 21025 ]; + firewall.allowedTCPPorts = [80 443 2222 2221 25565 21025]; }; time.timeZone = "Europe/London"; users.users.tlater = { isNormalUser = true; - extraGroups = [ "wheel" ]; - openssh.authorizedKeys.keyFiles = [ ../keys/tlater.pub ]; + extraGroups = ["wheel"]; + openssh.authorizedKeys.keyFiles = [../keys/tlater.pub]; }; services.openssh = { @@ -54,7 +57,7 @@ allowSFTP = false; passwordAuthentication = false; permitRootLogin = "no"; - ports = [ 2222 ]; + ports = [2222]; startWhenNeeded = true; gatewayPorts = "yes"; }; @@ -77,12 +80,13 @@ extraConfig = '' add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always; ''; - } extra; + } + extra; domain = config.services.nginx.domain; in { - "${domain}" = host 3002 { serverAliases = [ "www.${domain}" ]; }; - "gitea.${domain}" = host 3000 { }; - "nextcloud.${domain}" = host 3001 { }; + "${domain}" = host 3002 {serverAliases = ["www.${domain}"];}; + "gitea.${domain}" = host 3000 {}; + "nextcloud.${domain}" = host 3001 {}; }; }; diff --git a/configuration/ids.nix b/configuration/ids.nix index 5488ff0..9b99011 100644 --- a/configuration/ids.nix +++ b/configuration/ids.nix @@ -1,6 +1,4 @@ -{ ... }: - -{ +{...}: { ids.uids = { # System user ids start at 400 (see nixos/modules/programs/shadow.nix) webserver = 400; diff --git a/configuration/linode.nix b/configuration/linode.nix index da82d20..4224cfe 100644 --- a/configuration/linode.nix +++ b/configuration/linode.nix @@ -1,8 +1,11 @@ -{ config, lib, pkgs, ... }: - { + config, + lib, + pkgs, + ... +}: { # Required for the lish console - boot.kernelParams = [ "console=ttyS0,19200n8" ]; + boot.kernelParams = ["console=ttyS0,19200n8"]; boot.loader = { # Timeout to allow lish to connect diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 7f49d32..5f9ebd0 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -1,6 +1,4 @@ -{ config, ... }: - -{ +{config, ...}: { users = { extraUsers.gitea = { uid = config.ids.uids.git; @@ -8,19 +6,19 @@ description = "Gitea Service"; group = config.users.extraGroups.gitea.name; }; - extraGroups.gitea = { gid = config.ids.gids.git; }; + extraGroups.gitea = {gid = config.ids.gids.git;}; }; virtualisation.pods.gitea = { hostname = "gitea.tlater.net"; - publish = [ "3000:3000" "2221:2221" ]; + publish = ["3000:3000" "2221:2221"]; network = "slirp4netns"; containers = { gitea = { image = "gitea/gitea:latest"; - volumes = [ "gitea:/data:Z" "/etc/localtime:/etc/localtime:ro" ]; - dependsOn = [ "postgres" ]; + volumes = ["gitea:/data:Z" "/etc/localtime:/etc/localtime:ro"]; + dependsOn = ["postgres"]; environment = { DB_TYPE = "postgres"; @@ -43,7 +41,7 @@ POSTGRES_DB = "gitea"; POSTGRES_USER = "gitea"; }; - volumes = [ "gitea-postgres-14:/var/lib/postgresql/data" ]; + volumes = ["gitea-postgres-14:/var/lib/postgresql/data"]; }; }; }; diff --git a/configuration/services/minecraft.nix b/configuration/services/minecraft.nix index 80b4ff5..c19335c 100644 --- a/configuration/services/minecraft.nix +++ b/configuration/services/minecraft.nix @@ -1,6 +1,9 @@ -{ config, pkgs, lib, ... }: - -let +{ + config, + pkgs, + lib, + ... +}: let minecraft-server-args = [ "-Xms2G" "-Xmx2G" @@ -24,12 +27,14 @@ let "-XX:+PerfDisableSharedMem" "-XX:MaxTenuringThreshold=1" ]; - ops = pkgs.writeText "ops.json" (builtins.toJSON [{ - uuid = "140d177a-966f-41b8-a4c0-e305babd291b"; - name = "TLATER"; - level = 4; - bypassesPlayerLimit = true; - }]); + ops = pkgs.writeText "ops.json" (builtins.toJSON [ + { + uuid = "140d177a-966f-41b8-a4c0-e305babd291b"; + name = "TLATER"; + level = 4; + bypassesPlayerLimit = true; + } + ]); whitelist = pkgs.writeText "whitelist.json" (builtins.toJSON [ { uuid = "59cd1648-14a4-4bcf-8f5a-2e1bde678f2c"; @@ -49,7 +54,6 @@ let } ]); eula = pkgs.writeText "eula.txt" "eula=true"; - in { users = { extraUsers.minecraft = { @@ -58,7 +62,7 @@ in { isSystemUser = true; description = "Minecraft server user"; }; - extraGroups.minecraft = { gid = config.ids.gids.minecraft; }; + extraGroups.minecraft = {gid = config.ids.gids.minecraft;}; }; virtualisation.oci-containers.containers.minecraft-voor-kia = let @@ -83,22 +87,22 @@ in { uid = toString config.users.extraUsers.minecraft.uid; gid = toString config.users.extraGroups.minecraft.gid; in { - Cmd = [ "forge-server" ] ++ minecraft-server-args; + Cmd = ["forge-server"] ++ minecraft-server-args; WorkingDir = "/var/lib/minecraft"; Volumes = { - "/var/lib/minecraft" = { }; + "/var/lib/minecraft" = {}; # Required because some things will try to write to /tmp, # which doesn't exist if it's not defined as a volume. - "/tmp" = { }; + "/tmp" = {}; }; - ExposedPorts = { "25565" = { }; }; + ExposedPorts = {"25565" = {};}; User = "${uid}:${gid}"; }; }; - extraOptions = [ "--cpus=1.0" ]; + extraOptions = ["--cpus=1.0"]; autoStart = false; - ports = [ "25565:25565" ]; + ports = ["25565:25565"]; volumes = [ "minecraft:/var/lib/minecraft" "${eula}:/var/lib/minecraft/eula.txt:ro" @@ -111,7 +115,7 @@ in { systemd.timers.podman-minecraft-voor-kia-off = { description = "Turns off the minecraft server every day at 4 am"; - wantedBy = [ "podman-minecraft-voor-kia.service" ]; + wantedBy = ["podman-minecraft-voor-kia.service"]; timerConfig = { Unit = "podman-minecraft-voor-kia-starter@stop.service"; OnCalendar = "04:00:00"; @@ -120,7 +124,7 @@ in { systemd.timers.podman-minecraft-voor-kia-on = { description = "Turns on the minecraft server every day at 2 pm"; - wantedBy = [ "podman-minecraft-voor-kia.service" ]; + wantedBy = ["podman-minecraft-voor-kia.service"]; timerConfig = { Unit = "podman-minecraft-voor-kia-starter@start.service"; OnCalendar = "14:00:00"; @@ -130,8 +134,7 @@ in { systemd.services."podman-minecraft-voor-kia-starter@" = { description = "Unit to stop/start the minecraft server"; serviceConfig = { - ExecStart = - "${pkgs.systemd}/bin/systemctl %i podman-minecraft-voor-kia.service"; + ExecStart = "${pkgs.systemd}/bin/systemctl %i podman-minecraft-voor-kia.service"; Type = "oneshot"; }; }; diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index f63b294..5b32cf2 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,15 +1,13 @@ -{ config, ... }: - -{ +{config, ...}: { virtualisation.pods.nextcloud = { hostname = "nextcloud.tlater.net"; - publish = [ "3001:80" ]; + publish = ["3001:80"]; network = "slirp4netns"; containers = { nextcloud = { image = "nextcloud:fpm-alpine"; - dependsOn = [ "postgres" ]; + dependsOn = ["postgres"]; volumes = [ "nextcloud-root:/var/www/html" "nextcloud-apps:/var/www/html/custom_apps" @@ -28,18 +26,18 @@ cron = { image = "nextcloud:fpm-alpine"; entrypoint = "/cron.sh"; - dependsOn = [ "postgres" "nextcloud" ]; - extraOptions = [ "--volumes-from=nextcloud-nextcloud" ]; + dependsOn = ["postgres" "nextcloud"]; + extraOptions = ["--volumes-from=nextcloud-nextcloud"]; }; nginx = { image = "nginx:alpine"; - dependsOn = [ "nextcloud" ]; + dependsOn = ["nextcloud"]; volumes = [ "nextcloud-root:/var/www/html:ro" "${./configs/nginx-nextcloud.conf}:/etc/nginx/nginx.conf:ro" ]; - extraOptions = [ "--volumes-from=nextcloud-nextcloud" ]; + extraOptions = ["--volumes-from=nextcloud-nextcloud"]; }; postgres = { @@ -48,7 +46,7 @@ POSTGRES_DB = "nextcloud"; POSTGRES_USER = "nextcloud"; }; - volumes = [ "nextcloud-postgres-14:/var/lib/postgresql/data" ]; + volumes = ["nextcloud-postgres-14:/var/lib/postgresql/data"]; }; }; }; diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index d72b417..093da3d 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -1,6 +1,8 @@ -{ config, pkgs, ... }: - { + config, + pkgs, + ... +}: { users = { extraUsers.webserver = { uid = config.ids.uids.webserver; @@ -8,7 +10,7 @@ isSystemUser = true; description = "tlater.net web server user"; }; - extraGroups.webserver = { gid = config.ids.gids.webserver; }; + extraGroups.webserver = {gid = config.ids.gids.webserver;}; }; virtualisation.oci-containers.containers.webserver = { @@ -23,19 +25,19 @@ uid = toString config.users.extraUsers.webserver.uid; gid = toString config.users.extraGroups.webserver.gid; in { - Cmd = [ "tlaternet-webserver" ]; - Volumes = { "/srv/mail" = { }; }; + Cmd = ["tlaternet-webserver"]; + Volumes = {"/srv/mail" = {};}; Env = [ "ROCKET_PORT=3002" "ROCKET_TEMPLATE_DIR=${pkgs.tlaternet-templates.templates}/browser/" ]; - ExposedPorts = { "3002" = { }; }; + ExposedPorts = {"3002" = {};}; User = "${uid}:${gid}"; }; }; - ports = [ "3002:3002" ]; - volumes = [ "tlaternet-mail:/srv/mail" ]; + ports = ["3002:3002"]; + volumes = ["tlaternet-mail:/srv/mail"]; extraOptions = [ "--hostname=tlater.net" # Rocket 0.4 doesn't support SIGTERM anyway, so SIGKILL is the cleanest exit possible. diff --git a/flake.nix b/flake.nix index 772580b..3f0ad1b 100644 --- a/flake.nix +++ b/flake.nix @@ -26,144 +26,155 @@ }; }; - outputs = { self, nixpkgs, nixos-hardware, flake-utils, sops-nix - , tlaternet-webserver, tlaternet-templates, ... }@inputs: - let - overlays = [ - (final: prev: { - tlaternet-webserver = - tlaternet-webserver.legacyPackages.${prev.system}.packages; - tlaternet-templates = - tlaternet-templates.legacyPackages.${prev.system}.packages; - local = import ./pkgs { - pkgs = prev; - local-lib = self.lib.${prev.system}; - }; - }) - ]; - - in { + outputs = { + self, + nixpkgs, + nixos-hardware, + flake-utils, + sops-nix, + tlaternet-webserver, + tlaternet-templates, + ... + } @ inputs: let + overlays = [ + (final: prev: { + tlaternet-webserver = + tlaternet-webserver.legacyPackages.${prev.system}.packages; + tlaternet-templates = + tlaternet-templates.legacyPackages.${prev.system}.packages; + local = import ./pkgs { + pkgs = prev; + local-lib = self.lib.${prev.system}; + }; + }) + ]; + in + { nixosConfigurations = { - tlaternet = let system = "x86_64-linux"; - in nixpkgs.lib.nixosSystem { - inherit system; + tlaternet = let + system = "x86_64-linux"; + in + nixpkgs.lib.nixosSystem { + inherit system; - modules = [ - ({ modulesPath, ... }: { - imports = [ (modulesPath + "/profiles/headless.nix") ]; - nixpkgs.overlays = overlays; - }) - (import ./modules) + modules = [ + ({modulesPath, ...}: { + imports = [(modulesPath + "/profiles/headless.nix")]; + nixpkgs.overlays = overlays; + }) + (import ./modules) - (import ./configuration) - (import ./configuration/linode.nix) - (import ./configuration/hardware-configuration.nix) - sops-nix.nixosModules.sops - ]; - }; - - vm = let system = "x86_64-linux"; - in nixpkgs.lib.nixosSystem { - inherit system; - - modules = [ - ({ modulesPath, ... }: { - imports = [ (modulesPath + "/profiles/headless.nix") ]; - nixpkgs.overlays = overlays; - }) - (import ./modules) - - (import ./configuration) - sops-nix.nixosModules.sops - ({ lib, ... }: { - users.users.tlater.password = "insecure"; - - # Disable graphical tty so -curses works - boot.kernelParams = [ "nomodeset" ]; - - # Sets the base domain for nginx to localhost so that we - # can easily test locally with the VM. - services.nginx.domain = lib.mkOverride 99 "localhost"; - - # # Set up VM settings to match real VPS - # virtualisation.memorySize = 3941; - # virtualisation.cores = 2; - }) - ]; - }; - }; - } // flake-utils.lib.eachDefaultSystem (system: - let - pkgs = import nixpkgs { inherit system overlays; }; - sops-pkgs = sops-nix.packages.${system}; - in { - devShell = - pkgs.mkShell { - sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; - nativeBuildInputs = with sops-pkgs; [ - sops-import-keys-hook + (import ./configuration) + (import ./configuration/linode.nix) + (import ./configuration/hardware-configuration.nix) + sops-nix.nixosModules.sops ]; - buildInputs = with pkgs; with sops-pkgs; [ - nixfmt - git-lfs - sops-init-gpg-key - - # For the minecraft mod update script - (python3.withPackages (pypkgs: - with pypkgs; [ - dateutil - requests - - ipython - - python3.withPackages (ppkgs: - with pkgs; [ - python-lsp-server - python-lsp-black - pyls-isort - pyls-mypy - rope - pyflakes - mccabe - pycodestyle - pydocstyle - ]) - ])) - ]; - shellHook = let - inherit (pkgs.lib.attrsets) mapAttrsToList; - inherit (pkgs.lib.strings) concatStringsSep; - ports = { - "3022" = "2222"; - "3080" = "80"; - "3443" = "443"; - "3021" = "2221"; - "25565" = "25565"; - "21025" = "21025"; # Starbound - }; - QEMU_NET_OPTS = - concatStringsSep "," - (mapAttrsToList - (host: vm: "hostfwd=::${host}-:${vm}") - ports); - in - '' - export QEMU_OPTS="-m 3941 -smp 2 -curses" - export QEMU_NET_OPTS="${QEMU_NET_OPTS}" - - # Work around sudo requiring a full terminal - export NIX_SSHOPTS="-t" - ''; }; - packages = import ./pkgs { - inherit pkgs; - local-lib = self.lib.${system}; - }; + vm = let + system = "x86_64-linux"; + in + nixpkgs.lib.nixosSystem { + inherit system; - lib = import ./lib { - inherit pkgs inputs; - lib = nixpkgs.lib; - }; - }); + modules = [ + ({modulesPath, ...}: { + imports = [(modulesPath + "/profiles/headless.nix")]; + nixpkgs.overlays = overlays; + }) + (import ./modules) + + (import ./configuration) + sops-nix.nixosModules.sops + ({lib, ...}: { + users.users.tlater.password = "insecure"; + + # Disable graphical tty so -curses works + boot.kernelParams = ["nomodeset"]; + + # Sets the base domain for nginx to localhost so that we + # can easily test locally with the VM. + services.nginx.domain = lib.mkOverride 99 "localhost"; + + # # Set up VM settings to match real VPS + # virtualisation.memorySize = 3941; + # virtualisation.cores = 2; + }) + ]; + }; + }; + } + // flake-utils.lib.eachDefaultSystem (system: let + pkgs = import nixpkgs {inherit system overlays;}; + sops-pkgs = sops-nix.packages.${system}; + in { + devShell = pkgs.mkShell { + sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; + nativeBuildInputs = with sops-pkgs; [ + sops-import-keys-hook + ]; + buildInputs = with pkgs; + with sops-pkgs; [ + nixfmt + git-lfs + sops-init-gpg-key + + # For the minecraft mod update script + (python3.withPackages (pypkgs: + with pypkgs; [ + dateutil + requests + + ipython + + python3.withPackages + (ppkgs: + with pkgs; [ + python-lsp-server + python-lsp-black + pyls-isort + pyls-mypy + rope + pyflakes + mccabe + pycodestyle + pydocstyle + ]) + ])) + ]; + shellHook = let + inherit (pkgs.lib.attrsets) mapAttrsToList; + inherit (pkgs.lib.strings) concatStringsSep; + ports = { + "3022" = "2222"; + "3080" = "80"; + "3443" = "443"; + "3021" = "2221"; + "25565" = "25565"; + "21025" = "21025"; # Starbound + }; + QEMU_NET_OPTS = + concatStringsSep "," + (mapAttrsToList + (host: vm: "hostfwd=::${host}-:${vm}") + ports); + in '' + export QEMU_OPTS="-m 3941 -smp 2 -curses" + export QEMU_NET_OPTS="${QEMU_NET_OPTS}" + + # Work around sudo requiring a full terminal + export NIX_SSHOPTS="-t" + ''; + }; + + packages = import ./pkgs { + inherit pkgs; + local-lib = self.lib.${system}; + }; + + lib = import ./lib { + inherit pkgs inputs; + lib = nixpkgs.lib; + }; + }); } diff --git a/lib/default.nix b/lib/default.nix index 3d657e4..2a5d54f 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,8 +1,12 @@ -{ inputs, lib, pkgs, ... }: - -let +{ + inputs, + lib, + pkgs, + ... +}: let inherit (lib) makeExtensible foldr attrValues; - tlater-lib = makeExtensible (self: - let callLibs = file: import file { inherit self lib pkgs inputs; }; - in { minecraft = callLibs ./minecraft.nix; }); -in tlater-lib.extend (self: super: foldr (a: b: a // b) { } (attrValues super)) + tlater-lib = makeExtensible (self: let + callLibs = file: import file {inherit self lib pkgs inputs;}; + in {minecraft = callLibs ./minecraft.nix;}); +in + tlater-lib.extend (self: super: foldr (a: b: a // b) {} (attrValues super)) diff --git a/lib/minecraft.nix b/lib/minecraft.nix index ef50b3d..e3f8c4e 100644 --- a/lib/minecraft.nix +++ b/lib/minecraft.nix @@ -1,6 +1,8 @@ -{ lib, pkgs, ... }: - { + lib, + pkgs, + ... +}: { # Make a modpack given its mod inputs. # # Mods should be attrsets in this format: @@ -13,7 +15,11 @@ # # This may be nice to read from a json ;) # - mkModpack = { name, version, mods }: + mkModpack = { + name, + version, + mods, + }: pkgs.stdenv.mkDerivation { inherit name version; srcs = map pkgs.local.fetchFromCurseForge mods; @@ -28,7 +34,11 @@ ''; }; - mkModpackZip = { name, version, mods }: + mkModpackZip = { + name, + version, + mods, + }: pkgs.stdenv.mkDerivation { inherit name version; srcs = map pkgs.local.fetchFromCurseForge mods; @@ -37,7 +47,7 @@ preUnpack = "mkdir -p src/"; unpackCmd = "cp $curSrc src/"; - buildInputs = [ pkgs.zip]; + buildInputs = [pkgs.zip]; buildPhase = '' zip voor-kia-mods.zip *.jar diff --git a/modules/default.nix b/modules/default.nix index 1fd86fc..46f5e10 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1,9 +1,6 @@ -{ lib, ... }: - -with lib; - -{ - imports = [ ./virtualisation/pods.nix ]; +{lib, ...}: +with lib; { + imports = [./virtualisation/pods.nix]; options.services.nginx.domain = mkOption { type = types.str; diff --git a/modules/virtualisation/pods.nix b/modules/virtualisation/pods.nix index a5c9daa..5a96cc8 100644 --- a/modules/virtualisation/pods.nix +++ b/modules/virtualisation/pods.nix @@ -1,20 +1,21 @@ -{ lib, config, options, ... }: - -with lib; - -let +{ + lib, + config, + options, + ... +}: +with lib; let cfg = config.virtualisation.pods; list-to-args = arg: list: concatStringsSep " " (map (e: "--${arg}=${escapeShellArg e}") list); - possibly-unset-arg = arg: val: - (optionalString (val != null) "--${arg}=${escapeShellArg val}"); + possibly-unset-arg = arg: val: (optionalString (val != null) "--${arg}=${escapeShellArg val}"); mkPod = name: pod: rec { - path = [ config.virtualisation.podman.package ]; + path = [config.virtualisation.podman.package]; - wants = [ "network.target" ]; - after = [ "network-online.target" ]; - wantedBy = [ "multi-user.target" "default.target" ]; + wants = ["network.target"]; + after = ["network-online.target"]; + wantedBy = ["multi-user.target" "default.target"]; environment.PODMAN_SYSTEMD_UNIT = "%n"; @@ -55,7 +56,6 @@ let PIDFile = "/run/podman/pods/${name}.pid"; }; }; - in { options.virtualisation.pods = mkOption { type = with types; @@ -63,9 +63,8 @@ in { options = { added-hosts = mkOption { type = listOf str; - default = [ ]; - description = - "Additional hosts to add to /etc/hosts for each container."; + default = []; + description = "Additional hosts to add to /etc/hosts for each container."; example = literalExample '' [ "database:10.0.0.1" ] ''; @@ -74,25 +73,24 @@ in { cgroup-parent = mkOption { type = nullOr str; default = null; - description = - "The cgroups path under which the pod cgroup will be created."; + description = "The cgroups path under which the pod cgroup will be created."; }; dns = mkOption { type = listOf str; - default = [ ]; + default = []; description = "The dns servers to set in /etc/resolv.conf."; }; dns-opt = mkOption { type = listOf str; - default = [ ]; + default = []; description = "dns options to set in /etc/resolv.conf."; }; dns-search = mkOption { type = listOf str; - default = [ ]; + default = []; description = "Search domains to set in /etc/resolv.conf."; }; @@ -156,20 +154,20 @@ in { publish = mkOption { type = listOf str; - default = [ ]; + default = []; description = "List of ports to publish from the pod."; }; share = mkOption { type = listOf str; - default = [ ]; + default = []; description = "List of kernel namespaces to share."; }; containers = options.virtualisation.oci-containers.containers; }; }); - default = { }; + default = {}; description = "Podman pods to run as systemd services."; }; @@ -178,7 +176,7 @@ in { # # TODO: See if there's a generic version for this somewhere in the # pkgs lib? - mergeAttrs = attrList: foldr (a: b: a // b) { } attrList; + mergeAttrs = attrList: foldr (a: b: a // b) {} attrList; # Create services for all defined pods pod-services = mapAttrs' (n: v: nameValuePair "pod-${n}" (mkPod n v)) cfg; @@ -190,31 +188,35 @@ in { pod-container-services = mergeAttrs (mapAttrsToList (pname: pod: mapAttrs' (cname: container: nameValuePair "podman-${pname}-${cname}" rec { - after = [ "pod-${pname}.service" ]; + after = ["pod-${pname}.service"]; requires = after; - }) pod.containers) cfg); + }) + pod.containers) + cfg); # Override the oci-container settings for containers defined in pods. # # I.e., set the --pod=podname setting, and update the dependsOn so # it points to containers in the same pod. podifyContainer = container: podname: - container // { + container + // { dependsOn = map (dependency: "${podname}-${dependency}") container.dependsOn; - extraOptions = container.extraOptions ++ [ "--pod=${podname}" ]; + extraOptions = container.extraOptions ++ ["--pod=${podname}"]; }; + in + lib.mkIf (cfg != {}) { + virtualisation.podman.enable = true; + virtualisation.oci-containers.backend = "podman"; - in lib.mkIf (cfg != { }) { - virtualisation.podman.enable = true; - virtualisation.oci-containers.backend = "podman"; + systemd.services = pod-services // pod-container-services; - systemd.services = pod-services // pod-container-services; - - virtualisation.oci-containers.containers = mergeAttrs (mapAttrsToList - (pname: pod: - mapAttrs' (cname: container: - nameValuePair "${pname}-${cname}" (podifyContainer container pname)) - pod.containers) cfg); - }; + virtualisation.oci-containers.containers = mergeAttrs (mapAttrsToList + (pname: pod: + mapAttrs' (cname: container: + nameValuePair "${pname}-${cname}" (podifyContainer container pname)) + pod.containers) + cfg); + }; } diff --git a/pkgs/build-support/fetchFromCurseForge.nix b/pkgs/build-support/fetchFromCurseForge.nix index e3e5b51..674803f 100644 --- a/pkgs/build-support/fetchFromCurseForge.nix +++ b/pkgs/build-support/fetchFromCurseForge.nix @@ -1,26 +1,31 @@ -{ lib, fetchurl }: - +{ + lib, + fetchurl, +}: with builtins; + { + project, + id, + filename, + ... + } @ args: let + # I think this is supposed to be some weak automation + # protection. This split "id" is simply part of the download URL. + # + # Note that if it's zero-prefixed we need to remove the zeroes. It's + # really an odd one... + a = head (match "0*([[:digit:]]+)" (substring 0 4 (toString id))); + b = head (match "0*([[:digit:]]+)" (substring 4 7 (toString id))); + encoded-filename = replaceStrings [" "] ["%20"] filename; -{ project, id, filename, ... }@args: - -let - # I think this is supposed to be some weak automation - # protection. This split "id" is simply part of the download URL. - # - # Note that if it's zero-prefixed we need to remove the zeroes. It's - # really an odd one... - a = head (match "0*([[:digit:]]+)" (substring 0 4 (toString id))); - b = head (match "0*([[:digit:]]+)" (substring 4 7 (toString id))); - encoded-filename = replaceStrings [ " " ] [ "%20" ] filename; - - url = "https://media.forgecdn.net/files/${a}/${b}/${encoded-filename}"; - otherArgs = removeAttrs args [ "project" "project_id" "id" "filename" ]; - -in fetchurl (otherArgs // { - inherit url; - # Rename files to avoid names incompatible with the nix store - name = "${project}.jar"; - # Avoid accidental URL globbing - curlOpts = "--globoff"; -}) + url = "https://media.forgecdn.net/files/${a}/${b}/${encoded-filename}"; + otherArgs = removeAttrs args ["project" "project_id" "id" "filename"]; + in + fetchurl (otherArgs + // { + inherit url; + # Rename files to avoid names incompatible with the nix store + name = "${project}.jar"; + # Avoid accidental URL globbing + curlOpts = "--globoff"; + }) diff --git a/pkgs/default.nix b/pkgs/default.nix index dd334bc..ef226db 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,19 +1,21 @@ -{ pkgs, local-lib, ... }: - -let +{ + pkgs, + local-lib, + ... +}: let inherit (pkgs.lib) callPackageWith; - callPackage = callPackageWith (pkgs // { inherit local-lib; }); + callPackage = callPackageWith (pkgs // {inherit local-lib;}); in { # Forge - forge-server = callPackage ./minecraft/forge-server.nix { }; + forge-server = callPackage ./minecraft/forge-server.nix {}; # Build support - fetchFromCurseForge = callPackage ./build-support/fetchFromCurseForge.nix { }; + fetchFromCurseForge = callPackage ./build-support/fetchFromCurseForge.nix {}; # Minecraft modpacks - voor-kia = callPackage ./minecraft/voor-kia.nix { }; - voor-kia-client = callPackage ./minecraft/voor-kia-client.nix { }; + voor-kia = callPackage ./minecraft/voor-kia.nix {}; + voor-kia-client = callPackage ./minecraft/voor-kia-client.nix {}; # Starbound - starbound = callPackage ./starbound { }; + starbound = callPackage ./starbound {}; } diff --git a/pkgs/minecraft/forge-server.nix b/pkgs/minecraft/forge-server.nix index e26a7a5..5d7a8c2 100644 --- a/pkgs/minecraft/forge-server.nix +++ b/pkgs/minecraft/forge-server.nix @@ -1,7 +1,15 @@ -{ lib, stdenv, fetchurl, busybox, coreutils, jre_headless, runtimeShell -, mods ? null, modConfig ? null, defaultconfigs ? null }: - -let +{ + lib, + stdenv, + fetchurl, + busybox, + coreutils, + jre_headless, + runtimeShell, + mods ? null, + modConfig ? null, + defaultconfigs ? null, +}: let name = "forge-server"; version = "1.16.5-36.2.2"; mirror = "https://files.minecraftforge.net/maven/net/minecraftforge/forge"; @@ -14,7 +22,7 @@ let unpackCmd = "mkdir -p src; cp $curSrc src/forge-${version}-installer.jar"; - nativeBuildInputs = [ jre_headless ]; + nativeBuildInputs = [jre_headless]; # Somewhat evil pre-install step to run through the network # dependency resolution forge needs. This is also common for gradle @@ -43,70 +51,70 @@ let outputHashMode = "recursive"; outputHash = "VuUGc5JnzcRhDt9aaGrU+yUrJILVdU2vzv1PxLwdAig="; }; +in + stdenv.mkDerivation rec { + inherit name version src unpackCmd nativeBuildInputs; -in stdenv.mkDerivation rec { - inherit name version src unpackCmd nativeBuildInputs; + buildPhase = '' + mkdir -p installation - buildPhase = '' - mkdir -p installation + # Take the input deps and patch the Minecraft server jar into our + # libraries to create the package. + cp -rv ${deps}/* installation/ + chmod -R +w installation/ + java -jar forge-${version}-installer.jar --offline --installServer installation/ + ''; - # Take the input deps and patch the Minecraft server jar into our - # libraries to create the package. - cp -rv ${deps}/* installation/ - chmod -R +w installation/ - java -jar forge-${version}-installer.jar --offline --installServer installation/ - ''; + installPhase = '' + mkdir -p $out/{bin,lib/forge} - installPhase = '' - mkdir -p $out/{bin,lib/forge} + cp -r installation/{forge-${version}.jar,libraries} $out/lib/forge/ - cp -r installation/{forge-${version}.jar,libraries} $out/lib/forge/ + cat > $out/bin/forge-server << EOF + #!${runtimeShell} + set -eu - cat > $out/bin/forge-server << EOF - #!${runtimeShell} - set -eu + # Delete any previous mods directory so that it can be updated + ${busybox}/bin/rm -fr mods - # Delete any previous mods directory so that it can be updated - ${busybox}/bin/rm -fr mods + ${lib.optionalString (mods != null) '' + # Copy the specified mods into the directory. Note that, sadly, + # forge doesn't support symlinks here. + ${busybox}/bin/mkdir -p mods + ${busybox}/bin/cp -r '${mods}/mods/'*.jar mods + ''} - ${lib.optionalString (mods != null) '' - # Copy the specified mods into the directory. Note that, sadly, - # forge doesn't support symlinks here. - ${busybox}/bin/mkdir -p mods - ${busybox}/bin/cp -r '${mods}/mods/'*.jar mods - ''} + # Delete any previous config directories so that they can be updated + ${busybox}/bin/rm -fr config defaultconfigs - # Delete any previous config directories so that they can be updated - ${busybox}/bin/rm -fr config defaultconfigs + ${lib.optionalString (modConfig != null) '' + # Copy the specified configs into the directory. Forge (and + # mods) will try to write here, so we cannot symlink. + ${busybox}/bin/mkdir -p config + ${busybox}/bin/cp -r '${modConfig}'/* config + ${busybox}/bin/chmod -R u+w config + ''} - ${lib.optionalString (modConfig != null) '' - # Copy the specified configs into the directory. Forge (and - # mods) will try to write here, so we cannot symlink. - ${busybox}/bin/mkdir -p config - ${busybox}/bin/cp -r '${modConfig}'/* config - ${busybox}/bin/chmod -R u+w config - ''} + ${lib.optionalString (defaultconfigs != null) '' + # Copy the specified configs into the directory. Forge (and + # mods) will try to write here, so we cannot symlink. + ${busybox}/bin/mkdir -p defaultconfigs + ${busybox}/bin/cp -r '${defaultconfigs}'/* defaultconfigs + ${busybox}/bin/chmod -R u+w defaultconfigs + ''} - ${lib.optionalString (defaultconfigs != null) '' - # Copy the specified configs into the directory. Forge (and - # mods) will try to write here, so we cannot symlink. - ${busybox}/bin/mkdir -p defaultconfigs - ${busybox}/bin/cp -r '${defaultconfigs}'/* defaultconfigs - ${busybox}/bin/chmod -R u+w defaultconfigs - ''} + exec ${jre_headless}/bin/java \$@ -jar $out'/lib/forge/forge-${version}.jar' nogui + EOF - exec ${jre_headless}/bin/java \$@ -jar $out'/lib/forge/forge-${version}.jar' nogui - EOF + chmod +x $out/bin/forge-server + ''; - chmod +x $out/bin/forge-server - ''; - - meta = with lib; { - description = "Forge Minecraft Server"; - homepage = "https://files.minecraftforge.net/"; - # Forge itself is open source, but this package pulls in - # minecraft. - license = licenses.unfreeRedistributable; - platforms = platforms.unix; - }; -} + meta = with lib; { + description = "Forge Minecraft Server"; + homepage = "https://files.minecraftforge.net/"; + # Forge itself is open source, but this package pulls in + # minecraft. + license = licenses.unfreeRedistributable; + platforms = platforms.unix; + }; + } diff --git a/pkgs/minecraft/voor-kia-client.nix b/pkgs/minecraft/voor-kia-client.nix index 8d0c687..fea9879 100644 --- a/pkgs/minecraft/voor-kia-client.nix +++ b/pkgs/minecraft/voor-kia-client.nix @@ -1,8 +1,12 @@ -{ lib, local-lib, stdenv }: - +{ + lib, + local-lib, + stdenv, +}: local-lib.minecraft.mkModpackZip { name = "voor-kia-client"; version = "1.1"; - mods = (builtins.fromJSON (builtins.readFile ./voor-kia/mods.json)) + mods = + (builtins.fromJSON (builtins.readFile ./voor-kia/mods.json)) ++ (builtins.fromJSON (builtins.readFile ./voor-kia/client-mods.json)); } diff --git a/pkgs/minecraft/voor-kia.nix b/pkgs/minecraft/voor-kia.nix index 86c5cde..4bbd433 100644 --- a/pkgs/minecraft/voor-kia.nix +++ b/pkgs/minecraft/voor-kia.nix @@ -1,5 +1,8 @@ -{ lib, local-lib, stdenv }: - +{ + lib, + local-lib, + stdenv, +}: local-lib.minecraft.mkModpack { name = "voor-kia"; version = "1.0"; From 7095ab26310ff71eaa094ca38e54b5ebeb821e67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 01:05:24 +0100 Subject: [PATCH 014/196] treewide: Remove minecraft server This has fallen into disuse since the big Java vulnerability, and I have ideas for better ways of doing this. Meanwhile it's making maintenance and refactoring more difficult. Hence I'll remove the server completely for the time being. --- configuration/default.nix | 5 +- configuration/ids.nix | 2 - .../voor-kia/config/EnderStorage.cfg | 14 - .../voor-kia/config/WeirdingGadget.toml | 12 - .../voor-kia/config/WeirdingGadgetLimits.toml | 13 - .../config/aiimprovements-common.toml | 40 - .../minecraft/voor-kia/config/alexsmobs.toml | 415 ---- .../alligator_snapping_turtle_spawns.json | 16 - .../config/alexsmobs/bald_eagle_spawns.json | 21 - .../config/alexsmobs/blobfish_spawns.json | 32 - .../config/alexsmobs/bone_serpent_spawns.json | 11 - .../cachalot_whale_beached_spawns.json | 16 - .../alexsmobs/cachalot_whale_spawns.json | 42 - .../alexsmobs/capuchin_monkey_spawns.json | 26 - .../alexsmobs/cave_centipede_spawns.json | 21 - .../config/alexsmobs/cockroach_spawns.json | 21 - .../alexsmobs/crimson_mosquito_spawns.json | 25 - .../config/alexsmobs/crocodile_spawns.json | 33 - .../config/alexsmobs/crow_spawns.json | 38 - .../config/alexsmobs/dropbear_spawns.json | 18 - .../config/alexsmobs/elephant_spawns.json | 28 - .../voor-kia/config/alexsmobs/emu_spawns.json | 28 - .../config/alexsmobs/endergrade_spawns.json | 16 - .../config/alexsmobs/enderiophage_spawns.json | 31 - .../voor-kia/config/alexsmobs/fly_spawns.json | 21 - .../alexsmobs/frilled_shark_spawns.json | 32 - .../config/alexsmobs/gazelle_spawns.json | 28 - .../config/alexsmobs/gorilla_spawns.json | 26 - .../config/alexsmobs/grizzly_bear_spawns.json | 28 - .../config/alexsmobs/guster_spawns.json | 16 - .../alexsmobs/hammerhead_shark_spawns.json | 21 - .../config/alexsmobs/hummingbird_spawns.json | 30 - .../config/alexsmobs/kangaroo_spawns.json | 28 - .../alexsmobs/komodo_dragon_spawns.json | 16 - .../alexsmobs/leafcutter_anthill_spawns.json | 26 - .../config/alexsmobs/lobster_spawns.json | 16 - .../alexsmobs/mantis_shrimp_spawns.json | 21 - .../alexsmobs/mimic_octopus_spawns.json | 26 - .../config/alexsmobs/mimicube_spawns.json | 16 - .../config/alexsmobs/moose_spawns.json | 38 - .../config/alexsmobs/mungus_spawns.json | 21 - .../config/alexsmobs/orca_spawns.json | 21 - .../config/alexsmobs/platypus_spawns.json | 28 - .../config/alexsmobs/raccoon_spawns.json | 38 - .../config/alexsmobs/rattlesnake_spawns.json | 28 - .../config/alexsmobs/roadrunner_spawns.json | 28 - .../config/alexsmobs/seal_spawns.json | 33 - .../config/alexsmobs/shoebill_spawns.json | 16 - .../config/alexsmobs/snow_leopard_spawns.json | 21 - .../config/alexsmobs/soul_vulture_spawns.json | 18 - .../config/alexsmobs/spectre_spawns.json | 11 - .../config/alexsmobs/straddler_spawns.json | 11 - .../config/alexsmobs/stradpole_spawns.json | 11 - .../config/alexsmobs/sunbird_spawns.json | 16 - .../alexsmobs/tarantula_hawk_spawns.json | 16 - .../alexsmobs/tasmanian_devil_spawns.json | 36 - .../config/alexsmobs/tiger_spawns.json | 42 - .../config/alexsmobs/void_worm_spawns.json | 3 - .../config/alexsmobs/warped_mosco_spawns.json | 3 - .../config/alexsmobs/warped_toad_spawns.json | 18 - .../voor-kia/config/apotheosis/affixes.cfg | 212 -- .../voor-kia/config/apotheosis/apotheosis.cfg | 23 - .../voor-kia/config/apotheosis/deadly.cfg | 222 -- .../config/apotheosis/enchantments.cfg | 1007 -------- .../voor-kia/config/apotheosis/garden.cfg | 14 - .../voor-kia/config/apotheosis/names.cfg | 1198 ---------- .../voor-kia/config/apotheosis/potion.cfg | 8 - .../voor-kia/config/apotheosis/spawner.cfg | 135 -- .../voor-kia/config/apotheosis/village.cfg | 12 - .../voor-kia/config/appleskin-client.toml | 24 - .../voor-kia/config/artifacts-common.toml | 36 - .../config/attributefix-common-1.toml.bak | 0 .../voor-kia/config/attributefix-common.toml | 144 -- .../voor-kia/config/betterburning-common.toml | 35 - .../voor-kia/config/bettercaves-1_16.toml | 310 --- .../voor-kia/config/bettercaves/README.txt | 12 - .../config/bettermineshafts-forge-1_16.toml | 104 - .../config/bettermineshafts/1_16/README.txt | 85 - .../bettermineshafts/1_16/biomeTags.txt | 38 - .../bettermineshafts/1_16/variants.json | 577 ----- .../config/bettermineshafts/README.txt | 5 - .../voor-kia/config/betterportals-1_16.toml | 11 - .../config/betterportals/1_16/README.txt | 69 - .../config/betterportals/1_16/monoliths.json | 55 - .../config/betterportals/1_16/rifts.json | 30 - .../config/betterportals/1_16_3/README.txt | 69 - .../betterportals/1_16_3/monoliths.json | 55 - .../config/betterportals/1_16_3/rifts.json | 30 - .../voor-kia/config/bwncr-common.toml | 16 - .../minecraft/voor-kia/config/byg/README.txt | 3 - .../voor-kia/config/byg/byg-biomes.json | 1125 --------- .../voor-kia/config/byg/byg-end-biomes.json | 86 - .../config/byg/byg-end-sub-biomes.json | 22 - .../voor-kia/config/byg/byg-nether.toml | 15 - .../voor-kia/config/byg/byg-sub-biomes.json | 520 ---- .../voor-kia/config/byg/byg-world.toml | 218 -- .../voor-kia/config/citadel-common.toml | 8 - .../config/cookingforblockheads-common.toml | 23 - .../config/cosmeticarmorreworked-common.toml | 10 - .../voor-kia/config/create-common.toml | 136 -- .../config/decorative_blocks-common.toml | 8 - .../config/farmingforblockheads-common.toml | 24 - .../farmingforblockheads/MarketRegistry.json | 1 - .../minecraft/voor-kia/config/fastbench.cfg | 8 - .../minecraft/voor-kia/config/fml.toml | 8 - .../voor-kia/config/forge-common.toml | 7 - .../config/hardcorerevival-common.toml | 34 - .../voor-kia/config/iceandfire-biomes.toml | 89 - .../voor-kia/config/iceandfire-common.toml | 452 ---- .../iceandfire/amethyst_gen_biomes.json | 28 - .../config/iceandfire/amphithere_biomes.json | 16 - .../config/iceandfire/cockatrice_biomes.json | 28 - .../iceandfire/cyclops_cave_biomes.json | 28 - .../config/iceandfire/deathworm_biomes.json | 16 - .../iceandfire/desert_myrmex_biomes.json | 16 - .../config/iceandfire/fire_dragon_biomes.json | 73 - .../fire_dragon_skeleton_biomes.json | 16 - .../config/iceandfire/fire_lily_biomes.json | 16 - .../iceandfire/forest_troll_biomes.json | 28 - .../iceandfire/gorgon_temple_biomes.json | 28 - .../config/iceandfire/graveyard_biomes.json | 31 - .../config/iceandfire/hippocampus_biomes.json | 28 - .../config/iceandfire/hippogryph_biomes.json | 52 - .../iceandfire/hippogryph_black_biomes.json | 16 - .../iceandfire/hippogryph_brown_biomes.json | 28 - .../hippogryph_chestnut_biomes.json | 16 - .../iceandfire/hippogryph_creamy_biomes.json | 16 - .../hippogryph_dark_brown_biomes.json | 28 - .../iceandfire/hippogryph_gray_biomes.json | 16 - .../iceandfire/hippogryph_white_biomes.json | 40 - .../config/iceandfire/hydra_cave_biomes.json | 28 - .../config/iceandfire/ice_dragon_biomes.json | 40 - .../ice_dragon_skeleton_biomes.json | 28 - .../config/iceandfire/ice_lily_biomes.json | 28 - .../iceandfire/jungle_myrmex_biomes.json | 16 - .../iceandfire/lightning_dragon_biomes.json | 40 - .../lightning_dragon_skeleton_biomes.json | 28 - .../iceandfire/lightning_lily_biomes.json | 28 - .../config/iceandfire/mausoleum_biomes.json | 28 - .../iceandfire/mountain_troll_biomes.json | 28 - .../config/iceandfire/ore_gen_biomes.json | 11 - .../iceandfire/pixie_village_biomes.json | 73 - .../iceandfire/sapphire_gen_biomes.json | 28 - .../config/iceandfire/sea_serpent_biomes.json | 28 - .../config/iceandfire/siren_biomes.json | 28 - .../config/iceandfire/snowy_troll_biomes.json | 16 - .../iceandfire/stymphalian_bird_biomes.json | 28 - .../iceandfire/wandering_cyclops_biomes.json | 28 - .../voor-kia/config/ironfurnaces-client.toml | 9 - .../voor-kia/config/ironfurnaces.toml | 142 -- .../voor-kia/config/jeresources-common.toml | 11 - .../voor-kia/config/jeresources.toml | 11 - .../config/lottaterracotta-common.toml | 25 - .../voor-kia/config/overworldtwo.json | 5 - .../voor-kia/config/pamhc2crops.toml | 50 - .../voor-kia/config/pamhc2trees.toml | 126 - .../config/passablefoliage-common.toml | 24 - .../voor-kia/config/performant-common.toml | 138 -- .../voor-kia/config/platter-common.toml | 13 - .../config/powah/energy/ender_cell.toml | 49 - .../config/powah/energy/ender_gate.toml | 49 - .../config/powah/energy/energizing.toml | 36 - .../config/powah/energy/energy_cable.toml | 33 - .../config/powah/energy/energy_cell.toml | 33 - .../powah/energy/energy_discharger.toml | 33 - .../config/powah/energy/energy_hopper.toml | 49 - .../powah/energy/generators/furnator.toml | 49 - .../powah/energy/generators/magmator.toml | 56 - .../powah/energy/generators/reactor.toml | 49 - .../powah/energy/generators/solar_panel.toml | 49 - .../powah/energy/generators/thermo_gen.toml | 49 - .../config/powah/energy/items/battery.toml | 33 - .../powah/energy/player_transmitter.toml | 49 - .../voor-kia/config/powah/general_common.toml | 46 - .../voor-kia/config/quark-common-1.toml.bak | 2128 ----------------- .../voor-kia/config/quark-common-2.toml.bak | 0 .../voor-kia/config/quark-common-3.toml.bak | 0 .../voor-kia/config/quark-common-4.toml.bak | 0 .../voor-kia/config/quark-common-5.toml.bak | 0 .../voor-kia/config/quark-common.toml | 2078 ---------------- .../voor-kia/config/repairchests-common.toml | 9 - .../voor-kia/config/rsgauges-common.toml | 40 - .../voor-kia/config/snowrealmagic-common.toml | 25 - .../config/snowundertrees-common.toml | 8 - .../config/storagedrawers-common.toml | 30 - .../config/supplementaries-common.toml | 274 --- .../config/supplementaries-registry.toml | 73 - .../voor-kia/config/sweetconcrete-common.toml | 27 - .../the_bumblezone-mod_compatibility.toml | 262 -- .../config/towers_of_the_wild-common.toml | 20 - .../config/travelersbackpack-common.toml | 13 - .../voor-kia/config/wstweaks-common.toml | 19 - .../defaultconfigs/solcarrot-server.toml | 26 - .../minecraft/voor-kia/server-icon.png | Bin 23263 -> 0 bytes .../minecraft/voor-kia/server.properties | 52 - configuration/services/minecraft.nix | 141 -- flake.nix | 34 +- lib/default.nix | 12 - lib/minecraft.nix | 61 - pkgs/build-support/fetchFromCurseForge.nix | 31 - pkgs/default.nix | 20 +- pkgs/minecraft/forge-server.nix | 120 - pkgs/minecraft/voor-kia-client.nix | 12 - pkgs/minecraft/voor-kia.nix | 10 - pkgs/minecraft/voor-kia/client-mods.json | 86 - pkgs/minecraft/voor-kia/mods.json | 625 ----- pkgs/minecraft/voor-kia/update-mods.py | 156 -- 207 files changed, 5 insertions(+), 17764 deletions(-) delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/EnderStorage.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/WeirdingGadget.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/WeirdingGadgetLimits.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/aiimprovements-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/alligator_snapping_turtle_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bald_eagle_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/blobfish_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bone_serpent_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_beached_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/capuchin_monkey_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cave_centipede_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cockroach_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crimson_mosquito_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crocodile_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crow_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/dropbear_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/elephant_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/emu_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/endergrade_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/enderiophage_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/fly_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/frilled_shark_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gazelle_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gorilla_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/grizzly_bear_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/guster_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hammerhead_shark_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hummingbird_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/kangaroo_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/komodo_dragon_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/leafcutter_anthill_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/lobster_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mantis_shrimp_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimic_octopus_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimicube_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/moose_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mungus_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/orca_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/platypus_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/raccoon_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/rattlesnake_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/roadrunner_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/seal_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/shoebill_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/snow_leopard_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/soul_vulture_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/spectre_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/straddler_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/stradpole_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/sunbird_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tarantula_hawk_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tasmanian_devil_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tiger_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/void_worm_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_mosco_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_toad_spawns.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/affixes.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/apotheosis.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/deadly.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/enchantments.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/garden.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/names.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/potion.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/spawner.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/apotheosis/village.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/appleskin-client.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/artifacts-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/attributefix-common-1.toml.bak delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/attributefix-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterburning-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettercaves-1_16.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettercaves/README.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettermineshafts-forge-1_16.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/README.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/biomeTags.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/variants.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/README.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals-1_16.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/README.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/monoliths.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/rifts.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/README.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/monoliths.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/rifts.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/bwncr-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/README.txt delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/byg-biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-sub-biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/byg-nether.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/byg-sub-biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/byg/byg-world.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/citadel-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/cookingforblockheads-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/cosmeticarmorreworked-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/create-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/decorative_blocks-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads/MarketRegistry.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/fastbench.cfg delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/fml.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/forge-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/hardcorerevival-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire-biomes.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/amethyst_gen_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/amphithere_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/cockatrice_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/cyclops_cave_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/deathworm_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/desert_myrmex_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_skeleton_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_lily_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/forest_troll_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/gorgon_temple_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/graveyard_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippocampus_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_black_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_brown_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_chestnut_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_creamy_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_dark_brown_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_gray_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_white_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/hydra_cave_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_skeleton_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_lily_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/jungle_myrmex_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_skeleton_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_lily_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/mausoleum_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/mountain_troll_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/ore_gen_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/pixie_village_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/sapphire_gen_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/sea_serpent_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/siren_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/snowy_troll_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/stymphalian_bird_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/iceandfire/wandering_cyclops_biomes.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/ironfurnaces-client.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/ironfurnaces.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/jeresources-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/jeresources.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/lottaterracotta-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/overworldtwo.json delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/pamhc2crops.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/pamhc2trees.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/passablefoliage-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/performant-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/platter-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_cell.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_gate.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/energizing.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cable.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cell.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_discharger.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_hopper.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/furnator.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/magmator.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/reactor.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/solar_panel.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/thermo_gen.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/items/battery.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/energy/player_transmitter.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/powah/general_common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/quark-common-1.toml.bak delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/quark-common-2.toml.bak delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/quark-common-3.toml.bak delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/quark-common-4.toml.bak delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/quark-common-5.toml.bak delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/quark-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/repairchests-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/rsgauges-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/snowrealmagic-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/snowundertrees-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/storagedrawers-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/supplementaries-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/supplementaries-registry.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/sweetconcrete-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/the_bumblezone-mod_compatibility.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/towers_of_the_wild-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/travelersbackpack-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/config/wstweaks-common.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/defaultconfigs/solcarrot-server.toml delete mode 100644 configuration/services/configs/minecraft/voor-kia/server-icon.png delete mode 100644 configuration/services/configs/minecraft/voor-kia/server.properties delete mode 100644 configuration/services/minecraft.nix delete mode 100644 lib/default.nix delete mode 100644 lib/minecraft.nix delete mode 100644 pkgs/build-support/fetchFromCurseForge.nix delete mode 100644 pkgs/minecraft/forge-server.nix delete mode 100644 pkgs/minecraft/voor-kia-client.nix delete mode 100644 pkgs/minecraft/voor-kia.nix delete mode 100644 pkgs/minecraft/voor-kia/client-mods.json delete mode 100644 pkgs/minecraft/voor-kia/mods.json delete mode 100644 pkgs/minecraft/voor-kia/update-mods.py diff --git a/configuration/default.nix b/configuration/default.nix index 8e9744d..b008454 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -6,7 +6,6 @@ }: { imports = [ ./services/gitea.nix - ./services/minecraft.nix ./services/nextcloud.nix ./services/webserver.nix ./services/starbound.nix @@ -25,7 +24,7 @@ }; nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) ["forge-server" "steam-runtime" "steamcmd"]; + builtins.elem (lib.getName pkg) ["steam-runtime" "steamcmd"]; sops = { defaultSopsFile = ../keys/external.yaml; @@ -41,7 +40,7 @@ useDHCP = false; interfaces.eth0.useDHCP = true; - firewall.allowedTCPPorts = [80 443 2222 2221 25565 21025]; + firewall.allowedTCPPorts = [80 443 2222 2221 21025]; }; time.timeZone = "Europe/London"; diff --git a/configuration/ids.nix b/configuration/ids.nix index 9b99011..352b4d3 100644 --- a/configuration/ids.nix +++ b/configuration/ids.nix @@ -2,12 +2,10 @@ ids.uids = { # System user ids start at 400 (see nixos/modules/programs/shadow.nix) webserver = 400; - minecraft = 401; # The limit is 999 }; ids.gids = { webserver = 400; - minecraft = 401; }; } diff --git a/configuration/services/configs/minecraft/voor-kia/config/EnderStorage.cfg b/configuration/services/configs/minecraft/voor-kia/config/EnderStorage.cfg deleted file mode 100644 index df6c551..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/EnderStorage.cfg +++ /dev/null @@ -1,14 +0,0 @@ -# The RegistryName for the Item to lock EnderChests and Tanks. -S:"personalItem"="minecraft:diamond" - -# Causes chests to lose personal settings and drop the diamond on break. -B:"anarchyMode"=false - -# The size of each inventory of EnderStorage, 0 = 3x3, 1 = 3x9, 2 = 6x9, default = 1 -I:"item_storage_size"=1 - -# Disables the tank on top of creators heads. -B:"disableCreatorVisuals"=false - -# Enable this to make EnderStorage use vanilla's EnderChest sounds instead of the standard chest. -B:"useVanillaEnderChestsSounds"=false diff --git a/configuration/services/configs/minecraft/voor-kia/config/WeirdingGadget.toml b/configuration/services/configs/minecraft/voor-kia/config/WeirdingGadget.toml deleted file mode 100644 index deb1f5b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/WeirdingGadget.toml +++ /dev/null @@ -1,12 +0,0 @@ - -#Server configuration settings -[server] - #The number of hours the player will be offline before deactivating (default 2 days) - #Range: 1 ~ 8760 - hoursBeforeDeactivation = 48 - #Disables Chunk loading, use if there is a crash happening in a chunk loaded area - emergencymode = false - #Width/length of chunks to be loaded, it is recommend this is an odd number (max 25) - #Range: 1 ~ 25 - chunkLoaderWidth = 3 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/WeirdingGadgetLimits.toml b/configuration/services/configs/minecraft/voor-kia/config/WeirdingGadgetLimits.toml deleted file mode 100644 index 31eeb1f..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/WeirdingGadgetLimits.toml +++ /dev/null @@ -1,13 +0,0 @@ - -#Limits for chunk loading -[chunkLoadingLimits] - #The number of tickets a player can be assigned instead of a mod. This is shared across all mods. - #Range: > 0 - maximumPlayerTickets = 500 - #No comment - #Range: 0 ~ 225 - maximumChunksPerTicket = 25 - #Maximum ticket count for the mod. Zero disables chunkloading capabilities. - #Range: > 0 - maximumModTickets = 200 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/aiimprovements-common.toml b/configuration/services/configs/minecraft/voor-kia/config/aiimprovements-common.toml deleted file mode 100644 index aca1132..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/aiimprovements-common.toml +++ /dev/null @@ -1,40 +0,0 @@ - -#Entity Settings -[entity] - - #General - [entity.general] - #Allows repeat remove calls to bubble to the top of the list to improve performance of repeat mob spawning. - enable_call_bubbling = true - #Allow AI tasks to be removed from entities at runtime. If this is disable no per mob or per mob type removes will run. - allow_remove_calls = true - - #Entity Mob - [entity.mob] - #Remove the look at goal (player or attack target) AI task. This will cause AIs to not face targets or walking directions. - remove_look_goal = false - #Replaces the default look controller with a version featuring cached tan math improving performance. Only works on vanilla style mobs, if a mod overrides the look controller it will skip. - replace_look_controller = true - #Remove the look at random position AI task. This will cause AIs to feel a little lifeless as they do not animate head movement while idle. - remove_look_random = false - - #Entity Fish - [entity.fish] - #Remove the fish's AI task to follow a leader fish to act as a group of fish. - remove_follow_leader = false - #Remove the fish's random swimming pathfinder. This will cause fish to stay in position more often. - remove_swim = false - #Remove the fish's panic pathfinder. This will cause fish to not run away. - remove_panic = false - #Remove the fish's AI task to avoid players. - remove_avoid_player = false - #Remove the fish's AI task to puff up when entities are nearby - remove_puff = false - - #Squid Fish - [entity.squid] - #Remove the squid's flee pathfinder. This will cause squid to not run away. - remove_flee = false - #Remove the squid's random movement pathfinder. This will cause squid to swim around randomly. - remove_random_move = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs.toml b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs.toml deleted file mode 100644 index 0226397..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs.toml +++ /dev/null @@ -1,415 +0,0 @@ - -[general] - #Whether polar bears should target seal mobs. - polarBearsAttackSeals = true - #Whether bone serpents are neutral or hostile. - neutralBoneSerpents = false - #Makes eagles teleport back to their owner if they get stuck during controlled flight. Useful for when playing with the Optifine mod, since this mod is the fault of many issues with the falconry system. - falconryTeleportsBack = false - #List of dimensions in which spawning void worms via mysterious worm items is allowed. - voidWormSpawnDimensions = ["minecraft:the_end"] - #True if straddleboard enchants are enabled. - straddleboardEnchants = true - #Whether Crimson Mosquitoes can transform into Warped Moscos if attacking a Mungus or any listed creature. - warpedMoscoTransformation = true - #Whether wild raccoons steal food from chests. - raccoonStealFromChests = true - #Whether mimicream can be used to duplicate items. - mimicreamRepair = true - #Whether acacia blossoms should drop from blocks tagged with #alexsmobs:drops_acacia_blossoms - acaciaBlossomsDropFromLeaves = true - #Whether lava can be bottled with a right click of a glass bottle. - lavaBottleEnabled = true - #Maximum world y-level that blobfish can spawn at - #Range: 0 ~ 256 - blobfishSpawnHeight = 38 - #Whether guster spawns are limited to when it is raining/thundering. - limitGusterSpawnsToWeather = true - #Whether all players should get an Animal Dictionary when joining the world for the first time. - giveBookOnStartup = true - #Maximum world y-level that cave centipedes can spawn at - #Range: 0 ~ 256 - caveCentipedeSpawnHeight = 30 - #Blacklist for items that mimicream cannot make a copy of. Ex: "minecraft:stone_sword", "alexsmobs:blood_sprayer" - mimicreamBlacklist = ["alexsmobs:blood_sprayer", "alexsmobs:hemolymph_blaster"] - #0 = no mungus biome transformation. 1 = mungus changes blocks, but not chunk's biome. 2 = mungus transforms blocks and biome of chunk. - #Range: 0 ~ 2 - mungusBiomeTransformationType = 2 - #Max Health of the void worm boss. - #Range: 0.0 ~ 1000000.0 - voidWormMaxHealth = 160.0 - #All void worm damage is scaled to this. - #Range: 0.0 ~ 100.0 - voidWormDamageModifier = 1.0 - #Whether the void worm boss is summonable or not, via the mysterious worm item. - voidWormSummonable = true - #List of all mungus mushrooms, biome transformations and surface blocks. Each is seperated by a |. Add an entry with a block registry name, biome registry name, and block registry name(for the ground). - mungusBiomeMatches = ["minecraft:red_mushroom|minecraft:mushroom_fields|minecraft:mycelium", "minecraft:brown_mushroom|minecraft:mushroom_fields|minecraft:mycelium", "minecraft:crimson_fungus|minecraft:crimson_forest|minecraft:crimson_nylium", "minecraft:warped_fungus|minecraft:warped_forest|minecraft:warped_nylium"] - #Percent chance for leafcutter ants to break leaves blocks when harvesting. Set to zero so that they can not break any blocks. - #Range: 0.0 ~ 1.0 - leafcutterAntBreakLeavesChance = 0.2 - #Whether to disable certain aspects of the Lava Vision Potion. Enable if issues with shaders persist. - shadersCompat = false - #List of extra(non mungus) mobs that will trigger a crimson mosquito to become a warped mosquito. Ex: "minecraft:mooshroom", "alexsmobs:warped_toad" - warpedMoscoMobTriggers = [""] - #1 out of this number chance for leaves to drop a banana when broken. Fortune is automatically factored in - #Range: > 0 - bananaChance = 200 - #Max number of ant entities allowed inside a leafcutter anthill. - #Range: 2 ~ 100000 - leafcutterAntColonySize = 20 - #Whether soul vulture spawns should be restricted solely to the nether fossil structure or to whatever biome is specified in their respective biome config. - soulVultureSpawnOnFossil = true - #Makes Tarantula Hawks fireproof, perfect if you also want these guys to spawn in the nether. - fireproofTarantulaHawk = false - #Percent chance for fungus to grow per each leaf a leafcutter ant returns to the colony. - #Range: 0.0 ~ 1.0 - leafcutterAntFungusGrowChance = 0.3 - #Whether fish oil gives players a special levitation effect. - fishOilMeme = true - #Whether mimicubes spawns should be restricted solely to the end city structure or to whatever biome is specified in their respective biome config. - mimicubeSpawnInEndCity = true - #Whether bananas should drop from blocks tagged with #alexsmobs:drops_bananas - bananasDropFromLeaves = true - #Relative volume of cachalot whales compared to other animals. Note that irl they are the loudest animal. Turn this down if you find their clicks annoying. - #Range: 0.0 ~ 10.0 - cachalotVolume = 3.0 - #Whether emu should target skeletons. - emuTargetSkeletons = true - #Lava Opacity for the Lava Vision Potion. - #Range: 0.01 ~ 1.0 - lavaVisionOpacity = 0.65 - #Whether spiders should target fly mobs. - spidersAttackFlies = true - #Whether wolves should target moose mobs. - wolvesAttackMoose = true - #Percent chance for emu leggings to dodge projectile attacks. - #Range: 0.0 ~ 1.0 - emuPantsDodgeChance = 0.45 - #How many feedings of leaves does a leafcutter colony need in order to regain a worker ant, if below half the max members. - #Range: 2 ~ 100000 - leafcutterAntRepopulateFeedings = 25 - #Whether wandering traders offer items like acacia blossoms, mosquito larva, crocodile egg, etc. - wanderingTraderOffers = true - - [general.spawning] - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - boneSerpentSpawnWeight = 8 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - alligatorSnappingTurtleSpawnRolls = 1 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - frilledSharkSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - stradpoleSpawnRolls = 3 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - mantisShrimpSpawnWeight = 15 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - lobsterSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - spectreSpawnWeight = 10 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - endergradeSpawnWeight = 10 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - sealSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - sunbirdSpawnRolls = 15 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - shoebillSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - sunbirdSpawnWeight = 2 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - raccoonSpawnWeight = 10 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - mungusSpawnRolls = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - mimicubeSpawnWeight = 40 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - blobfishSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - crowSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - tasmanianDevilSpawnWeight = 10 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - grizzlyBearSpawnWeight = 8 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - elephantSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - caveCentipedeSpawnWeight = 8 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - shoebillSpawnWeight = 10 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - sealSpawnWeight = 30 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - baldEagleSpawnWeight = 15 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - kangarooSpawnWeight = 25 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - rattlesnakeSpawnWeight = 12 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - soulVultureSpawnWeight = 30 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - enderiophageSpawnRolls = 2 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - mooseSpawnWeight = 15 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - warpedMoscoSpawnRolls = 1000 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - platypusSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - tarantulaHawkSpawnRolls = 1 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - soulVultureSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - orcaSpawnRolls = 6 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - capuchinMonkeySpawnWeight = 55 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - alligatorSnappingTurtleSpawnWeight = 20 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - boneSeprentSpawnRolls = 40 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - mimicubeSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn. NOTE: By default the warped mosco doesn't spawn in any biomes. - #Range: 0 ~ 1000 - warpedMoscoSpawnWeight = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - cockroachSpawnWeight = 4 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - gazelleSpawnWeight = 40 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - gorillaSpawnWeight = 50 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - flySpawnRolls = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - platypusSpawnWeight = 30 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - warpedToadSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - gorillaSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - snowLeopardSpawnWeight = 20 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - orcaSpawnWeight = 2 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - mimicOctopusSpawnWeight = 9 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - tigerSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - dropbearSpawnRolls = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - crimsonMosquitoSpawnWeight = 15 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - straddlerSpawnWeight = 85 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - hummingbirdSpawnWeight = 39 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - roadrunnerSpawnRolls = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - gusterSpawnWeight = 35 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - endergradeSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - elephantSpawnWeight = 30 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - tasmanianDevilSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - hammerheadSharkSpawnWeight = 8 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - straddlerSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - voidWormSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - gazelleSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - mantisShrimpSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - mungusSpawnWeight = 4 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - voidWormSpawnWeight = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - crocSpawnRolls = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - stradpoleSpawnWeight = 10 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - mooseSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - spectreSpawnRolls = 5 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - caveCentipedeSpawnRolls = 1 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - blobfishSpawnWeight = 30 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - baldEagleSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - tigerSpawnWeight = 100 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - raccoonSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - warpedToadSpawnWeight = 80 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - frilledSharkSpawnWeight = 11 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - emuSpawnWeight = 20 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - kangarooSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - crowSpawnWeight = 10 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - mimicOctopusSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - komodoDragonSpawnWeight = 4 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - flySpawnWeight = 3 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - snowLeopardSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - cachalotWhaleSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - cachalotWhaleSpawnWeight = 2 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - komodoDragonSpawnRolls = 1 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - emuSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - tarantulaHawkSpawnWeight = 6 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - crocodileSpawnWeight = 40 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - gusterSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - cockroachSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - rattlesnakeSpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - roadrunnerSpawnWeight = 15 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - lobsterSpawnWeight = 7 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - capuchinMonkeySpawnRolls = 0 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - dropbearSpawnWeight = 19 - #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn - #Range: 0 ~ 1000 - enderiophageSpawnWeight = 4 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - hummingbirdSpawnRolls = 1 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - grizzlyBearSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - crimsonMosquitoSpawnRolls = 0 - #Random roll chance to enable mob spawning. Higher number = lower chance of spawning - #Range: > 0 - hammerheadSharkSpawnRolls = 1 - - [general.spawning.uniqueSpawning] - #Delay (in ticks) between attempts to spawn beached cachalot whales. Default is a single day. Works like wandering traders. - #Range: > 0 - beachedCachalotWhaleSpawnDelay = 24000 - #Percent chance for leafcutter anthills to spawn as world gen in each chunk. Set to zero to disable spawning. - #Range: 0.0 ~ 1.0 - leafcutterAnthillSpawnChance = 0.004999999888241291 - #Whether to enable beached cachalot whales to spawn on beaches during thunder storms. - beachedCachalotWhales = true - #Percent chance increase for each failed attempt to spawn a beached cachalot whale. Higher value = more spawns. - #Range: 0 ~ 100 - beachedCachalotWhaleSpawnChance = 5 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/alligator_snapping_turtle_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/alligator_snapping_turtle_spawns.json deleted file mode 100644 index 2f80bc7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/alligator_snapping_turtle_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "swamp" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bald_eagle_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bald_eagle_spawns.json deleted file mode 100644 index e2ade4f..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bald_eagle_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mountain" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/blobfish_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/blobfish_spawns.json deleted file mode 100644 index 696a296..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/blobfish_spawns.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_lukewarm_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_cold_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_frozen_ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bone_serpent_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bone_serpent_spawns.json deleted file mode 100644 index b693e3d..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/bone_serpent_spawns.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "nether" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_beached_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_beached_spawns.json deleted file mode 100644 index cfb150a..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_beached_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "beach" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_spawns.json deleted file mode 100644 index 15f385f..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cachalot_whale_spawns.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "cold" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:lukewarm_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_lukewarm_ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/capuchin_monkey_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/capuchin_monkey_spawns.json deleted file mode 100644 index feabd66..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/capuchin_monkey_spawns.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "jungle" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:bamboo_jungle" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:bamboo_jungle_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cave_centipede_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cave_centipede_spawns.json deleted file mode 100644 index 32ef084..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cave_centipede_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "mushroom" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cockroach_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cockroach_spawns.json deleted file mode 100644 index 32ef084..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/cockroach_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "mushroom" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crimson_mosquito_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crimson_mosquito_spawns.json deleted file mode 100644 index ceeb04c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crimson_mosquito_spawns.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:crimson_forest" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "byg:crimson_garden" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "biomesoplenty:visceral_heap" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crocodile_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crocodile_spawns.json deleted file mode 100644 index 5c2a548..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crocodile_spawns.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "swamp" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "river" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "cold" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crow_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crow_spawns.json deleted file mode 100644 index ed8b56d..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/crow_spawns.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "plains" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/dropbear_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/dropbear_spawns.json deleted file mode 100644 index 6abab58..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/dropbear_spawns.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:nether_wastes" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "biomesoplenty:crystalline_chasm" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/elephant_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/elephant_spawns.json deleted file mode 100644 index 9e69d3b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/elephant_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/emu_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/emu_spawns.json deleted file mode 100644 index 7de7826..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/emu_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/endergrade_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/endergrade_spawns.json deleted file mode 100644 index 5d3ca68..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/endergrade_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "end" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:the_end" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/enderiophage_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/enderiophage_spawns.json deleted file mode 100644 index 427b044..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/enderiophage_spawns.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "end" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:the_end" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:end_barrens" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:end_highlands" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:small_end_islands" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/fly_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/fly_spawns.json deleted file mode 100644 index a8ddaed..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/fly_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": true, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/frilled_shark_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/frilled_shark_spawns.json deleted file mode 100644 index 696a296..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/frilled_shark_spawns.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_lukewarm_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_cold_ocean" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:deep_frozen_ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gazelle_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gazelle_spawns.json deleted file mode 100644 index 9e69d3b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gazelle_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gorilla_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gorilla_spawns.json deleted file mode 100644 index feabd66..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/gorilla_spawns.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "jungle" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:bamboo_jungle" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:bamboo_jungle_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/grizzly_bear_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/grizzly_bear_spawns.json deleted file mode 100644 index 18bc5d3..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/grizzly_bear_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "forest" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/guster_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/guster_spawns.json deleted file mode 100644 index 7f73edd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/guster_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hammerhead_shark_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hammerhead_shark_spawns.json deleted file mode 100644 index 8f5ff21..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hammerhead_shark_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "hot" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hummingbird_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hummingbird_spawns.json deleted file mode 100644 index bb35060..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/hummingbird_spawns.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:flower_forest" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:sunflower_plains" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "jungle" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/kangaroo_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/kangaroo_spawns.json deleted file mode 100644 index 7de7826..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/kangaroo_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/komodo_dragon_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/komodo_dragon_spawns.json deleted file mode 100644 index c1bcd89..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/komodo_dragon_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/leafcutter_anthill_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/leafcutter_anthill_spawns.json deleted file mode 100644 index feabd66..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/leafcutter_anthill_spawns.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "jungle" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:bamboo_jungle" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:bamboo_jungle_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/lobster_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/lobster_spawns.json deleted file mode 100644 index cfb150a..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/lobster_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "beach" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mantis_shrimp_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mantis_shrimp_spawns.json deleted file mode 100644 index 8f5ff21..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mantis_shrimp_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "hot" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimic_octopus_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimic_octopus_spawns.json deleted file mode 100644 index 5c1d0ef..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimic_octopus_spawns.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "hot" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:deep_warm_ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimicube_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimicube_spawns.json deleted file mode 100644 index 5d3ca68..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mimicube_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "end" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:the_end" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/moose_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/moose_spawns.json deleted file mode 100644 index dc1dd28..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/moose_spawns.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "wasteland" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mungus_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mungus_spawns.json deleted file mode 100644 index 927929a..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/mungus_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mushroom" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "rare" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/orca_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/orca_spawns.json deleted file mode 100644 index 0bcd599..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/orca_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "cold" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/platypus_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/platypus_spawns.json deleted file mode 100644 index 8b1a91c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/platypus_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "river" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "cold" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "biomesoplenty:tundra_bog" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/raccoon_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/raccoon_spawns.json deleted file mode 100644 index ed8b56d..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/raccoon_spawns.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "plains" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/rattlesnake_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/rattlesnake_spawns.json deleted file mode 100644 index 3796884..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/rattlesnake_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/roadrunner_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/roadrunner_spawns.json deleted file mode 100644 index 3796884..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/roadrunner_spawns.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/seal_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/seal_spawns.json deleted file mode 100644 index cd1e2c6..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/seal_spawns.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "beach" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/shoebill_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/shoebill_spawns.json deleted file mode 100644 index 2f80bc7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/shoebill_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "swamp" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/snow_leopard_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/snow_leopard_spawns.json deleted file mode 100644 index 5234f77..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/snow_leopard_spawns.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mountain" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/soul_vulture_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/soul_vulture_spawns.json deleted file mode 100644 index dcee03e..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/soul_vulture_spawns.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:soul_sand_valley" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "byg:warped_desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/spectre_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/spectre_spawns.json deleted file mode 100644 index 7593141..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/spectre_spawns.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:small_end_islands" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/straddler_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/straddler_spawns.json deleted file mode 100644 index 5708081..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/straddler_spawns.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:basalt_deltas" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/stradpole_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/stradpole_spawns.json deleted file mode 100644 index 5708081..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/stradpole_spawns.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:basalt_deltas" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/sunbird_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/sunbird_spawns.json deleted file mode 100644 index c0efaa4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/sunbird_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mountain" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tarantula_hawk_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tarantula_hawk_spawns.json deleted file mode 100644 index 7f73edd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tarantula_hawk_spawns.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tasmanian_devil_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tasmanian_devil_spawns.json deleted file mode 100644 index c0342a8..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tasmanian_devil_spawns.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "cold" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:jungle_egde" - }, - { - "type": "REGISTRY_NAME", - "negate": true, - "value": "minecraft:modified_jungle_edge" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tiger_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tiger_spawns.json deleted file mode 100644 index f62ca32..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/tiger_spawns.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:bamboo_jungle" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:bamboo_jungle_hills" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "biomesoplenty:bamboo_blossom_grove" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "biomesoplenty:cherry_blossom_grove" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/void_worm_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/void_worm_spawns.json deleted file mode 100644 index 333b7b9..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/void_worm_spawns.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "biomes": [] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_mosco_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_mosco_spawns.json deleted file mode 100644 index 333b7b9..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_mosco_spawns.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "biomes": [] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_toad_spawns.json b/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_toad_spawns.json deleted file mode 100644 index 445320d..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/alexsmobs/warped_toad_spawns.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:warped_forest" - } - ], - [ - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "byg:crimson_garden" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/affixes.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/affixes.cfg deleted file mode 100644 index 031011a..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/affixes.cfg +++ /dev/null @@ -1,212 +0,0 @@ -# Configuration file - -armor { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -armor_toughness { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -arrow_catcher { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 1] - I:Weight=1 -} - - -attack_speed { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -cleave { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -cold_damage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -crit_chance { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -crit_damage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -current_hp_damage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -damage_chain { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 1] - I:Weight=1 -} - - -disengage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -draw_speed { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -eldritch_block { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 1] - I:Weight=1 -} - - -enchantability { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -execute { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -fire_damage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -life_steal { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -loot_pinata { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -magic_arrow { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 1] - I:Weight=1 -} - - -max_crit { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 1] - I:Weight=1 -} - - -max_health { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -movement_speed { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -omnitool { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -overheal { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 4] - I:Weight=4 -} - - -piercing { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 0] - I:Weight=0 -} - - -radius_mining { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -reach_distance { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -shield_damage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -shield_speed { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 5] - I:Weight=5 -} - - -snare_hit { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 1] - I:Weight=1 -} - - -snipe_damage { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 3] - I:Weight=3 -} - - -spectral_shot { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -spiked_shield { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -teleport_drops { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 2] - I:Weight=2 -} - - -torch_placement { - # The weight of this affix, relative to others that may apply to the same item. [range: 0 ~ 2147483647, default: 4] - I:Weight=4 -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/apotheosis.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/apotheosis.cfg deleted file mode 100644 index 40dd127..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/apotheosis.cfg +++ /dev/null @@ -1,23 +0,0 @@ -# Configuration file - -general { - # If the deadly module is loaded. [default: true] - B:"Enable Deadly Module"=true - - # If the enchantment module is enabled. [default: true] - B:"Enable Enchantment Module"=true - - # If the garden module is loaded. [default: true] - B:"Enable Garden Module"=true - - # If the potion module is loaded. [default: true] - B:"Enable Potion Module"=true - - # If the spawner module is enabled. [default: true] - B:"Enable Spawner Module"=true - - # If the village module is loaded. [default: true] - B:"Enable Village Module"=true -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/deadly.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/deadly.cfg deleted file mode 100644 index 8b1b5e8..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/deadly.cfg +++ /dev/null @@ -1,222 +0,0 @@ -# Configuration file - -affixes { - # A list of type overrides for the affix loot system. Format is |. Types are SWORD, RANGED, PICKAXE, SHOVEL, AXE, SHIELD [default: [minecraft:stick|SWORD]] - S:"Equipment Type Overrides" < - minecraft:stick|SWORD - > - - # The 1/n chance that a naturally spawned mob will be granted an affix item. 0 to disable. [range: 0 ~ 500000, default: 125] - I:"Random Affix Chance"=250 -} - - -bosses { - S:"Blacklisted Potions" < - forbidden_arcanus:spectral_vision - > - S:"Boss Filler Block"=minecraft:red_sandstone - I:"Boss Rarity Offset"=475 - S:"Boss Spawner Mobs" < - 3@minecraft:zombie - 3@minecraft:skeleton - 2@minecraft:husk - 2@minecraft:stray - 1@minecraft:wither_skeleton - 1@minecraft:pillager - > - S:"Fire Resistance"=1.0 - S:"Max Damage Bonus"=4.5 - S:"Max Health Multiplier"=8.0 - S:"Max Knockback Resist"=1.0 - I:"Max Regen Level"=2 - I:"Max Resistance Level"=3 - S:"Max Speed Multiplier"=1.4 - S:"Min Damage Bonus"=2.0 - S:"Min Health Multiplier"=4.0 - S:"Min Knockback Resist"=0.65 - I:"Min Regen Level"=0 - I:"Min Resistance Level"=0 - S:"Min Speed Multiplier"=1.1 - S:"Random Enchantment Chance"=0.45 - S:"Random Potion Chance"=0.65 - - # The 1/n chance that a naturally spawned mob that can see the sky is transformed into a boss. 0 to disable. [range: 0 ~ 500000, default: 85] - I:"Surface Boss Chance"=600 - - # If a lightning bolt strikes when a surface boss spawn occurs. [default: true] - B:"Surface Boss Lightning"=true - S:"Water Breathing"=1.0 -} - - -"brutal spawners" { - S:"Brutal Potion Effects" < - minecraft:resistance@2 - minecraft:fire_resistance@1 - minecraft:regeneration@1 - minecraft:speed@2 - minecraft:water_breathing@1 - minecraft:strength@1 - > - S:"Brutal Spawner Mobs" < - 3@minecraft:zombie - 3@minecraft:skeleton - 2@minecraft:husk - 2@minecraft:stray - 1@minecraft:spider - > -} - - -frequencies { - S:"Boss Chance"=0.07 - S:"Brutal Spawner Chance"=0.18 - S:"Swarm Spawner Chance"=0.2 -} - - -frequency { - # The number of generation attempts (per chunk) for boss dungeons. [range: 0 ~ 50000, default: 8] - I:"Boss Dungeon"=8 - - # The number of generation attempts (per chunk) for boss dungeon variant 2. [range: 0 ~ 50000, default: 8] - I:"Boss Dungeon Variant 2"=8 - - # The number of generation attempts (per chunk) for ore troves. [range: 0 ~ 50000, default: 8] - I:"Ore Troves"=8 - - # The number of generation attempts (per chunk) for rogue spawners. [range: 0 ~ 50000, default: 4] - I:"Rogue Spawners"=4 - - # The 1/n chance (per chunk) that a tome tower may attempt generation. 0 = disabled, lower = more chances. [range: 0 ~ 50000, default: 125] - I:"Tome Tower"=125 -} - - -general { - # The biomes that the deadly module will not generate in. [default: [minecraft:warm_ocean], [minecraft:lukewarm_ocean], [minecraft:cold_ocean], [minecraft:frozen_ocean], [minecraft:deep_warm_ocean], [minecraft:deep_frozen_ocean], [minecraft:deep_lukewarm_ocean], [minecraft:deep_cold_ocean], [minecraft:ocean], [minecraft:deep_ocean]] - S:"Generation Biome Blacklist" < - minecraft:warm_ocean - minecraft:lukewarm_ocean - minecraft:cold_ocean - minecraft:frozen_ocean - minecraft:deep_warm_ocean - minecraft:deep_frozen_ocean - minecraft:deep_lukewarm_ocean - minecraft:deep_cold_ocean - minecraft:ocean - minecraft:deep_ocean - > - - # The dimensions that the deadly module will generate in. [default: [overworld]] - S:"Generation Dimension Whitelist" < - overworld - > - - # The 1/n chance that a rogue spawner will generate with a CHEST_VALUABLE instead of it's default chest. 0 to disable. [range: 0 ~ 80000, default: 9] - I:"Spawner Rare Loot Chance"=9 -} - - -"random spawners" { - I:"alexsmobs:bone_serpent"=1 - I:"alexsmobs:bone_serpent_part"=1 - I:"alexsmobs:guster"=1 - I:"alexsmobs:mimicube"=1 - I:"alexsmobs:soul_vulture"=1 - I:"alexsmobs:straddler"=1 - I:"alexsmobs:warped_mosco"=1 - I:"artifacts:mimic"=1 - I:"minecraft:blaze"=8 - I:"minecraft:cave_spider"=8 - I:"minecraft:creeper"=8 - I:"minecraft:drowned"=8 - I:"minecraft:elder_guardian"=8 - I:"minecraft:ender_dragon"=8 - I:"minecraft:enderman"=8 - I:"minecraft:endermite"=8 - I:"minecraft:evoker"=8 - I:"minecraft:ghast"=8 - I:"minecraft:giant"=8 - I:"minecraft:guardian"=8 - I:"minecraft:hoglin"=8 - I:"minecraft:husk"=8 - I:"minecraft:illusioner"=8 - I:"minecraft:magma_cube"=8 - I:"minecraft:phantom"=8 - I:"minecraft:piglin"=8 - I:"minecraft:piglin_brute"=8 - I:"minecraft:pillager"=8 - I:"minecraft:ravager"=8 - I:"minecraft:shulker"=8 - I:"minecraft:silverfish"=8 - I:"minecraft:skeleton"=8 - I:"minecraft:slime"=8 - I:"minecraft:spider"=8 - I:"minecraft:stray"=8 - I:"minecraft:vex"=8 - I:"minecraft:vindicator"=8 - I:"minecraft:witch"=8 - I:"minecraft:wither"=8 - I:"minecraft:wither_skeleton"=8 - I:"minecraft:zoglin"=8 - I:"minecraft:zombie"=8 - I:"minecraft:zombie_villager"=8 - I:"minecraft:zombified_piglin"=8 - I:"quark:forgotten"=1 - I:"quark:wraith"=1 - I:"quark:wrapped"=1 - I:"undergarden:brute"=1 - I:"undergarden:forgotten_guardian"=1 - I:"undergarden:masticator"=1 - I:"undergarden:muncher"=1 - I:"undergarden:nargoyle"=1 - I:"undergarden:rotbeast"=1 - I:"undergarden:rotdweller"=1 - I:"undergarden:rotling"=1 - I:"undergarden:rotwalker"=1 - I:"undergarden:sploogie"=1 - I:"undergarden:stoneborn"=1 -} - - -"spawner stats: brutal spawners" { - I:"Max Delay"=400 - I:"Max Nearby Entities"=6 - I:"Min Delay"=200 - I:"Player Range"=16 - I:"Spawn Count"=6 - I:"Spawn Delay"=20 - I:"Spawn Range"=4 -} - - -"spawner stats: swarm spawners" { - I:"Max Delay"=300 - I:"Max Nearby Entities"=32 - I:"Min Delay"=75 - I:"Player Range"=8 - I:"Spawn Count"=8 - I:"Spawn Delay"=20 - I:"Spawn Range"=6 -} - - -"swarm spawners" { - S:"Swarm Spawner Mobs" < - 4@minecraft:zombie - 2@minecraft:skeleton - 5@minecraft:spider - 8@minecraft:cave_spider - 1@minecraft:creeper - > -} - - -wanderer { - # If the wandering trader may sell affix loot items as a rare trade. [default: true] - B:"Affix Trades"=true -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/enchantments.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/enchantments.cfg deleted file mode 100644 index 0144ba8..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/enchantments.cfg +++ /dev/null @@ -1,1007 +0,0 @@ -# Configuration file - -"alexsmobs:board_return" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"alexsmobs:lavawax" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"alexsmobs:serpentfriend" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"alexsmobs:straddle_jump" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:bane_of_illagers" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 10] - I:"Max Level"=10 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:berserk" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 4] - I:"Max Level"=4 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:capturing" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:crescendo" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:depth_miner" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:hell_infusion" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:icy_thorns" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 4] - I:"Max Level"=4 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:knowledge" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 4] - I:"Max Level"=4 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:life_mending" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 4] - I:"Max Level"=4 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:magic_protection" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:natures_blessing" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:obliteration" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 9] - I:"Max Level"=9 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:rebounding" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 6] - I:"Max Level"=6 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:reflective" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:scavenger" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 3] - I:"Max Level"=3 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:sea_infusion" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:shield_bash" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:splitting" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 9] - I:"Max Level"=9 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:stable_footing" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:tempting" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"apotheosis:true_infinity" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"create:capacity" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"create:potato_recovery" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:aqua_affinity" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:bane_of_arthropods" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 10] - I:"Max Level"=10 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:binding_curse" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:blast_protection" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:channeling" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:depth_strider" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:efficiency" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 9] - I:"Max Level"=9 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:feather_falling" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:fire_aspect" { - # The max level of this enchantment - normally 2. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:fire_protection" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:flame" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:fortune" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:frost_walker" { - # The max level of this enchantment - normally 2. [range: 1 ~ 127, default: 6] - I:"Max Level"=6 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:impaling" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 10] - I:"Max Level"=10 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:infinity" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:knockback" { - # The max level of this enchantment - normally 2. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:looting" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:loyalty" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:luck_of_the_sea" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:lure" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:mending" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:multishot" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:piercing" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:power" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 9] - I:"Max Level"=9 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:projectile_protection" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:protection" { - # The max level of this enchantment - normally 4. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:punch" { - # The max level of this enchantment - normally 2. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:quick_charge" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:respiration" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:riptide" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:sharpness" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 9] - I:"Max Level"=9 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:silk_touch" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:smite" { - # The max level of this enchantment - normally 5. [range: 1 ~ 127, default: 10] - I:"Max Level"=10 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:soul_speed" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 7] - I:"Max Level"=7 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:sweeping" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:thorns" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 5] - I:"Max Level"=5 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:unbreaking" { - # The max level of this enchantment - normally 3. [range: 1 ~ 127, default: 8] - I:"Max Level"=8 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"minecraft:vanishing_curse" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"passablefoliage:leaf_walker" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - -"the_bumblezone:comb_cutter" { - # The max level of this enchantment - normally 1. [range: 1 ~ 127, default: 1] - I:"Max Level"=1 - - # A function to determine the max enchanting power. The variable "x" is level. See: https://github.com/uklimaschewski/EvalEx#usage-examples [default: ] - S:"Max Power Function"= - - # The min level of this enchantment. [range: 1 ~ 127, default: 1] - I:"Min Level"=1 - - # A function to determine the min enchanting power. [default: ] - S:"Min Power Function"= -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/garden.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/garden.cfg deleted file mode 100644 index 14160db..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/garden.cfg +++ /dev/null @@ -1,14 +0,0 @@ -# Configuration file - -general { - # The max height a stack of bamboo may grow to. Vanilla is 16. [range: 1 ~ 255, default: 32] - I:"Bamboo Height"=16 - - # The max height a stack of cacti may grow to. Vanilla is 3. [range: 1 ~ 255, default: 5] - I:"Cactus Height"=5 - - # The max height a stack of reeds may grow to. Vanilla is 3. [range: 1 ~ 255, default: 255] - I:"Reed Height"=5 -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/names.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/names.cfg deleted file mode 100644 index 127f4c8..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/names.cfg +++ /dev/null @@ -1,1198 +0,0 @@ -# Configuration file - -armors { - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: byg:ametrine_helmet, byg:ametrine_chestplate, byg:ametrine_leggings, byg:ametrine_boots - # [default: ] - S:AMETRINE < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:chainmail_helmet, minecraft:chainmail_chestplate, minecraft:chainmail_leggings, minecraft:chainmail_boots - # [default: [Chainmail], [Chain], [Chain Link], [Scale]] - S:CHAIN < - Chainmail - Chain - Chain Link - Scale - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:cloggrum_helmet, undergarden:cloggrum_chestplate, undergarden:cloggrum_leggings, undergarden:cloggrum_boots - # [default: ] - S:CLOGGRUM < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: create:copper_backtank, create:diving_helmet, create:diving_boots - # [default: ] - S:COPPER < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:diamond_helmet, minecraft:diamond_chestplate, minecraft:diamond_leggings, minecraft:diamond_boots - # [default: [Diamond], [Zircon], [Gemstone], [Jewel], [Crystal]] - S:DIAMOND < - Diamond - Zircon - Gemstone - Jewel - Crystal - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:froststeel_helmet, undergarden:froststeel_chestplate, undergarden:froststeel_leggings, undergarden:froststeel_boots - # [default: ] - S:FROSTSTEEL < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:golden_helmet, minecraft:golden_chestplate, minecraft:golden_leggings, minecraft:golden_boots - # [default: [Golden], [Gold], [Gilt], [Auric], [Ornate]] - S:GOLD < - Golden - Gold - Gilt - Auric - Ornate - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:iron_helmet, minecraft:iron_chestplate, minecraft:iron_leggings, minecraft:iron_boots - # [default: [Iron], [Steel], [Ferrous], [Rusty], [Wrought Iron]] - S:IRON < - Iron - Steel - Ferrous - Rusty - Wrought Iron - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:leather_helmet, minecraft:leather_chestplate, minecraft:leather_leggings, minecraft:leather_boots, quark:forgotten_hat, quark:backpack - # [default: [Leather], [Rawhide], [Lamellar], [Cow Skin]] - S:LEATHER < - Leather - Rawhide - Lamellar - Cow Skin - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:masticated_chestplate - # [default: ] - S:MASTICATED < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:netherite_helmet, minecraft:netherite_chestplate, minecraft:netherite_leggings, minecraft:netherite_boots - # [default: [Burnt], [Embered], [Fiery], [Hellborn], [Flameforged]] - S:NETHERITE < - Burnt - Embered - Fiery - Hellborn - Flameforged - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:turtle_helmet - # [default: [Tortollan], [Very Tragic], [Environmental], [Organic]] - S:TURTLE < - Tortollan - Very Tragic - Environmental - Organic - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:utheric_helmet, undergarden:utheric_chestplate, undergarden:utheric_leggings, undergarden:utheric_boots - # [default: ] - S:UTHERIC < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:centipede_leggings - # [default: ] - S:alexsmobs_centipede_leggings < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:crocodile_chestplate - # [default: ] - S:alexsmobs_crocodile_chestplate < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:emu_leggings - # [default: ] - S:alexsmobs_emu_leggings < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:fedora - # [default: ] - S:alexsmobs_fedora < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:frontier_cap - # [default: ] - S:alexsmobs_frontier_cap < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:moose_headgear - # [default: ] - S:alexsmobs_moose_headgear < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:roadrunner_boots - # [default: ] - S:alexsmobs_roadrunner_boots < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:sombrero - # [default: ] - S:alexsmobs_sombrero < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:spiked_turtle_shell - # [default: ] - S:alexsmobs_spiked_turtle_shell < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: alexsmobs:tarantula_hawk_elytra - # [default: ] - S:alexsmobs_tarantula_hawk_elytra < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_amythest_helmet, iceandfire:armor_amythest_chestplate, iceandfire:armor_amythest_leggings, iceandfire:armor_amythest_boots - # [default: ] - S:iceandfire_armor_amythest_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_black_helmet, iceandfire:armor_black_chestplate, iceandfire:armor_black_leggings, iceandfire:armor_black_boots - # [default: ] - S:iceandfire_armor_black_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_blue_helmet, iceandfire:armor_blue_chestplate, iceandfire:armor_blue_leggings, iceandfire:armor_blue_boots - # [default: ] - S:iceandfire_armor_blue_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_bronze_helmet, iceandfire:armor_bronze_chestplate, iceandfire:armor_bronze_leggings, iceandfire:armor_bronze_boots - # [default: ] - S:iceandfire_armor_bronze_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_copper_helmet, iceandfire:armor_copper_chestplate, iceandfire:armor_copper_leggings, iceandfire:armor_copper_boots - # [default: ] - S:iceandfire_armor_copper_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_copper_metal_helmet, iceandfire:armor_copper_metal_chestplate, iceandfire:armor_copper_metal_leggings, iceandfire:armor_copper_metal_boots - # [default: ] - S:iceandfire_armor_copper_metal_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_electric_helmet, iceandfire:armor_electric_chestplate, iceandfire:armor_electric_leggings, iceandfire:armor_electric_boots - # [default: ] - S:iceandfire_armor_electric_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_gray_helmet, iceandfire:armor_gray_chestplate, iceandfire:armor_gray_leggings, iceandfire:armor_gray_boots - # [default: ] - S:iceandfire_armor_gray_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_green_helmet, iceandfire:armor_green_chestplate, iceandfire:armor_green_leggings, iceandfire:armor_green_boots - # [default: ] - S:iceandfire_armor_green_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_red_helmet, iceandfire:armor_red_chestplate, iceandfire:armor_red_leggings, iceandfire:armor_red_boots - # [default: ] - S:iceandfire_armor_red_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_sapphire_helmet, iceandfire:armor_sapphire_chestplate, iceandfire:armor_sapphire_leggings, iceandfire:armor_sapphire_boots - # [default: ] - S:iceandfire_armor_sapphire_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_silver_helmet, iceandfire:armor_silver_chestplate, iceandfire:armor_silver_leggings, iceandfire:armor_silver_boots - # [default: ] - S:iceandfire_armor_silver_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_silver_metal_helmet, iceandfire:armor_silver_metal_chestplate, iceandfire:armor_silver_metal_leggings, iceandfire:armor_silver_metal_boots - # [default: ] - S:iceandfire_armor_silver_metal_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:armor_white_helmet, iceandfire:armor_white_chestplate, iceandfire:armor_white_leggings, iceandfire:armor_white_boots - # [default: ] - S:iceandfire_armor_white_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:blindfold - # [default: ] - S:iceandfire_blindfold < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:deathworm_red_helmet, iceandfire:deathworm_red_chestplate, iceandfire:deathworm_red_leggings, iceandfire:deathworm_red_boots - # [default: ] - S:iceandfire_deathworm_red_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:deathworm_white_helmet, iceandfire:deathworm_white_chestplate, iceandfire:deathworm_white_leggings, iceandfire:deathworm_white_boots - # [default: ] - S:iceandfire_deathworm_white_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:deathworm_yellow_helmet, iceandfire:deathworm_yellow_chestplate, iceandfire:deathworm_yellow_leggings, iceandfire:deathworm_yellow_boots - # [default: ] - S:iceandfire_deathworm_yellow_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonsteel_fire_helmet, iceandfire:dragonsteel_fire_chestplate, iceandfire:dragonsteel_fire_leggings, iceandfire:dragonsteel_fire_boots - # [default: ] - S:iceandfire_dragonsteel_fire_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonsteel_ice_helmet, iceandfire:dragonsteel_ice_chestplate, iceandfire:dragonsteel_ice_leggings, iceandfire:dragonsteel_ice_boots - # [default: ] - S:iceandfire_dragonsteel_ice_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonsteel_lightning_helmet, iceandfire:dragonsteel_lightning_chestplate, iceandfire:dragonsteel_lightning_leggings, iceandfire:dragonsteel_lightning_boots - # [default: ] - S:iceandfire_dragonsteel_lightning_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:earplugs - # [default: ] - S:iceandfire_earplugs < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:forest_troll_leather_helmet, iceandfire:forest_troll_leather_chestplate, iceandfire:forest_troll_leather_leggings, iceandfire:forest_troll_leather_boots - # [default: ] - S:iceandfire_forest_troll_leather_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:frost_troll_leather_helmet, iceandfire:frost_troll_leather_chestplate, iceandfire:frost_troll_leather_leggings, iceandfire:frost_troll_leather_boots - # [default: ] - S:iceandfire_frost_troll_leather_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:mountain_troll_leather_helmet, iceandfire:mountain_troll_leather_chestplate, iceandfire:mountain_troll_leather_leggings, iceandfire:mountain_troll_leather_boots - # [default: ] - S:iceandfire_mountain_troll_leather_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:myrmex_desert_helmet, iceandfire:myrmex_desert_chestplate, iceandfire:myrmex_desert_leggings, iceandfire:myrmex_desert_boots - # [default: ] - S:iceandfire_myrmex_desert_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:myrmex_jungle_helmet, iceandfire:myrmex_jungle_chestplate, iceandfire:myrmex_jungle_leggings, iceandfire:myrmex_jungle_boots - # [default: ] - S:iceandfire_myrmex_jungle_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:sheep_helmet, iceandfire:sheep_chestplate, iceandfire:sheep_leggings, iceandfire:sheep_boots - # [default: ] - S:iceandfire_sheep_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_blue_helmet, iceandfire:tide_blue_chestplate, iceandfire:tide_blue_leggings, iceandfire:tide_blue_boots - # [default: ] - S:iceandfire_tide_blue_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_bronze_helmet, iceandfire:tide_bronze_chestplate, iceandfire:tide_bronze_leggings, iceandfire:tide_bronze_boots - # [default: ] - S:iceandfire_tide_bronze_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_deepblue_helmet, iceandfire:tide_deepblue_chestplate, iceandfire:tide_deepblue_leggings, iceandfire:tide_deepblue_boots - # [default: ] - S:iceandfire_tide_deepblue_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_green_helmet, iceandfire:tide_green_chestplate, iceandfire:tide_green_leggings, iceandfire:tide_green_boots - # [default: ] - S:iceandfire_tide_green_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_purple_helmet, iceandfire:tide_purple_chestplate, iceandfire:tide_purple_leggings, iceandfire:tide_purple_boots - # [default: ] - S:iceandfire_tide_purple_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_red_helmet, iceandfire:tide_red_chestplate, iceandfire:tide_red_leggings, iceandfire:tide_red_boots - # [default: ] - S:iceandfire_tide_red_helmet < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:tide_teal_helmet, iceandfire:tide_teal_chestplate, iceandfire:tide_teal_leggings, iceandfire:tide_teal_boots - # [default: ] - S:iceandfire_tide_teal_helmet < - > -} - - -entity { - # A list of name pieces, which can be spliced together to create full names. May be empty only if names is not empty. [default: [Dark], [Osto], [Grab], [Thar], [Ger], [Ald], [Mas], [On], [O], [Din], [Thor], [Jon], [Ath], [Burb], [En], [A], [E], [I], [U], [Hab], [Bloo], [Ena], [Dit], [Aph], [Ern], [Bor], [Dav], [Id], [Toast], [Son], [Dottir], [For], [Wen], [Lob], [Ed], [Die], [Van], [Y], [Zap], [Ear], [Ben], [Don], [Bran], [Gro], [Jen], [Bob], [Ette], [Ere], [Man], [Qua], [Bro], [Cree], [Per], [Skel], [Ton], [Zom], [Bie], [Wolf], [End], [Er], [Pig], [Sil], [Ver], [Fish], [Cow], [Chic], [Ken], [Sheep], [Squid], [Hell]] - S:"Name Parts" < - Grab - Thar - Ger - Ald - Mas - On - O - Din - Thor - Jon - Ath - Burb - En - A - E - I - U - Hab - Bloo - Ena - Dit - Aph - Ern - Bor - Dav - Id - Toast - Son - Dottir - For - Wen - Lob - Ed - Die - Van - Y - Zap - Ear - Ben - Don - Bran - Gro - Jen - Bob - Ette - Ere - Man - Qua - Bro - Cree - Per - Skel - Ton - Zom - Bie - Wolf - End - Er - Pig - Sil - Ver - Fish - Cow - Chic - Ken - Sheep - Squid - Hell - > - - # A list of full names, which are used in the generation of boss names. May be empty only if name parts is not empty. [default: [Darko], [Shadows], [Kat], [Jank], [Albert], [Andrew], [Anderson], [Andy], [Allan], [Arthur], [Aaron], [Allison], [Arielle], [Amanda], [Anne], [Annie], [Amy], [Alana], [Brandon], [Brady], [Bernard], [Ben], [Benjamin], [Bob], [Bobette], [Brooke], [Brandy], [Beatrice], [Bea], [Bella], [Becky], [Carlton], [Carl], [Calvin], [Cameron], [Carson], [Chase], [Cassandra], [Cassie], [Cas], [Carol], [Carly], [Cherise], [Charlotte], [Cheryl], [Chasity], [Danny], [Drake], [Daniel], [Derrel], [David], [Dave], [Donovan], [Don], [Donald], [Drew], [Derrick], [Darla], [Donna], [Dora], [Danielle], [Edward], [Elliot], [Ed], [Edson], [Elton], [Eddison], [Earl], [Eric], [Ericson], [Eddie], [Ediovany], [Emma], [Elizabeth], [Eliza], [Esperanza], [Esper], [Esmeralda], [Emi], [Emily], [Elaine], [Fernando], [Ferdinand], [Fred], [Feddie], [Fredward], [Frank], [Franklin], [Felix], [Felicia], [Fran], [Greg], [Gregory], [George], [Gerald], [Gina], [Geraldine], [Gabby], [Hendrix], [Henry], [Hobbes], [Herbert], [Heath], [Henderson], [Helga], [Hera], [Helen], [Helena], [Hannah], [Ike], [Issac], [Israel], [Ismael], [Irlanda], [Isabelle], [Irene], [Irenia], [Jimmy], [Jim], [Justin], [Jacob], [Jake], [Jon], [Johnson], [Jonny], [Jonathan], [Josh], [Joshua], [Julian], [Jesus], [Jericho], [Jeb], [Jess], [Joan], [Jill], [Jillian], [Jessica], [Jennifer], [Jenny], [Jen], [Judy], [Kenneth], [Kenny], [Ken], [Keith], [Kevin], [Karen], [Kassandra], [Kassie], [Leonard], [Leo], [Leroy], [Lee], [Lenny], [Luke], [Lucas], [Liam], [Lorraine], [Latasha], [Lauren], [Laquisha], [Livia], [Lydia], [Lila], [Lilly], [Lillian], [Lilith], [Lana], [Mason], [Mike], [Mickey], [Mario], [Manny], [Mark], [Marcus], [Martin], [Marty], [Matthew], [Matt], [Max], [Maximillian], [Marth], [Mia], [Marriah], [Maddison], [Maddie], [Marissa], [Miranda], [Mary], [Martha], [Melonie], [Melody], [Mel], [Minnie], [Nathan], [Nathaniel], [Nate], [Ned], [Nick], [Norman], [Nicholas], [Natasha], [Nicki], [Nora], [Nelly], [Nina], [Orville], [Oliver], [Orlando], [Owen], [Olsen], [Odin], [Olaf], [Ortega], [Olivia], [Patrick], [Pat], [Paul], [Perry], [Pinnochio], [Patrice], [Patricia], [Pennie], [Petunia], [Patti], [Pernelle], [Quade], [Quincy], [Quentin], [Quinn], [Roberto], [Robbie], [Rob], [Robert], [Roy], [Roland], [Ronald], [Richard], [Rick], [Ricky], [Rose], [Rosa], [Rhonda], [Rebecca], [Roberta], [Sparky], [Shiloh], [Stephen], [Steve], [Saul], [Sheen], [Shane], [Sean], [Sampson], [Samuel], [Sammy], [Stefan], [Sasha], [Sam], [Susan], [Suzy], [Shelby], [Samantha], [Sheila], [Sharon], [Sally], [Stephanie], [Sandra], [Sandy], [Sage], [Tim], [Thomas], [Thompson], [Tyson], [Tyler], [Tom], [Tyrone], [Timmothy], [Tamara], [Tabby], [Tabitha], [Tessa], [Tiara], [Tyra], [Uriel], [Ursala], [Uma], [Victor], [Vincent], [Vince], [Vance], [Vinny], [Velma], [Victoria], [Veronica], [Wilson], [Wally], [Wallace], [Will], [Wilard], [William], [Wilhelm], [Xavier], [Xandra], [Young], [Yvonne], [Yolanda], [Zach], [Zachary]] - S:Names < - Albert - Andrew - Anderson - Andy - Allan - Arthur - Aaron - Allison - Arielle - Amanda - Anne - Annie - Amy - Alana - Brandon - Brady - Bernard - Ben - Benjamin - Bob - Bobette - Brooke - Brandy - Beatrice - Bea - Bella - Becky - Carlton - Carl - Calvin - Cameron - Carson - Chase - Cassandra - Cassie - Cas - Carol - Carly - Cherise - Charlotte - Cheryl - Chasity - Danny - Drake - Daniel - Derrel - David - Dave - Donovan - Don - Donald - Drew - Derrick - Darla - Donna - Dora - Danielle - Edward - Elliot - Ed - Edson - Elton - Eddison - Earl - Eric - Ericson - Eddie - Ediovany - Emma - Elizabeth - Eliza - Esperanza - Esper - Esmeralda - Emi - Emily - Elaine - Fernando - Ferdinand - Fred - Feddie - Fredward - Frank - Franklin - Felix - Felicia - Fran - Greg - Gregory - George - Gerald - Gina - Geraldine - Gabby - Hendrix - Henry - Hobbes - Herbert - Heath - Henderson - Helga - Hera - Helen - Helena - Hannah - Ike - Issac - Israel - Ismael - Irlanda - Isabelle - Irene - Irenia - Jimmy - Jim - Justin - Jacob - Jake - Jon - Johnson - Jonny - Jonathan - Josh - Joshua - Julian - Jesus - Jericho - Jeb - Jess - Joan - Jill - Jillian - Jessica - Jennifer - Jenny - Jen - Judy - Kenneth - Kenny - Ken - Keith - Kevin - Karen - Kassandra - Kassie - Leonard - Leo - Leroy - Lee - Lenny - Luke - Lucas - Liam - Lorraine - Latasha - Lauren - Laquisha - Livia - Lydia - Lila - Lilly - Lillian - Lilith - Lana - Mason - Mike - Mickey - Mario - Manny - Mark - Marcus - Martin - Marty - Matthew - Matt - Max - Maximillian - Marth - Mia - Marriah - Maddison - Maddie - Marissa - Miranda - Mary - Martha - Melonie - Melody - Mel - Minnie - Nathan - Nathaniel - Nate - Ned - Nick - Norman - Nicholas - Natasha - Nicki - Nora - Nelly - Nina - Orville - Oliver - Orlando - Owen - Olsen - Odin - Olaf - Ortega - Olivia - Patrick - Pat - Paul - Perry - Pinnochio - Patrice - Patricia - Pennie - Petunia - Patti - Pernelle - Quade - Quincy - Quentin - Quinn - Roberto - Robbie - Rob - Robert - Roy - Roland - Ronald - Richard - Rick - Ricky - Rose - Rosa - Rhonda - Rebecca - Roberta - Sparky - Shiloh - Stephen - Steve - Saul - Sheen - Shane - Sean - Sampson - Samuel - Sammy - Stefan - Sasha - Sam - Susan - Suzy - Shelby - Samantha - Sheila - Sharon - Sally - Stephanie - Sandra - Sandy - Sage - Tim - Thomas - Thompson - Tyson - Tyler - Tom - Tyrone - Timmothy - Tamara - Tabby - Tabitha - Tessa - Tiara - Tyra - Uriel - Ursala - Uma - Victor - Vincent - Vince - Vance - Vinny - Velma - Victoria - Veronica - Wilson - Wally - Wallace - Will - Wilard - William - Wilhelm - Xavier - Xandra - Young - Yvonne - Yolanda - Zach - Zachary - > - - # A list of prefixes, which are used in the generation of boss names. May be empty. [default: [Sir], [Mister], [Madam], [Doctor], [Father], [Mother], [Poppa]] - S:Prefixes < - Sir - Mister - Madam - Doctor - Father - Mother - > - - # A list of suffixes, which are used in the generation of boss names. A suffix is always preceeded by "The". May be empty. [default: [Mighty], [Supreme], [Superior], [Ultimate], [Lame], [Wimpy], [Curious], [Sneaky], [Pathetic], [Crying], [Eagle], [Errant], [Unholy], [Questionable], [Mean], [Hungry], [Thirsty], [Feeble], [Wise], [Sage], [Magical], [Mythical], [Legendary], [Not Very Nice], [Jerk], [Doctor], [Misunderstood], [Angry], [Knight], [Bishop], [Godly], [Special], [Toasty], [Shiny], [Shimmering], [Light], [Dark], [Odd-Smelling], [Funky], [Rock Smasher], [Son of Herobrine], [Cracked], [Sticky], [§kAlien§r], [Baby], [Manly], [Rough], [Scary], [Undoubtable], [Honest], [Non-Suspicious], [Boring], [Odd], [Lazy], [Super], [Nifty], [Ogre Slayer], [Pig Thief], [Dirt Digger], [Really Cool], [Doominator], [... Something], [Extra-Fishy], [Gorilla Slaughterer], [Marbles Winner]] - S:Suffixes < - Mighty - Supreme - Superior - Ultimate - Lame - Wimpy - Curious - Sneaky - Pathetic - Crying - Eagle - Errant - Unholy - Questionable - Mean - Hungry - Thirsty - Feeble - Wise - Sage - Magical - Mythical - Legendary - Not Very Nice - Jerk - Doctor - Misunderstood - Angry - Knight - Bishop - Godly - Special - Toasty - Shiny - Shimmering - Light - Dark - Odd-Smelling - Funky - Rock Smasher - Son of Herobrine - Cracked - Sticky - §kAlien§r - Baby - Manly - Rough - Scary - Undoubtable - Honest - Non-Suspicious - Boring - Odd - Lazy - Super - Nifty - Ogre Slayer - Pig Thief - Dirt Digger - Really Cool - Doominator - ... Something - > -} - - -formatting { - # The format string that will be used to indicate ownership. [default: %s's] - S:"Ownership Format"=%s's - - # The format string that will be used when a suffix is applied. [default: %s the %s] - S:"Suffix Format"=%s the %s -} - - -items { - # A list of root names for helms, used in the generation of item names. May not be empty. [default: [Helmet], [Cap], [Crown], [Great Helm], [Bassinet], [Sallet], [Close Helm], [Barbute]] - S:Helms < - Helmet - Cap - Crown - Great Helm - Bassinet - Sallet - Close Helm - Barbute - > - - # A list of root names for axes, used in the generation of item names. May not be empty. [default: [Axe], [Chopper], [Hatchet], [Tomahawk], [Cleaver], [Hacker], [Tree-Cutter], [Truncator]] - S:axes < - Axe - Chopper - Hatchet - Tomahawk - Cleaver - Hacker - Tree-Cutter - Truncator - > - - # A list of root names for boots, used in the generation of item names. May not be empty. [default: [Boots], [Shoes], [Greaves], [Sabatons], [Sollerets]] - S:boots < - Boots - Shoes - Greaves - Sabatons - Sollerets - > - - # A list of root names for bows, used in the generation of item names. May not be empty. [default: [Bow], [Shortbow], [Longbow], [Flatbow], [Recurve Bow], [Reflex Bow], [Self Bow], [Composite Bow], [Arrow-Flinger]] - S:bows < - Bow - Shortbow - Longbow - Flatbow - Recurve Bow - Reflex Bow - Self Bow - Composite Bow - Arrow-Flinger - > - - # A list of root names for chestplates, used in the generation of item names. May not be empty. [default: [Chestplate], [Tunic], [Brigandine], [Hauberk], [Cuirass]] - S:chestplates < - Chestplate - Tunic - Brigandine - Hauberk - Cuirass - > - - # A list of root names for leggings, used in the generation of item names. May not be empty. [default: [Leggings], [Pants], [Tassets], [Cuisses], [Schynbalds]] - S:leggings < - Leggings - Pants - Tassets - Cuisses - Schynbalds - > - - # A list of root names for pickaxes, used in the generation of item names. May not be empty. [default: [Pickaxe], [Pick], [Mattock], [Rock-Smasher], [Miner]] - S:pickaxes < - Pickaxe - Pick - Mattock - Rock-Smasher - Miner - > - - # A list of root names for shields, used in the generation of item names. May not be empty. [default: [Shield], [Defender], [Ardent Defender], [Greatshield], [Blockade], [Bulwark], [Tower Shield], [Protector], [Aegis]] - S:shields < - Shield - Defender - Ardent Defender - Greatshield - Blockade - Bulwark - Tower Shield - Protector - Aegis - > - - # A list of root names for shovels, used in the generation of item names. May not be empty. [default: [Shovel], [Spade], [Digger], [Excavator], [Trowel], [Scoop]] - S:shovels < - Shovel - Spade - Digger - Excavator - Trowel - Scoop - > - - # A list of root names for swords, used in the generation of item names. May not be empty. [default: [Sword], [Cutter], [Slicer], [Dicer], [Knife], [Blade], [Machete], [Brand], [Claymore], [Cutlass], [Foil], [Dagger], [Glaive], [Rapier], [Saber], [Scimitar], [Shortsword], [Longsword], [Broadsword], [Calibur]] - S:swords < - Sword - Cutter - Slicer - Dicer - Knife - Blade - Machete - Brand - Claymore - Cutlass - Foil - Dagger - Glaive - Rapier - Saber - Scimitar - Shortsword - Longsword - Broadsword - Calibur - > -} - - -tools { - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:cloggrum_battleaxe, undergarden:cloggrum_sword, undergarden:cloggrum_pickaxe, undergarden:cloggrum_axe, undergarden:cloggrum_shovel, undergarden:cloggrum_hoe - # [default: ] - S:CLOGGRUM < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:diamond_sword, minecraft:diamond_shovel, minecraft:diamond_pickaxe, minecraft:diamond_axe, minecraft:diamond_hoe - # [default: [Diamond], [Zircon], [Gemstone], [Jewel], [Crystal]] - S:DIAMOND < - Diamond - Zircon - Gemstone - Jewel - Crystal - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:forgotten_sword, undergarden:forgotten_pickaxe, undergarden:forgotten_axe, undergarden:forgotten_shovel, undergarden:forgotten_hoe - # [default: ] - S:FORGOTTEN < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:froststeel_sword, undergarden:froststeel_pickaxe, undergarden:froststeel_axe, undergarden:froststeel_shovel, undergarden:froststeel_hoe - # [default: ] - S:FROSTSTEEL < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:golden_sword, minecraft:golden_shovel, minecraft:golden_pickaxe, minecraft:golden_axe, minecraft:golden_hoe - # [default: [Golden], [Gold], [Gilt], [Auric], [Ornate]] - S:GOLD < - Golden - Gold - Gilt - Auric - Ornate - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:iron_sword, minecraft:iron_shovel, minecraft:iron_pickaxe, minecraft:iron_axe, minecraft:iron_hoe - # [default: [Iron], [Steel], [Ferrous], [Rusty], [Wrought Iron]] - S:IRON < - Iron - Steel - Ferrous - Rusty - Wrought Iron - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:netherite_sword, minecraft:netherite_shovel, minecraft:netherite_pickaxe, minecraft:netherite_axe, minecraft:netherite_hoe - # [default: [Burnt], [Embered], [Fiery], [Hellborn], [Flameforged]] - S:NETHERITE < - Burnt - Embered - Fiery - Hellborn - Flameforged - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: byg:pendorite_axe, byg:pendorite_pickaxe, byg:pendorite_sword, byg:pendorite_battleaxe, byg:pendorite_shovel, byg:pendorite_hoe - # [default: ] - S:PENDORITE < - > - S:RADIANT < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:stone_sword, minecraft:stone_shovel, minecraft:stone_pickaxe, minecraft:stone_axe, minecraft:stone_hoe - # [default: [Stone], [Rock], [Marble], [Cobblestone]] - S:STONE < - Stone - Rock - Marble - Cobblestone - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: undergarden:utheric_sword, undergarden:utheric_pickaxe, undergarden:utheric_axe, undergarden:utheric_shovel, undergarden:utheric_hoe - # [default: ] - S:UTHERIC < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: minecraft:wooden_sword, minecraft:wooden_shovel, minecraft:wooden_pickaxe, minecraft:wooden_axe, minecraft:wooden_hoe - # [default: [Wooden], [Wood], [Hardwood], [Balsa Wood], [Mahogany], [Plywood]] - S:WOOD < - Wooden - Wood - Hardwood - Balsa Wood - Mahogany - Plywood - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:amphithere_macuahuitl - # [default: ] - S:iceandfire_amphithere_macuahuitl < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:copper_sword, iceandfire:copper_shovel, iceandfire:copper_pickaxe, iceandfire:copper_axe, iceandfire:copper_hoe - # [default: ] - S:iceandfire_copper_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonbone_sword, iceandfire:dragonbone_shovel, iceandfire:dragonbone_pickaxe, iceandfire:dragonbone_axe, iceandfire:dragonbone_hoe - # [default: ] - S:iceandfire_dragonbone_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonbone_sword_fire - # [default: ] - S:iceandfire_dragonbone_sword_fire < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonbone_sword_ice - # [default: ] - S:iceandfire_dragonbone_sword_ice < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonbone_sword_lightning - # [default: ] - S:iceandfire_dragonbone_sword_lightning < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonsteel_fire_sword, iceandfire:dragonsteel_fire_pickaxe, iceandfire:dragonsteel_fire_axe, iceandfire:dragonsteel_fire_shovel, iceandfire:dragonsteel_fire_hoe - # [default: ] - S:iceandfire_dragonsteel_fire_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonsteel_ice_sword, iceandfire:dragonsteel_ice_pickaxe, iceandfire:dragonsteel_ice_axe, iceandfire:dragonsteel_ice_shovel, iceandfire:dragonsteel_ice_hoe - # [default: ] - S:iceandfire_dragonsteel_ice_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dragonsteel_lightning_sword, iceandfire:dragonsteel_lightning_pickaxe, iceandfire:dragonsteel_lightning_axe, iceandfire:dragonsteel_lightning_shovel, iceandfire:dragonsteel_lightning_hoe - # [default: ] - S:iceandfire_dragonsteel_lightning_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dread_knight_sword - # [default: ] - S:iceandfire_dread_knight_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dread_queen_sword - # [default: ] - S:iceandfire_dread_queen_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:dread_sword - # [default: ] - S:iceandfire_dread_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:ghost_sword - # [default: ] - S:iceandfire_ghost_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:hippocampus_slapper - # [default: ] - S:iceandfire_hippocampus_slapper < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:hippogryph_sword - # [default: ] - S:iceandfire_hippogryph_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:myrmex_desert_sword, iceandfire:myrmex_desert_sword_venom, iceandfire:myrmex_desert_shovel, iceandfire:myrmex_desert_pickaxe, iceandfire:myrmex_desert_axe, iceandfire:myrmex_desert_hoe, iceandfire:myrmex_jungle_sword, iceandfire:myrmex_jungle_sword_venom, iceandfire:myrmex_jungle_shovel, iceandfire:myrmex_jungle_pickaxe, iceandfire:myrmex_jungle_axe, iceandfire:myrmex_jungle_hoe - # [default: ] - S:iceandfire_myrmex_desert_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:silver_sword, iceandfire:silver_shovel, iceandfire:silver_pickaxe, iceandfire:silver_axe, iceandfire:silver_hoe - # [default: ] - S:iceandfire_silver_sword < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:stymphalian_bird_dagger - # [default: ] - S:iceandfire_stymphalian_bird_dagger < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: iceandfire:troll_weapon_axe, iceandfire:troll_weapon_column, iceandfire:troll_weapon_column_forest, iceandfire:troll_weapon_column_frost, iceandfire:troll_weapon_hammer, iceandfire:troll_weapon_trunk, iceandfire:troll_weapon_trunk_frost - # [default: ] - S:iceandfire_troll_weapon_axe < - > - - # A list of material-based prefix names for this material group. May be empty. - # Items in this group: wstweaks:lava_blade, wstweaks:blaze_blade - # [default: ] - S:wstweaks_lava_blade < - > -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/potion.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/potion.cfg deleted file mode 100644 index ce03804..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/potion.cfg +++ /dev/null @@ -1,8 +0,0 @@ -# Configuration file - -general { - # The strength of Ancient Knowledge. This multiplier determines how much additional xp is granted. [range: 1 ~ 2147483647, default: 4] - I:"Knowledge XP Multiplier"=4 -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/spawner.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/spawner.cfg deleted file mode 100644 index 860e05e..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/spawner.cfg +++ /dev/null @@ -1,135 +0,0 @@ -# Configuration file - -general { - # When held in the off-hand, this item makes modifiers change stats in the opposite direction. [default: minecraft:quartz] - S:"Inverse Item"=minecraft:quartz - - # The durability damage dealt to an item that silk touches a spawner. [range: 0 ~ 100000, default: 100] - I:"Spawner Silk Damage"=100 - - # The level of silk touch needed to harvest a spawner. Set to -1 to disable, 0 to always drop. The enchantment module can increase the max level of silk touch. [range: -1 ~ 127, default: 1] - I:"Spawner Silk Level"=-1 -} - - -ignore_spawn_cap { - # The item that applies this modifier. [default: minecraft:chorus_fruit] - S:item=minecraft:chorus_fruit -} - - -ignore_spawn_conditions { - # The item that applies this modifier. [default: minecraft:dragon_egg] - S:item=minecraft:dragon_egg -} - - -max_delay { - # The item that applies this modifier. [default: minecraft:clock] - S:item=minecraft:clock - - # The max value of this stat. [range: -2147483648 ~ 2147483647, default: 99999] - I:max_value=99999 - - # The min value of this stat. [range: -2147483648 ~ 2147483647, default: 10] - I:min_value=10 - - # The amount each item changes this stat. [range: -2147483648 ~ 2147483647, default: -10] - I:value=-10 -} - - -max_nearby_entities { - # The item that applies this modifier. [default: minecraft:ghast_tear] - S:item=minecraft:ghast_tear - - # The max value of this stat. [range: -2147483648 ~ 2147483647, default: 40] - I:max_value=40 - - # The min value of this stat. [range: -2147483648 ~ 2147483647, default: 0] - I:min_value=0 - - # The amount each item changes this stat. [range: -2147483648 ~ 2147483647, default: 2] - I:value=2 -} - - -min_delay { - # The item that applies this modifier. [default: minecraft:sugar] - S:item=minecraft:sugar - - # The max value of this stat. [range: -2147483648 ~ 2147483647, default: 99999] - I:max_value=99999 - - # The min value of this stat. [range: -2147483648 ~ 2147483647, default: 5] - I:min_value=5 - - # The amount each item changes this stat. [range: -2147483648 ~ 2147483647, default: -5] - I:value=-5 -} - - -player_activation_range { - # The item that applies this modifier. [default: minecraft:prismarine_crystals] - S:item=minecraft:prismarine_crystals - - # The max value of this stat. [range: -2147483648 ~ 2147483647, default: 50] - I:max_value=50 - - # The min value of this stat. [range: -2147483648 ~ 2147483647, default: 0] - I:min_value=0 - - # The amount each item changes this stat. [range: -2147483648 ~ 2147483647, default: 2] - I:value=2 -} - - -redstone_control { - # The item that applies this modifier. [default: minecraft:comparator] - S:item=minecraft:comparator -} - - -require_players { - # The item that applies this modifier. [default: minecraft:nether_star] - S:item=minecraft:nether_star -} - - -spawn_count { - # The item that applies this modifier. [default: minecraft:fermented_spider_eye] - S:item=minecraft:fermented_spider_eye - - # The max value of this stat. [range: -2147483648 ~ 2147483647, default: 20] - I:max_value=20 - - # The min value of this stat. [range: -2147483648 ~ 2147483647, default: 1] - I:min_value=1 - - # The amount each item changes this stat. [range: -2147483648 ~ 2147483647, default: 1] - I:value=1 -} - - -spawn_eggs { - # A list of entity registry names that cannot be applied to spawners via egg. [default: ] - S:"Banned Mobs" < - > -} - - -spawn_range { - # The item that applies this modifier. [default: minecraft:blaze_rod] - S:item=minecraft:blaze_rod - - # The max value of this stat. [range: -2147483648 ~ 2147483647, default: 32] - I:max_value=32 - - # The min value of this stat. [range: -2147483648 ~ 2147483647, default: 0] - I:min_value=0 - - # The amount each item changes this stat. [range: -2147483648 ~ 2147483647, default: 1] - I:value=1 -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/village.cfg b/configuration/services/configs/minecraft/voor-kia/config/apotheosis/village.cfg deleted file mode 100644 index 109b3e5..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/apotheosis/village.cfg +++ /dev/null @@ -1,12 +0,0 @@ -# Configuration file - -wanderer { - # If the generic trade list will be cleared before datapack loaded trades are added. [default: false] - B:"Clear Generic Trades"=false - - # If the rare trade list will be cleared before datapack loaded trades are added. [default: false] - B:"Clear Rare Trades"=false - B:"Enable New Trades"=true -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/appleskin-client.toml b/configuration/services/configs/minecraft/voor-kia/config/appleskin-client.toml deleted file mode 100644 index b171cd8..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/appleskin-client.toml +++ /dev/null @@ -1,24 +0,0 @@ - -[client] - #If true, shows the hunger (and saturation if showSaturationHudOverlay is true) that would be restored by food you are currently holding - showFoodValuesHudOverlay = true - #If true, shows your food exhaustion as a progress bar behind the hunger bars - showFoodExhaustionHudUnderlay = true - #Alpha value of the flashing icons at their most visible point (1.0 = fully opaque, 0.0 = fully transparent) - #Range: 0.0 ~ 1.0 - maxHudOverlayFlashAlpha = 0.65 - #If true, health/hunger overlay will shake to match Minecraft's icon animations - showVanillaAnimationsOverlay = true - #If true, adds a line that shows your hunger, saturation, and exhaustion level in the F3 debug overlay - showFoodStatsInDebugOverlay = true - #If true, shows the hunger and saturation values of food in its tooltip while holding SHIFT - showFoodValuesInTooltip = true - #If true, shows the hunger and saturation values of food in its tooltip automatically (without needing to hold SHIFT) - showFoodValuesInTooltipAlways = true - #If true, shows estimated health restored by food on the health bar - showFoodHealthHudOverlay = true - #If true, shows your current saturation level overlayed on the hunger bar - showSaturationHudOverlay = true - #If true, enables the hunger/saturation/health overlays for food in your off-hand - showFoodValuesHudOverlayWhenOffhand = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/artifacts-common.toml b/configuration/services/configs/minecraft/voor-kia/config/artifacts-common.toml deleted file mode 100644 index 5977567..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/artifacts-common.toml +++ /dev/null @@ -1,36 +0,0 @@ -#Affects how common artifacts are (does not affect mimics) -#When this is 1, the default artifact spawn rates will be used -#Values higher that 1 will decrease spawn rates while values lower than 1 will increase spawn rates -#Doubling this value will (roughly) halve the chance a container contains an artifact -#Setting this to 10000 will completely prevent artifacts from spawning -#When set to 0, every container that can contain artifacts will contain an artifact -#Range: 0.0 ~ 10000.0 -artifact_rarity = 1.0 - -[campsite] - #The maximum y-level at which a campsite can generate - #Range: 1 ~ 255 - max_y = 45 - #Whether to use wooden chests from other mods when generating campsites - #(keeping this enabled may make it easier to distinguish them from mimics) - use_modded_chests = true - #List of biome IDs in which campsites are not allowed to generate - #End and nether biomes are excluded by default - #To blacklist all biomes from a single mod, use "modid:*" - biome_blacklist = ["minecraft:void", "undergarden:*", "the_bumblezone:*"] - #Probability for a container of a campsite to be replaced by a mimic - #Range: 0.0 ~ 1.0 - mimic_chance = 0.3 - #The minimum y-level at which a campsite can generate - #Range: 1 ~ 255 - min_y = 1 - #Probability for an ore vein to generate underneath a campsite - #Range: 0.0 ~ 1.0 - ore_chance = 0.25 - #Rarity of campsites generating in the world - #The chance a campsite generates in a specific chunk is 1/rarity - #A rarity of 1 will generate a campsite in every chunk, while 10000 will generate no campsites - #Not every attempt at generating a campsite succeeds, this also depends on the density and shape of caves - #Range: 1 ~ 10000 - rarity = 12 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/attributefix-common-1.toml.bak b/configuration/services/configs/minecraft/voor-kia/config/attributefix-common-1.toml.bak deleted file mode 100644 index e69de29..0000000 diff --git a/configuration/services/configs/minecraft/voor-kia/config/attributefix-common.toml b/configuration/services/configs/minecraft/voor-kia/config/attributefix-common.toml deleted file mode 100644 index b13b887..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/attributefix-common.toml +++ /dev/null @@ -1,144 +0,0 @@ - -#Values for the minecraft:generic.max_health attribute. -[minecraft_generic_max_health] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 1.0 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.follow_range attribute. -[minecraft_generic_follow_range] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.knockback_resistance attribute. -[minecraft_generic_knockback_resistance] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.movement_speed attribute. -[minecraft_generic_movement_speed] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.flying_speed attribute. -[minecraft_generic_flying_speed] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.attack_damage attribute. -[minecraft_generic_attack_damage] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.attack_knockback attribute. -[minecraft_generic_attack_knockback] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.attack_speed attribute. -[minecraft_generic_attack_speed] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.armor attribute. -[minecraft_generic_armor] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.armor_toughness attribute. -[minecraft_generic_armor_toughness] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:generic.luck attribute. -[minecraft_generic_luck] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:zombie.spawn_reinforcements attribute. -[minecraft_zombie_spawn_reinforcements] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - -#Values for the minecraft:horse.jump_strength attribute. -[minecraft_horse_jump_strength] - #The minimum vallue for the attribute. Changing this may have unforseen consequences. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - min = 4.9E-324 - #The maximum value for the attribute. - #Range: -1.7976931348623157E308 ~ 1.7976931348623157E308 - max = 65536.0 - #Whether or not this attribute should be modified. - enabled = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterburning-common.toml b/configuration/services/configs/minecraft/voor-kia/config/betterburning-common.toml deleted file mode 100644 index d159303..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterburning-common.toml +++ /dev/null @@ -1,35 +0,0 @@ - -#General settings for the mod. -[general] - #Should flint and steel deal fire damage when used as a weapon? - ShouldFlintAndSteelDoFireDamage = true - #Fixes some fire related damage sources not causing mobs to drop cooked items? - fireFromDamagesource = true - #How much fire damage should flint and steel do? - #Range: > 0 - flintAndSteelFireDamage = 3 - #What is the % chance skeletons will shoot flaming arrows while on fire? - #Range: 0.0 ~ 1.0 - flameArrowSkeletonChance = 0.7 - #How long should Soulfire burn players if they try to punch it out? - #Range: > 0 - soulfireHitBurnTime = 2 - #Can players put out fire with bottled water? - extinguishWithBottledWater = true - #Should the fire/burning HUD overlay be hidden if the player has fire immunity? - hideFireOverlayWhenImmune = true - #Should skeletons shoot flaming arrows while on fire? - flameArrowSkeletons = true - #Should players be able to put out fire blocks by punching them? - punchOutFlames = true - #How long should Fire burn players if they try to punch it out? - #Range: > 0 - fireHitBurnTime = 1 - #Should fire damage spread between mobs when they hurt eachother? Zombies already do this and won't be changed. - fireDamageSpreads = true - #What is the % chance that fire damage will spread between mobs? - #Range: 0.0 ~ 1.0 - fireDamageSpreadChance = 0.3 - #Should having fire resistance stop things from being on fire visually? - fireResistanceExtinguish = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettercaves-1_16.toml b/configuration/services/configs/minecraft/voor-kia/config/bettercaves-1_16.toml deleted file mode 100644 index 24a05a4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettercaves-1_16.toml +++ /dev/null @@ -1,310 +0,0 @@ - -["Better Caves"] - # List of dimensions that will have Better Caves. Ignored if Global Whitelisting is enabled. - # List must be comma-separated values enclosed in square brackets. - # Entries must have the mod namespace included. - # For example: "[minecraft:overworld, minecraft:the_nether, rats:ratlantis]" - # Default: "[minecraft:overworld]" - "Whitelisted Dimensions" = "[minecraft:overworld]" - # Automatically enables Better Caves in every possible dimension. - # If this is enabled, the Whitelisted Dimension IDs option is ignored. - # Default: false - "Enable Global Whitelist" = false - - ########################################################################################################### - ## Configure how bedrock generates. - ########################################################################################################### - ["Better Caves"."Bedrock Generation"] - # Replaces the usual bedrock generation pattern with flat layers. - # Activates in all whitelisted dimensions. - # Default: true - "Flatten Bedrock" = true - # The width of the bedrock layer. Only works if Flatten Bedrock is true. - #Range: 0 ~ 256 - "Bedrock Layer Width" = 1 - - ########################################################################################################### - ## Configure settings related to caves, caverns, ravines and more. - ########################################################################################################### - ["Better Caves"."Underground Generation"] - - ########################################################################################################### - ## Miscellaneous settings used in cave and cavern generation. - ########################################################################################################### - ["Better Caves"."Underground Generation".Miscellaneous] - # Set to true to enable flooded underground in ocean biomes. - # Default: true - "Enable Flooded Underground" = true - # Ignores surface detection for closing off caves and caverns, forcing them to spawn - # up until their max height. Useful for Nether-like dimensions with no real "surface". - # Default: false - "Override Surface Detection" = false - # Lava (or water in water regions) spawns at and below this y-coordinate. - # Default: 10 - #Range: 0 ~ 255 - "Liquid Altitude" = 10 - # Replace naturally generated floating gravel on the ocean floor with andesite. - # Can prevent lag due to cascading gravel falling into caverns under the ocean. - # Default: true - "Prevent Cascading Gravel" = true - # The block used for lava generation at and below the Liquid Altitude. - # Defaults to regular lava if an invalid block is given. - # Default: minecraft:lava - "Lava Block" = "minecraft:lava" - # The block used for water generation in water caves/caverns at and below the Liquid Altitude. - # Defaults to regular water if an invalid block is given. - # Default: minecraft:water - "Water Block" = "minecraft:water" - - ########################################################################################################### - ## Settings used in the generation of water regions. - ########################################################################################################### - ["Better Caves"."Underground Generation"."Water Regions"] - # Custom value for water region size. Smaller value = larger regions. This value is very sensitive to change. - # ONLY WORKS IF Water Region Size IS Custom. - # Provided values: - # Small: 0.008 - # Medium: 0.004 - # Large: 0.0028 - # ExtraLarge: 0.001 - # Default: 0.004 - #Range: 0.0 ~ 0.05 - "Water Region Size Custom Value" = 0.004 - # Percent chance of a region having water instead of lava at low altitudes. - # Default: 40% - #Range: 0.0 ~ 100.0 - "Water Region Spawn Chance" = 40.0 - # Determines how large water regions are. - # Default: Medium (recommended). - "Water Region Size" = "Medium" - - ########################################################################################################### - ## Settings used in the generation of caves. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caves] - # Percent chance of caves spawning in a given region. - # Default: caves spawn in 100% of regions. - #Range: 0.0 ~ 100.0 - "Cave Spawn Chance" = 100.0 - # Determines how large cave regions are. - # Controls the average size of a cave system. - # Accepted values: Small, Medium, Large, ExtraLarge, Custom - # Default: Small (recommended). - "Cave Region Size" = "Small" - # Custom value for cave region size. Smaller value = larger regions. This value is very sensitive to change. - # ONLY WORKS IF Cave Region Size IS Custom. - # Provided values: - # Small: 0.008 - # Medium: 0.005 - # Large: 0.0032 - # ExtraLarge: 0.001 - # Default: 0.008 - #Range: 0.0 ~ 0.05000000074505806 - "Cave Region Size Custom Value" = 0.00800000037997961 - - ########################################################################################################### - ## Settings used in the generation of vanilla-like caves near the surface. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caves."Surface Caves"] - # The minimum y-coordinate at which surface caves can generate. - # Default: 40 - #Range: 0 ~ 255 - "Surface Cave Minimum Altitude" = 40 - # Set to true to enable vanilla-like caves which provide nice, natural-looking openings at the surface. - # Default: true - "Enable Surface Caves" = true - # The maximum y-coordinate at which surface caves can generate. - # Default: 128 - #Range: 0 ~ 255 - "Surface Cave Maximum Altitude" = 128 - # The density of surface caves. Higher = more caves, closer together. - # Default: 17 - #Range: 0 ~ 100 - "Surface Cave Density" = 17 - - ########################################################################################################### - ## Settings used in the generation of type 1 caves, which are more worm-like. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caves."Type 1 Caves"] - # The maximum y-coordinate at which type 1 caves can generate. - # Default: 80 - #Range: 0 ~ 255 - "Type 1 Cave Maximum Altitude" = 80 - # Stretches caves horizontally. Lower value = wider caves. - # Default: 1.6 (recommended) - #Range: 0.0 ~ 100.0 - "Compression - Horizontal" = 1.6 - # The minimum y-coordinate at which type 1 caves can generate. - # Default: 1 - #Range: 0 ~ 255 - "Type 1 Cave Minimum Altitude" = 1 - # The depth from a given point on the surface at which type 1 caves start to close off. - # Will use the Max Cave Altitude instead of surface height if it is lower. - # Will use the Max Cave Altitude no matter what if Override Surface Detection is enabled. - # Default: 15 (recommended) - #Range: 0 ~ 255 - "Type 1 Cave Surface Cutoff Depth" = 15 - # Stretches caves vertically. Lower value = taller caves with steeper drops. - # Default: 5.0 (recommended) - #Range: 0.0 ~ 100.0 - "Compression - Vertical" = 5.0 - # Determines how frequently Type 1 Caves spawn. 0 = will not spawn at all. - # Default: 10 - #Range: 0 ~ 10 - "Type 1 Cave Priority" = 10 - - ########################################################################################################### - ## Settings used in the generation of type 2 caves, which tend to be more open and spacious. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caves."Type 2 Caves"] - # The minimum y-coordinate at which type 2 caves can generate. - # Default: 1 - #Range: 0 ~ 255 - "Type 2 Cave Minimum Altitude" = 1 - # The maximum y-coordinate at which type 2 caves can generate. - # Default: 80 - #Range: 0 ~ 255 - "Type 2 Cave Maximum Altitude" = 80 - # Stretches caves horizontally. Lower value = wider caves. - # Default: 0.9 (recommended) - #Range: 0.0 ~ 100.0 - "Compression - Horizontal" = 0.9 - # The depth from a given point on the surface at which type 2 caves start to close off. - # Will use the Max Cave Altitude instead of surface height if it is lower. - # Will use the Max Cave Altitude no matter what if Override Surface Detection is enabled. - # Default: 15 (recommended) - #Range: 0 ~ 255 - "Type 2 Cave Surface Cutoff Depth" = 15 - # Stretches caves vertically. Lower value = taller caves with steeper drops. - # Default: 2.2 (recommended) - #Range: 0.0 ~ 100.0 - "Compression - Vertical" = 2.2 - # Determines how frequently Type 2 Caves spawn. 0 = will not spawn at all. - # Default: 5 - #Range: 0 ~ 10 - "Type 2 Cave Priority" = 5 - - ########################################################################################################### - ## Settings controlling vanilla Minecraft cave generation. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caves."Vanilla Caves"] - # The maximum y-coordinate at which vanilla caves can generate. - # Default: 128 - #Range: 0 ~ 255 - "Vanilla Cave Maximum Altitude" = 128 - # The density of vanilla caves. Higher = more caves, closer together. - # Default: 14 (value used in vanilla) - #Range: 0 ~ 100 - "Vanilla Cave Density" = 14 - # Determines how frequently vanilla caves spawn. 0 = will not spawn at all. - # Default: 0 - #Range: 0 ~ 10 - "Vanilla Cave Priority" = 0 - # The minimum y-coordinate at which vanilla caves can generate. - # Default: 8 - #Range: 0 ~ 255 - "Vanilla Cave Minimum Altitude" = 8 - - ########################################################################################################### - ## Settings used in the generation of caverns. Caverns are spacious caves at low altitudes. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caverns] - # Custom value for cavern region size. Only works if Cavern Region Size is set to Custom. Smaller value = larger regions. This value is very sensitive to change. - # Provided values: - # Small: 0.01 - # Medium: 0.007 - # Large: 0.005 - # ExtraLarge: 0.001 - # Default: 0.01 - #Range: 0.0 ~ 0.05 - "Cavern Region Size Custom Value" = 0.01 - # Percent chance of caverns spawning in a given region. - # Default: caverns spawn in 25% of regions. - #Range: 0.0 ~ 100.0 - "Cavern Spawn Chance" = 25.0 - # Determines how large cavern regions are. This controls the average size of caverns. - # Accepted values: Small, Medium, Large, ExtraLarge, Custom - # Default: Small (recommended). - "Cavern Region Size" = "Small" - - ########################################################################################################### - ## Settings used in the generation of Floored Caverns found at low altitudes. - ## These have much more ground to walk on than Liquid Caverns. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caverns."Floored Caverns"] - # Stretches caverns horizontally. Lower value = more open caverns with larger features. - # Default: 0.7 - #Range: 0.0 ~ 100.0 - "Compression - Horizontal" = 0.7 - # Determines how frequently Floored Caverns spawn. 0 = will not spawn at all. - # Default: 10 - #Range: 0 ~ 10 - "Floored Cavern Priority" = 10 - # Stretches caverns vertically. Lower value = more open caverns with larger features. - # Default: 1.3 - #Range: 0.0 ~ 100.0 - "Compression - Vertical" = 1.3 - # The minimum y-coordinate at which Floored Caverns can generate. - # Default: 1 - #Range: 0 ~ 255 - "Floored Cavern Minimum Altitude" = 1 - # The maximum y-coordinate at which Floored Caverns can generate. - # Caverns will attempt to close off anyway if this value is greater than the surface's altitude. - # Default: 35 - #Range: 0 ~ 255 - "Floored Cavern Maximum Altitude" = 35 - - ########################################################################################################### - ## Settings used in the generation of Liquid Caverns found at low altitudes. - ## These are caverns where the floor is predominantly water or lava. - ########################################################################################################### - ["Better Caves"."Underground Generation".Caverns."Liquid Caverns"] - # Stretches caverns horizontally. Lower value = more open caverns with larger features. - # Default: 0.7 - #Range: 0.0 ~ 100.0 - "Compression - Horizontal" = 0.7 - # Determines how frequently Liquid Caverns spawn. 0 = will not spawn at all. - # Default: 10 - #Range: 0 ~ 10 - "Liquid Cavern Priority" = 10 - # Stretches caverns vertically. Lower value = more open caverns with larger features. - # Default: 1.3 - #Range: 0.0 ~ 100.0 - "Compression - Vertical" = 1.3 - # The minimum y-coordinate at which Liquid Caverns can generate. - # Default: 1 - #Range: 0 ~ 255 - "Liquid Cavern Minimum Altitude" = 1 - # The maximum y-coordinate at which Liquid Caverns can generate. - # Caverns will attempt to close off anyway if this value is greater than the surface's altitude. - # Default: 35 - #Range: 0 ~ 255 - "Liquid Cavern Maximum Altitude" = 35 - - ########################################################################################################### - ## Settings used for ravine generation. - ########################################################################################################### - ["Better Caves"."Underground Generation".Ravines] - # Set to true to enable flooded ravines in ocean biomes. - # Default: true - "Enable Flooded Ravines" = true - # Set to true to enable ravine generation. - # Default: true - "Enable Ravines" = true - - ########################################################################################################### - ## Don't mess with these settings for normal gameplay. - ########################################################################################################### - ["Better Caves"."DEBUG Settings"] - # The visualizer creates worlds where there are no blocks except those indicating where caves - # and caverns would be carved out in a regular world. This is useful for visualizing the kinds of - # caves and caverns your current config options will create. - # Type 1 Cave: Wooden Planks - # Type 2 Cave: Cobblestone - # Lava Cavern: Redstone Block - # Floored Cavern: Gold Block - # Surface Cave: Emerald Block - # Vanilla Cave: Bricks - # Default: false - "Enable DEBUG Visualizer" = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettercaves/README.txt b/configuration/services/configs/minecraft/voor-kia/config/bettercaves/README.txt deleted file mode 100644 index 6f6a401..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettercaves/README.txt +++ /dev/null @@ -1,12 +0,0 @@ -This directory is for adding YUNG's Better Caves configurations specific to certain dimensions. -Starting with Minecraft 1.16, this directory serves as the base directory for all future versions. - -For example, to add a dimension-specific config to the Nether in 1.16, you need to first create a -directory named 1_16 in this folder. -(This will be created for you the first time you run YUNG's Better Caves for 1.16). -Then, in the 1_16 folder, create a config file named DIM_minecraft-the_nether.toml. - -NOTE -- YOU MUST HAVE THE DIMENSIONS YOU WANT TO USE WHITELISTED (OR HAVE GLOBAL WHITELISTING ENABLED) -IN THE BASE CONFIG FILE FOR THIS TO WORK. - -FOR MORE INFORMATION, CHECK OUT THE WIKI -- https://github.com/yungnickyoung/YUNGs-Better-Caves/wiki \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts-forge-1_16.toml b/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts-forge-1_16.toml deleted file mode 100644 index 0ad3c6b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts-forge-1_16.toml +++ /dev/null @@ -1,104 +0,0 @@ - -["YUNG's Better Mineshafts"] - # Default: .003 - "Mineshaft Spawn Rate" = 0.003 - # The lowest a mineshaft can spawn. - # Default: 17 - "Minimum y-coordinate" = 17 - # The highest the a mineshaft can spawn. - # Be careful, setting this too high may make mineshafts poke through ocean floors. - # Default: 37 - "Maximum y-coordinate" = 37 - - ########################################################################################################### - ## Spawn rates for various mineshaft parts and decorations. - ########################################################################################################### - ["YUNG's Better Mineshafts"."Spawn Rates & More"] - # The spawn rate for minecarts holding TNT in the main shaft. - # Default: .0025 - #Range: 0.0 ~ 1.0 - "Main Shaft TNT Minecart Spawn Rate" = 0.0025 - # The spawn rate for minecarts holding TNT in small shafts. - # Default: .0025 - #Range: 0.0 ~ 1.0 - "Small Shaft TNT Minecart Spawn Rate" = 0.0025 - # Percent chance of an Abandoned Miners' Outpost to spawn at the end of a small mineshaft tunnel. - # Default: 2 - #Range: 0 ~ 100 - "Abandoned Miners' Outpost Spawn Chance" = 2 - # The spawn rate for minecarts holding chests in small shafts. - # Default: .00125 - #Range: 0.0 ~ 1.0 - "Small Shaft Chest Minecart Spawn Rate" = 0.00125 - # The spawn rate for minecarts holding chests in the main shaft. - # Default: .01 - #Range: 0.0 ~ 1.0 - "Main Shaft Chest Minecart Spawn Rate" = 0.01 - # The spawn rate for workstation cellars below workstations along the main shaft. - # Default: .25 - #Range: 0.0 ~ 1.0 - "Workstation Cellar Spawn Rate" = 0.25 - # The spawn rate for smaller tunnels that generate along the main shaft. - # Default: .07 - #Range: 0.0 ~ 1.0 - "Small Shaft Spawn Rate" = 0.07 - # The spawn rate for workstation side rooms along the main shaft. - # Default: .025 - #Range: 0.0 ~ 1.0 - "Workstation Spawn Rate" = 0.025 - # The spawn rate for cobwebs. - # Default: .15 - #Range: 0.0 ~ 1.0 - "Cobweb Spawn Rate" = 0.15 - # The spawn rate for lanterns in the main shaft. - # Default: .0067 - #Range: 0.0 ~ 1.0 - "Lantern Spawn Rate" = 0.0067 - # The spawn rate for torches in small shafts. - # Default: .02 - #Range: 0.0 ~ 1.0 - "Torch Spawn Rate" = 0.02 - # The number of "pieces" (e.g. straight, turn, ladder, intersection, etc.) in a single small shaft. - # This determines the overall length of small shafts. - # Default: 9 - #Range: 0 ~ 1000 - "Small Shaft Piece Chain Length" = 9 - - ########################################################################################################### - ## Ore deposit settings. - ########################################################################################################### - ["YUNG's Better Mineshafts"."Ore Deposits"] - # Chance of an ore deposit containing emerald. - # Default: 3 - #Range: 0 ~ 100 - "Emerald Spawn Chance" = 3 - # Chance of an ore deposit being cobblestone only. - # Default: 50 - #Range: 0 ~ 100 - "Cobble Spawn Chance (Empty Deposit)" = 50 - # Chance of an ore deposit containing iron. - # Default: 9 - #Range: 0 ~ 100 - "Iron Spawn Chance" = 9 - # Chance of an ore deposit containing gold. - # Default: 7 - #Range: 0 ~ 100 - "Gold Spawn Chance" = 7 - # Chance of an ore deposit containing diamond. - # Default: 1 - #Range: 0 ~ 100 - "Diamond Spawn Chance" = 1 - "Enable Ore Deposits" = true - # Chance of an ore deposit containing lapis lazuli. - # Default: 3 - #Range: 0 ~ 100 - "Lapis Spawn Chance" = 3 - # Chance of an ore deposit containing coal. - # Default: 20 - #Range: 0 ~ 100 - "Coal Spawn Chance" = 20 - # Chance of an ore deposit containing redstone. - # Default: 7 - #Range: 0 ~ 100 - "Redstone Spawn Chance" = 7 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/README.txt b/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/README.txt deleted file mode 100644 index 498b745..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/README.txt +++ /dev/null @@ -1,85 +0,0 @@ -variants.json README - -The variants.json file contains two properties: - - variants: a list of all the biome-dependent Variant Settings objects (see below) - * NOTE - order is important! The list will be searched in order, and searching will be stopped at the first match. - For example, if you have a rare mesa variant that uses the RARE and MESA biomeTags, as well as a normal mesa variant that only uses the MESA biomeTag, - you will have to put the rare mesa variant BEFORE the normal mesa variant, or else all mesa biomes will match the normal mesa variant before they can check for the rare mesa variant. - - defaultVariant: a Variant Settings object to use for biomes that don't match the biomeTags for any of the Variant Settings in the "variants" list. - This serves as the go-to/default mineshaft - think plain ol' oak planks mineshafts - -Variant Settings: a single Variant Settings object is composed of the following properties. -ALL of these properties are required for ALL Variants Settings objects, with the exception of the biomeTags for the defaultVariant. - - biomeTags: a list of lists of BiomeDictionary tags required for this variant to spawn. Only one of the lists of tags must be matched. - For example, by default we want the Red Desert mineshaft variant to spawn in rare desert AND rare mesa biomes. - All desert biomes have the HOT, DRY, and SANDY tags; all mesa biomes have the MESA tag. - Therefore, the biomeTags list for our Red Desert mineshaft in this example will look like the following: - "biomeTags": [ - [ - "HOT", - "DRY", - "SANDY", - "RARE" - ], - [ - "MESA", - "RARE" - ] - ] - NOTE that the biomeTags property is IGNORED for the defaultVariant, since the defaultVariant simply acts as the variant for all - the biomes in the world that don't meet the criteria for any of the variants in the "variants" list. - * SEE THE biomeTags.txt FILE FOR A LIST OF ALL BIOME TAGS * - - mainSelector: the BlockSelector (see below) used for generating the mineshaft's walls and ceiling - - floorSelector: the BlockSelector (see below) used for generating the mineshaft's floor - - brickSelector: the BlockSelector (see below) used for generating areas of the mineshaft where brick-like blocks would be more appropriate. - This includes abandoned workstations, workstation cellars, and the doorway at the end of the main shaft for mineshafts containing surface openings. - - legSelector: the BlockSetSelector (see below) used for generating the 'legs' of the main mineshaft. - These are the supports that form underneath the main mineshaft tunnel when the mineshaft spawns over a big opening. - - mainBlock: The main thematic block for the mineshaft. You will almost certainly want this to be the same as the defaultBlock in the mainSelector and floorSelector properties (see above). - Used as the base and top of the small supports generated throughout the mineshaft. - Also used as the floor for bridging gaps the mineshaft might spawn over. - - supportBlock: Used as the middle section of the small supports generated throughout the mineshaft. - Also used as the supports in rooms with ladders found in the small shafts. - Also used in Type 1 Leg Variants (see below). - Usually this is a fence or wall block, but it's not required to be. - - slabBlock: The main slab block to use. Should be a block that matches your mainBlock well. - - gravelBlock: The block used for gravel deposits placed randomly throughout mineshafts. - Usually gravel, sand, or snow. - - stoneWallBlock: The block used to frame the left and right sides of the doorway in the main shaft leading to the surface entrance, if present. - This is a very minor piece and doesn't matter much. If you aren't sure, use your mainBlock or one of the blocks in your brickSelector. - - stoneSlabBlock: The block used to frame the top side of the doorway in the main shaft leading to the surface entrance, if present. - This is a very minor piece and doesn't matter much. If you aren't sure, use your mainBlock or one of the blocks in your brickSelector. - - trapdoorBlock: The block used for trapdoors leading to workstation cellars. - - vineChance: chance of vines spawning in the mineshaft - - snowChance: chance of snow spawning on the floor of the mineshaft - - cactusChance: chance of cactus spawning in the mineshaft. Can only spawn on top of valid floor blocks (e.g. sand) - - deadBushChance: chance of dead bushes spawning the mineshaft. Can only spawn on top of valid floor blocks (sand, terracotta, dirt) - - mushroomChance: chance of mushrooms spawning in the mineshaft. Can only spawn on top of valid floor blocks (mycelium, dirt) - - legVariant: The ID of the leg variant to use. ACCEPTABLE VALUES: 1, 2 - 1: The legs used for most mineshafts. Uses the legSelector and the supportBlock. - 2: The legs used for ice and mushroom variants by default. Uses only the legSelector. - - flammableLegs: Boolean value for whether the legs of this mineshaft are made of flammable material. - If a mineshaft variant has this value set to true, it will use the brickSelector instead of the legSelector - to generate legs that will spawn in lava. This helps to prevent mineshafts from catching on fire right after generation. - - replacementRate: The percent of existing blocks the mainSelector and floorSelector should replace. - For example, if the replacementRate is .6, then 60% of the already existing stone, andesite, etc in the floors/walls/ceiling - will be replaced with blocks determined by the selectors. - Lowering this value preserves more of the regular worldgen blocks in the mineshaft's floors/walls/ceiling. - -BlockSelector: Describes a set of blocks and the probability of each block being chosen. - - entries: An object where each entry's key is a block, and each value is that block's probability of being chosen. - The total sum of all probabilities SHOULD NOT exceed 1.0! - - defaultBlock: The block used for any leftover probability ranges. - For example, if the total sum of all the probabilities of the entries is 0.6, then - there is a 0.4 chance of the defaultBlock being selected. - -Here's an example block selector: -"entries": { - "minecraft:cobblestone": 0.25, - "minecraft:air": 0.2, - "minecraft:stonebrick[variant=stonebrick]": 0.1 -}, -"defaultBlock": "minecraft:planks[variant=oak]" - -For each block, this selector has a 25% chance of returning cobblestone, 20% chance of choosing air, -10% chance of choosing stone bricks, and a 100 - (25 + 20 + 10) = 45% chance of choosing oak planks (since it's the default block). diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/biomeTags.txt b/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/biomeTags.txt deleted file mode 100644 index 80cb705..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/biomeTags.txt +++ /dev/null @@ -1,38 +0,0 @@ -Helper file showing all available BiomeDictionary biome tags. - -[ - "BEACH", - "COLD", - "CONIFEROUS", - "DEAD", - "DENSE", - "DRY", - "END", - "FOREST", - "HILLS", - "HOT", - "JUNGLE", - "LUSH", - "MAGICAL", - "MESA", - "MODIFIED", - "MOUNTAIN", - "MUSHROOM", - "NETHER", - "OCEAN", - "OVERWORLD", - "PLAINS", - "PLATEAU", - "RARE", - "RIVER", - "SANDY", - "SAVANNA", - "SNOWY", - "SPARSE", - "SPOOKY", - "SWAMP", - "VOID", - "WASTELAND", - "WATER", - "WET" -] \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/variants.json b/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/variants.json deleted file mode 100644 index 6a31f4c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/1_16/variants.json +++ /dev/null @@ -1,577 +0,0 @@ -{ - "variants": [ - { - "biomeTags": [ - [ - "HOT", - "DRY", - "SANDY", - "RARE" - ], - [ - "MESA", - "RARE" - ] - ], - "mainSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.05, - "minecraft:cut_red_sandstone": 0.1, - "minecraft:smooth_red_sandstone": 0.1, - "minecraft:stone_bricks": 0.05, - "minecraft:chiseled_red_sandstone": 0.1, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:red_sandstone" - }, - "floorSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.05, - "minecraft:cut_red_sandstone": 0.1, - "minecraft:smooth_red_sandstone": 0.1, - "minecraft:stone_bricks": 0.05, - "minecraft:chiseled_red_sandstone": 0.1, - "minecraft:red_sand": 0.3 - }, - "defaultBlock": "minecraft:red_sandstone" - }, - "brickSelector": { - "entries": { - "minecraft:cut_red_sandstone": 0.2, - "minecraft:smooth_red_sandstone": 0.2, - "minecraft:chiseled_red_sandstone": 0.1, - "minecraft:red_sandstone": 0.5 - }, - "defaultBlock": "minecraft:red_sandstone" - }, - "legSelector": { - "entries": { - "minecraft:cut_red_sandstone": 0.2, - "minecraft:smooth_red_sandstone": 0.2, - "minecraft:chiseled_red_sandstone": 0.1, - "minecraft:red_sandstone": 0.5 - }, - "defaultBlock": "minecraft:red_sandstone" - }, - "mainBlock": "minecraft:red_sandstone", - "supportBlock": "minecraft:red_sandstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "slabBlock": "minecraft:red_sandstone_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:red_sand", - "stoneWallBlock": "minecraft:red_sandstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:red_sandstone_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:dark_oak_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.1, - "snowChance": 0.0, - "cactusChance": 0.1, - "deadBushChance": 0.1, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": false, - "replacementRate": 0.6 - }, - { - "biomeTags": [ - [ - "SNOWY", - "RARE" - ] - ], - "mainSelector": { - "entries": { - "minecraft:blue_ice": 0.4, - "minecraft:snow_block": 0.1, - "minecraft:cave_air": 0.1 - }, - "defaultBlock": "minecraft:blue_ice" - }, - "floorSelector": { - "entries": { - "minecraft:blue_ice": 0.2, - "minecraft:snow_block": 0.1 - }, - "defaultBlock": "minecraft:blue_ice" - }, - "brickSelector": { - "entries": { - "minecraft:blue_ice": 0.5 - }, - "defaultBlock": "minecraft:blue_ice" - }, - "legSelector": { - "entries": { - "minecraft:blue_ice": 0.5 - }, - "defaultBlock": "minecraft:blue_ice" - }, - "mainBlock": "minecraft:blue_ice", - "supportBlock": "minecraft:blue_ice", - "slabBlock": "minecraft:blue_ice", - "gravelBlock": "minecraft:snow_block", - "stoneWallBlock": "minecraft:blue_ice", - "stoneSlabBlock": "minecraft:blue_ice", - "trapdoorBlock": "minecraft:spruce_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.05, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.0, - "legVariant": 2, - "flammableLegs": false, - "replacementRate": 0.95 - }, - { - "biomeTags": [ - [ - "MESA" - ] - ], - "mainSelector": { - "entries": { - "minecraft:brown_terracotta": 0.05, - "minecraft:white_terracotta": 0.05, - "minecraft:orange_terracotta": 0.05, - "minecraft:yellow_terracotta": 0.05, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:dark_oak_planks" - }, - "floorSelector": { - "entries": { - "minecraft:brown_terracotta": 0.1, - "minecraft:white_terracotta": 0.1, - "minecraft:orange_terracotta": 0.1, - "minecraft:mossy_stone_bricks": 0.05, - "minecraft:stone_bricks": 0.1, - "minecraft:chiseled_stone_bricks": 0.05, - "minecraft:yellow_terracotta": 0.1 - }, - "defaultBlock": "minecraft:dark_oak_planks" - }, - "brickSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.33333, - "minecraft:mossy_stone_bricks": 0.33333, - "minecraft:stone_bricks": 0.33333 - }, - "defaultBlock": "minecraft:dark_oak_planks" - }, - "legSelector": { - "entries": { - "minecraft:stripped_dark_oak_log[axis=y]": 1.0 - }, - "defaultBlock": "minecraft:dark_oak_planks" - }, - "mainBlock": "minecraft:dark_oak_planks", - "supportBlock": "minecraft:dark_oak_fence[east=false,north=false,south=false,waterlogged=false,west=false]", - "slabBlock": "minecraft:dark_oak_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:gravel", - "stoneWallBlock": "minecraft:stone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:stone_brick_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:dark_oak_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.15, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.1, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": true, - "replacementRate": 0.9 - }, - { - "biomeTags": [ - [ - "JUNGLE" - ] - ], - "mainSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.05, - "minecraft:mossy_stone_bricks": 0.2, - "minecraft:stone_bricks": 0.05, - "minecraft:chiseled_stone_bricks": 0.05, - "minecraft:cave_air": 0.2, - "minecraft:mossy_cobblestone": 0.1 - }, - "defaultBlock": "minecraft:jungle_planks" - }, - "floorSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.05, - "minecraft:mossy_stone_bricks": 0.2, - "minecraft:stone_bricks": 0.05, - "minecraft:chiseled_stone_bricks": 0.05, - "minecraft:mossy_cobblestone": 0.1 - }, - "defaultBlock": "minecraft:jungle_planks" - }, - "brickSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.25, - "minecraft:mossy_stone_bricks": 0.25, - "minecraft:stone_bricks": 0.25, - "minecraft:chiseled_stone_bricks": 0.25 - }, - "defaultBlock": "minecraft:jungle_planks" - }, - "legSelector": { - "entries": { - "minecraft:stripped_jungle_log[axis=y]": 1.0 - }, - "defaultBlock": "minecraft:jungle_planks" - }, - "mainBlock": "minecraft:jungle_planks", - "supportBlock": "minecraft:jungle_fence[east=false,north=false,south=false,waterlogged=false,west=false]", - "slabBlock": "minecraft:jungle_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:gravel", - "stoneWallBlock": "minecraft:stone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:stone_brick_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:jungle_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.6, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": true, - "replacementRate": 0.6 - }, - { - "biomeTags": [ - [ - "SNOWY" - ] - ], - "mainSelector": { - "entries": { - "minecraft:blue_ice": 0.1, - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:cobblestone": 0.05, - "minecraft:packed_ice": 0.2, - "minecraft:snow_block": 0.25, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "floorSelector": { - "entries": { - "minecraft:blue_ice": 0.1, - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:cobblestone": 0.05, - "minecraft:packed_ice": 0.2, - "minecraft:snow_block": 0.25 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "brickSelector": { - "entries": { - "minecraft:blue_ice": 0.25, - "minecraft:packed_ice": 0.25, - "minecraft:snow_block": 0.5 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "legSelector": { - "entries": { - "minecraft:stripped_spruce_log[axis=y]": 1.0 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "mainBlock": "minecraft:spruce_planks", - "supportBlock": "minecraft:spruce_fence[east=false,north=false,south=false,waterlogged=false,west=false]", - "slabBlock": "minecraft:spruce_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:snow_block", - "stoneWallBlock": "minecraft:snow_block", - "stoneSlabBlock": "minecraft:snow_block", - "trapdoorBlock": "minecraft:spruce_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.2, - "snowChance": 1.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": true, - "replacementRate": 0.9 - }, - { - "biomeTags": [ - [ - "COLD", - "CONIFEROUS", - "FOREST" - ] - ], - "mainSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:mossy_stone_bricks": 0.1, - "minecraft:cobblestone": 0.1, - "minecraft:stone_bricks": 0.1, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "floorSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:mossy_stone_bricks": 0.1, - "minecraft:cobblestone": 0.1, - "minecraft:stone_bricks": 0.1 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "brickSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.33333, - "minecraft:mossy_stone_bricks": 0.33333, - "minecraft:stone_bricks": 0.33333 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "legSelector": { - "entries": { - "minecraft:stripped_spruce_log[axis=y]": 1.0 - }, - "defaultBlock": "minecraft:spruce_planks" - }, - "mainBlock": "minecraft:spruce_planks", - "supportBlock": "minecraft:spruce_fence[east=false,north=false,south=false,waterlogged=false,west=false]", - "slabBlock": "minecraft:spruce_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:gravel", - "stoneWallBlock": "minecraft:stone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:stone_brick_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:spruce_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.25, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": true, - "replacementRate": 0.6 - }, - { - "biomeTags": [ - [ - "HOT", - "DRY", - "SANDY" - ] - ], - "mainSelector": { - "entries": { - "minecraft:smooth_sandstone": 0.1, - "minecraft:cracked_stone_bricks": 0.05, - "minecraft:chiseled_sandstone": 0.1, - "minecraft:cut_sandstone": 0.1, - "minecraft:stone_bricks": 0.05, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:sandstone" - }, - "floorSelector": { - "entries": { - "minecraft:smooth_sandstone": 0.1, - "minecraft:cracked_stone_bricks": 0.05, - "minecraft:chiseled_sandstone": 0.1, - "minecraft:cut_sandstone": 0.1, - "minecraft:stone_bricks": 0.05, - "minecraft:cave_air": 0.2, - "minecraft:sand": 0.3 - }, - "defaultBlock": "minecraft:sandstone" - }, - "brickSelector": { - "entries": { - "minecraft:smooth_sandstone": 0.2, - "minecraft:sandstone": 0.5, - "minecraft:cut_sandstone": 0.2, - "minecraft:chiseled_sandstone": 0.1 - }, - "defaultBlock": "minecraft:sandstone" - }, - "legSelector": { - "entries": { - "minecraft:smooth_sandstone": 0.2, - "minecraft:sandstone": 0.5, - "minecraft:cut_sandstone": 0.2, - "minecraft:chiseled_sandstone": 0.1 - }, - "defaultBlock": "minecraft:sandstone" - }, - "mainBlock": "minecraft:sandstone", - "supportBlock": "minecraft:sandstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "slabBlock": "minecraft:sandstone_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:sand", - "stoneWallBlock": "minecraft:sandstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:sandstone_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:oak_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.1, - "snowChance": 0.0, - "cactusChance": 0.1, - "deadBushChance": 0.1, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": false, - "replacementRate": 0.6 - }, - { - "biomeTags": [ - [ - "SAVANNA" - ] - ], - "mainSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:mossy_stone_bricks": 0.1, - "minecraft:cobblestone": 0.1, - "minecraft:stone_bricks": 0.1, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:acacia_planks" - }, - "floorSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:mossy_stone_bricks": 0.1, - "minecraft:cobblestone": 0.1, - "minecraft:stone_bricks": 0.1, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:acacia_planks" - }, - "brickSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.33333, - "minecraft:mossy_stone_bricks": 0.33333, - "minecraft:stone_bricks": 0.33333 - }, - "defaultBlock": "minecraft:acacia_planks" - }, - "legSelector": { - "entries": { - "minecraft:stripped_acacia_log[axis=y]": 1.0 - }, - "defaultBlock": "minecraft:acacia_planks" - }, - "mainBlock": "minecraft:acacia_planks", - "supportBlock": "minecraft:acacia_fence[east=false,north=false,south=false,waterlogged=false,west=false]", - "slabBlock": "minecraft:acacia_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:gravel", - "stoneWallBlock": "minecraft:stone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:stone_brick_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:acacia_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.25, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": true, - "replacementRate": 0.6 - }, - { - "biomeTags": [ - [ - "MUSHROOM" - ] - ], - "mainSelector": { - "entries": { - "minecraft:mushroom_stem[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333, - "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333, - "minecraft:brown_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333 - }, - "defaultBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]" - }, - "floorSelector": { - "entries": { - "minecraft:mycelium[snowy=false]": 1.0 - }, - "defaultBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]" - }, - "brickSelector": { - "entries": { - "minecraft:mushroom_stem[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333, - "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333, - "minecraft:brown_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333 - }, - "defaultBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]" - }, - "legSelector": { - "entries": { - "minecraft:mushroom_stem[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333, - "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333, - "minecraft:brown_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]": 0.33333 - }, - "defaultBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]" - }, - "mainBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]", - "supportBlock": "minecraft:mushroom_stem[down=true,east=true,north=true,south=true,up=true,west=true]", - "slabBlock": "minecraft:brown_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]", - "gravelBlock": "minecraft:gravel", - "stoneWallBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]", - "stoneSlabBlock": "minecraft:red_mushroom_block[down=true,east=true,north=true,south=true,up=true,west=true]", - "trapdoorBlock": "minecraft:oak_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.25, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.4, - "legVariant": 2, - "flammableLegs": true, - "replacementRate": 0.95 - } - ], - "defaultVariant": { - "biomeTags": [], - "mainSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:mossy_stone_bricks": 0.1, - "minecraft:cobblestone": 0.1, - "minecraft:stone_bricks": 0.1, - "minecraft:cave_air": 0.2 - }, - "defaultBlock": "minecraft:oak_planks" - }, - "floorSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.1, - "minecraft:mossy_stone_bricks": 0.1, - "minecraft:cobblestone": 0.1, - "minecraft:stone_bricks": 0.1 - }, - "defaultBlock": "minecraft:oak_planks" - }, - "brickSelector": { - "entries": { - "minecraft:cracked_stone_bricks": 0.33333, - "minecraft:mossy_stone_bricks": 0.33333, - "minecraft:stone_bricks": 0.33333 - }, - "defaultBlock": "minecraft:oak_planks" - }, - "legSelector": { - "entries": { - "minecraft:stripped_oak_log[axis=y]": 1.0 - }, - "defaultBlock": "minecraft:oak_planks" - }, - "mainBlock": "minecraft:oak_planks", - "supportBlock": "minecraft:oak_fence[east=false,north=false,south=false,waterlogged=false,west=false]", - "slabBlock": "minecraft:oak_slab[type=bottom,waterlogged=false]", - "gravelBlock": "minecraft:gravel", - "stoneWallBlock": "minecraft:stone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]", - "stoneSlabBlock": "minecraft:stone_brick_slab[type=top,waterlogged=false]", - "trapdoorBlock": "minecraft:oak_trapdoor[facing=north,half=bottom,open=false,powered=false,waterlogged=false]", - "vineChance": 0.25, - "snowChance": 0.0, - "cactusChance": 0.0, - "deadBushChance": 0.0, - "mushroomChance": 0.0, - "legVariant": 1, - "flammableLegs": true, - "replacementRate": 0.6 - } -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/README.txt b/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/README.txt deleted file mode 100644 index 6fe4457..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bettermineshafts/README.txt +++ /dev/null @@ -1,5 +0,0 @@ -This directory is for adding YUNG's Better Mineshafts advanced options. -Options provided may vary by version. -This directory contains subdirectories for supported versions. The first time you run Better Mineshafts, a version subdirectory will be created if that version supports advanced options. -For example, the first time you use Better Mineshafts v2.0+ for Minecraft 1.12.2, the '1_12_2' subdirectory will be created in this folder. -If no subdirectory for your version is created, then that version probably does not support advanced options. \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals-1_16.toml b/configuration/services/configs/minecraft/voor-kia/config/betterportals-1_16.toml deleted file mode 100644 index c6fe574..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals-1_16.toml +++ /dev/null @@ -1,11 +0,0 @@ - -["Better Portals"] - # The maximum height at which a Dimensional Plasma Bucket may be used to place Dimensional Plasma. - # This option exists to force users to go underground in order to get to the Nether (or other dimension, if configured). - # Default: 15 - #Range: 1 ~ 255 - "Max Dimensional Plasma Placement Altitude" = 15 - # Whether or not vanilla Nether portals can be created. - # Default: false - "Enable Vanilla Nether Portals" = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/README.txt b/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/README.txt deleted file mode 100644 index e0446b4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/README.txt +++ /dev/null @@ -1,69 +0,0 @@ -###################################################### -# README for the rifts.json and monoliths.json files # -###################################################### -NOTE -- EDITING THE rifts.json and monoliths.json FILES REQUIRES A MINECRAFT RESTART TO UPDATE! -Each of these JSON files contains the 'variants' property, which is a list of all the rifts and monoliths to spawn, respectively. - -Each dimensional rift in rifts.json is an object with the following properties: - - blockSelector: A BlockSetSelector describing the blocks this rift is made of. - See the bottom of this README for documentation on BlockSetSelectors. - - fluidColor: The color of ANY DIMENSIONAL PLASMA IN THIS DIMENSION. Keep in mind this hue is added to the base purple hue - - red: Any hex string from 00 to FF. - - green: Any hex string from 00 to FF. - - blue: Any hex string from 00 to FF. - - alpha: Any hex string from 00 to FF. - - minY: The minimum y-coordinate a rift can spawn at. - - maxY: The maximum y-coordinate a rift can spawn at. - - playerTeleportedMinY: The minimum y-coordinate a player can be teleported to in the target dimension. - - playerTeleportedMaxY: The maximum y-coordinate a player can be teleported to in the target dimension. - - spawnDimension: The dimension this rift will spawn in. This MUST be distinct for each variant! In other words - only ONE variant per dimension! - - targetDimension: The dimension this rift will teleport you to. This does not have to be distinct for each variant. - - spawnChance: The chance of a Rift spawning. - - spawnPlatformBlock: Sometimes, when teleporting the player, a small 3x3 platform is generated for the player to stand on. - This is the block the platform will be made of. Should be a block that matches the target dimension well. - -Each monolith in monoliths.json is an object with the following properties: - - stairSelector: A BlockSetSelector describing the stairs on the perimeter of this monolith. - - cornerSelector: A BlockSetSelector describing the blocks on the corners of this monolith. - - insideSelector: A BlockSetSelector describing the blocks making up the inside of this monolith. - - fenceSelector: A BlockSetSelector describing the fences used in this monolith. - - powerBlock: The block required to power this monolith. - - decorationBlock: The block in the four corners of the power grid at the center of this monolith. - - beamStopBlocks: A list of blocks through which the beams of ANY RECLAIMERS PLACED IN THIS DIMENSION cannot pass. - - unpoweredBeamColor: The color of the beam of ANY RECLAIMER IN THIS DIMENSION, when UNPOWERED. - - red: Any hex string from 00 to FF. - - green: Any hex string from 00 to FF. - - blue: Any hex string from 00 to FF. - - alpha: Any hex string from 00 to FF. - - poweredBeamColor: The color of the beam of ANY RECLAIMER IN THIS DIMENSION, when POWERED. - - red: Any hex string from 00 to FF. - - green: Any hex string from 00 to FF. - - blue: Any hex string from 00 to FF. - - alpha: Any hex string from 00 to FF. - - minY: The minimum y-coordinate this monolith can spawn at. - - maxY: The maximum y-coordinate this monolith can spawn at. - - playerTeleportedMinY: The minimum y-coordinate a player can be teleported to in the target dimension. - - playerTeleportedMaxY: The maximum y-coordinate a player can be teleported to in the target dimension. - - spawnDimension: The dimension this monolith will spawn in. This MUST be distinct for each variant! In other words - only ONE variant per dimension! - - targetDimension: The dimension this monolith will teleport you to. This does not have to be distinct for each variant. - - spawnChance: The chance of a Monolith spawning. - -BlockSetSelector information: -A BlockSetSelector describes a set of blocks and the probability of each block being chosen. -Each BlockSetSelector has the following two fields: - - entries: An object where each entry's key is a block, and each value is that block's probability of being chosen. - The total sum of all probabilities SHOULD NOT exceed 1.0! - - defaultBlock: The block used for any leftover probability ranges. - For example, if the total sum of all the probabilities of the entries is 0.6, then - there is a 0.4 chance of the defaultBlock being selected. - -Here's an example BlockSetSelector: -"entries": { - "minecraft:cobblestone": 0.25, - "minecraft:air": 0.2, - "minecraft:stonebrick[variant=stonebrick]": 0.1 -}, -"defaultBlock": "minecraft:planks[variant=oak]" - -For each block, this selector has a 25% chance of returning cobblestone, 20% chance of choosing air, -10% chance of choosing stone bricks, and a 100 - (25 + 20 + 10) = 45% chance of choosing oak planks (since it's the default block). diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/monoliths.json b/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/monoliths.json deleted file mode 100644 index 71b85ba..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/monoliths.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "variants": [ - { - "stairSelector": { - "entries": { - "minecraft:blackstone_stairs[facing=north,half=bottom,shape=straight,waterlogged=false]": 0.5, - "minecraft:polished_blackstone_brick_stairs[facing=north,half=bottom,shape=straight,waterlogged=false]": 0.5 - }, - "defaultBlock": "minecraft:blackstone_stairs[facing=north,half=bottom,shape=straight,waterlogged=false]" - }, - "cornerSelector": { - "entries": {}, - "defaultBlock": "minecraft:chiseled_polished_blackstone" - }, - "insideSelector": { - "entries": { - "minecraft:cracked_polished_blackstone_bricks": 0.2 - }, - "defaultBlock": "minecraft:polished_blackstone_bricks" - }, - "fenceSelector": { - "entries": { - "minecraft:polished_blackstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]": 0.33, - "minecraft:blackstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]": 0.33, - "minecraft:polished_blackstone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]": 0.33 - }, - "defaultBlock": "minecraft:blackstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]" - }, - "powerBlock": "minecraft:gold_block", - "decorationBlock": "minecraft:yellow_glazed_terracotta[facing=north]", - "beamStopBlocks": [ - "minecraft:obsidian" - ], - "unpoweredBeamColor": { - "red": "14", - "green": "0c", - "blue": "24", - "alpha": "FF" - }, - "poweredBeamColor": { - "red": "FF", - "green": "DC", - "blue": "73", - "alpha": "FF" - }, - "minY": 35, - "maxY": 70, - "playerTeleportedMinY": 11, - "playerTeleportedMaxY": 30, - "spawnChance": 0.1, - "spawnDimension": "minecraft:the_nether", - "targetDimension": "minecraft:overworld" - } - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/rifts.json b/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/rifts.json deleted file mode 100644 index 644a9b4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16/rifts.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "variants": [ - { - "blockSelector": { - "entries": { - "minecraft:obsidian": 0.1, - "minecraft:crying_obsidian": 0.05, - "minecraft:gilded_blackstone": 0.05, - "minecraft:blackstone": 0.1, - "minecraft:netherrack": 0.7 - }, - "defaultBlock": "minecraft:cave_air" - }, - "fluidColor": { - "red": "19", - "green": "00", - "blue": "20", - "alpha": "FC" - }, - "minY": 10, - "maxY": 15, - "playerTeleportedMinY": 100, - "playerTeleportedMaxY": 120, - "spawnChance": 0.05, - "spawnDimension": "minecraft:overworld", - "targetDimension": "minecraft:the_nether", - "spawnPlatformBlock": "minecraft:netherrack" - } - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/README.txt b/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/README.txt deleted file mode 100644 index e0446b4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/README.txt +++ /dev/null @@ -1,69 +0,0 @@ -###################################################### -# README for the rifts.json and monoliths.json files # -###################################################### -NOTE -- EDITING THE rifts.json and monoliths.json FILES REQUIRES A MINECRAFT RESTART TO UPDATE! -Each of these JSON files contains the 'variants' property, which is a list of all the rifts and monoliths to spawn, respectively. - -Each dimensional rift in rifts.json is an object with the following properties: - - blockSelector: A BlockSetSelector describing the blocks this rift is made of. - See the bottom of this README for documentation on BlockSetSelectors. - - fluidColor: The color of ANY DIMENSIONAL PLASMA IN THIS DIMENSION. Keep in mind this hue is added to the base purple hue - - red: Any hex string from 00 to FF. - - green: Any hex string from 00 to FF. - - blue: Any hex string from 00 to FF. - - alpha: Any hex string from 00 to FF. - - minY: The minimum y-coordinate a rift can spawn at. - - maxY: The maximum y-coordinate a rift can spawn at. - - playerTeleportedMinY: The minimum y-coordinate a player can be teleported to in the target dimension. - - playerTeleportedMaxY: The maximum y-coordinate a player can be teleported to in the target dimension. - - spawnDimension: The dimension this rift will spawn in. This MUST be distinct for each variant! In other words - only ONE variant per dimension! - - targetDimension: The dimension this rift will teleport you to. This does not have to be distinct for each variant. - - spawnChance: The chance of a Rift spawning. - - spawnPlatformBlock: Sometimes, when teleporting the player, a small 3x3 platform is generated for the player to stand on. - This is the block the platform will be made of. Should be a block that matches the target dimension well. - -Each monolith in monoliths.json is an object with the following properties: - - stairSelector: A BlockSetSelector describing the stairs on the perimeter of this monolith. - - cornerSelector: A BlockSetSelector describing the blocks on the corners of this monolith. - - insideSelector: A BlockSetSelector describing the blocks making up the inside of this monolith. - - fenceSelector: A BlockSetSelector describing the fences used in this monolith. - - powerBlock: The block required to power this monolith. - - decorationBlock: The block in the four corners of the power grid at the center of this monolith. - - beamStopBlocks: A list of blocks through which the beams of ANY RECLAIMERS PLACED IN THIS DIMENSION cannot pass. - - unpoweredBeamColor: The color of the beam of ANY RECLAIMER IN THIS DIMENSION, when UNPOWERED. - - red: Any hex string from 00 to FF. - - green: Any hex string from 00 to FF. - - blue: Any hex string from 00 to FF. - - alpha: Any hex string from 00 to FF. - - poweredBeamColor: The color of the beam of ANY RECLAIMER IN THIS DIMENSION, when POWERED. - - red: Any hex string from 00 to FF. - - green: Any hex string from 00 to FF. - - blue: Any hex string from 00 to FF. - - alpha: Any hex string from 00 to FF. - - minY: The minimum y-coordinate this monolith can spawn at. - - maxY: The maximum y-coordinate this monolith can spawn at. - - playerTeleportedMinY: The minimum y-coordinate a player can be teleported to in the target dimension. - - playerTeleportedMaxY: The maximum y-coordinate a player can be teleported to in the target dimension. - - spawnDimension: The dimension this monolith will spawn in. This MUST be distinct for each variant! In other words - only ONE variant per dimension! - - targetDimension: The dimension this monolith will teleport you to. This does not have to be distinct for each variant. - - spawnChance: The chance of a Monolith spawning. - -BlockSetSelector information: -A BlockSetSelector describes a set of blocks and the probability of each block being chosen. -Each BlockSetSelector has the following two fields: - - entries: An object where each entry's key is a block, and each value is that block's probability of being chosen. - The total sum of all probabilities SHOULD NOT exceed 1.0! - - defaultBlock: The block used for any leftover probability ranges. - For example, if the total sum of all the probabilities of the entries is 0.6, then - there is a 0.4 chance of the defaultBlock being selected. - -Here's an example BlockSetSelector: -"entries": { - "minecraft:cobblestone": 0.25, - "minecraft:air": 0.2, - "minecraft:stonebrick[variant=stonebrick]": 0.1 -}, -"defaultBlock": "minecraft:planks[variant=oak]" - -For each block, this selector has a 25% chance of returning cobblestone, 20% chance of choosing air, -10% chance of choosing stone bricks, and a 100 - (25 + 20 + 10) = 45% chance of choosing oak planks (since it's the default block). diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/monoliths.json b/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/monoliths.json deleted file mode 100644 index 8337200..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/monoliths.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "variants": [ - { - "stairSelector": { - "entries": { - "minecraft:polished_blackstone_brick_stairs[facing=north,half=bottom,shape=straight,waterlogged=false]": 0.5, - "minecraft:blackstone_stairs[facing=north,half=bottom,shape=straight,waterlogged=false]": 0.5 - }, - "defaultBlock": "minecraft:blackstone_stairs[facing=north,half=bottom,shape=straight,waterlogged=false]" - }, - "cornerSelector": { - "entries": {}, - "defaultBlock": "minecraft:chiseled_polished_blackstone" - }, - "insideSelector": { - "entries": { - "minecraft:cracked_polished_blackstone_bricks": 0.2 - }, - "defaultBlock": "minecraft:polished_blackstone_bricks" - }, - "fenceSelector": { - "entries": { - "minecraft:blackstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]": 0.33, - "minecraft:polished_blackstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]": 0.33, - "minecraft:polished_blackstone_brick_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]": 0.33 - }, - "defaultBlock": "minecraft:blackstone_wall[east=none,north=none,south=none,up=true,waterlogged=false,west=none]" - }, - "powerBlock": "minecraft:gold_block", - "decorationBlock": "minecraft:yellow_glazed_terracotta[facing=north]", - "beamStopBlocks": [ - "minecraft:obsidian" - ], - "unpoweredBeamColor": { - "red": "14", - "green": "0c", - "blue": "24", - "alpha": "FF" - }, - "poweredBeamColor": { - "red": "FF", - "green": "DC", - "blue": "73", - "alpha": "FF" - }, - "minY": 35, - "maxY": 70, - "playerTeleportedMinY": 11, - "playerTeleportedMaxY": 30, - "spawnChance": 0.1, - "spawnDimension": "minecraft:the_nether", - "targetDimension": "minecraft:overworld" - } - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/rifts.json b/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/rifts.json deleted file mode 100644 index e288f36..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/betterportals/1_16_3/rifts.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "variants": [ - { - "blockSelector": { - "entries": { - "minecraft:crying_obsidian": 0.05, - "minecraft:netherrack": 0.7, - "minecraft:gilded_blackstone": 0.05, - "minecraft:obsidian": 0.1, - "minecraft:blackstone": 0.1 - }, - "defaultBlock": "minecraft:cave_air" - }, - "fluidColor": { - "red": "19", - "green": "00", - "blue": "20", - "alpha": "FC" - }, - "minY": 10, - "maxY": 15, - "playerTeleportedMinY": 100, - "playerTeleportedMaxY": 120, - "spawnChance": 0.05, - "spawnDimension": "minecraft:overworld", - "targetDimension": "minecraft:the_nether", - "spawnPlatformBlock": "minecraft:netherrack" - } - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/bwncr-common.toml b/configuration/services/configs/minecraft/voor-kia/config/bwncr-common.toml deleted file mode 100644 index aae71da..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/bwncr-common.toml +++ /dev/null @@ -1,16 +0,0 @@ - -[General] - #Silence the wandering trader's ambient sound. - silenceTrader = true - #Silence the server-wide Wither spawn and death broadcast sounds. - silenceWither = true - #Silence the server-wide Ender Dragon Death broadcast sound. - silenceDragon = true - #Silence the server-wide Thunder broadcast sound caused by the Lightning event - silenceLightning = true - #If enabled the console will load up spam showing what sounds are being received and whether or not they are being canceled - debugMode = false - #A list of sounds to silence, discoverable with the toggle command /listen - #enter one sound event per line with no commas. - silenceUs = [] - diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/README.txt b/configuration/services/configs/minecraft/voor-kia/config/byg/README.txt deleted file mode 100644 index 44954f1..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -If you need help understanding what the byg-biomes or byg-sub-biomes configs allow you to do, please watch this video: https://youtu.be/iq0q09O7ZYo - -If you need help with datapacking, please watch this: https://youtu.be/TF_p8OeB-hc \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-biomes.json b/configuration/services/configs/minecraft/voor-kia/config/byg/byg-biomes.json deleted file mode 100644 index 36bd968..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-biomes.json +++ /dev/null @@ -1,1125 +0,0 @@ -{ - "biomes": { - "byg:allium_fields": { - "climate": "WARM", - "dictionary": "LUSH,OVERWORLD,PLAINS,RARE", - "weight": 2, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 5 - }, - { - "name": "byg:red_oak_forest", - "weight": 5 - } - ] - }, - "byg:alps": { - "climate": "ICY", - "dictionary": "COLD,MOUNTAIN,OVERWORLD,SNOWY", - "weight": 5, - "river": "byg:alpine_foothills", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:alpine_foothills", - "weight": 10 - } - ] - }, - "byg:amaranth_fields": { - "climate": "WARM", - "dictionary": "LUSH,OVERWORLD,PLAINS,RARE", - "weight": 2, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 5 - }, - { - "name": "byg:jacaranda_forest", - "weight": 5 - } - ] - }, - "byg:ancient_forest": { - "climate": "WARM", - "dictionary": "FOREST,MAGICAL,OVERWORLD,RARE", - "weight": 1, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:flowering_ancient_forest", - "weight": 5 - }, - { - "name": "byg:glowing_ancient_forest", - "weight": 5 - } - ] - }, - "byg:araucaria_savanna": { - "climate": "DESERT", - "dictionary": "FOREST,OVERWORLD", - "weight": 2, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 5 - }, - { - "name": "byg:araucaria_forest", - "weight": 5 - } - ] - }, - "byg:aspen_forest": { - "climate": "WARM", - "dictionary": "FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:aspen_forest_hills", - "weight": 4 - }, - { - "name": "byg:aspen_clearing", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:autumnal_valley": { - "climate": "COOL", - "dictionary": "DRY,OVERWORLD,PLAINS", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 10 - } - ] - }, - "byg:baobab_savanna": { - "climate": "DESERT", - "dictionary": "DRY,OVERWORLD,SAVANNA,SPARSE", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "minecraft:savanna", - "weight": 3 - } - ] - }, - "byg:bayou": { - "climate": "WARM", - "dictionary": "FOREST,OVERWORLD,SWAMP,WET", - "weight": 5, - "river": "byg:bayou", - "beach": "byg:bayou", - "edge": "", - "hills": [] - }, - "byg:blue_taiga": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:blue_giant_taiga", - "weight": 2 - }, - { - "name": "byg:blue_taiga_hills", - "weight": 4 - }, - { - "name": "byg:fresh_water_lake", - "weight": 4 - } - ] - }, - "byg:bluff_steeps": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,MOUNTAIN,OVERWORLD", - "weight": 6, - "river": "byg:bluff_steeps", - "beach": "byg:rocky_beach", - "edge": "", - "hills": [ - { - "name": "byg:bluff_peaks", - "weight": 10 - } - ] - }, - "byg:boreal_forest": { - "climate": "COOL", - "dictionary": "FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:boreal_forest_hills", - "weight": 4 - }, - { - "name": "byg:boreal_clearing", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:canyons": { - "climate": "WARM", - "dictionary": "MOUNTAIN,OVERWORLD,PLATEAU", - "weight": 0, - "river": "byg:canyons", - "beach": "byg:canyon_edge", - "edge": "byg:canyon_edge", - "hills": [] - }, - "byg:cherry_blossom_forest": { - "climate": "WARM", - "dictionary": "FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:cherry_blossom_clearing", - "weight": 4 - }, - { - "name": "byg:bamboo_forest", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:cika_woods": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "", - "hills": [ - { - "name": "byg:cika_mountains", - "weight": 5 - }, - { - "name": "byg:fresh_water_lake", - "weight": 5 - } - ] - }, - "byg:cold_swamplands": { - "climate": "COOL", - "dictionary": "OVERWORLD,SWAMP", - "weight": 6, - "river": "byg:cold_swamplands", - "beach": "byg:cold_swamplands", - "edge": "", - "hills": [ - { - "name": "byg:cold_swamplands", - "weight": 10 - } - ] - }, - "byg:coniferous_forest": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:coniferous_clearing", - "weight": 4 - }, - { - "name": "byg:coniferous_forest_hills", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:crag_gardens": { - "climate": "WARM", - "dictionary": "JUNGLE,MAGICAL,OVERWORLD,PLATEAU,RARE,WET", - "weight": 1, - "river": "byg:crag_gardens", - "beach": "minecraft:beach", - "edge": "minecraft:river", - "hills": [] - }, - "byg:cypress_swamplands": { - "climate": "WARM", - "dictionary": "OVERWORLD,SWAMP", - "weight": 5, - "river": "byg:cypress_swamplands", - "beach": "byg:cypress_swamplands", - "edge": "", - "hills": [] - }, - "byg:dead_sea": { - "climate": "DESERT", - "dictionary": "OCEAN,OVERWORLD,SPOOKY,WASTELAND", - "weight": 2, - "river": "byg:dead_sea", - "beach": "minecraft:beach", - "edge": "", - "hills": [] - }, - "byg:deciduous_forest": { - "climate": "WARM", - "dictionary": "FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:deciduous_forest_hills", - "weight": 4 - }, - { - "name": "byg:deciduous_clearing", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:dover_mountains": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,MOUNTAIN,OVERWORLD", - "weight": 3, - "river": "byg:dover_mountains", - "beach": "byg:white_beach", - "edge": "", - "hills": [] - }, - "byg:dunes": { - "climate": "DESERT", - "dictionary": "DRY,HOT,OVERWORLD,SANDY", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:oasis", - "weight": 10 - } - ] - }, - "byg:ebony_woods": { - "climate": "WARM", - "dictionary": "DENSE,FOREST,OVERWORLD", - "weight": 4, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 5 - }, - { - "name": "byg:ebony_hills", - "weight": 5 - } - ] - }, - "byg:enchanted_forest": { - "climate": "WARM", - "dictionary": "FOREST,MAGICAL,OVERWORLD,RARE", - "weight": 1, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 2 - }, - { - "name": "byg:enchanted_forest_hills", - "weight": 8 - } - ] - }, - "byg:enchanted_grove": { - "climate": "WARM", - "dictionary": "LUSH,MAGICAL,OVERWORLD,PLAINS,RARE", - "weight": 1, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 2 - }, - { - "name": "byg:flowering_enchanted_grove", - "weight": 8 - } - ] - }, - "byg:evergreen_taiga": { - "climate": "ICY", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:evergreen_hills", - "weight": 4 - }, - { - "name": "byg:evergreen_clearing", - "weight": 3 - }, - { - "name": "byg:evergreen_clearing", - "weight": 3 - } - ] - }, - "byg:glowshroom_bayou": { - "climate": "WARM", - "dictionary": "FOREST,MAGICAL,OVERWORLD,RARE,SWAMP,WET", - "weight": 1, - "river": "byg:glowshroom_bayou", - "beach": "byg:glowshroom_bayou", - "edge": "", - "hills": [] - }, - "byg:grassland_plateau": { - "climate": "WARM", - "dictionary": "OVERWORLD,PLAINS", - "weight": 5, - "river": "byg:grassland_plateau", - "beach": "byg:rocky_beach", - "edge": "", - "hills": [ - { - "name": "byg:wooded_grassland_plateau", - "weight": 10 - } - ] - }, - "byg:great_lakes": { - "climate": "COOL", - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,WATER", - "weight": 3, - "river": "byg:great_lake_isles", - "beach": "byg:great_lake_isles", - "edge": "", - "hills": [ - { - "name": "byg:great_lake_isles", - "weight": 3 - }, - { - "name": "byg:great_lakes", - "weight": 7 - } - ] - }, - "byg:grove": { - "climate": "WARM", - "dictionary": "LUSH,OVERWORLD,PLAINS", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 2 - }, - { - "name": "byg:flowering_grove", - "weight": 8 - } - ] - }, - "byg:guiana_shield": { - "climate": "WARM", - "dictionary": "DENSE,FOREST,HOT,JUNGLE,MOUNTAIN,OVERWORLD", - "weight": 3, - "river": "byg:guiana_shield", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:guiana_clearing", - "weight": 10 - } - ] - }, - "byg:jacaranda_forest": { - "climate": "WARM", - "dictionary": "FOREST,OVERWORLD", - "weight": 4, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:jacaranda_forest_hills", - "weight": 4 - }, - { - "name": "byg:jacaranda_clearing", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:lush_tundra": { - "climate": "ICY", - "dictionary": "COLD,LUSH,OVERWORLD,PLAINS,SNOWY", - "weight": 6, - "river": "minecraft:river", - "beach": "byg:basalt_barrera", - "edge": "", - "hills": [ - { - "name": "byg:frozen_lake", - "weight": 4 - }, - { - "name": "byg:northern_forest", - "weight": 6 - } - ] - }, - "byg:mangrove_marshes": { - "climate": "WARM", - "dictionary": "DENSE,FOREST,OVERWORLD,SWAMP,WET", - "weight": 4, - "river": "byg:mangrove_marshes", - "beach": "byg:mangrove_marshes", - "edge": "", - "hills": [ - { - "name": "byg:coral_mangroves", - "weight": 10 - } - ] - }, - "byg:maple_taiga": { - "climate": "COOL", - "dictionary": "COLD,FOREST,OVERWORLD", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [] - }, - "byg:meadow": { - "climate": "WARM", - "dictionary": "LUSH,OVERWORLD,PLAINS", - "weight": 7, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:flowering_meadow", - "weight": 3 - }, - { - "name": "byg:wooded_meadow", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 4 - } - ] - }, - "byg:mojave_desert": { - "climate": "DESERT", - "dictionary": "DRY,HOT,OVERWORLD,SANDY", - "weight": 3, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "minecraft:desert", - "weight": 10 - } - ] - }, - "byg:orchard": { - "climate": "WARM", - "dictionary": "FOREST,LUSH,OVERWORLD,PLAINS", - "weight": 3, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "minecraft:flower_forest", - "weight": 5 - }, - { - "name": "byg:fresh_water_lake", - "weight": 5 - } - ] - }, - "byg:prairie": { - "climate": "WARM", - "dictionary": "DRY,OVERWORLD,PLAINS", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 2 - }, - { - "name": "byg:prairie_clearing", - "weight": 8 - } - ] - }, - "byg:red_desert": { - "climate": "DESERT", - "dictionary": "DRY,HOT,OVERWORLD,SANDY", - "weight": 2, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:lush_red_desert", - "weight": 5 - }, - { - "name": "byg:red_desert_dunes", - "weight": 5 - } - ] - }, - "byg:red_oak_forest": { - "climate": "WARM", - "dictionary": "FOREST,OVERWORLD", - "weight": 7, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:red_oak_forest_hills", - "weight": 6 - }, - { - "name": "byg:fresh_water_lake", - "weight": 4 - } - ] - }, - "byg:red_rock_mountains": { - "climate": "DESERT", - "dictionary": "DRY,HOT,MOUNTAIN,OVERWORLD", - "weight": 4, - "river": "byg:red_rock_mountains", - "beach": "minecraft:beach", - "edge": "byg:red_rock_lowlands", - "hills": [ - { - "name": "byg:red_rock_highlands", - "weight": 4 - }, - { - "name": "byg:red_rock_lowlands", - "weight": 2 - }, - { - "name": "byg:wooded_red_rock_mountains", - "weight": 4 - } - ] - }, - "byg:redwood_tropics": { - "climate": "WARM", - "dictionary": "DENSE,FOREST,OVERWORLD,RARE", - "weight": 1, - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "", - "hills": [ - { - "name": "byg:redwood_clearing", - "weight": 5 - }, - { - "name": "byg:redwood_mountains", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 2 - } - ] - }, - "byg:rose_fields": { - "climate": "WARM", - "dictionary": "LUSH,OVERWORLD,PLAINS,RARE", - "weight": 2, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:red_spruce_taiga", - "weight": 7 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:seasonal_birch_forest": { - "climate": "COOL", - "dictionary": "COLD,FOREST,OVERWORLD", - "weight": 7, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:seasonal_birch_forest_hills", - "weight": 7 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:seasonal_deciduous_forest": { - "climate": "COOL", - "dictionary": "FOREST,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:seasonal_deciduous_forest_hills", - "weight": 4 - }, - { - "name": "byg:seasonal_deciduous_clearing", - "weight": 4 - }, - { - "name": "byg:fresh_water_lake", - "weight": 2 - } - ] - }, - "byg:seasonal_forest": { - "climate": "COOL", - "dictionary": "COLD,FOREST,OVERWORLD", - "weight": 7, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:seasonal_forest", - "weight": 7 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:seasonal_taiga": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:seasonal_taiga_hills", - "weight": 8 - }, - { - "name": "byg:seasonal_giant_taiga", - "weight": 2 - } - ] - }, - "byg:shattered_glacier": { - "climate": "ICY", - "dictionary": "OVERWORLD,RARE,SNOWY", - "weight": 2, - "river": "byg:shattered_glacier", - "beach": "byg:basalt_barrera", - "edge": "", - "hills": [] - }, - "byg:shrublands": { - "climate": "DESERT", - "dictionary": "DRY,OVERWORLD,PLAINS,SPARSE", - "weight": 6, - "river": "byg:shrublands", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:polluted_lake", - "weight": 3 - }, - { - "name": "byg:shrublands", - "weight": 7 - } - ] - }, - "byg:sierra_valley": { - "climate": "DESERT", - "dictionary": "DRY,HOT,OVERWORLD,PLAINS", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "byg:sierra_range", - "hills": [ - { - "name": "byg:sierra_range", - "weight": 8 - }, - { - "name": "byg:fresh_water_lake", - "weight": 2 - } - ] - }, - "byg:skyris_highlands": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,MOUNTAIN,OVERWORLD", - "weight": 2, - "river": "byg:skyris_highlands", - "beach": "minecraft:beach", - "edge": "", - "hills": [] - }, - "byg:snowy_blue_taiga": { - "climate": "ICY", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 5, - "river": "minecraft:frozen_river", - "beach": "byg:snowy_rocky_black_beach", - "edge": "", - "hills": [ - { - "name": "byg:snowy_blue_taiga_hills", - "weight": 8 - }, - { - "name": "byg:snowy_blue_giant_taiga", - "weight": 2 - } - ] - }, - "byg:snowy_coniferous_forest": { - "climate": "ICY", - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,SNOWY", - "weight": 4, - "river": "minecraft:frozen_river", - "beach": "byg:snowy_rocky_black_beach", - "edge": "", - "hills": [ - { - "name": "byg:snowy_coniferous_clearing", - "weight": 4 - }, - { - "name": "byg:snowy_coniferous_forest_hills", - "weight": 3 - }, - { - "name": "byg:frozen_lake", - "weight": 3 - } - ] - }, - "byg:snowy_deciduous_forest": { - "climate": "ICY", - "dictionary": "FOREST,OVERWORLD,SNOWY", - "weight": 6, - "river": "minecraft:frozen_river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:snowy_deciduous_forest_hills", - "weight": 4 - }, - { - "name": "byg:snowy_deciduous_clearing", - "weight": 3 - }, - { - "name": "byg:frozen_lake", - "weight": 3 - } - ] - }, - "byg:snowy_evergreen_taiga": { - "climate": "ICY", - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,SNOWY", - "weight": 6, - "river": "minecraft:frozen_river", - "beach": "byg:snowy_rocky_black_beach", - "edge": "", - "hills": [ - { - "name": "byg:snowy_evergreen_clearing", - "weight": 4 - }, - { - "name": "byg:snowy_evergreen_hills", - "weight": 3 - }, - { - "name": "byg:frozen_lake", - "weight": 3 - } - ] - }, - "byg:stone_forest": { - "climate": "WARM", - "dictionary": "DENSE,OVERWORLD,PLATEAU", - "weight": 1, - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "", - "hills": [ - { - "name": "byg:pointed_stone_forest", - "weight": 7 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:the_black_forest": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 4, - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "", - "hills": [ - { - "name": "byg:black_forest_clearing", - "weight": 3 - }, - { - "name": "byg:black_forest_hills", - "weight": 3 - }, - { - "name": "byg:forest_fault", - "weight": 2 - }, - { - "name": "byg:fresh_water_lake", - "weight": 2 - } - ] - }, - "byg:tropical_fungal_forest": { - "climate": "WARM", - "dictionary": "DENSE,HOT,JUNGLE,MAGICAL,OVERWORLD", - "weight": 3, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fungal_patch", - "weight": 4 - }, - { - "name": "byg:tropical_fungal_rainforest_hills", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:tropical_rainforest": { - "climate": "WARM", - "dictionary": "DENSE,HOT,JUNGLE,OVERWORLD", - "weight": 6, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:tropical_rainforest_hills", - "weight": 7 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:twilight_valley": { - "climate": "COOL", - "dictionary": "COLD,MAGICAL,OVERWORLD,WASTELAND", - "weight": 2, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:twilight_valley_hills", - "weight": 7 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - }, - "byg:vibrant_swamplands": { - "climate": "COOL", - "dictionary": "LUSH,OVERWORLD,SWAMP,WATER,WET", - "weight": 6, - "river": "byg:vibrant_swamplands", - "beach": "byg:vibrant_swamplands", - "edge": "", - "hills": [] - }, - "byg:weeping_witch_forest": { - "climate": "COOL", - "dictionary": "COLD,FOREST,MAGICAL,OVERWORLD,RARE", - "weight": 1, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:pumpkin_forest", - "weight": 3 - }, - { - "name": "byg:weeping_witch_clearing", - "weight": 7 - } - ] - }, - "byg:woodlands": { - "climate": "WARM", - "dictionary": "DENSE,FOREST,MAGICAL,OVERWORLD", - "weight": 4, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:fresh_water_lake", - "weight": 10 - } - ] - }, - "byg:zelkova_forest": { - "climate": "COOL", - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "weight": 5, - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "", - "hills": [ - { - "name": "byg:zelkova_clearing", - "weight": 4 - }, - { - "name": "byg:zelkova_forest_hills", - "weight": 3 - }, - { - "name": "byg:fresh_water_lake", - "weight": 3 - } - ] - } - } -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-biomes.json b/configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-biomes.json deleted file mode 100644 index 717dec0..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-biomes.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "biomes": { - "byg:bulbis_gardens": { - "dictionary": "END", - "weight": 5, - "edge": "byg:bulbis_gardens_edge", - "hills": [] - }, - "byg:cryptic_wastes": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "byg:ethereal_islands": { - "dictionary": "END", - "weight": 5, - "edge": "byg:ethereal_clearing", - "hills": [ - { - "name": "byg:ethereal_forest", - "weight": 10 - }, - { - "name": "byg:ethereal_clearing", - "weight": 5 - } - ] - }, - "byg:ivis_fields": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "byg:nightshade_forest": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "byg:purpur_peaks": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "byg:shattered_desert": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "byg:shulkren_forest": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "minecraft:end_highlands": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - }, - "minecraft:end_midlands": { - "dictionary": "END", - "weight": 5, - "edge": "", - "hills": [] - } - }, - "void-biomes": { - "byg:viscal_isles": { - "dictionary": "END,VOID", - "weight": 5, - "edge": "", - "hills": [ - { - "name": "byg:shattered_viscal_isles", - "weight": 10 - } - ] - } - } -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-sub-biomes.json b/configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-sub-biomes.json deleted file mode 100644 index ba52746..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-end-sub-biomes.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "biomes": { - "byg:bulbis_gardens_edge": { - "dictionary": "END", - "edge": "" - }, - "byg:ethereal_forest": { - "dictionary": "END", - "edge": "" - }, - "byg:ethereal_clearing": { - "dictionary": "END", - "edge": "" - } - }, - "void-biomes": { - "byg:shattered_viscal_isles": { - "dictionary": "END,VOID", - "edge": "" - } - } -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-nether.toml b/configuration/services/configs/minecraft/voor-kia/config/byg/byg-nether.toml deleted file mode 100644 index 763a12d..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-nether.toml +++ /dev/null @@ -1,15 +0,0 @@ - -[The_Nether] - # - #Is the list of biomes a blacklist or whitelist? - #When this list is a blacklist, the values in the list will not be in world generation. - #When this list is a whitelist, Adding a biome several times gives it more weight in generation and it must contain at least 1 value. - #When set to true, datapack biomes will work automatically! When set to false, you will need to manually add datapack entries. - #Default: true - isBlacklistNether = true - # - #This works as a whitelist or blacklist depending on the "isBlacklistNether" value. - #NO SPACES AFTER COMMAS! - #Default: "" - BlacklistNether = "" - diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-sub-biomes.json b/configuration/services/configs/minecraft/voor-kia/config/byg/byg-sub-biomes.json deleted file mode 100644 index d7c9775..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-sub-biomes.json +++ /dev/null @@ -1,520 +0,0 @@ -{ - "sub-biomes": { - "byg:alpine_foothills": { - "dictionary": "COLD,HILLS,OVERWORLD,SNOWY", - "river": "byg:alpine_foothills", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:araucaria_forest": { - "dictionary": "DENSE,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:aspen_clearing": { - "dictionary": "FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:aspen_forest_hills": { - "dictionary": "FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:bamboo_forest": { - "dictionary": "DENSE,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:basalt_barrera": { - "dictionary": "BEACH,OVERWORLD", - "river": "minecraft:river", - "beach": "", - "edge": "" - }, - "byg:black_forest_clearing": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:black_forest_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:blue_giant_taiga": { - "dictionary": "OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:blue_taiga_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:bluff_peaks": { - "dictionary": "COLD,MOUNTAIN,OVERWORLD,SNOWY", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:bog": { - "dictionary": "OVERWORLD,SWAMP,WATER,WET", - "river": "byg:bog", - "beach": "byg:bog", - "edge": "" - }, - "byg:boreal_clearing": { - "dictionary": "CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:boreal_forest_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:canyon_edge": { - "dictionary": "OVERWORLD,WATER,WET", - "river": "byg:canyon_edge", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:cherry_blossom_clearing": { - "dictionary": "FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:cika_mountains": { - "dictionary": "COLD,CONIFEROUS,FOREST,MOUNTAIN,OVERWORLD", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:coniferous_clearing": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:coniferous_forest_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:coral_mangroves": { - "dictionary": "OVERWORLD,SWAMP,WATER,WET", - "river": "byg:coral_mangroves", - "beach": "byg:coral_mangroves", - "edge": "" - }, - "byg:deciduous_clearing": { - "dictionary": "FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:deciduous_forest_hills": { - "dictionary": "FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:dummy": { - "dictionary": "OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:ebony_hills": { - "dictionary": "DENSE,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:enchanted_forest_hills": { - "dictionary": "FOREST,HILLS,MAGICAL,OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:evergreen_clearing": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:evergreen_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:flowering_ancient_forest": { - "dictionary": "DENSE,FOREST,MAGICAL,OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:flowering_enchanted_grove": { - "dictionary": "LUSH,MAGICAL,OVERWORLD,PLAINS", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:flowering_grove": { - "dictionary": "LUSH,OVERWORLD,PLAINS", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:flowering_meadow": { - "dictionary": "LUSH,OVERWORLD,PLAINS", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:forest_fault": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:fresh_water_lake": { - "dictionary": "OVERWORLD,WATER,WET", - "river": "byg:fresh_water_lake", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:frozen_lake": { - "dictionary": "OVERWORLD,SNOWY,WATER,WET", - "river": "byg:frozen_lake", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:fungal_patch": { - "dictionary": "DENSE,HOT,JUNGLE,MAGICAL,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:glowing_ancient_forest": { - "dictionary": "DENSE,FOREST,MAGICAL,OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:great_lake_isles": { - "dictionary": "CONIFEROUS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:guiana_clearing": { - "dictionary": "FOREST,JUNGLE,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:jacaranda_clearing": { - "dictionary": "FOREST,JUNGLE,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:jacaranda_forest_hills": { - "dictionary": "DENSE,FOREST,HILLS,HOT,JUNGLE,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:lush_red_desert": { - "dictionary": "DRY,HOT,OVERWORLD,SANDY", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:maple_hills": { - "dictionary": "COLD,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:marshlands": { - "dictionary": "OVERWORLD,SWAMP,WATER,WET", - "river": "byg:marshlands", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:northern_forest": { - "dictionary": "COLD,FOREST,LUSH,OVERWORLD,SNOWY", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:oasis": { - "dictionary": "HOT,LUSH,OVERWORLD,SANDY,WATER,WET", - "river": "byg:oasis", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:pointed_stone_forest": { - "dictionary": "FOREST,MOUNTAIN,OVERWORLD,PLATEAU", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:polluted_lake": { - "dictionary": "OVERWORLD,WASTELAND,WATER,WET", - "river": "byg:polluted_lake", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:prairie_clearing": { - "dictionary": "DRY,OVERWORLD,PLAINS,SPARSE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:pumpkin_forest": { - "dictionary": "COLD,FOREST,MAGICAL,OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:rainbow_beach": { - "dictionary": "BEACH,OVERWORLD", - "river": "minecraft:river", - "beach": "", - "edge": "" - }, - "byg:red_desert_dunes": { - "dictionary": "HILLS,HOT,OVERWORLD,SANDY,WASTELAND", - "river": "byg:red_desert_dunes", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:red_oak_forest_hills": { - "dictionary": "FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:red_rock_highlands": { - "dictionary": "HOT,MOUNTAIN,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:red_rock_lowlands": { - "dictionary": "HOT,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:red_spruce_taiga": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:redwood_clearing": { - "dictionary": "FOREST,OVERWORLD,SPARSE", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:redwood_mountains": { - "dictionary": "DRY,HOT,MOUNTAIN,OVERWORLD", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:rocky_beach": { - "dictionary": "OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:seasonal_birch_forest_hills": { - "dictionary": "COLD,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:seasonal_deciduous_clearing": { - "dictionary": "FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:seasonal_deciduous_forest_hills": { - "dictionary": "FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:seasonal_forest_hills": { - "dictionary": "COLD,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:seasonal_giant_taiga": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:seasonal_taiga_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:sierra_range": { - "dictionary": "DRY,HOT,MOUNTAIN,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:snowy_black_beach": { - "dictionary": "BEACH,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "", - "edge": "" - }, - "byg:snowy_blue_giant_taiga": { - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,RARE,SNOWY", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:snowy_blue_taiga_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "minecraft:snowy_beach", - "edge": "" - }, - "byg:snowy_coniferous_clearing": { - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "byg:snowy_black_beach", - "edge": "" - }, - "byg:snowy_coniferous_forest_hills": { - "dictionary": "CONIFEROUS,FOREST,HILLS,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "byg:snowy_black_beach", - "edge": "" - }, - "byg:snowy_deciduous_clearing": { - "dictionary": "FOREST,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "minecraft:snowy_beach", - "edge": "" - }, - "byg:snowy_deciduous_forest_hills": { - "dictionary": "FOREST,HILLS,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "minecraft:snowy_beach", - "edge": "" - }, - "byg:snowy_evergreen_clearing": { - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "byg:snowy_black_beach", - "edge": "" - }, - "byg:snowy_evergreen_hills": { - "dictionary": "CONIFEROUS,FOREST,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "byg:snowy_black_beach", - "edge": "" - }, - "byg:snowy_rocky_black_beach": { - "dictionary": "BEACH,OVERWORLD,SNOWY", - "river": "minecraft:frozen_river", - "beach": "", - "edge": "" - }, - "byg:tropical_fungal_rainforest_hills": { - "dictionary": "DENSE,HILLS,HOT,JUNGLE,MAGICAL,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:tropical_islands": { - "dictionary": "OVERWORLD", - "river": "byg:tropical_islands", - "beach": "byg:rainbow_beach", - "edge": "" - }, - "byg:tropical_rainforest_hills": { - "dictionary": "DENSE,HILLS,HOT,JUNGLE,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:twilight_valley_hills": { - "dictionary": "COLD,HILLS,MAGICAL,OVERWORLD,WASTELAND", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:weeping_witch_clearing": { - "dictionary": "COLD,FOREST,MAGICAL,OVERWORLD,RARE", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:white_beach": { - "dictionary": "BEACH,OVERWORLD", - "river": "minecraft:river", - "beach": "", - "edge": "" - }, - "byg:wooded_grassland_plateau": { - "dictionary": "FOREST,OVERWORLD,PLAINS", - "river": "minecraft:river", - "beach": "byg:rocky_beach", - "edge": "" - }, - "byg:wooded_meadow": { - "dictionary": "FOREST,LUSH,OVERWORLD,PLAINS", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:wooded_red_rock_mountains": { - "dictionary": "DRY,HOT,MOUNTAIN,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:zelkova_clearing": { - "dictionary": "COLD,CONIFEROUS,FOREST,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - }, - "byg:zelkova_forest_hills": { - "dictionary": "COLD,CONIFEROUS,FOREST,HILLS,OVERWORLD", - "river": "minecraft:river", - "beach": "minecraft:beach", - "edge": "" - } - } -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-world.toml b/configuration/services/configs/minecraft/voor-kia/config/byg/byg-world.toml deleted file mode 100644 index 235c77b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/byg/byg-world.toml +++ /dev/null @@ -1,218 +0,0 @@ - -[Overworld] - - [Overworld.Ores] - - [Overworld.Ores.Pendorite] - # - #Number of times to spawn per chunk. - #Default: 10 - #Range: 1 ~ 100 - PendoritePerChunk = 10 - # - #Generate Pendorite Ore? Only spawns in Forest Fault. - GeneratePendorite = true - # - #Y level to start generating at. - #Default: 56 - #Range: 1 ~ 256 - PendoriteY = 56 - # - #Size of the clusters. - #Default: 4 - #Range: 1 ~ 100 - PendoriteSize = 4 - - #Datapacks can and will override all values in the "Ore" category so keep that in mind! - [Overworld.Ores.Ametrine] - # - #Number of times to spawn per chunk. - #Default: 10 - #Range: 1 ~ 100 - AmetrinePerChunk = 10 - # - #Size of the clusters. - #Default: 4 - #Range: 1 ~ 100 - AmetrineSize = 4 - # - #Generate Ametrine Ore? Only spawns in Guiana Shield, Stone Forest, and Pointed Stone Forest! - GenerateAmetrine = true - # - #Y level to start generating at. - #Default: 56 - #Range: 1 ~ 256 - AmetrineY = 56 - - [Overworld.Stones] - - [Overworld.Stones.Scoria_Stone] - # - #Number of times to spawn per chunk. - #Default: 10 - #Range: 1 ~ 100 - ScoriaStonePerChunk = 10 - # - #Y level to start generating at. - #Default: 63 - #Range: 1 ~ 256 - ScoriaStoneY = 63 - # - #Size of the clusters. - #Default: 20 - #Range: 1 ~ 100 - ScoriaStoneSize = 20 - # - #Generate Scoria Stone? - GenerateScoriaStone = true - - [Overworld.Stones.Soap_Stone] - # - #Number of times to spawn per chunk. - #Default: 10 - #Range: 1 ~ 100 - SoapStonePerChunk = 10 - # - #Size of the clusters. - #Default: 20 - #Range: 1 ~ 100 - SoapStoneSize = 20 - # - #Generate Soap Stone? - GenerateSoapStone = true - # - #Y level to start generating at. - #Default: 63 - #Range: 1 ~ 256 - SoapStoneY = 63 - - #Datapacks can and will override all values in the "Stone" category so keep that in mind! - [Overworld.Stones.Rocky_Stone] - # - #Y level to start generating at. - #Default: 63 - #Range: 1 ~ 256 - RockyStoneY = 63 - # - #Size of the clusters. - #Default: 20 - #Range: 1 ~ 100 - RockyStoneSize = 20 - # - #Number of times to spawn per chunk. - #Default: 10 - #Range: 1 ~ 100 - RockyStonePerChunk = 10 - # - #Generate Rocky Stone? - GenerateRockyStone = true - -[The_End] - # - #Does BYG control The End? - ControlEnd = true - # - #End Biome Size. - #Default: 3 - #Range: 0 ~ 10 - IslandBiomeSize = 3 - # - #End Biome Size - #Default: 3 - #Range: 0 ~ 10 - EndBiomeSize = 3 - - [The_End.Void] - # - #Void Biome(where small end islands generate in vanilla) size. - #Default: 3 - #Range: 0 ~ 10 - VoidBiomeSize = 2 - -[The_Nether] - # - #Is the list of biomes a blacklist or whitelist? - #When this list is a blacklist, the values in the list will not be in world generation. - #When this list is a whitelist, Adding a biome several times gives it more weight in generation and it must contain at least 1 value. - #When set to true, datapack biomes will work automatically! When set to false, you will need to manually add datapack entries. - #Default: true - isBlacklistNether = true - # - #Nether Biome Size - #Default: 3 - #Range: 0 ~ 10 - NetherBiomeSize = 3 - # - #Does BYG control The Nether? - ControlNether = true - # - #This works as a whitelist or blacklist depending on the "isBlacklistNether" value. - #NO SPACES AFTER COMMAS! - #Default: "" - BlacklistNether = "" - -#End related settings -[end] - #Does BYG control The End? - #This only applies when making NEW worlds! - #Is not guaranteed to work in specific world types. - #You can find more info here in regards to specific world types: https://github.com/CorgiTaco/BYG/wiki/Enabling-BYG-Nether-&-End-Biomes - #For existing worlds, follow the steps listed here: https://wiki.griefed.de/SCP/edit-world. - controlEnd = true - #End Biome Size - #Default: 3 - #Range: 1-10 - endBiomeSize = 3 - #Void Biome Size - #Default: 2 - #Range: 1-10 - voidBiomeSize = 2 - -#Nether related settings -[nether] - #Does BYG control The Nether? - #This only applies when making NEW worlds! - #Is not guaranteed to work in specific world types. - #You can find more info here in regards to specific world types: https://github.com/CorgiTaco/BYG/wiki/Enabling-BYG-Nether-&-End-Biomes - #For existing worlds, follow the steps listed here: https://wiki.griefed.de/SCP/edit-world. - controlNether = true - #Nether Biome Size - #Default: 3 - #Range: 1-10 - netherBiomeSize = 3 - -#BYG uses a prefix system for its ore spawns. -# Prefix Guide: -# "#" - Biome category representable. -# "$" - Biome dictionary representable. -# "," - Creates a new condition, separate from the previous. -# "ALL" - Spawn in all biomes(no condition). -# "!" - Negates/flips/does the reverse of the condition. -# "" - No prefix serves as a biome ID OR Mod ID representable. -# -# Here are a few examples: -#1. "byg#THE_END, $OCEAN" would mean that the ore may spawn in biomes with the name space "byg" AND in the "END" biome category, OR all biomes in the "OCEAN" dictionary. -#2. "byg:guiana_shield, #MESA" would mean that the ore may spawn in the "byg:guiana_shield" OR all biomes in the "MESA" category. -#3. "byg#ICY$MOUNTAIN" would mean that the ore may only spawn in biomes from byg in the "ICY" category and "MOUNTAIN" dictionary type. -#4. "!byg#DESERT" would mean that the ore may only spawn in biomes that are NOT from byg and NOT in the "DESERT" category. -#5. "ALL", spawn everywhere. -#6. "" Don't spawn anywhere. -[ores] - #What biome(s) does Ametrine spawn in? Default: "byg:shattered_viscal_isles". - ametrineSpawns = "byg:shattered_viscal_isles" - #What biome(s) does Budding Ametrine spawn in? Default: "byg:shattered_viscal_isles". - buddingAmetrineSpawns = "byg:shattered_viscal_isles" - #What biome(s) does Pendorite spawn in? Default: "byg:forest_fault". - pendoriteSpawns = "byg:forest_fault" - #What biome(s) does Therium spawn in? Default: "byg#THE_END". - theriumSpawns = "byg#THEEND" - -#See the explanation for ores for configuring stones. -[stones] - #What biome(s) does Rocky Stone spawn in? Default: "!#THEEND#NETHER". - rockyStoneSpawns = "!#THEEND#NETHER" - #What biome(s) does Scoria Stone spawn in? Default: "!#THEEND#NETHER". - scoriaStoneSpawns = "!#THEEND#NETHER" - #What biome(s) does Soap Stone spawn in? Default: "!#THEEND#NETHER". - soapStoneSpawns = "!#THEEND#NETHER" - diff --git a/configuration/services/configs/minecraft/voor-kia/config/citadel-common.toml b/configuration/services/configs/minecraft/voor-kia/config/citadel-common.toml deleted file mode 100644 index af71d32..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/citadel-common.toml +++ /dev/null @@ -1,8 +0,0 @@ - -[general] - #True if citadel tracks entity properties(freezing, stone mobs, etc) on server. Turn this to false to solve some server lag, may break some stuff. - "Track Entities" = true - #Multiplies the count of entities spawned by this number. 0 = no entites added on chunk gen, 2 = twice as many entities added on chunk gen. Useful for many mods that add a lot of creatures, namely animals, to the spawn lists. - #Range: 0.0 ~ 100000.0 - chunkGenSpawnModifier = 1.0 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/cookingforblockheads-common.toml b/configuration/services/configs/minecraft/voor-kia/config/cookingforblockheads-common.toml deleted file mode 100644 index a6c1d69..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/cookingforblockheads-common.toml +++ /dev/null @@ -1,23 +0,0 @@ -#If true, a cow can be squished into a Milk Jar by dropping an anvil on top. -cowJarEnabled = true -#The amount of milk the cow in a jar generates per tick. -#Range: 0.0 ~ 3.4028234663852886E38 -cowJarMilkPerTick = 0.5 -#Set this to true if you'd like the sink to require water to be piped in, instead of providing infinite of it. -sinkRequiresWater = false -#Enabling this will make the kitchen counters have twice as much inventory space. -largeCounters = false -#Set this to true if you'd like to disallow automation of the oven (pipes and such won't be able to insert/extract) -disallowOvenAutomation = false -#The fuel multiplier for the cooking oven. Higher values means fuel lasts longer, 1.0 is furnace default. -#Range: 0.10000000149011612 ~ 2.0 -ovenFuelTimeMultiplier = 0.33000001311302185 -#The cooking time multiplier for the cooking oven. Higher values means it will take longer. -#Range: 0.25 ~ 9.0 -ovenCookTimeMultiplier = 1.0 -#Set this to true if you'd like the oven to only accept cooking oil as fuel (requires Pam's Harvestcraft) -ovenRequiresCookingOil = false -#Ex Compressum compatibility. Multiplier applied to the milk per tick for Compressed Cow in a Jar. -#Range: 0.0 ~ 3.4028234663852886E38 -compressedCowJarMilkMultiplier = 9.0 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/cosmeticarmorreworked-common.toml b/configuration/services/configs/minecraft/voor-kia/config/cosmeticarmorreworked-common.toml deleted file mode 100644 index bb30134..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/cosmeticarmorreworked-common.toml +++ /dev/null @@ -1,10 +0,0 @@ - -#These settings affects both server and client -[Common] - #Whether or not to disable the RecipeBook in the CosmeticArmorInventory - CosArmorDisableRecipeBook = false - #Whether or not to keep items in cosmetic armor slots in the event of player death - CosArmorKeepThroughDeath = false - #Whether or not to disable the coshat command - CosArmorDisableCosHatCommand = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/create-common.toml b/configuration/services/configs/minecraft/voor-kia/config/create-common.toml deleted file mode 100644 index c01195c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/create-common.toml +++ /dev/null @@ -1,136 +0,0 @@ - -[worldgen] - - # - #Modify Create's impact on your terrain - [worldgen.v2] - # - #Prevents all worldgen added by Create from taking effect - disableWorldGen = false - - [worldgen.v2.copper_ore] - # - #Range: > 0 - minHeight = 40 - # - #Range: > 0 - maxHeight = 85 - # - #Range: > 0 - clusterSize = 18 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 2.0 - - [worldgen.v2.weathered_limestone] - # - #Range: > 0 - minHeight = 10 - # - #Range: > 0 - maxHeight = 30 - # - #Range: > 0 - clusterSize = 128 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 0.015625 - - [worldgen.v2.zinc_ore] - # - #Range: > 0 - minHeight = 15 - # - #Range: > 0 - maxHeight = 70 - # - #Range: > 0 - clusterSize = 14 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 4.0 - - [worldgen.v2.limestone] - # - #Range: > 0 - minHeight = 30 - # - #Range: > 0 - maxHeight = 70 - # - #Range: > 0 - clusterSize = 128 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 0.015625 - - [worldgen.v2.dolomite] - # - #Range: > 0 - minHeight = 20 - # - #Range: > 0 - maxHeight = 70 - # - #Range: > 0 - clusterSize = 128 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 0.015625 - - [worldgen.v2.gabbro] - # - #Range: > 0 - minHeight = 20 - # - #Range: > 0 - maxHeight = 70 - # - #Range: > 0 - clusterSize = 128 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 0.015625 - - [worldgen.v2.scoria] - # - #Range: > 0 - minHeight = 0 - # - #Range: > 0 - maxHeight = 10 - # - #Range: > 0 - clusterSize = 128 - # - #Amount of clusters generated per Chunk. - # >1 to spawn multiple. - # <1 to make it a chance. - # 0 to disable. - #Range: 0.0 ~ 512.0 - frequency = 0.03125 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/decorative_blocks-common.toml b/configuration/services/configs/minecraft/voor-kia/config/decorative_blocks-common.toml deleted file mode 100644 index 2ae0b55..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/decorative_blocks-common.toml +++ /dev/null @@ -1,8 +0,0 @@ - -#Decorative Blocks Configs -[general] - #Bonfire Activator (define a resource location - "bonfire activator" = "minecraft:blaze_powder" - #Disable thatch creation on shearing hay bale - "thatch enabled" = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads-common.toml b/configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads-common.toml deleted file mode 100644 index e4b9a38..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads-common.toml +++ /dev/null @@ -1,24 +0,0 @@ - -#Common config for Farming for Blockheads -[common] - #The range within animals can be fed by the feeding trough. - #Range: 1 ~ 16 - feedingTroughRange = 8 - #The chance for Fertilized Farmland to turn back into regular Farmland (per provided bonus). - #Range: 0.0 ~ 1.0 - fertilizerRegressionChance = 0.0 - #The chance to get a bonus growth when using Red Fertilizer. - #Range: 0.0 ~ 1.0 - fertilizerBonusGrowthChance = 1.0 - #List of names the merchant can have. - merchantNames = ["Swap-O-Matic", "Emerald Muncher", "Weathered Salesperson"] - #The range at which the chicken nest picks up laid eggs. - #Range: 1 ~ 16 - chickenNestRange = 8 - #The maximum amount of animals (per type) until the feeding trough stops feeding. - #Range: > 1 - feedingTroughMaxAnimals = 8 - #The chance to get a bonus crop when using Green Fertilizer. - #Range: 0.0 ~ 1.0 - fertilizerBonusCropChance = 1.0 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads/MarketRegistry.json b/configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads/MarketRegistry.json deleted file mode 100644 index 9e26dfe..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/farmingforblockheads/MarketRegistry.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/fastbench.cfg b/configuration/services/configs/minecraft/voor-kia/config/fastbench.cfg deleted file mode 100644 index 707f5ac..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/fastbench.cfg +++ /dev/null @@ -1,8 +0,0 @@ -# Configuration file - -general { - # If the recipe book is removed from the game. Server-enforced. [default: true] - B:"Remove Recipe Book"=true -} - - diff --git a/configuration/services/configs/minecraft/voor-kia/config/fml.toml b/configuration/services/configs/minecraft/voor-kia/config/fml.toml deleted file mode 100644 index e1ca72d..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/fml.toml +++ /dev/null @@ -1,8 +0,0 @@ -# Enable forge global version checking -versionCheck = true -# does the splashscreen run -splashscreen = true -defaultConfigPath = "defaultconfigs" -# max threads for parallel loading : -1 uses Runtime#availableProcessors -maxThreads = -1 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/forge-common.toml b/configuration/services/configs/minecraft/voor-kia/config/forge-common.toml deleted file mode 100644 index bef1dd9..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/forge-common.toml +++ /dev/null @@ -1,7 +0,0 @@ - -#General configuration settings -[general] - #Defines a default world type to use. The vanilla default world type is represented by 'default'. - #The modded world types are registry names which should include the registry namespace, such as 'examplemod:example_world_type'. - defaultWorldType = "default" - diff --git a/configuration/services/configs/minecraft/voor-kia/config/hardcorerevival-common.toml b/configuration/services/configs/minecraft/voor-kia/config/hardcorerevival-common.toml deleted file mode 100644 index e0f6a28..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/hardcorerevival-common.toml +++ /dev/null @@ -1,34 +0,0 @@ - -[general] - #If true, knocked out players will glow, making them visible through blocks. - glowOnKnockout = true - #The time in ticks in which a player can still be rescued from death. Set to 0 to disable the timer. - #Range: > 0 - ticksUntilDeath = 2400 - #If true, the timer until death continues even if the player logs out. - continueTimerWhileOffline = false - -[rescue] - #The distance at which a player can rescue another. - #Range: 0.0 ~ 3.4028234663852886E38 - rescueDistance = 5.0 - #The time in ticks it takes to rescue a player. - #Range: > 0 - rescueActionTicks = 40 - #The amount of health to respawn with when a player was rescued, out of 20. - #Range: > 1 - rescueRespawnHealth = 1 - #The food level to respawn with when a player was rescued, out of 20. - #Range: > 0 - rescueRespawnFoodLevel = 5 - #Effects applied to a player when rescued, in the format "effect|duration|amplifier" - rescueRespawnEffects = ["minecraft:hunger|600|0", "minecraft:weakness|1200|0"] - -[restrictions] - #If true, knocked out players are still able to punch nearby enemies. - allowUnarmedMelee = false - #If true, knocked out players are still able to fire bows. - allowBows = false - #If true, knocked out players are still able to fire pistols from Mr Crayfish's Gun Mod. - allowPistols = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire-biomes.toml b/configuration/services/configs/minecraft/voor-kia/config/iceandfire-biomes.toml deleted file mode 100644 index 348d773..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire-biomes.toml +++ /dev/null @@ -1,89 +0,0 @@ - -#Biome config -#To filter biomes by registry name "mod_id:biome_id" -#To filter biomes by category "@category" -#To filter biomes by tags "#tag" -# Examples: -# "minecraft:plains" -# "@desert" -# "#overworld" -# -#If you want to exclude biomes put a ! before the biome identifier -# Examples: -# "!minecraft:plains" -# "!@desert" -# "!#nether" -# -#If you want to include biomes that would be satisfied by any in a set use | -# Examples: -# "|minecraft:plains" -# "|@desert" -# "|#nether" -# -#If you want a condition that MUST be satisfied use an & before the biome identifier -#Please note using this on a registry name wouldn't be that useful -# Examples: -# "&minecraft:plains" -# "&@forest" -# "&#overworld" -# -#NOTE: Any entry without a !, |, or & symbol has a higher precedence -#A list like ["!minecraft:plains", "#overworld"] would still see the plains as a viable biome -# -#Finally, you can create a expression that can be evaluated by itself using a + to combine identifiers -# Examples: -# "!#hot+!#dry+!#mountain" -# -#These expressions can be used to filter biomes in a lot of ways -#Lets say we don't want anything to spawn in any place dry and sandy -# "!#dry+!#sandy" -# -#But there is a hot place we want them to spawn that's also wet -# "#hot+#wet" -# -#We just put them as separate values in the list and that'll work out -# ["!#dry+!#sandy","#hot+#wet"] -# -#NOTE: Any entry that's an expression will not be affected by anything else in the list -[biome_configs] - deathwormBiomes = ["&#overworld+|@desert"] - lightningDragonBiomes = ["&#overworld+|#jungle+|#mesa+|#savanna+"] - cockatriceBiomes = ["&#overworld+|@savanna+|#savanna"] - blackHippogryphBiomes = ["minecraft:desert_hills"] - lightningLilyBiomes = ["&#overworld+|@savanna+|#savanna"] - sirenBiomes = ["&#overworld+|@ocean+|#ocean"] - amphithereBiomes = ["&#overworld+|#jungle"] - fireDragonSkeletonBiomes = ["&#overworld+|@desert"] - brownHippogryphBiomes = ["&#overworld+|#mountains+|@extreme_hills"] - amethystBiomes = ["&#overworld+|@savanna+|#savanna"] - hippocampusBiomes = ["&#overworld+|@ocean+|#ocean"] - snowyTrollBiomes = ["&#overworld+|#snowy+|#cold"] - hippogryphBiomes = ["&#overworld+|#mesa+|#mountains+|#hills+|@extreme_hills"] - iceDragonSkeletonBiomes = ["&#overworld+&#snowy+|@icy+|#cold+"] - jungleMyrmexBiomes = ["&#overworld+|#jungle"] - mausoleumBiomes = ["&#overworld+&#snowy+|@icy+|#cold+"] - sapphireBiomes = ["&#overworld+&#snowy+|@icy+|#cold+"] - mountainTrollBiomes = ["&#overworld+|#mountains+|@extreme_hills"] - iceLilyBiomes = ["&#overworld+&#snowy+|@icy+|#cold+"] - chestnutHippogryphBiomes = ["minecraft:wooded_mountains"] - pixieBiomes = ["&#overworld+|#rare+|#magical+|#dense+&#forest+!@taiga+!#hills+!#mountain+!#wet+!#hot+!#cold+!#dry"] - creamyHippogryphBiomes = ["minecraft:savanna_plateau"] - overworldSpawnBiomes = ["|#overworld"] - forestTrollBiomes = ["&#overworld+|@forest+|#forest"] - grayHippogryphBiomes = ["minecraft:dark_forest_hills"] - seaSerpentBiomes = ["&#overworld+|@ocean+|#ocean"] - cyclopsCaveBiomes = ["&#overworld+|@beach+|#beach"] - stymphalianBiomes = ["&#overworld+|@swamp+|#swamp+"] - gorgonTempleBiomes = ["&#overworld+|@beach+|#beach"] - hydraBiomes = ["&#overworld+|@swamp+|#swamp+"] - whiteHippogryphBiomes = ["minecraft:snowy_mountains", "minecraft:snowy_taiga_mountains", "minecraft:snowy_taiga_hills"] - fireLilyBiomes = ["&#overworld+|#hot+"] - graveyardBiomes = ["&#overworld+!@ocean+!#ocean+!@beach+!#beach"] - oreGenBiomes = ["|#overworld"] - iceDragonBiomes = ["&#overworld+|@icy+|#snowy+|#cold+"] - darkBrownHippogryphBiomes = ["minecraft:taiga_mountains", "minecraft:taiga_hills"] - wanderingCyclopsBiomes = ["&#overworld+|@plains+|#plains"] - desertMyrmexBiomes = ["&#overworld+|@desert"] - lightningDragonSkeletonBiomes = ["&#overworld+|@savanna+|#savanna"] - fireDragonBiomes = ["&#overworld+|#hot+|#plains+!#wet+!#cold+!#forest+!#jungle+!#mesa+!#savanna"] - diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire-common.toml b/configuration/services/configs/minecraft/voor-kia/config/iceandfire-common.toml deleted file mode 100644 index 3ebb545..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire-common.toml +++ /dev/null @@ -1,452 +0,0 @@ -[Generation] - - [Generation.Dimensions] - #True if using blacklists, false if using whitelists for dragons and structure gen. - "Use Dimension Blacklist" = false - #Whitelist dragon gen dimensions. Use the format like "minecraft:the_nether" or "rats:ratlantis" - whitelistDimensionsDragons = ["minecraft:overworld"] - #Whitelisted feature(cyclops caves, hydra dens, etc) gen dimensions. Use the format like "minecraft:the_nether" or "rats:ratlantis" - whitelistDimensionsFeature = ["minecraft:overworld"] - #Whitelist mob spawn (troll, hippogryph, etc) dimensions. Use the format like "minecraft:the_nether" or "rats:ratlantis" - whitelistDimensionsMobs = ["minecraft:overworld"] - #Blacklisted dragon gen dimensions. Use the format like "minecraft:the_nether" or "rats:ratlantis" - blacklistDimensionsDragons = ["minecraft:the_nether", "minecraft:the_end"] - #Blacklisted feature(cyclops caves, hydra dens, etc) gen dimensions. Use the format like "minecraft:the_nether" or "rats:ratlantis" - blacklistDimensionsFeature = ["minecraft:the_nether", "minecraft:the_end"] - #Blacklisted mob spawn (troll, hippogryph, etc) dimensions. Use the format like "minecraft:the_nether" or "rats:ratlantis" - blacklistDimensionsMobs = ["minecraft:the_nether", "minecraft:the_end"] - - [Generation.Ores] - #Whether to generate copper ore or not - "Generate Copper Ore" = false - #Whether to generate silver ore or not - "Generate Silver Ore" = true - #Whether to generate sapphire ore or not - "Generate Sapphire Ore" = true - #Whether to generate amethyst ore or not - "Generate Amethyst Ore" = true - - [Generation.Dragon] - #Whether to generate dragon skeletons or not - "Generate Dragon Skeletons" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Generate Dragon Skeleton Chance" = 300 - #Whether to generate dragon caves or not - "Generate Dragon Caves" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Generate Dragon Cave Chance" = 200 - #Whether to generate dragon roosts or not - "Generate Dragon Roosts" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Generate Dragon Roost Chance" = 1000 - #1 out of this number chance per block that gold will generate in dragon lairs. - #Range: 1 ~ 10000 - "Dragon Den Gold Amount" = 4 - #Ratio of Stone(this number) to Ores in Dragon Caves - #Range: 1 ~ 10000 - "Dragon Cave Ore Ratio" = 45 - - [Generation.Structures-Features] - #How far away dangerous structures(dragon roosts, cyclops caves, etc.) must be from spawn(0, 0). - #Range: 1 ~ 10000 - "Dangerous World Gen Dist From Spawn" = 2000 - #How far away dangerous structures(dragon roosts, cyclops caves, etc.) must be from the last generated structure. - #Range: 1 ~ 10000 - "Dangerous World Gen Dist Seperation" = 500 - #Whether to generate glacier biomes or not - "Generate Glaciers" = true - #Glacier Spawn Weight. Higher number = more common - #Range: 1 ~ 10000 - "Glacier Spawn Weight" = 4 - #True if mausoleums are allowed to generate - "Generate Mausoleums" = true - #One out of this number chance per chunk to generate a mausoleum. - #Range: 1 ~ 10000 - "Mausoleum Gen Chance" = 5000 - #Whether to generate graveyards or not - "Generate Graveyards" = true - #Graveyard rarity. - #Range: 2 ~ 10000 - "Graveyard Chance" = 100 - -[Dragons] - - [Dragons.Griefing] - #Dragon griefing - 2 is no griefing, 1 is breaking weak blocks, 0 is default - #Range: 0 ~ 2 - "Dragon Griefing" = 2 - #True if tamed dragons can follow the griefing rules. - "Tamed Dragon Griefing" = false - #The percentage chance for a block to drop as an item when a dragon breaks it. - #Range: 0.0 ~ 1.0 - "Dragon Block Breaking Drop Chance" = 0.10000000149011612 - #Blocks that a dragon cannot break. Use the format like "minecraft:chest" or "rats:block_of_cheese" - blacklistedBreakBlocks = [] - #Blocks that a dragon can break, but won't spawn drops for. Use the format like "minecraft:stone" or "rats:block_of_cheese" - noDropBreakBlocks = ["minecraft:stone", "minecraft:dirt", "minecraft:grass_block"] - - [Dragons.Attributes] - #How long it takes(in ticks) for a dragon egg to hatch - #Range: > 1 - "Dragon Egg Hatch Time" = 7200 - #Dragon Flap Noise Distance - Larger number, further away you can hear it - #Range: 0 ~ 10000 - "Dragon Flap Noise Distance" = 4 - #Dragon Flute Distance - how many chunks away is the dragon flute effective? - #Range: 0 ~ 10000 - "Dragon Flute Distance" = 4 - #Max dragon health. Health is scaled to this - #Range: 1.0 ~ 100000.0 - "Dragon Health" = 500.0 - #Max dragon attack damage. Attack Damage is scaled to this - #Range: 1 ~ 10000 - "Dragon Attack Damage" = 17 - #Damage dealt from a successful fire breath attack. Attack Damage is scaled to by age, so a stage 5 dragon will deal 5x as much as this number - #Range: 0.0 ~ 10000.0 - "Dragon Attack Damage(Fire breath)" = 2.0 - #Damage dealt from a successful ice breath attack. Attack Damage is scaled to by age, so a stage 5 dragon will deal 5x as much as this number - #Range: 0.0 ~ 10000.0 - "Dragon Attack Damage(Ice breath)" = 2.5 - #Damage dealt from a successful lightning breath attack. Attack Damage is scaled to by age, so a stage 5 dragon will deal 5x as much as this number - #Range: 0.0 ~ 10000.0 - "Dragon Attack Damage(Lightning breath)" = 3.5 - #Change this to slow down or speed up dragon or amphithere flight. - #Range: 0.0 ~ 2.0 - "Dragon Flight Speed Modifier" = 1.0 - #Enable this if your server is being bombarded with moved wrongly or moved too fast console messages. REQUIRES RESTART! - "Dragon Moved Wrongly Error Fix" = false - - [Dragons.Behaviour] - #How high dragons can fly, in Y height. - #Range: > 100 - "Max Dragon Flight Height" = 128 - #How far away dragons will detect gold blocks being destroyed or chests being opened - #Range: 0 ~ 10000 - "Dragon Gold Search Length" = 30 - #True if dragons can despawn. Note that if this is false there may be SERIOUS lag issues. - "Dragons Despawn" = true - #True if tamed dragons go to sleep at night. - "Tamed Dragons Sleep" = true - #True if dragons can break blocks if they get stuck. Turn this off if your dragons randomly explode. - "Dragons Dig When Stuck" = true - #True if dragons can drop their skull on death. - "Dragons Drop Skull" = true - #True if dragons can drop their heart on death. - "Dragons Drop Heart" = true - #True if dragons can drop their blood on death. - "Dragons Drop Blood" = true - #True if dragons fire/ice charges create secondary explosions that launch blocks everywhere. Turn this to true if you like unfair explosions. Or lag. - "Explosive Dragon Breath" = false - #How many blocks away can dragons spot potential prey. Note that increasing this could cause lag. - #Range: 1 ~ 10000 - "Dragon Target Search Length" = 128 - #How many blocks away can dragons wander from their defined "home" position. - #Range: 1 ~ 10000 - "Dragon Wander From Home Distance" = 40 - #Every interval of this number in ticks, dragon hunger decreases. - #Range: 1 ~ 10000 - "Dragon Hunger Tick Rate" = 3000 - #Every interval of this number in ticks, dragon allowed to break blocks. - #Range: 0 ~ 10000 - "Dragon Block Break Cooldown" = 5 - #True if villagers should run away and hide from dragons and other hostile Ice and Fire mobs. - "Villagers Fear Dragons" = true - #True if animals should run away and hide from dragons and other hostile Ice and Fire mobs. - "Animals Fear Dragons" = true - #A more intelligent dragon pathfinding system, but is also laggier. Turn this on if you think dragons are too stupid. - "Intelligent Dragon Pathfinding" = false - -[Mobs] - - [Mobs.Pixies] - #True if pixie villages are allowed to spawn - "Spawn Pixies" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Pixies Chance" = 800 - #size of pixie villages - #Range: 1 ~ 10000 - "Pixie Village Size" = 5 - #True if pixies are allowed to steal from players - "Pixies Steal Items" = true - - [Mobs.Cyclops] - #True if cyclops caves are allowed to spawn - "Spawn Cyclopes Caves" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Cyclops Cave Chance" = 1000 - #True if wandering cyclopes are allowed to spawn - "Spawn Wandering Cyclopes" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Wandering Cyclops Chance" = 300 - #Maximum cyclops health - #Range: 1.0 ~ 10000.0 - "Cyclops Max Health" = 150.0 - #How many blocks away can cyclopes detect sheep. Note that increasing this could cause lag. - #Range: 1 ~ 10000 - "Cyclopes Sheep Search Length" = 17 - #Cyclops attack strength - #Range: 1.0 ~ 10000.0 - "Cyclops Attack Strength" = 15.0 - #Amount of damage done with cyclops bite attack. - #Range: 1.0 ~ 10000.0 - "Cyclops Bite Strength" = 40.0 - #Whether or not cyclops can break logs or leaves in their way - "Cyclops Griefing" = false - - [Mobs.Sirens] - #Maximum siren health - #Range: 1.0 ~ 10000.0 - "Siren Max Health" = 50.0 - #True if siren islands are allowed to spawn - "Spawn Sirens" = true - #True to make the screen pink when sirens attract players - "Use Siren Shader" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Sirens Chance" = 400 - #how long(in ticks) can a siren use its sing effect on a player, without a cooldown. - #Range: 100 ~ 24000 - "Siren Max Sing Time" = 12000 - #how long(in ticks) a siren has to wait after failing to lure in a player - #Range: 100 ~ 24000 - "Siren Time Between Songs" = 2000 - - [Mobs.DeathWorms] - #How many blocks away can death worms spot potential prey. Note that increasing this could cause lag - #Range: 1 ~ 10000 - "Death Worm Target Search Length" = 64 - #Default deathworm health, this is scaled to the worm's particular size - #Range: 1.0 ~ 10000.0 - "Death Worm Base Health" = 10.0 - #Default deathworm attack strength, this is scaled to the worm's particular size - #Range: 1.0 ~ 10000.0 - "Death Worm Base Attack Strength" = 3.0 - #True if deathworms are allowed to spawn - "Spawn Death Worms" = true - #True if wild deathworms are allowed to target and attack monsters - "Death Worms Target Monsters" = true - #Deathworm spawn weight. Higher = lower chance to spawn - #Range: 1 ~ 10000 - "Death Worm Spawn Weight" = 100 - #A double check to see if the game can spawn death worms. Higher number = lower chance to spawn. - #Range: 0 ~ 10000 - "Death Worm Spawn Check Chance" = 3 - - [Mobs.Cockatrice] - #Maximum cockatrice health - #Range: 1.0 ~ 10000.0 - "Cockatrice Health" = 40.0 - #1 out of this number chance per 6000 ticks for a chicken to lay a cockatrice egg. - #Range: > 1 - "Cockatrice chicken Search Length" = 30 - #True if chickens lay rotten eggs. - "Chickens Lay Rotten Eggs" = true - #True if cockatrices are allowed to spawn - "Spawn Cockatrices" = true - #Cockatrice spawn weight. Lower = lower chance to spawn - #Range: 1 ~ 10000 - "Cockatrice Spawn Weight" = 4 - #A double check to see if the game can spawn cockatrices. Higher number = lower chance to spawn. - #Range: 0 ~ 10000 - "Cockatrice Spawn Check Chance" = 1000 - - [Mobs.Stymphalians] - #How many blocks away can stymphalian birds spot potential prey. Note that increasing this could cause lag. - #Range: 1 ~ 10000 - "Stymphalian Bird Target Search Length" = 64 - #1/this number chance for a stymphalian feather to turn into an item before despawning. Zero means never. - #Range: 0 ~ 10000 - "Stymphalian Bird Feather Drop Chance" = 25 - #Stymphalian bird feather attack strength. - #Range: 0.0 ~ 10000.0 - "Stymphalian Bird Feather Attack Strength" = 1.0 - #How far away stymphalian birds will consider other birds to be in the same flock. - #Range: 1 ~ 10000 - "Stymphalian Bird Flock Length" = 40 - #How high stymphalian birds can fly, in Y height. - #Range: > 10 - "Max Stymphalian Bird Flight Height" = 80 - #True if stymphalian birds are allowed to spawn - "Spawn Stymphalian Birds" = true - #True if stymphalian birds can drop items registered in the ore dictionary to ingotCopper, ingotBronze, nuggetCopper, nuggetBronze. - "Stymphalian Birds drop ore dict items" = true - #True if stymphalian birds are allowed to target and attack animals - "Stymphalian Birds Target Animals" = false - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Stymhphalian Bird Chance" = 500 - - [Mobs.Trolls] - #True if trolls are allowed to spawn - "Spawn Trolls" = true - #True if trolls are allowed to drop their weapon on death. - "Trolls Drop Weapon" = true - #Troll spawn weight. Lower = lower chance to spawn - #Range: 1 ~ 10000 - "Troll Spawn Weight" = 40 - #A double check to see if the game can spawn trolls. Higher number = lower chance to spawn. - #Range: 0 ~ 10000 - "Troll Spawn Check Chance" = 10 - #Maximum troll health - #Range: 1.0 ~ 10000.0 - "Troll Max Health" = 50.0 - #Troll attack strength - #Range: 1.0 ~ 10000.0 - "Troll Attack Strength" = 10.0 - - [Mobs.Myrmex] - #True if myrmex colonies are allowed to spawn - "Spawn Myrmex" = true - #How many ticks it takes for a Myrmex Queen to produce an egg. - #Range: 1 ~ 10000 - "Myrmex Gestation Length" = 2500 - #How many ticks it takes for a Myrmex to move from a larva to a pupa, and from a pupa to an adult. - #Range: 1 ~ 100000 - "Myrmex Hatch Length" = 35000 - #One out of this number chance per chunk to generate a myrmex hive. - #Range: 1 ~ 10000 - "Myrmex Colony Gen Chance" = 1500 - #How many maximum individuals a myrmex colony can have. - #Range: 10 ~ 10000 - "Myrmex Colony Max Size" = 80 - #Base Myrmex(worker) attack strength - #Range: 1.0 ~ 10000.0 - "Myrmex Base Attack Strength" = 3.0 - #The maximum radius myrmex area allowed to wander/forage - #Range: 100 ~ 20000 - "Myrmex Maximum Wnader Radius" = 4000 - - [Mobs.Amphitheres] - #True if amphitheres are allowed to spawn - "Spawn Amphitheres" = true - #Amphithere spawn weight. Lower = lower chance to spawn - #Range: 1 ~ 10000 - "Amphithere Spawn Weight" = 50 - #How many blocks away can ampitheres detect villagers being hurt. Note that increasing this could cause lag. - #Range: 1 ~ 10000 - "Amphithere Villager Search Length" = 64 - #How many ticks it takes while riding an untamed amphithere to tame it. - #Range: 1 ~ 10000 - "Amphithere Tame Time" = 400 - #How fast amphitheres fly. - #Range: 0.0 ~ 3.0 - "Amphithere Flight Speed" = 1.75 - #Maximum amphithere health - #Range: 1.0 ~ 10000.0 - "Amphithere Max Health" = 50.0 - #Amphithere attack strength - #Range: 1.0 ~ 10000.0 - "Amphithere Attack Strength" = 7.0 - - [Mobs.SeaSerpents] - #True if sea serpents are allowed to spawn - "Spawn Sea Serpents" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Sea Serpent Chance" = 2500 - #Whether or not sea serpents can break weak blocks in their way - "Sea Serpent Griefing" = false - #Default sea serpent health, this is scaled to the sea serpent's particular size - #Range: 1.0 ~ 10000.0 - "Sea Serpent Base Health" = 20.0 - #Default sea serpent attack strength, this is scaled to the sea serpent's particular size - #Range: 1.0 ~ 10000.0 - "Sea Serpent Base Attack Strength" = 4.0 - - [Mobs.Hippocampus] - #True if hippocampi are allowed to spawn - "Spawn Hippocampus" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Hippocampus Chance" = 200 - #Change this to slow down or speed up hippocampus swimming. - #Range: 0.0 ~ 2.0 - "Hippocampus Swim Speed Modifier" = 1.0 - - [Mobs.Hippogryph] - #True if hippogryphs are allowed to spawn - "Spawn Hippogryphs" = true - #Hippogryph spawn weight. Lower = lower chance to spawn. - #Range: 1 ~ 10000 - "Hippogryph Spawn Weight" = 1 - #Change this to slow down or speed up hippogryph flight. - #Range: 0.0 ~ 2.0 - "Hippogryph Flight Speed Modifier" = 1.0 - - [Mobs.Gorgons] - #True if gorgon temples are allowed to spawn - "Spawn Gorgons" = true - #1 out of this number chance per chunk for generation - #Range: 1 ~ 10000 - "Spawn Gorgon Chance" = 10000 - #Maximum gorgon health - #Range: 1.0 ~ 10000.0 - "Gorgon Max Health" = 100.0 - - [Mobs.Others] - #True if dread liches are allowed to spawn - "Spawn Liches" = true - #Dread Lich spawn weight. Lower = lower chance to spawn - #Range: 1 ~ 10000 - "Lich Spawn Weight" = 2 - #Maximum hydra health - #Range: 1.0 ~ 10000.0 - "Hydra Max Health" = 250.0 - #True if hydra caves are allowed to generate - "Generate Hydra Caves" = true - #One out of this number chance per chunk to generate a hydra cave. - #Range: 1 ~ 10000 - "Hydra Caves Gen Chance" = 1000 - #Maximum ghost health. - #Range: 1.0 ~ 10000.0 - "Ghost Max Health" = 30.0 - #Maximum ghost attack strength. - #Range: 0.0 ~ 10000.0 - "Ghost Attack Strength" = 3.0 - #True if ghosts can rarely spawn from brutal PvP deaths. - "Ghost Spawn from PvP deaths" = true - #Villager Scribe House generation weight. Lower = lower chance to spawn - #Range: 30 ~ 10000 - "Villager Scribe House Weight" = 30 - -[Items] - #Default attack strength of a dragonsteel sword. - #Range: 5.0 ~ 2.147483647E9 - "Dragonsteel Sword Base Attack Strength" = 25.0 - #Default armor value of dragonsteel chestplate. - #Range: > 7 - "Dragonsteel Base Armor" = 12 - #Default durability value of dragonsteel tools. - #Range: > 1 - "Dragonsteel Base Durability" = 8000 - #Default durability value of dragonsteel equipment. - #Range: > 1 - "Dragonsteel Base Durability Equipment" = 8000 - #Disable this to remove easter egg with tinkers installed. - Weezer = true - #Percentage of critical strike that will disarm with easter egg tinkers material. - #Range: 0.0 ~ 1.0 - "Easter Egg Tinkers Tool Disarm chance" = 0.20000000298023224 - #True if the summon crystal can load chunks to find dragons. - "Chunk Load Summon Crystal" = true - #True if the dragon bone fire sword ignites attackers. - "Dragon Bone Fire Abilities" = true - #True if the dragon bone ice sword freezes attackers. - "Dragon Bone Ice Abilities" = true - #True if the dragon bone lightning sword strikes attackers. - "Dragon Bone Lightning Abilities" = true - -[Pathfinding] - #Maximum threads to use for dragon/myrmex pathfinding. Increase this number if pathing is slow and you have many cores. - #Range: > 1 - "Dragon Pathfinding Threads" = 3 - #Maximum nodes for dragons/myrmex to path too. Decrease this is dragon pathfinding is super slow or intensive. - #Range: > 1 - "Dragon Max Pathfinding Nodes" = 5000 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/amethyst_gen_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/amethyst_gen_biomes.json deleted file mode 100644 index a74daf4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/amethyst_gen_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/amphithere_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/amphithere_biomes.json deleted file mode 100644 index ab82bf2..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/amphithere_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "jungle" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/cockatrice_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/cockatrice_biomes.json deleted file mode 100644 index a74daf4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/cockatrice_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/cyclops_cave_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/cyclops_cave_biomes.json deleted file mode 100644 index 38e6e45..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/cyclops_cave_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "beach" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "beach" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/deathworm_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/deathworm_biomes.json deleted file mode 100644 index 7f73edd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/deathworm_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/desert_myrmex_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/desert_myrmex_biomes.json deleted file mode 100644 index 7f73edd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/desert_myrmex_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_biomes.json deleted file mode 100644 index 0473537..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_biomes.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "hot" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "jungle" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "mesa" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "plains" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "wet" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "cold" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "jungle" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "mesa" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "savanna" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "forest" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_skeleton_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_skeleton_biomes.json deleted file mode 100644 index 7f73edd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_dragon_skeleton_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "desert" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_lily_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_lily_biomes.json deleted file mode 100644 index 53b1af0..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/fire_lily_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "hot" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/forest_troll_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/forest_troll_biomes.json deleted file mode 100644 index f2356ca..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/forest_troll_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "forest" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/gorgon_temple_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/gorgon_temple_biomes.json deleted file mode 100644 index 38e6e45..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/gorgon_temple_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "beach" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "beach" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/graveyard_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/graveyard_biomes.json deleted file mode 100644 index 343fa29..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/graveyard_biomes.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "ocean" - }, - { - "type": "BIOME_CATEGORY", - "negate": true, - "value": "ocean" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "beach" - }, - { - "type": "BIOME_CATEGORY", - "negate": true, - "value": "beach" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippocampus_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippocampus_biomes.json deleted file mode 100644 index 3fba906..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippocampus_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_biomes.json deleted file mode 100644 index 21e99bd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_biomes.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mountain" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "hills" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "extreme_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_black_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_black_biomes.json deleted file mode 100644 index eac1949..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_black_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:desert_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_brown_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_brown_biomes.json deleted file mode 100644 index 8b33d39..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_brown_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mountains" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "extreme_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_chestnut_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_chestnut_biomes.json deleted file mode 100644 index 21211b2..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_chestnut_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:wooded_mountains" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_creamy_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_creamy_biomes.json deleted file mode 100644 index 48b78bd..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_creamy_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:savanna_plateau" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_dark_brown_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_dark_brown_biomes.json deleted file mode 100644 index 3bdc692..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_dark_brown_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:taiga_mountains" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:taiga_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_gray_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_gray_biomes.json deleted file mode 100644 index 718a68a..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_gray_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:dark_forest_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_white_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_white_biomes.json deleted file mode 100644 index ac739b4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hippogryph_white_biomes.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:snowy_mountains" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:snowy_taiga_hills" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "REGISTRY_NAME", - "negate": false, - "value": "minecraft:snowy_taiga_mountains" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hydra_cave_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hydra_cave_biomes.json deleted file mode 100644 index b696ee0..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/hydra_cave_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "swamp" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "swamp" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_biomes.json deleted file mode 100644 index 196b79b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_biomes.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "icy" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "cold" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_skeleton_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_skeleton_biomes.json deleted file mode 100644 index 6d766c7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_dragon_skeleton_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "icy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_lily_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_lily_biomes.json deleted file mode 100644 index 6d766c7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ice_lily_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "icy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/jungle_myrmex_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/jungle_myrmex_biomes.json deleted file mode 100644 index ab82bf2..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/jungle_myrmex_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "jungle" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_biomes.json deleted file mode 100644 index d5109e2..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_biomes.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "jungle" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mesa" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_skeleton_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_skeleton_biomes.json deleted file mode 100644 index a74daf4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_dragon_skeleton_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_lily_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_lily_biomes.json deleted file mode 100644 index a74daf4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/lightning_lily_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "savanna" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "savanna" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/mausoleum_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/mausoleum_biomes.json deleted file mode 100644 index 6d766c7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/mausoleum_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "icy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/mountain_troll_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/mountain_troll_biomes.json deleted file mode 100644 index 8b33d39..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/mountain_troll_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "mountains" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "extreme_hills" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ore_gen_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ore_gen_biomes.json deleted file mode 100644 index fda5d7f..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/ore_gen_biomes.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/pixie_village_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/pixie_village_biomes.json deleted file mode 100644 index 6110f7b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/pixie_village_biomes.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "rare" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "magical" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "dense" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "forest" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "mountain" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "hills" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "wet" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "hot" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "cold" - }, - { - "type": "BIOME_DICT", - "negate": true, - "value": "dry" - }, - { - "type": "BIOME_CATEGORY", - "negate": true, - "value": "taiga" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/sapphire_gen_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/sapphire_gen_biomes.json deleted file mode 100644 index 6d766c7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/sapphire_gen_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "icy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/sea_serpent_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/sea_serpent_biomes.json deleted file mode 100644 index 3fba906..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/sea_serpent_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/siren_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/siren_biomes.json deleted file mode 100644 index 3fba906..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/siren_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "ocean" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "ocean" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/snowy_troll_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/snowy_troll_biomes.json deleted file mode 100644 index e4db8f7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/snowy_troll_biomes.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "snowy" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/stymphalian_bird_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/stymphalian_bird_biomes.json deleted file mode 100644 index b696ee0..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/stymphalian_bird_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "swamp" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "swamp" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/wandering_cyclops_biomes.json b/configuration/services/configs/minecraft/voor-kia/config/iceandfire/wandering_cyclops_biomes.json deleted file mode 100644 index 8d890df..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/iceandfire/wandering_cyclops_biomes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "biomes": [ - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_DICT", - "negate": false, - "value": "plains" - } - ], - [ - { - "type": "BIOME_DICT", - "negate": false, - "value": "overworld" - }, - { - "type": "BIOME_CATEGORY", - "negate": false, - "value": "plains" - } - ] - ] -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/ironfurnaces-client.toml b/configuration/services/configs/minecraft/voor-kia/config/ironfurnaces-client.toml deleted file mode 100644 index c93ee65..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/ironfurnaces-client.toml +++ /dev/null @@ -1,9 +0,0 @@ - -#Update Checker Settings -[updates] - - [updates.check_updates] - # true = check for updates, false = don't check for updates. - # Default: true. - updates = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/ironfurnaces.toml b/configuration/services/configs/minecraft/voor-kia/config/ironfurnaces.toml deleted file mode 100644 index df164ab..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/ironfurnaces.toml +++ /dev/null @@ -1,142 +0,0 @@ - -#Modded Furnace Settings -[modded_furnaces] - - [modded_furnaces.vibranium_furnace] - # Number of items that can be smelted at once. The regular furnace only smelts 1 item at once of course. - # Default: 32 - #Range: 1 ~ 64 - mult = 32 - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 3 - #Range: 1 ~ 72000 - speed = 3 - - [modded_furnaces.allthemodium_furnace] - # Number of items that can be smelted at once. The regular furnace only smelts 1 item at once of course. - # Default: 16 - #Range: 1 ~ 64 - mult = 16 - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 5 - #Range: 1 ~ 72000 - speed = 5 - - [modded_furnaces.unobtanium_furnace] - # Number of items that can be smelted at once. The regular furnace only smelts 1 item at once of course. - # Default: 64 - #Range: 1 ~ 64 - mult = 64 - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 1 - #Range: 1 ~ 72000 - speed = 1 - -#Furnace Settings -[furnaces] - - [furnaces.iron_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 160 - #Range: 2 ~ 72000 - speed = 160 - - [furnaces.obsidian_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 20 - #Range: 2 ~ 72000 - speed = 20 - - [furnaces.crystal_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 40 - #Range: 2 ~ 72000 - speed = 40 - - [furnaces.netherite_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 5 - #Range: 2 ~ 72000 - speed = 5 - - [furnaces.diamond_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 80 - #Range: 2 ~ 72000 - speed = 80 - - [furnaces.copper_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 180 - #Range: 2 ~ 72000 - speed = 180 - - [furnaces.furance_xp_drop] - # This value indicates when the furnace should 'overload' and spit out the xp stored. - # Default: 10, Recipes - #Range: 1 ~ 500 - value = 10 - # This value indicates when the furnace should 'overload' and spit out the xp stored. - # Default: 100000, Single recipe uses - #Range: 1 ~ 1000000 - value_two = 100000 - - [furnaces.emerald_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 40 - #Range: 2 ~ 72000 - speed = 40 - - [furnaces.silver_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 140 - #Range: 2 ~ 72000 - speed = 140 - - [furnaces.rainbow_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 20 - #Range: 2 ~ 72000 - speed = 200 - - [furnaces.gold_furnace] - # Number of ticks to complete one smelting operation. - # 200 ticks is what a regular furnace takes. - # Default: 120 - #Range: 2 ~ 72000 - speed = 120 - -#JEI Settings -[jei] - - [jei.jei] - # Enable or disable the Click Area inside the GUI in all of Iron Furnaces' furnaces. - enable_jei_click_area = true - # Enable or disable the Catalysts in Jei for Iron Furnaces. - enable_jei_catalysts = true - # Enable or disable the JeiPlugin of Iron Furnaces. - enable_jei = true - -#Misc -[misc] - - [misc.misc] - # Enable or disable the Rainbow Content - rainbow = true - # Given or not given the Rainbow Coal to our champion - coal = false - # Show furnace settings errors in chat, used for debugging - errors = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/jeresources-common.toml b/configuration/services/configs/minecraft/voor-kia/config/jeresources-common.toml deleted file mode 100644 index 0dd954f..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/jeresources-common.toml +++ /dev/null @@ -1,11 +0,0 @@ -#Range: 1 ~ 4 -itemsPerColumn = 4 -#Range: 1 ~ 4 -itemsPerRow = 4 -diyData = true -showDevData = false -enchantsBlacklist = ["flimflam", "soulBound"] -hiddenTabs = [] -dimensionsBlacklist = [-11] -disableLootManagerReloading = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/jeresources.toml b/configuration/services/configs/minecraft/voor-kia/config/jeresources.toml deleted file mode 100644 index a4f9f5b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/jeresources.toml +++ /dev/null @@ -1,11 +0,0 @@ -disableLootManagerReloading = false -hiddenTabs = [] -#Range: 1 ~ 4 -itemsPerRow = 4 -enchantsBlacklist = ["flimflam", "soulBound"] -showDevData = false -dimensionsBlacklist = [-11] -diyData = true -#Range: 1 ~ 4 -itemsPerColumn = 4 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/lottaterracotta-common.toml b/configuration/services/configs/minecraft/voor-kia/config/lottaterracotta-common.toml deleted file mode 100644 index 2210d90..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/lottaterracotta-common.toml +++ /dev/null @@ -1,25 +0,0 @@ - -[general] - #Enable terracotta pressure plates - enablePressurePlates = true - #Enable terracotta levers - enableLevers = true - #Enable terracotta buttons - enableButtons = true - #Enable terracotta signs - enableSigns = true - #Enable terracotta stairs - enableStairs = true - #Enable terracotta tiles - enableTiles = true - #Enable terracotta vertical slabs - enableVerticalSlabs = true - #Enable terracotta walls - enableWalls = true - #Enable terracotta fences - enableFences = true - #Enable terracotta slabs - enableSlabs = true - #Enable terracotta ladders - enableLadders = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/overworldtwo.json b/configuration/services/configs/minecraft/voor-kia/config/overworldtwo.json deleted file mode 100644 index 623db10..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/overworldtwo.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "version": 0, - "generate_nether": true, - "fast_ores": true -} \ No newline at end of file diff --git a/configuration/services/configs/minecraft/voor-kia/config/pamhc2crops.toml b/configuration/services/configs/minecraft/voor-kia/config/pamhc2crops.toml deleted file mode 100644 index 0f5a672..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/pamhc2crops.toml +++ /dev/null @@ -1,50 +0,0 @@ - -["Miscellaneous Features"] - #Disable/enable fern blocks dropping seeds. - "Enable fern blocks dropping seeds" = false - #Disable/enable tall grass blocks dropping seeds. - "Enable tall grass blocks dropping seeds" = false - #Disable/enable right-click harvesting of crops. - "Enable both for right-click harvesting for crops" = true - #Disable/enable grass blocks dropping seeds. - "Enable grass blocks dropping seeds" = false - -["Dimensions Settings"] - #Enter a dimension id to whitelist feature generation - white_dim = ["minecraft:overworld"] - #Enter a dimension id to blacklist feature generation - black_dim = ["minecraft:the_end", "minecraft:the_nether"] - -["Tweak Garden Cluster Sizes"] - #Amount of gardens that spawn together. Higher numbers indicate larger clusters; 32 is about 3-7ish (Default: 32) - #Range: 1 ~ 1000000000 - "Probability of gardens generating" = 32 - -["Tweak Garden World Generation Rates"] - #Chance of gardens generating in the world. Higher numbers indicate a lower probability; just 4 is very rare (Default: 2) - #Range: 1 ~ 1000000000 - "Probability of gardens generating" = 2 - -["Tweak Garden Cluster Rates"] - #Chance of gardens generating in the world. Higher numbers indicate a lower probability; just 4 is very rare (Default: 2) - #Range: 1 ~ 1000000000 - "Probability of gardens generating" = 2 - -["Enable/Disable Garden World Generation"] - #Should frost gardens should generate in world - "Generate frost gardens" = true - #Should arid gardens should generate in world - "Generate arid gardens" = true - #Should soggy gardens should generate in world - "Generate soggy gardens" = true - #Should shaded gardens should generate in world - "Generate shaded gardens" = true - #Should windy gardens should generate in world - "Generate windy gardens" = true - #Should tropical gardens should generate in world - "Generate tropical gardens" = true - -["Right-click Harvesting Settings"] - #Disable/enable right-click harvesting of crops - "Enable both for right-click harvesting for crops" = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/pamhc2trees.toml b/configuration/services/configs/minecraft/voor-kia/config/pamhc2trees.toml deleted file mode 100644 index d04d4fe..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/pamhc2trees.toml +++ /dev/null @@ -1,126 +0,0 @@ - -["Miscellaneous Features"] - #Disable/enable fern blocks dropping seeds. - "Enable fern blocks dropping seeds" = false - #Disable/enable tall grass blocks dropping seeds. - "Enable tall grass blocks dropping seeds" = false - #Disable/enable grass blocks dropping seeds. - "Enable grass blocks dropping seeds" = false - -["Dimensions Settings"] - #Enter a dimension id to whitelist feature generation - white_dim = ["minecraft:overworld"] - #Enter a dimension id to blacklist feature generation - black_dim = ["minecraft:the_end", "minecraft:the_nether"] - -["Tweak World Generation Rates"] - #Chance of warm fruit trees generating in the world. Higher numbers indicate a lower probability (Default: 5000) - #Range: 1 ~ 1000000000 - "Probability of warm fruit trees generating" = 5000 - #Chance of cold fruit trees generating in the world. Higher numbers indicate a lower probability (Default: 5000) - #Range: 1 ~ 1000000000 - "Probability of cold fruit trees generating" = 5000 - #Chance of temperate fruit trees generating in the world. Higher numbers indicate a lower probability (Default: 5000) - #Range: 1 ~ 1000000000 - "Probability of temperate fruit trees generating" = 5000 - -["Enable/Disable Garden World Generation"] - #Should hazelnut trees generate in world - "Generate hazelnut trees" = true - #Should guava trees generate in world - "Generate guava trees" = true - #Should almond trees generate in world - "Generate almond trees" = true - #Should walnut trees generate in world - "Generate walnut trees" = true - #Should tamarind trees generate in world - "Generate tamarind trees" = true - #Should maple trees generate in world - "Generate maple trees" = true - #Should spiderweb trees generate in world - "Generate spiderweb trees" = true - #Should peach trees generate in world - "Generate peach trees" = true - #Should vanillabean trees generate in world - "Generate vanillabean trees" = true - #Should pomegranate trees generate in world - "Generate pomegranate trees" = true - #Should apricot trees generate in world - "Generate apricot trees" = true - #Should passionfruit trees generate in world - "Generate passionfruit trees" = true - #Should pear trees generate in world - "Generate pear trees" = true - #Should pawpaw trees generate in world - "Generate pawpaw trees" = true - #Should coconut trees generate in world - "Generate coconut trees" = true - #Should breadfruit trees generate in world - "Generate breadfruit trees" = true - #Should pinenut trees generate in world - "Generate pinenut trees" = true - #Should jackfruit trees generate in world - "Generate jackfruit trees" = true - #Should mango trees generate in world - "Generate mango trees" = true - #Should lychee trees generate in world - "Generate lychee trees" = true - #Should orange trees generate in world - "Generate orange trees" = true - #Should plum trees generate in world - "Generate plum trees" = true - #Should soursop trees generate in world - "Generate soursop trees" = true - #Should lemon trees generate in world - "Generate lemon trees" = true - #Should rambutan trees generate in world - "Generate rambutan trees" = true - #Should gooseberry trees generate in world - "Generate gooseberry trees" = true - #Should papaya trees generate in world - "Generate papaya trees" = true - #Should avocado trees generate in world - "Generate avocado trees" = true - #Should apple trees generate in world - "Generate apple trees" = true - #Should peppercorn trees generate in world - "Generate peppercorn trees" = true - #Should banana trees generate in world - "Generate banana trees" = true - #Should fig trees generate in world - "Generate fig trees" = true - #Should olive trees generate in world - "Generate olive trees" = true - #Should cinnamon trees generate in world - "Generate cinnamon trees" = true - #Should pecan trees generate in world - "Generate pecan trees" = true - #Should almond date generate in world - "Generate date trees" = true - #Should grapefruit trees generate in world - "Generate grapefruit trees" = true - #Should candlenut trees generate in world - "Generate candlenut trees" = true - #Should cherry trees generate in world - "Generate cherry trees" = true - #Should pistachio trees generate in world - "Generate pistachio trees" = true - #Should dragonfruit trees generate in world - "Generate dragonfruit trees" = true - #Should chestnut trees generate in world - "Generate chestnut trees" = true - #Should lime trees generate in world - "Generate lime trees" = true - #Should nutmeg trees generate in world - "Generate nutmeg trees" = true - #Should durian trees generate in world - "Generate durian trees" = true - #Should cashew trees generate in world - "Generate cashew trees" = true - #Should persimmon trees generate in world - "Generate persimmon trees" = true - #Should starfruit trees generate in world - "Generate starfruit trees" = true - #Should paperbark trees generate in world - "Generate paperbark trees" = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/passablefoliage-common.toml b/configuration/services/configs/minecraft/voor-kia/config/passablefoliage-common.toml deleted file mode 100644 index cf51d2f..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/passablefoliage-common.toml +++ /dev/null @@ -1,24 +0,0 @@ -#The percentage of normal damage taken when taking damage from falling into leaves. -#The damage will be reduced by a further 10% with the Jump Boost potion effect. -#Range: 0.0 ~ 1.0 -fallDamageReduction = 0.5 -#When falling into leaves, the (block) distance a player or mob has to fall before taking damage. -#Range: 5 ~ 255 -fallDamageThreshold = 20 -#The reduced horizontal speed when passing through leaves. (% of normal) -#Range: 0.0 ~ 1.0 -speedReductionHorizontal = 0.8999999761581421 -#The reduced vertical speed when passing through leaves. (% of normal) -#Range: 0.0 ~ 1.0 -speedReductionVertical = 0.8999999761581421 -#Should entities recognize leaves as air -modifyPathFinding = true -#Leaves only passable for players -playerOnly = false - -[sounds] - #Range: 0.0 ~ 10.0 - volume = 1.0 - #Only players can make noises - playerOnly = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/performant-common.toml b/configuration/services/configs/minecraft/voor-kia/config/performant-common.toml deleted file mode 100644 index 07a2e01..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/performant-common.toml +++ /dev/null @@ -1,138 +0,0 @@ -#Enables logging the too large packets causing disconnects. , default = true -displayTooLargePackets = true - -["Load balancing settings"] - - ["Load balancing settings"."Tile entities load balancing settings"] - #Requires TELoadBalancing = true. Enables dealing with lag caused by tile entities during chunk unload. This is normally not needed. default = false - TEUnloadLag = false - #Enables Tile entity load balancing. default: true - TELoadBalancing = true - #Mean tick time at which load balancing takes effect, 1000 / mean tick time = TPS. default: 55 - #Range: 1 ~ 200 - meanTickTH = 55 - #Enables debug log output for lagging tile entities, default = false - TEDebugOutput = false - - ["Load balancing settings"."Event load balancing settings"] - #Mean tick time at which event load balancing takes effect, 1000 / mean tick time = TPS. default: 55 - #Range: 1 ~ 200 - meanTickEvent = 60 - #Enables debug log output for lagging event subscribers, default = false - eventDebugOutput = true - #Enables event load balancing, this is mostly stuff which is happening outside entityAI/Tile entities on world ticks. default: false - eventLoadBalancing = false - - # Load balancing is a mechanic which profiles and throttles down lagging entities, tileentities and event subscribers. - # It is used to prevent a certain laggy mob or block from lagging out the whole game. Since this is rather invasive and may cause the lagging - # entity/block to not work nicely it is only done once the game goes over the configured lagging threshold. - # Those thresholds as set in miliseconds, anything below 50ms is 20 TPS (1s = 1000ms, 1000 / 50 = 20). - # Above 50ms ticks is where your game starts to lag, as it hits 100% cpu and starts skipping ticks. - # This is where load balancing comes in and reduces the lag caused by specific entities and blocks. - # If you run into trouble with some of the entities or blocks not working correctly you can disable it here - # - ["Load balancing settings"."Entity AI Load balancing settings"] - #Mean tick time at which AI load balancing takes effect, 1000 / mean tick time = TPS. default: 55 - #Range: 1 ~ 200 - meanTickAITH = 55 - #Enables load balancing for entity AI. default = true - AILoadBalancing = true - #Whether to debug lagging entities and log offenders, requires load balancing to be enabled. default = true - logEntityAILag = true - -["Entity settings"] - #Entity spawn interval setting, determines how frequently entities are spawned overall. 1 = Vanilla default, default = 10 - #Range: 1 ~ 1000 - spawnInterval = 10 - #List of entities excluded from beeing affected by dynamic entity updates: e.g. format : ["minecraft:zombie", "minecraft:creeper"] - excludedTickDistanceMobs = [] - #Fix leash lag from entities on a leash, default = true - fixLeash = true - #Enable multithreading support for entities, requires fastCollisions to be enabled. default = true - multiEntities = true - #Disables block changes notifying all entity paths in the world, to possibly adjust their paths, disable with IE, incompat, default = true - disableNotifyOnBlockChange = true - #Slower updating of armor stands, default = true - slowArmorStands = true - #Enables improved entity collision and movement calculations for any non item entity, default = true - fastCollisions = true - #Enables less laggy entity item pickup, default = true - noLagItemPickup = true - #Enables dynamic update distance, it will reduces entity updates when far away from the player, respecting the entities own update range. default = true. Requires restart - enableDynamicEntityUpdates = true - #Enables fast itemstack comparisons - fastItemCompare = true - #Entity density setting, determines how many entities are spawned overall. 1 = Vanilla default, 0.1 e.g 10x less than vanilla. 10 = 10x more than vanilla, default = 1 - #Range: 0.01 ~ 100.0 - entityDensity = 1.0 - #Enables dynamic entity rendering, stops non-visible entities from beeing rendered but can sometimes cause a slight phasing-in delay. Usually a large boost to fps, default = true. Require restart - enableDynamicEntityRendering = true - #Enable fast inventory advancement triggers, many advancements based on items tend to lag the players, default = true - fastInventoryAdvancement = true - #Adapt entity speed to tps, makes entities struggle less with lag. default = true - adaptiveSpeed = true - #Entity dynamic update distance setting, reduces the entities own update range from players at which entities get slowed down, in chunks(16blocks). The higher you set this, the closer to the player entities will get slower updates. Default = 0 - #Range: 0 ~ 1000 - entityUpdateDistanceReduction = 0 - #Enable faster pathfinding, default = true - fastPathFinding = true - -["Entity AI Settings"] - #Sets the tick interval in which non-running AI tasks are rechecked. Vanilla default is 1(starting with 1.13+), this mods suggested default is 4(as it was in vanilla 1.12) - #Range: 1 ~ 500 - goalselectorrate = 4 - #Enables a slower updated AI Fox find shelter goal, which causes too much load. default = true - slowFindShelter = true - #Enables a slower updated AI Panic entity goal, panic is used for chickens/other animals running away e.g. on fire. default = true - optimizePanic = true - #Enables a slower updated AI Breed entity goal, breed is used for searching nearby similar animals and doesnt have to be checked that often. default = true - optimizeBreed = true - #Enables a slower updated AI tempt goal, tempt is used e.g. for luring sheep with wheat. default = true - optimizeTempt = true - #Enables a slower updated AI avoid entity goal, avoid is used e.g. for villagers avoiding zombies so it constantly searches for mobs in the area. default = true - optimizeAvoid = true - #Fix chunkloading and lag caused by the block break goal, mostly used by zombies or endermen. default = true - fixBlockBreakGoal = true - -["General performance improvements settings"] - #If true hoppers are causing less lag - fasterHoppers = true - #Reduces crafting lag by caching recipe lookups, helps a lot with autocrafting/crafting related lag. default = true - cacheRecipes = true - #Enable fast spawn radius check, this makes entity spawn mechanics lag less. default = true - fastSpawnRadius = true - #Set how many scheduled blocks are updated each tick, scheduled block updates are for example fluid flowing. default = 1000, vanilla default = 65536 - #Range: 1 ~ 65536 - blockTicks = 3000 - #Enable fast chunk save, unmodified chunks are saved a lot faster and cause less lag when saving to disk. default = true - fastChunkSave = true - #Enable FPS improvements, default = true - betterFps = true - #Enable fast chunk block ticks, reduces lag on random block ticks in the world but keeps the same growth e.g. on crops. default = true - fastChunkBlocks = true - -["Utility settings, debugging and other"] - #Set the max login timeout during connection in ticks. 20 ticks = 1 sec, default = 120 seconds - #Range: 600 ~ 20000 - logintimeout = 2400 - #Set the amount of items at which too many stacked items report their position. Default = 100 items - #Range: 2 ~ 1000 - maxItems = 100 - #Enable various debugging error logs, like chunkloading etc. , default = false - debugOptionsEnabled = false - #Disables the config reload during the game, can cause performance issues on some linux systems, default = false - disableConfigReload = false - #Enable printing of world/chunk saves for debugging purposes, those normally happen every 5minutes. default = false - printWorldSaves = false - #Set the watchdog timeout for the integrated server in miliseconds, -1 Disables it. 1 second = 1000 miliseconds, default = 180000 - #Range: -1 ~ 500000 - singlePlayerWatchDogTimeout = 180000 - #Set the ingame disconnect timeout for disconnecting players. Default = 60sec - #Range: 15 ~ 400 - disconnectTimeout = 60 - #Set the maximum allowed amount of same sounds playing at the same time. Lowers e.g. lag of flowing water and other cases where a sound is repeated a lot at once. Default = 10 - #Range: 1 ~ 4000 - maxSameSounds = 10 - #List of mobs disallowed from spawning: e.g. format : ["minecraft:zombie", "minecraft:creeper"] - forbiddenMobs = [] - diff --git a/configuration/services/configs/minecraft/voor-kia/config/platter-common.toml b/configuration/services/configs/minecraft/voor-kia/config/platter-common.toml deleted file mode 100644 index a9330d1..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/platter-common.toml +++ /dev/null @@ -1,13 +0,0 @@ - -#Platter Settings -[general] - #Radius for the platter to feed [default: 5] - #Range: 0 ~ 32 - platter_radius = 5 - #Item slots for the platter [default: 9] - #Range: > 0 - platter_slots = 9 - #Time (in seconds) to wait between platter searches [default: 60] - #Range: > 0 - platter_period = 60 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_cell.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_cell.toml deleted file mode 100644 index 4a3d9dc..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_cell.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 0 - #Range: 0 ~ 9000000000000000000 - blazingCap = 0 - #Range: 0 ~ 9000000000000000000 - basicCap = 0 - #Range: 0 ~ 9000000000000000000 - nioticCap = 0 - #Range: 0 ~ 9000000000000000000 - nitroCap = 0 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 0 - #Range: 0 ~ 9000000000000000000 - starterCap = 0 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 200 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 2500 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 8000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 20000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 400000 - -[Channels] - #Range: 1 ~ 12 - hardenedChannels = 3 - #Range: 1 ~ 12 - basicChannels = 2 - #Range: 1 ~ 12 - spiritedChannels = 9 - #Range: 1 ~ 12 - starterChannels = 1 - #Range: 1 ~ 12 - nioticChannels = 7 - #Range: 1 ~ 12 - blazingChannels = 5 - #Range: 1 ~ 12 - nitroChannels = 12 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_gate.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_gate.toml deleted file mode 100644 index 26e85a7..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/ender_gate.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 0 - #Range: 0 ~ 9000000000000000000 - blazingCap = 0 - #Range: 0 ~ 9000000000000000000 - basicCap = 0 - #Range: 0 ~ 9000000000000000000 - nioticCap = 0 - #Range: 0 ~ 9000000000000000000 - nitroCap = 0 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 0 - #Range: 0 ~ 9000000000000000000 - starterCap = 0 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 90000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 100 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 1400 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 5000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 40000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 18000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 200000 - -[Channels] - #Range: 1 ~ 12 - hardenedChannels = 3 - #Range: 1 ~ 12 - basicChannels = 2 - #Range: 1 ~ 12 - spiritedChannels = 9 - #Range: 1 ~ 12 - starterChannels = 1 - #Range: 1 ~ 12 - nioticChannels = 7 - #Range: 1 ~ 12 - blazingChannels = 5 - #Range: 1 ~ 12 - nitroChannels = 12 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energizing.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energizing.toml deleted file mode 100644 index 8988674..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energizing.toml +++ /dev/null @@ -1,36 +0,0 @@ -#No comment -#Range: 1 ~ 32 -range = 4 - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 4000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 800000 - #Range: 0 ~ 9000000000000000000 - basicCap = 100000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 1500000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 10000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 250000 - #Range: 0 ~ 9000000000000000000 - starterCap = 10000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 1200 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 10 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 50 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 120 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 700 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 300 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 3000 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cable.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cable.toml deleted file mode 100644 index 5a43061..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cable.toml +++ /dev/null @@ -1,33 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 0 - #Range: 0 ~ 9000000000000000000 - blazingCap = 0 - #Range: 0 ~ 9000000000000000000 - basicCap = 0 - #Range: 0 ~ 9000000000000000000 - nioticCap = 0 - #Range: 0 ~ 9000000000000000000 - nitroCap = 0 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 0 - #Range: 0 ~ 9000000000000000000 - starterCap = 0 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 90000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 100 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 1400 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 5000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 40000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 18000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 200000 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cell.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cell.toml deleted file mode 100644 index 2ced90e..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_cell.toml +++ /dev/null @@ -1,33 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 60000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 10000000 - #Range: 0 ~ 9000000000000000000 - basicCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 25000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 140000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 4000000 - #Range: 0 ~ 9000000000000000000 - starterCap = 100000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 200 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 2500 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 8000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 20000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 400000 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_discharger.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_discharger.toml deleted file mode 100644 index 2ced90e..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_discharger.toml +++ /dev/null @@ -1,33 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 60000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 10000000 - #Range: 0 ~ 9000000000000000000 - basicCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 25000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 140000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 4000000 - #Range: 0 ~ 9000000000000000000 - starterCap = 100000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 200 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 2500 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 8000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 20000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 400000 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_hopper.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_hopper.toml deleted file mode 100644 index 1be5567..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/energy_hopper.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 15000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 5000000 - #Range: 0 ~ 9000000000000000000 - basicCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 10000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 40000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 3000000 - #Range: 0 ~ 9000000000000000000 - starterCap = 100000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 500 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 2500 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 8000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 20000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 400000 - -[Charging_Speed] - #Range: 0 ~ 9000000000000000000 - nitroChargingSpeed = 50000 - #Range: 0 ~ 9000000000000000000 - blazingChargingSpeed = 8000 - #Range: 0 ~ 9000000000000000000 - basicChargingSpeed = 1000 - #Range: 0 ~ 9000000000000000000 - hardenedChargingSpeed = 3000 - #Range: 0 ~ 9000000000000000000 - nioticChargingSpeed = 12000 - #Range: 0 ~ 9000000000000000000 - spiritedChargingSpeed = 20000 - #Range: 0 ~ 9000000000000000000 - starterChargingSpeed = 100 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/furnator.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/furnator.toml deleted file mode 100644 index aac79b4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/furnator.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 5000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 900000 - #Range: 0 ~ 9000000000000000000 - basicCap = 100000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 2000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 10000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 500000 - #Range: 0 ~ 9000000000000000000 - starterCap = 10000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 7000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 80 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 200 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 700 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 5000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 1200 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 10000 - -[Energy_Generation] - #Range: 0 ~ 9000000000000000000 - blazingGeneration = 400 - #Range: 0 ~ 9000000000000000000 - starterGeneration = 15 - #Range: 0 ~ 9000000000000000000 - nitroGeneration = 4800 - #Range: 0 ~ 9000000000000000000 - hardenedGeneration = 180 - #Range: 0 ~ 9000000000000000000 - spiritedGeneration = 2000 - #Range: 0 ~ 9000000000000000000 - basicGeneration = 70 - #Range: 0 ~ 9000000000000000000 - nioticGeneration = 900 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/magmator.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/magmator.toml deleted file mode 100644 index 0b24653..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/magmator.toml +++ /dev/null @@ -1,56 +0,0 @@ -# -#List of fluids used in the Magmator. -#fluid registry name = heat per 100 mb eg: ["minecraft:lava=10000", "examplemod:fluid=1000"] -#Min = 1, max = 900000000 -magmaticFluids = ["minecraft:lava=10000"] -#Enable this to allow other mods to add their fluids. [default:true] -magmaticFluidsAPI = true - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 5000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 900000 - #Range: 0 ~ 9000000000000000000 - basicCap = 100000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 2000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 10000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 500000 - #Range: 0 ~ 9000000000000000000 - starterCap = 10000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 7000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 80 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 200 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 700 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 5000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 1200 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 10000 - -[Energy_Generation] - #Range: 0 ~ 9000000000000000000 - blazingGeneration = 400 - #Range: 0 ~ 9000000000000000000 - starterGeneration = 15 - #Range: 0 ~ 9000000000000000000 - nitroGeneration = 4800 - #Range: 0 ~ 9000000000000000000 - hardenedGeneration = 180 - #Range: 0 ~ 9000000000000000000 - spiritedGeneration = 2000 - #Range: 0 ~ 9000000000000000000 - basicGeneration = 70 - #Range: 0 ~ 9000000000000000000 - nioticGeneration = 900 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/reactor.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/reactor.toml deleted file mode 100644 index f5e36b0..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/reactor.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 50000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 18000000 - #Range: 0 ~ 9000000000000000000 - basicCap = 4000000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 30000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 80000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 10000000 - #Range: 0 ~ 9000000000000000000 - starterCap = 1000000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 400000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 10000 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 160000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 140000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 800000 - -[Energy_Generation] - #Range: 0 ~ 9000000000000000000 - blazingGeneration = 1200 - #Range: 0 ~ 9000000000000000000 - starterGeneration = 100 - #Range: 0 ~ 9000000000000000000 - nitroGeneration = 5400 - #Range: 0 ~ 9000000000000000000 - hardenedGeneration = 840 - #Range: 0 ~ 9000000000000000000 - spiritedGeneration = 3800 - #Range: 0 ~ 9000000000000000000 - basicGeneration = 400 - #Range: 0 ~ 9000000000000000000 - nioticGeneration = 2700 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/solar_panel.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/solar_panel.toml deleted file mode 100644 index bbe8571..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/solar_panel.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 2500000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 500000 - #Range: 0 ~ 9000000000000000000 - basicCap = 25000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 8000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 100000 - #Range: 0 ~ 9000000000000000000 - starterCap = 5000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 2000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 50 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 150 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 300 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 1000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 700 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 4000 - -[Energy_Generation] - #Range: 0 ~ 9000000000000000000 - blazingGeneration = 90 - #Range: 0 ~ 9000000000000000000 - starterGeneration = 5 - #Range: 0 ~ 9000000000000000000 - nitroGeneration = 1200 - #Range: 0 ~ 9000000000000000000 - hardenedGeneration = 40 - #Range: 0 ~ 9000000000000000000 - spiritedGeneration = 500 - #Range: 0 ~ 9000000000000000000 - basicGeneration = 12 - #Range: 0 ~ 9000000000000000000 - nioticGeneration = 220 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/thermo_gen.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/thermo_gen.toml deleted file mode 100644 index 233ef77..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/generators/thermo_gen.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 2500000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 500000 - #Range: 0 ~ 9000000000000000000 - basicCap = 25000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 8000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 100000 - #Range: 0 ~ 9000000000000000000 - starterCap = 5000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 2000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 50 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 150 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 300 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 1000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 700 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 4000 - -[Energy_Generation] - #Range: 0 ~ 9000000000000000000 - blazingGeneration = 42 - #Range: 0 ~ 9000000000000000000 - starterGeneration = 3 - #Range: 0 ~ 9000000000000000000 - nitroGeneration = 800 - #Range: 0 ~ 9000000000000000000 - hardenedGeneration = 18 - #Range: 0 ~ 9000000000000000000 - spiritedGeneration = 200 - #Range: 0 ~ 9000000000000000000 - basicGeneration = 8 - #Range: 0 ~ 9000000000000000000 - nioticGeneration = 90 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/items/battery.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/items/battery.toml deleted file mode 100644 index 2ced90e..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/items/battery.toml +++ /dev/null @@ -1,33 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 60000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 10000000 - #Range: 0 ~ 9000000000000000000 - basicCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 25000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 140000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 4000000 - #Range: 0 ~ 9000000000000000000 - starterCap = 100000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 200 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 2500 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 8000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 20000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 400000 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/player_transmitter.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/energy/player_transmitter.toml deleted file mode 100644 index 1be5567..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/energy/player_transmitter.toml +++ /dev/null @@ -1,49 +0,0 @@ - -[Energy_Capacity] - #Range: 0 ~ 9000000000000000000 - spiritedCap = 15000000 - #Range: 0 ~ 9000000000000000000 - blazingCap = 5000000 - #Range: 0 ~ 9000000000000000000 - basicCap = 1000000 - #Range: 0 ~ 9000000000000000000 - nioticCap = 10000000 - #Range: 0 ~ 9000000000000000000 - nitroCap = 40000000 - #Range: 0 ~ 9000000000000000000 - hardenedCap = 3000000 - #Range: 0 ~ 9000000000000000000 - starterCap = 100000 - -[Energy_Transfer] - #Range: 0 ~ 9000000000000000000 - spiritedTransfer = 100000 - #Range: 0 ~ 9000000000000000000 - starterTransfer = 500 - #Range: 0 ~ 9000000000000000000 - basicTransfer = 2500 - #Range: 0 ~ 9000000000000000000 - hardenedTransfer = 8000 - #Range: 0 ~ 9000000000000000000 - nioticTransfer = 50000 - #Range: 0 ~ 9000000000000000000 - blazingTransfer = 20000 - #Range: 0 ~ 9000000000000000000 - nitroTransfer = 400000 - -[Charging_Speed] - #Range: 0 ~ 9000000000000000000 - nitroChargingSpeed = 50000 - #Range: 0 ~ 9000000000000000000 - blazingChargingSpeed = 8000 - #Range: 0 ~ 9000000000000000000 - basicChargingSpeed = 1000 - #Range: 0 ~ 9000000000000000000 - hardenedChargingSpeed = 3000 - #Range: 0 ~ 9000000000000000000 - nioticChargingSpeed = 12000 - #Range: 0 ~ 9000000000000000000 - spiritedChargingSpeed = 20000 - #Range: 0 ~ 9000000000000000000 - starterChargingSpeed = 100 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/powah/general_common.toml b/configuration/services/configs/minecraft/voor-kia/config/powah/general_common.toml deleted file mode 100644 index a1dd03c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/powah/general_common.toml +++ /dev/null @@ -1,46 +0,0 @@ -# -#Enable this to get Player Aerial Pearl by right clicking a Zombie or Husk with a Aerial Pearl. [default:true] -player_aerial_pearl = true -# -#Enable this to get Dimensional Binding card by right clicking an Enderman or Endermite with a Binding card. [default:true] -binding_card_dim = true -# -#Enable this to get Lens Of Ender by right clicking an Enderman or Endermite with a Photoelectric Pane. [default:true] -lens_of_ender = true - -["World Gen"] - #Enable/Disable ore generation. [default:true] - oreGen = true - #Dry Ice Ore generation chance - #Range: 1 ~ 64 - dryIceGenChance = 9 - #Poor Uraninite Ore generation chance - #Range: 1 ~ 64 - poorUraniniteGenChance = 8 - #Dense Uraninite Ore generation chance - #Range: 1 ~ 64 - denseUraniniteGenChance = 3 - #Uraninite Ore generation chance - #Range: 1 ~ 64 - uraniniteGenChance = 6 - -[Materials] - # - #List of coolant fluids used in the Reactor and the Thermo Generator. - #Fluid registry name = cooling per mb, eg: ["minecraft:water=1", "examplemod:fluid=-1"] - #Less number more cold, min = -100, max = 1 - coolantFluids = ["minecraft:water=1"] - # - #List of heat source blocks used under Thermo Generator. - #Block registry name = heat, eg: ["minecraft:lava=1000", "minecraft:magma_block=800"] - #Min = 1, max = 900000000 - heatSources = ["minecraft:lava=1000", "minecraft:magma_block=800", "powah:blazing_crystal_block=2800"] - #Energy per solid fuel tick. [default: 30] - #Eg: Coal has 1600 fuel tick, so will generate 48000 FE. - #Range: 1 ~ 1000000 - solidFuelEnergyBase = 30 - #Enable this to allow other mods to add their coolant fluids. [default:true] - coolantFluidsAPI = true - #Enable this to allow other mods to add their heat source blocks. [default:true] - heatBlocksAPI = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/quark-common-1.toml.bak b/configuration/services/configs/minecraft/voor-kia/config/quark-common-1.toml.bak deleted file mode 100644 index 9b65931..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/quark-common-1.toml.bak +++ /dev/null @@ -1,2128 +0,0 @@ - -[general] - "'q' Button on the Right" = false - # - #Allowed values: (0,) - "Piston Push Limit" = 12 - # - #Set to true to make the quark big worldgen features such as stone clusters or underground biomes generate as spheres rather than unique shapes. It's faster, but won't look as cool - "Use Fast Worldgen" = false - "Enable 'q' Button" = true - # - #A list of screens that don't play well with quark's buttons. Use "Print Screen Classnames" to find the names of any others you'd want to add. - "Ignored Screens" = ["blusunrize.immersiveengineering.client.gui.CraftingTableScreen", "com.tfar.craftingstation.client.CraftingStationScreen", "com.refinedmods.refinedstorage.screen.grid.GridScreen", "appeng.client.gui.implementations.CraftingTermScreen", "appeng.client.gui.implementations.PatternTermScreen", "com.blakebr0.extendedcrafting.client.screen.EliteTableScreen", "com.blakebr0.extendedcrafting.client.screen.EliteAutoTableScreen", "com.blakebr0.extendedcrafting.client.screen.UltimateTableScreen", "com.blakebr0.extendedcrafting.client.screen.UltimateAutoTableScreen", "me.desht.modularrouters.client.gui.filter.GuiFilterScreen", "com.resourcefulbees.resourcefulbees.client.gui.screen.CentrifugeScreen", "com.resourcefulbees.resourcefulbees.client.gui.screen.MechanicalCentrifugeScreen", "com.resourcefulbees.resourcefulbees.client.gui.screen.CentrifugeMultiblockScreen"] - "Use Anti Overlap" = true - # - #Quark messes with the Stonecutter to allow any item that can be used in it to be shift clicked in. Set this to false to turn it off. - "Hack Stonecutter Shift Click" = true - # - #Enables quark network profiling features. Do not enable this unless requested to. - "Enable Network Profiling" = false - # - #Quark replaces the Piston logic to allow for its piston features to work. If you're having troubles, try turning this off. - "Use Piston Logic Replacement" = true - # - #Set to true if you need to find the class name for a screen that's causing problems - "Print Screen Classnames" = false - # - #Blocks that Quark should treat as Shulker Boxes. - "Shulker Boxes" = ["minecraft:white_shulker_box", "minecraft:orange_shulker_box", "minecraft:magenta_shulker_box", "minecraft:light_blue_shulker_box", "minecraft:yellow_shulker_box", "minecraft:lime_shulker_box", "minecraft:pink_shulker_box", "minecraft:gray_shulker_box", "minecraft:light_gray_shulker_box", "minecraft:cyan_shulker_box", "minecraft:purple_shulker_box", "minecraft:blue_shulker_box", "minecraft:brown_shulker_box", "minecraft:green_shulker_box", "minecraft:red_shulker_box", "minecraft:black_shulker_box"] - # - #Set to true to enable a system that debugs quark's worldgen features. This should ONLY be used if you're asked to by a dev. - "Enable Worldgen Watchdog" = false - # - #Should Quark treat anything with 'shulker_box' in its item identifier as a shulker box? - "Interpret Shulker Box Like Blocks" = true - -[categories] - Building = true - Automation = true - Oddities = true - Tweaks = true - Experimental = true - Mobs = true - Tools = true - Management = true - World = true - Client = true - -[automation] - Chute = true - "Iron Rod" = true - "Weather Sensor" = true - "Ender Watcher" = true - "Endermites Form Shulkers" = true - "Chains Connect Blocks" = true - "Color Slime" = true - "Dispensers Place Blocks" = true - "Redstone Circuit" = true - "Chain Linkage" = true - Gravisand = true - "Metal Buttons" = true - "Obsidian Plate" = true - "Pistons Move Tile Entities" = true - "Feeding Trough" = true - - [automation.dispensers_place_blocks] - Blacklist = ["minecraft:water", "minecraft:lava", "minecraft:fire"] - - [automation.chain_linkage] - # - #Can vehicle-linking chains be used for crafting chain armor? - "Crafts Armor" = true - - [automation.redstone_circuit] - "Enable Inductor" = true - "Enable Randomizer" = true - - [automation.metal_buttons] - "Enable Iron" = true - "Enable Gold" = true - - [automation.endermites_form_shulkers] - Chance = 0.005 - - [automation.pistons_move_tile_entities] - "Render Blacklist" = ["psi:programmer", "botania:starfield"] - "Movement Blacklist" = ["minecraft:spawner", "integrateddynamics:cable", "randomthings:blockbreaker", "minecraft:ender_chest", "minecraft:enchanting_table", "minecraft:trapped_chest", "quark:spruce_trapped_chest", "quark:birch_trapped_chest", "quark:jungle_trapped_chest", "quark:acacia_trapped_chest", "quark:dark_oak_trapped_chest", "endergetic:bolloom_bud"] - "Delayed Update List" = ["minecraft:dispenser", "minecraft:dropper"] - - [automation.color_slime] - "Change Name" = true - - [automation.feeding_trough] - # - #The chance (between 0 and 1) for an animal to enter love mode when eating from the trough - #Allowed values: (0,1] - "Love Chance" = 0.333333333 - # - #How long, in game ticks, between animals being able to eat from the trough - #Allowed values: [1,) - Cooldown = 30 - # - #The maximum amount of animals allowed around the trough's range for an animal to enter love mode - "Max Animals" = 32 - Range = 10.0 - -[building] - "Duskbound Blocks" = true - "Bamboo Mat" = true - "Cobblestone Bricks" = true - "More Brick Types" = true - "Gold Bars" = true - "Soul Sandstone" = true - "Burn Vines" = true - "Quilted Wool" = true - "Compressed Blocks" = true - Stools = true - Thatch = true - "Variant Chests" = true - "Variant Ladders" = true - Hedges = true - "Vertical Slabs" = true - Shingles = true - "Nether Brick Fence Gate" = true - "Item Frames" = true - "Stained Planks" = true - "Wooden Posts" = true - "Leaf Carpet" = true - "Lit Lamp" = true - "Vertical Planks" = true - Midori = true - "Tie Leads To Fences" = true - "Shallow Dirt" = true - "More Stone Variants" = true - "Framed Glass" = true - "Tallow And Candles" = true - Turf = true - "Paper Decor" = true - Rope = true - "Iron Plates" = true - "Sturdy Stone" = true - "More Potted Plants" = true - Grate = true - "Variant Bookshelves" = true - - [building.rope] - "Enable Dispenser Behavior" = true - # - #Set to true to allow ropes to move Tile Entities even if Pistons Push TEs is disabled. - #Note that ropes will still use the same blacklist. - "Force Enable Move Tile Entities" = false - - [building.more_stone_variants] - "Enable Bricks" = true - "Enable Pillar" = true - "Enable Chiseled Bricks" = true - "Enable Pavement" = true - - [building.thatch] - # - #Allowed values: [0,1] - "Fall Damage Multiplier" = 0.5 - - [building.variant_ladders] - "Change Names" = true - "Enable Iron Ladder" = true - - [building.compressed_blocks] - "Enable Cocoa Bean Sack" = true - "Enable Cactus Block" = true - "Enable Apple Crate" = true - "Charcoal Block and Blaze Lantern Stay On Fire Forever" = true - "Enable Bonded Rabbit Hide" = true - "Enable Charcoal Block" = true - "Enable Gunpowder Sack" = true - "Enable Potato Crate" = true - "Enable Stick Block" = true - "Enable Carrot Crate" = true - "Enable Beetroot Crate" = true - "Enable Nether Wart Sack" = true - "Enable Chorus Fruit Block" = true - "Enable Blaze Lantern" = true - "Enable Bamboo Block" = true - "Enable Berry Sack" = true - # - #Allowed values: [0,) - "Bamboo Bundle Fuel Time" = 500 - "Enable Golden Apple Crate" = true - "Enable Sugar Cane Block" = true - "Enable Bonded Leather" = true - # - #Allowed values: [0,) - "Blaze Lantern Fuel Time" = 24000 - # - #Allowed values: [0,) - "Charcoal Block Fuel Time" = 16000 - # - #Allowed values: [0,) - "Stick Block Fuel Time" = 900 - - [building.variant_chests] - "Replace Worldgen Chests" = true - # - #Chests to put in each structure. The format per entry is "structure=chest", where "structure" is a structure ID, and "chest" is a block ID, which must correspond to a standard chest block. - "Structure Chests" = ["minecraft:village_plains=quark:oak_chest", "minecraft:igloo=quark:spruce_chest", "minecraft:village_snowy=quark:spruce_chest", "minecraft:village_taiga=quark:spruce_chest", "minecraft:desert_pyramid=quark:birch_chest", "minecraft:jungle_pyramid=quark:jungle_chest", "minecraft:village_desert=quark:jungle_chest", "minecraft:village_savanna=quark:acacia_chest", "minecraft:mansion=quark:dark_oak_chest", "minecraft:pillager_outpost=quark:dark_oak_chest", "minecraft:ruined_portal=quark:crimson_chest", "minecraft:bastion_remnant=quark:crimson_chest", "minecraft:fortress=quark:nether_brick_chest", "minecraft:endcity=quark:purpur_chest", "bettermineshafts:mineshaft=quark:oak_chest", "cobbler:shulker_factory=quark:purpur_chest", "conjurer_illager:theatre=quark:dark_oak_chest", "dungeoncrawl:dungeon=quark:oak_chest", "dungeons_plus:bigger_dungeon=quark:oak_chest", "dungeons_plus:end_ruins=quark:purpur_chest", "dungeons_plus:leviathan=quark:jungle_chest", "dungeons_plus:snowy_temple=quark:spruce_chest", "dungeons_plus:soul_prison=quark:warped_chest", "dungeons_plus:tower=quark:oak_chest", "dungeons_plus:warped_garden=quark:warped__chest", "hunterillager:hunterhouse=quark:oak_chest", "iceandfire:gorgon_temple=quark:jungle_chest", "pandoras_creatures:end_prison=quark:purpur_chest", "repurposed_structures:fortress_jungle=quark:jungle_chest", "repurposed_structures:igloo_grassy=quark:oak_chest", "repurposed_structures:igloo_stone=quark:spruce_chest", "repurposed_structures:mineshaft_birch=quark:birch_chest", "repurposed_structures:mineshaft_desert=quark:jungle_chest", "repurposed_structures:mineshaft_end=quark:purpur_chest", "repurposed_structures:mineshaft_icy=quark:spruce_chest", "repurposed_structures:mineshaft_jungle=quark:jungle_chest", "repurposed_structures:mineshaft_nether=quark:nether_brick_chest", "repurposed_structures:mineshaft_ocean=quark:prismarine_chest", "repurposed_structures:mineshaft_savanna=quark:acacia_chest", "repurposed_structures:mineshaft_stone=quark:spruce_chest", "repurposed_structures:mineshaft_swamp_or_dark_forest=quark:dark_oak_chest", "repurposed_structures:mineshaft_taiga=quark:spruce_chest", "repurposed_structures:outpost_badlands=quark:dark_oak_chest", "repurposed_structures:outpost_birch=quark:birch_chest", "repurposed_structures:outpost_crimson=quark:crimson_chest", "repurposed_structures:outpost_desert=quark:jungle_chest", "repurposed_structures:outpost_giant_tree_taiga=quark:spruce_chest", "repurposed_structures:outpost_icy=quark:spruce_chest", "repurposed_structures:outpost_jungle=quark:jungle_chest", "repurposed_structures:outpost_nether_brick=quark:nether_brick_chest", "repurposed_structures:outpost_snowy=quark:spruce_chest", "repurposed_structures:outpost_warped=quark:warped_chest", "repurposed_structures:pyramid_badlands=quark:dark_oak_chest", "repurposed_structures:pyramid_nether=quark:nether_brick_chest", "repurposed_structures:ruined_portal_end=quark:purpur_chest", "repurposed_structures:shipwreck_crimson=quark:crimson_chest", "repurposed_structures:shipwreck_end=quark:purpur_chest", "repurposed_structures:shipwreck_nether_bricks=quark:nether_brick_chest", "repurposed_structures:shipwreck_warped=quark:warped_chest", "repurposed_structures:stronghold_nether=quark:nether_brick_chest", "repurposed_structures:stronghold_stonebrick=quark:oak_chest", "repurposed_structures:temple_nether_basalt=quark:nether_brick_chest", "repurposed_structures:temple_nether_crimson=quark:crimson_chest", "repurposed_structures:temple_nether_soul=quark:warped_chest", "repurposed_structures:temple_nether_warped=quark:warped_chest", "repurposed_structures:temple_nether_wasteland=quark:nether_brick_chest", "repurposed_structures:village_badlands=quark:dark_oak_chest", "repurposed_structures:village_birch=quark:birch_chest", "repurposed_structures:village_crimson=quark:crimson_chest", "repurposed_structures:village_dark_oak=quark:dark_oak_chest", "repurposed_structures:village_giant_taiga=quark:spruce_chest", "repurposed_structures:village_jungle=quark:jungle_chest", "repurposed_structures:village_mountains=quark:spruce_chest", "repurposed_structures:village_oak=quark:oak_chest", "repurposed_structures:village_swamp=quark:oak_chest", "repurposed_structures:village_warped=quark:warped_chest", "valhelsia_structures:castle=quark:spruce_chest", "valhelsia_structures:castle_ruin=quark:oak_chest", "valhelsia_structures:desert_house=quark:spruce_chest", "valhelsia_structures:forge=quark:spruce_chest", "valhelsia_structures:player_house=quark:oak_chest", "valhelsia_structures:small_castle=quark:oak_chest", "valhelsia_structures:small_dungeon=quark:oak_chest", "valhelsia_structures:tower_ruin=quark:spruce_chest"] - - [building.more_brick_types] - "Enable Magma Bricks" = true - "Enable Sandy Bricks" = true - # - #This also comes with a utility recipe for Red Nether Bricks - "Enable Blue Nether Bricks" = true - "Enable Blackstone Variant Bricks" = true - "Enable Charred Nether Bricks" = true - "Enable Snow Bricks" = true - # - #This also includes Red Sandstone Bricks and Soul Sandstone Bricks - "Enable Sandstone Bricks" = true - - [building.tallow_and_candles] - "Candles Fall" = true - # - #Allowed values: [0,) - "Tallow Burn Time" = 200 - # - #Allowed values: [0,) - "Max Drop" = 3 - # - #Allowed values: [0,15] - "Enchant Power" = 1.0 - # - #Allowed values: [0,) - "Min Drop" = 1 - - [building.variant_bookshelves] - "Change Names" = true - -[management] - "Chests In Boats" = true - "Inventory Sorting" = true - "Shulker Box Right Click" = true - "Hotbar Changer" = true - "Item Sharing" = true - "Right Click Armor" = true - "Easy Transfering" = true - - [management.inventory_sorting] - # - #Play a click when sorting inventories using keybindings - "Satisfying Click" = true - "Enable Chests" = true - "Enable Player Inventory In Chests" = true - "Enable Player Inventory" = true - - [management.easy_transfering] - "Enable Shift Lock" = true - - [management.item_sharing] - "Render Items In Chat" = true - -[tools] - Pickarang = true - "Seed Pouch" = true - "Pathfinder Maps" = true - "Bottled Cloud" = true - "Color Runes" = true - "Ancient Tomes" = true - "Slime In A Bucket" = true - Camera = true - Trowel = true - - [tools.trowel] - # - #Amount of blocks placed is this value + 1. Default is 255 (4 stacks). - #Set to 0 to make the Trowel unbreakable - #Allowed values: [0,) - "Trowel Max Durability" = 255 - - [tools.bottled_cloud] - "Cloud Level Top" = 132 - "Cloud Level Bottom" = 127 - - [tools.ancient_tomes] - # - #Set to 0 to not generate in Underwater Ruins - "Underwater Ruin Weight" = 0 - # - #Set to 0 to not generate in Woodland Mansions - "Woodland Mansion Weight" = 15 - "Valid Enchantments" = ["minecraft:feather_falling", "minecraft:thorns", "minecraft:sharpness", "minecraft:smite", "minecraft:bane_of_arthropods", "minecraft:knockback", "minecraft:fire_aspect", "minecraft:looting", "minecraft:sweeping", "minecraft:efficiency", "minecraft:unbreaking", "minecraft:fortune", "minecraft:power", "minecraft:punch", "minecraft:luck_of_the_sea", "minecraft:lure", "minecraft:loyalty", "minecraft:riptide", "minecraft:impaling", "minecraft:piercing"] - # - #Set to 0 to not generate in Dungeons - "Dungeon Weight" = 20 - "Item Quality" = 2 - "Apply Cost" = 35 - # - #Set to 0 to not generate in Stronghold Libraries - "Library Weight" = 30 - # - #Set to 0 to not generate in Nether Fortresses - "Nether Fortress Weight" = 0 - # - #Set to 0 to not generate in Bastions - "Bastion Weight" = 25 - # - #Set to 0 to not generate in Monster Boxes - "Monster Box Weight" = 5 - "Merge Cost" = 35 - - [tools.pathfinder_maps] - # - #In this section you can add custom Pathfinder Maps. This works for both vanilla and modded biomes. - #Each custom map must be on its own line. - #The format for a custom map is as follows: - #,,,,, - # - #With the following descriptions: - # - being the biome's ID NAME. You can find vanilla names here - https://minecraft.gamepedia.com/Biome#Biome_IDs - # - being the Cartographer villager level required for the map to be unlockable - # - being the cheapest (in Emeralds) the map can be - # - being the most expensive (in Emeralds) the map can be - # - being a hex color (without the #) for the map to display. You can generate one here - http://htmlcolorcodes.com/ - # - being the display name of the map - # - #Here's an example of a map to locate Ice Mountains: - #minecraft:ice_mountains,2,8,14,7FE4FF,Ice Mountains Pathfinder Map - Customs = [] - "Xp From Trade" = 5 - - [tools.seed_pouch] - "Show All Variants In Creative" = true - "Shift Range" = 3 - "Max Items" = 640 - - [tools.color_runes] - "Jungle Temple Weight" = 8 - "Desert Temple Weight" = 8 - "Dungeon Weight" = 10 - "Item Quality" = 0 - "Apply Cost" = 15 - "Nether Fortress Weight" = 8 - - [tools.pickarang] - # - #22.5 is ender chests, 25.0 is monster boxes, 50 is obsidian. Most things are below 5. - "Max Hardness" = 20.0 - # - #2 is Iron, 3 is Diamond. - "Harvest Level" = 3 - # - #2 is Iron, 3 is Diamond. - "Netherite Harvest Level" = 3 - # - #How long it takes before the pickarang starts returning to the player if it doesn't hit anything. - Timeout = 20 - # - #Set to -1 to have the Pickarang be unbreakable. - Durability = 800 - # - #Set this to true to disable the short cooldown between throwing pickarangs. - "No Cooldown" = false - # - #Set to -1 to have the Flamerang be unbreakable. - "Netherite Durability" = 1040 - # - #Set this to true to use the recipe without the Heart of Diamond, even if the Heart of Diamond is enabled. - "Never Use Heart Of Diamond" = false - -[tweaks] - "Armed Armor Stands" = true - "Lock Rotation" = true - "Dragon Scales" = true - "Replace Scaffolding" = true - "Axe Leaf Harvesting" = true - "Sign Editing" = true - "Dirt To Path" = true - "Simple Harvest" = true - "Hoe Harvesting" = true - "Reacharound Placing" = true - "Villagers Follow Emeralds" = true - "Compasses Work Everywhere" = true - "Skull Pikes" = true - "Note Block Mob Sounds" = true - "Double Door Opening" = true - "Automatic Recipe Unlock" = true - "Poison Potato Usage" = true - "Lava Bucket As Trash" = true - "Improved Sleeping" = true - "Infinity Bucket" = true - "Springy Slime" = true - Emotes = true - "Utility Recipes" = true - "Pat The Dogs" = true - "Enhanced Ladders" = true - "Snow Golem Player Heads" = true - "Glass Shard" = true - "Campfires Boost Elytra" = true - - [tweaks.sign_editing] - "Requires Empty Hand" = false - - [tweaks.pat_the_dogs] - # - #How many ticks it takes for a dog to want affection after being pet/tamed; leave -1 to disable - "Dogs Want Love" = -1 - - [tweaks.automatic_recipe_unlock] - # - #A list of recipe names that should NOT be added in by default - "Ignored Recipes" = [] - "Disable Recipe Book" = false - "Force Limited Crafting" = false - - [tweaks.hoe_harvesting] - "Hoes Can Have Fortune" = true - - [tweaks.skull_pikes] - "Pike Range" = 5.0 - - [tweaks.infinity_bucket] - # - #Set this to false to prevent dispensers from using infinite water buckets - "Allow Dispensers To Use" = true - Cost = 10 - - [tweaks.poison_potato_usage] - "Poison Effect" = true - Chance = 0.1 - - [tweaks.utility_recipes] - # - #Can you craft four chests at once using logs? - "Logs To Chests" = true - # - #Can other stone-like materials be used for crafting stone tools? - "Better Stone Tool Crafting" = true - # - #Can a dispenser be crafted by adding a bow to a dropper? - "Enable Dispenser" = true - # - #Can cookies, paper, and bread be crafted in a 2x2 crafting table? - "Bent Recipes" = true - # - #Can Rotten Flesh and Poisonous Potatoes be composted? - "Compostable Toxins" = true - # - #Can bones be smelted down to bone meal? - "Bone Meal Utility" = true - # - #Can any wool color be dyed? - "Dye Any Wool" = true - # - #Can Coral be crafted into dye? - "Coral To Dye" = true - # - #Can torches can be used as fuel in furnaces? - "Torches Burn" = true - # - #Can a repeater be crafted with the pattern for a redstone torch? - "Enable Repeater" = true - # - #Can you craft a minecart around blocks which can be placed inside? - "Enable Minecarts" = true - # - #Does Dragon Breath return a bottle when used as a reagent or material? - "Effective Dragon Breath" = true - - [tweaks.reacharound_placing] - # - #Allowed values: [0,1] - Leniency = 0.5 - Whitelist = [] - "Display Horizontal" = "< >" - Display = "[ ]" - - [tweaks.improved_sleeping] - "Enable Afk" = true - # - #Allowed values: (0,) - "Afk Time" = 2400 - # - #Allowed values: (0,1] - "Percent Req" = 1.0 - - [tweaks.emotes] - # - #The enabled default emotes. Remove from this list to disable them. You can also re-order them, if you feel like it. - "Enabled Emotes" = ["no", "yes", "wave", "salute", "cheer", "clap", "think", "point", "shrug", "headbang", "weep", "facepalm"] - # - #Enable this to make custom emotes read the file every time they're triggered so you can edit on the fly. - #DO NOT ship enabled this in a modpack, please. - "Custom Emote Debug" = false - # - #The list of Custom Emotes to be loaded. - #Watch the tutorial on Custom Emotes to learn how to make your own: https://youtu.be/ourHUkan6aQ - "Custom Emotes" = [] - - [tweaks.simple_harvest] - # - #Can players harvest crops with empty hand clicks? - "Empty Hand Harvest" = true - # - #Does harvesting crops with a hoe cost durability? - "Harvesting Costs Durability" = false - # - #Should Quark look for (nonvanilla) crops, and handle them? - "Do Harvesting Search" = true - # - #Which crops can be harvested? - #Format is: "harvestState[,afterHarvest]", i.e. "minecraft:wheat[age=7]" or "minecraft:cocoa[age=2,facing=north],minecraft:cocoa[age=0,facing=north]" - "Harvestable Blocks" = ["minecraft:wheat[age=7]", "minecraft:carrots[age=7]", "minecraft:potatoes[age=7]", "minecraft:beetroots[age=3]", "minecraft:nether_wart[age=3]", "minecraft:cocoa[age=2,facing=north],minecraft:cocoa[age=0,facing=north]", "minecraft:cocoa[age=2,facing=south],minecraft:cocoa[age=0,facing=south]", "minecraft:cocoa[age=2,facing=east],minecraft:cocoa[age=0,facing=east]", "minecraft:cocoa[age=2,facing=west],minecraft:cocoa[age=0,facing=west]"] - - [tweaks.enhanced_ladders] - # - #Allowed values: (,0] - "Fall Speed" = -0.2 - - [tweaks.compasses_work_everywhere] - "Enable Nether" = true - "Enable Compass Nerf" = true - "Enable End" = true - "Enable Clock Nerf" = true - - [tweaks.campfires_boost_elytra] - "Boost Strength" = 0.5 - "Max Speed" = 1.0 - - [tweaks.replace_scaffolding] - # - #How many times the algorithm for finding out where a block would be placed is allowed to turn. If you set this to large values (> 3) it may start producing weird effects. - "Max Bounces" = 1 - -[world] - "New Stone Types" = true - "Lush Underground Biome" = true - "Big Dungeon" = true - Speleothems = true - "Elder Prismarine Underground Biome" = true - "Blossom Trees" = true - "Sandstone Underground Biome" = true - "Glowshroom Underground Biome" = true - "Permafrost Underground Biome" = true - "Underground Clay" = true - "Slime Underground Biome" = true - "Fairy Rings" = true - "Chorus Vegetation" = true - Crevices = true - "Nether Obsidian Spikes" = true - "Mega Caves" = true - "Realistic World Gen" = true - Biotite = true - "Big Stone Clusters" = true - "Brimstone Underground Biome" = true - "Cave Crystal Underground Biome" = true - "Spiral Spires" = true - "Overgrown Underground Biome" = true - "Cave Roots" = true - "Spider Nest Underground Biome" = true - "Monster Box" = true - - [world.monster_box] - # - #The chance for the monster box generator to try and place one in a chunk, 1 is 100% - #This can be higher than 100% if you want multiple per chunk, , 0 is 0% - "Chance Per Chunk" = 0.8 - "Min Mob Count" = 5 - "Min Y" = 5 - "Max Y" = 30 - "Max Mob Count" = 8 - "Enable Extra Loot Table" = true - # - #How many blocks to search vertically from a position before trying to place a block. Higher means you'll get more boxes in open spaces. - "Search Range" = 6 - - [world.monster_box.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.cave_crystal_underground_biome] - # - #The chance that a crystal can grow, this is on average 1 in X world ticks, set to a higher value to make them grow slower. Minimum is 1, for every tick. Set to 0 to disable growth. - "Cave Crystal Growth Chance" = 5 - "Crystals Grow In Lava" = false - # - #Allowed values: [0,1] - "Crystal Spawn Chance" = 0.025 - "Crystals Craft Runes" = true - - [world.cave_crystal_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 42 - # - #Allowed values: [0,) - Rarity = 400 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 22 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 18 - # - #Allowed values: [0,) - "Vertical Variation" = 8 - - [world.cave_crystal_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["ocean"] - "Is Blacklist" = true - - [world.cave_crystal_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.speleothems] - "Tries Per Chunk In Nether" = 4 - "Speleothems Per Chunk In Nether" = 12 - "Speleothems Per Chunk" = 12 - "Max Ylevel" = 55 - "Tries Per Chunk" = 60 - - [world.speleothems.dimensions] - Dimensions = [] - "Is Blacklist" = true - - [world.sandstone_underground_biome] - - [world.sandstone_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.sandstone_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["desert"] - "Is Blacklist" = false - - [world.sandstone_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.spiral_spires] - Radius = 15 - Rarity = 200 - # - #Set to 0 to turn off Myalite Conduits - "Myalite Conduit Distance" = 24 - "Renewable Myalite" = true - - [world.spiral_spires.biomes] - Biomes = ["minecraft:end_highlands"] - "Is Blacklist" = false - - [world.spiral_spires.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.nether_obsidian_spikes] - # - #The chance for a chunk to contain spikes (1 is 100%, 0 is 0%) - "Chance Per Chunk" = 0.1 - "Big Spike Spawners" = true - # - #Should a chunk have spikes, how many would the generator try to place - "Tries Per Chunk" = 4 - # - #The chance for a spike to be big (1 is 100%, 0 is 0%) - "Big Spike Chance" = 0.03 - - [world.nether_obsidian_spikes.dimensions] - Dimensions = ["minecraft:the_nether"] - "Is Blacklist" = false - - [world.biotite] - "Clusters Per Dragon Tick" = 16 - "Generate On Dragon Death" = true - "Dragon Ticks Per Cluster" = 1 - "Generate Naturally" = false - - [world.biotite.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.biotite.ore_settings] - # - #Allowed values: [0,255] - "Max Height" = 64 - # - #Allowed values: [0,) - "Cluster Count" = 16 - # - #Allowed values: [0,255] - "Min Height" = 1 - # - #Allowed values: [0,) - "Cluster Size" = 14 - - [world.crevices] - - [world.crevices.spawn_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 60 - # - #Allowed values: [0,) - Rarity = 120 - # - #Allowed values: [0,255] - "Min Y Level" = 15 - # - #Allowed values: [0,) - "Horizontal Variation" = 20 - # - #Allowed values: [0,255] - "Max Y Level" = 50 - # - #Allowed values: [0,) - "Vertical Size" = 4 - # - #Allowed values: [0,) - "Vertical Variation" = 1 - - [world.crevices.spawn_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["ocean", "beach"] - "Is Blacklist" = true - - [world.crevices.spawn_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.crevices.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.cave_roots] - "Min Y" = 16 - "Chunk Attempts" = 300 - "Max Y" = 52 - "Enable Brewing" = true - - [world.cave_roots.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types] - "Enable Marble" = true - "Enable Myalite" = true - "Enable Jasper" = true - "Enable Voidstone" = true - "Enable Slate" = true - "Enable Limestone" = true - - [world.new_stone_types.marble] - - [world.new_stone_types.marble.oregen] - # - #Allowed values: [0,255] - "Max Height" = 256 - # - #Allowed values: [0,) - "Cluster Count" = 10 - # - #Allowed values: [0,255] - "Min Height" = 0 - # - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.marble.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types.limestone] - - [world.new_stone_types.limestone.oregen] - # - #Allowed values: [0,255] - "Max Height" = 256 - # - #Allowed values: [0,) - "Cluster Count" = 10 - # - #Allowed values: [0,255] - "Min Height" = 0 - # - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.limestone.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types.myalite] - - [world.new_stone_types.myalite.oregen] - # - #Allowed values: [0,255] - "Max Height" = 256 - # - #Allowed values: [0,) - "Cluster Count" = 10 - # - #Allowed values: [0,255] - "Min Height" = 0 - # - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.myalite.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.new_stone_types.voidstone] - - [world.new_stone_types.voidstone.oregen] - # - #Allowed values: [0,255] - "Max Height" = 256 - # - #Allowed values: [0,) - "Cluster Count" = 10 - # - #Allowed values: [0,255] - "Min Height" = 0 - # - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.voidstone.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.new_stone_types.slate] - - [world.new_stone_types.slate.oregen] - # - #Allowed values: [0,255] - "Max Height" = 256 - # - #Allowed values: [0,) - "Cluster Count" = 10 - # - #Allowed values: [0,255] - "Min Height" = 0 - # - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.slate.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types.jasper] - - [world.new_stone_types.jasper.oregen] - # - #Allowed values: [0,255] - "Max Height" = 256 - # - #Allowed values: [0,) - "Cluster Count" = 10 - # - #Allowed values: [0,255] - "Min Height" = 0 - # - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.jasper.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.spider_nest_underground_biome] - "Enabled Wrapped" = true - - [world.spider_nest_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.spider_nest_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["plains"] - "Is Blacklist" = false - - [world.spider_nest_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees] - - [world.blossom_trees.orange] - Rarity = 100 - - [world.blossom_trees.orange.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.orange.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["savanna"] - "Is Blacklist" = false - - [world.blossom_trees.red] - Rarity = 30 - - [world.blossom_trees.red.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.red.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["mesa"] - "Is Blacklist" = false - - [world.blossom_trees.pink] - Rarity = 100 - - [world.blossom_trees.pink.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.pink.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["extreme_hills"] - "Is Blacklist" = false - - [world.blossom_trees.blue] - Rarity = 200 - - [world.blossom_trees.blue.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.blue.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["icy"] - "Is Blacklist" = false - - [world.blossom_trees.yellow] - Rarity = 200 - - [world.blossom_trees.yellow.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.yellow.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["plains"] - "Is Blacklist" = false - - [world.blossom_trees.lavender] - Rarity = 100 - - [world.blossom_trees.lavender.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.lavender.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["swamp"] - "Is Blacklist" = false - - [world.mega_caves] - - [world.mega_caves.spawn_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 80 - # - #Allowed values: [0,) - Rarity = 800 - # - #Allowed values: [0,255] - "Min Y Level" = 10 - # - #Allowed values: [0,) - "Horizontal Variation" = 30 - # - #Allowed values: [0,255] - "Max Y Level" = 20 - # - #Allowed values: [0,) - "Vertical Size" = 25 - # - #Allowed values: [0,) - "Vertical Variation" = 10 - - [world.mega_caves.spawn_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["ocean", "beach"] - "Is Blacklist" = true - - [world.mega_caves.spawn_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.mega_caves.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.elder_prismarine_underground_biome] - # - #Allowed values: [0,1] - "Lantern Chance" = 0.0085 - # - #Allowed values: [0,1] - "Water Chance" = 0.25 - - [world.elder_prismarine_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 200 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.elder_prismarine_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["ocean"] - "Is Blacklist" = false - - [world.elder_prismarine_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.glowshroom_underground_biome] - # - #Allowed values: [0,1] - "Glowshroom Spawn Chance" = 0.0625 - # - #Allowed values: (0,) - "Glowshroom Growth Rate" = 20 - "Enable Danger Sight" = true - "Enable Huge Glowshrooms" = true - - [world.glowshroom_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.glowshroom_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["extreme_hills", "mushroom"] - "Is Blacklist" = false - - [world.glowshroom_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters] - # - #Blocks that stone clusters can replace. If you want to make it so it only replaces in one dimension, - #do "block|dimension", as we do for netherrack and end stone by default. - "Blocks To Replace" = ["minecraft:stone", "minecraft:andesite", "minecraft:diorite", "minecraft:granite", "minecraft:netherrack|minecraft:the_nether", "minecraft:end_stone|minecraft:the_end", "quark:marble", "quark:limestone", "quark:jasper", "quark:slate", "quark:basalt"] - - [world.big_stone_clusters.marble] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.marble.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["plains"] - "Is Blacklist" = false - - [world.big_stone_clusters.marble.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.limestone] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.limestone.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["swamp", "ocean"] - "Is Blacklist" = false - - [world.big_stone_clusters.limestone.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.granite] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.granite.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["extreme_hills"] - "Is Blacklist" = false - - [world.big_stone_clusters.granite.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.myalite] - # - #Allowed values: [0,) - "Horizontal Size" = 20 - # - #Allowed values: [0,) - Rarity = 100 - "Generate In Air" = true - # - #Allowed values: [0,255] - "Min Y Level" = 58 - # - #Allowed values: [0,) - "Horizontal Variation" = 6 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 62 - # - #Allowed values: [0,) - "Vertical Size" = 40 - # - #Allowed values: [0,) - "Vertical Variation" = 10 - - [world.big_stone_clusters.myalite.biomes] - Biomes = ["minecraft:end_highlands"] - "Is Blacklist" = false - - [world.big_stone_clusters.myalite.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.big_stone_clusters.voidstone] - # - #Allowed values: [0,) - "Horizontal Size" = 19 - # - #Allowed values: [0,) - Rarity = 20 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 6 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 40 - # - #Allowed values: [0,) - "Vertical Size" = 19 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.big_stone_clusters.voidstone.biomes] - Biomes = ["minecraft:end_highlands", "minecraft:end_midlands", "minecraft:end_barrens"] - "Is Blacklist" = false - - [world.big_stone_clusters.voidstone.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.big_stone_clusters.andesite] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.andesite.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["forest"] - "Is Blacklist" = false - - [world.big_stone_clusters.andesite.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.slate] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.slate.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["icy"] - "Is Blacklist" = false - - [world.big_stone_clusters.slate.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.diorite] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.diorite.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["savanna", "jungle", "mushroom"] - "Is Blacklist" = false - - [world.big_stone_clusters.diorite.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.jasper] - # - #Allowed values: [0,) - "Horizontal Size" = 14 - # - #Allowed values: [0,) - Rarity = 4 - # - #Allowed values: [0,255] - "Min Y Level" = 20 - # - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - # - #Allowed values: [0,255] - "Max Y Level" = 80 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.jasper.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["mesa", "desert"] - "Is Blacklist" = false - - [world.big_stone_clusters.jasper.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.overgrown_underground_biome] - - [world.overgrown_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.overgrown_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["forest"] - "Is Blacklist" = false - - [world.overgrown_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.permafrost_underground_biome] - - [world.permafrost_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.permafrost_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["icy"] - "Is Blacklist" = false - - [world.permafrost_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.lush_underground_biome] - - [world.lush_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.lush_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["jungle"] - "Is Blacklist" = false - - [world.lush_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.brimstone_underground_biome] - - [world.brimstone_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 80 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.brimstone_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["mesa"] - "Is Blacklist" = false - - [world.brimstone_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_dungeon] - "Loot Table" = "minecraft:chests/simple_dungeon" - # - #The chance that a big dungeon spawn candidate will be allowed to spawn. 0.2 is 20%, which is the same as the Pillager Outpost. - "Spawn Chance" = 0.1 - "Max Rooms" = 10 - "Chest Chance" = 0.5 - - [world.big_dungeon.biome_types] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["ocean", "beach", "nether", "the_end"] - "Is Blacklist" = true - - [world.chorus_vegetation] - "Teleport Duplication Chance" = 0.01 - Radius = 7 - Rarity = 150 - "Chunk Attempts" = 120 - "Highlands Chance" = 1.0 - "Midlands Chance" = 0.2 - "Endermite Spawn Chance" = 0.01 - "Passive Teleport Chance" = 0.2 - "Other End Biomes Chance" = 0.0 - - [world.fairy_rings] - "Forest Chance" = 0.00625 - Ores = ["minecraft:emerald_ore", "minecraft:diamond_ore"] - "Plains Chance" = 0.0025 - - [world.fairy_rings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.underground_clay] - - [world.underground_clay.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.underground_clay.ore_settings] - # - #Allowed values: [0,255] - "Max Height" = 60 - # - #Allowed values: [0,) - "Cluster Count" = 3 - # - #Allowed values: [0,255] - "Min Height" = 20 - # - #Allowed values: [0,) - "Cluster Size" = 20 - - [world.slime_underground_biome] - - [world.slime_underground_biome.biome_settings] - # - #Allowed values: [0,) - "Horizontal Size" = 26 - # - #Allowed values: [0,) - Rarity = 120 - # - #Allowed values: [0,255] - "Min Y Level" = 0 - # - #Allowed values: [0,) - "Horizontal Variation" = 14 - # - #Allowed values: [0,255] - "Max Y Level" = 64 - # - #Allowed values: [0,) - "Vertical Size" = 14 - # - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.slime_underground_biome.biome_settings.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["swamp"] - "Is Blacklist" = false - - [world.slime_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - -[mobs] - Frogs = true - Crabs = true - Stonelings = true - Foxhound = true - Forgotten = true - Wraith = true - Toretoise = true - - [mobs.toretoise] - "Max Y Level" = 32 - - [mobs.toretoise.spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 100 - # - #Allowed values: [1,) - "Min Group Size" = 1 - # - #Allowed values: [1,) - "Max Group Size" = 1 - - [mobs.toretoise.spawn_config.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["none", "nether", "the_end"] - "Is Blacklist" = true - - [mobs.toretoise.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [mobs.crabs] - "Enable Brewing" = true - - [mobs.crabs.spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 5 - # - #Allowed values: [1,) - "Min Group Size" = 1 - # - #Allowed values: [1,) - "Max Group Size" = 3 - - [mobs.crabs.spawn_config.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["beach"] - "Is Blacklist" = false - - [mobs.foxhound] - # - #The chance coal will tame a foxhound - "Tame Chance" = 0.05 - - [mobs.foxhound.lesser_spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 2 - "Max Cost" = 0.7 - # - #Allowed values: [1,) - "Min Group Size" = 1 - "Spawn Cost" = 0.15 - # - #Allowed values: [1,) - "Max Group Size" = 1 - - [mobs.foxhound.lesser_spawn_config.biomes] - Biomes = ["minecraft:soul_sand_valley"] - "Is Blacklist" = false - - [mobs.foxhound.spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 30 - # - #Allowed values: [1,) - "Min Group Size" = 1 - # - #Allowed values: [1,) - "Max Group Size" = 2 - - [mobs.foxhound.spawn_config.biomes] - Biomes = ["minecraft:nether_wastes", "minecraft:basalt_deltas"] - "Is Blacklist" = false - - [mobs.wraith] - # - #List of sound sets to use with wraiths. - #Three sounds must be provided per entry, separated by | (in the format idle|hurt|death). Leave blank for no sound (i.e. if a mob has no ambient noise) - "Wraith Sounds" = ["entity.sheep.ambient|entity.sheep.hurt|entity.sheep.death", "entity.cow.ambient|entity.cow.hurt|entity.cow.death", "entity.pig.ambient|entity.pig.hurt|entity.pig.death", "entity.chicken.ambient|entity.chicken.hurt|entity.chicken.death", "entity.horse.ambient|entity.horse.hurt|entity.horse.death", "entity.cat.ambient|entity.cat.hurt|entity.cat.death", "entity.wolf.ambient|entity.wolf.hurt|entity.wolf.death", "entity.villager.ambient|entity.villager.hurt|entity.villager.death", "entity.polar_bear.ambient|entity.polar_bear.hurt|entity.polar_bear.death", "entity.zombie.ambient|entity.zombie.hurt|entity.zombie.death", "entity.skeleton.ambient|entity.skeleton.hurt|entity.skeleton.death", "entity.spider.ambient|entity.spider.hurt|entity.spider.death", "|entity.creeper.hurt|entity.creeper.death", "entity.endermen.ambient|entity.endermen.hurt|entity.endermen.death", "entity.zombie_pig.ambient|entity.zombie_pig.hurt|entity.zombie_pig.death", "entity.witch.ambient|entity.witch.hurt|entity.witch.death", "entity.blaze.ambient|entity.blaze.hurt|entity.blaze.death", "entity.llama.ambient|entity.llama.hurt|entity.llama.death", "|quark:entity.stoneling.cry|quark:entity.stoneling.die", "quark:entity.frog.idle|quark:entity.frog.hurt|quark:entity.frog.die"] - - [mobs.wraith.spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 8 - "Max Cost" = 0.7 - # - #Allowed values: [1,) - "Min Group Size" = 1 - "Spawn Cost" = 0.15 - # - #Allowed values: [1,) - "Max Group Size" = 3 - - [mobs.wraith.spawn_config.biomes] - Biomes = ["minecraft:soul_sand_valley"] - "Is Blacklist" = false - - [mobs.stonelings] - "Cautious Stonelings" = true - "Enable Diamond Heart" = true - "Max Y Level" = 24 - "Tamable Stonelings" = true - - [mobs.stonelings.spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 80 - # - #Allowed values: [1,) - "Min Group Size" = 1 - # - #Allowed values: [1,) - "Max Group Size" = 1 - - [mobs.stonelings.spawn_config.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["none", "nether", "the_end"] - "Is Blacklist" = true - - [mobs.stonelings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [mobs.forgotten] - # - #1 in this many Skeletons that spawn under the threshold are replaced with Forgotten. - "Forgotten Spawn Rate" = 0.05 - "Max Height For Spawn" = 20 - - [mobs.frogs] - "Enable Brewing" = true - "Enable Big Funny" = false - - [mobs.frogs.spawn_config] - # - #Allowed values: (0,) - "Spawn Weight" = 40 - # - #Allowed values: [1,) - "Min Group Size" = 1 - # - #Allowed values: [1,) - "Max Group Size" = 3 - - [mobs.frogs.spawn_config.biomes] - # - #Allowed values: [[none, taiga, extreme_hills, jungle, mesa, plains, savanna, - # icy, the_end, beach, forest, ocean, desert, river, swamp, - # mushroom, nether] - "Biome Categories" = ["swamp"] - "Is Blacklist" = false - -[client] - "Greener Grass" = true - "Variant Animal Textures" = true - "Back Button Keybind" = true - "Improved Tooltips" = true - "Improved Mount Hud" = true - "Usage Ticker" = true - "Auto Walk Keybind" = true - "Chest Searching" = true - - [client.usage_ticker] - # - #Switch the armor display to the off hand side and the hand display to the main hand side - Invert = false - "Shift Right" = 0 - "Enable Armor" = true - "Enable Off Hand" = true - "Shift Left" = 0 - "Enable Main Hand" = true - - [client.variant_animal_textures] - "Enable Shiny Llama" = true - "Every Bee Is L G B T" = false - # - #The chance for an animal to have a special "Shiny" skin, like a shiny pokemon. This is 1 in X. Set to 0 to disable. - "Shiny Animal Chance" = 2048 - "Enable Pig" = true - "Enable Chicken" = true - "Enable Shiny Rabbit" = true - "Enable L G B T Bees" = true - "Enable Cow" = true - - [client.improved_tooltips] - "Shulker Box Require Shift" = false - "Shulker Box Use Colors" = true - "Attribute Tooltips" = true - "Enchanting Tooltips" = true - # - #The value of each shank of food. Tweak this when using mods like Hardcore Hunger which change that value. - "Food Divisor" = 2 - # - #A list of additional stacks to display on each enchantment - #The format is as follows: - #enchant_id=item1,item2,item3... - #So to display a carrot on a stick on a mending book, for example, you use: - #minecraft:mending=minecraft:carrot_on_a_stick - "Enchanting Additional Stacks" = [] - "Food Compression Threshold" = 4 - "Shulker Tooltips" = true - "Map Require Shift" = false - "Food Tooltips" = true - "Show Saturation" = true - "Map Tooltips" = true - "Enchanting Stacks" = ["minecraft:diamond_sword", "minecraft:diamond_pickaxe", "minecraft:diamond_shovel", "minecraft:diamond_axe", "minecraft:diamond_hoe", "minecraft:diamond_helmet", "minecraft:diamond_chestplate", "minecraft:diamond_leggings", "minecraft:diamond_boots", "minecraft:shears", "minecraft:bow", "minecraft:fishing_rod", "minecraft:crossbow", "minecraft:trident", "minecraft:elytra", "quark:pickarang"] - - [client.greener_grass] - "Leaves List" = ["minecraft:spruce_leaves", "minecraft:birch_leaves", "minecraft:oak_leaves", "minecraft:jungle_leaves", "minecraft:acacia_leaves", "minecraft:dark_oak_leaves", "atmospheric:rosewood_leaves", "atmospheric:morado_leaves", "atmospheric:yucca_leaves", "autumnity:maple_leaves", "environmental:willow_leaves", "environmental:hanging_willow_leaves", "minecraft:vine"] - "Green Shift" = 30 - "Blue Shift" = -30 - "Block List" = ["minecraft:large_fern", "minecraft:tall_grass", "minecraft:grass_block", "minecraft:fern", "minecraft:grass", "minecraft:potted_fern", "minecraft:sugar_cane", "environmental:giant_tall_grass"] - "Alpha Grass" = false - "Absolute Values" = false - "Red Shift" = -30 - "Affect Leaves" = true - -[oddities] - "Totem Of Holding" = true - Backpack = true - Crate = false - "Matrix Enchanting" = true - Magnets = true - Pipes = true - - [oddities.totem_of_holding] - # - #Set this to false to remove the behaviour where totems destroy themselves if the player dies again. - "Dark Souls Mode" = true - "Spawn Totem on PVP Kill" = false - # - #Set this to true to make it so that if a totem is destroyed, the items it holds are destroyed alongside it rather than dropped - "Destroy Lost Items" = false - "Enable Soul Compass" = true - # - #Set this to false to only allow the owner of a totem to collect its items rather than any player - "Allow Anyone To Collect" = true - - [oddities.magnets] - "Magnetic Blacklist" = ["minecraft:tripwire_hook"] - "Magnetic Whitelist" = ["minecraft:chipped_anvil", "minecraft:damaged_anvil"] - # - #Any items you place in this list will be derived so that any block made of it will become magnetizable - "Magnetic Derivation List" = ["minecraft:iron_ingot"] - - [oddities.matrix_enchanting] - # - #Set to false to disable the ability to influence enchantment outcomes with candles (requires the Tallow and Candles module enabled) - "Allow Influencing" = true - # - #A list of enchantment IDs you don't want the enchantment table to be able to create - "Disallowed Enchantments" = [] - # - #The maximum enchanting power the matrix enchanter can accept - "Max Bookshelves" = 15 - # - #How much to multiply the frequency of pieces where at least one of the same type has been generated - "Dupe Multiplier" = 1.4 - # - #How much the min level requirement for adding a new piece to a book should increase per each bookshelf being used - "Min Level Scale Factor Book" = 2.0 - # - #At which piece count the calculation for the min level should default to increasing one per piece rather than using the scale factor - "Min Level Cutoff" = 10 - # - #Should this be X, the price of a piece increase by 1 every X pieces you generate - "Piece Price Scale" = 9 - # - #Matrix Enchanting can be done with water instead of air around the enchanting table. Set this to false to disable this behaviour. - "Allow Underwater Enchanting" = true - # - #How many pieces you can generate without any bookshelves - "Base Max Piece Count" = 3 - # - #How much each candle influences an enchantment. This works as a multiplier to its weight - "Influence Power" = 0.125 - # - #Set to false to disable the tooltip for items with pending enchantments - "Show Tooltip" = true - # - #Set to false to disable the ability to create Enchanted Books - "Allow Books" = true - # - #The higher this is, the better enchantments you'll get on books - "Book Enchantability" = 12 - # - #An array of influences each candle should apply. This list must be 16 elements long, and is in order of wool colors. - "Influences List" = ["minecraft:unbreaking", "minecraft:fire_protection", "minecraft:knockback,minecraft:punch", "minecraft:feather_falling", "minecraft:looting,minecraft:fortune,minecraft:luck_of_the_sea", "minecraft:blast_protection", "minecraft:silk_touch,minecraft:channeling", "minecraft:bane_of_arthropods", "minecraft:protection", "minecraft:respiration,minecraft:loyalty,minecraft:infinity", "minecraft:sweeping,minecraft:multishot", "minecraft:efficiency,minecraft:sharpness,minecraft:lure,minecraft:power,minecraft:impaling,minecraft:quick_charge", "minecraft:aqua_affinity,minecraft:depth_strider,minecraft:riptide", "minecraft:thorns,minecraft:piercing", "minecraft:fire_aspect,minecraft:flame", "minecraft:smite,minecraft:projectile_protection"] - # - #How many pieces a single Lapis can generate - "Charge Per Lapis" = 4 - # - #How many pieces you can generate without any bookshelves (for Books) - "Base Max Piece Count Book" = 1 - # - #How much to multiply the frequency of pieces where incompatible pieces have been generated - "Incompatible Multiplier" = 0.0 - # - #How much the min level requirement for adding a new piece should increase for each piece added (up until the value of Min Level Cutoff) - "Min Level Scale Factor" = 1.5 - # - #Set this to true to allow treasure enchantments to be rolled as pieces - "Allow Treasures" = false - # - #By default, enchantment rarities are fuzzed a bit to feel better with the new system. Set this to false to override this behaviour. - "Normalize Rarity" = true - # - #The max amount of candles that can influence a single enchantment - "Influence Max" = 4 - - [oddities.backpack] - "Enable Ravager Hide" = true - "Base Ravager Hide Drop" = 1 - "Extra Chance Per Looting" = 0.5 - # - #Set this to true to allow the backpacks to be unequipped even with items in them - "Super Op Mode" = false - - [oddities.crate] - "Max Items" = 640 - - [oddities.pipes] - # - #Set to 0 if you don't want pipes to have a max amount of items - "Max Pipe Items" = 16 - # - #When items eject or are absorbed by pipes, should they make sounds? - "Do Pipes Whoosh" = true - # - #How long it takes for an item to cross a pipe. Bigger = slower. - "Pipe Speed" = 5 - -[experimental] - "Adjustable Chat" = false - "Narrator Readout" = false - "Overlay Shader" = false - "Custom Underground Biome" = false - "Game Nerfs" = false - - [experimental.adjustable_chat] - "Horizontal Shift" = 0 - "Vertical Shift" = 0 - - [experimental.custom_underground_biome] - # - #The format for these definitions is: - #dimensions;isDimensionBlacklist;biomeTypews;isBiomeBlacklist;rarity;minY..maxY;horizontalSize,verticalSize;horizontalVariation,verticalVariation;floorBlocks@weight;ceilingBlocks@weight;wallBlocks@weight;mimicInside - #That's a lot to take in, so here's an example. This would be for the default config of the Slime underground biome. (Spaces are allowed.) - #minecraft:overworld; false; SWAMP; false; 120; 10..40; 26,14; 14,6; minecraft:water@915, minecraft:slime_block@85; minecraft:green_terracotta@2, minecraft:lime_terracotta@3, minecraft:light_blue_terracotta@1; CEILING; false - "Biome Definitions" = [] - - [experimental.game_nerfs] - # - #Makes Mending act like the Unmending mod - #https://www.curseforge.com/minecraft/mc-mods/unmending - "Nerf Mending" = true - # - #Makes Iron Golems not drop Iron Ingots - "Disable Iron Farms" = true - # - #Makes Sheep not drop Wool when killed - "Disable Wool Drops" = true - # - #Makes Boats not glide on ice - "Disable Ice Roads" = true - # - #Resets all villager discounts when zombified to prevent reducing prices to ridiculous levels - "Nerf Villager Discount" = true - - [experimental.overlay_shader] - # - #Sets the name of the shader to load on a regular basis. This can load any shader the Camera module can (and requires the Camera module enabled to apply said logic). - #Some useful shaders include 'desaturate', 'oversaturate', 'bumpy' - #Colorblind simulation shaders are available in the form of 'deuteranopia', 'protanopia', 'tritanopia', and 'achromatopsia' - Shader = "none" - diff --git a/configuration/services/configs/minecraft/voor-kia/config/quark-common-2.toml.bak b/configuration/services/configs/minecraft/voor-kia/config/quark-common-2.toml.bak deleted file mode 100644 index e69de29..0000000 diff --git a/configuration/services/configs/minecraft/voor-kia/config/quark-common-3.toml.bak b/configuration/services/configs/minecraft/voor-kia/config/quark-common-3.toml.bak deleted file mode 100644 index e69de29..0000000 diff --git a/configuration/services/configs/minecraft/voor-kia/config/quark-common-4.toml.bak b/configuration/services/configs/minecraft/voor-kia/config/quark-common-4.toml.bak deleted file mode 100644 index e69de29..0000000 diff --git a/configuration/services/configs/minecraft/voor-kia/config/quark-common-5.toml.bak b/configuration/services/configs/minecraft/voor-kia/config/quark-common-5.toml.bak deleted file mode 100644 index e69de29..0000000 diff --git a/configuration/services/configs/minecraft/voor-kia/config/quark-common.toml b/configuration/services/configs/minecraft/voor-kia/config/quark-common.toml deleted file mode 100644 index 8a6398b..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/quark-common.toml +++ /dev/null @@ -1,2078 +0,0 @@ - -[general] - #Allowed values: (0,) - "Advancement Visibility Depth" = 2 - "'q' Button on the Right" = false - #Allowed values: (0,) - "Piston Push Limit" = 12 - #Set to true to make the quark big worldgen features such as stone clusters or underground biomes generate as spheres rather than unique shapes. It's faster, but won't look as cool - "Use Fast Worldgen" = false - "Enable 'q' Button" = true - #A list of screens that don't play well with quark's buttons. Use "Print Screen Classnames" to find the names of any others you'd want to add. - "Ignored Screens" = ["blusunrize.immersiveengineering.client.gui.CraftingTableScreen", "com.tfar.craftingstation.client.CraftingStationScreen", "com.refinedmods.refinedstorage.screen.grid.GridScreen", "appeng.client.gui.implementations.CraftingTermScreen", "appeng.client.gui.implementations.PatternTermScreen", "com.blakebr0.extendedcrafting.client.screen.EliteTableScreen", "com.blakebr0.extendedcrafting.client.screen.EliteAutoTableScreen", "com.blakebr0.extendedcrafting.client.screen.UltimateTableScreen", "com.blakebr0.extendedcrafting.client.screen.UltimateAutoTableScreen", "me.desht.modularrouters.client.gui.filter.GuiFilterScreen", "com.resourcefulbees.resourcefulbees.client.gui.screen.CentrifugeScreen", "com.resourcefulbees.resourcefulbees.client.gui.screen.MechanicalCentrifugeScreen", "com.resourcefulbees.resourcefulbees.client.gui.screen.CentrifugeMultiblockScreen"] - "Use Anti Overlap" = true - #Enables quark network profiling features. Do not enable this unless requested to. - "Enable Network Profiling" = false - #Quark replaces the Piston logic to allow for its piston features to work. If you're having troubles, try turning this off. - "Use Piston Logic Replacement" = true - #Set to true if you need to find the class name for a screen that's causing problems - "Print Screen Classnames" = false - #Blocks that Quark should treat as Shulker Boxes. - "Shulker Boxes" = ["minecraft:white_shulker_box", "minecraft:orange_shulker_box", "minecraft:magenta_shulker_box", "minecraft:light_blue_shulker_box", "minecraft:yellow_shulker_box", "minecraft:lime_shulker_box", "minecraft:pink_shulker_box", "minecraft:gray_shulker_box", "minecraft:light_gray_shulker_box", "minecraft:cyan_shulker_box", "minecraft:purple_shulker_box", "minecraft:blue_shulker_box", "minecraft:brown_shulker_box", "minecraft:green_shulker_box", "minecraft:red_shulker_box", "minecraft:black_shulker_box"] - #Set to true to enable a system that debugs quark's worldgen features. This should ONLY be used if you're asked to by a dev. - "Enable Worldgen Watchdog" = false - #Should Quark treat anything with 'shulker_box' in its item identifier as a shulker box? - "Interpret Shulker Box Like Blocks" = true - -[categories] - Building = true - Automation = true - Oddities = true - Tweaks = true - Experimental = true - Mobs = true - Tools = true - Management = true - World = true - Client = true - -[automation] - Chute = true - "Iron Rod" = true - "Weather Sensor" = true - "Ender Watcher" = true - "Endermites Form Shulkers" = true - "Jukebox Automation" = true - "Chains Connect Blocks" = true - "Color Slime" = true - "Dispensers Place Blocks" = true - "Redstone Circuit" = true - "Chain Linkage" = true - Gravisand = true - "Metal Buttons" = true - "Obsidian Plate" = true - "Pistons Move Tile Entities" = true - "Feeding Trough" = true - - [automation.dispensers_place_blocks] - Blacklist = ["minecraft:water", "minecraft:lava", "minecraft:fire"] - - [automation.chain_linkage] - #Can vehicle-linking chains be used for crafting chain armor? - "Crafts Armor" = true - - [automation.redstone_circuit] - "Enable Inductor" = true - "Enable Randomizer" = true - - [automation.metal_buttons] - "Enable Iron" = true - "Enable Gold" = true - - [automation.endermites_form_shulkers] - Chance = 0.005 - - [automation.pistons_move_tile_entities] - "Enable Chests Moving Together" = true - "Render Blacklist" = ["psi:programmer", "botania:starfield"] - "Movement Blacklist" = ["minecraft:spawner", "integrateddynamics:cable", "randomthings:blockbreaker", "minecraft:ender_chest", "minecraft:enchanting_table", "minecraft:trapped_chest", "quark:spruce_trapped_chest", "quark:birch_trapped_chest", "quark:jungle_trapped_chest", "quark:acacia_trapped_chest", "quark:dark_oak_trapped_chest", "endergetic:bolloom_bud"] - "Delayed Update List" = ["minecraft:dispenser", "minecraft:dropper"] - - [automation.color_slime] - "Change Name" = true - - [automation.feeding_trough] - #The chance (between 0 and 1) for an animal to enter love mode when eating from the trough - #Allowed values: (0,1] - "Love Chance" = 0.333333333 - #How long, in game ticks, between animals being able to eat from the trough - #Allowed values: [1,) - Cooldown = 30 - #The maximum amount of animals allowed around the trough's range for an animal to enter love mode - "Max Animals" = 32 - Range = 10.0 - -[building] - "Cobblestone Bricks" = true - "Burn Vines" = true - "Quilted Wool" = true - "Celebratory Lamps" = true - "Variant Chests" = true - Hedges = true - "Vertical Slabs" = true - "Nether Brick Fence Gate" = true - "Lit Lamp" = true - "Vertical Planks" = true - "Tie Leads To Fences" = true - "Shallow Dirt" = true - "More Stone Variants" = true - Turf = true - "Paper Decor" = true - Rope = true - "Iron Plates" = true - "Sturdy Stone" = true - "More Potted Plants" = true - Grate = true - "Variant Bookshelves" = true - "Duskbound Blocks" = true - "Bamboo Mat" = true - "More Brick Types" = true - "Gold Bars" = true - "Soul Sandstone" = true - "Compressed Blocks" = true - Stools = true - Thatch = true - "Variant Ladders" = true - Shingles = true - "Item Frames" = true - "Stained Planks" = true - "Wooden Posts" = true - "Leaf Carpet" = true - Midori = true - "Framed Glass" = true - "Tallow And Candles" = true - - [building.thatch] - #Allowed values: [0,1] - "Fall Damage Multiplier" = 0.5 - - [building.item_frames] - "Glass Item Frames Update Maps" = true - - [building.cobblestone_bricks] - "Enable Basalt Bricks" = true - "Enable Netherrack Bricks" = true - "Enable Dirt Bricks" = true - "Enable Blackstone Bricks" = true - - [building.rope] - "Enable Dispenser Behavior" = true - #Set to true to allow ropes to move Tile Entities even if Pistons Push TEs is disabled. - #Note that ropes will still use the same blacklist. - "Force Enable Move Tile Entities" = false - - [building.more_stone_variants] - "Enable Bricks" = true - "Enable Pillar" = true - "Enable Chiseled Bricks" = true - "Enable Pavement" = true - - [building.variant_ladders] - "Change Names" = true - "Enable Iron Ladder" = true - - [building.compressed_blocks] - "Enable Cocoa Bean Sack" = true - "Enable Cactus Block" = true - "Enable Apple Crate" = true - "Charcoal Block and Blaze Lantern Stay On Fire Forever" = true - "Enable Bonded Rabbit Hide" = true - "Enable Charcoal Block" = true - "Enable Gunpowder Sack" = true - "Enable Potato Crate" = true - "Enable Stick Block" = true - "Enable Carrot Crate" = true - "Enable Beetroot Crate" = true - "Enable Nether Wart Sack" = true - "Enable Chorus Fruit Block" = true - "Enable Blaze Lantern" = true - "Enable Bamboo Block" = true - "Enable Berry Sack" = true - #Allowed values: [0,) - "Bamboo Bundle Fuel Time" = 500 - "Enable Golden Apple Crate" = true - "Enable Sugar Cane Block" = true - "Enable Bonded Leather" = true - #Allowed values: [0,) - "Blaze Lantern Fuel Time" = 24000 - #Allowed values: [0,) - "Charcoal Block Fuel Time" = 16000 - #Allowed values: [0,) - "Stick Block Fuel Time" = 900 - - [building.variant_chests] - "Enable Reverting Wooden Chests" = true - "Replace Worldgen Chests" = true - #Chests to put in each structure. The format per entry is "structure=chest", where "structure" is a structure ID, and "chest" is a block ID, which must correspond to a standard chest block. - "Structure Chests" = ["minecraft:village_plains=quark:oak_chest", "minecraft:igloo=quark:spruce_chest", "minecraft:village_snowy=quark:spruce_chest", "minecraft:village_taiga=quark:spruce_chest", "minecraft:desert_pyramid=quark:birch_chest", "minecraft:jungle_pyramid=quark:jungle_chest", "minecraft:village_desert=quark:jungle_chest", "minecraft:village_savanna=quark:acacia_chest", "minecraft:mansion=quark:dark_oak_chest", "minecraft:pillager_outpost=quark:dark_oak_chest", "minecraft:ruined_portal=quark:crimson_chest", "minecraft:bastion_remnant=quark:crimson_chest", "minecraft:fortress=quark:nether_brick_chest", "minecraft:endcity=quark:purpur_chest", "bettermineshafts:mineshaft=quark:oak_chest", "cobbler:shulker_factory=quark:purpur_chest", "conjurer_illager:theatre=quark:dark_oak_chest", "dungeoncrawl:dungeon=quark:oak_chest", "dungeons_plus:bigger_dungeon=quark:oak_chest", "dungeons_plus:end_ruins=quark:purpur_chest", "dungeons_plus:leviathan=quark:jungle_chest", "dungeons_plus:snowy_temple=quark:spruce_chest", "dungeons_plus:soul_prison=quark:warped_chest", "dungeons_plus:tower=quark:oak_chest", "dungeons_plus:warped_garden=quark:warped__chest", "hunterillager:hunterhouse=quark:oak_chest", "iceandfire:gorgon_temple=quark:jungle_chest", "pandoras_creatures:end_prison=quark:purpur_chest", "repurposed_structures:fortress_jungle=quark:jungle_chest", "repurposed_structures:igloo_grassy=quark:oak_chest", "repurposed_structures:igloo_stone=quark:spruce_chest", "repurposed_structures:mineshaft_birch=quark:birch_chest", "repurposed_structures:mineshaft_desert=quark:jungle_chest", "repurposed_structures:mineshaft_end=quark:purpur_chest", "repurposed_structures:mineshaft_icy=quark:spruce_chest", "repurposed_structures:mineshaft_jungle=quark:jungle_chest", "repurposed_structures:mineshaft_nether=quark:nether_brick_chest", "repurposed_structures:mineshaft_ocean=quark:prismarine_chest", "repurposed_structures:mineshaft_savanna=quark:acacia_chest", "repurposed_structures:mineshaft_stone=quark:spruce_chest", "repurposed_structures:mineshaft_swamp_or_dark_forest=quark:dark_oak_chest", "repurposed_structures:mineshaft_taiga=quark:spruce_chest", "repurposed_structures:outpost_badlands=quark:dark_oak_chest", "repurposed_structures:outpost_birch=quark:birch_chest", "repurposed_structures:outpost_crimson=quark:crimson_chest", "repurposed_structures:outpost_desert=quark:jungle_chest", "repurposed_structures:outpost_giant_tree_taiga=quark:spruce_chest", "repurposed_structures:outpost_icy=quark:spruce_chest", "repurposed_structures:outpost_jungle=quark:jungle_chest", "repurposed_structures:outpost_nether_brick=quark:nether_brick_chest", "repurposed_structures:outpost_snowy=quark:spruce_chest", "repurposed_structures:outpost_warped=quark:warped_chest", "repurposed_structures:pyramid_badlands=quark:dark_oak_chest", "repurposed_structures:pyramid_nether=quark:nether_brick_chest", "repurposed_structures:ruined_portal_end=quark:purpur_chest", "repurposed_structures:shipwreck_crimson=quark:crimson_chest", "repurposed_structures:shipwreck_end=quark:purpur_chest", "repurposed_structures:shipwreck_nether_bricks=quark:nether_brick_chest", "repurposed_structures:shipwreck_warped=quark:warped_chest", "repurposed_structures:stronghold_nether=quark:nether_brick_chest", "repurposed_structures:stronghold_stonebrick=quark:oak_chest", "repurposed_structures:temple_nether_basalt=quark:nether_brick_chest", "repurposed_structures:temple_nether_crimson=quark:crimson_chest", "repurposed_structures:temple_nether_soul=quark:warped_chest", "repurposed_structures:temple_nether_warped=quark:warped_chest", "repurposed_structures:temple_nether_wasteland=quark:nether_brick_chest", "repurposed_structures:village_badlands=quark:dark_oak_chest", "repurposed_structures:village_birch=quark:birch_chest", "repurposed_structures:village_crimson=quark:crimson_chest", "repurposed_structures:village_dark_oak=quark:dark_oak_chest", "repurposed_structures:village_giant_taiga=quark:spruce_chest", "repurposed_structures:village_jungle=quark:jungle_chest", "repurposed_structures:village_mountains=quark:spruce_chest", "repurposed_structures:village_oak=quark:oak_chest", "repurposed_structures:village_swamp=quark:oak_chest", "repurposed_structures:village_warped=quark:warped_chest", "valhelsia_structures:castle=quark:spruce_chest", "valhelsia_structures:castle_ruin=quark:oak_chest", "valhelsia_structures:desert_house=quark:spruce_chest", "valhelsia_structures:forge=quark:spruce_chest", "valhelsia_structures:player_house=quark:oak_chest", "valhelsia_structures:small_castle=quark:oak_chest", "valhelsia_structures:small_dungeon=quark:oak_chest", "valhelsia_structures:tower_ruin=quark:spruce_chest"] - - [building.more_brick_types] - "Enable Magma Bricks" = true - "Enable Sandy Bricks" = true - #This also comes with a utility recipe for Red Nether Bricks - "Enable Blue Nether Bricks" = true - "Enable Blackstone Variant Bricks" = true - "Enable Charred Nether Bricks" = true - "Enable Snow Bricks" = true - #This also includes Red Sandstone Bricks and Soul Sandstone Bricks - "Enable Sandstone Bricks" = true - - [building.tallow_and_candles] - "Candles Fall" = true - #Allowed values: [0,) - "Tallow Burn Time" = 200 - #Allowed values: [0,) - "Max Drop" = 3 - #Allowed values: [0,15] - "Enchant Power" = 1.0 - #Allowed values: [0,) - "Min Drop" = 1 - - [building.celebratory_lamps] - "Light Level" = 15 - - [building.variant_bookshelves] - "Change Names" = true - -[management] - "Chests In Boats" = true - "Inventory Sorting" = true - "Shulker Box Right Click" = true - "Hotbar Changer" = true - "Item Sharing" = true - "Right Click Armor" = true - "Easy Transfering" = true - - [management.inventory_sorting] - #Play a click when sorting inventories using keybindings - "Satisfying Click" = true - "Enable Chests" = true - "Enable Player Inventory In Chests" = true - "Enable Player Inventory" = true - - [management.easy_transfering] - "Enable Shift Lock" = true - - [management.item_sharing] - "Render Items In Chat" = true - -[tools] - Pickarang = true - "Ambient Discs" = true - "Seed Pouch" = true - "Pathfinder Maps" = true - "Bottled Cloud" = true - "Color Runes" = true - "Ancient Tomes" = true - "Slime In A Bucket" = true - Camera = true - Trowel = true - Abacus = true - - [tools.ambient_discs] - "Drop On Spider Kill" = true - - [tools.trowel] - #Amount of blocks placed is this value + 1. - #Set to 0 to make the Trowel unbreakable - #Allowed values: [0,) - "Trowel Max Durability" = 255 - - [tools.bottled_cloud] - "Cloud Level Top" = 132 - "Cloud Level Bottom" = 127 - - [tools.ancient_tomes] - "Normal Upgrade Cost" = 10 - "Valid Enchantments" = ["minecraft:feather_falling", "minecraft:thorns", "minecraft:sharpness", "minecraft:smite", "minecraft:bane_of_arthropods", "minecraft:knockback", "minecraft:fire_aspect", "minecraft:looting", "minecraft:sweeping", "minecraft:efficiency", "minecraft:unbreaking", "minecraft:fortune", "minecraft:power", "minecraft:punch", "minecraft:luck_of_the_sea", "minecraft:lure", "minecraft:loyalty", "minecraft:riptide", "minecraft:impaling", "minecraft:piercing"] - "Item Quality" = 2 - #Set to 0 to not generate in Underwater Ruins - "Underwater Ruin Weight" = 0 - #Set to 0 to not generate in Woodland Mansions - "Woodland Mansion Weight" = 15 - #Set to 0 to not generate in Dungeons - "Dungeon Weight" = 20 - "Limit Break Upgrade Cost" = 30 - #Set to 0 to not generate in Stronghold Libraries - "Library Weight" = 30 - #Set to 0 to not generate in Nether Fortresses - "Nether Fortress Weight" = 0 - #Set to 0 to not generate in Bastions - "Bastion Weight" = 25 - #Set to 0 to not generate in Monster Boxes - "Monster Box Weight" = 5 - - [tools.pathfinder_maps] - #In this section you can add custom Pathfinder Maps. This works for both vanilla and modded biomes. - #Each custom map must be on its own line. - #The format for a custom map is as follows: - #,,,,, - # - #With the following descriptions: - # - being the biome's ID NAME. You can find vanilla names here - https://minecraft.gamepedia.com/Biome#Biome_IDs - # - being the Cartographer villager level required for the map to be unlockable - # - being the cheapest (in Emeralds) the map can be - # - being the most expensive (in Emeralds) the map can be - # - being a hex color (without the #) for the map to display. You can generate one here - http://htmlcolorcodes.com/ - # - being the display name of the map - # - #Here's an example of a map to locate Ice Mountains: - #minecraft:ice_mountains,2,8,14,7FE4FF,Ice Mountains Pathfinder Map - Customs = [] - "Search Radius" = 6400 - "Search Distance Increment" = 8 - "Xp From Trade" = 5 - - [tools.seed_pouch] - "Show All Variants In Creative" = true - "Shift Range" = 3 - "Max Items" = 640 - - [tools.color_runes] - "Jungle Temple Weight" = 8 - "Desert Temple Weight" = 8 - "Dungeon Weight" = 10 - "Item Quality" = 0 - "Apply Cost" = 15 - "Nether Fortress Weight" = 8 - - [tools.pickarang] - #22.5 is ender chests, 25.0 is monster boxes, 50 is obsidian. Most things are below 5. - "Max Hardness" = 20.0 - #2 is Iron, 3 is Diamond. - "Harvest Level" = 3 - #2 is Iron, 3 is Diamond. - "Netherite Harvest Level" = 3 - #How long it takes before the pickarang starts returning to the player if it doesn't hit anything. - Timeout = 20 - #Set to -1 to have the Pickarang be unbreakable. - Durability = 800 - #Set this to true to disable the short cooldown between throwing pickarangs. - "No Cooldown" = false - #Set to -1 to have the Flamerang be unbreakable. - "Netherite Durability" = 1040 - #Set this to true to use the recipe without the Heart of Diamond, even if the Heart of Diamond is enabled. - "Never Use Heart Of Diamond" = false - -[tweaks] - "Armed Armor Stands" = true - "Lock Rotation" = true - "Dragon Scales" = true - "Replace Scaffolding" = true - "Axe Leaf Harvesting" = true - "Sign Editing" = true - "Dirt To Path" = true - "Simple Harvest" = true - "Hoe Harvesting" = true - "Reacharound Placing" = true - "Villagers Follow Emeralds" = true - "Compasses Work Everywhere" = true - "Skull Pikes" = true - "Note Block Mob Sounds" = true - "Double Door Opening" = true - "Automatic Recipe Unlock" = true - "Poison Potato Usage" = true - "Lava Bucket As Trash" = true - "Improved Sleeping" = true - "Infinity Bucket" = true - "Springy Slime" = true - Emotes = true - "Utility Recipes" = true - "Pat The Dogs" = true - "Enhanced Ladders" = true - "Snow Golem Player Heads" = true - "Glass Shard" = true - "Campfires Boost Elytra" = true - "More Banner Layers" = true - "Better Elytra Rocket" = true - - [tweaks.sign_editing] - "Requires Empty Hand" = false - - [tweaks.pat_the_dogs] - #How many ticks it takes for a dog to want affection after being pet/tamed; leave -1 to disable - "Dogs Want Love" = -1 - - [tweaks.automatic_recipe_unlock] - #A list of recipe names that should NOT be added in by default - "Ignored Recipes" = [] - "Disable Recipe Book" = false - "Force Limited Crafting" = false - - [tweaks.hoe_harvesting] - "Hoes Can Have Fortune" = true - - [tweaks.skull_pikes] - "Pike Range" = 5.0 - - [tweaks.infinity_bucket] - #Set this to false to prevent dispensers from using infinite water buckets - "Allow Dispensers To Use" = true - Cost = 10 - - [tweaks.poison_potato_usage] - "Poison Effect" = true - Chance = 0.1 - - [tweaks.utility_recipes] - #Can you craft four chests at once using logs? - "Logs To Chests" = true - #Can other stone-like materials be used for crafting stone tools? - "Better Stone Tool Crafting" = true - #Can a dispenser be crafted by adding a bow to a dropper? - "Enable Dispenser" = true - #Can cookies, paper, and bread be crafted in a 2x2 crafting table? - "Bent Recipes" = true - #Can Rotten Flesh and Poisonous Potatoes be composted? - "Compostable Toxins" = true - #Can bones be smelted down to bone meal? - "Bone Meal Utility" = true - #Can any wool color be dyed? - "Dye Any Wool" = true - #Can Coral be crafted into dye? - "Coral To Dye" = true - #Can torches can be used as fuel in furnaces? - "Torches Burn" = true - #Can a repeater be crafted with the pattern for a redstone torch? - "Enable Repeater" = true - #Can you craft a minecart around blocks which can be placed inside? - "Enable Minecarts" = true - #Does Dragon Breath return a bottle when used as a reagent or material? - "Effective Dragon Breath" = true - - [tweaks.reacharound_placing] - #Allowed values: [0,1] - Leniency = 0.5 - Whitelist = [] - "Display Horizontal" = "< >" - Display = "[ ]" - - [tweaks.improved_sleeping] - "Enable Afk" = true - #Allowed values: (0,) - "Afk Time" = 2400 - #Allowed values: (0,1] - "Percent Req" = 0.5 - - [tweaks.emotes] - #The enabled default emotes. Remove from this list to disable them. You can also re-order them, if you feel like it. - "Enabled Emotes" = ["no", "yes", "wave", "salute", "cheer", "clap", "think", "point", "shrug", "headbang", "weep", "facepalm"] - #Enable this to make custom emotes read the file every time they're triggered so you can edit on the fly. - #DO NOT ship enabled this in a modpack, please. - "Custom Emote Debug" = false - #The list of Custom Emotes to be loaded. - #Watch the tutorial on Custom Emotes to learn how to make your own: https://youtu.be/ourHUkan6aQ - "Custom Emotes" = [] - - [tweaks.simple_harvest] - #Can players harvest crops with empty hand clicks? - "Empty Hand Harvest" = true - #Does harvesting crops with a hoe cost durability? - "Harvesting Costs Durability" = false - #Should Quark look for (nonvanilla) crops, and handle them? - "Do Harvesting Search" = true - #Which crops can be harvested? - #Format is: "harvestState[,afterHarvest]", i.e. "minecraft:wheat[age=7]" or "minecraft:cocoa[age=2,facing=north],minecraft:cocoa[age=0,facing=north]" - "Harvestable Blocks" = ["minecraft:wheat[age=7]", "minecraft:carrots[age=7]", "minecraft:potatoes[age=7]", "minecraft:beetroots[age=3]", "minecraft:nether_wart[age=3]", "minecraft:cocoa[age=2,facing=north],minecraft:cocoa[age=0,facing=north]", "minecraft:cocoa[age=2,facing=south],minecraft:cocoa[age=0,facing=south]", "minecraft:cocoa[age=2,facing=east],minecraft:cocoa[age=0,facing=east]", "minecraft:cocoa[age=2,facing=west],minecraft:cocoa[age=0,facing=west]"] - - [tweaks.enhanced_ladders] - #Allowed values: (,0] - "Fall Speed" = -0.2 - - [tweaks.compasses_work_everywhere] - "Enable Nether" = true - "Enable Compass Nerf" = true - "Enable End" = true - "Enable Clock Nerf" = true - - [tweaks.campfires_boost_elytra] - "Boost Strength" = 0.5 - "Max Speed" = 1.0 - - [tweaks.replace_scaffolding] - #How many times the algorithm for finding out where a block would be placed is allowed to turn. If you set this to large values (> 3) it may start producing weird effects. - "Max Bounces" = 1 - - [tweaks.more_banner_layers] - #Allowed values: [1,16] - "Layer Limit" = 16 - -[world] - "New Stone Types" = true - "Lush Underground Biome" = true - "Big Dungeon" = true - Speleothems = true - "Elder Prismarine Underground Biome" = true - "Blossom Trees" = true - "Sandstone Underground Biome" = true - "Glowshroom Underground Biome" = true - "Permafrost Underground Biome" = true - "Underground Clay" = true - "Slime Underground Biome" = true - "Fairy Rings" = true - "Chorus Vegetation" = true - Crevices = true - "Nether Obsidian Spikes" = true - "Mega Caves" = true - "Realistic World Gen" = true - Biotite = true - "Big Stone Clusters" = true - "Brimstone Underground Biome" = true - "Cave Crystal Underground Biome" = true - "Spiral Spires" = true - "Overgrown Underground Biome" = true - "Cave Roots" = true - "Spider Nest Underground Biome" = true - Deepslate = true - "Monster Box" = true - - [world.monster_box] - #The chance for the monster box generator to try and place one in a chunk, 1 is 100% - #This can be higher than 100% if you want multiple per chunk, , 0 is 0% - "Chance Per Chunk" = 0.8 - "Min Mob Count" = 5 - "Min Y" = 5 - "Max Y" = 30 - "Max Mob Count" = 8 - "Enable Extra Loot Table" = true - #How many blocks to search vertically from a position before trying to place a block. Higher means you'll get more boxes in open spaces. - "Search Range" = 6 - - [world.monster_box.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.cave_crystal_underground_biome] - #The chance that a crystal can grow, this is on average 1 in X world ticks, set to a higher value to make them grow slower. Minimum is 1, for every tick. Set to 0 to disable growth. - "Cave Crystal Growth Chance" = 5 - #Allowed values: [0,1] - "Crystal Chance" = 0.16 - #Allowed values: [0,1] - "Crystal Cluster On Sides Chance" = 0.6 - #Allowed values: [0,1] - "Crystal Cluster Chance" = 0.2 - #Allowed values: [0,1] - "Double Crystal Chance" = 0.2 - "Enable Collateral Movement" = true - "Enable Beacon Redirection" = true - "Crystals Craft Runes" = true - - [world.cave_crystal_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 42 - #Allowed values: [0,) - Rarity = 400 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 22 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 18 - #Allowed values: [0,) - "Vertical Variation" = 8 - - [world.cave_crystal_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["ocean"] - "Is Blacklist" = true - - [world.cave_crystal_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.speleothems] - "Tries Per Chunk In Nether" = 4 - "Speleothems Per Chunk In Nether" = 12 - "Small Speleothems Increase Fall Damage" = true - "Speleothems Per Chunk" = 12 - "Max Ylevel" = 55 - "Tries Per Chunk" = 60 - - [world.speleothems.dimensions] - Dimensions = [] - "Is Blacklist" = true - - [world.sandstone_underground_biome] - - [world.sandstone_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.sandstone_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["sandy"] - "Is Blacklist" = false - - [world.sandstone_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.spiral_spires] - Radius = 15 - Rarity = 200 - #Set to 0 to turn off Myalite Conduits - "Myalite Conduit Distance" = 24 - "Renewable Myalite" = true - - [world.spiral_spires.biomes] - - [world.spiral_spires.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = [] - "Is Blacklist" = true - - [world.spiral_spires.biomes.biomes] - Biomes = ["minecraft:end_highlands"] - "Is Blacklist" = false - - [world.spiral_spires.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.nether_obsidian_spikes] - #The chance for a chunk to contain spikes (1 is 100%, 0 is 0%) - "Chance Per Chunk" = 0.1 - "Big Spike Spawners" = true - #Should a chunk have spikes, how many would the generator try to place - "Tries Per Chunk" = 4 - #The chance for a spike to be big (1 is 100%, 0 is 0%) - "Big Spike Chance" = 0.03 - - [world.nether_obsidian_spikes.dimensions] - Dimensions = ["minecraft:the_nether"] - "Is Blacklist" = false - - [world.biotite] - "Clusters Per Dragon Tick" = 16 - "Generate On Dragon Death" = true - "Dragon Ticks Per Cluster" = 1 - "Generate Naturally" = false - - [world.biotite.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.biotite.ore_settings] - #Allowed values: [0,255] - "Max Height" = 64 - #Allowed values: [0,) - "Cluster Count" = 16 - #Allowed values: [0,255] - "Min Height" = 1 - #Allowed values: [0,) - "Cluster Size" = 14 - - [world.crevices] - - [world.crevices.spawn_settings] - #Allowed values: [0,) - "Horizontal Size" = 60 - #Allowed values: [0,) - Rarity = 120 - #Allowed values: [0,255] - "Min Y Level" = 15 - #Allowed values: [0,) - "Horizontal Variation" = 20 - #Allowed values: [0,255] - "Max Y Level" = 50 - #Allowed values: [0,) - "Vertical Size" = 4 - #Allowed values: [0,) - "Vertical Variation" = 1 - - [world.crevices.spawn_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["ocean", "beach"] - "Is Blacklist" = true - - [world.crevices.spawn_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.crevices.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.cave_roots] - "Min Y" = 16 - "Chunk Attempts" = 300 - "Max Y" = 52 - "Enable Brewing" = true - - [world.cave_roots.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types] - "Enable Marble" = true - "Enable Myalite" = true - "Enable Jasper" = true - "Enable Voidstone" = true - "Enable Slate" = true - "Enable Limestone" = true - - [world.new_stone_types.marble] - - [world.new_stone_types.marble.oregen] - #Allowed values: [0,255] - "Max Height" = 255 - #Allowed values: [0,) - "Cluster Count" = 10 - #Allowed values: [0,255] - "Min Height" = 0 - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.marble.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types.limestone] - - [world.new_stone_types.limestone.oregen] - #Allowed values: [0,255] - "Max Height" = 255 - #Allowed values: [0,) - "Cluster Count" = 10 - #Allowed values: [0,255] - "Min Height" = 0 - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.limestone.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types.myalite] - - [world.new_stone_types.myalite.oregen] - #Allowed values: [0,255] - "Max Height" = 255 - #Allowed values: [0,) - "Cluster Count" = 10 - #Allowed values: [0,255] - "Min Height" = 0 - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.myalite.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.new_stone_types.voidstone] - - [world.new_stone_types.voidstone.oregen] - #Allowed values: [0,255] - "Max Height" = 255 - #Allowed values: [0,) - "Cluster Count" = 10 - #Allowed values: [0,255] - "Min Height" = 0 - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.voidstone.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.new_stone_types.slate] - - [world.new_stone_types.slate.oregen] - #Allowed values: [0,255] - "Max Height" = 255 - #Allowed values: [0,) - "Cluster Count" = 10 - #Allowed values: [0,255] - "Min Height" = 0 - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.slate.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.new_stone_types.jasper] - - [world.new_stone_types.jasper.oregen] - #Allowed values: [0,255] - "Max Height" = 255 - #Allowed values: [0,) - "Cluster Count" = 10 - #Allowed values: [0,255] - "Min Height" = 0 - #Allowed values: [0,) - "Cluster Size" = 33 - - [world.new_stone_types.jasper.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.spider_nest_underground_biome] - "Enabled Wrapped" = true - - [world.spider_nest_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.spider_nest_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["plains"] - "Is Blacklist" = false - - [world.spider_nest_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.deepslate] - "Sheet Height Variance" = 6 - "Sheet Y Start" = 0 - "Sheet Height" = 18 - - [world.deepslate.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees] - - [world.blossom_trees.orange] - Rarity = 100 - - [world.blossom_trees.orange.biome_config] - - [world.blossom_trees.orange.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["savanna"] - "Is Blacklist" = false - - [world.blossom_trees.orange.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.blossom_trees.orange.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.red] - Rarity = 30 - - [world.blossom_trees.red.biome_config] - - [world.blossom_trees.red.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mesa"] - "Is Blacklist" = false - - [world.blossom_trees.red.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.blossom_trees.red.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.pink] - Rarity = 100 - - [world.blossom_trees.pink.biome_config] - - [world.blossom_trees.pink.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mountain"] - "Is Blacklist" = false - - [world.blossom_trees.pink.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.blossom_trees.pink.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.blue] - Rarity = 200 - - [world.blossom_trees.blue.biome_config] - - [world.blossom_trees.blue.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["snowy"] - "Is Blacklist" = false - - [world.blossom_trees.blue.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.blossom_trees.blue.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.yellow] - Rarity = 200 - - [world.blossom_trees.yellow.biome_config] - - [world.blossom_trees.yellow.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["plains"] - "Is Blacklist" = false - - [world.blossom_trees.yellow.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.blossom_trees.yellow.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.blossom_trees.lavender] - Rarity = 100 - - [world.blossom_trees.lavender.biome_config] - - [world.blossom_trees.lavender.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["swamp"] - "Is Blacklist" = false - - [world.blossom_trees.lavender.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.blossom_trees.lavender.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.mega_caves] - - [world.mega_caves.spawn_settings] - #Allowed values: [0,) - "Horizontal Size" = 80 - #Allowed values: [0,) - Rarity = 800 - #Allowed values: [0,255] - "Min Y Level" = 10 - #Allowed values: [0,) - "Horizontal Variation" = 30 - #Allowed values: [0,255] - "Max Y Level" = 20 - #Allowed values: [0,) - "Vertical Size" = 25 - #Allowed values: [0,) - "Vertical Variation" = 10 - - [world.mega_caves.spawn_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["ocean", "beach"] - "Is Blacklist" = true - - [world.mega_caves.spawn_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.mega_caves.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.elder_prismarine_underground_biome] - #Allowed values: [0,1] - "Lantern Chance" = 0.0085 - #Allowed values: [0,1] - "Water Chance" = 0.25 - - [world.elder_prismarine_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 200 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.elder_prismarine_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["ocean"] - "Is Blacklist" = false - - [world.elder_prismarine_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.glowshroom_underground_biome] - #Allowed values: [0,1] - "Glowshroom Spawn Chance" = 0.0625 - #Allowed values: (0,) - "Glowshroom Growth Rate" = 20 - "Enable Danger Sight" = true - "Enable Huge Glowshrooms" = true - - [world.glowshroom_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.glowshroom_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mountain", "mushroom"] - "Is Blacklist" = false - - [world.glowshroom_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters] - #Blocks that stone clusters can replace. If you want to make it so it only replaces in one dimension, - #do "block|dimension", as we do for netherrack and end stone by default. - "Blocks To Replace" = ["minecraft:stone", "minecraft:andesite", "minecraft:diorite", "minecraft:granite", "minecraft:netherrack|minecraft:the_nether", "minecraft:end_stone|minecraft:the_end", "quark:marble", "quark:limestone", "quark:jasper", "quark:slate", "quark:basalt"] - - [world.big_stone_clusters.marble] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.marble.biomes] - - [world.big_stone_clusters.marble.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["plains"] - "Is Blacklist" = false - - [world.big_stone_clusters.marble.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.marble.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.limestone] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.limestone.biomes] - - [world.big_stone_clusters.limestone.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["swamp", "ocean"] - "Is Blacklist" = false - - [world.big_stone_clusters.limestone.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.limestone.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.granite] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.granite.biomes] - - [world.big_stone_clusters.granite.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mountain"] - "Is Blacklist" = false - - [world.big_stone_clusters.granite.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.granite.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.myalite] - #Allowed values: [0,) - "Horizontal Size" = 20 - #Allowed values: [0,) - Rarity = 100 - "Generate In Air" = true - #Allowed values: [0,255] - "Min Y Level" = 58 - #Allowed values: [0,) - "Horizontal Variation" = 6 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 62 - #Allowed values: [0,) - "Vertical Size" = 40 - #Allowed values: [0,) - "Vertical Variation" = 10 - - [world.big_stone_clusters.myalite.biomes] - - [world.big_stone_clusters.myalite.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = [] - "Is Blacklist" = true - - [world.big_stone_clusters.myalite.biomes.biomes] - Biomes = ["minecraft:end_highlands"] - "Is Blacklist" = false - - [world.big_stone_clusters.myalite.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.big_stone_clusters.voidstone] - #Allowed values: [0,) - "Horizontal Size" = 19 - #Allowed values: [0,) - Rarity = 20 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 6 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 40 - #Allowed values: [0,) - "Vertical Size" = 19 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.big_stone_clusters.voidstone.biomes] - - [world.big_stone_clusters.voidstone.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = [] - "Is Blacklist" = true - - [world.big_stone_clusters.voidstone.biomes.biomes] - Biomes = ["minecraft:end_highlands", "minecraft:end_midlands", "minecraft:end_barrens"] - "Is Blacklist" = false - - [world.big_stone_clusters.voidstone.dimensions] - Dimensions = ["minecraft:the_end"] - "Is Blacklist" = false - - [world.big_stone_clusters.andesite] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.andesite.biomes] - - [world.big_stone_clusters.andesite.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["forest"] - "Is Blacklist" = false - - [world.big_stone_clusters.andesite.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.andesite.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.slate] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.slate.biomes] - - [world.big_stone_clusters.slate.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["snowy"] - "Is Blacklist" = false - - [world.big_stone_clusters.slate.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.slate.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.diorite] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.diorite.biomes] - - [world.big_stone_clusters.diorite.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["savanna", "jungle", "mushroom"] - "Is Blacklist" = false - - [world.big_stone_clusters.diorite.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.diorite.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_stone_clusters.jasper] - #Allowed values: [0,) - "Horizontal Size" = 14 - #Allowed values: [0,) - Rarity = 4 - #Allowed values: [0,255] - "Min Y Level" = 20 - #Allowed values: [0,) - "Horizontal Variation" = 9 - Enabled = true - #Allowed values: [0,255] - "Max Y Level" = 80 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 9 - - [world.big_stone_clusters.jasper.biomes] - - [world.big_stone_clusters.jasper.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mesa", "sandy"] - "Is Blacklist" = false - - [world.big_stone_clusters.jasper.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.big_stone_clusters.jasper.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.overgrown_underground_biome] - - [world.overgrown_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.overgrown_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["forest"] - "Is Blacklist" = false - - [world.overgrown_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.permafrost_underground_biome] - - [world.permafrost_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.permafrost_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["snowy"] - "Is Blacklist" = false - - [world.permafrost_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.lush_underground_biome] - - [world.lush_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.lush_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["jungle"] - "Is Blacklist" = false - - [world.lush_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.brimstone_underground_biome] - - [world.brimstone_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 80 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.brimstone_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mesa"] - "Is Blacklist" = false - - [world.brimstone_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.big_dungeon] - "Loot Table" = "minecraft:chests/simple_dungeon" - #The chance that a big dungeon spawn candidate will be allowed to spawn. 0.2 is 20%, which is the same as the Pillager Outpost. - "Spawn Chance" = 0.1 - "Max Rooms" = 10 - "Chest Chance" = 0.5 - - [world.big_dungeon.biome_config] - - [world.big_dungeon.biome_config.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["ocean", "beach", "nether", "end"] - "Is Blacklist" = true - - [world.big_dungeon.biome_config.biomes] - Biomes = [] - "Is Blacklist" = true - - [world.chorus_vegetation] - "Teleport Duplication Chance" = 0.01 - Radius = 7 - Rarity = 150 - "Chunk Attempts" = 120 - "Highlands Chance" = 1.0 - "Midlands Chance" = 0.2 - "Endermite Spawn Chance" = 0.01 - "Passive Teleport Chance" = 0.2 - "Other End Biomes Chance" = 0.0 - - [world.fairy_rings] - "Forest Chance" = 0.00625 - Ores = ["minecraft:emerald_ore", "minecraft:diamond_ore"] - "Plains Chance" = 0.0025 - - [world.fairy_rings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.underground_clay] - - [world.underground_clay.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [world.underground_clay.ore_settings] - #Allowed values: [0,255] - "Max Height" = 60 - #Allowed values: [0,) - "Cluster Count" = 3 - #Allowed values: [0,255] - "Min Height" = 20 - #Allowed values: [0,) - "Cluster Size" = 20 - - [world.slime_underground_biome] - - [world.slime_underground_biome.biome_settings] - #Allowed values: [0,) - "Horizontal Size" = 26 - #Allowed values: [0,) - Rarity = 120 - #Allowed values: [0,255] - "Min Y Level" = 0 - #Allowed values: [0,) - "Horizontal Variation" = 14 - #Allowed values: [0,255] - "Max Y Level" = 64 - #Allowed values: [0,) - "Vertical Size" = 14 - #Allowed values: [0,) - "Vertical Variation" = 6 - - [world.slime_underground_biome.biome_settings.biomes] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["swamp"] - "Is Blacklist" = false - - [world.slime_underground_biome.biome_settings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - -[mobs] - Frogs = true - Crabs = true - Stonelings = true - Foxhound = true - Forgotten = true - Wraith = true - Toretoise = true - - [mobs.toretoise] - "Max Y Level" = 32 - - [mobs.toretoise.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 100 - #Allowed values: [1,) - "Min Group Size" = 1 - #Allowed values: [1,) - "Max Group Size" = 1 - - [mobs.toretoise.spawn_config.biomes] - - [mobs.toretoise.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["void", "nether", "end"] - "Is Blacklist" = true - - [mobs.toretoise.spawn_config.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [mobs.toretoise.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [mobs.crabs] - "Enable Brewing" = true - - [mobs.crabs.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 5 - #Allowed values: [1,) - "Min Group Size" = 1 - #Allowed values: [1,) - "Max Group Size" = 3 - - [mobs.crabs.spawn_config.biomes] - - [mobs.crabs.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["beach"] - "Is Blacklist" = false - - [mobs.crabs.spawn_config.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [mobs.foxhound] - #The chance coal will tame a foxhound - "Tame Chance" = 0.05 - - [mobs.foxhound.lesser_spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 2 - "Max Cost" = 0.7 - #Allowed values: [1,) - "Min Group Size" = 1 - "Spawn Cost" = 0.15 - #Allowed values: [1,) - "Max Group Size" = 1 - - [mobs.foxhound.lesser_spawn_config.biomes] - - [mobs.foxhound.lesser_spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = [] - "Is Blacklist" = true - - [mobs.foxhound.lesser_spawn_config.biomes.biomes] - Biomes = ["minecraft:soul_sand_valley"] - "Is Blacklist" = false - - [mobs.foxhound.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 30 - #Allowed values: [1,) - "Min Group Size" = 1 - #Allowed values: [1,) - "Max Group Size" = 2 - - [mobs.foxhound.spawn_config.biomes] - - [mobs.foxhound.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = [] - "Is Blacklist" = true - - [mobs.foxhound.spawn_config.biomes.biomes] - Biomes = ["minecraft:nether_wastes", "minecraft:basalt_deltas"] - "Is Blacklist" = false - - [mobs.wraith] - #List of sound sets to use with wraiths. - #Three sounds must be provided per entry, separated by | (in the format idle|hurt|death). Leave blank for no sound (i.e. if a mob has no ambient noise) - "Wraith Sounds" = ["entity.sheep.ambient|entity.sheep.hurt|entity.sheep.death", "entity.cow.ambient|entity.cow.hurt|entity.cow.death", "entity.pig.ambient|entity.pig.hurt|entity.pig.death", "entity.chicken.ambient|entity.chicken.hurt|entity.chicken.death", "entity.horse.ambient|entity.horse.hurt|entity.horse.death", "entity.cat.ambient|entity.cat.hurt|entity.cat.death", "entity.wolf.ambient|entity.wolf.hurt|entity.wolf.death", "entity.villager.ambient|entity.villager.hurt|entity.villager.death", "entity.polar_bear.ambient|entity.polar_bear.hurt|entity.polar_bear.death", "entity.zombie.ambient|entity.zombie.hurt|entity.zombie.death", "entity.skeleton.ambient|entity.skeleton.hurt|entity.skeleton.death", "entity.spider.ambient|entity.spider.hurt|entity.spider.death", "|entity.creeper.hurt|entity.creeper.death", "entity.endermen.ambient|entity.endermen.hurt|entity.endermen.death", "entity.zombie_pig.ambient|entity.zombie_pig.hurt|entity.zombie_pig.death", "entity.witch.ambient|entity.witch.hurt|entity.witch.death", "entity.blaze.ambient|entity.blaze.hurt|entity.blaze.death", "entity.llama.ambient|entity.llama.hurt|entity.llama.death", "|quark:entity.stoneling.cry|quark:entity.stoneling.die", "quark:entity.frog.idle|quark:entity.frog.hurt|quark:entity.frog.die"] - - [mobs.wraith.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 8 - "Max Cost" = 0.7 - #Allowed values: [1,) - "Min Group Size" = 1 - "Spawn Cost" = 0.15 - #Allowed values: [1,) - "Max Group Size" = 3 - - [mobs.wraith.spawn_config.biomes] - - [mobs.wraith.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = [] - "Is Blacklist" = true - - [mobs.wraith.spawn_config.biomes.biomes] - Biomes = ["minecraft:soul_sand_valley"] - "Is Blacklist" = false - - [mobs.stonelings] - "Cautious Stonelings" = true - "Enable Diamond Heart" = true - "Max Y Level" = 24 - "Tamable Stonelings" = true - - [mobs.stonelings.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 80 - #Allowed values: [1,) - "Min Group Size" = 1 - #Allowed values: [1,) - "Max Group Size" = 1 - - [mobs.stonelings.spawn_config.biomes] - - [mobs.stonelings.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["void", "nether", "end"] - "Is Blacklist" = true - - [mobs.stonelings.spawn_config.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [mobs.stonelings.dimensions] - Dimensions = ["minecraft:overworld"] - "Is Blacklist" = false - - [mobs.forgotten] - #1 in this many Skeletons that spawn under the threshold are replaced with Forgotten. - "Forgotten Spawn Rate" = 0.05 - "Max Height For Spawn" = 20 - - [mobs.frogs] - "Enable Brewing" = true - "Enable Big Funny" = false - - [mobs.frogs.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 40 - #Allowed values: [1,) - "Min Group Size" = 1 - #Allowed values: [1,) - "Max Group Size" = 3 - - [mobs.frogs.spawn_config.biomes] - - [mobs.frogs.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["swamp"] - "Is Blacklist" = false - - [mobs.frogs.spawn_config.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - -[client] - "Greener Grass" = true - "Variant Animal Textures" = true - "Back Button Keybind" = true - "Improved Tooltips" = true - "Improved Mount Hud" = true - "Usage Ticker" = true - "Auto Walk Keybind" = true - "Chest Searching" = true - - [client.usage_ticker] - #Switch the armor display to the off hand side and the hand display to the main hand side - Invert = false - "Shift Right" = 0 - "Enable Armor" = true - "Enable Off Hand" = true - "Shift Left" = 0 - "Enable Main Hand" = true - - [client.variant_animal_textures] - "Enable Shiny Llama" = true - "Every Bee Is L G B T" = false - #The chance for an animal to have a special "Shiny" skin, like a shiny pokemon. This is 1 in X. Set to 0 to disable. - "Shiny Animal Chance" = 2048 - "Enable Pig" = true - "Enable Chicken" = true - "Enable Shiny Rabbit" = true - "Enable L G B T Bees" = true - "Enable Cow" = true - - [client.improved_tooltips] - "Shulker Box Require Shift" = false - "Shulker Box Use Colors" = true - "Attribute Tooltips" = true - "Enchanting Tooltips" = true - #The value of each shank of food. Tweak this when using mods like Hardcore Hunger which change that value. - "Food Divisor" = 2 - #A list of additional stacks to display on each enchantment - #The format is as follows: - #enchant_id=item1,item2,item3... - #So to display a carrot on a stick on a mending book, for example, you use: - #minecraft:mending=minecraft:carrot_on_a_stick - "Enchanting Additional Stacks" = [] - "Food Compression Threshold" = 4 - "Shulker Tooltips" = true - "Map Require Shift" = false - "Food Tooltips" = true - "Show Saturation" = true - "Map Tooltips" = true - "Enchanting Stacks" = ["minecraft:diamond_sword", "minecraft:diamond_pickaxe", "minecraft:diamond_shovel", "minecraft:diamond_axe", "minecraft:diamond_hoe", "minecraft:diamond_helmet", "minecraft:diamond_chestplate", "minecraft:diamond_leggings", "minecraft:diamond_boots", "minecraft:shears", "minecraft:bow", "minecraft:fishing_rod", "minecraft:crossbow", "minecraft:trident", "minecraft:elytra", "quark:pickarang"] - - [client.greener_grass] - "Leaves List" = ["minecraft:spruce_leaves", "minecraft:birch_leaves", "minecraft:oak_leaves", "minecraft:jungle_leaves", "minecraft:acacia_leaves", "minecraft:dark_oak_leaves", "atmospheric:rosewood_leaves", "atmospheric:morado_leaves", "atmospheric:yucca_leaves", "autumnity:maple_leaves", "environmental:willow_leaves", "environmental:hanging_willow_leaves", "minecraft:vine"] - "Block List" = ["minecraft:large_fern", "minecraft:tall_grass", "minecraft:grass_block", "minecraft:fern", "minecraft:grass", "minecraft:potted_fern", "minecraft:sugar_cane", "environmental:giant_tall_grass"] - "Affect Leaves" = true - - [client.greener_grass.color_matrix] - R = [0.89, 0.0, 0.0] - B = [0.0, 0.0, 0.89] - G = [0.0, 1.11, 0.0] - -[oddities] - "Totem Of Holding" = true - Backpack = true - Crate = false - "Matrix Enchanting" = false - Magnets = true - Pipes = true - - [oddities.totem_of_holding] - #Set this to false to remove the behaviour where totems destroy themselves if the player dies again. - "Dark Souls Mode" = true - "Spawn Totem on PVP Kill" = false - #Set this to true to make it so that if a totem is destroyed, the items it holds are destroyed alongside it rather than dropped - "Destroy Lost Items" = false - "Enable Soul Compass" = true - #Set this to false to only allow the owner of a totem to collect its items rather than any player - "Allow Anyone To Collect" = true - - [oddities.magnets] - "Magnetic Blacklist" = ["minecraft:tripwire_hook"] - "Magnetic Whitelist" = ["minecraft:chipped_anvil", "minecraft:damaged_anvil"] - #Any items you place in this list will be derived so that any block made of it will become magnetizable - "Magnetic Derivation List" = ["minecraft:iron_ingot"] - - [oddities.matrix_enchanting] - #Set to false to disable the ability to influence enchantment outcomes with candles (requires the Tallow and Candles module enabled) - "Allow Influencing" = true - #A list of enchantment IDs you don't want the enchantment table to be able to create - "Disallowed Enchantments" = [] - #The maximum enchanting power the matrix enchanter can accept - "Max Bookshelves" = 15 - #How much to multiply the frequency of pieces where at least one of the same type has been generated - "Dupe Multiplier" = 1.4 - #How much the min level requirement for adding a new piece to a book should increase per each bookshelf being used - "Min Level Scale Factor Book" = 2.0 - #At which piece count the calculation for the min level should default to increasing one per piece rather than using the scale factor - "Min Level Cutoff" = 10 - #Should this be X, the price of a piece increase by 1 every X pieces you generate - "Piece Price Scale" = 9 - #Matrix Enchanting can be done with water instead of air around the enchanting table. Set this to false to disable this behaviour. - "Allow Underwater Enchanting" = true - #How many pieces you can generate without any bookshelves - "Base Max Piece Count" = 3 - #How much each candle influences an enchantment. This works as a multiplier to its weight - "Influence Power" = 0.125 - #Set to false to disable the tooltip for items with pending enchantments - "Show Tooltip" = true - #Set to false to disable the ability to create Enchanted Books - "Allow Books" = true - #If you set this to false, the vanilla Enchanting Table will no longer automatically convert to the Matrix Enchanting table. You'll have to add a recipe for the Matrix Enchanting Table to make use of this. - "Automatically Convert" = true - #The higher this is, the better enchantments you'll get on books - "Book Enchantability" = 12 - #An array of influences each candle should apply. This list must be 16 elements long, and is in order of wool colors. - "Influences List" = ["minecraft:unbreaking", "minecraft:fire_protection", "minecraft:knockback,minecraft:punch", "minecraft:feather_falling", "minecraft:looting,minecraft:fortune,minecraft:luck_of_the_sea", "minecraft:blast_protection", "minecraft:silk_touch,minecraft:channeling", "minecraft:bane_of_arthropods", "minecraft:protection", "minecraft:respiration,minecraft:loyalty,minecraft:infinity", "minecraft:sweeping,minecraft:multishot", "minecraft:efficiency,minecraft:sharpness,minecraft:lure,minecraft:power,minecraft:impaling,minecraft:quick_charge", "minecraft:aqua_affinity,minecraft:depth_strider,minecraft:riptide", "minecraft:thorns,minecraft:piercing", "minecraft:fire_aspect,minecraft:flame", "minecraft:smite,minecraft:projectile_protection"] - #How many pieces a single Lapis can generate - "Charge Per Lapis" = 4 - #How many pieces you can generate without any bookshelves (for Books) - "Base Max Piece Count Book" = 1 - #How much to multiply the frequency of pieces where incompatible pieces have been generated - "Incompatible Multiplier" = 0.0 - #How much the min level requirement for adding a new piece should increase for each piece added (up until the value of Min Level Cutoff) - "Min Level Scale Factor" = 1.5 - #Set this to true to allow treasure enchantments to be rolled as pieces - "Allow Treasures" = false - #By default, enchantment rarities are fuzzed a bit to feel better with the new system. Set this to false to override this behaviour. - "Normalize Rarity" = true - #The max amount of candles that can influence a single enchantment - "Influence Max" = 4 - - [oddities.backpack] - "Enable Ravager Hide" = true - "Base Ravager Hide Drop" = 1 - "Extra Chance Per Looting" = 0.5 - #Set this to true to allow the backpacks to be unequipped even with items in them - "Super Op Mode" = false - - [oddities.crate] - "Max Items" = 640 - - [oddities.pipes] - #Set to 0 if you don't want pipes to have a max amount of items - "Max Pipe Items" = 16 - #When items eject or are absorbed by pipes, should they make sounds? - "Do Pipes Whoosh" = true - #How long it takes for an item to cross a pipe. Bigger = slower. - "Pipe Speed" = 5 - -[experimental] - Shiba = false - "Adjustable Chat" = false - "Narrator Readout" = false - "Overlay Shader" = false - "Custom Underground Biome" = false - "Game Nerfs" = false - - [experimental.adjustable_chat] - "Horizontal Shift" = 0 - "Vertical Shift" = 0 - - [experimental.custom_underground_biome] - #The format for these definitions is: - #dimensions;isDimensionBlacklist;biomeTypews;isBiomeBlacklist;rarity;minY..maxY;horizontalSize,verticalSize;horizontalVariation,verticalVariation;floorBlocks@weight;ceilingBlocks@weight;wallBlocks@weight;mimicInside - #That's a lot to take in, so here's an example. This would be for the default config of the Slime underground biome. (Spaces are allowed.) - #minecraft:overworld; false; SWAMP; false; 120; 10..40; 26,14; 14,6; minecraft:water@915, minecraft:slime_block@85; minecraft:green_terracotta@2, minecraft:lime_terracotta@3, minecraft:light_blue_terracotta@1; CEILING; false - "Biome Definitions" = [] - - [experimental.game_nerfs] - #Makes Mending act like the Unmending mod - #https://www.curseforge.com/minecraft/mc-mods/unmending - "Nerf Mending" = true - #Makes Iron Golems not drop Iron Ingots - "Disable Iron Farms" = true - #Makes Sheep not drop Wool when killed - "Disable Wool Drops" = true - #Makes Boats not glide on ice - "Disable Ice Roads" = true - #Resets all villager discounts when zombified to prevent reducing prices to ridiculous levels - "Nerf Villager Discount" = true - - [experimental.shiba] - - [experimental.shiba.spawn_config] - #Allowed values: (0,) - "Spawn Weight" = 40 - #Allowed values: [1,) - "Min Group Size" = 1 - #Allowed values: [1,) - "Max Group Size" = 3 - - [experimental.shiba.spawn_config.biomes] - - [experimental.shiba.spawn_config.biomes.types] - #Allowed values: [[hot, cold, sparse, dense, wet, dry, savanna, coniferous, - # jungle, spooky, dead, lush, mushroom, magical, rare, - # plateau, modified, ocean, river, water, mesa, forest, - # plains, mountain, hills, swamp, sandy, snowy, wasteland, - # beach, void, overworld, nether, end] - "Biome Types" = ["mountain"] - "Is Blacklist" = false - - [experimental.shiba.spawn_config.biomes.biomes] - Biomes = [] - "Is Blacklist" = true - - [experimental.overlay_shader] - #Sets the name of the shader to load on a regular basis. This can load any shader the Camera module can (and requires the Camera module enabled to apply said logic). - #Some useful shaders include 'desaturate', 'oversaturate', 'bumpy' - #Colorblind simulation shaders are available in the form of 'deuteranopia', 'protanopia', 'tritanopia', and 'achromatopsia' - Shader = "none" - diff --git a/configuration/services/configs/minecraft/voor-kia/config/repairchests-common.toml b/configuration/services/configs/minecraft/voor-kia/config/repairchests-common.toml deleted file mode 100644 index 84d35f4..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/repairchests-common.toml +++ /dev/null @@ -1,9 +0,0 @@ - -["Repair Times"] - #How many seconds to repair 1 point of damage - ultimateRepairTime = 2 - #How many seconds to repair 1 point of damage - advancedRepairTime = 5 - #How many seconds to repair 1 point of damage - basicRepairTime = 10 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/rsgauges-common.toml b/configuration/services/configs/minecraft/voor-kia/config/rsgauges-common.toml deleted file mode 100644 index 1cd76d1..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/rsgauges-common.toml +++ /dev/null @@ -1,40 +0,0 @@ - -#Settings affecting the logical server side, but are also configurable in single player. -[server] - - #Opt-out settings - [server.optout] - #Disables switch remote linking. - without_switch_linking = false - #Opt-out any block by its registry name ('*' wildcard matching, comma separated list, whitespaces ignored. You must match the whole name, means maybe add '*' also at the begin and end. Example: '*wood*,*steel*' excludes everything that has 'wood' or 'steel' in the registry name. The matching result is also traced in the log file. - pattern_excludes = "" - #Prevent blocks from being opt'ed by registry name ('*' wildcard matching, comma separated list, whitespaces ignored. Evaluated before all other opt-out checks. You must match the whole name, means maybe add '*' also at the begin and end. Example: '*wood*,*steel*' includes everything that has 'wood' or 'steel' in the registry name.The matching result is also traced in the log file. - pattern_includes = "" - - #Miscellaneous settings - [server.miscellaneous] - #Enables experimental features. Use at own risk. - with_experimental = false - #Comma separated list of items names that can be used alter configurable blocks of this mod. This applies when the display side of the block is right click (activated) with the item in the main hand. - accepted_wrenches = "minecraft:redstone_torch,immersiveengineering:screwdriver,immersiveengineering:hammer" - #Defines how far you or a link source switch can be away from the target to activate it. The value 0 means 'no limitation', as long as the target chunk is loaded. - #Range: 0 ~ 64 - max_switch_linking_distance = 48 - #Enable detailed logging of the config values and resulting calculations in each mod feature config. - with_config_logging = false - - #Settings to tweak the performance, or use cases normally no change should be required here. - [server.tweaks] - #Sample interval of the gauges in ticks. Lower values decrease the display latency for indirect weak power measurements. Minor performance impact for values >= 5. - #Range: 2 ~ 100 - gauge_update_interval = 8 - #Sample interval of the linear switches in ticks (like laser pointer based sensors). Lower values make the switches reacting faster, but also have an impact on the server performance due to ray tracing. Has much less impact - #as the volumetric autoswitch interval. - #Range: 1 ~ 50 - autoswitch_linear_update_interval = 4 - #Sample interval of volume sensing automatic switches in ticks (e.g infrared motion detector). Lower values make the switches reacting faster, but also have an impact on the server performance due to ray tracing. - #Range: 5 ~ 50 - autoswitch_volumetric_update_interval = 10 - #Gauges shall not frequently lookup weak power provided to the block they are attached to. - without_gauge_weak_power_measurement = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/snowrealmagic-common.toml b/configuration/services/configs/minecraft/voor-kia/config/snowrealmagic-common.toml deleted file mode 100644 index 06d5d7c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/snowrealmagic-common.toml +++ /dev/null @@ -1,25 +0,0 @@ -placeSnowInBlock = true -snowGravity = true -snowAlwaysReplaceable = true -#Unavailable if TerraForged mod installed -snowAccumulationDuringSnowstorm = true -#Unavailable if TerraForged mod installed -snowAccumulationDuringSnowfall = false -#Unavailable if TerraForged mod installed -thinnerBoundingBox = true -snowMakingIce = true -snowOnIce = false -snowNeverMelt = false -snowMeltsInWarmBiomes = false -#Should snow melt if layers are more than 1 -snowNaturalMelt = true -snowReduceFallDamage = true -replaceWorldFeature = true -sustainGrassIfLayerMoreThanOne = true -#If you want to uninstall this mod, you probably want to make snow-covered blocks back to normal via random tick. -retainOriginalBlocks = false -#9 = Unlimited -#Range: 1 ~ 9 -snowAccumulationMaxLayers = 8 -advancedBlockInteraction = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/snowundertrees-common.toml b/configuration/services/configs/minecraft/voor-kia/config/snowundertrees-common.toml deleted file mode 100644 index 8939bd3..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/snowundertrees-common.toml +++ /dev/null @@ -1,8 +0,0 @@ -#Set this to false to disable snow under trees when first generating chunks. -enable_biome_feature = true -#Set this to false to disable snow under trees when it's snowing. -enable_when_snowing = true -#Add biome IDs here to exempt biomes from being affected by the mod (surrounded by ""). You can find the biome ID of the biome you're currently in on the F3 screen. -#For example, the biome ID of the plains biome looks like this: minecraft:plains -filtered_biomes = [] - diff --git a/configuration/services/configs/minecraft/voor-kia/config/storagedrawers-common.toml b/configuration/services/configs/minecraft/voor-kia/config/storagedrawers-common.toml deleted file mode 100644 index 06afa69..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/storagedrawers-common.toml +++ /dev/null @@ -1,30 +0,0 @@ - -[General] - #List of rules in format "domain:item1, domain:item2, n". - #Causes a compacting drawer convert n of item1 into 1 of item2. - compactingRules = ["minecraft:clay, minecraft:clay_ball, 4"] - enableUI = true - debugTrace = false - enableItemConversion = true - enableSidedInput = true - #The number of item stacks held in a basic unit of storage. - #1x1 drawers hold 8 units, 1x2 drawers hold 4 units, 2x2 drawers hold 2 units. - #Half-depth drawers hold half those amounts. - baseStackStorage = 4 - enableExtraCompactingRules = true - #Range: 1 ~ 50 - controllerRange = 12 - enableSidedOutput = true - -[StorageUpgrades] - level2Mult = 4 - #Storage upgrades multiply storage capacity by the given amount. - #When multiple storage upgrades are used together, their multipliers are added before being applied. - level1Mult = 2 - level3Mult = 8 - level5Mult = 32 - level4Mult = 16 - -[Integration] - wailaStackRemainder = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/supplementaries-common.toml b/configuration/services/configs/minecraft/voor-kia/config/supplementaries-common.toml deleted file mode 100644 index 4de24d6..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/supplementaries-common.toml +++ /dev/null @@ -1,274 +0,0 @@ - -#Server side blocks configs -[blocks] - - [blocks.globe] - #how many globe trades to give to the wandering trader. This will effectively increase the chance of him having a globe trader. Increase this if you have other mods that add stuff to that trader - #Range: 0 ~ 50 - chance = 2 - #chanche of finding a globe in a shipwreck treasure chest. - #Range: 0.0 ~ 1.0 - shipwreck_treasure_chance = 0.25 - - [blocks.speaker_block] - #maximum range - #Range: 0 ~ 256 - range = 64 - - [blocks.bellows] - #bellows pushes air following this equation: - #air=(sin(2PI*ticks/period)<0), with period = base_period-(redstone_power-1)*power_scaling - #represents base period at 1 power - #Range: 1 ~ 512 - base_period = 78 - #entities with velocity greated than this won't be pushed - #Range: 0.0 ~ 16.0 - power_scaling = 2.0 - #velocity increase uses this equation: - #vel = base_vel*((range-entity_distance)/range) with base_vel = base_velocity_scaling/period - #note that the block will push further the faster it's pulsing - #Range: 0.0 ~ 64.0 - base_velocity_scaling = 5.0 - #sets velocity changed flag when pushing entities + - #causes pushing animation to be smooth client side but also restricts player movement when being pushed - velocity_changed_flag = true - #note that it will still only keep alive the two fire blocks closer to it - #Range: 0 ~ 16 - range = 5 - - [blocks.spring_launcher] - #spring launcher launch speed - #Range: 0.0 ~ 16.0 - velocity = 1.5 - #fall distance needed to trigger the automatic spring launch - #Range: 0 ~ 512 - fall_height_required = 5 - - [blocks.turn_table] - #can rotate entities standing on it? - rotate_entities = true - #blocks that can't be rotated. Some special ones like chests, beds and pistons are already hardcoded - blacklist = ["minecraft:end_portal_frame"] - - [blocks.jar] - #jar liquid capacity: leave at 12 for pixel accuracy - #Range: 0 ~ 1024 - capacity = 12 - #allow right click to instantly eat or drink food or potions inside a jar. - #Disable if you think this ability is op. Cookies are excluded - drink_from_jar = true - - [blocks.cage] - #allow all entities to be captured by cages and jars. Not meant for survival - cage_allow_all_mobs = false - #allow all baby mobs to be captured by cages - cage_allow_all_babies = false - - [blocks.notice_board] - #allow notice boards to accept and display any item, not just maps and books - allow_any_item = false - - [blocks.sack] - #Penalize the player with slowness effect when carrying too many sacks - sack_penality = true - #maximum number of sacks after which the slowness effect will be applied. each multiple of this number will further slow the player down - #Range: 0 ~ 50 - sack_increment = 2 - #How many slots should a sack have - #Range: 1 ~ 27 - slots = 9 - - [blocks.safe] - #Makes safes only breakable by their owner or by a player in creative - prevent_breaking = false - #Make safes simpler so they do not require keys: - #they will be bound to the first person that opens one and only that person will be able to interact with them - simple_safes = false - - [blocks.blackboard] - #Enable to draw directly on a blackboard using any dye. Gui still only works in black and white - colored_blackboard = false - - [blocks.candle_holder] - #Candle holder light level - #Range: 1 ~ 15 - light_level = 12 - - [blocks.timber_frame] - #Replace a timber frame with wattle and daub block when daub is placed in it - replace_daub = true - - [blocks.hourglass] - #Time in ticks for sugar - #Range: 0 ~ 10000 - sugar_time = 40 - #Time in ticks for sand blocks - #Range: 0 ~ 10000 - sand_time = 70 - #Time in ticks for concrete blocks - #Range: 0 ~ 10000 - concrete_time = 105 - #Time in ticks for generic dust - #Range: 0 ~ 10000 - dust_time = 150 - #Time in ticks for glowstone dust - #Range: 0 ~ 10000 - glowstone_time = 190 - #Time in ticks for blaze powder - #Range: 0 ~ 10000 - blaze_powder_time = 277 - #Time in ticks for redstone dust - #Range: 0 ~ 10000 - redstone_time = 400 - #Time in ticks for slime balls - #Range: 0 ~ 10000 - slime_time = 1750 - #Time in ticks for honey - #Range: 0 ~ 10000 - honey_time = 2000 - - [blocks.item_shelf] - #Makes item shelves climbable - climbable_shelves = false - - [blocks.iron_gate] - #Allows two iron gates to be opened simultaneously when on top of the other - double_opening = true - -#Configure spawning conditions -[spawns] - - [spawns.firefly] - #Spawnable biomes - biomes = ["minecraft:swamp", "minecraft:swamp_hills", "minecraft:plains", "minecraft:sunflower_plains", "minecraft:dark_forest", "minecraft:dark_forest_hills", "byg:bayou", "byg:cypress_swamplands", "byg:glowshroom_bayou", "byg:mangrove_marshes", "byg:vibrant_swamplands", "byg:fresh_water_lake", "byg:grassland_plateau", "byg:wooded_grassland_plateau", "byg:flowering_grove", "byg:guiana_shield", "byg:guiana_clearing", "byg:meadow", "byg:orchard", "byg:seasonal_birch_forest", "byg:seasonal_deciduous_forest", "byg:seasonal_forest", "biomesoplenty:flower_meadow", "biomesoplenty:fir_clearing", "biomesoplenty:grove_lakes", "biomesoplenty:grove", "biomesoplenty:highland_moor", "biomesoplenty:wetland_marsh", "biomesoplenty:deep_bayou", "biomesoplenty:wetland"] - #Whitelisted mods. All biomes from said mods will be able to spawn fireflies. Use the one above for more control - mod_whitelist = [] - #Spawn weight - #Set to 0 to disable spawning entirely - #Range: 0 ~ 100 - weight = 3 - #Minimum group size - #Range: 0 ~ 64 - min = 5 - #Maximum group size - #Range: 0 ~ 64 - max = 9 - - [spawns.structures] - - [spawns.structures.way_sign] - #Average distance apart in chunks between spawn attempts - #Range: 0 ~ 1001 - average_distance = 19 - #Minimum distance apart in chunks between spawn attempts. 1001 to disable them entirely - #Range: 0 ~ 1001 - minimum_distance = 10 - #With this option road signs will display the distance to the structure that they are pointing to - show_distance_text = true - #list of structure that a sign can point to. Note that they will only spawn in dimensions where vanilla villages can - villages = ["minecraft:village", "repurposed_structures:village_badlands", "repurposed_structures:village_dark_oak", "repurposed_structures:village_birch", "repurposed_structures:village_giant_taiga", "repurposed_structures:village_jungle", "repurposed_structures:village_mountains", "repurposed_structures:village_oak", "repurposed_structures:village_swamp", "pokecube:village", "pokecube_legends:village", "pokecube_legends:village/ocean", "valhelsia_structures:castle", "valhelsia_structures:castle_ruin", "valhelsia_structures:small_castle", "valhelsia_structures:tower_ruin", "stoneholm:underground_village"] - -#entities parameters -[entities] - - [entities.firefly] - #firefly animation period - #note that actual period will be this + a random number between 0 and 10 - #this needs to be here to allow correct despawning of the entity when it's not glowing - #check client configs come more animation settings - #Range: 1 ~ 200 - period = 65 - #firefly flying speed - #Range: 0.0 ~ 10.0 - speed = 0.3 - #despawn during the day - despawn = true - -#Vanilla tweaks -[tweaks] - - [tweaks.cake_tweaks] - #allows you to place a cake ontop of another - double_cake = true - #replaces normal cake placement with a directional one - directional_cake = true - - [tweaks.hanging_flower_pots] - #allows you to place hanging flower pots. Works with any modded pot too - enabled = true - - [tweaks.throwable_bricks] - #throw bricks at your foes! Might break glass blocks - enabled = true - - [tweaks.wall_lantern] - #allow wall lanterns placement - enabled = true - #mod ids of mods that have lantern block that extend the base lantern class but don't look like one - mod_blacklist = ["extlights", "betterendforge", "tconstruct"] - - [tweaks.bells_tweaks] - #ring a bell by clicking on a chain that's connected to it - chain_ringing = true - #max chain length that allows a bell to ring - #Range: 0 ~ 1024 - chain_length = 16 - - [tweaks.raked_gravel] - #allow gravel to be raked with a hoe - enabled = true - - [tweaks.bottle_xp] - #Allow bottling up xp by using a bottle on an enchanting table - enabled = true - #bottling health cost - #Range: 0 ~ 20 - cost = 2 - - [tweaks.map_tweaks] - #In this section you can add custom structure maps to cartographers - #The format required is as follows: - #[[,,,,,,],[,...,],...] - #With the following parameters: - # - structure id to be located (ie: minecraft:igloo) - # - villager trading level at which the map will be sold. Must be between 1 and 5 - # - minimum emerald price - # - maximum emerald price - # - map item name - # - hex color of the map item overlay texture - # - id of the map marker to be used (ie: supplementaries:igloo). - #See texture folder for all the names. Leave empty for default ones - #Note that ony the first parameter is required, each of the others others can me removed and will be defaulted to reasonable values - #example: ['minecraft:swamp_hut','2','5','7','witch hut map','0x00ff33'] - custom_adventurer_maps = [[""]] - #Cartographers will sell 'adventurer maps' that will lead to a random vanilla structure (choosen from a thought out preset list). - #Best kept disabled if you are adding custom adventurer maps with its config - random_adventurer_maps = true - #enables beacons, lodestones, respawn anchors, beds, conduits, portals to be displayed on maps by clicking one of them with a map - block_map_markers = true - - [tweaks.ceiling_banners] - #Allow banners to be placed on ceilings - enabled = true - - [tweaks.zombie_horse] - #Feed a stack of rotten flesh to a skeleton horse to buff him up to a zombie horse - zombie_horse_conversion = true - #Amount of rotten flesh needed - #Range: 1 ~ 1000 - rotten_flesh = 64 - -[items] - - [items.rope_arrow] - #If you really don't like my ropes you can specify here the block id ofa rope from another mod which will get deployed by rope arrows instead of mine - rope_arrow_override = "supplementaries:rope" - - [items.flute] - #radius in which an unbound flute will search pets - #Range: 0 ~ 500 - unbound_radius = 64 - #max distance at which a bound flute will allow a pet to teleport - #Range: 0 ~ 500 - bound_distance = 64 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/supplementaries-registry.toml b/configuration/services/configs/minecraft/voor-kia/config/supplementaries-registry.toml deleted file mode 100644 index f38da67..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/supplementaries-registry.toml +++ /dev/null @@ -1,73 +0,0 @@ -#Here are configs that need reloading to take effect -[initialization] - - [initialization.general] - #Enable Creative Tab - creative_tab = false - #Set to false to disable custom dispenser behaviors (i.e: filling jars) if for some reason they are causing trouble - dispensers = true - #Creates a creative tab full of filled jars - jar_tab = false - #Enables custom Configured config screen - custom_configured_screen = true - - [initialization.blocks] - planter = true - clock_block = false - pedestal = true - wind_vane = true - redstone_illuminator = true - notice_board = true - crank = false - jar = true - faucet = false - turn_table = false - piston_launcher = false - speaker_block = true - sign_post = true - hanging_sign = true - bellows = false - sconce = true - sconce_green = false - sconce_ender = true - sconce_soul = true - candelabra = true - cage = true - item_shelf = true - sconce_lever = true - cog_block = false - candle_holder = true - globe = true - hourglass = true - sack = true - blackboard = true - safe = true - copper_lantern = true - flute = false - gold_trapdoor = true - gold_door = true - bamboo_spikes = true - stone_lamp = true - checker_block = true - netherite_door = true - netherite_trapdoor = true - pancake = true - lock_block = true - flax = false - rope = false - rope_arrow = false - pulley_block = false - fodder = true - bomb = true - crimson_lantern = true - magma_cream_block = true - goblet = true - raked_gravel = true - statue = true - iron_gate = true - #WIP - laser_block = false - flag = false - - [initialization.entities] - firefly = true diff --git a/configuration/services/configs/minecraft/voor-kia/config/sweetconcrete-common.toml b/configuration/services/configs/minecraft/voor-kia/config/sweetconcrete-common.toml deleted file mode 100644 index 135b45c..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/sweetconcrete-common.toml +++ /dev/null @@ -1,27 +0,0 @@ - -[general] - #Enable concrete pressure plates - enablePressurePlates = true - #Enable concrete levers - enableLevers = true - #Enable concrete buttons - enableButtons = true - #Enable concrete signs - enableSigns = true - #Enable concrete powder layers - enablePowderLayers = true - #Enable concrete stairs - enableStairs = true - #Enable concrte vertical slabs - enableVerticalSlabs = true - #Enable concrete walls - enableWalls = true - #Enable concrete cake - enableCake = true - #Enable concrete fences - enableFences = true - #Enable concrete slabs - enableSlabs = true - #Enable concrete ladders - enableLadders = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/the_bumblezone-mod_compatibility.toml b/configuration/services/configs/minecraft/voor-kia/config/the_bumblezone-mod_compatibility.toml deleted file mode 100644 index 5f599b6..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/the_bumblezone-mod_compatibility.toml +++ /dev/null @@ -1,262 +0,0 @@ - -["Mod Compatibility Options"] - - ["Mod Compatibility Options"."Productive Bees Options"] - # - #----------------------------------------------------- - # - # Allow Honey Treat to be able to feed bees and Honeycomb Brood Blocks. - # - allowHoneyTreatCompat = true - # - #----------------------------------------------------- - # - # How much of Bee Dungeons is made of ore-based honeycombs. - # 0 is no or honeycombs, 1 is max ore honeycombs, and default is 0.3D - # - #Range: 0.0 ~ 1.0 - PBOreHoneycombSpawnRateBeeDungeon = 0.3 - # - #----------------------------------------------------- - # - # Spawn Productive Bees in The Bumblezone and from Honey Brood Blocks - # alongside regular bees at a 1/15th chance when spawning regular bees. - # - spawnProductiveBeesBeesMob = true - # - #----------------------------------------------------- - # - # Blacklist what Productive Bees bees should not spawn in Bumblezone. - # Separate each entry with a comma. Example: "productivebees:iron,productivebees:coal" - # - # Note: this is only for the entities. To blacklist blocks as well, - # use a datapack to add blacklisted blocks to this tag: - # data/the_bumblezone/tags/blocks/blacklisted_productive_bees_combs.json - # - PBBlacklistedBees = "" - # - #----------------------------------------------------- - # - # Spawn Productive Bees's various honeycomb variants in The Bumblezone - # at all kinds of heights and height bands. Start exploring to find - # where they spawn! - # NOTE: Will require a restart of the world to take effect. - # - spawnProductiveBeesHoneycombVariants = true - # - #----------------------------------------------------- - # - # How rare good ore-based Honeycombs (diamonds, ender, emerald, etc) are - # in Spider Infested Bee Dungeons. - # Higher numbers means more rare. Default rate is 2. - # - #Range: 1 ~ 1001 - PBGreatHoneycombRaritySpiderBeeDungeon = 2 - # - #----------------------------------------------------- - # - # How much of Spider Infested Bee Dungeons is made of ore-based honeycombs. - # 0 is no or honeycombs, 1 is max ore honeycombs, and default is 0.1D - # - #Range: 0.0 ~ 1.0 - PBOreHoneycombSpawnRateSpiderBeeDungeon = 0.1 - # - #----------------------------------------------------- - # - # How rare good ore-based Honeycombs (diamonds, ender, emerald, etc) are - # in Bee Dungeons. - # Higher numbers means more rare. Default rate is 3. - # - #Range: 1 ~ 1001 - PBGreatHoneycombRarityBeeDungeon = 2 - - ["Mod Compatibility Options"."Buzzier Bees Options"] - # - #----------------------------------------------------- - # - # Allow Bee Dungeons to have normal unscented candles./r/n - allowRegularCandlesBeeDungeon = true - # - #----------------------------------------------------- - # - # Allow Bee Dungeons to have scented candles that gives status effects./r/n - allowScentedCandlesBeeDungeon = true - # - #----------------------------------------------------- - # - # Allow Bottles Bees item to turn Empty Honeycomb Brood blocks - # back into Honeycomb Brood Blocks with a larva in it. (affects Dispenser too) - # - allowBottledBeesCompat = true - # - #----------------------------------------------------- - # - # Place Buzzier Bees's Crystallized Honey Blocks on the /r/n surface of land around sea level and above. - # - crystallizedHoneyWorldgen = true - # - #----------------------------------------------------- - # - # How rare are powerful candles in Spider Infested Bee Dungeons. - # Higher numbers means more rare. - # Default rate is 2. - # - #Range: 0 ~ 10 - powerfulCandlesRaritySpiderBeeDungeon = 0 - # - #----------------------------------------------------- - # - # Allow Spider Infested Bee Dungeons to have scented candles that gives status effects./r/n - allowScentedCandlesSpiderBeeDungeon = true - # - #----------------------------------------------------- - # - # Add new trades to Buzzier Bees's Beekeeper Villager. - # - allowBuzzierBeesTradeCompat = true - # - #----------------------------------------------------- - # - # How rare are powerful candles in Bee Dungeons. - # Higher numbers means more rare. - # Default rate is 2. - # - #Range: 0 ~ 10 - powerfulCandlesRarityBeeDungeon = 2 - # - #----------------------------------------------------- - # - # Allow Honey Wand to take honey from Filled Porous Honeycomb Block - # and put honey into Porous Honeycomb Block without angering bees. - # - allowHoneyWandCompat = true - - ["Mod Compatibility Options"."Resourceful Bees Options"] - # - #----------------------------------------------------- - # - # How rare good ore-based Honeycombs (diamonds, ender, emerald, etc) are - # in Spider Infested Bee Dungeons. - # Higher numbers means more rare. Default rate is 2. - # - #Range: 1 ~ 1001 - RBGreatHoneycombRaritySpiderBeeDungeon = 2 - # - #----------------------------------------------------- - # - # Spawn Resourceful Bees's Wax Block as part of The Bumblezone's worldgen. - # - RBBeesWaxWorldgen = true - # - #----------------------------------------------------- - # - # Blacklist what Resourceful Bees bees should not spawn in Bumblezone. - # Separate each entry with a comma. Example: "resourcefulbees:iron,resourcefulbees:coal" - # - # Note: Blacklisted bees will automatically blacklist their respective combs from worldgen too. - RBBlacklistedBees = "" - # - #----------------------------------------------------- - # - # Spawn Resourceful Bees's various honeycomb variants in The Bumblezone - # at all kinds of heights and height bands. Start exploring to find - # where they spawn! - # - # NOTE: Will require a restart of the world to take effect. - # - spawnResourcefulBeesHoneycombVariants = true - # - #----------------------------------------------------- - # - # Add new trades to Resourceful Bees's Beekeeper Villager. - # - allowResorucefulBeesTradeCompat = true - # - #----------------------------------------------------- - # - # How much of Bee Dungeons is made of ore-based honeycombs. - # 0 is no or honeycombs, 1 is max ore honeycombs, and default is 0.3D - # - #Range: 0.0 ~ 1.0 - RBOreHoneycombSpawnRateBeeDungeon = 0.3 - # - #----------------------------------------------------- - # - # How much of Spider Infested Bee Dungeons is made of ore-based honeycombs. - # 0 is no or honeycombs, 1 is max ore honeycombs, and default is 0.1D - # - #Range: 0.0 ~ 1.0 - RBOreHoneycombSpawnRateSpiderBeeDungeon = 0.1 - # - #----------------------------------------------------- - # - # Use Resourceful Bees's canSpawnInWorld config on their bee data - # to know what bees to spawn in Bumblezone. This will stack with - # RBBlacklistedBees config entry that Bumblezone uses. - # Bees blacklisted from either will not spawn and their combs will not spawn either. - # - # NOTE: Will require a restart of the world to take effect. - # - useSpawnInWorldConfigFromRB = false - # - #----------------------------------------------------- - # - # Spawn Resourceful Bees in The Bumblezone and from Honey Brood Blocks - # alongside regular bees at a 1/15th chance when spawning regular bees. - # - spawnResourcefulBeesBeesMob = true - # - #----------------------------------------------------- - # - # How rare good ore-based Honeycombs (diamonds, ender, emerald, etc) are - # in Bee Dungeons. - # Higher numbers means more rare. Default rate is 3. - # - #Range: 1 ~ 1001 - RBGreatHoneycombRarityBeeDungeon = 2 - - ["Mod Compatibility Options"."Potion of Bees Options"] - # - #----------------------------------------------------- - # - # Allow Splash Potion of Bees item to turn Empty Honeycomb Brood - # blocks back into Honeycomb Brood Blocks with a larva in it when - # the potion is thrown and splashed near the block. (affects Dispenser too) - # - allowSplashPotionOfBeesCompat = true - # - #----------------------------------------------------- - # - # Allow Potion of Bees item to turn Empty Honeycomb Brood blocks - # back into Honeycomb Brood Blocks with a larva in it. (affects Dispenser too) - # - allowPotionOfBeesCompat = true - - ["Mod Compatibility Options"."Pokecube Options"] - # - #----------------------------------------------------- - # - # Spawn Pokecube's bee-like pokemon in The Bumblezone and from Honey Brood Blocks. - # - spawnPokecubeBeePokemon = true - - ["Mod Compatibility Options"."Charm Options"] - # - #----------------------------------------------------- - # - # Spawn Charm Candles in Spider Infested Bee Dungeons. - # - allowCCandlesSpiderBeeDungeon = true - # - #----------------------------------------------------- - # - # Add new trades to Charm's Beekeeper Villager. - # - allowCharmTradeCompat = true - # - #----------------------------------------------------- - # - # Spawn Charm Candles in Bee Dungeons. - # - allowCCandlesBeeDungeon = true - diff --git a/configuration/services/configs/minecraft/voor-kia/config/towers_of_the_wild-common.toml b/configuration/services/configs/minecraft/voor-kia/config/towers_of_the_wild-common.toml deleted file mode 100644 index 68b08de..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/towers_of_the_wild-common.toml +++ /dev/null @@ -1,20 +0,0 @@ - -[towers] - #A list of biomes where the towers will not spawn. Default: Rivers, Beaches - biomeBlackList = ["minecraft:river", "minecraft:frozen_river", "minecraft:beach", "minecraft:stone_shore", "minecraft:snowy_beach", "biomesoplenty:gravel_beach", "biomesoplenty:white_beach"] - #Make towers spawn in the ocean. Default: true - spawnOceanTowers = true - #If the Waytones mod is installed and this is set to true, towers will spawn with a waystone at the top. If the Waystone mod is not installed, this will have no effect. Default: true - waystonesCompat = true - #A list of mod ids. In each and every biome added by those mods, the towers will not spawn. Default : The Midnight. - allModBiomesBlackList = ["midnight", "the_bumblezone"] - #How rarely the towers will spawn (low: common, high: rare). Default: 20 - #Range: 3 ~ 200 - towerRarity = 20 - #How rarely the derelict towers will spawn (low: common, high: rare). Default: 72 - #Range: 3 ~ 200 - derelictTowerRarity = 72 - #How rarely the ocean towers will spawn (low: common, high: rare). Default: 32 - #Range: 3 ~ 200 - oceanTowerRarity = 32 - diff --git a/configuration/services/configs/minecraft/voor-kia/config/travelersbackpack-common.toml b/configuration/services/configs/minecraft/voor-kia/config/travelersbackpack-common.toml deleted file mode 100644 index 44a5e95..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/travelersbackpack-common.toml +++ /dev/null @@ -1,13 +0,0 @@ - -#Common config settings -[common] - #Places backpack at place where player died - backpackDeathPlace = true - #Enables button in backpack gui, which allows to empty tank - enableEmptyTankButton = true - enableBackpackAbilities = true - #If true, backpack can only be worn by placing it in curios 'Back' slot - #WARNING - Remember to TAKE OFF BACKPACK BEFORE enabling or disabling this integration!! - if not you'll lose your backpack - curiosIntegration = false - enableSleepingBagSpawnPoint = false - diff --git a/configuration/services/configs/minecraft/voor-kia/config/wstweaks-common.toml b/configuration/services/configs/minecraft/voor-kia/config/wstweaks-common.toml deleted file mode 100644 index a60ab70..0000000 --- a/configuration/services/configs/minecraft/voor-kia/config/wstweaks-common.toml +++ /dev/null @@ -1,19 +0,0 @@ - -#Server configuration -[server] - #If skeletons outside of hell can be transformed into wither skeletons. - allbiomes = false - #If stone swords that would be dropped are deleted. - delswords = true - #The 1/n chance for a wither skeleton to drop a fragment. - #Range: 1 ~ 32767 - fragchance = 1 - #The 1/n chance for wither skeletons outside hell to be transformed. Requires allbiomes == true. - #Range: 1 ~ 32767 - allbiomechance = 1 - #How many fragments are required to make a skull. - #Range: 1 ~ 9 - fragvalue = 9 - #If transformed skeletons are given bows instead of stone swords. - givebows = true - diff --git a/configuration/services/configs/minecraft/voor-kia/defaultconfigs/solcarrot-server.toml b/configuration/services/configs/minecraft/voor-kia/defaultconfigs/solcarrot-server.toml deleted file mode 100644 index 86ba950..0000000 --- a/configuration/services/configs/minecraft/voor-kia/defaultconfigs/solcarrot-server.toml +++ /dev/null @@ -1,26 +0,0 @@ - -[milestones] - #Number of hearts you gain for reaching a new milestone. - #Range: 0 ~ 1000 - heartsPerMilestone = 1 - #A list of numbers of unique foods you need to eat to unlock each milestone, in ascending order. Naturally, adding more milestones lets you earn more hearts. - milestones = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80] - #Number of hearts you start out with. - #Range: 0 ~ 1000 - baseHearts = 7 - -[filtering] - #The minimum hunger value foods need to provide in order to count for milestones, in half drumsticks. - #Range: 0 ~ 1000 - minimumFoodValue = 4 - #Foods in this list won't affect the player's health nor show up in the food book. - blacklist = [] - #When this list contains anything, the blacklist is ignored and instead only foods from here count. - whitelist = [] - -[miscellaneous] - #If true, eating foods outside of survival mode (e.g. creative/adventure) is not tracked and thus does not contribute towards progression. - limitProgressionToSurvival = true - #Whether or not to reset the food list on death, effectively losing all bonus hearts. - resetOnDeath = false - diff --git a/configuration/services/configs/minecraft/voor-kia/server-icon.png b/configuration/services/configs/minecraft/voor-kia/server-icon.png deleted file mode 100644 index 934c5f41c6a1f7e746dac917e370e52202e738df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23263 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 UTsmj5fHv@Wy85}Sb4q9e09}xt?EnA( diff --git a/configuration/services/configs/minecraft/voor-kia/server.properties b/configuration/services/configs/minecraft/voor-kia/server.properties deleted file mode 100644 index 84a8cd5..0000000 --- a/configuration/services/configs/minecraft/voor-kia/server.properties +++ /dev/null @@ -1,52 +0,0 @@ -#Minecraft server properties -#Thu Apr 08 21:07:16 BST 2021 -allow-flight=true -allow-nether=true -broadcast-console-to-ops=true -broadcast-rcon-to-ops=true -difficulty=normal -enable-command-block=true -enable-jmx-monitoring=false -enable-query=false -enable-rcon=false -enable-status=true -enforce-whitelist=true -entity-broadcast-range-percentage=100 -force-gamemode=false -function-permission-level=2 -gamemode=survival -generate-structures=true -generator-settings= -hardcore=false -level-name=world -level-seed= -level-type=default -max-build-height=256 -max-players=5 -max-tick-time=-1 -max-world-size=29999984 -motd=Minecraft met Kia en die broers -network-compression-threshold=256 -online-mode=true -op-permission-level=4 -player-idle-timeout=0 -prevent-proxy-connections=false -pvp=false -query.port=25565 -rate-limit=0 -rcon.password= -rcon.port=25575 -resource-pack= -resource-pack-sha1= -server-ip= -server-port=25565 -snooper-enabled=true -spawn-animals=true -spawn-monsters=true -spawn-npcs=true -spawn-protection=1 -sync-chunk-writes=true -text-filtering-config= -use-native-transport=true -view-distance=10 -white-list=true diff --git a/configuration/services/minecraft.nix b/configuration/services/minecraft.nix deleted file mode 100644 index c19335c..0000000 --- a/configuration/services/minecraft.nix +++ /dev/null @@ -1,141 +0,0 @@ -{ - config, - pkgs, - lib, - ... -}: let - minecraft-server-args = [ - "-Xms2G" - "-Xmx2G" - "-Dsun.rmi.dgc.server.gcInterval=2157583646" - "-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" - ]; - ops = pkgs.writeText "ops.json" (builtins.toJSON [ - { - uuid = "140d177a-966f-41b8-a4c0-e305babd291b"; - name = "TLATER"; - level = 4; - bypassesPlayerLimit = true; - } - ]); - whitelist = pkgs.writeText "whitelist.json" (builtins.toJSON [ - { - uuid = "59cd1648-14a4-4bcf-8f5a-2e1bde678f2c"; - name = "romino25"; - } - { - uuid = "0ab6e3d1-544a-47e7-8538-2e6c248e49a4"; - name = "lasi25"; - } - { - uuid = "01c9e737-fc9d-4d55-b8c2-610ca80eb4be"; - name = "Nampeyo25"; - } - { - uuid = "140d177a-966f-41b8-a4c0-e305babd291b"; - name = "tlater"; - } - ]); - eula = pkgs.writeText "eula.txt" "eula=true"; -in { - users = { - extraUsers.minecraft = { - uid = config.ids.uids.minecraft; - group = config.users.extraGroups.minecraft.name; - isSystemUser = true; - description = "Minecraft server user"; - }; - extraGroups.minecraft = {gid = config.ids.gids.minecraft;}; - }; - - virtualisation.oci-containers.containers.minecraft-voor-kia = let - properties = ./configs/minecraft/voor-kia/server.properties; - icon = ./configs/minecraft/voor-kia/server-icon.png; - in { - image = "tlaternet/minecraft-voor-kia"; - - imageFile = pkgs.dockerTools.buildImage { - name = "tlaternet/minecraft-voor-kia"; - tag = "latest"; - contents = [ - (pkgs.local.forge-server.override { - jre_headless = pkgs.jdk11_headless; - mods = pkgs.local.voor-kia; - modConfig = ./configs/minecraft/voor-kia/config; - defaultconfigs = ./configs/minecraft/voor-kia/defaultconfigs; - }) - ]; - - config = let - uid = toString config.users.extraUsers.minecraft.uid; - gid = toString config.users.extraGroups.minecraft.gid; - in { - Cmd = ["forge-server"] ++ minecraft-server-args; - WorkingDir = "/var/lib/minecraft"; - Volumes = { - "/var/lib/minecraft" = {}; - # Required because some things will try to write to /tmp, - # which doesn't exist if it's not defined as a volume. - "/tmp" = {}; - }; - ExposedPorts = {"25565" = {};}; - User = "${uid}:${gid}"; - }; - }; - - extraOptions = ["--cpus=1.0"]; - autoStart = false; - ports = ["25565:25565"]; - volumes = [ - "minecraft:/var/lib/minecraft" - "${eula}:/var/lib/minecraft/eula.txt:ro" - "${icon}:/var/lib/minecraft/server-icon.png:ro" - "${ops}:/var/lib/minecraft/ops.json:ro" - "${properties}:/var/lib/minecraft/server.properties:ro" - "${whitelist}:/var/lib/minecraft/whitelist.json:ro" - ]; - }; - - systemd.timers.podman-minecraft-voor-kia-off = { - description = "Turns off the minecraft server every day at 4 am"; - wantedBy = ["podman-minecraft-voor-kia.service"]; - timerConfig = { - Unit = "podman-minecraft-voor-kia-starter@stop.service"; - OnCalendar = "04:00:00"; - }; - }; - - systemd.timers.podman-minecraft-voor-kia-on = { - description = "Turns on the minecraft server every day at 2 pm"; - wantedBy = ["podman-minecraft-voor-kia.service"]; - timerConfig = { - Unit = "podman-minecraft-voor-kia-starter@start.service"; - OnCalendar = "14:00:00"; - }; - }; - - systemd.services."podman-minecraft-voor-kia-starter@" = { - description = "Unit to stop/start the minecraft server"; - serviceConfig = { - ExecStart = "${pkgs.systemd}/bin/systemctl %i podman-minecraft-voor-kia.service"; - Type = "oneshot"; - }; - }; -} diff --git a/flake.nix b/flake.nix index 3f0ad1b..1ae56cc 100644 --- a/flake.nix +++ b/flake.nix @@ -44,7 +44,6 @@ tlaternet-templates.legacyPackages.${prev.system}.packages; local = import ./pkgs { pkgs = prev; - local-lib = self.lib.${prev.system}; }; }) ]; @@ -118,29 +117,6 @@ nixfmt git-lfs sops-init-gpg-key - - # For the minecraft mod update script - (python3.withPackages (pypkgs: - with pypkgs; [ - dateutil - requests - - ipython - - python3.withPackages - (ppkgs: - with pkgs; [ - python-lsp-server - python-lsp-black - pyls-isort - pyls-mypy - rope - pyflakes - mccabe - pycodestyle - pydocstyle - ]) - ])) ]; shellHook = let inherit (pkgs.lib.attrsets) mapAttrsToList; @@ -167,14 +143,6 @@ ''; }; - packages = import ./pkgs { - inherit pkgs; - local-lib = self.lib.${system}; - }; - - lib = import ./lib { - inherit pkgs inputs; - lib = nixpkgs.lib; - }; + packages = import ./pkgs {inherit pkgs;}; }); } diff --git a/lib/default.nix b/lib/default.nix deleted file mode 100644 index 2a5d54f..0000000 --- a/lib/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ - inputs, - lib, - pkgs, - ... -}: let - inherit (lib) makeExtensible foldr attrValues; - tlater-lib = makeExtensible (self: let - callLibs = file: import file {inherit self lib pkgs inputs;}; - in {minecraft = callLibs ./minecraft.nix;}); -in - tlater-lib.extend (self: super: foldr (a: b: a // b) {} (attrValues super)) diff --git a/lib/minecraft.nix b/lib/minecraft.nix deleted file mode 100644 index e3f8c4e..0000000 --- a/lib/minecraft.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ - lib, - pkgs, - ... -}: { - # Make a modpack given its mod inputs. - # - # Mods should be attrsets in this format: - # { - # project = ""; - # id = ""; - # filename = ""; - # sha256 = ""; - # } - # - # This may be nice to read from a json ;) - # - mkModpack = { - name, - version, - mods, - }: - pkgs.stdenv.mkDerivation { - inherit name version; - srcs = map pkgs.local.fetchFromCurseForge mods; - - sourceRoot = "src/"; - preUnpack = "mkdir -p src/"; - unpackCmd = "cp $curSrc src/"; - - installPhase = '' - mkdir -p $out/mods/ - cp * $out/mods - ''; - }; - - mkModpackZip = { - name, - version, - mods, - }: - pkgs.stdenv.mkDerivation { - inherit name version; - srcs = map pkgs.local.fetchFromCurseForge mods; - - sourceRoot = "src/"; - preUnpack = "mkdir -p src/"; - unpackCmd = "cp $curSrc src/"; - - buildInputs = [pkgs.zip]; - - buildPhase = '' - zip voor-kia-mods.zip *.jar - ''; - - installPhase = '' - mkdir -p $out/ - cp voor-kia-mods.zip $out/ - ''; - }; -} diff --git a/pkgs/build-support/fetchFromCurseForge.nix b/pkgs/build-support/fetchFromCurseForge.nix deleted file mode 100644 index 674803f..0000000 --- a/pkgs/build-support/fetchFromCurseForge.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - lib, - fetchurl, -}: -with builtins; - { - project, - id, - filename, - ... - } @ args: let - # I think this is supposed to be some weak automation - # protection. This split "id" is simply part of the download URL. - # - # Note that if it's zero-prefixed we need to remove the zeroes. It's - # really an odd one... - a = head (match "0*([[:digit:]]+)" (substring 0 4 (toString id))); - b = head (match "0*([[:digit:]]+)" (substring 4 7 (toString id))); - encoded-filename = replaceStrings [" "] ["%20"] filename; - - url = "https://media.forgecdn.net/files/${a}/${b}/${encoded-filename}"; - otherArgs = removeAttrs args ["project" "project_id" "id" "filename"]; - in - fetchurl (otherArgs - // { - inherit url; - # Rename files to avoid names incompatible with the nix store - name = "${project}.jar"; - # Avoid accidental URL globbing - curlOpts = "--globoff"; - }) diff --git a/pkgs/default.nix b/pkgs/default.nix index ef226db..c92874b 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,21 +1,5 @@ -{ - pkgs, - local-lib, - ... -}: let - inherit (pkgs.lib) callPackageWith; - callPackage = callPackageWith (pkgs // {inherit local-lib;}); +{pkgs, ...}: let + inherit (pkgs.lib) callPackage; in { - # Forge - forge-server = callPackage ./minecraft/forge-server.nix {}; - - # Build support - fetchFromCurseForge = callPackage ./build-support/fetchFromCurseForge.nix {}; - - # Minecraft modpacks - voor-kia = callPackage ./minecraft/voor-kia.nix {}; - voor-kia-client = callPackage ./minecraft/voor-kia-client.nix {}; - - # Starbound starbound = callPackage ./starbound {}; } diff --git a/pkgs/minecraft/forge-server.nix b/pkgs/minecraft/forge-server.nix deleted file mode 100644 index 5d7a8c2..0000000 --- a/pkgs/minecraft/forge-server.nix +++ /dev/null @@ -1,120 +0,0 @@ -{ - lib, - stdenv, - fetchurl, - busybox, - coreutils, - jre_headless, - runtimeShell, - mods ? null, - modConfig ? null, - defaultconfigs ? null, -}: let - name = "forge-server"; - version = "1.16.5-36.2.2"; - mirror = "https://files.minecraftforge.net/maven/net/minecraftforge/forge"; - src = fetchurl { - url = "${mirror}/${version}/forge-${version}-installer.jar"; - curlOpts = "--globoff"; - # Forge doesn't seem to like newer shas - sha1 = "sha1-oHNpyrgHluRrAXWZJg9j+OInAwA="; - }; - - unpackCmd = "mkdir -p src; cp $curSrc src/forge-${version}-installer.jar"; - - nativeBuildInputs = [jre_headless]; - - # Somewhat evil pre-install step to run through the network - # dependency resolution forge needs. This is also common for gradle - # projects, so I think this is ok-ish here, though ideally I'd - # identify all the dependencies and package them as well. - deps = stdenv.mkDerivation { - name = "${name}-deps"; - inherit src unpackCmd nativeBuildInputs; - - buildPhase = '' - java -jar forge-${version}-installer.jar --installServer installation - ''; - installPhase = '' - mkdir -p $out - - # The installer will patch the Minecraft server jar in some - # fashion, and include it in "libraries". This'd be fine, if the - # patch was bit-for-bit reproducible. Sadly it is not, so we - # defer this to the *real* package build. - rm -r installation/libraries/net/minecraft/ - - cp -r installation/* $out - ''; - - outputHashAlgo = "sha256"; - outputHashMode = "recursive"; - outputHash = "VuUGc5JnzcRhDt9aaGrU+yUrJILVdU2vzv1PxLwdAig="; - }; -in - stdenv.mkDerivation rec { - inherit name version src unpackCmd nativeBuildInputs; - - buildPhase = '' - mkdir -p installation - - # Take the input deps and patch the Minecraft server jar into our - # libraries to create the package. - cp -rv ${deps}/* installation/ - chmod -R +w installation/ - java -jar forge-${version}-installer.jar --offline --installServer installation/ - ''; - - installPhase = '' - mkdir -p $out/{bin,lib/forge} - - cp -r installation/{forge-${version}.jar,libraries} $out/lib/forge/ - - cat > $out/bin/forge-server << EOF - #!${runtimeShell} - set -eu - - # Delete any previous mods directory so that it can be updated - ${busybox}/bin/rm -fr mods - - ${lib.optionalString (mods != null) '' - # Copy the specified mods into the directory. Note that, sadly, - # forge doesn't support symlinks here. - ${busybox}/bin/mkdir -p mods - ${busybox}/bin/cp -r '${mods}/mods/'*.jar mods - ''} - - # Delete any previous config directories so that they can be updated - ${busybox}/bin/rm -fr config defaultconfigs - - ${lib.optionalString (modConfig != null) '' - # Copy the specified configs into the directory. Forge (and - # mods) will try to write here, so we cannot symlink. - ${busybox}/bin/mkdir -p config - ${busybox}/bin/cp -r '${modConfig}'/* config - ${busybox}/bin/chmod -R u+w config - ''} - - ${lib.optionalString (defaultconfigs != null) '' - # Copy the specified configs into the directory. Forge (and - # mods) will try to write here, so we cannot symlink. - ${busybox}/bin/mkdir -p defaultconfigs - ${busybox}/bin/cp -r '${defaultconfigs}'/* defaultconfigs - ${busybox}/bin/chmod -R u+w defaultconfigs - ''} - - exec ${jre_headless}/bin/java \$@ -jar $out'/lib/forge/forge-${version}.jar' nogui - EOF - - chmod +x $out/bin/forge-server - ''; - - meta = with lib; { - description = "Forge Minecraft Server"; - homepage = "https://files.minecraftforge.net/"; - # Forge itself is open source, but this package pulls in - # minecraft. - license = licenses.unfreeRedistributable; - platforms = platforms.unix; - }; - } diff --git a/pkgs/minecraft/voor-kia-client.nix b/pkgs/minecraft/voor-kia-client.nix deleted file mode 100644 index fea9879..0000000 --- a/pkgs/minecraft/voor-kia-client.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ - lib, - local-lib, - stdenv, -}: -local-lib.minecraft.mkModpackZip { - name = "voor-kia-client"; - version = "1.1"; - mods = - (builtins.fromJSON (builtins.readFile ./voor-kia/mods.json)) - ++ (builtins.fromJSON (builtins.readFile ./voor-kia/client-mods.json)); -} diff --git a/pkgs/minecraft/voor-kia.nix b/pkgs/minecraft/voor-kia.nix deleted file mode 100644 index 4bbd433..0000000 --- a/pkgs/minecraft/voor-kia.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ - lib, - local-lib, - stdenv, -}: -local-lib.minecraft.mkModpack { - name = "voor-kia"; - version = "1.0"; - mods = builtins.fromJSON (builtins.readFile ./voor-kia/mods.json); -} diff --git a/pkgs/minecraft/voor-kia/client-mods.json b/pkgs/minecraft/voor-kia/client-mods.json deleted file mode 100644 index 960f7ab..0000000 --- a/pkgs/minecraft/voor-kia/client-mods.json +++ /dev/null @@ -1,86 +0,0 @@ -[ - { - "filename": "AmbientSounds_v3.1.9_mc1.16.5.jar", - "id": 3334857, - "project": "ambientsounds", - "project_id": 254284, - "sha256": "c8ed21587fe96745695aa9a8f23b6effbcc6a5c5340aed11b8515c0e0aa2c310" - }, - { - "filename": "BackTools-1.16.5-10.1.0.jar", - "id": 3224955, - "project": "back-tools", - "project_id": 229061, - "sha256": "cd5ed82919dd8acf2874c7edadba5bacfaffa898e572f8574241329e4478518e" - }, - { - "filename": "BetterAdvancements-1.16.5-0.1.1.111.jar", - "id": 3400299, - "project": "better-advancements", - "project_id": 272515, - "sha256": "83c159f83bebc1d0f72c9de465bdcbeb2b02a56b88dcaa6661fe54df50a9aab5" - }, - { - "filename": "Controlling-7.0.0.23.jar", - "id": 3348514, - "project": "controlling", - "project_id": 250398, - "sha256": "627308ed0b4fc1fdcc75113db8412c0684c3a774d1c6a07ae993543e605f5655" - }, - { - "filename": "EntityCulling-1.16.5-2.1.6.jar", - "id": 3328602, - "project": "entity-culling", - "project_id": 409087, - "sha256": "eede3bfc68f48acb3e06fec2ea280510287cd5d492a02b8ace8e0dda742d7342" - }, - { - "filename": "ftb-library-forge-1605.3.1-build.48.jar", - "id": 3373833, - "project": "ftb-library-forge", - "project_id": 404465, - "sha256": "f4f87f464796ee6ff7c80fb1fbc5753ac191138b6aa6b1a30c1b55252b3bf0a8" - }, - { - "filename": "InventoryHud_[1.16.2-1.16.5].forge-3.3.0.jar", - "id": 3296748, - "project": "inventory-hud-forge", - "project_id": 357540, - "sha256": "2b3a4f02fe84b717c9273ea14cea0912267c2c093fc2cdfcde2b6f032c9762e7" - }, - { - "filename": "MouseTweaks-2.14-mc1.16.2.jar", - "id": 3202662, - "project": "mouse-tweaks", - "project_id": 60089, - "sha256": "9d7e1aaee9f814c26d896e084e6e86930ab99e19fe547a1d350a6e25e4267092" - }, - { - "filename": "namepain-1.4.0 forge-1.16.x.jar", - "id": 3356725, - "project": "name-pain", - "project_id": 366263, - "sha256": "5cc9e83b6d06810cbfcc155ddcfbe417cd4553a2665025affd1b71bee0138f68" - }, - { - "filename": "overloadedarmorbar-5.1.0.jar", - "id": 3055679, - "project": "overloaded-armor-bar", - "project_id": 314002, - "sha256": "8aff59f170ef2c7598dc0f2367842f4384e57c13111507468da32498fc0ac4ea" - }, - { - "filename": "shutupexperimentalsettings-1.0.3.jar", - "id": 3188120, - "project": "shutup-experimental-settings", - "project_id": 407174, - "sha256": "22ce84a0d424c2d48e483cb873909ac5c8c322bc793d09365ad44b901f43de62" - }, - { - "filename": "Toast-Control-1.16.4-4.3.1.jar", - "id": 3172881, - "project": "toast-control", - "project_id": 271740, - "sha256": "b1cb36b7615c846f08c72423b2b52417b55eea91ca812bb7629a8f3060f5efae" - } -] \ No newline at end of file diff --git a/pkgs/minecraft/voor-kia/mods.json b/pkgs/minecraft/voor-kia/mods.json deleted file mode 100644 index 794a1ab..0000000 --- a/pkgs/minecraft/voor-kia/mods.json +++ /dev/null @@ -1,625 +0,0 @@ -[ - { - "filename": "AI-Improvements-1.16.2-0.3.0.jar", - "id": 3031978, - "project": "ai-improvements", - "project_id": 233019, - "sha256": "47526292ea2f11dd18a8da8863b40ba81a93601f03aa4abcc742ac62ea599c69" - }, - { - "filename": "alexsmobs-1.11.1.jar", - "id": 3371504, - "project": "alexs-mobs", - "project_id": 426558, - "sha256": "4daf19a04317c5a399d38c2c397ead8cce9a9eb6c09fdb5bd7bd6dec8c911167" - }, - { - "filename": "Apotheosis-1.16.4-4.6.1.jar", - "id": 3332235, - "project": "apotheosis", - "project_id": 313970, - "sha256": "a15e9faf743d237063221c0d9ab0b75acf86ba5c3bfde08a42922c3b108bca80" - }, - { - "filename": "appleskin-forge-mc1.16.x-2.1.0.jar", - "id": 3395800, - "project": "appleskin", - "project_id": 248787, - "sha256": "d98f34b1a97a66ea5e33eda7e744f1382d325c7de51db57285d1a0888c0e8496" - }, - { - "filename": "architectury-1.20.28-forge.jar", - "id": 3385660, - "project": "architectury-forge", - "project_id": 419699, - "sha256": "0a89b6a6d12596bf288411fd740cbc44f3fe63c3f4665f7fd3f46f65f52cf138" - }, - { - "filename": "Artifacts-1.16.5-2.10.0.jar", - "id": 3374317, - "project": "artifacts", - "project_id": 312353, - "sha256": "70e2945f8200f7ad3cb46436a998acd37ebec318d08e7a578ca39e8115414b1c" - }, - { - "filename": "AttributeFix-1.16.5-10.1.3.jar", - "id": 3348562, - "project": "attributefix", - "project_id": 280510, - "sha256": "aabf99d65e4ccfc08a67dc378f447eef613ac50924587a33aef68d4467e1a7c0" - }, - { - "filename": "AutoRegLib-1.6-49.jar", - "id": 3326041, - "project": "autoreglib", - "project_id": 250363, - "sha256": "2760b765dccf1fad36e74f747ee9b1a2923e2d09eb281c72258c15bb4ed427d5" - }, - { - "filename": "bedspreads-forge-1.16.5-5.1.0.2.jar", - "id": 3258439, - "project": "bedspreads", - "project_id": 308653, - "sha256": "fa823abf9efef6818079d1c0cf123e9edccdac81fddf09b2ef931f21f4c58e9d" - }, - { - "filename": "BetterBurning-1.16.5-6.0.7.jar", - "id": 3348573, - "project": "better-burning", - "project_id": 353434, - "sha256": "4b089ce99e48cf72bf817cbc26a0e23b297b5b451bbd80b46091cd5a290524ff" - }, - { - "filename": "BetterCaves-Forge-1.16.4-1.1.2.jar", - "id": 3307879, - "project": "yungs-better-caves", - "project_id": 340583, - "sha256": "5182379427440bb4198790856c01f28c085365cc37ad3a05a9cd82dfdf068454" - }, - { - "filename": "BetterMineshafts-Forge-1.16.4-2.0.4.jar", - "id": 3344719, - "project": "yungs-better-mineshafts-forge", - "project_id": 389665, - "sha256": "19b9b7f87da2bb76574e9f3e3d18d445189a4627cfd0d8188ae88eb681b578b8" - }, - { - "filename": "BetterPortals-1.16.4-0.3.7.jar", - "id": 3396844, - "project": "yungs-better-portals", - "project_id": 443723, - "sha256": "4695da7e9212d79c9fc8350e9b4ec2600631ff858ee10d146d4a69f20dfc9c6e" - }, - { - "filename": "Bookshelf-1.16.5-10.2.15.jar", - "id": 3402183, - "project": "bookshelf", - "project_id": 228525, - "sha256": "0674174797835d3371d1421cbf6232276451edca0b6f16b85bb3519e65622ea4" - }, - { - "filename": "bwncr-1.16.4-3.9.16.jar", - "id": 3101531, - "project": "bad-wither-no-cookie-reloaded", - "project_id": 261251, - "sha256": "91c4df24466b958d36d41ce886e5d8b0839a07b73d58248a0dcb84a67279b81f" - }, - { - "filename": "byg-1.2.9.jar", - "id": 3337158, - "project": "oh-the-biomes-youll-go", - "project_id": 247560, - "sha256": "13007c914d142b4e19f92213970edf22094ad9f48e1e7e7c27e1355eb7248086" - }, - { - "filename": "callablehorses-1.16.3-1.2.1.4.jar", - "id": 3090832, - "project": "callable-horses", - "project_id": 331746, - "sha256": "639778fd58667aa560d333a2490352e34c1c32e897d9f8204e52df305ca5e879" - }, - { - "filename": "citadel-1.7.1-1.16.5.jar", - "id": 3346836, - "project": "citadel", - "project_id": 331936, - "sha256": "2977c084dcbd23c4fa1ea00ea152f1792b38781eff8f0234de4d67b1ee35b849" - }, - { - "filename": "cloth-config-4.11.26-forge.jar", - "id": 3311352, - "project": "cloth-config-forge", - "project_id": 348521, - "sha256": "815ba5d61416d9bbd53b830509b9f3d74d59c1720cf9a6b002a3e66eb1453196" - }, - { - "filename": "Clumps-6.0.0.25.jar", - "id": 3348509, - "project": "clumps", - "project_id": 256717, - "sha256": "1039d9ae78873107ee82c799e586c71dfe284d5bb58f89895a3a510f8f33c765" - }, - { - "filename": "flywheel-1.16-0.1.1.jar", - "id": 3389159, - "project": "flywheel", - "project_id": 486392, - "sha256": "ac0cc92d6ef491cc88ca3fbc3cb2c3180fe58ad1ce1c6f91dcfb996324d7331e" - }, - { - "filename": "expandability-2.0.1-forge.jar", - "id": 3277762, - "project": "expandability", - "project_id": 465066, - "sha256": "0959cffb3a545730e6b2e1377bb89b59ff96e7f9142f54cc8035ab4fa2fc76e1" - }, - { - "filename": "CodeChickenLib-1.16.5-4.0.2.429-universal.jar", - "id": 3398096, - "project": "codechicken-lib-1-8", - "project_id": 242818, - "sha256": "0254c780c5f20653cab34f6bc8178b1de1ce44de082dcd42ff1e1ee9ba9d5e3a" - }, - { - "filename": "CookingForBlockheads_1.16.5-9.3.3.jar", - "id": 3368022, - "project": "cooking-for-blockheads", - "project_id": 231484, - "sha256": "6adc6a882c2647ecda2345321ec77572a7f0a3fcdeadae24fa5dc71f0e5af9bb" - }, - { - "filename": "CosmeticArmorReworked-1.16.5-v4.jar", - "id": 3398000, - "project": "cosmetic-armor-reworked", - "project_id": 237307, - "sha256": "83a24d226acd7c86b94b4a8eac716b8a306c96e7d76a1a06bdcc2e2be9df9b21" - }, - { - "filename": "craftingstation-4.1.1.jar", - "id": 3084325, - "project": "crafting-station", - "project_id": 318551, - "sha256": "a3516650a1c5e76b47b9efd69a4cfa9cda4f85250bf217fa7186f74ef375a7e4" - }, - { - "filename": "create-mc1.16.5_v0.3.2b.jar", - "id": 3386319, - "project": "create", - "project_id": 328085, - "sha256": "7b0180bf62abe862f7dcb83a4281447b00fd7a26d488cfc17e4d6f590782cc8f" - }, - { - "filename": "CreativeCore_v2.2.0_mc1.16.5.jar", - "id": 3338971, - "project": "creativecore", - "project_id": 257814, - "sha256": "8155f7a84695a68fd2e8b8f6fab0377b9d78cfbab9d8c125e6a9b58238d1eacc" - }, - { - "filename": "curios-forge-1.16.5-4.0.5.2.jar", - "id": 3343065, - "project": "curios", - "project_id": 309927, - "sha256": "08d7558df6c621fca29758c349b95b137d2977cf1f3f61323fff4d85630d0641" - }, - { - "filename": "dankstorage-3.16.jar", - "id": 3250771, - "project": "dank-storage", - "project_id": 335673, - "sha256": "bd5734d8ee8caf3a20574699d91f95b9e53df6b4d13f196f087d3f4bfe867621" - }, - { - "filename": "decorative_blocks-1.16.4-1.7.2.jar", - "id": 3166283, - "project": "decorative-blocks", - "project_id": 362528, - "sha256": "f12dbfe76e36cdec65b8a575fc671f0291323a0de5ff420ff196d16bd19e6f84" - }, - { - "filename": "DoggyTalents-1.16.5-2.0.1.10.jar", - "id": 3399830, - "project": "doggy-talents", - "project_id": 271050, - "sha256": "dab81029d8e1155749ec7144b39e578980456fd8b59461e218ed930d72e80cbd" - }, - { - "filename": "easy_piglins-1.16.5-1.0.2.jar", - "id": 3309363, - "project": "easy-piglins", - "project_id": 419372, - "sha256": "66ac62e343203ed217a27a9038155192d4b3ee87908f7000347c5ee50526e5b5" - }, - { - "filename": "easy_villagers-1.16.5-1.0.11.jar", - "id": 3327024, - "project": "easy-villagers", - "project_id": 400514, - "sha256": "845e937a59e1c3b2423aff0129248b82ae9bdd3a618f43645cc7be6fe974c183" - }, - { - "filename": "EnchantmentDescriptions-1.16.5-7.0.14.jar", - "id": 3363585, - "project": "enchantment-descriptions", - "project_id": 250419, - "sha256": "60405ac61dbfb1e3c5d90479c2248f3e9408ca1089c524cefd021760c152f50c" - }, - { - "filename": "EnderStorage-1.16.5-2.8.0.168-universal.jar", - "id": 3361748, - "project": "ender-storage-1-8", - "project_id": 245174, - "sha256": "31725d5af63fda688f38c7546a1e210332339fadd5fedc3144f9fb0b643bf8d2" - }, - { - "filename": "extlights-3.3.jar", - "id": 3144281, - "project": "extended-lights-mod", - "project_id": 335051, - "sha256": "7f210f8e8bc451df301a6a2c22f81e434dd1835699444e5c0ed2bb2620847a6b" - }, - { - "filename": "ExtraStorage-1.16.5-1.4.1.jar", - "id": 3336746, - "project": "extrastorage", - "project_id": 410168, - "sha256": "0c3ecafbcc4c7f8a91479d389add57d0db2943cf182352065535d6b5511bce4f" - }, - { - "filename": "FarmingForBlockheads_1.16.5-7.3.1.jar", - "id": 3332379, - "project": "farming-for-blockheads", - "project_id": 261924, - "sha256": "94668c62457b655cf4bb2ff651adc43a2c2379e1ee4d545c57ff0d01c45db61e" - }, - { - "filename": "FastLeafDecay-v25.jar", - "id": 3052146, - "project": "fast-leaf-decay", - "project_id": 230976, - "sha256": "0abd12217bd7e83d5427a4aca6acec27241bb4a7272ef79958a692bd60fe1d86" - }, - { - "filename": "FastWorkbench-1.16.4-4.5.1.jar", - "id": 3245271, - "project": "fastworkbench", - "project_id": 288885, - "sha256": "99488d96c13fb062fc7d1281957d72f69fca0f1fa07f54c480337282a5092f23" - }, - { - "filename": "fishingreal-1.16.3-1.0.0.jar", - "id": 3074201, - "project": "fishing-real", - "project_id": 348834, - "sha256": "1c2f868ee221e59407f6c8f1ec07fa7ccca49a819559dad818713a6778291fc5" - }, - { - "filename": "HardcoreRevival_1.16.5-6.0.1.jar", - "id": 3344257, - "project": "hardcore-revival", - "project_id": 274036, - "sha256": "4a76642dd343070261f9151a37c2deb7e2c9efc031d4127f91b8b6d9b7614670" - }, - { - "filename": "iceandfire-2.1.8-1.16.5.jar", - "id": 3361256, - "project": "ice-and-fire-dragons", - "project_id": 264231, - "sha256": "37d849bc66e32b1de6ff52c2002714a49673b08f4fd84f36a7e1a6fdbf20f69e" - }, - { - "filename": "iChunUtil-1.16.5-10.4.1.jar", - "id": 3346209, - "project": "ichunutil", - "project_id": 229060, - "sha256": "d5a1be183d5f68ff520ddfa6a5db55dfe7d76f327fa98fd0a82209330815b5d9" - }, - { - "filename": "ironchest-1.16.5-11.2.13.jar", - "id": 3405717, - "project": "iron-chests", - "project_id": 228756, - "sha256": "535b48cc3f12acacf42c2daff8709e45131d34bcc218a05203f62ce091e92a11" - }, - { - "filename": "ironfurnaces-1.16.5-2.6.9.jar", - "id": 3387531, - "project": "iron-furnaces", - "project_id": 237664, - "sha256": "f9347a04dece94e645b581091f94cd33396e93a91209eb55cc6933e09196b0a1" - }, - { - "filename": "jei-1.16.5-7.7.1.116.jar", - "id": 3401260, - "project": "jei", - "project_id": 238222, - "sha256": "d2c8b8e08646e060a053cb9eaba70229540a7fc0204287e561dfd91bbff2c29b" - }, - { - "filename": "jeiintegration_1.16.5-7.0.1.15.jar", - "id": 3202331, - "project": "jei-integration", - "project_id": 265917, - "sha256": "0b45fe2858a8e9f97bf10fb218975a48a7d228ca27d274194c4dfaa91534bdfd" - }, - { - "filename": "JustEnoughResources-1.16.5-0.12.1.121.jar", - "id": 3336760, - "project": "just-enough-resources-jer", - "project_id": 240630, - "sha256": "1fa5dce078ff98fb172ca658aa7c70345fb8af969c506d5125b419da93448d61" - }, - { - "filename": "Kiwi-1.16.5-3.5.2.jar", - "id": 3377053, - "project": "kiwi", - "project_id": 303657, - "sha256": "1a175d5f6ca5329c5ef92c853b3112a6a4d4284b7896aeb4b60c21381f2c8caf" - }, - { - "filename": "Lollipop-1.16.5-3.2.9.jar", - "id": 3232534, - "project": "lollipop", - "project_id": 347954, - "sha256": "bba84ef5f76510595f1ee693f650d4ee4202cea290b4139233ca26060a14e12b" - }, - { - "filename": "lottaterracotta-1.16.5-1.3.2.jar", - "id": 3364628, - "project": "lotta-terracotta", - "project_id": 351060, - "sha256": "2a305378e261dee335fb680b4ac1cc362bed0b599a9fce6e248decbe1fa56c84" - }, - { - "filename": "mcw-doors-1.0.3-mc1.16.5.jar", - "id": 3340793, - "project": "macaws-doors", - "project_id": 378646, - "sha256": "fb23ffda5f8407a01bbb8a1ec5b08dff1a8772a6e7a726dd085920be62337982" - }, - { - "filename": "mcw-furniture-2.0.1-mc1.16.5.jar", - "id": 3182349, - "project": "macaws-furniture", - "project_id": 359540, - "sha256": "7f81b95c128ce97f3c41e29a4e98618c591f96321b53b718b5c3b6b8d3cb619e" - }, - { - "filename": "metalbarrels-3.3a.jar", - "id": 3055811, - "project": "metal-barrels", - "project_id": 324985, - "sha256": "9bec62579ec71be41a303519e3b7944df0f3ee23a5b03ac7c0d0b27fe7c66150" - }, - { - "filename": "overworld_two-1.0-Forge-1.16.4.jar", - "id": 3149167, - "project": "overworld-two-forge", - "project_id": 431157, - "sha256": "4995b774537ab31de6b98eb15aad3fbbfe6d3aa4e57108a9b3fe3abbe3d8da59" - }, - { - "filename": "pamhc2crops-1.16.3-1.0.2.jar", - "id": 3276350, - "project": "pams-harvestcraft-2-crops", - "project_id": 361385, - "sha256": "5ebb51293d3e56ccf93875b7a4943577d78c1ee79401115230bb28cebbc7e832" - }, - { - "filename": "pamhc2foodcore-1.16.3-1.0.2.jar", - "id": 3190867, - "project": "pams-harvestcraft-2-food-core", - "project_id": 372534, - "sha256": "e4414d35013e746e5b06256a08dd957a814b17cebcb035899a84a3692d08b544" - }, - { - "filename": "pamhc2foodextended-1.16.3-1.0.2.jar", - "id": 3260454, - "project": "pams-harvestcraft-2-food-extended", - "project_id": 402231, - "sha256": "886ec5e6dca66382b99765b0033d17e270b792171a75dd8eb41fcfd86a5641e9" - }, - { - "filename": "pamhc2trees-1.16.3-1.0.1.jar", - "id": 3281234, - "project": "pams-harvestcraft-2-trees", - "project_id": 365460, - "sha256": "e0f38f6a61e1da87981a249d520f2a8e43c4cefd29693076caf74ab8c5fe697f" - }, - { - "filename": "PassableFoliage-1.16.5-2.3.1.jar", - "id": 3378277, - "project": "passable-foliage", - "project_id": 379887, - "sha256": "b18d228f6c8e34b8de54a0b0aa257e1be1eef7b65f8b7f75b3186e46f1b2118b" - }, - { - "filename": "performant-1.16.2-5-3.72m.jar", - "id": 3401152, - "project": "performant", - "project_id": 354143, - "sha256": "cb3ef5fbedc6c9d7a0e379f7da400e22893a82425f27bd00bfd62e8cd8b35e20" - }, - { - "filename": "Placebo-1.16.4-4.5.0.jar", - "id": 3331459, - "project": "placebo", - "project_id": 283644, - "sha256": "4a1bebf13a3dde1870fee6da242598f9a1c8005161fdd795052506e0c38fd5da" - }, - { - "filename": "Platter-1.16-1.0.0.jar", - "id": 3115114, - "project": "platter", - "project_id": 381581, - "sha256": "6e4aee987ac4efa41a1b9cc26a4e4588c79a56bb200402b9fee71e43ab45a533" - }, - { - "filename": "Powah-1.16.5-2.3.16.jar", - "id": 3232535, - "project": "powah", - "project_id": 352656, - "sha256": "78b652caa055f67f0479bac9a44e3ed67704bf4e59a48d06c7fd3cfe9ecb2b72" - }, - { - "filename": "QuarkOddities-1.16.3.jar", - "id": 3088871, - "project": "quark-oddities", - "project_id": 301051, - "sha256": "5eafd942f2eb9b13edde3bff451ee968c1d0fe549c8decd2f8551e59a079711d" - }, - { - "filename": "Quark-r2.4-316.jar", - "id": 3394265, - "project": "quark", - "project_id": 243121, - "sha256": "e5cea2e0aa0c229913dfb2735cc52c3889ad8d448bc1bdd64aa0dda3077b3676" - }, - { - "filename": "refinedstorage-1.9.15.jar", - "id": 3400575, - "project": "refined-storage", - "project_id": 243076, - "sha256": "d49fc8ff38b973517e60bc5d17a1e98bc8b4c6870ec58d3df7a36ac780474180" - }, - { - "filename": "RepairChests-1.16.5-1.7.jar", - "id": 3211620, - "project": "repair-chests", - "project_id": 401644, - "sha256": "d25687ae8c7a9caf7491b506852eb7a6edc827230794dca4ddd45628b5674df9" - }, - { - "filename": "rsgauges-1.16.4-1.2.11.jar", - "id": 3390492, - "project": "redstone-gauges-and-switches", - "project_id": 296686, - "sha256": "65e6e7a7fac64130de455b8b8e3ec1a16ee48411df0ab3963790038019f69a25" - }, - { - "filename": "selene-1.16.5-1.3.jar", - "id": 3377212, - "project": "selene", - "project_id": 499980, - "sha256": "49a08a86b9f63170fb1a9bf9c81d6a91157eecfbf150ac04bb010207a0133485" - }, - { - "filename": "SnowRealMagic-1.16.4-2.5.8.jar", - "id": 3391417, - "project": "snow-real-magic", - "project_id": 308663, - "sha256": "153ba7328acbc0818361bb6f84fe4546aa1e9ddcd350ab5b6c97c6f7209b36b5" - }, - { - "filename": "snowundertrees-1.16.5-v1.1.4.jar", - "id": 3247710, - "project": "snow-under-trees", - "project_id": 353942, - "sha256": "66cf77b4f9b654648e890fe6c55a3be9b3693f1be505d1c1e7b6ff1b91a1a54d" - }, - { - "filename": "SoL-Carrot-1.16.5-1.10.0.jar", - "id": 3355731, - "project": "spice-of-life-carrot-edition", - "project_id": 277616, - "sha256": "b92f394d72b58e59e14d6cc337edf93d79617b02169ac44a3ec2a68820543d3a" - }, - { - "filename": "spark-forge.jar", - "id": 3337641, - "project": "spark", - "project_id": 361579, - "sha256": "a162f9caf81073429bcb8df4844ef8eb43828c57d2956f55675499bc004e4802" - }, - { - "filename": "StorageDrawers-1.16.3-8.3.0.jar", - "id": 3402515, - "project": "storage-drawers", - "project_id": 223852, - "sha256": "79ab53ab8d46aa517025fc4ecbb05b8492daff5f252aa4884ba46e8fefc3b794" - }, - { - "filename": "supplementaries-1.16.5-0.14.3.jar", - "id": 3377218, - "project": "supplementaries", - "project_id": 412082, - "sha256": "42e91d1c58b9bd292263410e75971de8a59ce0c1f2d7979a2222591fc55eba28" - }, - { - "filename": "sweetconcrete-1.16.5-1.7.2.jar", - "id": 3364624, - "project": "sweet-concrete", - "project_id": 351052, - "sha256": "6836f7f2a6f04edf6fe1efd4a6341c3c486c6c1ff824a858927375a45a121e33" - }, - { - "filename": "swingthroughgrass-1.16.4-1.5.3.jar", - "id": 3103028, - "project": "swingthroughgrass", - "project_id": 264353, - "sha256": "d47132c8e97989f6f1b4c3c2c0736bf9e16e9a72970b3953fc80dcf8b1a4e31d" - }, - { - "filename": "the_bumblezone-1.16.5-2.4.10-forge.jar", - "id": 3404007, - "project": "the-bumblezone-forge", - "project_id": 362479, - "sha256": "71fb56ddca8d5f671b1c5e588b60e352bb80fba135aab74056b4daa0ed44cefd" - }, - { - "filename": "The_Undergarden-1.16.5-0.5.4.jar", - "id": 3361666, - "project": "the-undergarden", - "project_id": 379849, - "sha256": "b596836a5c1d50cf1c65c50ea728b0e295965cf9a4091a8eb1caac517aad5c50" - }, - { - "filename": "towers_of_the_wild-1.16.4-2.0.1.jar", - "id": 3103750, - "project": "towers-of-the-wild", - "project_id": 386415, - "sha256": "fcd0e3f808569f0e547313a1ea3563c9a5d2fa8fbb638678eed6e46c1d8cfaf1" - }, - { - "filename": "TravelersBackpack-1.16.5-5.4.2.jar", - "id": 3316664, - "project": "travelers-backpack", - "project_id": 321117, - "sha256": "e07aad8653f037ad96639a602fa260684f89757c905d6a47e1193154d274875e" - }, - { - "filename": "weirdinggadget-1.16.(2-4)-2.2.7.jar", - "id": 3116235, - "project": "the-weirding-gadget", - "project_id": 258914, - "sha256": "fe9b2d4f39020a4239a19ea0e7229beec29eb8f1ef2b2b198b9aa5aad0b13318" - }, - { - "filename": "Wither-Skeleton-Tweaks-1.16.4-5.3.0.jar", - "id": 3172803, - "project": "wither-skeleton-tweaks", - "project_id": 255902, - "sha256": "e6375312aeb188cda4951a4c4935343a64785303129dbb47f49f59768d0865d3" - }, - { - "filename": "Xaeros_Minimap_21.14.1_Forge_1.16.5.jar", - "id": 3405505, - "project": "xaeros-minimap", - "project_id": 263420, - "sha256": "97278ddc89fe70b81387fc2ae45d986eb07e373b49977de5d358b8addf1103a2" - }, - { - "filename": "XaerosWorldMap_1.16.0_Forge_1.16.5.jar", - "id": 3405517, - "project": "xaeros-world-map", - "project_id": 317780, - "sha256": "b4bceb6ebebf9a6c67a2e750e98d5cf2c1fe53fc66e487a79ac0d7a0664a8a12" - }, - { - "filename": "YungsApi-1.16.4-Forge-11.jar", - "id": 3386962, - "project": "yungs-api", - "project_id": 421850, - "sha256": "d280edabd1f83ff45831e8c79dfdc5e9ca17158fa2ed1d05025afcea23ad83a9" - } -] diff --git a/pkgs/minecraft/voor-kia/update-mods.py b/pkgs/minecraft/voor-kia/update-mods.py deleted file mode 100644 index 36722be..0000000 --- a/pkgs/minecraft/voor-kia/update-mods.py +++ /dev/null @@ -1,156 +0,0 @@ -import argparse -import json -import hashlib -import pathlib -from copy import deepcopy -from datetime import datetime -from enum import Enum -from typing import Any, Dict, Generator, List, NamedTuple, Optional, Union - -import requests -from dateutil import parser - - -API = "https://addons-ecs.forgesvc.net/api/v2" -JSON = Union[List[Dict[str, Any]], Dict[str, Any]] - - -class ModLoader(Enum): - FORGE = 1 - FABRIC = 4 - - -class File(NamedTuple): - id: int - gameVersions: List[str] - name: str - modLoader: Optional[ModLoader] - date: datetime - - @classmethod - def from_json(cls, f: JSON): - assert isinstance(f, dict) - - assert isinstance(f.get("gameVersion"), list) - assert isinstance(f.get("id"), int) - assert isinstance(f.get("fileName"), str) - assert isinstance(f.get("fileDate"), str) - - modLoader = ( - ModLoader.FORGE - if "Forge" in f["gameVersion"] - else ModLoader.FABRIC - if "Fabric" in f["gameVersion"] - else None - ) - - return cls( - f["id"], - f["gameVersion"], - f["fileName"], - modLoader, - parser.isoparse(f["fileDate"]), - ) - - -class CurseAPI: - def __init__(self): - self._session = requests.Session() - self._session.headers[ - "User-Agent" - ] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:90.0) Gecko/20100101 Firefox/90.0" - - def get_latest_files(self, mod_id: int) -> Generator[File, None, None]: - res = self._session.get(f"{API}/addon/{mod_id}/files") - res.raise_for_status() - - latest_files = res.json() - - return (File.from_json(f) for f in latest_files) - - def get_file_url(self, mod_id: int, file_id: int) -> str: - res = self._session.get(f"{API}/addon/{mod_id}/file/{file_id}/download-url") - res.raise_for_status() - return res.text.rstrip("\n") - - def download_file(self, mod_id: int, file_id: int) -> bytes: - url = self.get_file_url(mod_id, file_id) - file_ = self._session.get(url) - file_.raise_for_status() - return file_.content - - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument("version", help="The minecraft version to limit updates to") - parser.add_argument( - "--mod-loader", choices=["none", "forge", "fabric"], default="forge" - ) - parser.add_argument("--infile", type=pathlib.Path) - args = parser.parse_args() - - if args.mod_loader == "forge": - mod_loader = ModLoader.FORGE - elif args.mod_loader == "fabric": - mod_loader = ModLoader.FABRIC - else: - raise AssertionError("Unreachable") - - update(args.infile, args.version, mod_loader) - - -def update(infile: pathlib.Path, version: str, mod_loader: ModLoader): - with open(infile) as mods_json: - mods = json.load(mods_json) - - curse = CurseAPI() - new_mods = [] - - for mod in mods: - print(f"Checking for updates to {mod['project']}...") - - try: - latest_files = list(curse.get_latest_files(mod["project_id"])) - except requests.HTTPError as err: - print(f"WARNING: Could not access curse API for {mod['project']}: {err}") - latest_files = [_ for _ in []] - - def compatible(file_: File) -> bool: - return ( - mod_loader is None - or file_.modLoader is None - or file_.modLoader == mod_loader - ) and any( - file_version.startswith(version) for file_version in file_.gameVersions - ) - - compatible_files = list(filter(compatible, latest_files)) - if compatible_files: - latest = max(compatible_files, key=lambda f: f.date) - if latest.id != mod["id"]: - print( - f"Updating {mod['project']} {mod['filename']} -> {latest.name}..." - ) - contents = curse.download_file(mod["project_id"], latest.id) - sha256 = hashlib.sha256(contents).hexdigest() - - new_mod = deepcopy(mod) - new_mod.update( - {"filename": latest.name, "id": latest.id, "sha256": sha256} - ) - new_mods.append(new_mod) - else: - new_mods.append(mod) - else: - print(f"WARNING: No compatible files found for {mod['project']}") - print( - f"Versions available: {[(f.name, f.gameVersions) for f in latest_files]}" - ) - new_mods.append(mod) - - with open("temp.json", "w") as out: - json.dump(new_mods, out, sort_keys=True, indent=2) - - -if __name__ == "__main__": - main() From e512e73b5eb66de52f04aaa996d6cce67c0d90c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 01:17:49 +0100 Subject: [PATCH 015/196] flake.nix: Clean up and refactor --- flake.lock | 30 ++++++--- flake.nix | 191 ++++++++++++++++++++++++----------------------------- 2 files changed, 107 insertions(+), 114 deletions(-) diff --git a/flake.lock b/flake.lock index 5c75d61..c6f9923 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,26 @@ "nodes": { "flake-utils": { "locked": { - "lastModified": 1649676176, - "narHash": "sha256-OWKJratjt2RW151VUlJPRALb7OU2S5s+f0vLj4o1bHM=", + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", "owner": "numtide", "repo": "flake-utils", - "rev": "a4b154ebbdc88c8498a5c7b01589addc9e9cb678", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", "type": "github" }, "original": { @@ -70,7 +85,6 @@ }, "root": { "inputs": { - "flake-utils": "flake-utils", "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs", "sops-nix": "sops-nix", @@ -125,9 +139,7 @@ }, "tlaternet-templates": { "inputs": { - "flake-utils": [ - "flake-utils" - ], + "flake-utils": "flake-utils", "nixpkgs": [ "nixpkgs" ] @@ -148,9 +160,7 @@ }, "tlaternet-webserver": { "inputs": { - "flake-utils": [ - "flake-utils" - ], + "flake-utils": "flake-utils_2", "naersk": "naersk", "nixpkgs": [ "nixpkgs" diff --git a/flake.nix b/flake.nix index 1ae56cc..e1f2353 100644 --- a/flake.nix +++ b/flake.nix @@ -4,7 +4,6 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11"; nixos-hardware.url = "github:nixos/nixos-hardware/master"; - flake-utils.url = "github:numtide/flake-utils"; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; @@ -12,17 +11,11 @@ tlaternet-webserver = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; - inputs = { - flake-utils.follows = "flake-utils"; - nixpkgs.follows = "nixpkgs"; - }; + inputs.nixpkgs.follows = "nixpkgs"; }; tlaternet-templates = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet-templates.git"; - inputs = { - flake-utils.follows = "flake-utils"; - nixpkgs.follows = "nixpkgs"; - }; + inputs.nixpkgs.follows = "nixpkgs"; }; }; @@ -30,12 +23,12 @@ self, nixpkgs, nixos-hardware, - flake-utils, sops-nix, tlaternet-webserver, tlaternet-templates, - ... - } @ inputs: let + }: let + system = "x86_64-linux"; + overlays = [ (final: prev: { tlaternet-webserver = @@ -47,102 +40,92 @@ }; }) ]; - in - { - nixosConfigurations = { - tlaternet = let - system = "x86_64-linux"; - in - nixpkgs.lib.nixosSystem { - inherit system; - modules = [ - ({modulesPath, ...}: { - imports = [(modulesPath + "/profiles/headless.nix")]; - nixpkgs.overlays = overlays; - }) - (import ./modules) + pkgs = import nixpkgs {inherit system overlays;}; + sops-pkgs = sops-nix.packages.${system}; + in { + nixosConfigurations = { + tlaternet = nixpkgs.lib.nixosSystem { + inherit system; - (import ./configuration) - (import ./configuration/linode.nix) - (import ./configuration/hardware-configuration.nix) - sops-nix.nixosModules.sops - ]; - }; + modules = [ + ({modulesPath, ...}: { + imports = [(modulesPath + "/profiles/headless.nix")]; + nixpkgs.overlays = overlays; + }) + (import ./modules) - vm = let - system = "x86_64-linux"; - in - nixpkgs.lib.nixosSystem { - inherit system; - - modules = [ - ({modulesPath, ...}: { - imports = [(modulesPath + "/profiles/headless.nix")]; - nixpkgs.overlays = overlays; - }) - (import ./modules) - - (import ./configuration) - sops-nix.nixosModules.sops - ({lib, ...}: { - users.users.tlater.password = "insecure"; - - # Disable graphical tty so -curses works - boot.kernelParams = ["nomodeset"]; - - # Sets the base domain for nginx to localhost so that we - # can easily test locally with the VM. - services.nginx.domain = lib.mkOverride 99 "localhost"; - - # # Set up VM settings to match real VPS - # virtualisation.memorySize = 3941; - # virtualisation.cores = 2; - }) - ]; - }; - }; - } - // flake-utils.lib.eachDefaultSystem (system: let - pkgs = import nixpkgs {inherit system overlays;}; - sops-pkgs = sops-nix.packages.${system}; - in { - devShell = pkgs.mkShell { - sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; - nativeBuildInputs = with sops-pkgs; [ - sops-import-keys-hook + (import ./configuration) + (import ./configuration/linode.nix) + (import ./configuration/hardware-configuration.nix) + sops-nix.nixosModules.sops ]; - buildInputs = with pkgs; - with sops-pkgs; [ - nixfmt - git-lfs - sops-init-gpg-key - ]; - shellHook = let - inherit (pkgs.lib.attrsets) mapAttrsToList; - inherit (pkgs.lib.strings) concatStringsSep; - ports = { - "3022" = "2222"; - "3080" = "80"; - "3443" = "443"; - "3021" = "2221"; - "25565" = "25565"; - "21025" = "21025"; # Starbound - }; - QEMU_NET_OPTS = - concatStringsSep "," - (mapAttrsToList - (host: vm: "hostfwd=::${host}-:${vm}") - ports); - in '' - export QEMU_OPTS="-m 3941 -smp 2 -curses" - export QEMU_NET_OPTS="${QEMU_NET_OPTS}" - - # Work around sudo requiring a full terminal - export NIX_SSHOPTS="-t" - ''; }; - packages = import ./pkgs {inherit pkgs;}; - }); + vm = nixpkgs.lib.nixosSystem { + inherit system; + + modules = [ + ({modulesPath, ...}: { + imports = [(modulesPath + "/profiles/headless.nix")]; + nixpkgs.overlays = overlays; + }) + (import ./modules) + + (import ./configuration) + sops-nix.nixosModules.sops + ({lib, ...}: { + users.users.tlater.password = "insecure"; + + # Disable graphical tty so -curses works + boot.kernelParams = ["nomodeset"]; + + # Sets the base domain for nginx to localhost so that we + # can easily test locally with the VM. + services.nginx.domain = lib.mkOverride 99 "localhost"; + + # # Set up VM settings to match real VPS + # virtualisation.memorySize = 3941; + # virtualisation.cores = 2; + }) + ]; + }; + }; + + devShells.${system}.default = pkgs.mkShell { + sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; + nativeBuildInputs = [ + sops-pkgs.sops-import-keys-hook + ]; + buildInputs = with pkgs; [ + nixfmt + git-lfs + sops-pkgs.sops-init-gpg-key + ]; + + shellHook = let + inherit (pkgs.lib.attrsets) mapAttrsToList; + inherit (pkgs.lib.strings) concatStringsSep; + ports = { + "2222" = "2222"; + "3080" = "80"; + "3443" = "443"; + "2221" = "2221"; + "21025" = "21025"; # Starbound + }; + QEMU_NET_OPTS = + concatStringsSep "," + (mapAttrsToList + (host: vm: "hostfwd=::${host}-:${vm}") + ports); + in '' + export QEMU_OPTS="-m 3941 -smp 2 -curses" + export QEMU_NET_OPTS="${QEMU_NET_OPTS}" + + # Work around sudo requiring a full terminal when deploying to + # a remote host + export NIX_SSHOPTS="-t" + ''; + }; + }; } From dea9032530f80b8defd4251f23277f947aec9901 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 13:11:11 +0100 Subject: [PATCH 016/196] flake.nix: Add app to start VM through `nix run` --- flake.nix | 46 +++++++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/flake.nix b/flake.nix index e1f2353..852694f 100644 --- a/flake.nix +++ b/flake.nix @@ -92,6 +92,32 @@ }; }; + apps.${system}.default = let + inherit (self.nixosConfigurations.vm.config.system.build) vm; + inherit (nixpkgs.legacyPackages.${system}) writeShellScript; + inherit (nixpkgs.lib.attrsets) mapAttrsToList; + inherit (nixpkgs.lib.strings) concatStringsSep; + ports = { + "2222" = "2222"; + "3080" = "80"; + "3443" = "443"; + "2221" = "2221"; + "21025" = "21025"; # Starbound + }; + QEMU_NET_OPTS = + concatStringsSep "," + (mapAttrsToList + (host: vm: "hostfwd=::${host}-:${vm}") + ports); + in { + type = "app"; + program = builtins.toString (writeShellScript "run-vm" '' + export QEMU_OPTS="-m 3941 -smp 2 -curses" + export QEMU_NET_OPTS="${QEMU_NET_OPTS}" + "${vm}/bin/run-tlaternet-vm" + ''); + }; + devShells.${system}.default = pkgs.mkShell { sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; nativeBuildInputs = [ @@ -103,25 +129,7 @@ sops-pkgs.sops-init-gpg-key ]; - shellHook = let - inherit (pkgs.lib.attrsets) mapAttrsToList; - inherit (pkgs.lib.strings) concatStringsSep; - ports = { - "2222" = "2222"; - "3080" = "80"; - "3443" = "443"; - "2221" = "2221"; - "21025" = "21025"; # Starbound - }; - QEMU_NET_OPTS = - concatStringsSep "," - (mapAttrsToList - (host: vm: "hostfwd=::${host}-:${vm}") - ports); - in '' - export QEMU_OPTS="-m 3941 -smp 2 -curses" - export QEMU_NET_OPTS="${QEMU_NET_OPTS}" - + shellHook = '' # Work around sudo requiring a full terminal when deploying to # a remote host export NIX_SSHOPTS="-t" From ab3aa1948196e694f633133be326986e3dec9565 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 01:24:54 +0100 Subject: [PATCH 017/196] treewide: Perform another nitpicking sweep --- configuration/default.nix | 11 ++++++----- configuration/linode.nix | 5 ----- modules/default.nix | 11 +++++------ 3 files changed, 11 insertions(+), 16 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index b008454..4b9bfa1 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -13,7 +13,6 @@ ]; nix = { - # Enable flakes package = pkgs.nixFlakes; extraOptions = '' experimental-features = nix-command flakes @@ -31,6 +30,8 @@ secrets.steam = {}; }; + # Optimization for minecraft servers, see: + # https://bugs.mojang.com/browse/MC-183518 boot.kernelParams = ["highres=off" "nohz=off"]; networking = { @@ -71,7 +72,7 @@ domain = "tlater.net"; virtualHosts = let - host = port: extra: + proxyPassToPort = port: extra: lib.recursiveUpdate { forceSSL = true; enableACME = true; @@ -83,9 +84,9 @@ extra; domain = config.services.nginx.domain; in { - "${domain}" = host 3002 {serverAliases = ["www.${domain}"];}; - "gitea.${domain}" = host 3000 {}; - "nextcloud.${domain}" = host 3001 {}; + "${domain}" = proxyPassToPort 3002 {serverAliases = ["www.${domain}"];}; + "gitea.${domain}" = proxyPassToPort 3000 {}; + "nextcloud.${domain}" = proxyPassToPort 3001 {}; }; }; diff --git a/configuration/linode.nix b/configuration/linode.nix index 4224cfe..7d6a780 100644 --- a/configuration/linode.nix +++ b/configuration/linode.nix @@ -1,9 +1,4 @@ { - config, - lib, - pkgs, - ... -}: { # Required for the lish console boot.kernelParams = ["console=ttyS0,19200n8"]; diff --git a/modules/default.nix b/modules/default.nix index 46f5e10..55e356c 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1,9 +1,8 @@ -{lib, ...}: -with lib; { - imports = [./virtualisation/pods.nix]; - - options.services.nginx.domain = mkOption { - type = types.str; +{lib, ...}: let + inherit (lib) mkOption types; +in { + options.services.nginx.domain = lib.mkOption { + type = lib.types.str; description = "The base domain name to append to virtual domain names"; }; } From 6a81ce4c1d2605127a707286852d07cb48bb6384 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 02:03:22 +0100 Subject: [PATCH 018/196] sops: Improve secrets provisioning to split out staging --- .sops.yaml | 9 ++++- configuration/default.nix | 6 +--- configuration/services/starbound.nix | 2 +- configuration/sops.nix | 10 ++++++ flake.nix | 3 ++ keys/hosts/staging.asc | 28 ++++++++++++++++ keys/production.yaml | 50 ++++++++++++++++++++++++++++ keys/staging.yaml | 50 ++++++++++++++++++++++++++++ 8 files changed, 151 insertions(+), 7 deletions(-) create mode 100644 configuration/sops.nix create mode 100644 keys/hosts/staging.asc create mode 100644 keys/production.yaml create mode 100644 keys/staging.yaml diff --git a/.sops.yaml b/.sops.yaml index ad56f8b..4c17c75 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -1,9 +1,16 @@ keys: - &tlater 535B61015823443941C744DD12264F6BBDFABA89 - &server_tlaternet 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b + - &server_staging 7762ec55a5727cabada621d961e53f94caa314e4 creation_rules: - - key_groups: + - path_regex: keys/production.yaml + key_groups: - pgp: - *tlater - *server_tlaternet + - path_regex: keys/staging.yaml + key_groups: + - pgp: + - *tlater + - *server_staging diff --git a/configuration/default.nix b/configuration/default.nix index 4b9bfa1..d84302a 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -10,6 +10,7 @@ ./services/webserver.nix ./services/starbound.nix ./ids.nix + ./sops.nix ]; nix = { @@ -25,11 +26,6 @@ nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) ["steam-runtime" "steamcmd"]; - sops = { - defaultSopsFile = ../keys/external.yaml; - secrets.steam = {}; - }; - # Optimization for minecraft servers, see: # https://bugs.mojang.com/browse/MC-183518 boot.kernelParams = ["highres=off" "nohz=off"]; diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix index e8a0772..5dc0961 100644 --- a/configuration/services/starbound.nix +++ b/configuration/services/starbound.nix @@ -16,7 +16,7 @@ in { # Credential loading for steam auth (if necessary; prefer # anonymous login wherever possible). - LoadCredential = "steam:/run/secrets/steam"; + LoadCredential = "steam:/run/secrets/steam/tlater"; # Security settings DynamicUser = true; diff --git a/configuration/sops.nix b/configuration/sops.nix new file mode 100644 index 0000000..8efa3af --- /dev/null +++ b/configuration/sops.nix @@ -0,0 +1,10 @@ +{ + sops = { + defaultSopsFile = ../keys/production.yaml; + secrets."nextcloud/tlater" = { + owner = "nextcloud"; + group = "nextcloud"; + }; + secrets."steam/tlater" = {}; + }; +} diff --git a/flake.nix b/flake.nix index 852694f..5ff0a51 100644 --- a/flake.nix +++ b/flake.nix @@ -84,6 +84,9 @@ # can easily test locally with the VM. services.nginx.domain = lib.mkOverride 99 "localhost"; + # Use the staging secrets + sops.defaultSopsFile = lib.mkOverride 99 ./keys/staging.yaml; + # # Set up VM settings to match real VPS # virtualisation.memorySize = 3941; # virtualisation.cores = 2; diff --git a/keys/hosts/staging.asc b/keys/hosts/staging.asc new file mode 100644 index 0000000..fbabfe2 --- /dev/null +++ b/keys/hosts/staging.asc @@ -0,0 +1,28 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +xsFNBAAAAAABEAC32/CXnt4LDPdPZppQ0GcJAxVFHFu8SCl5WnU/PVPEnwgRkV8V +ZeyQN4qgT5LPWgPYyDyAqUHBUwRxvVcguw0fOlDBZ3nECKQxZ53OVlay7xfhgXO1 +luNu657u5VYtxfLqx7lVHfY/TWp5DBOOEpOtoKfz031Zbg11+kdxW5eEg2ypCTvn ++MVQgRH9AQI+0+jegQ9On3X9UaVdc8etuY/F8BAEwLCCbYpLUEUXwOo4YLB36Kg3 +P27q15Nl6g5P/oFEdS3fhHbh9636lJnxJcTTjAfJaDoQJ5rGDASiT8HJnkNWfrf/ +yzLMOiy6fRRIz8HTXKeZNeRvCPu1uHaWYi0RprWMu1HZ0cLzr5N2lHKcWgL8En5b +fPyqldFfJBlY36L59F7hTk10QBgqFhibcXB44iK96jnYw6LgSuFkbfrJr7fx67JN +lM2Xi4WXvzkp3gboDxd2Xy3ChQrQXmXcVAl8XNs78f5AQh5MJP6iC7ayiIsHq4aH +rGVLhbncfKpw4OL9jVNTyRinwpvl5qibLAJbDA7arn8XqT6FT0KjeLa91jTFLHGn +9IkJol+L0/zYrpyiid5ZKNJMousxJoXymzRkeYllr+nLjKNLv0L3MCnsiPEZ23iL +y2/UZ6Vcjrs50L46VuiewCEaVbBp1H9Ps5eUa2YoJ65sfe7wnscXI8oOpQARAQAB +zSlyb290IChJbXBvcnRlZCBmcm9tIFNTSCkgPHJvb3RAbG9jYWxob3N0PsLBYgQT +AQgAFgUCAAAAAAkQYeU/lMqjFOQCGw8CGQEAAEKvEABZo9JRHnwrKr7UGmynctmF +aR+1KApeWrqahhobgfvMjJLfnUV7UDSeiuf3juoZC+L1d8LqEp0czcqU1YuGtjTT +Yk/4WDwc7G9MjHDgVXPZlQ/qxSYBFwowbUkfhj49UA4Np2PW3yLtoZnBHLz6tmaD +mTtdNjzEw+L0GQ9Wi2pQYSUV4I9URF/NH7NGmurNl8Y5SHb3rqFQ4CPGXk5UQYL5 +s0ZdArwgWNH+ceC1Kq0baKu5WJINFfCIJbJajATBqgPy6FPEmhUdgt8awOp01oEc +zs2930sc6YY5GJVEGnxR/qBLTA5lANS1mpqHd9s4YF7jj8h/q8SV4iegTeKHrLox +v1bP+QzHquCn7BpO9V6GD/eaqBKfx6k6+HDb5YmKnBvBV/c3yJ6wiv1H32nauWs1 +CgiJNYV+A/+YnWf0uPRqelAzT06JUtnSBZ0ppKLR68X3IKisXVNzW/3pM/ZWWfFM +uKHCoppH2iuStn2wPkdjJD4UHduAFyF1oj1jFwP9r+EuhhPH1qr40405jRdOR98P +RuPhrSkLBdWiUlNintDOyFzNbKXMZlreZeATeT5y/H+IF3CDvgAhBo7KqhfBfgUK +6P/1xk8DozTmlsKY/cOsK0aL47CJcg8LU6tHrxa8uP6qV2HbUD31WbCRr1eL8k2G +xszxEVPuKG8ckw58WpT4vA== +=kJ/7 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/keys/production.yaml b/keys/production.yaml new file mode 100644 index 0000000..bfc494f --- /dev/null +++ b/keys/production.yaml @@ -0,0 +1,50 @@ +nextcloud: + tlater: ENC[AES256_GCM,data:zNsPm4uFaIRe3LjcwmayRg==,iv:5wam6bP5zP708jC9UrLV0s8qspl3Pm4fPzbMFYBUyPQ=,tag:apnJUMeJwMn9q0NhO4ptmA==,type:str] +steam: + tlater: ENC[AES256_GCM,data:HNsve/Wid40ftclO9n09yXg=,iv:VQxAz4eR9lfxEvM0zl1FpJpbKrEFxjIYLyCqL9Aool0=,tag:LHcpHCXAHe8p2kOvOnKXyw==,type:str] +sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] + age: [] + lastmodified: "2022-10-12T13:13:37Z" + mac: ENC[AES256_GCM,data:+EuA0rblxZYk+0tZs3vUFtr1cVKhdrLi4Ww0QjeITZn2k+SL8Y2gRl3gNVQOe00WHUgSKN53QKhxDj4q6Rd0LfwASxRRjz78Mk8yHDRDIfdDS960EasgKON4HPW/eMd2Fp4+flv57KYywQQWp3AlD8JqxIf5wNhyywn5LlW3PCQ=,iv:YFIk0LrRjV8417QJ5cp5EuIm7bezyG8ZulKcu1xhIF4=,tag:vtq5hCuLEXOvRjE2D/5cCQ==,type:str] + pgp: + - created_at: "2022-10-12T00:46:51Z" + enc: | + -----BEGIN PGP MESSAGE----- + + hQEMA7x7stsXx45CAQf9Hivg5x2NEKp3icdAIXKoBVTp5jnqJ2S5xDpK4cbCUwRd + Z2VyNjxAXdTgKsviXseWbtsEbqo41oqjtpZwXK36gT/miKSPYyBSLb689L70RpWR + aC4QzOHbYr1Trr1whkTVaQG1vd2u9ZEyxsi13ItiYVylu7tgMqaDqzE4Y47RPZtz + FWFY4chO5Tq/DL0blP8oCTLFx4LSL82JbZswCfqrSHX44HGZ/OELHqNhYNF6hkCr + DgYYh7l7s08farE+PnTbWt808Kd3kP8fCRaLm9nt1X1c5QQElaWBjGIscK9fOsV4 + iVFQfPBdwBi8aawCmwvXOcg6sX050Ow3NeYQBJVICtJeAeHyetxxEYip6CrADsiq + UG1Np+p6Pcbq/k6E1vT6bsRrhUWPYC4yuh6Edg5p/jxa4DAlsq/OgDI9pquE9aIt + F8cQMHfIkNP8/HiM/KwmdHoTJiy8YCwqP/UalSJdVw== + =lnlW + -----END PGP MESSAGE----- + fp: 535B61015823443941C744DD12264F6BBDFABA89 + - created_at: "2022-10-12T00:46:51Z" + enc: | + -----BEGIN PGP MESSAGE----- + + hQIMA9ahl2ynTH87AQ/+ID/6Dcbat+YRvT8VpfKpZf2O6EFbI3dlPDkZ+f4yFW0R + uGKkLR69utM8FoEn1XUkPG3klDk5t/gQikS/d1lPZ6cPOsVzY4P2Te6LizP25vCE + cHkztZG/IuBCBfLp8xsEjF1OXEDnb7Klqd3aJuYrvJNm3SreNydRAGyM1E94+iQL + zLrHF0WbD+dVdVG+ZoHKouGHVVmcxTkfi8Ce63pHKxOiMgqJLnImC357mle4DlJV + 1My0CPV9Y1ElY+W5s+a7sRgursR0AVOkuvWYT39VW+RmFpUZyRCgyW+L6ilCEcOV + VXJHf0IFylkqevh11BssIetHAtT8anqZ+wo3ON4gEHjcahufc1h8rOxEEsWe/qUC + XZzfwilOsY/vKJ+GTz5Cp8XAviozQL5o2O5H9PiHxQl019QHZgprJclGMlukCBkR + Uo3h1Rl2na8JqcolAlFGQ1/QxsOnJ/KAmOpUZ7fZqG2qnsXnFjXcuqo+0e58odaT + sZLIspvsEHBHKzsvUa6BT8bTc+GlsB3hFolBVdX4y9kTWuzxy0K6bKA9HMTf4FPW + w2hIlvYhlgEx9MVqKLbemN3ye2rC3GRUBXxVXmlXBmb7nXPZCOGqL6nrvtsQ1E4h + D9+sN+cvYh5lYPByjXYinT8TqFVpqX++qnpgHC+5c6WtDHlhRAyfIQK51wCyiZbS + UAG6iDEbCWwD7uHZjDmVycC2R/0HnO+o9xMBI6teKYziFhvn8m7R9gzr7zn/0x3t + dVMXtojhfbMPzYK0gT6xOn8SbYGH0MV7ddOm7+Kl3Z8Y + =zDer + -----END PGP MESSAGE----- + fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b + unencrypted_suffix: _unencrypted + version: 3.7.2 diff --git a/keys/staging.yaml b/keys/staging.yaml new file mode 100644 index 0000000..14a683a --- /dev/null +++ b/keys/staging.yaml @@ -0,0 +1,50 @@ +nextcloud: + tlater: ENC[AES256_GCM,data:91kDcO4hpng=,iv:ayuILRmRru4ZxTCur9H2xHuLjkDzwPdS/4lEog/tesU=,tag:qYhJxnNDcCwUM7xe7Tlcjw==,type:str] +steam: + tlater: ENC[AES256_GCM,data:jcW4wacGzOQ=,iv:KstKGHflscSWDFXGbnAZUcsqGN4Ot+w7sRbsAUwZNHQ=,tag:n9sRWvaKSgagpIgV/NF/Og==,type:str] +sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] + age: [] + lastmodified: "2022-10-12T13:14:20Z" + mac: ENC[AES256_GCM,data:IlU8Jr+HD/ZHHsd7eaaSGp3tRxGy8/yhbSejkWmHFeL1WsvdWsToHM7yah2WzX+uY7s/i7atHQdhbHITCi6gBIFociVVPwziK5YOmTXv1fHlcD60U4ClRbTtgMVMtvc5tXrxdLQGhaX+DJ5xXBhTlCSwwqgYP0I7vJmEUF9mz7g=,iv:IM1ebqQB1UO5EN92kipHL20iGtFTKJhUiN/XR6psWBM=,tag:WweauZ5pA7/YMuUuq8C/xQ==,type:str] + pgp: + - created_at: "2022-10-12T16:48:23Z" + enc: | + -----BEGIN PGP MESSAGE----- + + hQEMA7x7stsXx45CAQf/QKXxlgFzUn5ZS02JDiOLds6wjsiTbwQeIy+den+qH9KF + CyfC/8WhxojyhliG0zUzQ7oHtYYkbknF2DyrR7J4+S3SyvMS6MDGTUUn5dIcGwBO + 2/Q2bt4ayOJFNTPePA0IfuMYNUiMl5B/0GCFRV9DE+gG/dcsOzM5q1Uya/yJ1966 + RndWwbnE4j5yP4Nj2o3OiZFhlNi6W6UffYB0hsTTPmmebIZltDRbmLSSpKcfNEYw + h3st3WaJ0BCuQC5i/kvYTfJyBCoYnvFrb3RmXm3h+MvW0JZwHzfbST3nJCBHh5XJ + fVquF17oDJzn5S7EdWMhUbWwHgZwz2J6sZMgGEQ6WdJeAf2IlCuRYGjQMcB1WhxH + GCgbzUGoOGrxT3euzz9R1J98d1HQqtpFgeg9JgWndUdhoF80+AU7Wpyy6qOg2n/4 + wCcb4pcqG1OqFezauEu8+sFdE07vfLoWzxJIark8WA== + =pc2z + -----END PGP MESSAGE----- + fp: 535B61015823443941C744DD12264F6BBDFABA89 + - created_at: "2022-10-12T16:48:23Z" + enc: | + -----BEGIN PGP MESSAGE----- + + hQIMA2HlP5TKoxTkARAAl+2Y+pd5oraYLgiiJ0CbMFef0zCpFwBwUCyzykMOICGa + TWCYs8K6hChjepe0p8+oZnp0wi8U1qrmgRtFljQfHoXq5EXDYKydkz8XHHDI7/W7 + 1BmETajv9Mx7j4BFNB3z0XvLJTPeNhygemuHhox5pA8CUt5FkYahpzYR9AlLiAwx + NtU+csrcGUqYllT5WYIKFVIwFk07IvgK/7vj3filO5G2GMiH7lsV6p7W/MYqCFTV + grE383/bGCT18XmHpe3Uu0NcotexiqKSXpnFNntWOgd/KynBn8Oa/DMr8ci/4QSF + rEV4+IGJSmfAzQYaIfzNRGyTQJKBFiXWQv53GWT9Y5EbdEYEBhyqlIaV5fp/61X+ + 8zhLz3b6QMkNkI6mNVVLK96g2p0dhVoq+R3Wlj/RIVDw/BzH+vJIArQhc8T2NEOX + lmLFTMoTRXPrw/UZKMoO+JSDwt2p3WI0sb/ThS+bd7eymxt5lFW1Ikc4Jgd/iHHu + JtUZ78i8jAV/nBJPaAYXoRxfpcAMFqJCnxTwCoF7vYP6hHeYW9PPqsClPxQ97TrO + /Ei01e9YSfdtIzKcwkOThffRr+7hxwEGQ3EZ+2ShOW9ASfLkIo4MgoLtDAoHCK5E + vc2JGWP+vlylTVnZ46Hp8BMRlSjdkS/qGU0lSTPC3q+PllCF2gkN6ZcdLv5L2DDS + UAFD70TIN2QAiYEZW6jxg2UtO9ULLT5NgrvfHD9aGAk7jIxeY+nH3S7KqFgmA21c + IkNZJSX/J85d13+kJADms3vI7uMOcSUiInaQHy9Cqjrr + =fnOr + -----END PGP MESSAGE----- + fp: 7762ec55a5727cabada621d961e53f94caa314e4 + unencrypted_suffix: _unencrypted + version: 3.7.2 From 3cedb9f97881b53c74757712817dcaffb8db6b08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 18:04:06 +0100 Subject: [PATCH 019/196] nextcloud: Use a hardened systemd unit instead of a container --- configuration/default.nix | 2 +- .../services/configs/nginx-nextcloud.conf | 167 ------------------ configuration/services/nextcloud.nix | 130 +++++++++----- configuration/services/postgres.nix | 31 ++++ 4 files changed, 120 insertions(+), 210 deletions(-) delete mode 100644 configuration/services/configs/nginx-nextcloud.conf create mode 100644 configuration/services/postgres.nix diff --git a/configuration/default.nix b/configuration/default.nix index d84302a..bbe474c 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -9,6 +9,7 @@ ./services/nextcloud.nix ./services/webserver.nix ./services/starbound.nix + ./services/postgres.nix ./ids.nix ./sops.nix ]; @@ -82,7 +83,6 @@ in { "${domain}" = proxyPassToPort 3002 {serverAliases = ["www.${domain}"];}; "gitea.${domain}" = proxyPassToPort 3000 {}; - "nextcloud.${domain}" = proxyPassToPort 3001 {}; }; }; diff --git a/configuration/services/configs/nginx-nextcloud.conf b/configuration/services/configs/nginx-nextcloud.conf deleted file mode 100644 index 7c6ad78..0000000 --- a/configuration/services/configs/nginx-nextcloud.conf +++ /dev/null @@ -1,167 +0,0 @@ -worker_processes auto; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - upstream php-handler { - server localhost:9000; - } - - server { - listen 80; - - # HSTS settings - # WARNING: Only add the preload option once you read about - # the consequences in https://hstspreload.org/. This option - # will add the domain to a hardcoded list that is shipped - # in all major browsers and getting removed from this list - # could take several months. - #add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always; - - # HTTP response headers borrowed from Nextcloud `.htaccess` - add_header Referrer-Policy "no-referrer" always; - add_header X-Content-Type-Options "nosniff" always; - add_header X-Download-Options "noopen" always; - add_header X-Frame-Options "SAMEORIGIN" always; - add_header X-Permitted-Cross-Domain-Policies "none" always; - add_header X-Robots-Tag "none" always; - add_header X-XSS-Protection "1; mode=block" always; - - # Remove X-Powered-By, which is an information leak - fastcgi_hide_header X-Powered-By; - - # Path to the root of your installation - root /var/www/html; - - # Specify how to handle directories -- specifying `/index.php$request_uri` - # here as the fallback means that Nginx always exhibits the desired behaviour - # when a client requests a path that corresponds to a directory that exists - # on the server. In particular, if that directory contains an index.php file, - # that file is correctly served; if it doesn't, then the request is passed to - # the front-end controller. This consistent behaviour means that we don't need - # to specify custom rules for certain paths (e.g. images and other assets, - # `/updater`, `/ocm-provider`, `/ocs-provider`), and thus - # `try_files $uri $uri/ /index.php$request_uri` - # always provides the desired behaviour. - index index.php index.html /index.php$request_uri; - - # Rule borrowed from `.htaccess` to handle Microsoft DAV clients - location = / { - if ( $http_user_agent ~ ^DavClnt ) { - return 302 /remote.php/webdav/$is_args$args; - } - } - - location = /robots.txt { - allow all; - log_not_found off; - access_log off; - } - - # Make a regex exception for `/.well-known` so that clients can still - # access it despite the existence of the regex rule - # `location ~ /(\.|autotest|...)` which would otherwise handle requests - # for `/.well-known`. - location ^~ /.well-known { - # The rules in this block are an adaptation of the rules - # in `.htaccess` that concern `/.well-known`. - - location = /.well-known/carddav { return 301 /remote.php/dav/; } - location = /.well-known/caldav { return 301 /remote.php/dav/; } - - location /.well-known/acme-challenge { try_files $uri $uri/ =404; } - location /.well-known/pki-validation { try_files $uri $uri/ =404; } - - # Let Nextcloud's API for `/.well-known` URIs handle all other - # requests by passing them to the front-end controller. - return 301 /index.php$request_uri; - } - - # set max upload size - client_max_body_size 10G; - fastcgi_buffers 64 4K; - - # Enable gzip but do not remove ETag headers - gzip on; - gzip_vary on; - gzip_comp_level 4; - gzip_min_length 256; - gzip_proxied expired no-cache no-store private no_last_modified no_etag auth; - gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy; - - # Pagespeed is not supported by Nextcloud, so if your server is built - # with the `ngx_pagespeed` module, uncomment this line to disable it. - #pagespeed off; - - # Rules borrowed from `.htaccess` to hide certain paths from clients - location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|/) { return 404; } - location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) { return 404; } - - # Ensure this block, which passes PHP files to the PHP process, is above the blocks - # which handle static assets (as seen below). If this block is not declared first, - # then Nginx will encounter an infinite rewriting loop when it prepends `/index.php` - # to the URI, resulting in a HTTP 500 error response. - location ~ \.php(?:$|/) { - fastcgi_split_path_info ^(.+?\.php)(/.*)$; - set $path_info $fastcgi_path_info; - - try_files $fastcgi_script_name =404; - - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - fastcgi_param PATH_INFO $path_info; - #fastcgi_param HTTPS on; - - fastcgi_param modHeadersAvailable true; # Avoid sending the security headers twice - fastcgi_param front_controller_active true; # Enable pretty urls - fastcgi_pass php-handler; - - fastcgi_intercept_errors on; - fastcgi_request_buffering off; - } - - location ~ \.(?:css|js|svg|gif)$ { - try_files $uri /index.php$request_uri; - expires 6M; # Cache-Control policy borrowed from `.htaccess` - access_log off; # Optional: Don't log access to assets - } - - location ~ \.woff2?$ { - try_files $uri /index.php$request_uri; - expires 7d; # Cache-Control policy borrowed from `.htaccess` - access_log off; # Optional: Don't log access to assets - } - - # Rule borrowed from `.htaccess` - location /remote { - return 301 /remote.php$request_uri; - } - - location / { - try_files $uri $uri/ /index.php$request_uri; - } - } -} diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 5b32cf2..9b08af9 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,53 +1,99 @@ -{config, ...}: { - virtualisation.pods.nextcloud = { - hostname = "nextcloud.tlater.net"; - publish = ["3001:80"]; - network = "slirp4netns"; +{ + pkgs, + config, + ... +}: let + inherit (pkgs) fetchNextcloudApp; + nextcloud = pkgs.nextcloud23; + hostName = "nextcloud.${config.services.nginx.domain}"; +in { + services.nextcloud = { + inherit hostName; - containers = { - nextcloud = { - image = "nextcloud:fpm-alpine"; - dependsOn = ["postgres"]; - volumes = [ - "nextcloud-root:/var/www/html" - "nextcloud-apps:/var/www/html/custom_apps" - "nextcloud-config:/var/www/html/config" - "nextcloud-data:/var/www/html/data" - ]; - environment = { - POSTGRES_DB = "nextcloud"; - POSTGRES_USER = "nextcloud"; - POSTGRES_HOST = "localhost"; - OVERWRITEPROTOCOL = "https"; - TRUSTED_PROXIES = "127.0.0.1"; - }; + package = nextcloud; + enable = true; + maxUploadSize = "2G"; + https = true; + + config = { + overwriteProtocol = "https"; + + dbtype = "pgsql"; + dbhost = "/run/postgresql"; + + adminuser = "tlater"; + adminpassFile = config.sops.secrets."nextcloud/tlater".path; + + defaultPhoneRegion = "AT"; + }; + + extraApps = { + # TODO(tlater): Seems like this won't work anymore from + # Nextcloud 25 onwards. + # + # Adopt whatever upstream does with this: + # https://github.com/nextcloud/server/issues/4917 + apporder = pkgs.fetchNextcloudApp { + name = "apporder"; + url = "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz"; + version = "0.15.0"; + sha256 = "sha256-p3VWxTYDCO2NePq6oLM8tBVqYkvoB7itqxp7IZwGDnE="; }; - cron = { - image = "nextcloud:fpm-alpine"; - entrypoint = "/cron.sh"; - dependsOn = ["postgres" "nextcloud"]; - extraOptions = ["--volumes-from=nextcloud-nextcloud"]; + bookmarks = pkgs.fetchNextcloudApp { + name = "bookmarks"; + url = "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz"; + version = "11.0.4"; + sha256 = "sha256-URqtzaCx8FEZHCDP1wSBUFNs+x50jesRtWi+xOU1oXM="; }; - nginx = { - image = "nginx:alpine"; - dependsOn = ["nextcloud"]; - volumes = [ - "nextcloud-root:/var/www/html:ro" - "${./configs/nginx-nextcloud.conf}:/etc/nginx/nginx.conf:ro" - ]; - extraOptions = ["--volumes-from=nextcloud-nextcloud"]; + calendar = pkgs.fetchNextcloudApp { + name = "calendar"; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.0/calendar-v3.5.0.tar.gz"; + version = "3.5.0"; + sha256 = "sha256-+LRGl9h40AQdWN9SW+NqGwTafAGwV07Af8nVs3pUCm0="; }; - postgres = { - image = "postgres:alpine"; - environment = { - POSTGRES_DB = "nextcloud"; - POSTGRES_USER = "nextcloud"; - }; - volumes = ["nextcloud-postgres-14:/var/lib/postgresql/data"]; + contacts = pkgs.fetchNextcloudApp { + name = "contacts"; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz"; + version = "4.2.2"; + sha256 = "sha256-GTiyZsUHBXPgQ17DHAihmt2W/ZnAjDwfgwnujkRwk6A="; + }; + + cookbook = pkgs.fetchNextcloudApp { + name = "cookbook"; + url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.15/Cookbook-0.9.15.tar.gz"; + version = "0.9.15"; + sha256 = "sha256-v64rLGyMQOdStyivpJsKrNxwumVQvyK3CnHtZ+K+elE="; + }; + + news = pkgs.fetchNextcloudApp { + name = "news"; + url = "https://github.com/nextcloud/news/releases/download/18.2.0/news.tar.gz"; + version = "18.2.0"; + sha256 = "sha256-eS0cFwJmYfGGJmA02AOWO/OXfqfyI71u2GataDj18DE="; + }; + + notes = pkgs.fetchNextcloudApp { + name = "notes"; + url = "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz"; + version = "4.5.1"; + sha256 = "sha256-rd3uVkVtARX4enRAWm1ivV468lboYZnYe7/zsqaHYpk="; }; }; + + # TODO(tlater): Add redis config. This will be much easier + # starting with 22.11, since this will add an `extraOptions` where + # the necessary redis config can go. + }; + + # Ensure that this service doesn't start before postgres is ready + systemd.services.nextcloud-setup.after = ["postgresql.service"]; + + # Set up SSL + services.nginx.virtualHosts."${hostName}" = { + forceSSL = true; + enableACME = true; }; } diff --git a/configuration/services/postgres.nix b/configuration/services/postgres.nix new file mode 100644 index 0000000..6c584bb --- /dev/null +++ b/configuration/services/postgres.nix @@ -0,0 +1,31 @@ +{pkgs, ...}: { + services.postgresql = { + package = pkgs.postgresql_14; + enable = true; + + # Only enable connections via the unix socket, and check with the + # OS to make sure the user matches the database name. + # + # See https://www.postgresql.org/docs/current/auth-pg-hba-conf.html + authentication = '' + local sameuser all peer + ''; + + # Note: The following options with ensure.* are set-only; i.e., + # when permissions/users/databases are removed from these lists, + # that operation needs to be performed manually on the system as + # well. + ensureUsers = [ + { + name = "nextcloud"; + ensurePermissions = { + "DATABASE nextcloud" = "ALL PRIVILEGES"; + }; + } + ]; + + ensureDatabases = [ + "nextcloud" + ]; + }; +} From b6594cea5472189d98f40714b94ab10bb0df1ac7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 19:43:24 +0100 Subject: [PATCH 020/196] gitea: Use a hardened systemd unit instead of a container --- configuration/default.nix | 3 +- configuration/services/gitea.nix | 69 ++++++++++++-------------------- 2 files changed, 27 insertions(+), 45 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index bbe474c..0e854c6 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -38,7 +38,7 @@ useDHCP = false; interfaces.eth0.useDHCP = true; - firewall.allowedTCPPorts = [80 443 2222 2221 21025]; + firewall.allowedTCPPorts = [80 443 2222 21025]; }; time.timeZone = "Europe/London"; @@ -82,7 +82,6 @@ domain = config.services.nginx.domain; in { "${domain}" = proxyPassToPort 3002 {serverAliases = ["www.${domain}"];}; - "gitea.${domain}" = proxyPassToPort 3000 {}; }; }; diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 5f9ebd0..cd99951 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -1,48 +1,31 @@ -{config, ...}: { - users = { - extraUsers.gitea = { - uid = config.ids.uids.git; - isSystemUser = true; - description = "Gitea Service"; - group = config.users.extraGroups.gitea.name; - }; - extraGroups.gitea = {gid = config.ids.gids.git;}; +{config, ...}: let + domain = "gitea.${config.services.nginx.domain}"; +in { + services.gitea = { + inherit domain; + enable = true; + + httpAddress = "127.0.0.1"; + database.type = "postgres"; + + ssh.clonePort = 2222; + rootUrl = "https://${domain}/"; + cookieSecure = true; + + appName = "Gitea: Git with a cup of tea"; + disableRegistration = true; }; - virtualisation.pods.gitea = { - hostname = "gitea.tlater.net"; - publish = ["3000:3000" "2221:2221"]; - network = "slirp4netns"; + # Set up SSL + services.nginx.virtualHosts."${domain}" = let + inherit (config.services.gitea) httpAddress httpPort; + in { + forceSSL = true; + enableACME = true; + extraConfig = '' + add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + ''; - containers = { - gitea = { - image = "gitea/gitea:latest"; - volumes = ["gitea:/data:Z" "/etc/localtime:/etc/localtime:ro"]; - dependsOn = ["postgres"]; - - environment = { - DB_TYPE = "postgres"; - DB_HOST = "localhost:5432"; - DB_NAME = "gitea"; - DB_USER = "gitea"; - - USER_UID = toString config.users.extraUsers.gitea.uid; - USER_GID = toString config.users.extraGroups.gitea.gid; - - RUN_MODE = "prod"; - DOMAIN = "gitea.tlater.net"; - SSH_PORT = "2221"; - }; - }; - - postgres = { - image = "postgres:alpine"; - environment = { - POSTGRES_DB = "gitea"; - POSTGRES_USER = "gitea"; - }; - volumes = ["gitea-postgres-14:/var/lib/postgresql/data"]; - }; - }; + locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; }; } From 068e6d5d77f7db3cba04ddea246d7adc766f65ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 12 Oct 2022 19:58:09 +0100 Subject: [PATCH 021/196] webserver: Use a hardened systemd unit instead of a container --- configuration/default.nix | 22 +- configuration/ids.nix | 11 - configuration/services/webserver.nix | 59 ++-- flake.lock | 395 ++++++++++++++++++++------- flake.nix | 13 +- modules/virtualisation/pods.nix | 222 --------------- 6 files changed, 321 insertions(+), 401 deletions(-) delete mode 100644 configuration/ids.nix delete mode 100644 modules/virtualisation/pods.nix diff --git a/configuration/default.nix b/configuration/default.nix index 0e854c6..8f51f0b 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,5 +1,4 @@ { - config, pkgs, lib, ... @@ -10,7 +9,6 @@ ./services/webserver.nix ./services/starbound.nix ./services/postgres.nix - ./ids.nix ./sops.nix ]; @@ -67,30 +65,12 @@ recommendedProxySettings = true; clientMaxBodySize = "10G"; domain = "tlater.net"; - - virtualHosts = let - proxyPassToPort = port: extra: - lib.recursiveUpdate { - forceSSL = true; - enableACME = true; - locations."/".proxyPass = "http://127.0.0.1:${toString port}"; - extraConfig = '' - add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always; - ''; - } - extra; - domain = config.services.nginx.domain; - in { - "${domain}" = proxyPassToPort 3002 {serverAliases = ["www.${domain}"];}; - }; }; security.acme = { - email = "tm@tlater.net"; + defaults.email = "tm@tlater.net"; acceptTerms = true; }; - virtualisation.oci-containers.backend = "podman"; - system.stateVersion = "20.09"; } diff --git a/configuration/ids.nix b/configuration/ids.nix deleted file mode 100644 index 352b4d3..0000000 --- a/configuration/ids.nix +++ /dev/null @@ -1,11 +0,0 @@ -{...}: { - ids.uids = { - # System user ids start at 400 (see nixos/modules/programs/shadow.nix) - webserver = 400; - # The limit is 999 - }; - - ids.gids = { - webserver = 400; - }; -} diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index 093da3d..4a8bee4 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -1,47 +1,26 @@ -{ - config, - pkgs, - ... -}: { - users = { - extraUsers.webserver = { - uid = config.ids.uids.webserver; - group = config.users.extraGroups.webserver.name; - isSystemUser = true; - description = "tlater.net web server user"; +{config, ...}: let + domain = config.services.nginx.domain; +in { + services.tlaternet-webserver = { + enable = true; + listen = { + addr = "127.0.0.1"; + port = 8000; }; - extraGroups.webserver = {gid = config.ids.gids.webserver;}; }; - virtualisation.oci-containers.containers.webserver = { - image = "tlaternet/webserver"; + # Set up SSL + services.nginx.virtualHosts."${domain}" = let + inherit (config.services.tlaternet-webserver.listen) addr port; + in { + serverAliases = ["www.${domain}"]; - imageFile = pkgs.dockerTools.buildImage { - name = "tlaternet/webserver"; - tag = "latest"; - contents = pkgs.tlaternet-webserver.webserver; + forceSSL = true; + enableACME = true; + extraConfig = '' + add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + ''; - config = let - uid = toString config.users.extraUsers.webserver.uid; - gid = toString config.users.extraGroups.webserver.gid; - in { - Cmd = ["tlaternet-webserver"]; - Volumes = {"/srv/mail" = {};}; - Env = [ - "ROCKET_PORT=3002" - "ROCKET_TEMPLATE_DIR=${pkgs.tlaternet-templates.templates}/browser/" - ]; - ExposedPorts = {"3002" = {};}; - User = "${uid}:${gid}"; - }; - }; - - ports = ["3002:3002"]; - volumes = ["tlaternet-mail:/srv/mail"]; - extraOptions = [ - "--hostname=tlater.net" - # Rocket 0.4 doesn't support SIGTERM anyway, so SIGKILL is the cleanest exit possible. - "--stop-signal=SIGKILL" - ]; + locations."/".proxyPass = "http://${addr}:${toString port}"; }; } diff --git a/flake.lock b/flake.lock index c6f9923..11b5c2c 100644 --- a/flake.lock +++ b/flake.lock @@ -1,63 +1,202 @@ { "nodes": { - "flake-utils": { - "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { - "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "naersk": { + "alejandra": { "inputs": { + "fenix": "fenix", + "flakeCompat": "flakeCompat", "nixpkgs": [ "tlaternet-webserver", + "dream2nix", "nixpkgs" ] }, "locked": { - "lastModified": 1632266297, - "narHash": "sha256-J1yeJk6Gud9ef2pEf6aKQemrfg1pVngYDSh+SAY94xk=", - "owner": "nmattia", - "repo": "naersk", - "rev": "ee7edec50b49ab6d69b06d62f1de554efccb1ccd", + "lastModified": 1658427149, + "narHash": "sha256-ToD/1z/q5VHsLMrS2h96vjJoLho59eNRtknOUd19ey8=", + "owner": "kamadorueda", + "repo": "alejandra", + "rev": "f5a22afd2adfb249b4e68e0b33aa1f0fb73fb1be", "type": "github" }, "original": { - "owner": "nmattia", - "repo": "naersk", + "owner": "kamadorueda", + "repo": "alejandra", "type": "github" } }, + "crane": { + "flake": false, + "locked": { + "lastModified": 1661875961, + "narHash": "sha256-f1h/2c6Teeu1ofAHWzrS8TwBPcnN+EEu+z1sRVmMQTk=", + "owner": "ipetkov", + "repo": "crane", + "rev": "d9f394e4e20e97c2a60c3ad82c2b6ef99be19e24", + "type": "github" + }, + "original": { + "owner": "ipetkov", + "repo": "crane", + "type": "github" + } + }, + "devshell": { + "flake": false, + "locked": { + "lastModified": 1653917170, + "narHash": "sha256-FyxOnEE/V4PNEcMU62ikY4FfYPo349MOhMM97HS0XEo=", + "owner": "numtide", + "repo": "devshell", + "rev": "fc7a3e3adde9bbcab68af6d1e3c6eb738e296a92", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "dream2nix": { + "inputs": { + "alejandra": "alejandra", + "crane": "crane", + "devshell": "devshell", + "flake-utils-pre-commit": "flake-utils-pre-commit", + "gomod2nix": "gomod2nix", + "mach-nix": "mach-nix", + "nixpkgs": "nixpkgs_2", + "poetry2nix": "poetry2nix", + "pre-commit-hooks": "pre-commit-hooks" + }, + "locked": { + "lastModified": 1663323895, + "narHash": "sha256-ZmI9C8HNVz2w3OnB79WR/LIgVEY8tDnR8tEPi3hMiJk=", + "owner": "nix-community", + "repo": "dream2nix", + "rev": "25be741ec92c77b8308ca6a7ab89593fe37b6542", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "dream2nix", + "type": "github" + } + }, + "fenix": { + "inputs": { + "nixpkgs": [ + "tlaternet-webserver", + "dream2nix", + "alejandra", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src" + }, + "locked": { + "lastModified": 1657607339, + "narHash": "sha256-HaqoAwlbVVZH2n4P3jN2FFPMpVuhxDy1poNOR7kzODc=", + "owner": "nix-community", + "repo": "fenix", + "rev": "b814c83d9e6aa5a28d0cf356ecfdafb2505ad37d", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "fenix", + "type": "github" + } + }, + "fenix_2": { + "inputs": { + "nixpkgs": [ + "tlaternet-webserver", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src_2" + }, + "locked": { + "lastModified": 1663396212, + "narHash": "sha256-dlK10QPTDYNpJ/vl2QPKOTrqEbQwAR/v2f4+xsetTkw=", + "owner": "nix-community", + "repo": "fenix", + "rev": "263cd7f991c07a9592a6e825bfc37b23b00eb244", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "fenix", + "type": "github" + } + }, + "flake-utils-pre-commit": { + "locked": { + "lastModified": 1644229661, + "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flakeCompat": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "gomod2nix": { + "flake": false, + "locked": { + "lastModified": 1627572165, + "narHash": "sha256-MFpwnkvQpauj799b4QTBJQFEddbD02+Ln5k92QyHOSk=", + "owner": "tweag", + "repo": "gomod2nix", + "rev": "67f22dd738d092c6ba88e420350ada0ed4992ae8", + "type": "github" + }, + "original": { + "owner": "tweag", + "repo": "gomod2nix", + "type": "github" + } + }, + "mach-nix": { + "flake": false, + "locked": { + "lastModified": 1634711045, + "narHash": "sha256-m5A2Ty88NChLyFhXucECj6+AuiMZPHXNbw+9Kcs7F6Y=", + "owner": "DavHau", + "repo": "mach-nix", + "rev": "4433f74a97b94b596fa6cd9b9c0402104aceef5d", + "type": "github" + }, + "original": { + "id": "mach-nix", + "type": "indirect" + } + }, "nixos-hardware": { "locked": { - "lastModified": 1650522846, - "narHash": "sha256-SxWHXRI3qJwswyXAtzsi6PKVY3KLNNnb072KaJthII8=", + "lastModified": 1665321371, + "narHash": "sha256-0SO6MTW0bX6lxZmz1AZW/Xmk+hnTd7/hp1vF7Tp7jg0=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "6b4ebea9093c997c5f275c820e679108de4871ab", + "rev": "236ba4df714131059945d7754c0aa3fbe9d2f74c", "type": "github" }, "original": { @@ -69,51 +208,134 @@ }, "nixpkgs": { "locked": { - "lastModified": 1650501692, - "narHash": "sha256-ApKf0/dc0SyB7zZ6yiiOQgcXAhCXxbSDyihHfRDIzx0=", + "lastModified": 1665466769, + "narHash": "sha256-L+qcHpb4Ac3PipMXJY/Ktbu1+KXy23WCZ8pXWmsf7zY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9887f024766aa27704d1f89f623efd1d063da92a", + "rev": "0b20bf89e0035b6d62ad58f9db8fdbc99c2b01e8", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-21.11", + "ref": "nixos-22.05", "repo": "nixpkgs", "type": "github" } }, + "nixpkgs-22_05": { + "locked": { + "lastModified": 1665279158, + "narHash": "sha256-TpbWNzoJ5RaZ302dzvjY2o//WxtOJuYT3CnDj5N69Hs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "b3783bcfb8ec54e0de26feccfc6cc36b8e202ed5", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "release-22.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1657638268, + "narHash": "sha256-blBNtQSslAFkg0Gym9fWNJk+bPxGSZib4SOcPrmTPi4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d80993b5f885515254746ba6d1917276ee386149", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-unstable", + "type": "indirect" + } + }, + "poetry2nix": { + "flake": false, + "locked": { + "lastModified": 1632969109, + "narHash": "sha256-jPDclkkiAy5m2gGLBlKgH+lQtbF7tL4XxBrbSzw+Ioc=", + "owner": "nix-community", + "repo": "poetry2nix", + "rev": "aee8f04296c39d88155e05d25cfc59dfdd41cc77", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "1.21.0", + "repo": "poetry2nix", + "type": "github" + } + }, + "pre-commit-hooks": { + "inputs": { + "flake-utils": [ + "tlaternet-webserver", + "dream2nix", + "flake-utils-pre-commit" + ], + "nixpkgs": [ + "tlaternet-webserver", + "dream2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1646153636, + "narHash": "sha256-AlWHMzK+xJ1mG267FdT8dCq/HvLCA6jwmx2ZUy5O8tY=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "b6bc0b21e1617e2b07d8205e7fae7224036dfa4b", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, "root": { "inputs": { "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs", "sops-nix": "sops-nix", - "tlaternet-templates": "tlaternet-templates", "tlaternet-webserver": "tlaternet-webserver" } }, - "rust-overlay": { - "inputs": { - "flake-utils": [ - "tlaternet-webserver", - "flake-utils" - ], - "nixpkgs": [ - "tlaternet-webserver", - "nixpkgs" - ] - }, + "rust-analyzer-src": { + "flake": false, "locked": { - "lastModified": 1633400100, - "narHash": "sha256-kHQV7jZ2vVHVI9sfda1mUROVBbQbdfKcbIpKG9WdqGo=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "9c2fc6a62ccbc6f420d71ecac6bf0b84dbbee64f", + "lastModified": 1657557289, + "narHash": "sha256-PRW+nUwuqNTRAEa83SfX+7g+g8nQ+2MMbasQ9nt6+UM=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "caf23f29144b371035b864a1017dbc32573ad56d", "type": "github" }, "original": { - "owner": "oxalica", - "repo": "rust-overlay", + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } + }, + "rust-analyzer-src_2": { + "flake": false, + "locked": { + "lastModified": 1662896065, + "narHash": "sha256-1LkSsXzI1JTAmP/GMTz4fTJd8y/tw8R79l96q+h7mu8=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "2e9f1204ca01c3e20898d4a67c8b84899d394a88", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", "type": "github" } }, @@ -121,14 +343,15 @@ "inputs": { "nixpkgs": [ "nixpkgs" - ] + ], + "nixpkgs-22_05": "nixpkgs-22_05" }, "locked": { - "lastModified": 1649756291, - "narHash": "sha256-KTll8bCINAzIUGaaMrbn9wb5nfhkXRLgmFrWGR/Dku0=", + "lastModified": 1665289655, + "narHash": "sha256-j1Q9mNBhbzeJykhObiXwEGres9qvP4vH7gxdJ+ihkLI=", "owner": "Mic92", "repo": "sops-nix", - "rev": "c2614c4fe61943b3d280ac1892fcebe6e8eaf8c8", + "rev": "0ce0449e6404c4ff9d1b7bd657794ae5ca54deb3", "type": "github" }, "original": { @@ -137,42 +360,20 @@ "type": "github" } }, - "tlaternet-templates": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1633432574, - "narHash": "sha256-IjGaJAQuFIJ1Is9gtHXsryPOnTDE6tlA61PUKuS8dzw=", - "ref": "master", - "rev": "555a2949bdf643c74b535bd0c623d98f99d33628", - "revCount": 61, - "type": "git", - "url": "https://gitea.tlater.net/tlaternet/tlaternet-templates.git" - }, - "original": { - "type": "git", - "url": "https://gitea.tlater.net/tlaternet/tlaternet-templates.git" - } - }, "tlaternet-webserver": { "inputs": { - "flake-utils": "flake-utils_2", - "naersk": "naersk", + "dream2nix": "dream2nix", + "fenix": "fenix_2", "nixpkgs": [ "nixpkgs" - ], - "rust-overlay": "rust-overlay" + ] }, "locked": { - "lastModified": 1633433130, - "narHash": "sha256-jkW+HV8cJvE86gppOEXQl2ke+bDHJ7SAp8eJp8pJ0N8=", + "lastModified": 1665402451, + "narHash": "sha256-zWaEzUJh0WFVoaLQsMoIj2D+QFhUBJw+f+XzoYqw3es=", "ref": "master", - "rev": "1232950c06ae16bf17fb16ac1f5f2231e971936b", - "revCount": 16, + "rev": "6c29bc5db001e75f5ca06fec726369b87d007a03", + "revCount": 47, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, diff --git a/flake.nix b/flake.nix index 5ff0a51..5603e08 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; nixos-hardware.url = "github:nixos/nixos-hardware/master"; sops-nix = { url = "github:Mic92/sops-nix"; @@ -13,10 +13,6 @@ url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs.nixpkgs.follows = "nixpkgs"; }; - tlaternet-templates = { - url = "git+https://gitea.tlater.net/tlaternet/tlaternet-templates.git"; - inputs.nixpkgs.follows = "nixpkgs"; - }; }; outputs = { @@ -25,16 +21,11 @@ nixos-hardware, sops-nix, tlaternet-webserver, - tlaternet-templates, }: let system = "x86_64-linux"; overlays = [ (final: prev: { - tlaternet-webserver = - tlaternet-webserver.legacyPackages.${prev.system}.packages; - tlaternet-templates = - tlaternet-templates.legacyPackages.${prev.system}.packages; local = import ./pkgs { pkgs = prev; }; @@ -59,6 +50,7 @@ (import ./configuration/linode.nix) (import ./configuration/hardware-configuration.nix) sops-nix.nixosModules.sops + tlaternet-webserver.nixosModules.default ]; }; @@ -74,6 +66,7 @@ (import ./configuration) sops-nix.nixosModules.sops + tlaternet-webserver.nixosModules.default ({lib, ...}: { users.users.tlater.password = "insecure"; diff --git a/modules/virtualisation/pods.nix b/modules/virtualisation/pods.nix deleted file mode 100644 index 5a96cc8..0000000 --- a/modules/virtualisation/pods.nix +++ /dev/null @@ -1,222 +0,0 @@ -{ - lib, - config, - options, - ... -}: -with lib; let - cfg = config.virtualisation.pods; - list-to-args = arg: list: - concatStringsSep " " (map (e: "--${arg}=${escapeShellArg e}") list); - possibly-unset-arg = arg: val: (optionalString (val != null) "--${arg}=${escapeShellArg val}"); - - mkPod = name: pod: rec { - path = [config.virtualisation.podman.package]; - - wants = ["network.target"]; - after = ["network-online.target"]; - wantedBy = ["multi-user.target" "default.target"]; - - environment.PODMAN_SYSTEMD_UNIT = "%n"; - - preStart = concatStringsSep " " [ - "mkdir -p /run/podman/pods/ ;" - "podman pod create" - "--infra-conmon-pidfile=${escapeShellArg "/run/podman/pods/${name}.pid"}" - "--name=${escapeShellArg name}" - "--replace" - (list-to-args "add-host" pod.added-hosts) - (possibly-unset-arg "cgroup-parent" pod.cgroup-parent) - (list-to-args "dns" pod.dns) - (list-to-args "dns-opt" pod.dns-opt) - (list-to-args "dns-search" pod.dns-search) - (possibly-unset-arg "hostname" pod.hostname) - (possibly-unset-arg "infra" pod.infra) - (possibly-unset-arg "infra-command" pod.infra-command) - (possibly-unset-arg "infra-image" pod.infra-image) - (possibly-unset-arg "ip" pod.ip) - (possibly-unset-arg "mac-address" pod.mac-address) - (possibly-unset-arg "network" pod.network) - (possibly-unset-arg "network-alias" pod.network-alias) - (possibly-unset-arg "no-hosts" pod.no-hosts) - (list-to-args "publish" pod.publish) - (list-to-args "share" pod.share) - ]; - - script = "podman pod start ${escapeShellArg name}"; - preStop = "podman pod stop ${escapeShellArg name}"; - # `podman generate systemd` generates a second stop after the - # first; not sure why but clearly it's recommended. - postStop = preStop; - - serviceConfig = rec { - Type = "forking"; - TimeoutStopSec = 70; - Restart = "on-failure"; - PIDFile = "/run/podman/pods/${name}.pid"; - }; - }; -in { - options.virtualisation.pods = mkOption { - type = with types; - attrsOf (submodule { - options = { - added-hosts = mkOption { - type = listOf str; - default = []; - description = "Additional hosts to add to /etc/hosts for each container."; - example = literalExample '' - [ "database:10.0.0.1" ] - ''; - }; - - cgroup-parent = mkOption { - type = nullOr str; - default = null; - description = "The cgroups path under which the pod cgroup will be created."; - }; - - dns = mkOption { - type = listOf str; - default = []; - description = "The dns servers to set in /etc/resolv.conf."; - }; - - dns-opt = mkOption { - type = listOf str; - default = []; - description = "dns options to set in /etc/resolv.conf."; - }; - - dns-search = mkOption { - type = listOf str; - default = []; - description = "Search domains to set in /etc/resolv.conf."; - }; - - hostname = mkOption { - type = nullOr str; - default = null; - description = "The pod hostname."; - }; - - infra = mkOption { - type = nullOr bool; - default = null; - description = "Whether to create the infra container for the pod."; - }; - - infra-command = mkOption { - type = nullOr str; - default = null; - description = "The command to run in the infra container."; - }; - - infra-image = mkOption { - type = nullOr str; - default = null; - description = "The image to use for the infra container."; - }; - - ip = mkOption { - type = nullOr str; - default = null; - description = "A static IP address for the pod network."; - }; - - # TODO: set up label file stuff. - # - # labels = mkOption {}; - - mac-address = mkOption { - type = nullOr str; - default = null; - description = "A static mac address for the pod network."; - }; - - network = mkOption { - type = nullOr str; - default = null; - description = "Network configuration for the pod."; - }; - - network-alias = mkOption { - type = nullOr str; - default = null; - description = "DNS alias for the pod."; - }; - - no-hosts = mkOption { - type = nullOr bool; - default = null; - description = "Whether to disable /etc/hosts creation for the pod."; - }; - - publish = mkOption { - type = listOf str; - default = []; - description = "List of ports to publish from the pod."; - }; - - share = mkOption { - type = listOf str; - default = []; - description = "List of kernel namespaces to share."; - }; - - containers = options.virtualisation.oci-containers.containers; - }; - }); - default = {}; - description = "Podman pods to run as systemd services."; - }; - - config = let - # Merge a list of attribute sets together - # - # TODO: See if there's a generic version for this somewhere in the - # pkgs lib? - mergeAttrs = attrList: foldr (a: b: a // b) {} attrList; - - # Create services for all defined pods - pod-services = mapAttrs' (n: v: nameValuePair "pod-${n}" (mkPod n v)) cfg; - - # Override the systemd-specific settings of containers defined in - # pods. - # - # I.e., make a systemd unit dependency on the pod service. - pod-container-services = mergeAttrs (mapAttrsToList (pname: pod: - mapAttrs' (cname: container: - nameValuePair "podman-${pname}-${cname}" rec { - after = ["pod-${pname}.service"]; - requires = after; - }) - pod.containers) - cfg); - - # Override the oci-container settings for containers defined in pods. - # - # I.e., set the --pod=podname setting, and update the dependsOn so - # it points to containers in the same pod. - podifyContainer = container: podname: - container - // { - dependsOn = - map (dependency: "${podname}-${dependency}") container.dependsOn; - extraOptions = container.extraOptions ++ ["--pod=${podname}"]; - }; - in - lib.mkIf (cfg != {}) { - virtualisation.podman.enable = true; - virtualisation.oci-containers.backend = "podman"; - - systemd.services = pod-services // pod-container-services; - - virtualisation.oci-containers.containers = mergeAttrs (mapAttrsToList - (pname: pod: - mapAttrs' (cname: container: - nameValuePair "${pname}-${cname}" (podifyContainer container pname)) - pod.containers) - cfg); - }; -} From e8b16459d95d45d4581e159d970e5dd7c9d4d977 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 13 Oct 2022 00:03:32 +0100 Subject: [PATCH 022/196] treewide: Refactor in order to clean up flake.nix --- configuration/default.nix | 12 ++ .../linode/default.nix} | 4 + .../linode}/hardware-configuration.nix | 0 configuration/hardware-specific/vm.nix | 17 +++ flake.lock | 17 --- flake.nix | 139 ++++++++---------- lib/default.nix | 10 ++ 7 files changed, 101 insertions(+), 98 deletions(-) rename configuration/{linode.nix => hardware-specific/linode/default.nix} (87%) rename configuration/{ => hardware-specific/linode}/hardware-configuration.nix (100%) create mode 100644 configuration/hardware-specific/vm.nix create mode 100644 lib/default.nix diff --git a/configuration/default.nix b/configuration/default.nix index 8f51f0b..cc51bac 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,9 +1,13 @@ { pkgs, lib, + modulesPath, ... }: { imports = [ + "${modulesPath}/profiles/headless.nix" + (import ../modules) + ./services/gitea.nix ./services/nextcloud.nix ./services/webserver.nix @@ -12,6 +16,14 @@ ./sops.nix ]; + nixpkgs.overlays = [ + (final: prev: { + local = import ../pkgs { + pkgs = prev; + }; + }) + ]; + nix = { package = pkgs.nixFlakes; extraOptions = '' diff --git a/configuration/linode.nix b/configuration/hardware-specific/linode/default.nix similarity index 87% rename from configuration/linode.nix rename to configuration/hardware-specific/linode/default.nix index 7d6a780..3cd3570 100644 --- a/configuration/linode.nix +++ b/configuration/hardware-specific/linode/default.nix @@ -1,4 +1,8 @@ { + imports = [ + ./hardware-configuration.nix + ]; + # Required for the lish console boot.kernelParams = ["console=ttyS0,19200n8"]; diff --git a/configuration/hardware-configuration.nix b/configuration/hardware-specific/linode/hardware-configuration.nix similarity index 100% rename from configuration/hardware-configuration.nix rename to configuration/hardware-specific/linode/hardware-configuration.nix diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix new file mode 100644 index 0000000..aed39e4 --- /dev/null +++ b/configuration/hardware-specific/vm.nix @@ -0,0 +1,17 @@ +{lib, ...}: { + users.users.tlater.password = "insecure"; + + # Disable graphical tty so -curses works + boot.kernelParams = ["nomodeset"]; + + # Sets the base domain for nginx to localhost so that we + # can easily test locally with the VM. + services.nginx.domain = lib.mkOverride 99 "localhost"; + + # Use the staging secrets + sops.defaultSopsFile = lib.mkOverride 99 ../../keys/staging.yaml; + + # # Set up VM settings to match real VPS + # virtualisation.memorySize = 3941; + # virtualisation.cores = 2; +} diff --git a/flake.lock b/flake.lock index 11b5c2c..c44d4a0 100644 --- a/flake.lock +++ b/flake.lock @@ -190,22 +190,6 @@ "type": "indirect" } }, - "nixos-hardware": { - "locked": { - "lastModified": 1665321371, - "narHash": "sha256-0SO6MTW0bX6lxZmz1AZW/Xmk+hnTd7/hp1vF7Tp7jg0=", - "owner": "nixos", - "repo": "nixos-hardware", - "rev": "236ba4df714131059945d7754c0aa3fbe9d2f74c", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "master", - "repo": "nixos-hardware", - "type": "github" - } - }, "nixpkgs": { "locked": { "lastModified": 1665466769, @@ -299,7 +283,6 @@ }, "root": { "inputs": { - "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" diff --git a/flake.nix b/flake.nix index 5603e08..a67b314 100644 --- a/flake.nix +++ b/flake.nix @@ -3,12 +3,10 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; - nixos-hardware.url = "github:nixos/nixos-hardware/master"; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; - tlaternet-webserver = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs.nixpkgs.follows = "nixpkgs"; @@ -18,118 +16,97 @@ outputs = { self, nixpkgs, - nixos-hardware, sops-nix, tlaternet-webserver, }: let system = "x86_64-linux"; - - overlays = [ - (final: prev: { - local = import ./pkgs { - pkgs = prev; - }; - }) - ]; - - pkgs = import nixpkgs {inherit system overlays;}; - sops-pkgs = sops-nix.packages.${system}; in { - nixosConfigurations = { - tlaternet = nixpkgs.lib.nixosSystem { - inherit system; - - modules = [ - ({modulesPath, ...}: { - imports = [(modulesPath + "/profiles/headless.nix")]; - nixpkgs.overlays = overlays; - }) - (import ./modules) - - (import ./configuration) - (import ./configuration/linode.nix) - (import ./configuration/hardware-configuration.nix) + ################## + # Configurations # + ################## + nixosConfigurations = let + # Modules that should be generic to all systems + genericModule = {...}: { + imports = [ + # Inject flake dependencies sops-nix.nixosModules.sops tlaternet-webserver.nixosModules.default + + # Import actual configuration + (import ./configuration) + ]; + }; + in { + # The actual system definition + tlaternet = nixpkgs.lib.nixosSystem { + inherit system; + modules = [ + genericModule + (import ./configuration/hardware-specific/linode) ]; }; + # A qemu VM to test the above with vm = nixpkgs.lib.nixosSystem { inherit system; - modules = [ - ({modulesPath, ...}: { - imports = [(modulesPath + "/profiles/headless.nix")]; - nixpkgs.overlays = overlays; - }) - (import ./modules) - - (import ./configuration) - sops-nix.nixosModules.sops - tlaternet-webserver.nixosModules.default - ({lib, ...}: { - users.users.tlater.password = "insecure"; - - # Disable graphical tty so -curses works - boot.kernelParams = ["nomodeset"]; - - # Sets the base domain for nginx to localhost so that we - # can easily test locally with the VM. - services.nginx.domain = lib.mkOverride 99 "localhost"; - - # Use the staging secrets - sops.defaultSopsFile = lib.mkOverride 99 ./keys/staging.yaml; - - # # Set up VM settings to match real VPS - # virtualisation.memorySize = 3941; - # virtualisation.cores = 2; - }) + genericModule + (import ./configuration/hardware-specific/vm.nix) ]; }; }; + #################### + # Helper functions # + #################### + lib = import ./lib {lib = nixpkgs.lib;}; + + #################### + # VM launch script # + #################### apps.${system}.default = let inherit (self.nixosConfigurations.vm.config.system.build) vm; inherit (nixpkgs.legacyPackages.${system}) writeShellScript; - inherit (nixpkgs.lib.attrsets) mapAttrsToList; - inherit (nixpkgs.lib.strings) concatStringsSep; - ports = { + qemuNetOpts = self.lib.makeQemuNetOpts { "2222" = "2222"; "3080" = "80"; "3443" = "443"; - "2221" = "2221"; "21025" = "21025"; # Starbound }; - QEMU_NET_OPTS = - concatStringsSep "," - (mapAttrsToList - (host: vm: "hostfwd=::${host}-:${vm}") - ports); in { type = "app"; program = builtins.toString (writeShellScript "run-vm" '' export QEMU_OPTS="-m 3941 -smp 2 -curses" - export QEMU_NET_OPTS="${QEMU_NET_OPTS}" + export QEMU_NET_OPTS="${qemuNetOpts}" "${vm}/bin/run-tlaternet-vm" ''); }; - devShells.${system}.default = pkgs.mkShell { - sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; - nativeBuildInputs = [ - sops-pkgs.sops-import-keys-hook - ]; - buildInputs = with pkgs; [ - nixfmt - git-lfs - sops-pkgs.sops-init-gpg-key - ]; + ########################### + # Development environment # + ########################### + devShells.${system}.default = let + inherit (sops-nix.packages.${system}) sops-import-keys-hook sops-init-gpg-key; + deploy-rs-bin = deploy-rs.packages.${system}.default; + pkgs = nixpkgs.legacyPackages.${system}; + in + nixpkgs.legacyPackages.${system}.mkShell { + sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; + nativeBuildInputs = [ + sops-import-keys-hook + ]; + packages = with pkgs; [ + nixfmt + git-lfs + sops-init-gpg-key + deploy-rs-bin + ]; - shellHook = '' - # Work around sudo requiring a full terminal when deploying to - # a remote host - export NIX_SSHOPTS="-t" - ''; - }; + shellHook = '' + # Work around sudo requiring a full terminal when deploying to + # a remote host + export NIX_SSHOPTS="-t" + ''; + }; }; } diff --git a/lib/default.nix b/lib/default.nix new file mode 100644 index 0000000..20d874d --- /dev/null +++ b/lib/default.nix @@ -0,0 +1,10 @@ +{lib}: let + inherit (lib.attrsets) mapAttrsToList; + inherit (lib.strings) concatStringsSep; +in { + makeQemuNetOpts = portMapping: + concatStringsSep "," + (mapAttrsToList + (host: vm: "hostfwd=::${host}-:${vm}") + portMapping); +} From 78ecfd63a184284e67db3cae98d0e478f7ab1945 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 13 Oct 2022 00:30:07 +0100 Subject: [PATCH 023/196] starbound: Fix post-update issues --- configuration/default.nix | 2 +- pkgs/default.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index cc51bac..52be9a1 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -35,7 +35,7 @@ }; nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) ["steam-runtime" "steamcmd"]; + builtins.elem (lib.getName pkg) ["steam-original" "steam-runtime" "steamcmd"]; # Optimization for minecraft servers, see: # https://bugs.mojang.com/browse/MC-183518 diff --git a/pkgs/default.nix b/pkgs/default.nix index c92874b..55bf74a 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,5 +1,5 @@ {pkgs, ...}: let - inherit (pkgs.lib) callPackage; + inherit (pkgs) callPackage; in { starbound = callPackage ./starbound {}; } From 1ddf23bd01cc5031622d17dcc9acdc208cafbd24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 13 Oct 2022 00:30:29 +0100 Subject: [PATCH 024/196] nextcloud: Update nextcloud version --- configuration/services/nextcloud.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 9b08af9..ce43280 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -4,7 +4,7 @@ ... }: let inherit (pkgs) fetchNextcloudApp; - nextcloud = pkgs.nextcloud23; + nextcloud = pkgs.nextcloud24; hostName = "nextcloud.${config.services.nginx.domain}"; in { services.nextcloud = { From 325e8a0ea115a95ea7babe68a6461f2ed0161ad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 13 Oct 2022 00:31:08 +0100 Subject: [PATCH 025/196] flake.nix: Add deploy-rs for deployment management --- flake.lock | 84 ++++++++++++++++++++++++++++++++++++++++++++++++------ flake.nix | 34 +++++++++++++++++----- 2 files changed, 103 insertions(+), 15 deletions(-) diff --git a/flake.lock b/flake.lock index c44d4a0..d144fcb 100644 --- a/flake.lock +++ b/flake.lock @@ -40,6 +40,26 @@ "type": "github" } }, + "deploy-rs": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs": "nixpkgs", + "utils": "utils" + }, + "locked": { + "lastModified": 1659725433, + "narHash": "sha256-1ZxuK67TL29YLw88vQ18Y2Y6iYg8Jb7I6/HVzmNB6nM=", + "owner": "serokell", + "repo": "deploy-rs", + "rev": "41f15759dd8b638e7b4f299730d94d5aa46ab7eb", + "type": "github" + }, + "original": { + "owner": "serokell", + "repo": "deploy-rs", + "type": "github" + } + }, "devshell": { "flake": false, "locked": { @@ -64,7 +84,7 @@ "flake-utils-pre-commit": "flake-utils-pre-commit", "gomod2nix": "gomod2nix", "mach-nix": "mach-nix", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "poetry2nix": "poetry2nix", "pre-commit-hooks": "pre-commit-hooks" }, @@ -128,6 +148,22 @@ "type": "github" } }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1648199409, + "narHash": "sha256-JwPKdC2PoVBkG6E+eWw3j6BMR6sL3COpYWfif7RVb8Y=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "64a525ee38886ab9028e6f61790de0832aa3ef03", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-utils-pre-commit": { "locked": { "lastModified": 1644229661, @@ -192,16 +228,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1665466769, - "narHash": "sha256-L+qcHpb4Ac3PipMXJY/Ktbu1+KXy23WCZ8pXWmsf7zY=", - "owner": "nixos", + "lastModified": 1648219316, + "narHash": "sha256-Ctij+dOi0ZZIfX5eMhgwugfvB+WZSrvVNAyAuANOsnQ=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "0b20bf89e0035b6d62ad58f9db8fdbc99c2b01e8", + "rev": "30d3d79b7d3607d56546dd2a6b49e156ba0ec634", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-22.05", + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -223,6 +259,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1665466769, + "narHash": "sha256-L+qcHpb4Ac3PipMXJY/Ktbu1+KXy23WCZ8pXWmsf7zY=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "0b20bf89e0035b6d62ad58f9db8fdbc99c2b01e8", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-22.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1657638268, "narHash": "sha256-blBNtQSslAFkg0Gym9fWNJk+bPxGSZib4SOcPrmTPi4=", @@ -283,7 +335,8 @@ }, "root": { "inputs": { - "nixpkgs": "nixpkgs", + "deploy-rs": "deploy-rs", + "nixpkgs": "nixpkgs_2", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" } @@ -364,6 +417,21 @@ "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" } + }, + "utils": { + "locked": { + "lastModified": 1648297722, + "narHash": "sha256-W+qlPsiZd8F3XkzXOzAoR+mpFqzm3ekQkJNa+PIh1BQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "0f8662f1319ad6abf89b3380dd2722369fc51ade", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index a67b314..ec91b53 100644 --- a/flake.nix +++ b/flake.nix @@ -3,6 +3,7 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; + deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; @@ -17,6 +18,7 @@ self, nixpkgs, sops-nix, + deploy-rs, tlaternet-webserver, }: let system = "x86_64-linux"; @@ -56,6 +58,29 @@ }; }; + ############################ + # Deployment configuration # + ############################ + deploy.nodes.tlaternet = { + hostname = "tlater.net"; + + profiles.system = { + user = "root"; + path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.tlaternet; + }; + + sshUser = "tlater"; + sshOpts = ["-t" "-p" "2222"]; + fastConnection = true; + # Currently broken, see https://github.com/serokell/deploy-rs/issues/78 + magicRollback = false; + }; + + ######### + # Tests # + ######### + checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; + #################### # Helper functions # #################### @@ -76,7 +101,7 @@ in { type = "app"; program = builtins.toString (writeShellScript "run-vm" '' - export QEMU_OPTS="-m 3941 -smp 2 -curses" + export QEMU_OPTS="-m 3941 -smp 2 -display curses" export QEMU_NET_OPTS="${qemuNetOpts}" "${vm}/bin/run-tlaternet-vm" ''); @@ -95,18 +120,13 @@ nativeBuildInputs = [ sops-import-keys-hook ]; + packages = with pkgs; [ nixfmt git-lfs sops-init-gpg-key deploy-rs-bin ]; - - shellHook = '' - # Work around sudo requiring a full terminal when deploying to - # a remote host - export NIX_SSHOPTS="-t" - ''; }; }; } From c4fa991b621d1008abea1958477d2a1c17ece531 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 14 Oct 2022 01:11:15 +0100 Subject: [PATCH 026/196] treewide: Add fail2ban --- configuration/default.nix | 21 +++++++++++++++++++++ configuration/services/gitea.nix | 19 +++++++++++++++++++ configuration/services/nextcloud.nix | 23 +++++++++++++++++++++++ 3 files changed, 63 insertions(+) diff --git a/configuration/default.nix b/configuration/default.nix index 52be9a1..da5b45b 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -84,5 +84,26 @@ acceptTerms = true; }; + services.fail2ban = { + enable = true; + extraPackages = [pkgs.ipset]; + banaction = "iptables-ipset-proto6-allports"; + bantime-increment.enable = true; + + jails = { + nginx-botsearch = '' + enabled = true + logpath = /var/log/nginx/access.log + ''; + }; + + ignoreIP = [ + "127.0.0.0/8" + "10.0.0.0/8" + "172.16.0.0/12" + "192.168.0.0/16" + ]; + }; + system.stateVersion = "20.09"; } diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index cd99951..f346097 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -28,4 +28,23 @@ in { locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; }; + + # Block repeated failed login attempts + # + # TODO(tlater): Update to the new regex, since apparently this one + # is deprecated (but the new one doesn't work on the current version + # of gitea yet): https://docs.gitea.io/en-us/fail2ban-setup/ + environment.etc = { + "fail2ban/filter.d/gitea.conf".text = '' + [Definition] + failregex = .*(Failed authentication attempt|invalid credentials|Attempted access of unknown user).* from + journalmatch = _SYSTEMD_UNIT=gitea.service + _COMM=gitea + SYSLOG_IDENTIFIER=gitea + ''; + }; + + services.fail2ban.jails = { + gitea = '' + enabled = true + ''; + }; } diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index ce43280..070cd7e 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -96,4 +96,27 @@ in { forceSSL = true; enableACME = true; }; + + # Block repeated failed login attempts + environment.etc = { + "fail2ban/filter.d/nextcloud.conf".text = '' + [Definition] + _groupsre = (?:(?:,?\s*"\w+":(?:"[^"]+"|\w+))*) + failregex = \{%(_groupsre)s,?\s*"remoteAddr":""%(_groupsre)s,?\s*"message":"Login failed: + \{%(_groupsre)s,?\s*"remoteAddr":""%(_groupsre)s,?\s*"message":"Trusted domain error. + datepattern = ,?\s*"time"\s*:\s*"%%Y-%%m-%%d[T ]%%H:%%M:%%S(%%z)?" + journalmatch = SYSLOG_IDENTIFIER=Nextcloud + ''; + }; + + services.fail2ban.jails = { + nextcloud = '' + enabled = true + + # Nextcloud does some throttling already, so we need to set + # these to something bigger. + findtime = 43200 + bantime = 86400 + ''; + }; } From 61d3008bc3c95412d186ab9e9d384ac23251d764 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 17 Oct 2022 11:00:02 +0100 Subject: [PATCH 027/196] nextcloud: Fetch apps using nvfetcher --- configuration/default.nix | 1 + configuration/services/nextcloud.nix | 50 +----------- flake.lock | 54 +++++++++++++ flake.nix | 46 +++++++---- pkgs/_sources_nextcloud/generated.json | 107 +++++++++++++++++++++++++ pkgs/_sources_nextcloud/generated.nix | 60 ++++++++++++++ pkgs/default.nix | 21 ++++- pkgs/mkNextcloudApp.nix | 13 +++ pkgs/nextcloud-apps.toml | 32 ++++++++ 9 files changed, 318 insertions(+), 66 deletions(-) create mode 100644 pkgs/_sources_nextcloud/generated.json create mode 100644 pkgs/_sources_nextcloud/generated.nix create mode 100644 pkgs/mkNextcloudApp.nix create mode 100644 pkgs/nextcloud-apps.toml diff --git a/configuration/default.nix b/configuration/default.nix index da5b45b..f81357b 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -20,6 +20,7 @@ (final: prev: { local = import ../pkgs { pkgs = prev; + lib = prev.lib; }; }) ]; diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 070cd7e..fddddde 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -33,54 +33,8 @@ in { # # Adopt whatever upstream does with this: # https://github.com/nextcloud/server/issues/4917 - apporder = pkgs.fetchNextcloudApp { - name = "apporder"; - url = "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz"; - version = "0.15.0"; - sha256 = "sha256-p3VWxTYDCO2NePq6oLM8tBVqYkvoB7itqxp7IZwGDnE="; - }; - - bookmarks = pkgs.fetchNextcloudApp { - name = "bookmarks"; - url = "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz"; - version = "11.0.4"; - sha256 = "sha256-URqtzaCx8FEZHCDP1wSBUFNs+x50jesRtWi+xOU1oXM="; - }; - - calendar = pkgs.fetchNextcloudApp { - name = "calendar"; - url = "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.0/calendar-v3.5.0.tar.gz"; - version = "3.5.0"; - sha256 = "sha256-+LRGl9h40AQdWN9SW+NqGwTafAGwV07Af8nVs3pUCm0="; - }; - - contacts = pkgs.fetchNextcloudApp { - name = "contacts"; - url = "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz"; - version = "4.2.2"; - sha256 = "sha256-GTiyZsUHBXPgQ17DHAihmt2W/ZnAjDwfgwnujkRwk6A="; - }; - - cookbook = pkgs.fetchNextcloudApp { - name = "cookbook"; - url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.15/Cookbook-0.9.15.tar.gz"; - version = "0.9.15"; - sha256 = "sha256-v64rLGyMQOdStyivpJsKrNxwumVQvyK3CnHtZ+K+elE="; - }; - - news = pkgs.fetchNextcloudApp { - name = "news"; - url = "https://github.com/nextcloud/news/releases/download/18.2.0/news.tar.gz"; - version = "18.2.0"; - sha256 = "sha256-eS0cFwJmYfGGJmA02AOWO/OXfqfyI71u2GataDj18DE="; - }; - - notes = pkgs.fetchNextcloudApp { - name = "notes"; - url = "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz"; - version = "4.5.1"; - sha256 = "sha256-rd3uVkVtARX4enRAWm1ivV468lboYZnYe7/zsqaHYpk="; - }; + inherit (pkgs.local) apporder; + inherit (pkgs.local) bookmarks calendar contacts cookbook news notes; }; # TODO(tlater): Add redis config. This will be much easier diff --git a/flake.lock b/flake.lock index d144fcb..a5fc6e4 100644 --- a/flake.lock +++ b/flake.lock @@ -164,6 +164,37 @@ "type": "github" } }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "flake-utils-pre-commit": { "locked": { "lastModified": 1644229661, @@ -289,6 +320,28 @@ "type": "indirect" } }, + "nvfetcher": { + "inputs": { + "flake-compat": "flake-compat_2", + "flake-utils": "flake-utils", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1664550666, + "narHash": "sha256-eXfMRd9uItEp3PsYI31FSVGPG9dVC6yF++65ZrGwW8A=", + "owner": "berberman", + "repo": "nvfetcher", + "rev": "9763ad40d59a044e90726653d9253efaeeb053b2", + "type": "github" + }, + "original": { + "owner": "berberman", + "repo": "nvfetcher", + "type": "github" + } + }, "poetry2nix": { "flake": false, "locked": { @@ -337,6 +390,7 @@ "inputs": { "deploy-rs": "deploy-rs", "nixpkgs": "nixpkgs_2", + "nvfetcher": "nvfetcher", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" } diff --git a/flake.nix b/flake.nix index ec91b53..35e3792 100644 --- a/flake.nix +++ b/flake.nix @@ -8,6 +8,10 @@ url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; + nvfetcher = { + url = "github:berberman/nvfetcher"; + inputs.nixpkgs.follows = "nixpkgs"; + }; tlaternet-webserver = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs.nixpkgs.follows = "nixpkgs"; @@ -18,6 +22,7 @@ self, nixpkgs, sops-nix, + nvfetcher, deploy-rs, tlaternet-webserver, }: let @@ -89,22 +94,35 @@ #################### # VM launch script # #################### - apps.${system}.default = let - inherit (self.nixosConfigurations.vm.config.system.build) vm; + apps.${system} = let inherit (nixpkgs.legacyPackages.${system}) writeShellScript; - qemuNetOpts = self.lib.makeQemuNetOpts { - "2222" = "2222"; - "3080" = "80"; - "3443" = "443"; - "21025" = "21025"; # Starbound - }; in { - type = "app"; - program = builtins.toString (writeShellScript "run-vm" '' - export QEMU_OPTS="-m 3941 -smp 2 -display curses" - export QEMU_NET_OPTS="${qemuNetOpts}" - "${vm}/bin/run-tlaternet-vm" - ''); + default = let + inherit (self.nixosConfigurations.vm.config.system.build) vm; + qemuNetOpts = self.lib.makeQemuNetOpts { + "2222" = "2222"; + "3080" = "80"; + "3443" = "443"; + "21025" = "21025"; # Starbound + }; + in { + type = "app"; + program = builtins.toString (writeShellScript "run-vm" '' + export QEMU_OPTS="-m 3941 -smp 2 -display curses" + export QEMU_NET_OPTS="${qemuNetOpts}" + "${vm}/bin/run-tlaternet-vm" + ''); + }; + + update-nextcloud-apps = let + nvfetcher-bin = "${nvfetcher.defaultPackage.${system}}/bin/nvfetcher"; + in { + type = "app"; + program = builtins.toString (writeShellScript "update-nextcloud-apps" '' + cd "$(git rev-parse --show-toplevel)/pkgs" + ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml + ''); + }; }; ########################### diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json new file mode 100644 index 0000000..1faeeb8 --- /dev/null +++ b/pkgs/_sources_nextcloud/generated.json @@ -0,0 +1,107 @@ +{ + "apporder": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "apporder", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-2y2FHxli9mqlPvw9mABi09Z96OfB1AFD+XmuV5aOCxY=", + "type": "url", + "url": "https://github.com/juliushaertl/apporder/archive/v0.15.0.tar.gz" + }, + "version": "v0.15.0" + }, + "bookmarks": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "bookmarks", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-X6Mg0jQ8EYPctiZ3tDtG4LUPwXRnDj9CJrJZrUs3Z/8=", + "type": "url", + "url": "https://github.com/nextcloud/bookmarks/archive/v11.0.4.tar.gz" + }, + "version": "v11.0.4" + }, + "calendar": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "calendar", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-keeWi/o+mOV7z5QNATJKwrd0olbCNdrK7YpGHg9qolk=", + "type": "url", + "url": "https://github.com/nextcloud-releases/calendar/archive/v3.5.0.tar.gz" + }, + "version": "v3.5.0" + }, + "contacts": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "contacts", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-4dEEy8zSjZYsClO6u+oWfvIlPYJq9+m1+a/mHTQRlaY=", + "type": "url", + "url": "https://github.com/nextcloud-releases/contacts/archive/v4.2.2.tar.gz" + }, + "version": "v4.2.2" + }, + "cookbook": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "cookbook", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-TkUCCa7wP6leQbTsxKgD21Tf9CONVnbmvXCFhVBITZw=", + "type": "url", + "url": "https://github.com/nextcloud/cookbook/archive/v0.9.15.tar.gz" + }, + "version": "v0.9.15" + }, + "news": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "news", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-eS0cFwJmYfGGJmA02AOWO/OXfqfyI71u2GataDj18DE=", + "type": "url", + "url": "https://github.com/nextcloud/news/releases/download/18.2.0/news.tar.gz" + }, + "version": "18.2.0" + }, + "notes": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "notes", + "passthru": null, + "pinned": false, + "src": { + "name": null, + "sha256": "sha256-qhhaQyb9LgLza4CAcNZbl97xa271M7Wqmw8TtBEFpXk=", + "type": "url", + "url": "https://github.com/nextcloud/notes/archive/v4.5.1.tar.gz" + }, + "version": "v4.5.1" + } +} \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix new file mode 100644 index 0000000..5da7ca4 --- /dev/null +++ b/pkgs/_sources_nextcloud/generated.nix @@ -0,0 +1,60 @@ +# This file was generated by nvfetcher, please do not modify it manually. +{ fetchgit, fetchurl, fetchFromGitHub }: +{ + apporder = { + pname = "apporder"; + version = "v0.15.0"; + src = fetchurl { + url = "https://github.com/juliushaertl/apporder/archive/v0.15.0.tar.gz"; + sha256 = "sha256-2y2FHxli9mqlPvw9mABi09Z96OfB1AFD+XmuV5aOCxY="; + }; + }; + bookmarks = { + pname = "bookmarks"; + version = "v11.0.4"; + src = fetchurl { + url = "https://github.com/nextcloud/bookmarks/archive/v11.0.4.tar.gz"; + sha256 = "sha256-X6Mg0jQ8EYPctiZ3tDtG4LUPwXRnDj9CJrJZrUs3Z/8="; + }; + }; + calendar = { + pname = "calendar"; + version = "v3.5.0"; + src = fetchurl { + url = "https://github.com/nextcloud-releases/calendar/archive/v3.5.0.tar.gz"; + sha256 = "sha256-keeWi/o+mOV7z5QNATJKwrd0olbCNdrK7YpGHg9qolk="; + }; + }; + contacts = { + pname = "contacts"; + version = "v4.2.2"; + src = fetchurl { + url = "https://github.com/nextcloud-releases/contacts/archive/v4.2.2.tar.gz"; + sha256 = "sha256-4dEEy8zSjZYsClO6u+oWfvIlPYJq9+m1+a/mHTQRlaY="; + }; + }; + cookbook = { + pname = "cookbook"; + version = "v0.9.15"; + src = fetchurl { + url = "https://github.com/nextcloud/cookbook/archive/v0.9.15.tar.gz"; + sha256 = "sha256-TkUCCa7wP6leQbTsxKgD21Tf9CONVnbmvXCFhVBITZw="; + }; + }; + news = { + pname = "news"; + version = "18.2.0"; + src = fetchurl { + url = "https://github.com/nextcloud/news/releases/download/18.2.0/news.tar.gz"; + sha256 = "sha256-eS0cFwJmYfGGJmA02AOWO/OXfqfyI71u2GataDj18DE="; + }; + }; + notes = { + pname = "notes"; + version = "v4.5.1"; + src = fetchurl { + url = "https://github.com/nextcloud/notes/archive/v4.5.1.tar.gz"; + sha256 = "sha256-qhhaQyb9LgLza4CAcNZbl97xa271M7Wqmw8TtBEFpXk="; + }; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 55bf74a..545984a 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,5 +1,18 @@ -{pkgs, ...}: let +{ + pkgs, + lib, +}: let + inherit (builtins) listToAttrs mapAttrs; inherit (pkgs) callPackage; -in { - starbound = callPackage ./starbound {}; -} +in + { + starbound = callPackage ./starbound {}; + } + // ( + # Add nextcloud apps + let + mkNextcloudApp = pkgs.callPackage ./mkNextcloudApp.nix {}; + sources = pkgs.callPackage ./_sources_nextcloud/generated.nix {}; + in + mapAttrs (_: source: mkNextcloudApp source) sources + ) diff --git a/pkgs/mkNextcloudApp.nix b/pkgs/mkNextcloudApp.nix new file mode 100644 index 0000000..3c78a94 --- /dev/null +++ b/pkgs/mkNextcloudApp.nix @@ -0,0 +1,13 @@ +{ + fetchNextcloudApp, + lib, +}: let + inherit (lib) removePrefix; +in + source: + fetchNextcloudApp { + name = source.pname; + version = removePrefix "v" source.version; + url = source.src.url; + sha256 = source.src.outputHash; + } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml new file mode 100644 index 0000000..6d49d79 --- /dev/null +++ b/pkgs/nextcloud-apps.toml @@ -0,0 +1,32 @@ +[apporder] +src.github = "juliushaertl/apporder" +fetch.url = "https://github.com/juliushaertl/apporder/archive/$ver.tar.gz" + +[bookmarks] +src.github = "nextcloud/bookmarks" +fetch.url = "https://github.com/nextcloud/bookmarks/archive/$ver.tar.gz" + +[calendar] +src.manual = "v3.5.0" # Pinned until we update to nextcloud 25 +# src.github = "nextcloud-releases/calendar" +fetch.url = "https://github.com/nextcloud-releases/calendar/archive/$ver.tar.gz" + +[contacts] +src.manual = "v4.2.2" # Pinned until we update to nextcloud 25 +# src.github = "nextcloud-releases/contacts" +fetch.url = "https://github.com/nextcloud-releases/contacts/archive/$ver.tar.gz" + +[cookbook] +src.github = "nextcloud/cookbook" +fetch.url = "https://github.com/nextcloud/cookbook/archive/$ver.tar.gz" + +[news] +src.github = "nextcloud/news" +# Sadly, the news app vendors things, and those are only included in +# their tarball. +fetch.url = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" + +[notes] +src.manual = "v4.5.1" # Pinned until we update to nextcloud 25 +# src.github = "nextcloud/notes" +fetch.url = "https://github.com/nextcloud/notes/archive/$ver.tar.gz" From 59a44261b80edc1934de2d3fd2b5d62dd921eca2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 17 Oct 2022 14:22:08 +0100 Subject: [PATCH 028/196] flake.nix: Move vm out of `nixosConfigurations` so that checks work --- flake.nix | 43 +++++++++++++------------------------------ lib/default.nix | 22 +++++++++++++++++++++- 2 files changed, 34 insertions(+), 31 deletions(-) diff --git a/flake.nix b/flake.nix index 35e3792..144e69f 100644 --- a/flake.nix +++ b/flake.nix @@ -31,35 +31,11 @@ ################## # Configurations # ################## - nixosConfigurations = let - # Modules that should be generic to all systems - genericModule = {...}: { - imports = [ - # Inject flake dependencies - sops-nix.nixosModules.sops - tlaternet-webserver.nixosModules.default - - # Import actual configuration - (import ./configuration) - ]; - }; - in { + nixosConfigurations = { # The actual system definition - tlaternet = nixpkgs.lib.nixosSystem { + tlaternet = self.lib.makeNixosSystem { inherit system; - modules = [ - genericModule - (import ./configuration/hardware-specific/linode) - ]; - }; - - # A qemu VM to test the above with - vm = nixpkgs.lib.nixosSystem { - inherit system; - modules = [ - genericModule - (import ./configuration/hardware-specific/vm.nix) - ]; + extraModules = [(import ./configuration/hardware-specific/linode)]; }; }; @@ -89,7 +65,10 @@ #################### # Helper functions # #################### - lib = import ./lib {lib = nixpkgs.lib;}; + lib = import ./lib { + inherit nixpkgs sops-nix tlaternet-webserver; + lib = nixpkgs.lib; + }; #################### # VM launch script # @@ -98,7 +77,11 @@ inherit (nixpkgs.legacyPackages.${system}) writeShellScript; in { default = let - inherit (self.nixosConfigurations.vm.config.system.build) vm; + vm = self.lib.makeNixosSystem { + inherit system; + extraModules = [(import ./configuration/hardware-specific/vm.nix)]; + }; + qemuNetOpts = self.lib.makeQemuNetOpts { "2222" = "2222"; "3080" = "80"; @@ -110,7 +93,7 @@ program = builtins.toString (writeShellScript "run-vm" '' export QEMU_OPTS="-m 3941 -smp 2 -display curses" export QEMU_NET_OPTS="${qemuNetOpts}" - "${vm}/bin/run-tlaternet-vm" + "${vm.config.system.build.vm}/bin/run-tlaternet-vm" ''); }; diff --git a/lib/default.nix b/lib/default.nix index 20d874d..5f6b68f 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,4 +1,9 @@ -{lib}: let +{ + lib, + nixpkgs, + sops-nix, + tlaternet-webserver, +}: let inherit (lib.attrsets) mapAttrsToList; inherit (lib.strings) concatStringsSep; in { @@ -7,4 +12,19 @@ in { (mapAttrsToList (host: vm: "hostfwd=::${host}-:${vm}") portMapping); + + makeNixosSystem = { + system, + extraModules, + }: + nixpkgs.lib.nixosSystem { + inherit system; + modules = + [ + sops-nix.nixosModules.sops + tlaternet-webserver.nixosModules.default + (import ../configuration) + ] + ++ extraModules; + }; } From bec05bafb1ac8b6daa2dcdc7de0ca24e038c6d4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 17 Oct 2022 14:29:56 +0100 Subject: [PATCH 029/196] README.md: Update to new and improved flake mechanisms --- README.md | 34 ++++++++-------------------------- 1 file changed, 8 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index d5f2ed4..3962a65 100644 --- a/README.md +++ b/README.md @@ -4,21 +4,16 @@ This is the NixOS configuration for [tlater.net](https://tlater.net/). ## Testing -### Building - -Build the VM with: +Run a test VM with: ``` -nixos-rebuild build-vm --flake '.#vm' +nix run ``` ### Running *Note: M-2 will bring up a console for poweroff and such* -Running should *mostly* be as simple as running the command the build -script echos. - One caveat: create a larger disk image first. This can be done by running the following in the repository root: @@ -26,31 +21,18 @@ running the following in the repository root: qemu-img create -f qcow2 ./tlaternet.qcow2 20G ``` -Everything else should be handled by the devShell. - ### New services -Whenever a new service is added, append an appropriate -`,hostfwd=::3:` to the `QEMU_NET_OPTS` specified in -`flake.nix` to bind the service to a host port. +Whenever a new service is added, add an appropriate port binding to +`qemuNetOpts` in the default app. There is no way to test this without binding to the host port, sadly. ## Deploying -Currently the deployment process is fully manual because there is no -CI system. +Deployment is handled using +[deploy-rs](https://github.com/serokell/deploy-rs): -Nix makes this fairly painless, though, it's simply: - -```bash -nixos-rebuild switch --use-remote-sudo --target-host tlater.net --build-host localhost --flake .#tlaternet ``` - -This has the added benefit of running the build on the dev machine, -which is 99% of the time much faster at building than the target -(though artifact upload may take some time on slow connections). - -Note that this also requires the current local user to also be present -on the target host, as well as for this user to be in the target -host's wheel group. See `nix.trustedUsers`. +deploy .#tlaternet +``` From 3e13b575b0c2a8e28973caac0e88cfe1e03d21fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 22 Oct 2022 20:01:44 +0100 Subject: [PATCH 030/196] flake.nix: Clean up devshell --- flake.nix | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/flake.nix b/flake.nix index 144e69f..1d6828b 100644 --- a/flake.nix +++ b/flake.nix @@ -111,23 +111,16 @@ ########################### # Development environment # ########################### - devShells.${system}.default = let - inherit (sops-nix.packages.${system}) sops-import-keys-hook sops-init-gpg-key; - deploy-rs-bin = deploy-rs.packages.${system}.default; - pkgs = nixpkgs.legacyPackages.${system}; - in - nixpkgs.legacyPackages.${system}.mkShell { - sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; - nativeBuildInputs = [ - sops-import-keys-hook - ]; + devShells.${system}.default = nixpkgs.legacyPackages.${system}.mkShell { + sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; + nativeBuildInputs = [ + sops-nix.packages.${system}.sops-import-keys-hook + ]; - packages = with pkgs; [ - nixfmt - git-lfs - sops-init-gpg-key - deploy-rs-bin - ]; - }; + packages = [ + sops-nix.packages.${system}.sops-init-gpg-key + deploy-rs.packages.${system}.default + ]; + }; }; } From c56de6cf7e849b0b9ad5d6fe69f24e3389ecac09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 21 Oct 2022 20:48:14 +0100 Subject: [PATCH 031/196] conduit: Add new conduit service --- configuration/default.nix | 13 +++++++- configuration/services/conduit.nix | 53 ++++++++++++++++++++++++++++++ flake.lock | 17 ++++++++++ flake.nix | 5 ++- lib/default.nix | 8 +++++ 5 files changed, 94 insertions(+), 2 deletions(-) create mode 100644 configuration/services/conduit.nix diff --git a/configuration/default.nix b/configuration/default.nix index f81357b..eb9d05e 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -8,6 +8,7 @@ "${modulesPath}/profiles/headless.nix" (import ../modules) + ./services/conduit.nix ./services/gitea.nix ./services/nextcloud.nix ./services/webserver.nix @@ -49,7 +50,17 @@ useDHCP = false; interfaces.eth0.useDHCP = true; - firewall.allowedTCPPorts = [80 443 2222 21025]; + firewall.allowedTCPPorts = [ + # http + 80 + 443 + # ssh + 2222 + # matrix + 8448 + # starbound + 21025 + ]; }; time.timeZone = "Europe/London"; diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix new file mode 100644 index 0000000..e8bbb6e --- /dev/null +++ b/configuration/services/conduit.nix @@ -0,0 +1,53 @@ +{config, ...}: let + cfg = config.services.matrix-conduit; + domain = "matrix.${config.services.nginx.domain}"; +in { + services.matrix-conduit = { + enable = true; + settings.global = { + address = "127.0.0.1"; + server_name = domain; + database_backend = "rocksdb"; + }; + }; + + services.nginx.virtualHosts."${domain}" = { + enableACME = true; + + listen = [ + { + addr = "0.0.0.0"; + port = 443; + ssl = true; + } + { + addr = "[::0]"; + port = 443; + ssl = true; + } + { + addr = "0.0.0.0"; + port = 8448; + ssl = true; + } + { + addr = "[::0]"; + port = 8488; + ssl = true; + } + ]; + + addSSL = true; + extraConfig = '' + merge_slashes off; + ''; + + locations."/_matrix" = { + proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; + # Recommended by conduit + extraConfig = '' + proxy_buffering off; + ''; + }; + }; +} diff --git a/flake.lock b/flake.lock index a5fc6e4..126fb51 100644 --- a/flake.lock +++ b/flake.lock @@ -289,6 +289,22 @@ "type": "github" } }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1666424192, + "narHash": "sha256-rb/a7Kg9s31jqkvdOQHFrUc5ig5kB+O2ZKB8mjU2kW8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "4f8287f3d597c73b0d706cfad028c2d51821f64d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1665466769, @@ -390,6 +406,7 @@ "inputs": { "deploy-rs": "deploy-rs", "nixpkgs": "nixpkgs_2", + "nixpkgs-unstable": "nixpkgs-unstable", "nvfetcher": "nvfetcher", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" diff --git a/flake.nix b/flake.nix index 1d6828b..f190d89 100644 --- a/flake.nix +++ b/flake.nix @@ -3,6 +3,7 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; + nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { url = "github:Mic92/sops-nix"; @@ -21,6 +22,7 @@ outputs = { self, nixpkgs, + nixpkgs-unstable, sops-nix, nvfetcher, deploy-rs, @@ -66,7 +68,7 @@ # Helper functions # #################### lib = import ./lib { - inherit nixpkgs sops-nix tlaternet-webserver; + inherit nixpkgs nixpkgs-unstable sops-nix tlaternet-webserver; lib = nixpkgs.lib; }; @@ -86,6 +88,7 @@ "2222" = "2222"; "3080" = "80"; "3443" = "443"; + "8448" = "8448"; # Matrix "21025" = "21025"; # Starbound }; in { diff --git a/lib/default.nix b/lib/default.nix index 5f6b68f..da4031f 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,6 +1,7 @@ { lib, nixpkgs, + nixpkgs-unstable, sops-nix, tlaternet-webserver, }: let @@ -24,6 +25,13 @@ in { sops-nix.nixosModules.sops tlaternet-webserver.nixosModules.default (import ../configuration) + { + nixpkgs.overlays = [ + (self: super: { + matrix-conduit = nixpkgs-unstable.legacyPackages.${system}.matrix-conduit; + }) + ]; + } ] ++ extraModules; }; From 7fb5aac33e39542af1567812f996453ea88f2f36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 23 Oct 2022 23:35:32 +0100 Subject: [PATCH 032/196] nextcloud: Fix nextcloud app download links --- pkgs/_sources_nextcloud/generated.json | 34 +++++++++++++------------- pkgs/_sources_nextcloud/generated.nix | 34 +++++++++++++------------- pkgs/nextcloud-apps.toml | 14 ++++++----- 3 files changed, 42 insertions(+), 40 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 1faeeb8..c93a3b6 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -8,9 +8,9 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-2y2FHxli9mqlPvw9mABi09Z96OfB1AFD+XmuV5aOCxY=", + "sha256": "sha256-p3VWxTYDCO2NePq6oLM8tBVqYkvoB7itqxp7IZwGDnE=", "type": "url", - "url": "https://github.com/juliushaertl/apporder/archive/v0.15.0.tar.gz" + "url": "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz" }, "version": "v0.15.0" }, @@ -23,11 +23,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-X6Mg0jQ8EYPctiZ3tDtG4LUPwXRnDj9CJrJZrUs3Z/8=", + "sha256": "sha256-URqtzaCx8FEZHCDP1wSBUFNs+x50jesRtWi+xOU1oXM=", "type": "url", - "url": "https://github.com/nextcloud/bookmarks/archive/v11.0.4.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz" }, - "version": "v11.0.4" + "version": "11.0.4" }, "calendar": { "cargoLocks": null, @@ -38,9 +38,9 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-keeWi/o+mOV7z5QNATJKwrd0olbCNdrK7YpGHg9qolk=", + "sha256": "sha256-+LRGl9h40AQdWN9SW+NqGwTafAGwV07Af8nVs3pUCm0=", "type": "url", - "url": "https://github.com/nextcloud-releases/calendar/archive/v3.5.0.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.0/calendar-v3.5.0.tar.gz" }, "version": "v3.5.0" }, @@ -53,9 +53,9 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-4dEEy8zSjZYsClO6u+oWfvIlPYJq9+m1+a/mHTQRlaY=", + "sha256": "sha256-GTiyZsUHBXPgQ17DHAihmt2W/ZnAjDwfgwnujkRwk6A=", "type": "url", - "url": "https://github.com/nextcloud-releases/contacts/archive/v4.2.2.tar.gz" + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz" }, "version": "v4.2.2" }, @@ -68,11 +68,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-TkUCCa7wP6leQbTsxKgD21Tf9CONVnbmvXCFhVBITZw=", + "sha256": "sha256-v64rLGyMQOdStyivpJsKrNxwumVQvyK3CnHtZ+K+elE=", "type": "url", - "url": "https://github.com/nextcloud/cookbook/archive/v0.9.15.tar.gz" + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.9.15/Cookbook-0.9.15.tar.gz" }, - "version": "v0.9.15" + "version": "0.9.15" }, "news": { "cargoLocks": null, @@ -83,11 +83,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-eS0cFwJmYfGGJmA02AOWO/OXfqfyI71u2GataDj18DE=", + "sha256": "sha256-O6gaA+EN10dkfbDw5i6jV1NEyR4UP22Jj2DnWEzUcGg=", "type": "url", - "url": "https://github.com/nextcloud/news/releases/download/18.2.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/18.3.0/news.tar.gz" }, - "version": "18.2.0" + "version": "18.3.0" }, "notes": { "cargoLocks": null, @@ -98,9 +98,9 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-qhhaQyb9LgLza4CAcNZbl97xa271M7Wqmw8TtBEFpXk=", + "sha256": "sha256-rd3uVkVtARX4enRAWm1ivV468lboYZnYe7/zsqaHYpk=", "type": "url", - "url": "https://github.com/nextcloud/notes/archive/v4.5.1.tar.gz" + "url": "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz" }, "version": "v4.5.1" } diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 5da7ca4..cb0c294 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -5,56 +5,56 @@ pname = "apporder"; version = "v0.15.0"; src = fetchurl { - url = "https://github.com/juliushaertl/apporder/archive/v0.15.0.tar.gz"; - sha256 = "sha256-2y2FHxli9mqlPvw9mABi09Z96OfB1AFD+XmuV5aOCxY="; + url = "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz"; + sha256 = "sha256-p3VWxTYDCO2NePq6oLM8tBVqYkvoB7itqxp7IZwGDnE="; }; }; bookmarks = { pname = "bookmarks"; - version = "v11.0.4"; + version = "11.0.4"; src = fetchurl { - url = "https://github.com/nextcloud/bookmarks/archive/v11.0.4.tar.gz"; - sha256 = "sha256-X6Mg0jQ8EYPctiZ3tDtG4LUPwXRnDj9CJrJZrUs3Z/8="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz"; + sha256 = "sha256-URqtzaCx8FEZHCDP1wSBUFNs+x50jesRtWi+xOU1oXM="; }; }; calendar = { pname = "calendar"; version = "v3.5.0"; src = fetchurl { - url = "https://github.com/nextcloud-releases/calendar/archive/v3.5.0.tar.gz"; - sha256 = "sha256-keeWi/o+mOV7z5QNATJKwrd0olbCNdrK7YpGHg9qolk="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.0/calendar-v3.5.0.tar.gz"; + sha256 = "sha256-+LRGl9h40AQdWN9SW+NqGwTafAGwV07Af8nVs3pUCm0="; }; }; contacts = { pname = "contacts"; version = "v4.2.2"; src = fetchurl { - url = "https://github.com/nextcloud-releases/contacts/archive/v4.2.2.tar.gz"; - sha256 = "sha256-4dEEy8zSjZYsClO6u+oWfvIlPYJq9+m1+a/mHTQRlaY="; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz"; + sha256 = "sha256-GTiyZsUHBXPgQ17DHAihmt2W/ZnAjDwfgwnujkRwk6A="; }; }; cookbook = { pname = "cookbook"; - version = "v0.9.15"; + version = "0.9.15"; src = fetchurl { - url = "https://github.com/nextcloud/cookbook/archive/v0.9.15.tar.gz"; - sha256 = "sha256-TkUCCa7wP6leQbTsxKgD21Tf9CONVnbmvXCFhVBITZw="; + url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.15/Cookbook-0.9.15.tar.gz"; + sha256 = "sha256-v64rLGyMQOdStyivpJsKrNxwumVQvyK3CnHtZ+K+elE="; }; }; news = { pname = "news"; - version = "18.2.0"; + version = "18.3.0"; src = fetchurl { - url = "https://github.com/nextcloud/news/releases/download/18.2.0/news.tar.gz"; - sha256 = "sha256-eS0cFwJmYfGGJmA02AOWO/OXfqfyI71u2GataDj18DE="; + url = "https://github.com/nextcloud/news/releases/download/18.3.0/news.tar.gz"; + sha256 = "sha256-O6gaA+EN10dkfbDw5i6jV1NEyR4UP22Jj2DnWEzUcGg="; }; }; notes = { pname = "notes"; version = "v4.5.1"; src = fetchurl { - url = "https://github.com/nextcloud/notes/archive/v4.5.1.tar.gz"; - sha256 = "sha256-qhhaQyb9LgLza4CAcNZbl97xa271M7Wqmw8TtBEFpXk="; + url = "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz"; + sha256 = "sha256-rd3uVkVtARX4enRAWm1ivV468lboYZnYe7/zsqaHYpk="; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 6d49d79..0620299 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,24 +1,26 @@ [apporder] src.github = "juliushaertl/apporder" -fetch.url = "https://github.com/juliushaertl/apporder/archive/$ver.tar.gz" +fetch.url = "https://github.com/juliushaertl/apporder/releases/download/$ver/apporder.tar.gz" [bookmarks] src.github = "nextcloud/bookmarks" -fetch.url = "https://github.com/nextcloud/bookmarks/archive/$ver.tar.gz" +src.prefix = "v" +fetch.url = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] src.manual = "v3.5.0" # Pinned until we update to nextcloud 25 # src.github = "nextcloud-releases/calendar" -fetch.url = "https://github.com/nextcloud-releases/calendar/archive/$ver.tar.gz" +fetch.url = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" [contacts] src.manual = "v4.2.2" # Pinned until we update to nextcloud 25 # src.github = "nextcloud-releases/contacts" -fetch.url = "https://github.com/nextcloud-releases/contacts/archive/$ver.tar.gz" +fetch.url = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] src.github = "nextcloud/cookbook" -fetch.url = "https://github.com/nextcloud/cookbook/archive/$ver.tar.gz" +src.prefix = "v" +fetch.url = "https://github.com/nextcloud/cookbook/releases/download/v$ver/Cookbook-$ver.tar.gz" [news] src.github = "nextcloud/news" @@ -29,4 +31,4 @@ fetch.url = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.g [notes] src.manual = "v4.5.1" # Pinned until we update to nextcloud 25 # src.github = "nextcloud/notes" -fetch.url = "https://github.com/nextcloud/notes/archive/$ver.tar.gz" +fetch.url = "https://github.com/nextcloud/notes/releases/download/$ver/notes.tar.gz" From c72953e1ef3dbb6cff1e9944d2be142411aae526 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 29 Oct 2022 00:13:44 +0100 Subject: [PATCH 033/196] matrix: Add coturn support for calls --- configuration/default.nix | 40 ++++++++++++----- configuration/services/conduit.nix | 69 ++++++++++++++++++++++++++++++ configuration/sops.nix | 4 ++ keys/production.yaml | 9 ++-- keys/staging.yaml | 9 ++-- 5 files changed, 114 insertions(+), 17 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index eb9d05e..ff97436 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,4 +1,5 @@ { + config, pkgs, lib, modulesPath, @@ -50,17 +51,34 @@ useDHCP = false; interfaces.eth0.useDHCP = true; - firewall.allowedTCPPorts = [ - # http - 80 - 443 - # ssh - 2222 - # matrix - 8448 - # starbound - 21025 - ]; + firewall = { + allowedTCPPorts = [ + # http + 80 + 443 + # ssh + 2222 + # matrix + 8448 + # starbound + 21025 + + config.services.coturn.listening-port + config.services.coturn.tls-listening-port + ]; + + allowedUDPPorts = [ + config.services.coturn.listening-port + config.services.coturn.tls-listening-port + ]; + + allowedUDPPortRanges = [ + { + from = config.services.coturn.min-port; + to = config.services.coturn.max-port; + } + ]; + }; }; time.timeZone = "Europe/London"; diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index e8bbb6e..b60b668 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -1,6 +1,7 @@ {config, ...}: let cfg = config.services.matrix-conduit; domain = "matrix.${config.services.nginx.domain}"; + turn-realm = "turn.${config.services.nginx.domain}"; in { services.matrix-conduit = { enable = true; @@ -8,9 +9,77 @@ in { address = "127.0.0.1"; server_name = domain; database_backend = "rocksdb"; + + turn_uris = let + address = "${config.services.coturn.realm}:${toString config.services.coturn.listening-port}"; + tls-address = "${config.services.coturn.realm}:${toString config.services.coturn.tls-listening-port}"; + in [ + "turn:${address}?transport=udp" + "turn:${address}?transport=tcp" + "turns:${tls-address}?transport=udp" + "turns:${tls-address}?transport=tcp" + ]; }; }; + # Pass in the TURN secret via EnvironmentFile, not supported by + # upstream module currently. + # + # See also https://gitlab.com/famedly/conduit/-/issues/314 + systemd.services.conduit.serviceConfig.EnvironmentFile = config.sops.secrets."turn/env".path; + + services.coturn = { + enable = true; + use-auth-secret = true; + static-auth-secret-file = config.sops.secrets."turn/secret".path; + realm = turn-realm; + relay-ips = [ + "178.79.137.55" + ]; + + # Based on suggestions from + # https://github.com/matrix-org/synapse/blob/develop/docs/turn-howto.md + # and + # https://www.foxypossibilities.com/2018/05/19/setting-up-a-turn-sever-for-matrix-on-nixos/ + no-tcp-relay = true; + secure-stun = true; + extraConfig = '' + # Deny various local IP ranges, see + # https://www.rtcsec.com/article/cve-2020-26262-bypass-of-coturns-access-control-protection/ + no-multicast-peers + denied-peer-ip=0.0.0.0-0.255.255.255 + denied-peer-ip=10.0.0.0-10.255.255.255 + denied-peer-ip=100.64.0.0-100.127.255.255 + denied-peer-ip=127.0.0.0-127.255.255.255 + denied-peer-ip=169.254.0.0-169.254.255.255 + denied-peer-ip=172.16.0.0-172.31.255.255 + denied-peer-ip=192.0.0.0-192.0.0.255 + denied-peer-ip=192.0.2.0-192.0.2.255 + denied-peer-ip=192.88.99.0-192.88.99.255 + denied-peer-ip=192.168.0.0-192.168.255.255 + denied-peer-ip=198.18.0.0-198.19.255.255 + denied-peer-ip=198.51.100.0-198.51.100.255 + denied-peer-ip=203.0.113.0-203.0.113.255 + denied-peer-ip=240.0.0.0-255.255.255.255 denied-peer-ip=::1 + denied-peer-ip=64:ff9b::-64:ff9b::ffff:ffff + denied-peer-ip=::ffff:0.0.0.0-::ffff:255.255.255.255 + denied-peer-ip=100::-100::ffff:ffff:ffff:ffff + denied-peer-ip=2001::-2001:1ff:ffff:ffff:ffff:ffff:ffff:ffff + denied-peer-ip=2002::-2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff + denied-peer-ip=fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff + denied-peer-ip=fe80::-febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff + allowed-peer-ip=178.79.137.55 + + # Limit number of rooms + user-quota=12 + total-quota=36 + + # Various other security settings + no-tlsv1 + no-tlsv1_1 + ''; + }; + services.nginx.virtualHosts."${domain}" = { enableACME = true; diff --git a/configuration/sops.nix b/configuration/sops.nix index 8efa3af..6cc395b 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -6,5 +6,9 @@ group = "nextcloud"; }; secrets."steam/tlater" = {}; + secrets."turn/env" = {}; + secrets."turn/secret" = { + owner = "turnserver"; + }; }; } diff --git a/keys/production.yaml b/keys/production.yaml index bfc494f..d666be9 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -2,14 +2,17 @@ nextcloud: tlater: ENC[AES256_GCM,data:zNsPm4uFaIRe3LjcwmayRg==,iv:5wam6bP5zP708jC9UrLV0s8qspl3Pm4fPzbMFYBUyPQ=,tag:apnJUMeJwMn9q0NhO4ptmA==,type:str] steam: tlater: ENC[AES256_GCM,data:HNsve/Wid40ftclO9n09yXg=,iv:VQxAz4eR9lfxEvM0zl1FpJpbKrEFxjIYLyCqL9Aool0=,tag:LHcpHCXAHe8p2kOvOnKXyw==,type:str] +turn: + env: ENC[AES256_GCM,data:kt5nhVo9pb/ZbPUEcqSYXxN9YMgQKnFb5VRfFFS/qoIaJ73uD2fuJKqcxAyVRrdLqnSAWSQBgTgunBzdP7xqLAK2qt8DYAQWHkIe9uxFbSXZpdmw,iv:9lq6SFwTFN4GGm6gPiJpUMasMdnHVF6XLGYrsyG3kjU=,tag:428Qf9DOiiHt/Wjb188b8g==,type:str] + secret: ENC[AES256_GCM,data:si7ee6Xfhdgdyzbp6aQpF7pz3TmTBb7iQ82lRPVXNDg9JfHI+lbmgAsSnRLX5qMCA6P9R045sSMosqidL8QwRg==,iv:SrhpZKK8D45yxCEfDb9P3TwtA14+qEI+wcRqcN/a6pw=,tag:PiwV+mOL9xHJgJft6sc61g==,type:str] sops: kms: [] gcp_kms: [] azure_kv: [] hc_vault: [] age: [] - lastmodified: "2022-10-12T13:13:37Z" - mac: ENC[AES256_GCM,data:+EuA0rblxZYk+0tZs3vUFtr1cVKhdrLi4Ww0QjeITZn2k+SL8Y2gRl3gNVQOe00WHUgSKN53QKhxDj4q6Rd0LfwASxRRjz78Mk8yHDRDIfdDS960EasgKON4HPW/eMd2Fp4+flv57KYywQQWp3AlD8JqxIf5wNhyywn5LlW3PCQ=,iv:YFIk0LrRjV8417QJ5cp5EuIm7bezyG8ZulKcu1xhIF4=,tag:vtq5hCuLEXOvRjE2D/5cCQ==,type:str] + lastmodified: "2022-10-28T22:53:26Z" + mac: ENC[AES256_GCM,data:fNcL/hQUsjSDULz9hOrr8268wNfRzARvuD+QQoUjhj5oDN3/zq800FjHrMBygTr962ueYdpfF7rW3exJqsf0TRVxlrSfvIX0U6Hwgpx7Ts6vMAmJeYdr28EuvbITuq9k14jhJrWmcqHOplJFSE1SoBedxF9LLor5gsc8WZDuBm8=,iv:d3roSZ//iosFzLj6dDWQl35Ya0Vlu2M9bAsWVWorBjI=,tag:8sX4R0WRoifYMJXiamSm9w==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | @@ -47,4 +50,4 @@ sops: -----END PGP MESSAGE----- fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b unencrypted_suffix: _unencrypted - version: 3.7.2 + version: 3.7.3 diff --git a/keys/staging.yaml b/keys/staging.yaml index 14a683a..9adfde8 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -2,14 +2,17 @@ nextcloud: tlater: ENC[AES256_GCM,data:91kDcO4hpng=,iv:ayuILRmRru4ZxTCur9H2xHuLjkDzwPdS/4lEog/tesU=,tag:qYhJxnNDcCwUM7xe7Tlcjw==,type:str] steam: tlater: ENC[AES256_GCM,data:jcW4wacGzOQ=,iv:KstKGHflscSWDFXGbnAZUcsqGN4Ot+w7sRbsAUwZNHQ=,tag:n9sRWvaKSgagpIgV/NF/Og==,type:str] +turn: + env: ENC[AES256_GCM,data:xjIz/AY109lyiL5N01p5T3HcYco/rM5CJSRTtg==,iv:16bW6OpyOK/QL0QPGQp/Baa9xyT8E3ZsYkwqmjuofk0=,tag:J5re3uKxIykw3YunvQWBgg==,type:str] + secret: ENC[AES256_GCM,data:eQ7dAocoZtg=,iv:fgzjTPv30WqTKlLy+yMn5MsKQgjhPnwlGFFwYEg3gWs=,tag:1ze33U1NBkgMX/9SiaBNQg==,type:str] sops: kms: [] gcp_kms: [] azure_kv: [] hc_vault: [] age: [] - lastmodified: "2022-10-12T13:14:20Z" - mac: ENC[AES256_GCM,data:IlU8Jr+HD/ZHHsd7eaaSGp3tRxGy8/yhbSejkWmHFeL1WsvdWsToHM7yah2WzX+uY7s/i7atHQdhbHITCi6gBIFociVVPwziK5YOmTXv1fHlcD60U4ClRbTtgMVMtvc5tXrxdLQGhaX+DJ5xXBhTlCSwwqgYP0I7vJmEUF9mz7g=,iv:IM1ebqQB1UO5EN92kipHL20iGtFTKJhUiN/XR6psWBM=,tag:WweauZ5pA7/YMuUuq8C/xQ==,type:str] + lastmodified: "2022-10-28T22:54:01Z" + mac: ENC[AES256_GCM,data:1nsv+Dl7lzRZNNb9kSuqFrXrcncIklw/A2uwd/yQQ546Rm/4gzpBZqCi6cv5VBCdc1iNuBcAM74DnZHMDmeWAiW0WfACPJMQjCes21P6IUsP2gu+bV2f9qqqnP2a5voxzFHp1aclklzMiiZJBEB1Y3UNz0ZG7A43hsOAE0/fJ9o=,iv:kY10PF5ErkKHXx8m0OyX2eU6kcFQsrsP3V2scVBMsuA=,tag:Uth0XfP2c0LBJQ7+7Uc0BQ==,type:str] pgp: - created_at: "2022-10-12T16:48:23Z" enc: | @@ -47,4 +50,4 @@ sops: -----END PGP MESSAGE----- fp: 7762ec55a5727cabada621d961e53f94caa314e4 unencrypted_suffix: _unencrypted - version: 3.7.2 + version: 3.7.3 From 5c89aa5b834df2b7133f1e529193d2dd1ad13563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 30 Oct 2022 17:13:15 +0000 Subject: [PATCH 034/196] Update --- flake.lock | 32 +++++++++++++------------- pkgs/_sources_nextcloud/generated.json | 12 +++++----- pkgs/_sources_nextcloud/generated.nix | 12 +++++----- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/flake.lock b/flake.lock index 126fb51..fd1773d 100644 --- a/flake.lock +++ b/flake.lock @@ -275,11 +275,11 @@ }, "nixpkgs-22_05": { "locked": { - "lastModified": 1665279158, - "narHash": "sha256-TpbWNzoJ5RaZ302dzvjY2o//WxtOJuYT3CnDj5N69Hs=", + "lastModified": 1667091951, + "narHash": "sha256-62sz0fn06Nq8OaeBYrYSR3Y6hUcp8/PC4dJ7HeGaOhU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b3783bcfb8ec54e0de26feccfc6cc36b8e202ed5", + "rev": "6440d13df2327d2db13d3b17e419784020b71d22", "type": "github" }, "original": { @@ -291,11 +291,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1666424192, - "narHash": "sha256-rb/a7Kg9s31jqkvdOQHFrUc5ig5kB+O2ZKB8mjU2kW8=", + "lastModified": 1667055375, + "narHash": "sha256-xfSTHYxuKRiqF4dcuAFdti1OUvrC2lHpQqCHWUK5/JA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4f8287f3d597c73b0d706cfad028c2d51821f64d", + "rev": "7f9be6a505a31f88499c5d20d11f98accf5ae6ba", "type": "github" }, "original": { @@ -307,11 +307,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1665466769, - "narHash": "sha256-L+qcHpb4Ac3PipMXJY/Ktbu1+KXy23WCZ8pXWmsf7zY=", + "lastModified": 1666961615, + "narHash": "sha256-+Sqz6zQA85Q14U/KwsJO386oxd47zDte8dqBGOtRJGg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0b20bf89e0035b6d62ad58f9db8fdbc99c2b01e8", + "rev": "040c6d8374d090f46ab0e99f1f7c27a4529ecffd", "type": "github" }, "original": { @@ -454,11 +454,11 @@ "nixpkgs-22_05": "nixpkgs-22_05" }, "locked": { - "lastModified": 1665289655, - "narHash": "sha256-j1Q9mNBhbzeJykhObiXwEGres9qvP4vH7gxdJ+ihkLI=", + "lastModified": 1667102919, + "narHash": "sha256-DP5j4TwXe96eZf0PLgYSj1Hdyt7SPUoQ003iNBQSKpQ=", "owner": "Mic92", "repo": "sops-nix", - "rev": "0ce0449e6404c4ff9d1b7bd657794ae5ca54deb3", + "rev": "448ec3e7eb7c7e4563cc2471db748a71baaf9698", "type": "github" }, "original": { @@ -476,11 +476,11 @@ ] }, "locked": { - "lastModified": 1665402451, - "narHash": "sha256-zWaEzUJh0WFVoaLQsMoIj2D+QFhUBJw+f+XzoYqw3es=", + "lastModified": 1665746303, + "narHash": "sha256-lDVy7aBsAaO5TyeoZS4wL6qcBNuU1bQCcHPJxiEKtao=", "ref": "master", - "rev": "6c29bc5db001e75f5ca06fec726369b87d007a03", - "revCount": 47, + "rev": "5d037f9122e68aaa5db62d04810bf0c5e1e4325e", + "revCount": 49, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index c93a3b6..23dc755 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -68,11 +68,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-v64rLGyMQOdStyivpJsKrNxwumVQvyK3CnHtZ+K+elE=", + "sha256": "sha256-P3jgNAFcABwTBzOnW9/R6hp8Ak6XoXvz+B9GVS9/BeM=", "type": "url", - "url": "https://github.com/nextcloud/cookbook/releases/download/v0.9.15/Cookbook-0.9.15.tar.gz" + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.9.16/Cookbook-0.9.16.tar.gz" }, - "version": "0.9.15" + "version": "0.9.16" }, "news": { "cargoLocks": null, @@ -83,11 +83,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-O6gaA+EN10dkfbDw5i6jV1NEyR4UP22Jj2DnWEzUcGg=", + "sha256": "sha256-lVF4H9v7bSw8137lfq4PsVg8e1TpcgvJVQU/UVQfSoY=", "type": "url", - "url": "https://github.com/nextcloud/news/releases/download/18.3.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/19.0.0/news.tar.gz" }, - "version": "18.3.0" + "version": "19.0.0" }, "notes": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index cb0c294..c1e35e7 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -35,18 +35,18 @@ }; cookbook = { pname = "cookbook"; - version = "0.9.15"; + version = "0.9.16"; src = fetchurl { - url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.15/Cookbook-0.9.15.tar.gz"; - sha256 = "sha256-v64rLGyMQOdStyivpJsKrNxwumVQvyK3CnHtZ+K+elE="; + url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.16/Cookbook-0.9.16.tar.gz"; + sha256 = "sha256-P3jgNAFcABwTBzOnW9/R6hp8Ak6XoXvz+B9GVS9/BeM="; }; }; news = { pname = "news"; - version = "18.3.0"; + version = "19.0.0"; src = fetchurl { - url = "https://github.com/nextcloud/news/releases/download/18.3.0/news.tar.gz"; - sha256 = "sha256-O6gaA+EN10dkfbDw5i6jV1NEyR4UP22Jj2DnWEzUcGg="; + url = "https://github.com/nextcloud/news/releases/download/19.0.0/news.tar.gz"; + sha256 = "sha256-lVF4H9v7bSw8137lfq4PsVg8e1TpcgvJVQU/UVQfSoY="; }; }; notes = { From b3e8b0e85cf450386a4ff323b3ae079fbfbded2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 30 Oct 2022 17:43:52 +0000 Subject: [PATCH 035/196] default.nix: Turn on minimal profile --- configuration/default.nix | 4 ++++ configuration/services/starbound.nix | 3 +++ 2 files changed, 7 insertions(+) diff --git a/configuration/default.nix b/configuration/default.nix index ff97436..f5d68fb 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -7,6 +7,7 @@ }: { imports = [ "${modulesPath}/profiles/headless.nix" + "${modulesPath}/profiles/minimal.nix" (import ../modules) ./services/conduit.nix @@ -135,5 +136,8 @@ ]; }; + # Remove some unneeded packages + environment.defaultPackages = []; + system.stateVersion = "20.09"; } diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix index 5dc0961..419f0e4 100644 --- a/configuration/services/starbound.nix +++ b/configuration/services/starbound.nix @@ -5,6 +5,9 @@ }: let inherit (lib) concatStringsSep; in { + # Sadly, steam-run requires some X libs + environment.noXlibs = false; + systemd.services.starbound = { description = "Starbound"; after = ["network.target"]; From 73023b817d76760c077e1ddab43d731d5ebc9fdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 31 Oct 2022 16:06:31 +0000 Subject: [PATCH 036/196] conduit: Use dependencies from stable Partially to circumvent the upcoming openssl CVE, partially to reduce the number of dependencies. --- lib/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/default.nix b/lib/default.nix index da4031f..5cd7382 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -28,7 +28,9 @@ in { { nixpkgs.overlays = [ (self: super: { - matrix-conduit = nixpkgs-unstable.legacyPackages.${system}.matrix-conduit; + matrix-conduit = nixpkgs-unstable.legacyPackages.${system}.matrix-conduit.override { + inherit (self) stdenv lib fetchFromGitLab rustPlatform pkg-config rocksdb; + }; }) ]; } From 2304711359ff33551d00bc6a90ac1bd88a06ad68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 31 Oct 2022 16:07:41 +0000 Subject: [PATCH 037/196] config: Mitigate upcoming SSL CVE See https://mta.openssl.org/pipermail/openssl-announce/2022-October/000238.html As 1.1 is unaffected, this override should be sufficient to evade this problem. --- configuration/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/configuration/default.nix b/configuration/default.nix index f5d68fb..9c0ce68 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -25,6 +25,10 @@ pkgs = prev; lib = prev.lib; }; + + # Mitigate + # https://mta.openssl.org/pipermail/openssl-announce/2022-October/000238.html + nginxStable = prev.nginxStable.override {openssl = prev.openssl_1_1;}; }) ]; From ea06138a9b856982b82611723e76e830e959af7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 16:00:50 +0000 Subject: [PATCH 038/196] flake.nix: Add packages for utility scripts to enable `nix build` --- flake.nix | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/flake.nix b/flake.nix index f190d89..2dc31c0 100644 --- a/flake.nix +++ b/flake.nix @@ -72,13 +72,15 @@ lib = nixpkgs.lib; }; - #################### - # VM launch script # - #################### - apps.${system} = let + ################### + # Utility scripts # + ################### + packages.${system} = let inherit (nixpkgs.legacyPackages.${system}) writeShellScript; in { - default = let + default = self.packages.${system}.run-vm; + + run-vm = let vm = self.lib.makeNixosSystem { inherit system; extraModules = [(import ./configuration/hardware-specific/vm.nix)]; @@ -91,23 +93,33 @@ "8448" = "8448"; # Matrix "21025" = "21025"; # Starbound }; - in { - type = "app"; - program = builtins.toString (writeShellScript "run-vm" '' + in + writeShellScript "run-vm" '' export QEMU_OPTS="-m 3941 -smp 2 -display curses" export QEMU_NET_OPTS="${qemuNetOpts}" "${vm.config.system.build.vm}/bin/run-tlaternet-vm" - ''); - }; + ''; update-nextcloud-apps = let nvfetcher-bin = "${nvfetcher.defaultPackage.${system}}/bin/nvfetcher"; - in { - type = "app"; - program = builtins.toString (writeShellScript "update-nextcloud-apps" '' + in + writeShellScript "update-nextcloud-apps" '' cd "$(git rev-parse --show-toplevel)/pkgs" ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml - ''); + ''; + }; + + apps.${system} = let + inherit (nixpkgs.legacyPackages.${system}) writeShellScript; + in { + default = { + type = "app"; + program = builtins.toString self.packages.${system}.run-vm; + }; + + update-nextcloud-apps = { + type = "app"; + program = builtins.toString self.packages.${system}.update-nextcloud-apps; }; }; From 598c4390024a0d2b4d9316bf83093707ff731314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 16:01:18 +0000 Subject: [PATCH 039/196] conduit: Disable turns, remove the user limits and add all relay IPs --- configuration/services/conduit.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index b60b668..13be08f 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -1,4 +1,10 @@ -{config, ...}: let +{ + config, + lib, + ... +}: let + inherit (lib.strings) concatMapStringsSep; + cfg = config.services.matrix-conduit; domain = "matrix.${config.services.nginx.domain}"; turn-realm = "turn.${config.services.nginx.domain}"; @@ -16,8 +22,6 @@ in { in [ "turn:${address}?transport=udp" "turn:${address}?transport=tcp" - "turns:${tls-address}?transport=udp" - "turns:${tls-address}?transport=tcp" ]; }; }; @@ -68,11 +72,9 @@ in { denied-peer-ip=2002::-2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff denied-peer-ip=fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff denied-peer-ip=fe80::-febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff - allowed-peer-ip=178.79.137.55 - # Limit number of rooms - user-quota=12 - total-quota=36 + # *Allow* any IP addresses that we explicitly set as relay IPs + ${concatMapStringsSep "\n" (ip: "allowed-peer-ip=${ip}") config.services.coturn.relay-ips} # Various other security settings no-tlsv1 From 85a989d3c8ccff9b880dfd1a63e3d03e9304cac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 17:31:24 +0000 Subject: [PATCH 040/196] nvfetcher: Don't allow fetching rc versions of nextcloud cookbook --- pkgs/nextcloud-apps.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 0620299..6e06432 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -18,8 +18,9 @@ src.manual = "v4.2.2" # Pinned until we update to nextcloud 25 fetch.url = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] -src.github = "nextcloud/cookbook" +src.github_tag = "nextcloud/cookbook" src.prefix = "v" +src.exclude_regex = 'v\d+\.\d+\.\d+-rc\d+' fetch.url = "https://github.com/nextcloud/cookbook/releases/download/v$ver/Cookbook-$ver.tar.gz" [news] From 4d5eaf34be2ee60bc1861587679dc6be56fa485f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 17:31:58 +0000 Subject: [PATCH 041/196] Update inputs --- flake.lock | 30 +++++++++++++------------- pkgs/_sources_nextcloud/generated.json | 6 +++--- pkgs/_sources_nextcloud/generated.nix | 8 +++---- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/flake.lock b/flake.lock index fd1773d..8507c27 100644 --- a/flake.lock +++ b/flake.lock @@ -182,11 +182,11 @@ }, "flake-utils": { "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "lastModified": 1667077288, + "narHash": "sha256-bdC8sFNDpT0HK74u9fUkpbf1MEzVYJ+ka7NXCdgBoaA=", "owner": "numtide", "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "rev": "6ee9ebb6b1ee695d2cacc4faa053a7b9baa76817", "type": "github" }, "original": { @@ -291,11 +291,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1667055375, - "narHash": "sha256-xfSTHYxuKRiqF4dcuAFdti1OUvrC2lHpQqCHWUK5/JA=", + "lastModified": 1667610399, + "narHash": "sha256-XZd0f4ZWAY0QOoUSdiNWj/eFiKb4B9CJPtl9uO9SYY4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7f9be6a505a31f88499c5d20d11f98accf5ae6ba", + "rev": "1dd8696f96db47156e1424a49578fe7dd4ce99a4", "type": "github" }, "original": { @@ -307,11 +307,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1666961615, - "narHash": "sha256-+Sqz6zQA85Q14U/KwsJO386oxd47zDte8dqBGOtRJGg=", + "lastModified": 1667564121, + "narHash": "sha256-DlR65WyEW78cBmnOhxDzfvNQ9euJEGctSl77olqEaLg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "040c6d8374d090f46ab0e99f1f7c27a4529ecffd", + "rev": "1404483f4531560aad73bdebae4096881c910ac0", "type": "github" }, "original": { @@ -345,11 +345,11 @@ ] }, "locked": { - "lastModified": 1664550666, - "narHash": "sha256-eXfMRd9uItEp3PsYI31FSVGPG9dVC6yF++65ZrGwW8A=", + "lastModified": 1667620329, + "narHash": "sha256-v1Zk7rtEbAGpevBGPZvZBKpwbmw4I+uVwxvd+pBlp3o=", "owner": "berberman", "repo": "nvfetcher", - "rev": "9763ad40d59a044e90726653d9253efaeeb053b2", + "rev": "294826951113dcd3aa9abbcacfb1aa5b95a19116", "type": "github" }, "original": { @@ -454,11 +454,11 @@ "nixpkgs-22_05": "nixpkgs-22_05" }, "locked": { - "lastModified": 1667102919, - "narHash": "sha256-DP5j4TwXe96eZf0PLgYSj1Hdyt7SPUoQ003iNBQSKpQ=", + "lastModified": 1667427533, + "narHash": "sha256-MsgTnQEi1g7f8anlW5klHW2pJgam4CLbJaYyBw2ed58=", "owner": "Mic92", "repo": "sops-nix", - "rev": "448ec3e7eb7c7e4563cc2471db748a71baaf9698", + "rev": "486b4455da16272c1ed31bc82adcdbe7af829465", "type": "github" }, "original": { diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 23dc755..c4a4b55 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -68,11 +68,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-P3jgNAFcABwTBzOnW9/R6hp8Ak6XoXvz+B9GVS9/BeM=", + "sha256": "sha256-3lCqvmaMsgrFD5PzyHIcwxxGeC+qOMTGxbOi7nPFL6I=", "type": "url", - "url": "https://github.com/nextcloud/cookbook/releases/download/v0.9.16/Cookbook-0.9.16.tar.gz" + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.9.17/Cookbook-0.9.17.tar.gz" }, - "version": "0.9.16" + "version": "0.9.17" }, "news": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index c1e35e7..324306d 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -1,5 +1,5 @@ # This file was generated by nvfetcher, please do not modify it manually. -{ fetchgit, fetchurl, fetchFromGitHub }: +{ fetchgit, fetchurl, fetchFromGitHub, dockerTools }: { apporder = { pname = "apporder"; @@ -35,10 +35,10 @@ }; cookbook = { pname = "cookbook"; - version = "0.9.16"; + version = "0.9.17"; src = fetchurl { - url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.16/Cookbook-0.9.16.tar.gz"; - sha256 = "sha256-P3jgNAFcABwTBzOnW9/R6hp8Ak6XoXvz+B9GVS9/BeM="; + url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.17/Cookbook-0.9.17.tar.gz"; + sha256 = "sha256-3lCqvmaMsgrFD5PzyHIcwxxGeC+qOMTGxbOi7nPFL6I="; }; }; news = { From 0528f73187011e16e9cdc6c83924d59cb36480c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 17:33:28 +0000 Subject: [PATCH 042/196] nginx: Remove mitigation for openssl CVE This has been fixed, instead we just update to the latest openssl. --- configuration/default.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 9c0ce68..f5d68fb 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -25,10 +25,6 @@ pkgs = prev; lib = prev.lib; }; - - # Mitigate - # https://mta.openssl.org/pipermail/openssl-announce/2022-October/000238.html - nginxStable = prev.nginxStable.override {openssl = prev.openssl_1_1;}; }) ]; From 997707021b70aa694ef863f6ae088e4c6fb4c702 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 17:59:27 +0000 Subject: [PATCH 043/196] config: Enable authorization through ssh agent This enables sudo-via-yubikey and therefore makes `-t` obsolete, in turn fixing a whole sleuth of issues with deploy-rs. *And* seems more secure and convenient at the same time. --- configuration/default.nix | 9 +++++++++ flake.nix | 4 +--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index f5d68fb..fc1ba7a 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -100,6 +100,15 @@ gatewayPorts = "yes"; }; + security = { + sudo.execWheelOnly = true; + + pam = { + enableSSHAgentAuth = true; + services.sudo.sshAgentAuth = true; + }; + }; + services.nginx = { enable = true; recommendedTlsSettings = true; diff --git a/flake.nix b/flake.nix index 2dc31c0..04aa990 100644 --- a/flake.nix +++ b/flake.nix @@ -53,10 +53,8 @@ }; sshUser = "tlater"; - sshOpts = ["-t" "-p" "2222"]; + sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; fastConnection = true; - # Currently broken, see https://github.com/serokell/deploy-rs/issues/78 - magicRollback = false; }; ######### From a28d385b17c586b7e5bd2cf133ac79f9998a18d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 22:26:52 +0000 Subject: [PATCH 044/196] conduit: Enable TURNS with a ZeroSSL-provided certificate --- configuration/default.nix | 4 ++++ configuration/services/conduit.nix | 10 ++++++++++ configuration/sops.nix | 6 ++++++ keys/production.yaml | 7 +++++-- 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index fc1ba7a..34a7868 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -66,11 +66,15 @@ config.services.coturn.listening-port config.services.coturn.tls-listening-port + config.services.coturn.alt-listening-port + config.services.coturn.alt-tls-listening-port ]; allowedUDPPorts = [ config.services.coturn.listening-port config.services.coturn.tls-listening-port + config.services.coturn.alt-listening-port + config.services.coturn.alt-tls-listening-port ]; allowedUDPPortRanges = [ diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 13be08f..6da82da 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -22,6 +22,8 @@ in { in [ "turn:${address}?transport=udp" "turn:${address}?transport=tcp" + "turns:${tls-address}?transport=udp" + "turns:${tls-address}?transport=tcp" ]; }; }; @@ -34,6 +36,7 @@ in { services.coturn = { enable = true; + no-cli = true; use-auth-secret = true; static-auth-secret-file = config.sops.secrets."turn/secret".path; realm = turn-realm; @@ -41,6 +44,13 @@ in { "178.79.137.55" ]; + # SSL config + # + # TODO(tlater): Switch to letsencrypt once google fix: + # https://github.com/vector-im/element-android/issues/1533 + pkey = config.sops.secrets."turn/ssl-key".path; + cert = config.sops.secrets."turn/ssl-cert".path; + # Based on suggestions from # https://github.com/matrix-org/synapse/blob/develop/docs/turn-howto.md # and diff --git a/configuration/sops.nix b/configuration/sops.nix index 6cc395b..21613b2 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -10,5 +10,11 @@ secrets."turn/secret" = { owner = "turnserver"; }; + secrets."turn/ssl-key" = { + owner = "turnserver"; + }; + secrets."turn/ssl-cert" = { + owner = "turnserver"; + }; }; } diff --git a/keys/production.yaml b/keys/production.yaml index d666be9..6bc16ad 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -5,14 +5,17 @@ steam: turn: env: ENC[AES256_GCM,data:kt5nhVo9pb/ZbPUEcqSYXxN9YMgQKnFb5VRfFFS/qoIaJ73uD2fuJKqcxAyVRrdLqnSAWSQBgTgunBzdP7xqLAK2qt8DYAQWHkIe9uxFbSXZpdmw,iv:9lq6SFwTFN4GGm6gPiJpUMasMdnHVF6XLGYrsyG3kjU=,tag:428Qf9DOiiHt/Wjb188b8g==,type:str] secret: ENC[AES256_GCM,data:si7ee6Xfhdgdyzbp6aQpF7pz3TmTBb7iQ82lRPVXNDg9JfHI+lbmgAsSnRLX5qMCA6P9R045sSMosqidL8QwRg==,iv:SrhpZKK8D45yxCEfDb9P3TwtA14+qEI+wcRqcN/a6pw=,tag:PiwV+mOL9xHJgJft6sc61g==,type:str] + ssl-key: ENC[AES256_GCM,data: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,iv:lpQ/utPri3QEIvB8V5MzHmgyeyGmlVGbkbNKKrb10lM=,tag:eWFSV+nRqDfYERXTXT8eAQ==,type:str] + #ENC[AES256_GCM,data:DkvLWzxK8Xp/TXnJNZ15Wa+ojB7qGxh44zvwdm50ENgTPaqIl2468q+HeOUIUE7OiXCQWj2PVg==,iv:J9EkotYGBY1FZo62wieUSFaTCn1NnBb6aOKnUOCELS8=,tag:vmxNYyjCYfi6n9nBZ8DwPg==,type:comment] + ssl-cert: ENC[AES256_GCM,data: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,iv:JvoC84+dJ+sKdDDNvzIRWJUKHftgW4hhT6fiJQXR4rs=,tag:wrFQF7ZqG0us3E98i/gkyA==,type:str] sops: kms: [] gcp_kms: [] azure_kv: [] hc_vault: [] age: [] - lastmodified: "2022-10-28T22:53:26Z" - mac: ENC[AES256_GCM,data:fNcL/hQUsjSDULz9hOrr8268wNfRzARvuD+QQoUjhj5oDN3/zq800FjHrMBygTr962ueYdpfF7rW3exJqsf0TRVxlrSfvIX0U6Hwgpx7Ts6vMAmJeYdr28EuvbITuq9k14jhJrWmcqHOplJFSE1SoBedxF9LLor5gsc8WZDuBm8=,iv:d3roSZ//iosFzLj6dDWQl35Ya0Vlu2M9bAsWVWorBjI=,tag:8sX4R0WRoifYMJXiamSm9w==,type:str] + lastmodified: "2022-11-05T18:45:55Z" + mac: ENC[AES256_GCM,data:xPCfjqVkewEqrUjHroXa9RGHITntVj2uGPaRZfj0lqTUPFG6GQDn3Yq6L6cV3EPOYQ4OedJlaVXy05OHkzZwjYEbBQVGQ0aH/ZOP7X301eebBX5MvHLFU4mcnjMITWGH/E7SXz3pPF75s9eM/onx374PcQt6zevbBF+Jp0Fz71I=,iv:84JL69nF3ougygMAVFOoTaCn37thvm4lF6HYdgTiftg=,tag:ATQ18acehgUAE/dX+vYugQ==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | From 7a2b862235db7964138dae2f31494742a09ed5f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 5 Nov 2022 22:27:31 +0000 Subject: [PATCH 045/196] keys: Remove obsolete key file --- keys/external.yaml | 52 ---------------------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 keys/external.yaml diff --git a/keys/external.yaml b/keys/external.yaml deleted file mode 100644 index c51d957..0000000 --- a/keys/external.yaml +++ /dev/null @@ -1,52 +0,0 @@ -steam: ENC[AES256_GCM,data:Jhk91uP3Ixo7H4I9kXEWeA==,iv:s8BcwGNF1vG8KI41FmQXOBbqZl8SnMZ9+YP6GKwHdtY=,tag:dW462jNJCtG4HWrkeQTUzw==,type:str] -sops: - kms: [] - gcp_kms: [] - azure_kv: [] - hc_vault: [] - age: [] - lastmodified: "2022-04-23T07:07:21Z" - mac: ENC[AES256_GCM,data:E9z+h2kejAobo3wIRBQFGyMfMHoeVREE+pEF9XoVZF8cQM4xC4tHub+eENsBIDeWoIcPtugLE9Xwzn9odyg92Vri/SzcaxrEXzsAcvFj6Ox2cN27h17OrkQBMKeA/tnMVg+uJxQesWZbrfcMsmd99X1W1RH5SMUwNrqjCsNxZ7s=,iv:pfi/EXgacNapdVlKP0UEMKdxi7s4YicfFcSopvwOrNA=,tag:RmMPwBYFZx2M5FJCVyhcLg==,type:str] - pgp: - - created_at: "2022-04-23T07:07:08Z" - enc: | - -----BEGIN PGP MESSAGE----- - - hQIMAzWu0p84AOApAQ/8DeQLvWBjQn3mNfmiPyH0NNj0d70FKbm546jFjBuVHW9h - P3KWVJF8pWdg17W5Hlu8xDPCCYmX5Rew3JznbEpyxIMUAUPS+HpwEWXvpKUMNhIj - VDcQ5cVkfiOc81gRKXLiWNmBP2lRKrjjmFBEbwZgHxW2Y9yzmzqsR97VWrBhkz9r - Rsif8Mi29LAbpG0lgVZSji7pzs/4EbclSQsfv6JSJMoA0bD3OdtyAmJh4dfUV31i - kzkOJ8WIAwYpvKXI4Jf3DuUS7njzdw4SRCgf5nuC8Ml1Kb4IvCwTsPEOaYRhCZIX - jUTmQ4DwiIZ+618Wzi6SHgdH1QZaS5e71n0rxPxsYY6UbCyDhrGNcXgn/p0DHP04 - p+Hscl75IqJiMzlAnQobx111vw1f3oGgTuWYS78Tccpy/QgMtVf99CeVwp4fVkeU - iPGr5oy5KO3WF3EWvuK/A/eoiK208YRMcL+0hrFDuhTB7qnyCRBjTv+4SJdY3FiC - KA/syZ/+DioUVyEXNn8cttk0U9Wf5zub7s/9Ei7MQVVUgCvyZZDHFE+50d5UeVRm - WW5T38D3G+v6py8gkC4/noKndr6SzRgPBAVW/Ba9CZZtEulhA39U9M4Q9cCSyLCM - nAiu0ikOiDif4w+1fxeEA+BXp7uBbW9vz09jetfDkp+i4hvt41a9dwJpTmxWm57S - XgFQDuO+HdFs44Yw1gyJQKLK3YejSyoKIo5pN36yMGuYPw9B75Cx+MWJJihL5IHl - gTqNPiD3cIyFw9U+FYfvqdQz9Vo/dD8gF0G5Y5MVH0E9xNsSFuSWoA9H2Zl+Ops= - =W5PZ - -----END PGP MESSAGE----- - fp: 535B61015823443941C744DD12264F6BBDFABA89 - - created_at: "2022-04-23T07:07:08Z" - enc: | - -----BEGIN PGP MESSAGE----- - - hQIMA9ahl2ynTH87ARAAwKoe5UHRlt86d47oCSvXVV0JvRdw6K5VKDIyZr5FEAZD - VHDvZb7a0qlKuJsKiq5+3hZPkw9W9DLtpacxQdEoTUDQVAfVAi1pIKaJIYP7pSC3 - LbcqNXucqJoKLKXHE0zCPAJdbTYOo804Z6iLRJRYwuLHfE17lVPMoJD9OjwZn1LS - ksJnki68YqQcFocRuUF/pq+bcd0ceV7YQiBIdO/89YyVPgviORXzlRZ5+hTpFjqd - rYFzgNBkHVRHUso8S9YNiFsU8dKVXBDS6LiykcKe9C6kEYDCe24VVHyrlj2s3isH - 68PefnfQY5ZIBSDm2uwGmym1pSwhR015Ely/gqRx+T4qfCcAwva9ZPusXHzHu2+z - vwO83yeBXFbs4YFdHhh9GNbOfbBKCdPU0FAqQCuU0P7iVrCfjtTXdg622hn7x2YW - YwH5nlcm14/U39jOzWNketmyAiaOJ32ko3Ec63ELkGCb8+LR0eCPDNUNCQcnKGaU - yrTYnqUG6ODxdkhvq1JCsPKlZ/0pqiSQKBE1dGZBrcshZZ6SvdhO6hSimg3m+Mqn - wh5pcx/P5k3VXPovTRkRAU/U6RdYKs+qH1tXCBSMwjz4EU9VCYZbqLb1Bp/NfsPa - 0CL50HA617ID0ofxOL8eT49xQJZZFFAArOMZmRGgsKrPAEYijnQ/593nci4DdozS - UAFrki95hH3EFygU3KkVdpULaOwc/0SWIPLZgmpFq2H5bKOqi9TL0IV3G00qEf5G - bOFb1q7pCAWMe5b6JH7MQRmSWwaoE4qhtmOkjHMOuqhA - =hTbV - -----END PGP MESSAGE----- - fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b - unencrypted_suffix: _unencrypted - version: 3.7.2 From 19576ffb1e91d37ea8a3e79ddcbd88215ae7dd90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 01:58:00 +0000 Subject: [PATCH 046/196] matrix-conduit: Stop using the version from unstable --- flake.lock | 17 ----------------- flake.nix | 4 +--- lib/default.nix | 10 ---------- 3 files changed, 1 insertion(+), 30 deletions(-) diff --git a/flake.lock b/flake.lock index 8507c27..8d59020 100644 --- a/flake.lock +++ b/flake.lock @@ -289,22 +289,6 @@ "type": "github" } }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1667610399, - "narHash": "sha256-XZd0f4ZWAY0QOoUSdiNWj/eFiKb4B9CJPtl9uO9SYY4=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1dd8696f96db47156e1424a49578fe7dd4ce99a4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nixpkgs_2": { "locked": { "lastModified": 1667564121, @@ -406,7 +390,6 @@ "inputs": { "deploy-rs": "deploy-rs", "nixpkgs": "nixpkgs_2", - "nixpkgs-unstable": "nixpkgs-unstable", "nvfetcher": "nvfetcher", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" diff --git a/flake.nix b/flake.nix index 04aa990..7a5daf9 100644 --- a/flake.nix +++ b/flake.nix @@ -3,7 +3,6 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; - nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { url = "github:Mic92/sops-nix"; @@ -22,7 +21,6 @@ outputs = { self, nixpkgs, - nixpkgs-unstable, sops-nix, nvfetcher, deploy-rs, @@ -66,7 +64,7 @@ # Helper functions # #################### lib = import ./lib { - inherit nixpkgs nixpkgs-unstable sops-nix tlaternet-webserver; + inherit nixpkgs sops-nix tlaternet-webserver; lib = nixpkgs.lib; }; diff --git a/lib/default.nix b/lib/default.nix index 5cd7382..5f6b68f 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,7 +1,6 @@ { lib, nixpkgs, - nixpkgs-unstable, sops-nix, tlaternet-webserver, }: let @@ -25,15 +24,6 @@ in { sops-nix.nixosModules.sops tlaternet-webserver.nixosModules.default (import ../configuration) - { - nixpkgs.overlays = [ - (self: super: { - matrix-conduit = nixpkgs-unstable.legacyPackages.${system}.matrix-conduit.override { - inherit (self) stdenv lib fetchFromGitLab rustPlatform pkg-config rocksdb; - }; - }) - ]; - } ] ++ extraModules; }; From 411e075ef152e7d319800ccd81020641957e6c53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 02:11:01 +0000 Subject: [PATCH 047/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'nixpkgs': 'github:nixos/nixpkgs/a9eedea7232f5d00f0aca7267efb69a54da1b8a1' (2023-01-03) → 'github:nixos/nixpkgs/54644f409ab471e87014bb305eac8c50190bcf48' (2023-01-10) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/294826951113dcd3aa9abbcacfb1aa5b95a19116' (2022-11-05) → 'github:berberman/nvfetcher/0a9ac5fd07b52467d81163b1f8c94c12e5c9aff9' (2023-01-06) • Updated input 'nvfetcher/flake-compat': 'github:edolstra/flake-compat/b4a34015c698c7793d592d66adbab377907a2be8' (2022-04-19) → 'github:edolstra/flake-compat/009399224d5e398d03b22badca40a37ac85412a1' (2022-11-17) • Updated input 'nvfetcher/flake-utils': 'github:numtide/flake-utils/6ee9ebb6b1ee695d2cacc4faa053a7b9baa76817' (2022-10-29) → 'github:numtide/flake-utils/5aed5285a952e0b949eb3ba02c12fa4fcfef535f' (2022-11-02) • Updated input 'sops-nix': 'github:Mic92/sops-nix/b35586cc5abacd4eba9ead138b53e2a60920f781' (2023-01-01) → 'github:Mic92/sops-nix/2253120d2a6147e57bafb5c689e086221df8032f' (2023-01-08) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/feda52be1d59f13b9aa02f064b4f14784b9a06c8' (2022-12-31) → 'github:NixOS/nixpkgs/9f11a2df77cb945c115ae2a65f53f38121597d73' (2023-01-07) --- flake.lock | 211 +++++++++++++++++++++++++++++++++++++---------------- flake.nix | 4 +- 2 files changed, 152 insertions(+), 63 deletions(-) diff --git a/flake.lock b/flake.lock index 8d59020..e156a33 100644 --- a/flake.lock +++ b/flake.lock @@ -24,14 +24,31 @@ "type": "github" } }, + "all-cabal-json": { + "flake": false, + "locked": { + "lastModified": 1665552503, + "narHash": "sha256-r14RmRSwzv5c+bWKUDaze6pXM7nOsiz1H8nvFHJvufc=", + "owner": "nix-community", + "repo": "all-cabal-json", + "rev": "d7c0434eebffb305071404edcf9d5cd99703878e", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "hackage", + "repo": "all-cabal-json", + "type": "github" + } + }, "crane": { "flake": false, "locked": { - "lastModified": 1661875961, - "narHash": "sha256-f1h/2c6Teeu1ofAHWzrS8TwBPcnN+EEu+z1sRVmMQTk=", + "lastModified": 1670900067, + "narHash": "sha256-VXVa+KBfukhmWizaiGiHRVX/fuk66P8dgSFfkVN4/MY=", "owner": "ipetkov", "repo": "crane", - "rev": "d9f394e4e20e97c2a60c3ad82c2b6ef99be19e24", + "rev": "59b31b41a589c0a65e4a1f86b0e5eac68081468b", "type": "github" }, "original": { @@ -47,11 +64,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1659725433, - "narHash": "sha256-1ZxuK67TL29YLw88vQ18Y2Y6iYg8Jb7I6/HVzmNB6nM=", + "lastModified": 1672327199, + "narHash": "sha256-pFlngSHXKBhAmbaKZ4FYtu57LLunG+vWdL7a5vw1RvQ=", "owner": "serokell", "repo": "deploy-rs", - "rev": "41f15759dd8b638e7b4f299730d94d5aa46ab7eb", + "rev": "a5619f5660a00f58c2b7c16d89058e92327ac9b8", "type": "github" }, "original": { @@ -63,11 +80,11 @@ "devshell": { "flake": false, "locked": { - "lastModified": 1653917170, - "narHash": "sha256-FyxOnEE/V4PNEcMU62ikY4FfYPo349MOhMM97HS0XEo=", + "lastModified": 1663445644, + "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", "owner": "numtide", "repo": "devshell", - "rev": "fc7a3e3adde9bbcab68af6d1e3c6eb738e296a92", + "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", "type": "github" }, "original": { @@ -79,21 +96,25 @@ "dream2nix": { "inputs": { "alejandra": "alejandra", + "all-cabal-json": "all-cabal-json", "crane": "crane", "devshell": "devshell", + "flake-parts": "flake-parts", "flake-utils-pre-commit": "flake-utils-pre-commit", + "ghc-utils": "ghc-utils", "gomod2nix": "gomod2nix", "mach-nix": "mach-nix", + "nix-pypi-fetcher": "nix-pypi-fetcher", "nixpkgs": "nixpkgs_3", "poetry2nix": "poetry2nix", "pre-commit-hooks": "pre-commit-hooks" }, "locked": { - "lastModified": 1663323895, - "narHash": "sha256-ZmI9C8HNVz2w3OnB79WR/LIgVEY8tDnR8tEPi3hMiJk=", + "lastModified": 1672661134, + "narHash": "sha256-WqBUyKeiv+jI11ug+qP0OnZ4nngK6eBRVTGHgdzEGvc=", "owner": "nix-community", "repo": "dream2nix", - "rev": "25be741ec92c77b8308ca6a7ab89593fe37b6542", + "rev": "9f6911c78dcb0832f7fcc955e847db1a5a9ce29a", "type": "github" }, "original": { @@ -135,11 +156,11 @@ "rust-analyzer-src": "rust-analyzer-src_2" }, "locked": { - "lastModified": 1663396212, - "narHash": "sha256-dlK10QPTDYNpJ/vl2QPKOTrqEbQwAR/v2f4+xsetTkw=", + "lastModified": 1672813381, + "narHash": "sha256-PKt6orRiFO19KFKnOhzK26hbFLtimlRNE2dGwrTEhII=", "owner": "nix-community", "repo": "fenix", - "rev": "263cd7f991c07a9592a6e825bfc37b23b00eb244", + "rev": "eb6583fcd626051c4d284f2fb51cd2659a43e7f6", "type": "github" }, "original": { @@ -151,11 +172,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1648199409, - "narHash": "sha256-JwPKdC2PoVBkG6E+eWw3j6BMR6sL3COpYWfif7RVb8Y=", + "lastModified": 1668681692, + "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "64a525ee38886ab9028e6f61790de0832aa3ef03", + "rev": "009399224d5e398d03b22badca40a37ac85412a1", "type": "github" }, "original": { @@ -167,11 +188,11 @@ "flake-compat_2": { "flake": false, "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "lastModified": 1668681692, + "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "rev": "009399224d5e398d03b22badca40a37ac85412a1", "type": "github" }, "original": { @@ -180,13 +201,31 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1668450977, + "narHash": "sha256-cfLhMhnvXn6x1vPm+Jow3RiFAUSCw/l1utktCw5rVA4=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "d591857e9d7dd9ddbfba0ea02b43b927c3c0f1fa", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "locked": { - "lastModified": 1667077288, - "narHash": "sha256-bdC8sFNDpT0HK74u9fUkpbf1MEzVYJ+ka7NXCdgBoaA=", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", "owner": "numtide", "repo": "flake-utils", - "rev": "6ee9ebb6b1ee695d2cacc4faa053a7b9baa76817", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "type": "github" }, "original": { @@ -226,6 +265,22 @@ "type": "github" } }, + "ghc-utils": { + "flake": false, + "locked": { + "lastModified": 1662774800, + "narHash": "sha256-1Rd2eohGUw/s1tfvkepeYpg8kCEXiIot0RijapUjAkE=", + "ref": "refs/heads/master", + "rev": "bb3a2d3dc52ff0253fb9c2812bd7aa2da03e0fea", + "revCount": 1072, + "type": "git", + "url": "https://gitlab.haskell.org/bgamari/ghc-utils" + }, + "original": { + "type": "git", + "url": "https://gitlab.haskell.org/bgamari/ghc-utils" + } + }, "gomod2nix": { "flake": false, "locked": { @@ -257,13 +312,29 @@ "type": "indirect" } }, + "nix-pypi-fetcher": { + "flake": false, + "locked": { + "lastModified": 1669065297, + "narHash": "sha256-UStjXjNIuIm7SzMOWvuYWIHBkPUKQ8Id63BMJjnIDoA=", + "owner": "DavHau", + "repo": "nix-pypi-fetcher", + "rev": "a9885ac6a091576b5195d547ac743d45a2a615ac", + "type": "github" + }, + "original": { + "owner": "DavHau", + "repo": "nix-pypi-fetcher", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1648219316, - "narHash": "sha256-Ctij+dOi0ZZIfX5eMhgwugfvB+WZSrvVNAyAuANOsnQ=", + "lastModified": 1671417167, + "narHash": "sha256-JkHam6WQOwZN1t2C2sbp1TqMv3TVRjzrdoejqfefwrM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "30d3d79b7d3607d56546dd2a6b49e156ba0ec634", + "rev": "bb31220cca6d044baa6dc2715b07497a2a7c4bc7", "type": "github" }, "original": { @@ -273,45 +344,63 @@ "type": "github" } }, - "nixpkgs-22_05": { + "nixpkgs-lib": { "locked": { - "lastModified": 1667091951, - "narHash": "sha256-62sz0fn06Nq8OaeBYrYSR3Y6hUcp8/PC4dJ7HeGaOhU=", + "dir": "lib", + "lastModified": 1665349835, + "narHash": "sha256-UK4urM3iN80UXQ7EaOappDzcisYIuEURFRoGQ/yPkug=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6440d13df2327d2db13d3b17e419784020b71d22", + "rev": "34c5293a71ffdb2fe054eb5288adc1882c1eb0b1", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1673100377, + "narHash": "sha256-mT76pTd0YFxT6CwtPhDgHJhuIgLY+ZLSMiQpBufwMG4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9f11a2df77cb945c115ae2a65f53f38121597d73", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-22.05", + "ref": "release-22.11", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_2": { "locked": { - "lastModified": 1667564121, - "narHash": "sha256-DlR65WyEW78cBmnOhxDzfvNQ9euJEGctSl77olqEaLg=", + "lastModified": 1673345971, + "narHash": "sha256-4DfFcKLRfVUTyuGrGNNmw37IeIZSoku9tgTVmu/iD98=", "owner": "nixos", "repo": "nixpkgs", - "rev": "1404483f4531560aad73bdebae4096881c910ac0", + "rev": "54644f409ab471e87014bb305eac8c50190bcf48", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-22.05", + "ref": "nixos-22.11", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_3": { "locked": { - "lastModified": 1657638268, - "narHash": "sha256-blBNtQSslAFkg0Gym9fWNJk+bPxGSZib4SOcPrmTPi4=", + "lastModified": 1665580254, + "narHash": "sha256-hO61XPkp1Hphl4HGNzj1VvDH5URt7LI6LaY/385Eul4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d80993b5f885515254746ba6d1917276ee386149", + "rev": "f634d427b0224a5f531ea5aa10c3960ba6ec5f0f", "type": "github" }, "original": { @@ -329,11 +418,11 @@ ] }, "locked": { - "lastModified": 1667620329, - "narHash": "sha256-v1Zk7rtEbAGpevBGPZvZBKpwbmw4I+uVwxvd+pBlp3o=", + "lastModified": 1672979485, + "narHash": "sha256-LrY0K1yya3nvRlGDc98wm68ozVj7E6a1EXXEr7eHp8E=", "owner": "berberman", "repo": "nvfetcher", - "rev": "294826951113dcd3aa9abbcacfb1aa5b95a19116", + "rev": "0a9ac5fd07b52467d81163b1f8c94c12e5c9aff9", "type": "github" }, "original": { @@ -345,16 +434,16 @@ "poetry2nix": { "flake": false, "locked": { - "lastModified": 1632969109, - "narHash": "sha256-jPDclkkiAy5m2gGLBlKgH+lQtbF7tL4XxBrbSzw+Ioc=", + "lastModified": 1666918719, + "narHash": "sha256-BkK42fjAku+2WgCOv2/1NrPa754eQPV7gPBmoKQBWlc=", "owner": "nix-community", "repo": "poetry2nix", - "rev": "aee8f04296c39d88155e05d25cfc59dfdd41cc77", + "rev": "289efb187123656a116b915206e66852f038720e", "type": "github" }, "original": { "owner": "nix-community", - "ref": "1.21.0", + "ref": "1.36.0", "repo": "poetry2nix", "type": "github" } @@ -415,11 +504,11 @@ "rust-analyzer-src_2": { "flake": false, "locked": { - "lastModified": 1662896065, - "narHash": "sha256-1LkSsXzI1JTAmP/GMTz4fTJd8y/tw8R79l96q+h7mu8=", + "lastModified": 1672757238, + "narHash": "sha256-BK1njXsjprMT0f+1aQYmZ/ueN9D3Y3wrz9gw4UvieRQ=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "2e9f1204ca01c3e20898d4a67c8b84899d394a88", + "rev": "a97c71f92d574cb5104e3e1246eb9038d1a214a2", "type": "github" }, "original": { @@ -434,14 +523,14 @@ "nixpkgs": [ "nixpkgs" ], - "nixpkgs-22_05": "nixpkgs-22_05" + "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1667427533, - "narHash": "sha256-MsgTnQEi1g7f8anlW5klHW2pJgam4CLbJaYyBw2ed58=", + "lastModified": 1673147300, + "narHash": "sha256-gR9OEfTzWfL6vG0qkbn1TlBAOlg4LuW8xK/u0V41Ihc=", "owner": "Mic92", "repo": "sops-nix", - "rev": "486b4455da16272c1ed31bc82adcdbe7af829465", + "rev": "2253120d2a6147e57bafb5c689e086221df8032f", "type": "github" }, "original": { @@ -459,11 +548,11 @@ ] }, "locked": { - "lastModified": 1665746303, - "narHash": "sha256-lDVy7aBsAaO5TyeoZS4wL6qcBNuU1bQCcHPJxiEKtao=", - "ref": "master", - "rev": "5d037f9122e68aaa5db62d04810bf0c5e1e4325e", - "revCount": 49, + "lastModified": 1672884793, + "narHash": "sha256-biUbdKq8OaRQm25poaRJalrRq+M+/TrNr7J6rI65lNI=", + "ref": "refs/heads/master", + "rev": "b2894e4fefbdc1c9964ab47c931497a417562d8a", + "revCount": 53, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, @@ -474,11 +563,11 @@ }, "utils": { "locked": { - "lastModified": 1648297722, - "narHash": "sha256-W+qlPsiZd8F3XkzXOzAoR+mpFqzm3ekQkJNa+PIh1BQ=", + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", "owner": "numtide", "repo": "flake-utils", - "rev": "0f8662f1319ad6abf89b3380dd2722369fc51ade", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 7a5daf9..de2ed54 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11"; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { url = "github:Mic92/sops-nix"; @@ -97,7 +97,7 @@ ''; update-nextcloud-apps = let - nvfetcher-bin = "${nvfetcher.defaultPackage.${system}}/bin/nvfetcher"; + nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; in writeShellScript "update-nextcloud-apps" '' cd "$(git rev-parse --show-toplevel)/pkgs" From b798efb2c05a4c30bcba0e7ad2fe523ccd76d017 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 01:57:24 +0000 Subject: [PATCH 048/196] nextcloud: Update the service and apps for 22.11 --- configuration/services/nextcloud.nix | 10 +---- pkgs/_sources_nextcloud/generated.json | 59 ++++++++++++-------------- pkgs/_sources_nextcloud/generated.nix | 52 +++++++++++------------ pkgs/default.nix | 4 +- pkgs/mkNextcloudApp.nix | 15 +++---- pkgs/nextcloud-apps.toml | 27 ++++-------- 6 files changed, 70 insertions(+), 97 deletions(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index fddddde..c25cfb2 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -3,14 +3,14 @@ config, ... }: let - inherit (pkgs) fetchNextcloudApp; - nextcloud = pkgs.nextcloud24; + nextcloud = pkgs.nextcloud25; hostName = "nextcloud.${config.services.nginx.domain}"; in { services.nextcloud = { inherit hostName; package = nextcloud; + enableBrokenCiphersForSSE = false; enable = true; maxUploadSize = "2G"; https = true; @@ -28,12 +28,6 @@ in { }; extraApps = { - # TODO(tlater): Seems like this won't work anymore from - # Nextcloud 25 onwards. - # - # Adopt whatever upstream does with this: - # https://github.com/nextcloud/server/issues/4917 - inherit (pkgs.local) apporder; inherit (pkgs.local) bookmarks calendar contacts cookbook news notes; }; diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index c4a4b55..7752f5e 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,9 +7,8 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-p3VWxTYDCO2NePq6oLM8tBVqYkvoB7itqxp7IZwGDnE=", - "type": "url", + "sha256": "1nx1vdwlqyy3x5vw2h2xx51hmv7gsp8mam1fj813yc3655js9m96", + "type": "tarball", "url": "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz" }, "version": "v0.15.0" @@ -22,12 +21,11 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-URqtzaCx8FEZHCDP1wSBUFNs+x50jesRtWi+xOU1oXM=", - "type": "url", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz" + "sha256": "0dkfjafbynkrymsq183sad7zynqr2qls0cld73nvzn3smnvdl2xx", + "type": "tarball", + "url": "https://github.com/nextcloud/bookmarks/releases/download/v12.0.0/bookmarks-12.0.0.tar.gz" }, - "version": "11.0.4" + "version": "12.0.0" }, "calendar": { "cargoLocks": null, @@ -37,12 +35,11 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-+LRGl9h40AQdWN9SW+NqGwTafAGwV07Af8nVs3pUCm0=", - "type": "url", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.0/calendar-v3.5.0.tar.gz" + "sha256": "06p92w2idml5g3zc0xhp25rpgkxm3d5pmxpx7dmqlqvw8r6z07an", + "type": "tarball", + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.0/calendar-v4.2.0.tar.gz" }, - "version": "v3.5.0" + "version": "v4.2.0" }, "contacts": { "cargoLocks": null, @@ -52,12 +49,11 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-GTiyZsUHBXPgQ17DHAihmt2W/ZnAjDwfgwnujkRwk6A=", - "type": "url", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz" + "sha256": "097a71if6kkc7nphfc8b6llqlsskjwp1vg83134hzgfscvllvaj8", + "type": "tarball", + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.0.2/contacts-v5.0.2.tar.gz" }, - "version": "v4.2.2" + "version": "v5.0.2" }, "cookbook": { "cargoLocks": null, @@ -67,12 +63,11 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-3lCqvmaMsgrFD5PzyHIcwxxGeC+qOMTGxbOi7nPFL6I=", - "type": "url", - "url": "https://github.com/nextcloud/cookbook/releases/download/v0.9.17/Cookbook-0.9.17.tar.gz" + "sha256": "1xpy060yi7pl8i91xjv2jj18yvsmjzwmv91y7i686qq8n2kc1fcg", + "type": "tarball", + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.1/Cookbook-0.10.1.tar.gz" }, - "version": "0.9.17" + "version": "0.10.1" }, "news": { "cargoLocks": null, @@ -82,12 +77,11 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-lVF4H9v7bSw8137lfq4PsVg8e1TpcgvJVQU/UVQfSoY=", - "type": "url", - "url": "https://github.com/nextcloud/news/releases/download/19.0.0/news.tar.gz" + "sha256": "0pnriarr2iqci2v2hn6vpvszf4m4pkcxsd2i13bp7n1zqkg6swd7", + "type": "tarball", + "url": "https://github.com/nextcloud/news/releases/download/20.0.0/news.tar.gz" }, - "version": "19.0.0" + "version": "20.0.0" }, "notes": { "cargoLocks": null, @@ -97,11 +91,10 @@ "passthru": null, "pinned": false, "src": { - "name": null, - "sha256": "sha256-rd3uVkVtARX4enRAWm1ivV468lboYZnYe7/zsqaHYpk=", - "type": "url", - "url": "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz" + "sha256": "1jcgv3awr45jq3n3qv851qlpbdl2plixba0iq2s54dmhciypdckl", + "type": "tarball", + "url": "https://github.com/nextcloud/notes/releases/download/v4.6.0/notes.tar.gz" }, - "version": "v4.5.1" + "version": "v4.6.0" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 324306d..f3a0521 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -4,57 +4,57 @@ apporder = { pname = "apporder"; version = "v0.15.0"; - src = fetchurl { + src = fetchTarball { url = "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz"; - sha256 = "sha256-p3VWxTYDCO2NePq6oLM8tBVqYkvoB7itqxp7IZwGDnE="; + sha256 = "1nx1vdwlqyy3x5vw2h2xx51hmv7gsp8mam1fj813yc3655js9m96"; }; }; bookmarks = { pname = "bookmarks"; - version = "11.0.4"; - src = fetchurl { - url = "https://github.com/nextcloud/bookmarks/releases/download/v11.0.4/bookmarks-11.0.4.tar.gz"; - sha256 = "sha256-URqtzaCx8FEZHCDP1wSBUFNs+x50jesRtWi+xOU1oXM="; + version = "12.0.0"; + src = fetchTarball { + url = "https://github.com/nextcloud/bookmarks/releases/download/v12.0.0/bookmarks-12.0.0.tar.gz"; + sha256 = "0dkfjafbynkrymsq183sad7zynqr2qls0cld73nvzn3smnvdl2xx"; }; }; calendar = { pname = "calendar"; - version = "v3.5.0"; - src = fetchurl { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v3.5.0/calendar-v3.5.0.tar.gz"; - sha256 = "sha256-+LRGl9h40AQdWN9SW+NqGwTafAGwV07Af8nVs3pUCm0="; + version = "v4.2.0"; + src = fetchTarball { + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.0/calendar-v4.2.0.tar.gz"; + sha256 = "06p92w2idml5g3zc0xhp25rpgkxm3d5pmxpx7dmqlqvw8r6z07an"; }; }; contacts = { pname = "contacts"; - version = "v4.2.2"; - src = fetchurl { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v4.2.2/contacts-v4.2.2.tar.gz"; - sha256 = "sha256-GTiyZsUHBXPgQ17DHAihmt2W/ZnAjDwfgwnujkRwk6A="; + version = "v5.0.2"; + src = fetchTarball { + url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.0.2/contacts-v5.0.2.tar.gz"; + sha256 = "097a71if6kkc7nphfc8b6llqlsskjwp1vg83134hzgfscvllvaj8"; }; }; cookbook = { pname = "cookbook"; - version = "0.9.17"; - src = fetchurl { - url = "https://github.com/nextcloud/cookbook/releases/download/v0.9.17/Cookbook-0.9.17.tar.gz"; - sha256 = "sha256-3lCqvmaMsgrFD5PzyHIcwxxGeC+qOMTGxbOi7nPFL6I="; + version = "0.10.1"; + src = fetchTarball { + url = "https://github.com/nextcloud/cookbook/releases/download/v0.10.1/Cookbook-0.10.1.tar.gz"; + sha256 = "1xpy060yi7pl8i91xjv2jj18yvsmjzwmv91y7i686qq8n2kc1fcg"; }; }; news = { pname = "news"; - version = "19.0.0"; - src = fetchurl { - url = "https://github.com/nextcloud/news/releases/download/19.0.0/news.tar.gz"; - sha256 = "sha256-lVF4H9v7bSw8137lfq4PsVg8e1TpcgvJVQU/UVQfSoY="; + version = "20.0.0"; + src = fetchTarball { + url = "https://github.com/nextcloud/news/releases/download/20.0.0/news.tar.gz"; + sha256 = "0pnriarr2iqci2v2hn6vpvszf4m4pkcxsd2i13bp7n1zqkg6swd7"; }; }; notes = { pname = "notes"; - version = "v4.5.1"; - src = fetchurl { - url = "https://github.com/nextcloud/notes/releases/download/v4.5.1/notes.tar.gz"; - sha256 = "sha256-rd3uVkVtARX4enRAWm1ivV468lboYZnYe7/zsqaHYpk="; + version = "v4.6.0"; + src = fetchTarball { + url = "https://github.com/nextcloud/notes/releases/download/v4.6.0/notes.tar.gz"; + sha256 = "1jcgv3awr45jq3n3qv851qlpbdl2plixba0iq2s54dmhciypdckl"; }; }; } diff --git a/pkgs/default.nix b/pkgs/default.nix index 545984a..3818a26 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -2,7 +2,7 @@ pkgs, lib, }: let - inherit (builtins) listToAttrs mapAttrs; + inherit (builtins) fromJSON mapAttrs readFile; inherit (pkgs) callPackage; in { @@ -12,7 +12,7 @@ in # Add nextcloud apps let mkNextcloudApp = pkgs.callPackage ./mkNextcloudApp.nix {}; - sources = pkgs.callPackage ./_sources_nextcloud/generated.nix {}; + sources = fromJSON (readFile ./_sources_nextcloud/generated.json); in mapAttrs (_: source: mkNextcloudApp source) sources ) diff --git a/pkgs/mkNextcloudApp.nix b/pkgs/mkNextcloudApp.nix index 3c78a94..6430ac1 100644 --- a/pkgs/mkNextcloudApp.nix +++ b/pkgs/mkNextcloudApp.nix @@ -1,13 +1,8 @@ { fetchNextcloudApp, lib, -}: let - inherit (lib) removePrefix; -in - source: - fetchNextcloudApp { - name = source.pname; - version = removePrefix "v" source.version; - url = source.src.url; - sha256 = source.src.outputHash; - } +}: source: +fetchNextcloudApp { + url = source.src.url; + sha256 = source.src.sha256; +} diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 6e06432..69bccdc 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,35 +1,26 @@ -[apporder] -src.github = "juliushaertl/apporder" -fetch.url = "https://github.com/juliushaertl/apporder/releases/download/$ver/apporder.tar.gz" - [bookmarks] src.github = "nextcloud/bookmarks" src.prefix = "v" -fetch.url = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" +fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] -src.manual = "v3.5.0" # Pinned until we update to nextcloud 25 -# src.github = "nextcloud-releases/calendar" -fetch.url = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" +src.github = "nextcloud-releases/calendar" +fetch.tarball = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" [contacts] -src.manual = "v4.2.2" # Pinned until we update to nextcloud 25 -# src.github = "nextcloud-releases/contacts" -fetch.url = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" +src.github = "nextcloud-releases/contacts" +fetch.tarball = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] src.github_tag = "nextcloud/cookbook" src.prefix = "v" src.exclude_regex = 'v\d+\.\d+\.\d+-rc\d+' -fetch.url = "https://github.com/nextcloud/cookbook/releases/download/v$ver/Cookbook-$ver.tar.gz" +fetch.tarball = "https://github.com/nextcloud/cookbook/releases/download/v$ver/Cookbook-$ver.tar.gz" [news] src.github = "nextcloud/news" -# Sadly, the news app vendors things, and those are only included in -# their tarball. -fetch.url = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" +fetch.tarball = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" [notes] -src.manual = "v4.5.1" # Pinned until we update to nextcloud 25 -# src.github = "nextcloud/notes" -fetch.url = "https://github.com/nextcloud/notes/releases/download/$ver/notes.tar.gz" +src.github = "nextcloud/notes" +fetch.tarball = "https://github.com/nextcloud/notes/releases/download/$ver/notes.tar.gz" From 544bd0a721cf9cc31a38c36b4e7cddcc6969a9cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 01:59:04 +0000 Subject: [PATCH 049/196] keys/staging: Add a few missing keys that made the vm break --- keys/staging.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/keys/staging.yaml b/keys/staging.yaml index 9adfde8..069a405 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -5,14 +5,17 @@ steam: turn: env: ENC[AES256_GCM,data:xjIz/AY109lyiL5N01p5T3HcYco/rM5CJSRTtg==,iv:16bW6OpyOK/QL0QPGQp/Baa9xyT8E3ZsYkwqmjuofk0=,tag:J5re3uKxIykw3YunvQWBgg==,type:str] secret: ENC[AES256_GCM,data:eQ7dAocoZtg=,iv:fgzjTPv30WqTKlLy+yMn5MsKQgjhPnwlGFFwYEg3gWs=,tag:1ze33U1NBkgMX/9SiaBNQg==,type:str] + ssl-key: ENC[AES256_GCM,data:RYfwHjBvwFXgXxXIEuWUzaycTdrCvmPivsNvvUIwDRynS5G2Dl6RCVp1w9zuLvoNun5ncUPGGuLMmVqN2wkJlw==,iv:UKI3bVTY7iTDNvp5UqrZ3QlQkMZ5p2bjgODEc6DCBfQ=,tag:sz7VTyRWyZxAsP4nE48DnA==,type:str] + #ENC[AES256_GCM,data:bxhKzU5Tzezl749CDu8e8kxa7ahGuZFaPa9K3kxuD+4sg5Hi3apgDlC0n8oK0DeiK4Ks7+9Cyw==,iv:T/zVJUpNAv1rR0a9+6SDTG08ws2A1hFBs5Ia3TpT0uk=,tag:uGXb1VryM+lIJ8r0I5durA==,type:comment] + ssl-cert: ENC[AES256_GCM,data:xHUr14CjKslgbGh/n5jYSOuCw9JRxS6YXE4fxS+aJzFcNeSeGNqoipPeuJupZGBnQP/FCqohiHY=,iv:/OEsVqRshGL9NIvntMC42EPZSNL0u6EfhtUBqgV7qog=,tag:4pxtNjuvy/ibm6nDtKdSkw==,type:str] sops: kms: [] gcp_kms: [] azure_kv: [] hc_vault: [] age: [] - lastmodified: "2022-10-28T22:54:01Z" - mac: ENC[AES256_GCM,data:1nsv+Dl7lzRZNNb9kSuqFrXrcncIklw/A2uwd/yQQ546Rm/4gzpBZqCi6cv5VBCdc1iNuBcAM74DnZHMDmeWAiW0WfACPJMQjCes21P6IUsP2gu+bV2f9qqqnP2a5voxzFHp1aclklzMiiZJBEB1Y3UNz0ZG7A43hsOAE0/fJ9o=,iv:kY10PF5ErkKHXx8m0OyX2eU6kcFQsrsP3V2scVBMsuA=,tag:Uth0XfP2c0LBJQ7+7Uc0BQ==,type:str] + lastmodified: "2023-01-11T01:49:31Z" + mac: ENC[AES256_GCM,data:5IcHdNQ/mh6Jz60dlpgqbBtVGKYml4EOs7YXsBcejgAoPzZqEK+xb3f9+rq2G6sCcMXzROHJsdQUfp1wMgfp8DwVm4H+XO+SQh/E1kFuWO8G/IpXOT4P9RQC+wHxrVuxHd8pwl9CLv6uuMnO+FNg9TeWB2GAVxIBsY8JHwGN/BA=,iv:/Yqfij58LGNooyyhmr8aWCpknd4dN+b4iSvokVoDGls=,tag:XHm8Qcg75B1+pTOcgZubIQ==,type:str] pgp: - created_at: "2022-10-12T16:48:23Z" enc: | From 77ddb15f22038cfe537167e81f984b1565a05178 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 01:59:35 +0000 Subject: [PATCH 050/196] flake.nix: Build the VM using `nix build` --- flake.nix | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/flake.nix b/flake.nix index de2ed54..2aa6c0b 100644 --- a/flake.nix +++ b/flake.nix @@ -73,15 +73,14 @@ ################### packages.${system} = let inherit (nixpkgs.legacyPackages.${system}) writeShellScript; + vm = self.lib.makeNixosSystem { + inherit system; + extraModules = [(import ./configuration/hardware-specific/vm.nix)]; + }; in { - default = self.packages.${system}.run-vm; + default = vm.config.system.build.vm; run-vm = let - vm = self.lib.makeNixosSystem { - inherit system; - extraModules = [(import ./configuration/hardware-specific/vm.nix)]; - }; - qemuNetOpts = self.lib.makeQemuNetOpts { "2222" = "2222"; "3080" = "80"; @@ -105,9 +104,7 @@ ''; }; - apps.${system} = let - inherit (nixpkgs.legacyPackages.${system}) writeShellScript; - in { + apps.${system} = { default = { type = "app"; program = builtins.toString self.packages.${system}.run-vm; From f6e39e09a5ce40f2235546ca59a95f361c2a4152 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 01:59:54 +0000 Subject: [PATCH 051/196] gitea: Update configuration for 22.11 --- configuration/services/gitea.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index f346097..1d3308a 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -8,12 +8,15 @@ in { httpAddress = "127.0.0.1"; database.type = "postgres"; - ssh.clonePort = 2222; rootUrl = "https://${domain}/"; - cookieSecure = true; appName = "Gitea: Git with a cup of tea"; - disableRegistration = true; + + settings = { + server.SSH_PORT = 2222; + service.DISABLE_REGISTRATION = true; + session.COOKIE_SECURE = true; + }; }; # Set up SSL From 957ab110c5ae2f23771009fc0c33e16993c0bf5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 02:00:13 +0000 Subject: [PATCH 052/196] firewall: Open Minecraft ports for port forwarding --- configuration/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/configuration/default.nix b/configuration/default.nix index 34a7868..b84937e 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -63,6 +63,8 @@ 8448 # starbound 21025 + # Minecraft + 25565 config.services.coturn.listening-port config.services.coturn.tls-listening-port @@ -71,6 +73,9 @@ ]; allowedUDPPorts = [ + # More minecraft + 25565 + config.services.coturn.listening-port config.services.coturn.tls-listening-port config.services.coturn.alt-listening-port From b7726af1c4d6c7bc7dc6874516aae809ceadd0f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 02:00:33 +0000 Subject: [PATCH 053/196] config: Make changes suggested post 22.11 update --- configuration/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index b84937e..d090cef 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -35,11 +35,11 @@ ''; # Enable remote builds from tlater - trustedUsers = ["@wheel"]; + settings.trusted-users = ["@wheel"]; }; nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) ["steam-original" "steam-runtime" "steamcmd"]; + builtins.elem (lib.getName pkg) ["steam-original" "steam-runtime" "steam-run" "steamcmd"]; # Optimization for minecraft servers, see: # https://bugs.mojang.com/browse/MC-183518 From b7feffc52f25f75af8b20c7c0212475df028e983 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 11 Jan 2023 02:33:53 +0000 Subject: [PATCH 054/196] hardware-configuration: Update to new auto-generated settings --- .../linode/hardware-configuration.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/configuration/hardware-specific/linode/hardware-configuration.nix b/configuration/hardware-specific/linode/hardware-configuration.nix index 2a33a67..c1776d5 100644 --- a/configuration/hardware-specific/linode/hardware-configuration.nix +++ b/configuration/hardware-specific/linode/hardware-configuration.nix @@ -8,7 +8,7 @@ [ (modulesPath + "/profiles/qemu-guest.nix") ]; - boot.initrd.availableKernelModules = [ "virtio_pci" "ahci" "sd_mod" ]; + boot.initrd.availableKernelModules = [ "virtio_pci" "virtio_scsi" "ahci" "sd_mod" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ ]; boot.extraModulePackages = [ ]; @@ -27,5 +27,13 @@ [ { device = "/dev/disk/by-uuid/45c8ad29-3861-4e68-a566-47e6d9269dca"; } ]; - nix.maxJobs = lib.mkDefault 2; + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eth0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; } From bb397841eee0986be2b2e0949be83d28f9958d3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 26 Feb 2023 05:44:54 +0000 Subject: [PATCH 055/196] refactoring: Use flake-inputs instead of awkwardly passing through --- configuration/default.nix | 4 ++++ flake.nix | 27 +++++++++++++++++---------- lib/default.nix | 22 +--------------------- 3 files changed, 22 insertions(+), 31 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index d090cef..2a4ce63 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -3,9 +3,13 @@ pkgs, lib, modulesPath, + flake-inputs, ... }: { imports = [ + flake-inputs.sops-nix.nixosModules.sops + flake-inputs.tlaternet-webserver.nixosModules.default + "${modulesPath}/profiles/headless.nix" "${modulesPath}/profiles/minimal.nix" (import ../modules) diff --git a/flake.nix b/flake.nix index 2aa6c0b..ec8a157 100644 --- a/flake.nix +++ b/flake.nix @@ -24,8 +24,8 @@ sops-nix, nvfetcher, deploy-rs, - tlaternet-webserver, - }: let + ... + } @ inputs: let system = "x86_64-linux"; in { ################## @@ -33,9 +33,14 @@ ################## nixosConfigurations = { # The actual system definition - tlaternet = self.lib.makeNixosSystem { + tlaternet = nixpkgs.lib.nixosSystem { inherit system; - extraModules = [(import ./configuration/hardware-specific/linode)]; + specialArgs.flake-inputs = inputs; + + modules = [ + ./configuration + ./configuration/hardware-specific/linode + ]; }; }; @@ -63,19 +68,21 @@ #################### # Helper functions # #################### - lib = import ./lib { - inherit nixpkgs sops-nix tlaternet-webserver; - lib = nixpkgs.lib; - }; + lib = import ./lib {inherit (nixpkgs) lib;}; ################### # Utility scripts # ################### packages.${system} = let inherit (nixpkgs.legacyPackages.${system}) writeShellScript; - vm = self.lib.makeNixosSystem { + vm = nixpkgs.lib.nixosSystem { inherit system; - extraModules = [(import ./configuration/hardware-specific/vm.nix)]; + specialArgs.flake-inputs = inputs; + + modules = [ + ./configuration + ./configuration/hardware-specific/vm.nix + ]; }; in { default = vm.config.system.build.vm; diff --git a/lib/default.nix b/lib/default.nix index 5f6b68f..20d874d 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,9 +1,4 @@ -{ - lib, - nixpkgs, - sops-nix, - tlaternet-webserver, -}: let +{lib}: let inherit (lib.attrsets) mapAttrsToList; inherit (lib.strings) concatStringsSep; in { @@ -12,19 +7,4 @@ in { (mapAttrsToList (host: vm: "hostfwd=::${host}-:${vm}") portMapping); - - makeNixosSystem = { - system, - extraModules, - }: - nixpkgs.lib.nixosSystem { - inherit system; - modules = - [ - sops-nix.nixosModules.sops - tlaternet-webserver.nixosModules.default - (import ../configuration) - ] - ++ extraModules; - }; } From 33ec32a8da2fc55a9459eb3a8f1a1196e5da68de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 26 Feb 2023 05:46:11 +0000 Subject: [PATCH 056/196] conduit: Update to 0.5.0 --- configuration/services/conduit.nix | 2 ++ flake.lock | 17 +++++++++++++++++ flake.nix | 1 + 3 files changed, 20 insertions(+) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 6da82da..bf63305 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -1,6 +1,7 @@ { config, lib, + flake-inputs, ... }: let inherit (lib.strings) concatMapStringsSep; @@ -11,6 +12,7 @@ in { services.matrix-conduit = { enable = true; + package = flake-inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.matrix-conduit; settings.global = { address = "127.0.0.1"; server_name = domain; diff --git a/flake.lock b/flake.lock index e156a33..5793ce8 100644 --- a/flake.lock +++ b/flake.lock @@ -378,6 +378,22 @@ "type": "github" } }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1677342105, + "narHash": "sha256-kv1fpkfCJGb0M+LZaCHFUuIS9kRIwyVgupHu86Y28nc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "b1f87ca164a9684404c8829b851c3586c4d9f089", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1673345971, @@ -479,6 +495,7 @@ "inputs": { "deploy-rs": "deploy-rs", "nixpkgs": "nixpkgs_2", + "nixpkgs-unstable": "nixpkgs-unstable", "nvfetcher": "nvfetcher", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" diff --git a/flake.nix b/flake.nix index ec8a157..3f3865c 100644 --- a/flake.nix +++ b/flake.nix @@ -3,6 +3,7 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11"; + nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { url = "github:Mic92/sops-nix"; From 74f38614a0816dc5d45012042279615ba5405765 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 23 Feb 2023 09:08:56 +0000 Subject: [PATCH 057/196] matrix: Add heisenbridge --- configuration/services/conduit.nix | 82 ++++++++++++++++++++++++++++++ configuration/sops.nix | 2 + keys/production.yaml | 7 ++- keys/staging.yaml | 7 ++- 4 files changed, 94 insertions(+), 4 deletions(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index bf63305..871b5e2 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -1,4 +1,5 @@ { + pkgs, config, lib, flake-inputs, @@ -30,6 +31,87 @@ in { }; }; + systemd.services.heisenbridge = let + replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; + registrationFile = builtins.toFile "heisenbridge-registration.yaml" (builtins.toJSON { + id = "heisenbridge"; + url = "http://127.0.0.1:9898"; + as_token = "@AS_TOKEN@"; + hs_token = "@HS_TOKEN@"; + rate_limited = false; + sender_localpart = "heisenbridge"; + namespaces = { + users = [ + { + regex = "@irc_.*"; + exclusive = true; + } + { + regex = "@heisenbridge:.*"; + exclusive = true; + } + ]; + aliases = []; + rooms = []; + }; + }); + + # TODO(tlater): Starting with systemd 253 it will become possible + # to do the credential setup as part of ExecStartPre/preStart + # instead. + # + # This will also make it possible to actually set caps on the + # heisenbridge process using systemd, so that we can run the + # identd process. + execScript = pkgs.writeShellScript "heisenbridge" '' + cp ${registrationFile} "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" + chmod 600 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml + ${replaceSecretBin} '@AS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_as-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" + ${replaceSecretBin} '@HS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_hs-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" + chmod 400 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml + + ${pkgs.heisenbridge}/bin/heisenbridge \ + --config $RUNTIME_DIRECTORY/heisenbridge-registration.yaml \ + --owner @tlater:matrix.tlater.net \ + 'http://localhost:${toString cfg.settings.global.port}' + ''; + in { + description = "Matrix<->IRC bridge"; + wantedBy = ["multi-user.target"]; + after = ["conduit.service"]; + + serviceConfig = { + Type = "simple"; + + LoadCredential = "heisenbridge:/run/secrets/heisenbridge"; + + ExecStart = execScript; + + DynamicUser = true; + RuntimeDirectory = "heisenbridge"; + RuntimeDirectoryMode = "0700"; + + RestrictNamespaces = true; + PrivateUsers = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + RestrictAddressFamilies = ["AF_INET AF_INET6"]; + LockPersonality = true; + RestrictRealtime = true; + ProtectProc = "invisible"; + ProcSubset = "pid"; + UMask = 0077; + + # For the identd port + # CapabilityBoundingSet = ["CAP_NET_BIND_SERVICE"]; + # AmbientCapabilities = ["CAP_NET_BIND_SERVICE"]; + }; + }; + # Pass in the TURN secret via EnvironmentFile, not supported by # upstream module currently. # diff --git a/configuration/sops.nix b/configuration/sops.nix index 21613b2..d02b3f0 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -6,6 +6,8 @@ group = "nextcloud"; }; secrets."steam/tlater" = {}; + secrets."heisenbridge/as-token" = {}; + secrets."heisenbridge/hs-token" = {}; secrets."turn/env" = {}; secrets."turn/secret" = { owner = "turnserver"; diff --git a/keys/production.yaml b/keys/production.yaml index 6bc16ad..666b893 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -2,6 +2,9 @@ nextcloud: tlater: ENC[AES256_GCM,data:zNsPm4uFaIRe3LjcwmayRg==,iv:5wam6bP5zP708jC9UrLV0s8qspl3Pm4fPzbMFYBUyPQ=,tag:apnJUMeJwMn9q0NhO4ptmA==,type:str] steam: tlater: ENC[AES256_GCM,data:HNsve/Wid40ftclO9n09yXg=,iv:VQxAz4eR9lfxEvM0zl1FpJpbKrEFxjIYLyCqL9Aool0=,tag:LHcpHCXAHe8p2kOvOnKXyw==,type:str] +heisenbridge: + as-token: ENC[AES256_GCM,data:+2yo6T18j34622H8ZWblAFB2phLw1q0k0vUQEZ5sFj7dQaRnkEiAMi0R3p17Zq0pOtGEC0RRZuPLYkcZ1oKP0w==,iv:lGwrQYp//FufpmJocrLIVyy9RK7lEEVcpAi0wmkjr34=,tag:yV06UbhAYJQz36O2XdhY+A==,type:str] + hs-token: ENC[AES256_GCM,data:u52WpkQFd/J7JFoE/rfNluebyZQLOokvkVdL7+AEAvrhJhrkJli1ztkD79lbC+6tGUH4tT3T+nX9wvGKnrRUQg==,iv:as+9fVuvMg2IoE2WIKD9mHi+znhNcWRh5Zq+yr0xcDQ=,tag:mZ7fh7U0MfgI8hyq/28Bcg==,type:str] turn: env: ENC[AES256_GCM,data:kt5nhVo9pb/ZbPUEcqSYXxN9YMgQKnFb5VRfFFS/qoIaJ73uD2fuJKqcxAyVRrdLqnSAWSQBgTgunBzdP7xqLAK2qt8DYAQWHkIe9uxFbSXZpdmw,iv:9lq6SFwTFN4GGm6gPiJpUMasMdnHVF6XLGYrsyG3kjU=,tag:428Qf9DOiiHt/Wjb188b8g==,type:str] secret: ENC[AES256_GCM,data:si7ee6Xfhdgdyzbp6aQpF7pz3TmTBb7iQ82lRPVXNDg9JfHI+lbmgAsSnRLX5qMCA6P9R045sSMosqidL8QwRg==,iv:SrhpZKK8D45yxCEfDb9P3TwtA14+qEI+wcRqcN/a6pw=,tag:PiwV+mOL9xHJgJft6sc61g==,type:str] @@ -14,8 +17,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2022-11-05T18:45:55Z" - mac: ENC[AES256_GCM,data:xPCfjqVkewEqrUjHroXa9RGHITntVj2uGPaRZfj0lqTUPFG6GQDn3Yq6L6cV3EPOYQ4OedJlaVXy05OHkzZwjYEbBQVGQ0aH/ZOP7X301eebBX5MvHLFU4mcnjMITWGH/E7SXz3pPF75s9eM/onx374PcQt6zevbBF+Jp0Fz71I=,iv:84JL69nF3ougygMAVFOoTaCn37thvm4lF6HYdgTiftg=,tag:ATQ18acehgUAE/dX+vYugQ==,type:str] + lastmodified: "2023-02-21T10:51:11Z" + mac: ENC[AES256_GCM,data:uMqT+7ljd6t1RpF9IH7illO62pq5cERoAtJlRic5BNOeawy/+7ufVorhhya15m39WTKnlGyIY0MEd3tDueHBm4rjf+Pmh6PQ+owRv+deXHv0jXYWX2sz/6i1aYbv9DDMWsvNbkdidKEme+ctY6EVgjSjN5nxxcx+vH+u1OyQ3t0=,iv:VKXznTlMH34SOS+4dpfOVaoiiUTRmIbUMnTPNpyawvY=,tag:onA5C4o/tcGjdBxO9JxMGw==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | diff --git a/keys/staging.yaml b/keys/staging.yaml index 069a405..41e20ac 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -2,6 +2,9 @@ nextcloud: tlater: ENC[AES256_GCM,data:91kDcO4hpng=,iv:ayuILRmRru4ZxTCur9H2xHuLjkDzwPdS/4lEog/tesU=,tag:qYhJxnNDcCwUM7xe7Tlcjw==,type:str] steam: tlater: ENC[AES256_GCM,data:jcW4wacGzOQ=,iv:KstKGHflscSWDFXGbnAZUcsqGN4Ot+w7sRbsAUwZNHQ=,tag:n9sRWvaKSgagpIgV/NF/Og==,type:str] +heisenbridge: + as-token: ENC[AES256_GCM,data:tXbOeo7nv8I=,iv:wJAKcOXX9nGIw4n38ThOoj29u7dUWhsxSQG/p79JlEw=,tag:rTVaGS2UuWcea1uBa8YX2g==,type:str] + hs-token: ENC[AES256_GCM,data:VBwvwomv0Xg=,iv:q6INtJ+rg+QiXj8uBdBzQYQZUBBXp+9odxDHwvu8Jxc=,tag:XKhm8nxygAkKaiVPJ2Fcdg==,type:str] turn: env: ENC[AES256_GCM,data:xjIz/AY109lyiL5N01p5T3HcYco/rM5CJSRTtg==,iv:16bW6OpyOK/QL0QPGQp/Baa9xyT8E3ZsYkwqmjuofk0=,tag:J5re3uKxIykw3YunvQWBgg==,type:str] secret: ENC[AES256_GCM,data:eQ7dAocoZtg=,iv:fgzjTPv30WqTKlLy+yMn5MsKQgjhPnwlGFFwYEg3gWs=,tag:1ze33U1NBkgMX/9SiaBNQg==,type:str] @@ -14,8 +17,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-01-11T01:49:31Z" - mac: ENC[AES256_GCM,data:5IcHdNQ/mh6Jz60dlpgqbBtVGKYml4EOs7YXsBcejgAoPzZqEK+xb3f9+rq2G6sCcMXzROHJsdQUfp1wMgfp8DwVm4H+XO+SQh/E1kFuWO8G/IpXOT4P9RQC+wHxrVuxHd8pwl9CLv6uuMnO+FNg9TeWB2GAVxIBsY8JHwGN/BA=,iv:/Yqfij58LGNooyyhmr8aWCpknd4dN+b4iSvokVoDGls=,tag:XHm8Qcg75B1+pTOcgZubIQ==,type:str] + lastmodified: "2023-02-21T08:32:04Z" + mac: ENC[AES256_GCM,data:ZZtL4zYX7FsYeGJ1CcTq5AzRkrvOxIeCoVf77JyEj9k3gApm3k7z2eXe/D+8qvwahlleuvAqhVCUH/I5yHaQSjXXsHO1flULiTnQVk4hrX0fDwXp97NQwpvDovSRyGqx4F25dISfYLVhFpb+64yaPxqMzThVk+Q7Xn40GCY5PR8=,iv:xNeyqB5K2EBDDJEq72IDwpGqzKkAlcxHO6GlJY/iHmM=,tag:Qxz0GTQ/I4EsZhFZh2VxKg==,type:str] pgp: - created_at: "2022-10-12T16:48:23Z" enc: | From 8ac5fa9357e9ff2c664585817f1be57fd951d040 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 28 Feb 2023 04:38:41 +0000 Subject: [PATCH 058/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/a5619f5660a00f58c2b7c16d89058e92327ac9b8' (2022-12-29) → 'github:serokell/deploy-rs/8c9ea9605eed20528bf60fae35a2b613b901fd77' (2023-01-19) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/54644f409ab471e87014bb305eac8c50190bcf48' (2023-01-10) → 'github:nixos/nixpkgs/8bd260eb578e3fea6bce158b24c93ab158d031e7' (2023-02-26) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/b1f87ca164a9684404c8829b851c3586c4d9f089' (2023-02-25) → 'github:nixos/nixpkgs/7f5639fa3b68054ca0b062866dc62b22c3f11505' (2023-02-26) • Updated input 'sops-nix': 'github:Mic92/sops-nix/2253120d2a6147e57bafb5c689e086221df8032f' (2023-01-08) → 'github:Mic92/sops-nix/83fe25c8019db8216f5c6ffc65b394707784b4f3' (2023-02-26) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/9f11a2df77cb945c115ae2a65f53f38121597d73' (2023-01-07) → 'github:NixOS/nixpkgs/ea736343e4d4a052e023d54b23334cf685de479c' (2023-02-25) • Updated input 'tlaternet-webserver': 'git+https://gitea.tlater.net/tlaternet/tlaternet.git?ref=refs%2fheads%2fmaster&rev=b2894e4fefbdc1c9964ab47c931497a417562d8a' (2023-01-05) → 'git+https://gitea.tlater.net/tlaternet/tlaternet.git?ref=refs%2fheads%2fmaster&rev=d142e98788c2476b7df0a5c1e621f3f5c65c130f' (2023-01-21) --- flake.lock | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/flake.lock b/flake.lock index 5793ce8..dd0c7bc 100644 --- a/flake.lock +++ b/flake.lock @@ -64,11 +64,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1672327199, - "narHash": "sha256-pFlngSHXKBhAmbaKZ4FYtu57LLunG+vWdL7a5vw1RvQ=", + "lastModified": 1674127017, + "narHash": "sha256-QO1xF7stu5ZMDLbHN30LFolMAwY6TVlzYvQoUs1RD68=", "owner": "serokell", "repo": "deploy-rs", - "rev": "a5619f5660a00f58c2b7c16d89058e92327ac9b8", + "rev": "8c9ea9605eed20528bf60fae35a2b613b901fd77", "type": "github" }, "original": { @@ -364,11 +364,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1673100377, - "narHash": "sha256-mT76pTd0YFxT6CwtPhDgHJhuIgLY+ZLSMiQpBufwMG4=", + "lastModified": 1677367679, + "narHash": "sha256-pOMXi7F9tcHls06Qv+7XCPASTJeXu47Jhd0Pk9du8T4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9f11a2df77cb945c115ae2a65f53f38121597d73", + "rev": "ea736343e4d4a052e023d54b23334cf685de479c", "type": "github" }, "original": { @@ -380,11 +380,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1677342105, - "narHash": "sha256-kv1fpkfCJGb0M+LZaCHFUuIS9kRIwyVgupHu86Y28nc=", + "lastModified": 1677407201, + "narHash": "sha256-3blwdI9o1BAprkvlByHvtEm5HAIRn/XPjtcfiunpY7s=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b1f87ca164a9684404c8829b851c3586c4d9f089", + "rev": "7f5639fa3b68054ca0b062866dc62b22c3f11505", "type": "github" }, "original": { @@ -396,11 +396,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1673345971, - "narHash": "sha256-4DfFcKLRfVUTyuGrGNNmw37IeIZSoku9tgTVmu/iD98=", + "lastModified": 1677447818, + "narHash": "sha256-dgXEUbz2hgaJL4xCD/5JLhA36UJOhP4qn7Cp6UZhB0I=", "owner": "nixos", "repo": "nixpkgs", - "rev": "54644f409ab471e87014bb305eac8c50190bcf48", + "rev": "8bd260eb578e3fea6bce158b24c93ab158d031e7", "type": "github" }, "original": { @@ -543,11 +543,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1673147300, - "narHash": "sha256-gR9OEfTzWfL6vG0qkbn1TlBAOlg4LuW8xK/u0V41Ihc=", + "lastModified": 1677381477, + "narHash": "sha256-NLzWgll+Q0Af8gI1ha34OHt7Y1GtOMYhCWQWV9LXE9Y=", "owner": "Mic92", "repo": "sops-nix", - "rev": "2253120d2a6147e57bafb5c689e086221df8032f", + "rev": "83fe25c8019db8216f5c6ffc65b394707784b4f3", "type": "github" }, "original": { @@ -565,11 +565,11 @@ ] }, "locked": { - "lastModified": 1672884793, - "narHash": "sha256-biUbdKq8OaRQm25poaRJalrRq+M+/TrNr7J6rI65lNI=", + "lastModified": 1674277771, + "narHash": "sha256-4zEc5BNWFZyxIEEeesE7PnbbdOPC0eF+SOiUPHmHnKI=", "ref": "refs/heads/master", - "rev": "b2894e4fefbdc1c9964ab47c931497a417562d8a", - "revCount": 53, + "rev": "d142e98788c2476b7df0a5c1e621f3f5c65c130f", + "revCount": 55, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, From 8f4399c1dd44e5b83962e4001bf88fa5b13306fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 28 Feb 2023 04:53:27 +0000 Subject: [PATCH 059/196] nextcloud: Update apps --- pkgs/_sources_nextcloud/generated.json | 32 ++++++++------------------ pkgs/_sources_nextcloud/generated.nix | 26 ++++++++------------- 2 files changed, 18 insertions(+), 40 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 7752f5e..c5b4538 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -1,18 +1,4 @@ { - "apporder": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "apporder", - "passthru": null, - "pinned": false, - "src": { - "sha256": "1nx1vdwlqyy3x5vw2h2xx51hmv7gsp8mam1fj813yc3655js9m96", - "type": "tarball", - "url": "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz" - }, - "version": "v0.15.0" - }, "bookmarks": { "cargoLocks": null, "date": null, @@ -35,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "06p92w2idml5g3zc0xhp25rpgkxm3d5pmxpx7dmqlqvw8r6z07an", + "sha256": "0g29md9rg6a4qhh6hj1q5l7kji0afxmizfrybc1xif4lqbhglaw5", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.0/calendar-v4.2.0.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.4/calendar-v4.2.4.tar.gz" }, - "version": "v4.2.0" + "version": "v4.2.4" }, "contacts": { "cargoLocks": null, @@ -49,11 +35,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "097a71if6kkc7nphfc8b6llqlsskjwp1vg83134hzgfscvllvaj8", + "sha256": "1m00r6cpqyrg2b0p8hg4wqkb3wn643fy63ax7qksp39rn18smrwk", "type": "tarball", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.0.2/contacts-v5.0.2.tar.gz" + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.1.0/contacts-v5.1.0.tar.gz" }, - "version": "v5.0.2" + "version": "v5.1.0" }, "cookbook": { "cargoLocks": null, @@ -77,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "0pnriarr2iqci2v2hn6vpvszf4m4pkcxsd2i13bp7n1zqkg6swd7", + "sha256": "0iz1yrl7h60yhc1d1gkalkzc5vlj8sq6lff0ggns6a6qpsdpn9c5", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/20.0.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/20.0.1/news.tar.gz" }, - "version": "20.0.0" + "version": "20.0.1" }, "notes": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index f3a0521..5ad5f6b 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -1,14 +1,6 @@ # This file was generated by nvfetcher, please do not modify it manually. { fetchgit, fetchurl, fetchFromGitHub, dockerTools }: { - apporder = { - pname = "apporder"; - version = "v0.15.0"; - src = fetchTarball { - url = "https://github.com/juliushaertl/apporder/releases/download/v0.15.0/apporder.tar.gz"; - sha256 = "1nx1vdwlqyy3x5vw2h2xx51hmv7gsp8mam1fj813yc3655js9m96"; - }; - }; bookmarks = { pname = "bookmarks"; version = "12.0.0"; @@ -19,18 +11,18 @@ }; calendar = { pname = "calendar"; - version = "v4.2.0"; + version = "v4.2.4"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.0/calendar-v4.2.0.tar.gz"; - sha256 = "06p92w2idml5g3zc0xhp25rpgkxm3d5pmxpx7dmqlqvw8r6z07an"; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.4/calendar-v4.2.4.tar.gz"; + sha256 = "0g29md9rg6a4qhh6hj1q5l7kji0afxmizfrybc1xif4lqbhglaw5"; }; }; contacts = { pname = "contacts"; - version = "v5.0.2"; + version = "v5.1.0"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.0.2/contacts-v5.0.2.tar.gz"; - sha256 = "097a71if6kkc7nphfc8b6llqlsskjwp1vg83134hzgfscvllvaj8"; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.1.0/contacts-v5.1.0.tar.gz"; + sha256 = "1m00r6cpqyrg2b0p8hg4wqkb3wn643fy63ax7qksp39rn18smrwk"; }; }; cookbook = { @@ -43,10 +35,10 @@ }; news = { pname = "news"; - version = "20.0.0"; + version = "20.0.1"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/20.0.0/news.tar.gz"; - sha256 = "0pnriarr2iqci2v2hn6vpvszf4m4pkcxsd2i13bp7n1zqkg6swd7"; + url = "https://github.com/nextcloud/news/releases/download/20.0.1/news.tar.gz"; + sha256 = "0iz1yrl7h60yhc1d1gkalkzc5vlj8sq6lff0ggns6a6qpsdpn9c5"; }; }; notes = { From 663054c293ac65b3c4dd92596c73ec2446419f5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 17 Apr 2023 21:07:31 +0100 Subject: [PATCH 060/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'nixpkgs': 'github:nixos/nixpkgs/8bd260eb578e3fea6bce158b24c93ab158d031e7' (2023-02-26) → 'github:nixos/nixpkgs/de66115c552acc4e0c0f92c5a5efb32e37dfa216' (2023-04-17) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/7f5639fa3b68054ca0b062866dc62b22c3f11505' (2023-02-26) → 'github:nixos/nixpkgs/f294325aed382b66c7a188482101b0f336d1d7db' (2023-04-16) • Updated input 'sops-nix': 'github:Mic92/sops-nix/83fe25c8019db8216f5c6ffc65b394707784b4f3' (2023-02-26) → 'github:Mic92/sops-nix/de6514f8fe1b3c2b57307569a0898bc4be9ae1c5' (2023-04-17) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/ea736343e4d4a052e023d54b23334cf685de479c' (2023-02-25) → 'github:NixOS/nixpkgs/1040ce5f652b586da95dfd80d48a745e107b9eac' (2023-04-16) • Updated input 'tlaternet-webserver': 'git+https://gitea.tlater.net/tlaternet/tlaternet.git?ref=refs%2fheads%2fmaster&rev=d142e98788c2476b7df0a5c1e621f3f5c65c130f' (2023-01-21) → 'git+https://gitea.tlater.net/tlaternet/tlaternet.git?ref=refs%2fheads%2fmaster&rev=2ca66c4fe1b8cfdd5d873cadb2735cef555dacca' (2023-04-17) • Updated input 'tlaternet-webserver/dream2nix': 'github:nix-community/dream2nix/9f6911c78dcb0832f7fcc955e847db1a5a9ce29a' (2023-01-02) → 'github:nix-community/dream2nix/34a80ab215f1f24068ea9c76f3a7e5bc19478653' (2023-04-04) • Removed input 'tlaternet-webserver/dream2nix/alejandra' • Removed input 'tlaternet-webserver/dream2nix/alejandra/fenix' • Removed input 'tlaternet-webserver/dream2nix/alejandra/fenix/nixpkgs' • Removed input 'tlaternet-webserver/dream2nix/alejandra/fenix/rust-analyzer-src' • Removed input 'tlaternet-webserver/dream2nix/alejandra/flakeCompat' • Removed input 'tlaternet-webserver/dream2nix/alejandra/nixpkgs' • Added input 'tlaternet-webserver/dream2nix/drv-parts': 'github:davhau/drv-parts/ced8a52f62b0a94244713df2225c05c85b416110' (2023-03-30) • Added input 'tlaternet-webserver/dream2nix/drv-parts/flake-compat': follows 'tlaternet-webserver/dream2nix/flake-compat' • Added input 'tlaternet-webserver/dream2nix/drv-parts/flake-parts': follows 'tlaternet-webserver/dream2nix/flake-parts' • Added input 'tlaternet-webserver/dream2nix/drv-parts/nixpkgs': follows 'tlaternet-webserver/dream2nix/nixpkgs' • Added input 'tlaternet-webserver/dream2nix/flake-compat': 'github:edolstra/flake-compat/35bb57c0c8d8b62bbfd284272c928ceb64ddbde9' (2023-01-17) • Updated input 'tlaternet-webserver/dream2nix/flake-parts': 'github:hercules-ci/flake-parts/d591857e9d7dd9ddbfba0ea02b43b927c3c0f1fa' (2022-11-14) → 'github:hercules-ci/flake-parts/47478a4a003e745402acf63be7f9a092d51b83d7' (2023-02-09) • Updated input 'tlaternet-webserver/dream2nix/flake-parts/nixpkgs-lib': 'github:NixOS/nixpkgs/34c5293a71ffdb2fe054eb5288adc1882c1eb0b1?dir=lib' (2022-10-09) → follows 'tlaternet-webserver/dream2nix/nixpkgs' • Added input 'tlaternet-webserver/dream2nix/nixpkgsV1': 'github:NixOS/nixpkgs/5eb98948b66de29f899c7fe27ae112a47964baf8' (2023-03-11) • Added input 'tlaternet-webserver/dream2nix/pruned-racket-catalog': 'github:nix-community/pruned-racket-catalog/c8b89557fb53b36efa2ee48a769c7364df0f6262' (2023-01-01) • Updated input 'tlaternet-webserver/fenix': 'github:nix-community/fenix/eb6583fcd626051c4d284f2fb51cd2659a43e7f6' (2023-01-04) → 'github:nix-community/fenix/0d8c0d08db5fe6e5d995f4584f991ad60bbb1673' (2023-04-17) • Updated input 'tlaternet-webserver/fenix/rust-analyzer-src': 'github:rust-lang/rust-analyzer/a97c71f92d574cb5104e3e1246eb9038d1a214a2' (2023-01-03) → 'github:rust-lang/rust-analyzer/bab80dae445fd576cb4cc22ba208e9fbc39dc18d' (2023-04-16) --- flake.lock | 250 +++++++++++++++++++++++++---------------------------- 1 file changed, 119 insertions(+), 131 deletions(-) diff --git a/flake.lock b/flake.lock index dd0c7bc..13b0222 100644 --- a/flake.lock +++ b/flake.lock @@ -1,29 +1,5 @@ { "nodes": { - "alejandra": { - "inputs": { - "fenix": "fenix", - "flakeCompat": "flakeCompat", - "nixpkgs": [ - "tlaternet-webserver", - "dream2nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1658427149, - "narHash": "sha256-ToD/1z/q5VHsLMrS2h96vjJoLho59eNRtknOUd19ey8=", - "owner": "kamadorueda", - "repo": "alejandra", - "rev": "f5a22afd2adfb249b4e68e0b33aa1f0fb73fb1be", - "type": "github" - }, - "original": { - "owner": "kamadorueda", - "repo": "alejandra", - "type": "github" - } - }, "all-cabal-json": { "flake": false, "locked": { @@ -95,10 +71,11 @@ }, "dream2nix": { "inputs": { - "alejandra": "alejandra", "all-cabal-json": "all-cabal-json", "crane": "crane", "devshell": "devshell", + "drv-parts": "drv-parts", + "flake-compat": "flake-compat_3", "flake-parts": "flake-parts", "flake-utils-pre-commit": "flake-utils-pre-commit", "ghc-utils": "ghc-utils", @@ -106,15 +83,17 @@ "mach-nix": "mach-nix", "nix-pypi-fetcher": "nix-pypi-fetcher", "nixpkgs": "nixpkgs_3", + "nixpkgsV1": "nixpkgsV1", "poetry2nix": "poetry2nix", - "pre-commit-hooks": "pre-commit-hooks" + "pre-commit-hooks": "pre-commit-hooks", + "pruned-racket-catalog": "pruned-racket-catalog" }, "locked": { - "lastModified": 1672661134, - "narHash": "sha256-WqBUyKeiv+jI11ug+qP0OnZ4nngK6eBRVTGHgdzEGvc=", + "lastModified": 1680605243, + "narHash": "sha256-dUrxj653kcLvjNKRI7NoTJoj+Q7G+vOYsl4iuwtnIWo=", "owner": "nix-community", "repo": "dream2nix", - "rev": "9f6911c78dcb0832f7fcc955e847db1a5a9ce29a", + "rev": "34a80ab215f1f24068ea9c76f3a7e5bc19478653", "type": "github" }, "original": { @@ -123,44 +102,52 @@ "type": "github" } }, + "drv-parts": { + "inputs": { + "flake-compat": [ + "tlaternet-webserver", + "dream2nix", + "flake-compat" + ], + "flake-parts": [ + "tlaternet-webserver", + "dream2nix", + "flake-parts" + ], + "nixpkgs": [ + "tlaternet-webserver", + "dream2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1680172861, + "narHash": "sha256-QMyI338xRxaHFDlCXdLCtgelGQX2PdlagZALky4ZXJ8=", + "owner": "davhau", + "repo": "drv-parts", + "rev": "ced8a52f62b0a94244713df2225c05c85b416110", + "type": "github" + }, + "original": { + "owner": "davhau", + "repo": "drv-parts", + "type": "github" + } + }, "fenix": { "inputs": { "nixpkgs": [ "tlaternet-webserver", - "dream2nix", - "alejandra", "nixpkgs" ], "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1657607339, - "narHash": "sha256-HaqoAwlbVVZH2n4P3jN2FFPMpVuhxDy1poNOR7kzODc=", + "lastModified": 1681712564, + "narHash": "sha256-14QeQU5m1iJg4v+HnLnH1X5W2V1d0lHfaHxDJP/6aig=", "owner": "nix-community", "repo": "fenix", - "rev": "b814c83d9e6aa5a28d0cf356ecfdafb2505ad37d", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "fenix", - "type": "github" - } - }, - "fenix_2": { - "inputs": { - "nixpkgs": [ - "tlaternet-webserver", - "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src_2" - }, - "locked": { - "lastModified": 1672813381, - "narHash": "sha256-PKt6orRiFO19KFKnOhzK26hbFLtimlRNE2dGwrTEhII=", - "owner": "nix-community", - "repo": "fenix", - "rev": "eb6583fcd626051c4d284f2fb51cd2659a43e7f6", + "rev": "0d8c0d08db5fe6e5d995f4584f991ad60bbb1673", "type": "github" }, "original": { @@ -201,16 +188,36 @@ "type": "github" } }, + "flake-compat_3": { + "flake": false, + "locked": { + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { - "nixpkgs-lib": "nixpkgs-lib" + "nixpkgs-lib": [ + "tlaternet-webserver", + "dream2nix", + "nixpkgs" + ] }, "locked": { - "lastModified": 1668450977, - "narHash": "sha256-cfLhMhnvXn6x1vPm+Jow3RiFAUSCw/l1utktCw5rVA4=", + "lastModified": 1675933616, + "narHash": "sha256-/rczJkJHtx16IFxMmAWu5nNYcSXNg1YYXTHoGjLrLUA=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "d591857e9d7dd9ddbfba0ea02b43b927c3c0f1fa", + "rev": "47478a4a003e745402acf63be7f9a092d51b83d7", "type": "github" }, "original": { @@ -249,22 +256,6 @@ "type": "github" } }, - "flakeCompat": { - "flake": false, - "locked": { - "lastModified": 1650374568, - "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "b4a34015c698c7793d592d66adbab377907a2be8", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "ghc-utils": { "flake": false, "locked": { @@ -344,31 +335,13 @@ "type": "github" } }, - "nixpkgs-lib": { - "locked": { - "dir": "lib", - "lastModified": 1665349835, - "narHash": "sha256-UK4urM3iN80UXQ7EaOappDzcisYIuEURFRoGQ/yPkug=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "34c5293a71ffdb2fe054eb5288adc1882c1eb0b1", - "type": "github" - }, - "original": { - "dir": "lib", - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nixpkgs-stable": { "locked": { - "lastModified": 1677367679, - "narHash": "sha256-pOMXi7F9tcHls06Qv+7XCPASTJeXu47Jhd0Pk9du8T4=", + "lastModified": 1681613598, + "narHash": "sha256-Ogkoma0ytYcDoMR2N7CZFABPo+i0NNo26dPngru9tPc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ea736343e4d4a052e023d54b23334cf685de479c", + "rev": "1040ce5f652b586da95dfd80d48a745e107b9eac", "type": "github" }, "original": { @@ -380,11 +353,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1677407201, - "narHash": "sha256-3blwdI9o1BAprkvlByHvtEm5HAIRn/XPjtcfiunpY7s=", + "lastModified": 1681648924, + "narHash": "sha256-pzi3HISK8+7mpEtv08Yr80wswyHKsz+RP1CROG1Qf6s=", "owner": "nixos", "repo": "nixpkgs", - "rev": "7f5639fa3b68054ca0b062866dc62b22c3f11505", + "rev": "f294325aed382b66c7a188482101b0f336d1d7db", "type": "github" }, "original": { @@ -394,13 +367,28 @@ "type": "github" } }, + "nixpkgsV1": { + "locked": { + "lastModified": 1678500271, + "narHash": "sha256-tRBLElf6f02HJGG0ZR7znMNFv/Uf7b2fFInpTHiHaSE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "5eb98948b66de29f899c7fe27ae112a47964baf8", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "ref": "nixos-22.11", + "type": "indirect" + } + }, "nixpkgs_2": { "locked": { - "lastModified": 1677447818, - "narHash": "sha256-dgXEUbz2hgaJL4xCD/5JLhA36UJOhP4qn7Cp6UZhB0I=", + "lastModified": 1681696129, + "narHash": "sha256-Ba2y1lmsWmmAOAoTD5G9UnTS/UqV0ZFyzysgdfu7qag=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8bd260eb578e3fea6bce158b24c93ab158d031e7", + "rev": "de66115c552acc4e0c0f92c5a5efb32e37dfa216", "type": "github" }, "original": { @@ -491,6 +479,23 @@ "type": "github" } }, + "pruned-racket-catalog": { + "flake": false, + "locked": { + "lastModified": 1672537287, + "narHash": "sha256-SuOvXVcLfakw18oJB/PuRMyvGyGG1+CQD3R+TGHIv44=", + "owner": "nix-community", + "repo": "pruned-racket-catalog", + "rev": "c8b89557fb53b36efa2ee48a769c7364df0f6262", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "catalog", + "repo": "pruned-racket-catalog", + "type": "github" + } + }, "root": { "inputs": { "deploy-rs": "deploy-rs", @@ -504,28 +509,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1657557289, - "narHash": "sha256-PRW+nUwuqNTRAEa83SfX+7g+g8nQ+2MMbasQ9nt6+UM=", + "lastModified": 1681679582, + "narHash": "sha256-bijdVXzzfVSMHCjRuQ+PysNJt0Ei2mIhs+CPnR6yP4w=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "caf23f29144b371035b864a1017dbc32573ad56d", - "type": "github" - }, - "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" - } - }, - "rust-analyzer-src_2": { - "flake": false, - "locked": { - "lastModified": 1672757238, - "narHash": "sha256-BK1njXsjprMT0f+1aQYmZ/ueN9D3Y3wrz9gw4UvieRQ=", - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "a97c71f92d574cb5104e3e1246eb9038d1a214a2", + "rev": "bab80dae445fd576cb4cc22ba208e9fbc39dc18d", "type": "github" }, "original": { @@ -543,11 +531,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1677381477, - "narHash": "sha256-NLzWgll+Q0Af8gI1ha34OHt7Y1GtOMYhCWQWV9LXE9Y=", + "lastModified": 1681721408, + "narHash": "sha256-NWCbZKOQEXz1hA2YDFxdd+fVrrw9edbG1DvbbLf7KUY=", "owner": "Mic92", "repo": "sops-nix", - "rev": "83fe25c8019db8216f5c6ffc65b394707784b4f3", + "rev": "de6514f8fe1b3c2b57307569a0898bc4be9ae1c5", "type": "github" }, "original": { @@ -559,17 +547,17 @@ "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", - "fenix": "fenix_2", + "fenix": "fenix", "nixpkgs": [ "nixpkgs" ] }, "locked": { - "lastModified": 1674277771, - "narHash": "sha256-4zEc5BNWFZyxIEEeesE7PnbbdOPC0eF+SOiUPHmHnKI=", + "lastModified": 1681761148, + "narHash": "sha256-eub9HQGCCjxOc+u4p9Om8y5EcVlBJOQOoK4APxXAbhc=", "ref": "refs/heads/master", - "rev": "d142e98788c2476b7df0a5c1e621f3f5c65c130f", - "revCount": 55, + "rev": "2ca66c4fe1b8cfdd5d873cadb2735cef555dacca", + "revCount": 62, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, From 317cdf0039a04ca66b64e07e9920a3947e9be5d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 17 Apr 2023 23:35:28 +0100 Subject: [PATCH 061/196] nextcloud: Update nextcloud apps --- pkgs/_sources_nextcloud/generated.json | 36 +++++++++++++------------- pkgs/_sources_nextcloud/generated.nix | 36 +++++++++++++------------- pkgs/nextcloud-apps.toml | 4 ++- 3 files changed, 39 insertions(+), 37 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index c5b4538..94d5c9a 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "0dkfjafbynkrymsq183sad7zynqr2qls0cld73nvzn3smnvdl2xx", + "sha256": "1kdpma5f3rb9g29j364lqv6bkar5qgwlvcxmhpmzllwlkmjpc9w8", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v12.0.0/bookmarks-12.0.0.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v12.1.0/bookmarks-12.1.0.tar.gz" }, - "version": "12.0.0" + "version": "12.1.0" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "0g29md9rg6a4qhh6hj1q5l7kji0afxmizfrybc1xif4lqbhglaw5", + "sha256": "0xhrpadzz73rdjyk4y1xm5hwc6k104rlpp9nmw08pq8phpfs12qa", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.4/calendar-v4.2.4.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.3/calendar-v4.3.3.tar.gz" }, - "version": "v4.2.4" + "version": "v4.3.3" }, "contacts": { "cargoLocks": null, @@ -35,11 +35,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "1m00r6cpqyrg2b0p8hg4wqkb3wn643fy63ax7qksp39rn18smrwk", + "sha256": "1rdql3m7pg9m044hppyrm3xw329y8h0pzwcmpcinjbjs0vqjssxk", "type": "tarball", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.1.0/contacts-v5.1.0.tar.gz" + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.2.0/contacts-v5.2.0.tar.gz" }, - "version": "v5.1.0" + "version": "v5.2.0" }, "cookbook": { "cargoLocks": null, @@ -49,11 +49,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "1xpy060yi7pl8i91xjv2jj18yvsmjzwmv91y7i686qq8n2kc1fcg", + "sha256": "18rzvdqd99nlkk3p0y9y8b17ihw5c4c9wsx8psq6xadspm97002y", "type": "tarball", - "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.1/Cookbook-0.10.1.tar.gz" + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz" }, - "version": "0.10.1" + "version": "0.10.2" }, "news": { "cargoLocks": null, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "0iz1yrl7h60yhc1d1gkalkzc5vlj8sq6lff0ggns6a6qpsdpn9c5", + "sha256": "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/20.0.1/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz" }, - "version": "20.0.1" + "version": "21.1.0" }, "notes": { "cargoLocks": null, @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "1jcgv3awr45jq3n3qv851qlpbdl2plixba0iq2s54dmhciypdckl", + "sha256": "0klqf8dixrrb8yp8cc60ggnvhmqb3yh9f6y1281jn8ia5jml622v", "type": "tarball", - "url": "https://github.com/nextcloud/notes/releases/download/v4.6.0/notes.tar.gz" + "url": "https://github.com/nextcloud/notes/releases/download/v4.7.2/notes.tar.gz" }, - "version": "v4.6.0" + "version": "v4.7.2" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 5ad5f6b..c29f6b5 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,50 +3,50 @@ { bookmarks = { pname = "bookmarks"; - version = "12.0.0"; + version = "12.1.0"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v12.0.0/bookmarks-12.0.0.tar.gz"; - sha256 = "0dkfjafbynkrymsq183sad7zynqr2qls0cld73nvzn3smnvdl2xx"; + url = "https://github.com/nextcloud/bookmarks/releases/download/v12.1.0/bookmarks-12.1.0.tar.gz"; + sha256 = "1kdpma5f3rb9g29j364lqv6bkar5qgwlvcxmhpmzllwlkmjpc9w8"; }; }; calendar = { pname = "calendar"; - version = "v4.2.4"; + version = "v4.3.3"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.2.4/calendar-v4.2.4.tar.gz"; - sha256 = "0g29md9rg6a4qhh6hj1q5l7kji0afxmizfrybc1xif4lqbhglaw5"; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.3/calendar-v4.3.3.tar.gz"; + sha256 = "0xhrpadzz73rdjyk4y1xm5hwc6k104rlpp9nmw08pq8phpfs12qa"; }; }; contacts = { pname = "contacts"; - version = "v5.1.0"; + version = "v5.2.0"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.1.0/contacts-v5.1.0.tar.gz"; - sha256 = "1m00r6cpqyrg2b0p8hg4wqkb3wn643fy63ax7qksp39rn18smrwk"; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.2.0/contacts-v5.2.0.tar.gz"; + sha256 = "1rdql3m7pg9m044hppyrm3xw329y8h0pzwcmpcinjbjs0vqjssxk"; }; }; cookbook = { pname = "cookbook"; - version = "0.10.1"; + version = "0.10.2"; src = fetchTarball { - url = "https://github.com/nextcloud/cookbook/releases/download/v0.10.1/Cookbook-0.10.1.tar.gz"; - sha256 = "1xpy060yi7pl8i91xjv2jj18yvsmjzwmv91y7i686qq8n2kc1fcg"; + url = "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz"; + sha256 = "18rzvdqd99nlkk3p0y9y8b17ihw5c4c9wsx8psq6xadspm97002y"; }; }; news = { pname = "news"; - version = "20.0.1"; + version = "21.1.0"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/20.0.1/news.tar.gz"; - sha256 = "0iz1yrl7h60yhc1d1gkalkzc5vlj8sq6lff0ggns6a6qpsdpn9c5"; + url = "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz"; + sha256 = "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd"; }; }; notes = { pname = "notes"; - version = "v4.6.0"; + version = "v4.7.2"; src = fetchTarball { - url = "https://github.com/nextcloud/notes/releases/download/v4.6.0/notes.tar.gz"; - sha256 = "1jcgv3awr45jq3n3qv851qlpbdl2plixba0iq2s54dmhciypdckl"; + url = "https://github.com/nextcloud/notes/releases/download/v4.7.2/notes.tar.gz"; + sha256 = "0klqf8dixrrb8yp8cc60ggnvhmqb3yh9f6y1281jn8ia5jml622v"; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 69bccdc..709633d 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,6 +1,8 @@ [bookmarks] -src.github = "nextcloud/bookmarks" +# src.github = "nextcloud/bookmarks" src.prefix = "v" +# TODO(tlater): Remove when we update to nextcloud 26 +src.manual = "v12.1.0" fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] From acd7cc802b2a3cfd19c97df53c22cccb4a99b8a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 23 Apr 2023 15:46:38 +0100 Subject: [PATCH 062/196] networking: Set up static IP address --- configuration/default.nix | 6 ++- .../hardware-specific/linode/default.nix | 38 +++++++++++++++++++ configuration/hardware-specific/vm.nix | 5 +++ 3 files changed, 47 insertions(+), 2 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 2a4ce63..f69ec09 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -15,9 +15,11 @@ (import ../modules) ./services/conduit.nix + ./services/foundryvtt.nix ./services/gitea.nix ./services/nextcloud.nix ./services/webserver.nix + ./services/wireguard.nix ./services/starbound.nix ./services/postgres.nix ./sops.nix @@ -51,10 +53,8 @@ networking = { hostName = "tlaternet"; - usePredictableInterfaceNames = false; useDHCP = false; - interfaces.eth0.useDHCP = true; firewall = { allowedTCPPorts = [ @@ -95,6 +95,8 @@ }; }; + systemd.network.enable = true; + time.timeZone = "Europe/London"; users.users.tlater = { diff --git a/configuration/hardware-specific/linode/default.nix b/configuration/hardware-specific/linode/default.nix index 3cd3570..b05fade 100644 --- a/configuration/hardware-specific/linode/default.nix +++ b/configuration/hardware-specific/linode/default.nix @@ -19,4 +19,42 @@ ''; }; }; + + systemd.network.networks."10-eth0" = { + matchConfig.Name = "eth0"; + + networkConfig = { + DHCP = "no"; + + Address = "178.79.137.55/24"; + Gateway = "178.79.137.1"; + + Domains = "ip.linodeusercontent.com"; + DNS = [ + "178.79.182.5" + "176.58.107.5" + "176.58.116.5" + "176.58.121.5" + "151.236.220.5" + "212.71.252.5" + "212.71.253.5" + "109.74.192.20" + "109.74.193.20" + "109.74.194.20" + "2a01:7e00::9" + "2a01:7e00::3" + "2a01:7e00::c" + "2a01:7e00::5" + "2a01:7e00::6" + "2a01:7e00::8" + "2a01:7e00::b" + "2a01:7e00::4" + "2a01:7e00::7" + "2a01:7e00::2" + ]; + + IPv6PrivacyExtensions = "no"; + IPv6AcceptRA = "yes"; + }; + }; } diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index aed39e4..8c93f30 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -11,6 +11,11 @@ # Use the staging secrets sops.defaultSopsFile = lib.mkOverride 99 ../../keys/staging.yaml; + systemd.network.networks."10-eth0" = { + matchConfig.Name = "eth0"; + networkConfig.DHCP = "yes"; + }; + # # Set up VM settings to match real VPS # virtualisation.memorySize = 3941; # virtualisation.cores = 2; From 14d29fa49dc31bc472306a6f840dd8aad7e5162e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 23 Apr 2023 23:42:25 +0100 Subject: [PATCH 063/196] services: Add wireguard service --- configuration/services/wireguard.nix | 74 ++++++++++++++++++++++++++++ configuration/sops.nix | 44 +++++++++++------ keys/production.yaml | 6 ++- keys/staging.yaml | 6 ++- 4 files changed, 110 insertions(+), 20 deletions(-) create mode 100644 configuration/services/wireguard.nix diff --git a/configuration/services/wireguard.nix b/configuration/services/wireguard.nix new file mode 100644 index 0000000..1ae6aac --- /dev/null +++ b/configuration/services/wireguard.nix @@ -0,0 +1,74 @@ +{config, ...}: { + # iptables needs to permit forwarding from wg0 to wg0 + networking.firewall.extraCommands = '' + iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT + # This ensures that we send messages with the correct MTU to any + # connecting host; without it, the weirdest errors occur + iptables -A FORWARD -i wg0 -o wg0 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu + ''; + + systemd.network = { + netdevs = { + "20-wg0" = { + netdevConfig = { + Name = "wg0"; + Kind = "wireguard"; + Description = "wg0 - wireguard tunnel"; + }; + + wireguardConfig = { + ListenPort = 51820; + PrivateKeyFile = config.sops.secrets."wireguard/server-key".path; + # Public key: 73z3Pga/2BCxETYM/qCT2FM1JUCUvQ+Cp+8ROxjhu0w= + }; + + wireguardPeers = [ + { + # yui + wireguardPeerConfig = { + AllowedIPs = ["10.45.249.2/32"]; + PublicKey = "5mlnqEVJWks5OqgeFA2bLIrvST9TlCE81Btl+j4myz0="; + }; + } + + { + # yuanyuan + wireguardPeerConfig = { + AllowedIPs = ["10.45.249.10/32"]; + PublicKey = "0UsFE2atz/O5P3OKQ8UHyyyGQNJbp1MeIWUJLuoerwE="; + }; + } + ]; + }; + }; + + networks = { + "20-wg0" = { + matchConfig.Name = "wg0"; + + networkConfig = { + Address = [ + "10.45.249.1/32" + # TODO(tlater): Add IPv6 whenever that becomes relevant + ]; + + IPForward = "yes"; + IPv4ProxyARP = "yes"; + }; + + routes = [ + { + routeConfig = { + Source = "10.45.249.0/24"; + Destination = "10.45.249.0/24"; + Gateway = "10.45.249.1"; + GatewayOnLink = "no"; + }; + } + ]; + + linkConfig.RequiredForOnline = "no"; + }; + }; + }; +} diff --git a/configuration/sops.nix b/configuration/sops.nix index d02b3f0..4becfd4 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -1,22 +1,34 @@ { sops = { defaultSopsFile = ../keys/production.yaml; - secrets."nextcloud/tlater" = { - owner = "nextcloud"; - group = "nextcloud"; - }; - secrets."steam/tlater" = {}; - secrets."heisenbridge/as-token" = {}; - secrets."heisenbridge/hs-token" = {}; - secrets."turn/env" = {}; - secrets."turn/secret" = { - owner = "turnserver"; - }; - secrets."turn/ssl-key" = { - owner = "turnserver"; - }; - secrets."turn/ssl-cert" = { - owner = "turnserver"; + + secrets = { + "nextcloud/tlater" = { + owner = "nextcloud"; + group = "nextcloud"; + }; + + "steam/tlater" = {}; + + "heisenbridge/as-token" = {}; + "heisenbridge/hs-token" = {}; + + "wireguard/server-key" = { + owner = "root"; + group = "systemd-network"; + mode = "0440"; + }; + + "turn/env" = {}; + "turn/secret" = { + owner = "turnserver"; + }; + "turn/ssl-key" = { + owner = "turnserver"; + }; + "turn/ssl-cert" = { + owner = "turnserver"; + }; }; }; } diff --git a/keys/production.yaml b/keys/production.yaml index 666b893..6ef9ef7 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -5,6 +5,8 @@ steam: heisenbridge: as-token: ENC[AES256_GCM,data:+2yo6T18j34622H8ZWblAFB2phLw1q0k0vUQEZ5sFj7dQaRnkEiAMi0R3p17Zq0pOtGEC0RRZuPLYkcZ1oKP0w==,iv:lGwrQYp//FufpmJocrLIVyy9RK7lEEVcpAi0wmkjr34=,tag:yV06UbhAYJQz36O2XdhY+A==,type:str] hs-token: ENC[AES256_GCM,data:u52WpkQFd/J7JFoE/rfNluebyZQLOokvkVdL7+AEAvrhJhrkJli1ztkD79lbC+6tGUH4tT3T+nX9wvGKnrRUQg==,iv:as+9fVuvMg2IoE2WIKD9mHi+znhNcWRh5Zq+yr0xcDQ=,tag:mZ7fh7U0MfgI8hyq/28Bcg==,type:str] +wireguard: + server-key: ENC[AES256_GCM,data:mXb7ZznJHf5CgV8rI4uzPBATMRbmd7LimgtCkQM9kAjbIaGwUBqJZBN3fXs=,iv:3Po1Orinzov9rnEm9cLzgJY1PeD+5Jl9115MriABHh8=,tag:E/2CjDO1JCvJzxCnqKcNyw==,type:str] turn: env: ENC[AES256_GCM,data:kt5nhVo9pb/ZbPUEcqSYXxN9YMgQKnFb5VRfFFS/qoIaJ73uD2fuJKqcxAyVRrdLqnSAWSQBgTgunBzdP7xqLAK2qt8DYAQWHkIe9uxFbSXZpdmw,iv:9lq6SFwTFN4GGm6gPiJpUMasMdnHVF6XLGYrsyG3kjU=,tag:428Qf9DOiiHt/Wjb188b8g==,type:str] secret: ENC[AES256_GCM,data:si7ee6Xfhdgdyzbp6aQpF7pz3TmTBb7iQ82lRPVXNDg9JfHI+lbmgAsSnRLX5qMCA6P9R045sSMosqidL8QwRg==,iv:SrhpZKK8D45yxCEfDb9P3TwtA14+qEI+wcRqcN/a6pw=,tag:PiwV+mOL9xHJgJft6sc61g==,type:str] @@ -17,8 +19,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-02-21T10:51:11Z" - mac: ENC[AES256_GCM,data:uMqT+7ljd6t1RpF9IH7illO62pq5cERoAtJlRic5BNOeawy/+7ufVorhhya15m39WTKnlGyIY0MEd3tDueHBm4rjf+Pmh6PQ+owRv+deXHv0jXYWX2sz/6i1aYbv9DDMWsvNbkdidKEme+ctY6EVgjSjN5nxxcx+vH+u1OyQ3t0=,iv:VKXznTlMH34SOS+4dpfOVaoiiUTRmIbUMnTPNpyawvY=,tag:onA5C4o/tcGjdBxO9JxMGw==,type:str] + lastmodified: "2023-04-23T17:34:53Z" + mac: ENC[AES256_GCM,data:UaGB4uwmYGVbKud5KrvdKeYTnYrs8nnQsT590KIS/b/9JhpQo5JXFtHsm1AteEBg9ygmY6tYKDcK4AXwz/uR/m3CW5If03dBNG8F9Uy3dPL5KaebC/EsNVIaRavWTbSZgqhnBgYeM+HkeQPskSWuwviSNU0D7d1n98Q89Y0kQfA=,iv:kEsRh8hb1amd2qozyxwYHCHdX80c2mO5Mm7npKX3DKc=,tag:p5GPd0OZvowghT92pxxXeA==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | diff --git a/keys/staging.yaml b/keys/staging.yaml index 41e20ac..49b5a6a 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -5,6 +5,8 @@ steam: heisenbridge: as-token: ENC[AES256_GCM,data:tXbOeo7nv8I=,iv:wJAKcOXX9nGIw4n38ThOoj29u7dUWhsxSQG/p79JlEw=,tag:rTVaGS2UuWcea1uBa8YX2g==,type:str] hs-token: ENC[AES256_GCM,data:VBwvwomv0Xg=,iv:q6INtJ+rg+QiXj8uBdBzQYQZUBBXp+9odxDHwvu8Jxc=,tag:XKhm8nxygAkKaiVPJ2Fcdg==,type:str] +wireguard: + server-key: ENC[AES256_GCM,data:FvY897XdKoa/mckE8JQLCkklsnYD6Wz1wpsu5t3uhEnW3iarnDQxF9msuYU=,iv:jqGXfekM+Vs+J9b5nlZ5Skd1ZKHajoUo2Dc4tMYPm1w=,tag:EehikjI/FCU8wqtpvJRamQ==,type:str] turn: env: ENC[AES256_GCM,data:xjIz/AY109lyiL5N01p5T3HcYco/rM5CJSRTtg==,iv:16bW6OpyOK/QL0QPGQp/Baa9xyT8E3ZsYkwqmjuofk0=,tag:J5re3uKxIykw3YunvQWBgg==,type:str] secret: ENC[AES256_GCM,data:eQ7dAocoZtg=,iv:fgzjTPv30WqTKlLy+yMn5MsKQgjhPnwlGFFwYEg3gWs=,tag:1ze33U1NBkgMX/9SiaBNQg==,type:str] @@ -17,8 +19,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-02-21T08:32:04Z" - mac: ENC[AES256_GCM,data:ZZtL4zYX7FsYeGJ1CcTq5AzRkrvOxIeCoVf77JyEj9k3gApm3k7z2eXe/D+8qvwahlleuvAqhVCUH/I5yHaQSjXXsHO1flULiTnQVk4hrX0fDwXp97NQwpvDovSRyGqx4F25dISfYLVhFpb+64yaPxqMzThVk+Q7Xn40GCY5PR8=,iv:xNeyqB5K2EBDDJEq72IDwpGqzKkAlcxHO6GlJY/iHmM=,tag:Qxz0GTQ/I4EsZhFZh2VxKg==,type:str] + lastmodified: "2023-04-23T17:35:16Z" + mac: ENC[AES256_GCM,data:4cW8k6o3jET8k+yJGyApjOyuSUQb+d+4wX/RTNnpbt+867sExQrZUrOMif/u8S4WmcKVSJgvrzuxK9hpDPYhJ1d/5YuHH1Dyj7QDRdhbZYHhkpPus0ZVTEpSknZzx2eWH1ch/fyJJknlrBlfb/tz50Dv+w9mhkL7qteaIq+Vmsc=,iv:YMfAuGwu1kAM0wGkq3kzVMnC72yo7ZT04BuEwoLRPIA=,tag:6I1VRzteRaLuxN+sfLA5Mw==,type:str] pgp: - created_at: "2022-10-12T16:48:23Z" enc: | From a3e2d2931c2a6b50049c4ccc06df1c0aa427591d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 11 May 2023 22:02:57 +0100 Subject: [PATCH 064/196] services: Add FoundryVTT service --- configuration/services/foundryvtt.nix | 35 +++++++++++++++++++++++++++ flake.lock | 21 ++++++++++++++++ flake.nix | 4 +++ 3 files changed, 60 insertions(+) create mode 100644 configuration/services/foundryvtt.nix diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix new file mode 100644 index 0000000..7bb2286 --- /dev/null +++ b/configuration/services/foundryvtt.nix @@ -0,0 +1,35 @@ +{ + lib, + config, + flake-inputs, + ... +}: let + domain = "foundryvtt.${config.services.nginx.domain}"; +in { + imports = [flake-inputs.foundryvtt.nixosModules.foundryvtt]; + + services.foundryvtt = { + enable = true; + hostName = domain; + minifyStaticFiles = true; + }; + + # Want to start it manually when I need it, not have it constantly + # running + systemd.services.foundryvtt.wantedBy = lib.mkForce []; + + services.nginx.virtualHosts."${domain}" = let + inherit (config.services.foundryvtt) port; + in { + forceSSL = true; + enableACME = true; + extraConfig = '' + add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + ''; + + locations."/" = { + proxyWebsockets = true; + proxyPass = "http://localhost:${toString port}"; + }; + }; +} diff --git a/flake.lock b/flake.lock index 13b0222..3fe3b91 100644 --- a/flake.lock +++ b/flake.lock @@ -256,6 +256,26 @@ "type": "github" } }, + "foundryvtt": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1677026752, + "narHash": "sha256-cYeFDzb0kmKQhBuN0vYWoLulCqj3vf7QhvnsPBO66vc=", + "owner": "reckenrode", + "repo": "nix-foundryvtt", + "rev": "6c52bfc6824a3dba673df4894a71193ec32aa399", + "type": "github" + }, + "original": { + "owner": "reckenrode", + "repo": "nix-foundryvtt", + "type": "github" + } + }, "ghc-utils": { "flake": false, "locked": { @@ -499,6 +519,7 @@ "root": { "inputs": { "deploy-rs": "deploy-rs", + "foundryvtt": "foundryvtt", "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable", "nvfetcher": "nvfetcher", diff --git a/flake.nix b/flake.nix index 3f3865c..4c8a805 100644 --- a/flake.nix +++ b/flake.nix @@ -17,6 +17,10 @@ url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs.nixpkgs.follows = "nixpkgs"; }; + foundryvtt = { + url = "github:reckenrode/nix-foundryvtt"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = { From 1e1f8f1e36e4a62ed0e2bc0a095ac375c15ad39e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jul 2023 11:03:25 +0200 Subject: [PATCH 065/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/8c9ea9605eed20528bf60fae35a2b613b901fd77' (2023-01-19) → 'github:serokell/deploy-rs/724463b5a94daa810abfc64a4f87faef4e00f984' (2023-06-14) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/6c52bfc6824a3dba673df4894a71193ec32aa399' (2023-02-22) → 'github:reckenrode/nix-foundryvtt/440d3502d17c45d8dfeee5c1833d1ff03525a07b' (2023-07-06) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/f294325aed382b66c7a188482101b0f336d1d7db' (2023-04-16) → 'github:nixos/nixpkgs/ef99fa5c5ed624460217c31ac4271cfb5cb2502c' (2023-07-25) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/0a9ac5fd07b52467d81163b1f8c94c12e5c9aff9' (2023-01-06) → 'github:berberman/nvfetcher/44196458acc2c28c32e456c50277d6148e71e708' (2023-06-22) • Updated input 'nvfetcher/flake-compat': 'github:edolstra/flake-compat/009399224d5e398d03b22badca40a37ac85412a1' (2022-11-17) → 'github:edolstra/flake-compat/35bb57c0c8d8b62bbfd284272c928ceb64ddbde9' (2023-01-17) • Updated input 'nvfetcher/flake-utils': 'github:numtide/flake-utils/5aed5285a952e0b949eb3ba02c12fa4fcfef535f' (2022-11-02) → 'github:numtide/flake-utils/abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c' (2023-06-19) • Added input 'nvfetcher/flake-utils/systems': 'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09) • Updated input 'sops-nix': 'github:Mic92/sops-nix/de6514f8fe1b3c2b57307569a0898bc4be9ae1c5' (2023-04-17) → 'github:Mic92/sops-nix/c36df4fe4bf4bb87759b1891cab21e7a05219500' (2023-07-24) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/1040ce5f652b586da95dfd80d48a745e107b9eac' (2023-04-16) → 'github:NixOS/nixpkgs/ce45b591975d070044ca24e3003c830d26fea1c8' (2023-07-22) • Updated input 'tlaternet-webserver': 'git+https://gitea.tlater.net/tlaternet/tlaternet.git?ref=refs%2fheads%2fmaster&rev=2ca66c4fe1b8cfdd5d873cadb2735cef555dacca' (2023-04-17) → 'git+https://gitea.tlater.net/tlaternet/tlaternet.git?ref=refs%2fheads%2fmaster&rev=c573a6f81827594ceeffbfa058659e2fc20e4a1e' (2023-06-13) • Updated input 'tlaternet-webserver/dream2nix': 'github:nix-community/dream2nix/34a80ab215f1f24068ea9c76f3a7e5bc19478653' (2023-04-04) → 'github:nix-community/dream2nix/0c064fa9dd025069cc215b0a8b4eb5ea734aceb0' (2023-06-06) • Updated input 'tlaternet-webserver/dream2nix/crane': 'github:ipetkov/crane/59b31b41a589c0a65e4a1f86b0e5eac68081468b' (2022-12-13) → 'github:ipetkov/crane/445a3d222947632b5593112bb817850e8a9cf737' (2023-04-11) • Updated input 'tlaternet-webserver/dream2nix/drv-parts': 'github:davhau/drv-parts/ced8a52f62b0a94244713df2225c05c85b416110' (2023-03-30) → 'github:davhau/drv-parts/e8c2ec1157dc1edb002989669a0dbd935f430201' (2023-04-05) • Updated input 'tlaternet-webserver/fenix': 'github:nix-community/fenix/0d8c0d08db5fe6e5d995f4584f991ad60bbb1673' (2023-04-17) → 'github:nix-community/fenix/6fbeedcd2fc1fba77152e13fd7492824d77a4060' (2023-06-13) • Updated input 'tlaternet-webserver/fenix/rust-analyzer-src': 'github:rust-lang/rust-analyzer/bab80dae445fd576cb4cc22ba208e9fbc39dc18d' (2023-04-16) → 'github:rust-lang/rust-analyzer/1f1fe81f0db301124b3026bd2940294526cdd852' (2023-06-12) --- flake.lock | 115 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 67 insertions(+), 48 deletions(-) diff --git a/flake.lock b/flake.lock index 3fe3b91..590dec9 100644 --- a/flake.lock +++ b/flake.lock @@ -20,15 +20,16 @@ "crane": { "flake": false, "locked": { - "lastModified": 1670900067, - "narHash": "sha256-VXVa+KBfukhmWizaiGiHRVX/fuk66P8dgSFfkVN4/MY=", + "lastModified": 1681175776, + "narHash": "sha256-7SsUy9114fryHAZ8p1L6G6YSu7jjz55FddEwa2U8XZc=", "owner": "ipetkov", "repo": "crane", - "rev": "59b31b41a589c0a65e4a1f86b0e5eac68081468b", + "rev": "445a3d222947632b5593112bb817850e8a9cf737", "type": "github" }, "original": { "owner": "ipetkov", + "ref": "v0.12.1", "repo": "crane", "type": "github" } @@ -40,11 +41,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1674127017, - "narHash": "sha256-QO1xF7stu5ZMDLbHN30LFolMAwY6TVlzYvQoUs1RD68=", + "lastModified": 1686747123, + "narHash": "sha256-XUQK9kwHpTeilHoad7L4LjMCCyY13Oq383CoFADecRE=", "owner": "serokell", "repo": "deploy-rs", - "rev": "8c9ea9605eed20528bf60fae35a2b613b901fd77", + "rev": "724463b5a94daa810abfc64a4f87faef4e00f984", "type": "github" }, "original": { @@ -89,11 +90,11 @@ "pruned-racket-catalog": "pruned-racket-catalog" }, "locked": { - "lastModified": 1680605243, - "narHash": "sha256-dUrxj653kcLvjNKRI7NoTJoj+Q7G+vOYsl4iuwtnIWo=", + "lastModified": 1686064783, + "narHash": "sha256-qyptOk4vDut2JkRMJ+815eJNqqd8gIfjpz3l4WCCtMY=", "owner": "nix-community", "repo": "dream2nix", - "rev": "34a80ab215f1f24068ea9c76f3a7e5bc19478653", + "rev": "0c064fa9dd025069cc215b0a8b4eb5ea734aceb0", "type": "github" }, "original": { @@ -121,11 +122,11 @@ ] }, "locked": { - "lastModified": 1680172861, - "narHash": "sha256-QMyI338xRxaHFDlCXdLCtgelGQX2PdlagZALky4ZXJ8=", + "lastModified": 1680698112, + "narHash": "sha256-FgnobN/DvCjEsc0UAZEAdPLkL4IZi2ZMnu2K2bUaElc=", "owner": "davhau", "repo": "drv-parts", - "rev": "ced8a52f62b0a94244713df2225c05c85b416110", + "rev": "e8c2ec1157dc1edb002989669a0dbd935f430201", "type": "github" }, "original": { @@ -143,11 +144,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1681712564, - "narHash": "sha256-14QeQU5m1iJg4v+HnLnH1X5W2V1d0lHfaHxDJP/6aig=", + "lastModified": 1686637310, + "narHash": "sha256-sGfKyioVsxQppDM0eDO62wtFiz+bZOD0cBMMIEjqn4I=", "owner": "nix-community", "repo": "fenix", - "rev": "0d8c0d08db5fe6e5d995f4584f991ad60bbb1673", + "rev": "6fbeedcd2fc1fba77152e13fd7492824d77a4060", "type": "github" }, "original": { @@ -175,11 +176,11 @@ "flake-compat_2": { "flake": false, "locked": { - "lastModified": 1668681692, - "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "lastModified": 1673956053, + "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", "owner": "edolstra", "repo": "flake-compat", - "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", "type": "github" }, "original": { @@ -227,12 +228,15 @@ } }, "flake-utils": { + "inputs": { + "systems": "systems" + }, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1687171271, + "narHash": "sha256-BJlq+ozK2B1sJDQXS3tzJM5a+oVZmi1q0FlBK/Xqv7M=", "owner": "numtide", "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "rev": "abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c", "type": "github" }, "original": { @@ -263,11 +267,11 @@ ] }, "locked": { - "lastModified": 1677026752, - "narHash": "sha256-cYeFDzb0kmKQhBuN0vYWoLulCqj3vf7QhvnsPBO66vc=", + "lastModified": 1688686059, + "narHash": "sha256-1q+xdGil+mVkIMHovLv8bkXvwLjk92X6t0bvTpZVYb0=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "6c52bfc6824a3dba673df4894a71193ec32aa399", + "rev": "440d3502d17c45d8dfeee5c1833d1ff03525a07b", "type": "github" }, "original": { @@ -357,27 +361,27 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1681613598, - "narHash": "sha256-Ogkoma0ytYcDoMR2N7CZFABPo+i0NNo26dPngru9tPc=", + "lastModified": 1690066826, + "narHash": "sha256-6L2qb+Zc0BFkh72OS9uuX637gniOjzU6qCDBpjB2LGY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1040ce5f652b586da95dfd80d48a745e107b9eac", + "rev": "ce45b591975d070044ca24e3003c830d26fea1c8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-22.11", + "ref": "release-23.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1681648924, - "narHash": "sha256-pzi3HISK8+7mpEtv08Yr80wswyHKsz+RP1CROG1Qf6s=", + "lastModified": 1690272529, + "narHash": "sha256-MakzcKXEdv/I4qJUtq/k/eG+rVmyOZLnYNC2w1mB59Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f294325aed382b66c7a188482101b0f336d1d7db", + "rev": "ef99fa5c5ed624460217c31ac4271cfb5cb2502c", "type": "github" }, "original": { @@ -404,16 +408,16 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1681696129, - "narHash": "sha256-Ba2y1lmsWmmAOAoTD5G9UnTS/UqV0ZFyzysgdfu7qag=", + "lastModified": 1690370995, + "narHash": "sha256-9z//23jGegLJrf3ITStLwVf715O39dq5u48Kr/XW14U=", "owner": "nixos", "repo": "nixpkgs", - "rev": "de66115c552acc4e0c0f92c5a5efb32e37dfa216", + "rev": "f3fbbc36b4e179a5985b9ab12624e9dfe7989341", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-22.11", + "ref": "nixos-23.05", "repo": "nixpkgs", "type": "github" } @@ -442,11 +446,11 @@ ] }, "locked": { - "lastModified": 1672979485, - "narHash": "sha256-LrY0K1yya3nvRlGDc98wm68ozVj7E6a1EXXEr7eHp8E=", + "lastModified": 1687440270, + "narHash": "sha256-aOAXvfVn+MBSkU+xlQEiyoGpRaF6NvQdpWIhw5OH/Dc=", "owner": "berberman", "repo": "nvfetcher", - "rev": "0a9ac5fd07b52467d81163b1f8c94c12e5c9aff9", + "rev": "44196458acc2c28c32e456c50277d6148e71e708", "type": "github" }, "original": { @@ -530,11 +534,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1681679582, - "narHash": "sha256-bijdVXzzfVSMHCjRuQ+PysNJt0Ei2mIhs+CPnR6yP4w=", + "lastModified": 1686586902, + "narHash": "sha256-+zfBFBmUxWutKbhdntI9uvF4D5Rh7BhcByM2l+ReyTw=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "bab80dae445fd576cb4cc22ba208e9fbc39dc18d", + "rev": "1f1fe81f0db301124b3026bd2940294526cdd852", "type": "github" }, "original": { @@ -552,11 +556,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1681721408, - "narHash": "sha256-NWCbZKOQEXz1hA2YDFxdd+fVrrw9edbG1DvbbLf7KUY=", + "lastModified": 1690199016, + "narHash": "sha256-yTLL72q6aqGmzHq+C3rDp3rIjno7EJZkFLof6Ika7cE=", "owner": "Mic92", "repo": "sops-nix", - "rev": "de6514f8fe1b3c2b57307569a0898bc4be9ae1c5", + "rev": "c36df4fe4bf4bb87759b1891cab21e7a05219500", "type": "github" }, "original": { @@ -565,6 +569,21 @@ "type": "github" } }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", @@ -574,11 +593,11 @@ ] }, "locked": { - "lastModified": 1681761148, - "narHash": "sha256-eub9HQGCCjxOc+u4p9Om8y5EcVlBJOQOoK4APxXAbhc=", + "lastModified": 1686688441, + "narHash": "sha256-rcqAQzExGu0uV9Din8yy+Nn8FQvG/Itm8hp66amDj6o=", "ref": "refs/heads/master", - "rev": "2ca66c4fe1b8cfdd5d873cadb2735cef555dacca", - "revCount": 62, + "rev": "c573a6f81827594ceeffbfa058659e2fc20e4a1e", + "revCount": 66, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, From ecbf382d4354a4b28aac026e9ca5a05a34ccc165 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jul 2023 11:23:35 +0200 Subject: [PATCH 066/196] Update to NixOS 23.05 --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 4c8a805..801f601 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-22.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { From 828d3f3878f71b642eb94abf204072abd7b93117 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jul 2023 11:23:56 +0200 Subject: [PATCH 067/196] services: Update outdated options --- configuration/default.nix | 9 ++++++--- configuration/services/gitea.nix | 16 +++++++++------- configuration/services/nextcloud.nix | 2 +- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index f69ec09..1f7a276 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -108,11 +108,14 @@ services.openssh = { enable = true; allowSFTP = false; - passwordAuthentication = false; - permitRootLogin = "no"; ports = [2222]; startWhenNeeded = true; - gatewayPorts = "yes"; + + settings = { + GatewayPorts = "yes"; + PermitRootLogin = "no"; + PasswordAuthentication = false; + }; }; security = { diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 1d3308a..c636078 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -2,18 +2,19 @@ domain = "gitea.${config.services.nginx.domain}"; in { services.gitea = { - inherit domain; enable = true; - - httpAddress = "127.0.0.1"; database.type = "postgres"; - rootUrl = "https://${domain}/"; - appName = "Gitea: Git with a cup of tea"; settings = { - server.SSH_PORT = 2222; + server = { + DOMAIN = domain; + HTTP_ADDR = "127.0.0.1"; + ROOT_URL = "https://${domain}/"; + SSH_PORT = 2222; + }; + service.DISABLE_REGISTRATION = true; session.COOKIE_SECURE = true; }; @@ -21,7 +22,8 @@ in { # Set up SSL services.nginx.virtualHosts."${domain}" = let - inherit (config.services.gitea) httpAddress httpPort; + httpAddress = config.services.gitea.settings.server.HTTP_ADDR; + httpPort = config.services.gitea.settings.server.HTTP_PORT; in { forceSSL = true; enableACME = true; diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index c25cfb2..4d81454 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -3,7 +3,7 @@ config, ... }: let - nextcloud = pkgs.nextcloud25; + nextcloud = pkgs.nextcloud26; hostName = "nextcloud.${config.services.nginx.domain}"; in { services.nextcloud = { From 5aa7686ab5a9a59de9f156fc68c43a5d0d0d93d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jul 2023 11:24:15 +0200 Subject: [PATCH 068/196] nextcloud: Update apps --- pkgs/_sources_nextcloud/generated.json | 32 +++++++++++++------------- pkgs/_sources_nextcloud/generated.nix | 32 +++++++++++++------------- pkgs/nextcloud-apps.toml | 4 +--- 3 files changed, 33 insertions(+), 35 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 94d5c9a..e8bf16d 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "1kdpma5f3rb9g29j364lqv6bkar5qgwlvcxmhpmzllwlkmjpc9w8", + "sha256": "sha256-aflxesvTOdNjPtHRtSPtImdmh4JmzM4s8iF5+lYYo3c=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v12.1.0/bookmarks-12.1.0.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.0.1/bookmarks-13.0.1.tar.gz" }, - "version": "12.1.0" + "version": "13.0.1" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "0xhrpadzz73rdjyk4y1xm5hwc6k104rlpp9nmw08pq8phpfs12qa", + "sha256": "sha256-OAsM65aBJUA8toRSr3/UsdSTq/Rgn43s4nOabqoEoAI=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.3/calendar-v4.3.3.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.3/calendar-v4.4.3.tar.gz" }, - "version": "v4.3.3" + "version": "v4.4.3" }, "contacts": { "cargoLocks": null, @@ -35,11 +35,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "1rdql3m7pg9m044hppyrm3xw329y8h0pzwcmpcinjbjs0vqjssxk", + "sha256": "sha256-aG2wD4ioDYXwbyzZBpsEzz0PNvuF95V0JdJNw+kbMzk=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.2.0/contacts-v5.2.0.tar.gz" + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.2/contacts-v5.3.2.tar.gz" }, - "version": "v5.2.0" + "version": "v5.3.2" }, "cookbook": { "cargoLocks": null, @@ -49,7 +49,7 @@ "passthru": null, "pinned": false, "src": { - "sha256": "18rzvdqd99nlkk3p0y9y8b17ihw5c4c9wsx8psq6xadspm97002y", + "sha256": "sha256-XgBwUr26qW6wvqhrnhhhhcN4wkI+eXDHnNSm1HDbP6M=", "type": "tarball", "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz" }, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd", + "sha256": "sha256-hhXPEITSbCiFs0o+TOsQnSasXBpjU9mA/OFsbzuaCPw=", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz" }, - "version": "21.1.0" + "version": "22.0.0" }, "notes": { "cargoLocks": null, @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "0klqf8dixrrb8yp8cc60ggnvhmqb3yh9f6y1281jn8ia5jml622v", + "sha256": "sha256-7GkTGyGTvtDbZsq/zOdbBE7xh6DZO183W6I5XX1ekbw=", "type": "tarball", - "url": "https://github.com/nextcloud/notes/releases/download/v4.7.2/notes.tar.gz" + "url": "https://github.com/nextcloud/notes/releases/download/v4.8.1/notes.tar.gz" }, - "version": "v4.7.2" + "version": "v4.8.1" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index c29f6b5..bab2e14 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,26 +3,26 @@ { bookmarks = { pname = "bookmarks"; - version = "12.1.0"; + version = "13.0.1"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v12.1.0/bookmarks-12.1.0.tar.gz"; - sha256 = "1kdpma5f3rb9g29j364lqv6bkar5qgwlvcxmhpmzllwlkmjpc9w8"; + url = "https://github.com/nextcloud/bookmarks/releases/download/v13.0.1/bookmarks-13.0.1.tar.gz"; + sha256 = "sha256-aflxesvTOdNjPtHRtSPtImdmh4JmzM4s8iF5+lYYo3c="; }; }; calendar = { pname = "calendar"; - version = "v4.3.3"; + version = "v4.4.3"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.3.3/calendar-v4.3.3.tar.gz"; - sha256 = "0xhrpadzz73rdjyk4y1xm5hwc6k104rlpp9nmw08pq8phpfs12qa"; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.3/calendar-v4.4.3.tar.gz"; + sha256 = "sha256-OAsM65aBJUA8toRSr3/UsdSTq/Rgn43s4nOabqoEoAI="; }; }; contacts = { pname = "contacts"; - version = "v5.2.0"; + version = "v5.3.2"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.2.0/contacts-v5.2.0.tar.gz"; - sha256 = "1rdql3m7pg9m044hppyrm3xw329y8h0pzwcmpcinjbjs0vqjssxk"; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.2/contacts-v5.3.2.tar.gz"; + sha256 = "sha256-aG2wD4ioDYXwbyzZBpsEzz0PNvuF95V0JdJNw+kbMzk="; }; }; cookbook = { @@ -30,23 +30,23 @@ version = "0.10.2"; src = fetchTarball { url = "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz"; - sha256 = "18rzvdqd99nlkk3p0y9y8b17ihw5c4c9wsx8psq6xadspm97002y"; + sha256 = "sha256-XgBwUr26qW6wvqhrnhhhhcN4wkI+eXDHnNSm1HDbP6M="; }; }; news = { pname = "news"; - version = "21.1.0"; + version = "22.0.0"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/21.1.0/news.tar.gz"; - sha256 = "026ggjf6dqbjv8hnj6jj1nnqz0256ck2yg13zhln7zc84lhfzlfd"; + url = "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz"; + sha256 = "sha256-hhXPEITSbCiFs0o+TOsQnSasXBpjU9mA/OFsbzuaCPw="; }; }; notes = { pname = "notes"; - version = "v4.7.2"; + version = "v4.8.1"; src = fetchTarball { - url = "https://github.com/nextcloud/notes/releases/download/v4.7.2/notes.tar.gz"; - sha256 = "0klqf8dixrrb8yp8cc60ggnvhmqb3yh9f6y1281jn8ia5jml622v"; + url = "https://github.com/nextcloud/notes/releases/download/v4.8.1/notes.tar.gz"; + sha256 = "sha256-7GkTGyGTvtDbZsq/zOdbBE7xh6DZO183W6I5XX1ekbw="; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 709633d..69bccdc 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,8 +1,6 @@ [bookmarks] -# src.github = "nextcloud/bookmarks" +src.github = "nextcloud/bookmarks" src.prefix = "v" -# TODO(tlater): Remove when we update to nextcloud 26 -src.manual = "v12.1.0" fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] From 6b1e5dee567e0c3cfbc7a6d5567ebe7046d14bf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jul 2023 12:05:59 +0200 Subject: [PATCH 069/196] deploy: Allow substituters --- flake.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/flake.nix b/flake.nix index 801f601..b6db610 100644 --- a/flake.nix +++ b/flake.nix @@ -62,7 +62,6 @@ sshUser = "tlater"; sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; - fastConnection = true; }; ######### From 88d96f198b60543c9fa00a55ee75973481497fb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jul 2023 12:06:48 +0200 Subject: [PATCH 070/196] nextcloud: Apply recommended PHP setting --- configuration/services/nextcloud.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 4d81454..207679a 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,6 +1,7 @@ { pkgs, config, + options, ... }: let nextcloud = pkgs.nextcloud26; @@ -27,6 +28,12 @@ in { defaultPhoneRegion = "AT"; }; + phpOptions = + options.services.nextcloud.phpOptions.default + // { + "opcache.interned_strings_buffer" = "16"; + }; + extraApps = { inherit (pkgs.local) bookmarks calendar contacts cookbook news notes; }; From 0c5755d2f0293f9e975e966e52bab071ff408ab3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 29 Jul 2023 18:17:24 +0200 Subject: [PATCH 071/196] nextcloud: Upgrade to version 27 --- configuration/services/nextcloud.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 207679a..133d1d1 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -4,7 +4,7 @@ options, ... }: let - nextcloud = pkgs.nextcloud26; + nextcloud = pkgs.nextcloud27; hostName = "nextcloud.${config.services.nginx.domain}"; in { services.nextcloud = { From bb3ffbbd90d9465eeba20b59a32509b9dddcfb03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 29 Jul 2023 18:17:39 +0200 Subject: [PATCH 072/196] nextcloud: Configure redis caching --- configuration/services/nextcloud.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 133d1d1..7b87697 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -16,6 +16,8 @@ in { maxUploadSize = "2G"; https = true; + configureRedis = true; + config = { overwriteProtocol = "https"; @@ -37,12 +39,10 @@ in { extraApps = { inherit (pkgs.local) bookmarks calendar contacts cookbook news notes; }; - - # TODO(tlater): Add redis config. This will be much easier - # starting with 22.11, since this will add an `extraOptions` where - # the necessary redis config can go. }; + services.redis.vmOverCommit = true; + # Ensure that this service doesn't start before postgres is ready systemd.services.nextcloud-setup.after = ["postgresql.service"]; From 01b0327ca0ac865256b8995f5c8725f9f4f2e2c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 17 Sep 2023 21:25:14 +0200 Subject: [PATCH 073/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/724463b5a94daa810abfc64a4f87faef4e00f984' (2023-06-14) → 'github:serokell/deploy-rs/31c32fb2959103a796e07bbe47e0a5e287c343a8' (2023-09-12) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/440d3502d17c45d8dfeee5c1833d1ff03525a07b' (2023-07-06) → 'github:reckenrode/nix-foundryvtt/3358ccef0ea3e06faabe8c54761fb8a0862b80d4' (2023-08-10) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/f3fbbc36b4e179a5985b9ab12624e9dfe7989341' (2023-07-26) → 'github:nixos/nixpkgs/5d017a8822e0907fb96f7700a319f9fe2434de02' (2023-09-17) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/ef99fa5c5ed624460217c31ac4271cfb5cb2502c' (2023-07-25) → 'github:nixos/nixpkgs/ace5093e36ab1e95cb9463863491bee90d5a4183' (2023-09-15) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/44196458acc2c28c32e456c50277d6148e71e708' (2023-06-22) → 'github:berberman/nvfetcher/2bcf73dea96497ac9c36ed320b457caa705f9485' (2023-09-01) • Updated input 'nvfetcher/flake-utils': 'github:numtide/flake-utils/abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c' (2023-06-19) → 'github:numtide/flake-utils/f9e7cf818399d17d347f847525c5a5a8032e4e44' (2023-08-23) • Updated input 'sops-nix': 'github:Mic92/sops-nix/c36df4fe4bf4bb87759b1891cab21e7a05219500' (2023-07-24) → 'github:Mic92/sops-nix/ea208e55f8742fdcc0986b256bdfa8986f5e4415' (2023-09-12) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/ce45b591975d070044ca24e3003c830d26fea1c8' (2023-07-22) → 'github:NixOS/nixpkgs/5601118d39ca9105f8e7b39d4c221d3388c0419d' (2023-09-02) --- flake.lock | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/flake.lock b/flake.lock index 590dec9..b64bc75 100644 --- a/flake.lock +++ b/flake.lock @@ -41,11 +41,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1686747123, - "narHash": "sha256-XUQK9kwHpTeilHoad7L4LjMCCyY13Oq383CoFADecRE=", + "lastModified": 1694513707, + "narHash": "sha256-wE5kHco3+FQjc+MwTPwLVqYz4hM7uno2CgXDXUFMCpc=", "owner": "serokell", "repo": "deploy-rs", - "rev": "724463b5a94daa810abfc64a4f87faef4e00f984", + "rev": "31c32fb2959103a796e07bbe47e0a5e287c343a8", "type": "github" }, "original": { @@ -232,11 +232,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1687171271, - "narHash": "sha256-BJlq+ozK2B1sJDQXS3tzJM5a+oVZmi1q0FlBK/Xqv7M=", + "lastModified": 1692799911, + "narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=", "owner": "numtide", "repo": "flake-utils", - "rev": "abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c", + "rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44", "type": "github" }, "original": { @@ -267,11 +267,11 @@ ] }, "locked": { - "lastModified": 1688686059, - "narHash": "sha256-1q+xdGil+mVkIMHovLv8bkXvwLjk92X6t0bvTpZVYb0=", + "lastModified": 1691701569, + "narHash": "sha256-7TK+sO+JC37OGTQDTiz9TriqbB5yTgoo7fyPyLtWvd8=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "440d3502d17c45d8dfeee5c1833d1ff03525a07b", + "rev": "3358ccef0ea3e06faabe8c54761fb8a0862b80d4", "type": "github" }, "original": { @@ -361,11 +361,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1690066826, - "narHash": "sha256-6L2qb+Zc0BFkh72OS9uuX637gniOjzU6qCDBpjB2LGY=", + "lastModified": 1693675694, + "narHash": "sha256-2pIOyQwGyy2FtFAUIb8YeKVmOCcPOTVphbAvmshudLE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ce45b591975d070044ca24e3003c830d26fea1c8", + "rev": "5601118d39ca9105f8e7b39d4c221d3388c0419d", "type": "github" }, "original": { @@ -377,11 +377,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1690272529, - "narHash": "sha256-MakzcKXEdv/I4qJUtq/k/eG+rVmyOZLnYNC2w1mB59Y=", + "lastModified": 1694767346, + "narHash": "sha256-5uH27SiVFUwsTsqC5rs3kS7pBoNhtoy9QfTP9BmknGk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ef99fa5c5ed624460217c31ac4271cfb5cb2502c", + "rev": "ace5093e36ab1e95cb9463863491bee90d5a4183", "type": "github" }, "original": { @@ -408,11 +408,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1690370995, - "narHash": "sha256-9z//23jGegLJrf3ITStLwVf715O39dq5u48Kr/XW14U=", + "lastModified": 1694937365, + "narHash": "sha256-iHZSGrb9gVpZRR4B2ishUN/1LRKWtSHZNO37C8z1SmA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f3fbbc36b4e179a5985b9ab12624e9dfe7989341", + "rev": "5d017a8822e0907fb96f7700a319f9fe2434de02", "type": "github" }, "original": { @@ -446,11 +446,11 @@ ] }, "locked": { - "lastModified": 1687440270, - "narHash": "sha256-aOAXvfVn+MBSkU+xlQEiyoGpRaF6NvQdpWIhw5OH/Dc=", + "lastModified": 1693539235, + "narHash": "sha256-ACmCq1+RnVq+EB7yeN6fThUR3cCJZb6lKEfv937WG84=", "owner": "berberman", "repo": "nvfetcher", - "rev": "44196458acc2c28c32e456c50277d6148e71e708", + "rev": "2bcf73dea96497ac9c36ed320b457caa705f9485", "type": "github" }, "original": { @@ -556,11 +556,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1690199016, - "narHash": "sha256-yTLL72q6aqGmzHq+C3rDp3rIjno7EJZkFLof6Ika7cE=", + "lastModified": 1694495315, + "narHash": "sha256-sZEYXs9T1NVHZSSbMqBEtEm2PGa7dEDcx0ttQkArORc=", "owner": "Mic92", "repo": "sops-nix", - "rev": "c36df4fe4bf4bb87759b1891cab21e7a05219500", + "rev": "ea208e55f8742fdcc0986b256bdfa8986f5e4415", "type": "github" }, "original": { From 355ae4b70bd32bae21ce199c3253c2b51e04be9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 18 Sep 2023 04:17:07 +0200 Subject: [PATCH 074/196] nextcloud: Update apps --- pkgs/_sources_nextcloud/generated.json | 24 ++++++++++++------------ pkgs/_sources_nextcloud/generated.nix | 24 ++++++++++++------------ 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index e8bf16d..1e731e8 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-aflxesvTOdNjPtHRtSPtImdmh4JmzM4s8iF5+lYYo3c=", + "sha256": "sha256-7baI+vGBg48vZKZY0ikme+4PQl+PLUlC6JE0Air2s5E=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.0.1/bookmarks-13.0.1.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.1.1/bookmarks-13.1.1.tar.gz" }, - "version": "13.0.1" + "version": "13.1.1" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-OAsM65aBJUA8toRSr3/UsdSTq/Rgn43s4nOabqoEoAI=", + "sha256": "sha256-8KwFmnFFlyYzKy2acCCjmpRj2W5pOrbQaPRPm16ZZ7g=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.3/calendar-v4.4.3.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.5.0/calendar-v4.5.0.tar.gz" }, - "version": "v4.4.3" + "version": "v4.5.0" }, "contacts": { "cargoLocks": null, @@ -35,11 +35,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-aG2wD4ioDYXwbyzZBpsEzz0PNvuF95V0JdJNw+kbMzk=", + "sha256": "sha256-dNim0PqUlEGB6J/OTsOjyUZ2JhOBhXC60HhjTstmF4s=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.2/contacts-v5.3.2.tar.gz" + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.4.0/contacts-v5.4.0.tar.gz" }, - "version": "v5.3.2" + "version": "v5.4.0" }, "cookbook": { "cargoLocks": null, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-hhXPEITSbCiFs0o+TOsQnSasXBpjU9mA/OFsbzuaCPw=", + "sha256": "sha256-WrLikMN8jxu+vav9Xn8J1wUoGN5wQeQGr5pbVT6GLck=", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/23.0.0/news.tar.gz" }, - "version": "22.0.0" + "version": "23.0.0" }, "notes": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index bab2e14..ecdbdf3 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,26 +3,26 @@ { bookmarks = { pname = "bookmarks"; - version = "13.0.1"; + version = "13.1.1"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v13.0.1/bookmarks-13.0.1.tar.gz"; - sha256 = "sha256-aflxesvTOdNjPtHRtSPtImdmh4JmzM4s8iF5+lYYo3c="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v13.1.1/bookmarks-13.1.1.tar.gz"; + sha256 = "sha256-7baI+vGBg48vZKZY0ikme+4PQl+PLUlC6JE0Air2s5E="; }; }; calendar = { pname = "calendar"; - version = "v4.4.3"; + version = "v4.5.0"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.4.3/calendar-v4.4.3.tar.gz"; - sha256 = "sha256-OAsM65aBJUA8toRSr3/UsdSTq/Rgn43s4nOabqoEoAI="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.5.0/calendar-v4.5.0.tar.gz"; + sha256 = "sha256-8KwFmnFFlyYzKy2acCCjmpRj2W5pOrbQaPRPm16ZZ7g="; }; }; contacts = { pname = "contacts"; - version = "v5.3.2"; + version = "v5.4.0"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.3.2/contacts-v5.3.2.tar.gz"; - sha256 = "sha256-aG2wD4ioDYXwbyzZBpsEzz0PNvuF95V0JdJNw+kbMzk="; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.4.0/contacts-v5.4.0.tar.gz"; + sha256 = "sha256-dNim0PqUlEGB6J/OTsOjyUZ2JhOBhXC60HhjTstmF4s="; }; }; cookbook = { @@ -35,10 +35,10 @@ }; news = { pname = "news"; - version = "22.0.0"; + version = "23.0.0"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz"; - sha256 = "sha256-hhXPEITSbCiFs0o+TOsQnSasXBpjU9mA/OFsbzuaCPw="; + url = "https://github.com/nextcloud/news/releases/download/23.0.0/news.tar.gz"; + sha256 = "sha256-WrLikMN8jxu+vav9Xn8J1wUoGN5wQeQGr5pbVT6GLck="; }; }; notes = { From ab5e088016d6576cfb01a9b4d6a842995728a5d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 18 Sep 2023 04:17:16 +0200 Subject: [PATCH 075/196] conduit: Add Element X support --- configuration/services/conduit.nix | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 871b5e2..2d341b7 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -207,12 +207,28 @@ in { merge_slashes off; ''; - locations."/_matrix" = { - proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; - # Recommended by conduit - extraConfig = '' - proxy_buffering off; - ''; + locations = { + "/_matrix" = { + proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; + # Recommended by conduit + extraConfig = '' + proxy_buffering off; + ''; + }; + + # Add Element X support + # TODO(tlater): Remove when no longer required: https://github.com/vector-im/element-x-android/issues/1085 + "=/.well-known/matrix/client" = { + alias = pkgs.writeText "well-known-matrix-client" (builtins.toJSON { + "m.homeserver".base_url = "https://${domain}"; + "org.matrix.msc3575.proxy".url = "https://${domain}"; + }); + + extraConfig = '' + default_type application/json; + add_header Access-Control-Allow-Origin "*"; + ''; + }; }; }; } From 87dd9daa4f6392c36504be8005422dc6bf0100fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 22 Sep 2023 06:20:36 +0200 Subject: [PATCH 076/196] backups: Add atomic backups with restic --- configuration/default.nix | 1 + configuration/services/backups.nix | 229 +++++++++++++++++++++++++++ configuration/services/conduit.nix | 10 ++ configuration/services/gitea.nix | 26 ++- configuration/services/nextcloud.nix | 29 ++++ configuration/services/starbound.nix | 8 + configuration/sops.nix | 6 + keys/production.yaml | 6 +- keys/staging.yaml | 6 +- 9 files changed, 316 insertions(+), 5 deletions(-) create mode 100644 configuration/services/backups.nix diff --git a/configuration/default.nix b/configuration/default.nix index 1f7a276..5d491af 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -14,6 +14,7 @@ "${modulesPath}/profiles/minimal.nix" (import ../modules) + ./services/backups.nix ./services/conduit.nix ./services/foundryvtt.nix ./services/gitea.nix diff --git a/configuration/services/backups.nix b/configuration/services/backups.nix new file mode 100644 index 0000000..3635a83 --- /dev/null +++ b/configuration/services/backups.nix @@ -0,0 +1,229 @@ +{ + config, + pkgs, + lib, + ... +}: let + inherit (lib) types optional singleton; + mkShutdownScript = service: + pkgs.writeShellScript "backup-${service}-shutdown" '' + if systemctl is-active --quiet '${service}'; then + touch '/tmp/${service}-was-active' + systemctl stop '${service}' + fi + ''; + mkRestartScript = service: + pkgs.writeShellScript "backup-${service}-restart" '' + if [ -f '/tmp/${service}-was-active' ]; then + rm '/tmp/${service}-was-active' + systemctl start '${service}' + fi + ''; + writeScript = name: packages: text: + lib.getExe (pkgs.writeShellApplication { + inherit name text; + runtimeInputs = packages; + }); +in { + options = { + services.backups = lib.mkOption { + description = lib.mdDoc '' + Configure restic backups with a specific tag. + ''; + type = types.attrsOf (types.submodule ({ + config, + name, + ... + }: { + options = { + user = lib.mkOption { + type = types.str; + description = '' + The user as which to run the backup. + ''; + }; + paths = lib.mkOption { + type = types.listOf types.str; + description = '' + The paths to back up. + ''; + }; + tag = lib.mkOption { + type = types.str; + description = '' + The restic tag to mark the backup with. + ''; + default = name; + }; + preparation = { + packages = lib.mkOption { + type = types.listOf types.package; + default = []; + description = '' + The list of packages to make available in the + preparation script. + ''; + }; + text = lib.mkOption { + type = types.nullOr types.str; + default = null; + description = '' + The preparation script to run before the backup. + + This should include things like database dumps and + enabling maintenance modes. If a service needs to be + shut down for backups, use `pauseServices` instead. + ''; + }; + }; + cleanup = { + packages = lib.mkOption { + type = types.listOf types.package; + default = []; + description = '' + The list of packages to make available in the + cleanup script. + ''; + }; + text = lib.mkOption { + type = types.nullOr types.str; + default = null; + description = '' + The cleanup script to run after the backup. + + This should do things like cleaning up database dumps + and disabling maintenance modes. + ''; + }; + }; + pauseServices = lib.mkOption { + type = types.listOf types.str; + default = []; + description = '' + The systemd services that need to be shut down before + the backup can run. Services will be restarted after the + backup is complete. + + This is intended to be used for services that do not + support hot backups. + ''; + }; + }; + })); + }; + }; + + config = lib.mkIf (config.services.backups != {}) { + systemd.services = + { + restic-prune = { + # Doesn't hurt to finish the ongoing prune + restartIfChanged = false; + + environment = { + RESTIC_PASSWORD_FILE = config.sops.secrets."restic/local-backups".path; + RESTIC_REPOSITORY = "/var/lib/backups/"; + RESTIC_CACHE_DIR = "%C/restic-prune"; + }; + + path = with pkgs; [ + restic + ]; + + script = '' + # TODO(tlater): In an append-only setup, we should be + # careful with this; an attacker could delete backups by + # simply appending ad infinitum: + # https://restic.readthedocs.io/en/stable/060_forget.html#security-considerations-in-append-only-mode + restic forget --keep-last 3 --prune + restic check + ''; + + serviceConfig = { + DynamicUser = true; + Group = "backup"; + + CacheDirectory = "restic-prune"; + CacheDirectoryMode = "0700"; + ReadWritePaths = "/var/lib/backups/"; + + # Ensure we don't leave behind any files with the + # temporary UID of this service. + ExecStopPost = "+${pkgs.coreutils}/bin/chown -R root:backup /var/lib/backups/"; + }; + }; + } + // lib.mapAttrs' (name: backup: + lib.nameValuePair "backup-${name}" { + # Don't want to restart mid-backup + restartIfChanged = false; + + environment = { + RESTIC_CACHE_DIR = "%C/backup-${name}"; + RESTIC_PASSWORD_FILE = config.sops.secrets."restic/local-backups".path; + # TODO(tlater): If I ever add more than one repo, service + # shutdown/restarting will potentially break if multiple + # backups for the same service overlap. A more clever + # sentinel file with reference counts would probably solve + # this. + RESTIC_REPOSITORY = "/var/lib/backups/"; + }; + + serviceConfig = { + User = backup.user; + Group = "backup"; + RuntimeDirectory = "backup-${name}"; + CacheDirectory = "backup-${name}"; + CacheDirectoryMode = "0700"; + PrivateTmp = true; + + ExecStart = [ + (lib.concatStringsSep " " (["${pkgs.restic}/bin/restic" "backup" "--tag" name] ++ backup.paths)) + ]; + + ExecStartPre = + map (service: "+${mkShutdownScript service}") backup.pauseServices + ++ singleton (writeScript "backup-${name}-repo-init" [pkgs.restic pkgs.coreutils] '' + restic snapshots || (restic init && chmod -R g+rwx "$RESTIC_REPOSITORY"/*) + '') + ++ optional (backup.preparation.text != null) + (writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text); + + # TODO(tlater): Add repo pruning/checking + ExecStopPost = + map (service: "+${mkRestartScript service}") backup.pauseServices + ++ optional (backup.cleanup.text != null) + (writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text); + }; + }) + config.services.backups; + + systemd.timers = + { + restic-prune = { + wantedBy = ["timers.target"]; + timerConfig.OnCalendar = "Thursday 03:00:00 UTC"; + # Don't make this persistent, in case the server was offline + # for a while. This job cannot run at the same time as any + # of the backup jobs. + }; + } + // lib.mapAttrs' (name: backup: + lib.nameValuePair "backup-${name}" { + wantedBy = ["timers.target"]; + timerConfig = { + OnCalendar = "Wednesday 02:30:00 UTC"; + RandomizedDelaySec = "1h"; + FixedRandomDelay = true; + Persistent = true; + }; + }) + config.services.backups; + + users.groups.backup = {}; + + systemd.tmpfiles.rules = [ + "d /var/lib/backups/ 0770 root backup" + ]; + }; +} diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 2d341b7..3f8fd40 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -231,4 +231,14 @@ in { }; }; }; + + services.backups.conduit = { + user = "root"; + paths = [ + "/var/lib/private/matrix-conduit/" + ]; + # Other services store their data in conduit, so no other services + # need to be shut down currently. + pauseServices = ["conduit.service"]; + }; } diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index c636078..27353f6 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -1,4 +1,8 @@ -{config, ...}: let +{ + pkgs, + config, + ... +}: let domain = "gitea.${config.services.nginx.domain}"; in { services.gitea = { @@ -52,4 +56,24 @@ in { enabled = true ''; }; + + services.backups.gitea = { + user = "gitea"; + paths = [ + "/var/lib/gitea/gitea-db.sql" + "/var/lib/gitea/repositories/" + "/var/lib/gitea/data/" + "/var/lib/gitea/custom/" + # Conf is backed up via nix + ]; + preparation = { + packages = [config.services.postgresql.package]; + text = "pg_dump ${config.services.gitea.database.name} --file=/var/lib/gitea/gitea-db.sql"; + }; + cleanup = { + packages = [pkgs.coreutils]; + text = "rm /var/lib/gitea/gitea-db.sql"; + }; + pauseServices = ["gitea.service"]; + }; } diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 7b87697..fbca607 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -74,4 +74,33 @@ in { bantime = 86400 ''; }; + + services.backups.nextcloud = { + user = "nextcloud"; + paths = [ + "/var/lib/nextcloud/nextcloud-db.sql" + "/var/lib/nextcloud/data/" + "/var/lib/nextcloud/config/config.php" + ]; + preparation = { + packages = [ + config.services.postgresql.package + config.services.nextcloud.occ + ]; + text = '' + nextcloud-occ maintenance:mode --on + pg_dump ${config.services.nextcloud.config.dbname} --file=/var/lib/nextcloud/nextcloud-db.sql + ''; + }; + cleanup = { + packages = [ + pkgs.coreutils + config.services.nextcloud.occ + ]; + text = '' + rm /var/lib/nextcloud/nextcloud-db.sql + nextcloud-occ maintenance:mode --off + ''; + }; + }; } diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix index 419f0e4..6da890e 100644 --- a/configuration/services/starbound.nix +++ b/configuration/services/starbound.nix @@ -110,4 +110,12 @@ in { # ProtectHome = "read-only"; # See further up }; }; + + services.backups.starbound = { + user = "root"; + paths = [ + "/var/lib/private/starbound/storage/universe/" + ]; + pauseServices = ["starbound.service"]; + }; } diff --git a/configuration/sops.nix b/configuration/sops.nix index 4becfd4..269fa58 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -19,6 +19,12 @@ mode = "0440"; }; + "restic/local-backups" = { + owner = "root"; + group = "backup"; + mode = "0440"; + }; + "turn/env" = {}; "turn/secret" = { owner = "turnserver"; diff --git a/keys/production.yaml b/keys/production.yaml index 6ef9ef7..f8d259d 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -7,6 +7,8 @@ heisenbridge: hs-token: ENC[AES256_GCM,data:u52WpkQFd/J7JFoE/rfNluebyZQLOokvkVdL7+AEAvrhJhrkJli1ztkD79lbC+6tGUH4tT3T+nX9wvGKnrRUQg==,iv:as+9fVuvMg2IoE2WIKD9mHi+znhNcWRh5Zq+yr0xcDQ=,tag:mZ7fh7U0MfgI8hyq/28Bcg==,type:str] wireguard: server-key: ENC[AES256_GCM,data:mXb7ZznJHf5CgV8rI4uzPBATMRbmd7LimgtCkQM9kAjbIaGwUBqJZBN3fXs=,iv:3Po1Orinzov9rnEm9cLzgJY1PeD+5Jl9115MriABHh8=,tag:E/2CjDO1JCvJzxCnqKcNyw==,type:str] +restic: + local-backups: ENC[AES256_GCM,data:NLNVlR9G9bLSZOkMoPvkbBbAZlKkmiUbdWHOFDnaefuy9wNLH53ctOIyS0rSsQLaJCSBTpgPSWIIXUSuzoK/eA==,iv:DzuujmyJJP4GiE5z7KOOGUEzUgOwmtf/7UYhwkyLe9g=,tag:cElFhpVC7S6HYlB6UyN7PQ==,type:str] turn: env: ENC[AES256_GCM,data:kt5nhVo9pb/ZbPUEcqSYXxN9YMgQKnFb5VRfFFS/qoIaJ73uD2fuJKqcxAyVRrdLqnSAWSQBgTgunBzdP7xqLAK2qt8DYAQWHkIe9uxFbSXZpdmw,iv:9lq6SFwTFN4GGm6gPiJpUMasMdnHVF6XLGYrsyG3kjU=,tag:428Qf9DOiiHt/Wjb188b8g==,type:str] secret: ENC[AES256_GCM,data:si7ee6Xfhdgdyzbp6aQpF7pz3TmTBb7iQ82lRPVXNDg9JfHI+lbmgAsSnRLX5qMCA6P9R045sSMosqidL8QwRg==,iv:SrhpZKK8D45yxCEfDb9P3TwtA14+qEI+wcRqcN/a6pw=,tag:PiwV+mOL9xHJgJft6sc61g==,type:str] @@ -19,8 +21,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-04-23T17:34:53Z" - mac: ENC[AES256_GCM,data:UaGB4uwmYGVbKud5KrvdKeYTnYrs8nnQsT590KIS/b/9JhpQo5JXFtHsm1AteEBg9ygmY6tYKDcK4AXwz/uR/m3CW5If03dBNG8F9Uy3dPL5KaebC/EsNVIaRavWTbSZgqhnBgYeM+HkeQPskSWuwviSNU0D7d1n98Q89Y0kQfA=,iv:kEsRh8hb1amd2qozyxwYHCHdX80c2mO5Mm7npKX3DKc=,tag:p5GPd0OZvowghT92pxxXeA==,type:str] + lastmodified: "2023-09-23T18:55:44Z" + mac: ENC[AES256_GCM,data:psqgXozY9L7nduZ11GF+mbIrZ4RUySqBixkWL5z0cYeoLA3URb/dr028LCmNgQS9l8aJVsjVkyLBJIU/8wmiUNqRy/VI5iqV5mu+sxXhUVwFL0dAAWP1lOKwwT5uGK89/ioqkphgzuWD37vGe2vYddKkJF0M+zlz12fqkMjaisU=,iv:UyRoJbfuGU3K/Mp5DQ1kY0Z+nKSSo46BGNAcxt+vAvc=,tag:HkP6+qxQ8J/xAYJXYoG/6g==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | diff --git a/keys/staging.yaml b/keys/staging.yaml index 49b5a6a..a6b0849 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -7,6 +7,8 @@ heisenbridge: hs-token: ENC[AES256_GCM,data:VBwvwomv0Xg=,iv:q6INtJ+rg+QiXj8uBdBzQYQZUBBXp+9odxDHwvu8Jxc=,tag:XKhm8nxygAkKaiVPJ2Fcdg==,type:str] wireguard: server-key: ENC[AES256_GCM,data:FvY897XdKoa/mckE8JQLCkklsnYD6Wz1wpsu5t3uhEnW3iarnDQxF9msuYU=,iv:jqGXfekM+Vs+J9b5nlZ5Skd1ZKHajoUo2Dc4tMYPm1w=,tag:EehikjI/FCU8wqtpvJRamQ==,type:str] +restic: + local-backups: ENC[AES256_GCM,data:3QjEv03t7wE=,iv:y/6Lv4eUbZZfGPwUONykz8VNL62cAJuWaJy9yk3aAmk=,tag:wMlGsepuG9JjwtUKGWSibw==,type:str] turn: env: ENC[AES256_GCM,data:xjIz/AY109lyiL5N01p5T3HcYco/rM5CJSRTtg==,iv:16bW6OpyOK/QL0QPGQp/Baa9xyT8E3ZsYkwqmjuofk0=,tag:J5re3uKxIykw3YunvQWBgg==,type:str] secret: ENC[AES256_GCM,data:eQ7dAocoZtg=,iv:fgzjTPv30WqTKlLy+yMn5MsKQgjhPnwlGFFwYEg3gWs=,tag:1ze33U1NBkgMX/9SiaBNQg==,type:str] @@ -19,8 +21,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-04-23T17:35:16Z" - mac: ENC[AES256_GCM,data:4cW8k6o3jET8k+yJGyApjOyuSUQb+d+4wX/RTNnpbt+867sExQrZUrOMif/u8S4WmcKVSJgvrzuxK9hpDPYhJ1d/5YuHH1Dyj7QDRdhbZYHhkpPus0ZVTEpSknZzx2eWH1ch/fyJJknlrBlfb/tz50Dv+w9mhkL7qteaIq+Vmsc=,iv:YMfAuGwu1kAM0wGkq3kzVMnC72yo7ZT04BuEwoLRPIA=,tag:6I1VRzteRaLuxN+sfLA5Mw==,type:str] + lastmodified: "2023-09-22T21:07:02Z" + mac: ENC[AES256_GCM,data:gItC41S8MInLmikdH1okhPs+FVf8sCF/iQeJ5reigBunHkOngoc6nOFANyAcNZETszzhgTLXXtmVNEjW46v6K7D6nmoi/zwpedUxwzMwDC5I28VTMDHVMAThYSGtdo6kig8i2pi8rzEQd1DStxMv3TWML5y6DDTlFsd3lfudaHA=,iv:zXebvIVPR76GwUhpactwRgF/eEmx2OBkT18E8lkwzRA=,tag:6HyISACbFCGlpIIgkFeA/A==,type:str] pgp: - created_at: "2022-10-12T16:48:23Z" enc: | From 78a9eac9bb972e4a918a2642d64e369d67cfbb18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 2 Oct 2023 01:02:28 +0200 Subject: [PATCH 077/196] sops: Sort secrets alphabetically --- configuration/sops.nix | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/configuration/sops.nix b/configuration/sops.nix index 269fa58..bf98433 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -3,28 +3,27 @@ defaultSopsFile = ../keys/production.yaml; secrets = { + # Heisenbridge + "heisenbridge/as-token" = {}; + "heisenbridge/hs-token" = {}; + + # Nextcloud "nextcloud/tlater" = { owner = "nextcloud"; group = "nextcloud"; }; - "steam/tlater" = {}; - - "heisenbridge/as-token" = {}; - "heisenbridge/hs-token" = {}; - - "wireguard/server-key" = { - owner = "root"; - group = "systemd-network"; - mode = "0440"; - }; - + # Restic "restic/local-backups" = { owner = "root"; group = "backup"; mode = "0440"; }; + # Steam + "steam/tlater" = {}; + + # Turn "turn/env" = {}; "turn/secret" = { owner = "turnserver"; @@ -35,6 +34,13 @@ "turn/ssl-cert" = { owner = "turnserver"; }; + + # Wireguard + "wireguard/server-key" = { + owner = "root"; + group = "systemd-network"; + mode = "0440"; + }; }; }; } From 55a4aaf48b2333104f3adb2d6f6bc3afe5bd1ed7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 7 Oct 2023 22:14:43 +0200 Subject: [PATCH 078/196] metrics: Add metrics with victoriametrics + grafana --- configuration/default.nix | 55 +++-- configuration/services/conduit.nix | 4 + configuration/services/fail2ban.nix | 42 ++++ configuration/services/foundryvtt.nix | 1 + configuration/services/gitea.nix | 22 ++ configuration/services/metrics/default.nix | 9 + configuration/services/metrics/exporters.nix | 101 +++++++++ configuration/services/metrics/grafana.nix | 48 +++++ configuration/services/metrics/options.nix | 204 ++++++++++++++++++ .../services/metrics/victoriametrics.nix | 13 ++ configuration/services/nextcloud.nix | 3 + configuration/services/postgres.nix | 7 + configuration/services/webserver.nix | 1 + configuration/sops.nix | 17 ++ flake.nix | 10 +- keys/production.yaml | 9 +- keys/staging.yaml | 9 +- pkgs/_sources_pkgs/generated.json | 21 ++ pkgs/_sources_pkgs/generated.nix | 16 ++ pkgs/default.nix | 3 + pkgs/nvfetcher.toml | 3 + pkgs/prometheus/fail2ban-exporter.nix | 8 + 22 files changed, 580 insertions(+), 26 deletions(-) create mode 100644 configuration/services/fail2ban.nix create mode 100644 configuration/services/metrics/default.nix create mode 100644 configuration/services/metrics/exporters.nix create mode 100644 configuration/services/metrics/grafana.nix create mode 100644 configuration/services/metrics/options.nix create mode 100644 configuration/services/metrics/victoriametrics.nix create mode 100644 pkgs/_sources_pkgs/generated.json create mode 100644 pkgs/_sources_pkgs/generated.nix create mode 100644 pkgs/nvfetcher.toml create mode 100644 pkgs/prometheus/fail2ban-exporter.nix diff --git a/configuration/default.nix b/configuration/default.nix index 5d491af..81e7241 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -16,8 +16,10 @@ ./services/backups.nix ./services/conduit.nix + ./services/fail2ban.nix ./services/foundryvtt.nix ./services/gitea.nix + ./services/metrics ./services/nextcloud.nix ./services/webserver.nix ./services/wireguard.nix @@ -136,34 +138,45 @@ recommendedProxySettings = true; clientMaxBodySize = "10G"; domain = "tlater.net"; + + statusPage = true; # For metrics, should be accessible only from localhost + + commonHttpConfig = '' + log_format upstream_time '$remote_addr - $remote_user [$time_local] ' + '"$request" $status $body_bytes_sent ' + '"$http_referer" "$http_user_agent" ' + 'rt=$request_time uct="$upstream_connect_time" ' + 'uht="$upstream_header_time" urt="$upstream_response_time"'; + ''; }; + services.logrotate = { + enable = true; + + settings = lib.mapAttrs' (virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + }) + config.services.nginx.virtualHosts; + }; + systemd.tmpfiles.rules = + lib.mapAttrsToList ( + virtualHost: _: + # + "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" + ) + config.services.nginx.virtualHosts; + security.acme = { defaults.email = "tm@tlater.net"; acceptTerms = true; }; - services.fail2ban = { - enable = true; - extraPackages = [pkgs.ipset]; - banaction = "iptables-ipset-proto6-allports"; - bantime-increment.enable = true; - - jails = { - nginx-botsearch = '' - enabled = true - logpath = /var/log/nginx/access.log - ''; - }; - - ignoreIP = [ - "127.0.0.0/8" - "10.0.0.0/8" - "172.16.0.0/12" - "192.168.0.0/16" - ]; - }; - # Remove some unneeded packages environment.defaultPackages = []; diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 3f8fd40..8257592 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -173,6 +173,9 @@ in { # Various other security settings no-tlsv1 no-tlsv1_1 + + # Monitoring + prometheus ''; }; @@ -205,6 +208,7 @@ in { addSSL = true; extraConfig = '' merge_slashes off; + access_log /var/log/nginx/${domain}/access.log upstream_time; ''; locations = { diff --git a/configuration/services/fail2ban.nix b/configuration/services/fail2ban.nix new file mode 100644 index 0000000..ace3219 --- /dev/null +++ b/configuration/services/fail2ban.nix @@ -0,0 +1,42 @@ +{pkgs, ...}: { + services.fail2ban = { + enable = true; + extraPackages = [pkgs.ipset]; + banaction = "iptables-ipset-proto6-allports"; + bantime-increment.enable = true; + + jails = { + nginx-botsearch = '' + enabled = true + logpath = /var/log/nginx/access.log + ''; + }; + + ignoreIP = [ + "127.0.0.0/8" + "10.0.0.0/8" + "172.16.0.0/12" + "192.168.0.0/16" + ]; + }; + + # Allow metrics services to connect to the socket as well + users.groups.fail2ban = {}; + systemd.services.fail2ban.serviceConfig = { + ExecStartPost = + "+" + + (pkgs.writeShellScript "fail2ban-post-start" '' + while ! [ -S /var/run/fail2ban/fail2ban.sock ]; do + sleep 1 + done + + while ! ${pkgs.netcat}/bin/nc -zU /var/run/fail2ban/fail2ban.sock; do + sleep 1 + done + + ${pkgs.coreutils}/bin/chown root:fail2ban /var/run/fail2ban /var/run/fail2ban/fail2ban.sock + ${pkgs.coreutils}/bin/chmod 660 /var/run/fail2ban/fail2ban.sock + ${pkgs.coreutils}/bin/chmod 710 /var/run/fail2ban + ''); + }; +} diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index 7bb2286..d573480 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -25,6 +25,7 @@ in { enableACME = true; extraConfig = '' add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + access_log /var/log/nginx/${domain}/access.log upstream_time; ''; locations."/" = { diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 27353f6..013842e 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -1,6 +1,7 @@ { pkgs, config, + lib, ... }: let domain = "gitea.${config.services.nginx.domain}"; @@ -19,11 +20,23 @@ in { SSH_PORT = 2222; }; + metrics = { + ENABLED = true; + TOKEN = "#metricstoken#"; + }; service.DISABLE_REGISTRATION = true; session.COOKIE_SECURE = true; }; }; + systemd.services.gitea.serviceConfig.ExecStartPre = let + replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; + secretPath = config.sops.secrets."gitea/metrics-token".path; + runConfig = "${config.services.gitea.customDir}/conf/app.ini"; + in [ + "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" + ]; + # Set up SSL services.nginx.virtualHosts."${domain}" = let httpAddress = config.services.gitea.settings.server.HTTP_ADDR; @@ -33,9 +46,18 @@ in { enableACME = true; extraConfig = '' add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + access_log /var/log/nginx/${domain}/access.log upstream_time; ''; locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; + locations."/metrics" = { + extraConfig = '' + access_log off; + allow 127.0.0.1; + ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} + deny all; + ''; + }; }; # Block repeated failed login attempts diff --git a/configuration/services/metrics/default.nix b/configuration/services/metrics/default.nix new file mode 100644 index 0000000..84e126a --- /dev/null +++ b/configuration/services/metrics/default.nix @@ -0,0 +1,9 @@ +{ + imports = [ + ./options.nix + + ./exporters.nix + ./grafana.nix + ./victoriametrics.nix + ]; +} diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix new file mode 100644 index 0000000..f3054db --- /dev/null +++ b/configuration/services/metrics/exporters.nix @@ -0,0 +1,101 @@ +{ + config, + pkgs, + lib, + ... +}: let + yaml = pkgs.formats.yaml {}; +in { + services.prometheus = { + exporters = { + # Periodically check domain registration status + domain = { + enable = true; + listenAddress = "127.0.0.1"; + extraFlags = let + conf.domains = [ + "tlater.net" + "tlater.com" + ]; + in [ + "--config=${yaml.generate "domains.yml" conf}" + ]; + }; + + # System statistics + node = { + enable = true; + listenAddress = "127.0.0.1"; + }; + systemd = { + enable = true; + listenAddress = "127.0.0.1"; + extraFlags = [ + # Disabled by default because only supported from systemd 235+ + "--systemd.collector.enable-restart-count" + "--systemd.collector.enable-ip-accounting" + ]; + }; + + # Various nginx metrics + nginx = { + enable = true; + listenAddress = "127.0.0.1"; + }; + + nginxlog = { + enable = true; + listenAddress = "127.0.0.1"; + group = "nginx"; + + settings.namespaces = + lib.mapAttrsToList (name: virtualHost: { + inherit name; + metrics_override.prefix = "nginxlog"; + namespace_label = "vhost"; + + format = lib.concatStringsSep " " [ + "$remote_addr - $remote_user [$time_local]" + ''"$request" $status $body_bytes_sent'' + ''"$http_referer" "$http_user_agent"'' + ''rt=$request_time uct="$upstream_connect_time"'' + ''uht="$upstream_header_time" urt="$upstream_response_time"'' + ]; + + source.files = [ + "/var/log/nginx/${name}/access.log" + ]; + }) + config.services.nginx.virtualHosts; + }; + }; + + extraExporters = { + fail2ban = let + cfg = config.services.prometheus.extraExporters.fail2ban; + in { + port = 9191; + serviceOpts = { + after = ["fail2ban.service"]; + requires = ["fail2ban.service"]; + serviceConfig = { + Group = "fail2ban"; + RestrictAddressFamilies = ["AF_UNIX" "AF_INET" "AF_INET6"]; + ExecStart = lib.concatStringsSep " " [ + "${pkgs.local.prometheus-fail2ban-exporter}/bin/fail2ban-prometheus-exporter" + "--collector.f2b.socket=/var/run/fail2ban/fail2ban.sock" + "--web.listen-address='${cfg.listenAddress}:${toString cfg.port}'" + "--collector.f2b.exit-on-socket-connection-error=true" + ]; + }; + }; + }; + }; + + # TODO(tlater): + # - wireguard (?) + # - postgres (?) + # - blackbox (?) (curl to see if http and similar is up) + # - ssl_exporter (?) + }; +} diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix new file mode 100644 index 0000000..8538dc7 --- /dev/null +++ b/configuration/services/metrics/grafana.nix @@ -0,0 +1,48 @@ +{config, ...}: let + domain = "metrics.${config.services.nginx.domain}"; +in { + services.grafana = { + enable = true; + settings = { + server.http_port = 3001; # Default overlaps with gitea + + security = { + admin_user = "tlater"; + admin_password = "$__file{${config.sops.secrets."grafana/adminPassword".path}}"; + secret_key = "$__file{${config.sops.secrets."grafana/secretKey".path}}"; + cookie_secure = true; + cookie_samesite = "strict"; + content_security_policy = true; + }; + + database = { + user = "grafana"; + name = "grafana"; + type = "postgres"; + host = "/run/postgresql"; + }; + }; + + provision = { + enable = true; + + datasources.settings.datasources = [ + { + name = "Victoriametrics - tlater.net"; + url = "http://localhost:8428"; + type = "prometheus"; + } + ]; + }; + }; + + services.nginx.virtualHosts."${domain}" = { + forceSSL = true; + enableACME = true; + extraConfig = '' + add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + access_log /var/log/nginx/${domain}/access.log upstream_time; + ''; + locations."/".proxyPass = "http://localhost:${toString config.services.grafana.settings.server.http_port}"; + }; +} diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix new file mode 100644 index 0000000..81f0865 --- /dev/null +++ b/configuration/services/metrics/options.nix @@ -0,0 +1,204 @@ +{ + pkgs, + config, + lib, + ... +}: let + inherit (lib) types mkOption mkDefault; + yaml = pkgs.formats.yaml {}; +in { + options = { + services.prometheus = { + extraExporters = mkOption { + type = types.attrsOf (types.submodule { + options = { + port = mkOption { + type = types.int; + description = "The port on which this exporter listens."; + }; + listenAddress = mkOption { + type = types.str; + default = "127.0.0.1"; + description = "Address to listen on."; + }; + serviceOpts = mkOption { + type = types.attrs; + description = "An attrset to be merged with the exporter's systemd service."; + }; + }; + }); + }; + }; + + services.victoriametrics.scrapeConfigs = mkOption { + type = types.attrsOf (types.submodule ({ + name, + self, + ... + }: { + options = { + job_name = mkOption { + type = types.str; + default = name; + }; + + extraSettings = mkOption { + type = types.anything; + description = '' + Other settings to set for this scrape config. + ''; + default = {}; + }; + + targets = mkOption { + type = types.listOf types.str; + description = lib.mdDoc '' + Addresses scrape targets for this config listen on. + + Shortcut for `static_configs = lib.singleton {targets = [];}` + ''; + default = []; + }; + + static_configs = mkOption { + default = []; + type = types.listOf (types.submodule { + options = { + targets = mkOption { + type = types.listOf types.str; + description = lib.mdDoc '' + The addresses scrape targets for this config listen on. + + Must in `listenAddress:port` format. + ''; + }; + labels = mkOption { + type = types.attrsOf types.str; + description = lib.mdDoc '' + Labels to apply to all targets defined for this static config. + ''; + default = {}; + }; + }; + }); + }; + }; + })); + }; + }; + + config = { + systemd.services = lib.mkMerge [ + (lib.mapAttrs' (name: exporter: + lib.nameValuePair "prometheus-${name}-exporter" (lib.mkMerge [ + { + # Shamelessly copied from upstream because the upstream + # module is an intractable mess + wantedBy = ["multi-user.target"]; + after = ["network.target"]; + serviceConfig.Restart = mkDefault "always"; + serviceConfig.PrivateTmp = mkDefault true; + serviceConfig.WorkingDirectory = mkDefault /tmp; + serviceConfig.DynamicUser = mkDefault true; + # Hardening + serviceConfig.CapabilityBoundingSet = mkDefault [""]; + serviceConfig.DeviceAllow = [""]; + serviceConfig.LockPersonality = true; + serviceConfig.MemoryDenyWriteExecute = true; + serviceConfig.NoNewPrivileges = true; + serviceConfig.PrivateDevices = mkDefault true; + serviceConfig.ProtectClock = mkDefault true; + serviceConfig.ProtectControlGroups = true; + serviceConfig.ProtectHome = true; + serviceConfig.ProtectHostname = true; + serviceConfig.ProtectKernelLogs = true; + serviceConfig.ProtectKernelModules = true; + serviceConfig.ProtectKernelTunables = true; + serviceConfig.ProtectSystem = mkDefault "strict"; + serviceConfig.RemoveIPC = true; + serviceConfig.RestrictAddressFamilies = ["AF_INET" "AF_INET6"]; + serviceConfig.RestrictNamespaces = true; + serviceConfig.RestrictRealtime = true; + serviceConfig.RestrictSUIDSGID = true; + serviceConfig.SystemCallArchitectures = "native"; + serviceConfig.UMask = "0077"; + } + exporter.serviceOpts + ])) + config.services.prometheus.extraExporters) + + { + vmagent-scrape-exporters = let + listenAddress = config.services.victoriametrics.listenAddress; + vmAddr = (lib.optionalString (lib.hasPrefix ":" listenAddress) "127.0.0.1") + listenAddress; + promscrape = yaml.generate "prometheus.yml" { + scrape_configs = lib.mapAttrsToList (_: scrape: + lib.recursiveUpdate { + inherit (scrape) job_name; + static_configs = + scrape.static_configs + ++ lib.optional (scrape.targets != []) {targets = scrape.targets;}; + } + scrape.extraSettings) + config.services.victoriametrics.scrapeConfigs; + }; + in { + enable = true; + path = [pkgs.victoriametrics]; + wantedBy = ["multi-user.target"]; + after = ["network.target" "victoriametrics.service"]; + serviceConfig = { + ExecStart = [ + (lib.concatStringsSep " " [ + "${pkgs.victoriametrics}/bin/vmagent" + "-promscrape.config=${promscrape}" + "-remoteWrite.url=http://${vmAddr}/api/v1/write" + "-remoteWrite.tmpDataPath=%t/vmagent" + ]) + ]; + SupplementaryGroups = "metrics"; + + DynamicUser = true; + RuntimeDirectory = "vmagent"; + CapabilityBoundingSet = [""]; + DeviceAllow = [""]; + LockPersonality = true; + MemoryDenyWriteExecute = true; + NoNewPrivileges = true; + PrivateDevices = true; + ProtectClock = true; + ProtectControlGroups = true; + ProtectHome = true; + ProtectHostname = true; + ProtectKernelLogs = true; + ProtectKernelModules = true; + ProtectKernelTunables = true; + ProtectSystem = "strict"; + RemoveIPC = true; + RestrictAddressFamilies = ["AF_INET" "AF_INET6"]; + RestrictNamespaces = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + UMask = "0077"; + }; + }; + } + ]; + + users.groups.metrics = {}; + + services.victoriametrics.scrapeConfigs = let + allExporters = + lib.mapAttrs (name: exporter: { + inherit (exporter) listenAddress port; + }) ((lib.filterAttrs (_: exporter: builtins.isAttrs exporter && exporter.enable) + config.services.prometheus.exporters) + // config.services.prometheus.extraExporters); + in + lib.mapAttrs (_: exporter: { + targets = ["${exporter.listenAddress}:${toString exporter.port}"]; + }) + allExporters; + }; +} diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix new file mode 100644 index 0000000..a5149f7 --- /dev/null +++ b/configuration/services/metrics/victoriametrics.nix @@ -0,0 +1,13 @@ +{config, ...}: { + config.services.victoriametrics = { + enable = true; + + scrapeConfigs = { + gitea = { + targets = ["127.0.0.1:${toString config.services.gitea.settings.server.HTTP_PORT}"]; + extraSettings.authorization.credentials_file = config.sops.secrets."gitea/metrics-token".path; + }; + coturn.targets = ["127.0.0.1:9641"]; + }; + }; +} diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index fbca607..81f38a3 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -50,6 +50,9 @@ in { services.nginx.virtualHosts."${hostName}" = { forceSSL = true; enableACME = true; + extraConfig = '' + access_log /var/log/nginx/${hostName}/access.log upstream_time; + ''; }; # Block repeated failed login attempts diff --git a/configuration/services/postgres.nix b/configuration/services/postgres.nix index 6c584bb..923007d 100644 --- a/configuration/services/postgres.nix +++ b/configuration/services/postgres.nix @@ -16,6 +16,12 @@ # that operation needs to be performed manually on the system as # well. ensureUsers = [ + { + name = "grafana"; + ensurePermissions = { + "DATABASE grafana" = "ALL PRIVILEGES"; + }; + } { name = "nextcloud"; ensurePermissions = { @@ -25,6 +31,7 @@ ]; ensureDatabases = [ + "grafana" "nextcloud" ]; }; diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index 4a8bee4..085b1f7 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -19,6 +19,7 @@ in { enableACME = true; extraConfig = '' add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + access_log /var/log/nginx/${domain}/access.log upstream_time; ''; locations."/".proxyPass = "http://${addr}:${toString port}"; diff --git a/configuration/sops.nix b/configuration/sops.nix index bf98433..03faf82 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -3,6 +3,23 @@ defaultSopsFile = ../keys/production.yaml; secrets = { + # Gitea + "gitea/metrics-token" = { + owner = "gitea"; + group = "metrics"; + mode = "0440"; + }; + + # Grafana + "grafana/adminPassword" = { + owner = "grafana"; + group = "grafana"; + }; + "grafana/secretKey" = { + owner = "grafana"; + group = "grafana"; + }; + # Heisenbridge "heisenbridge/as-token" = {}; "heisenbridge/hs-token" = {}; diff --git a/flake.nix b/flake.nix index b6db610..d8ff1a8 100644 --- a/flake.nix +++ b/flake.nix @@ -78,7 +78,7 @@ # Utility scripts # ################### packages.${system} = let - inherit (nixpkgs.legacyPackages.${system}) writeShellScript; + inherit (nixpkgs.legacyPackages.${system}) writeShellScript writeShellScriptBin; vm = nixpkgs.lib.nixosSystem { inherit system; specialArgs.flake-inputs = inputs; @@ -106,6 +106,14 @@ "${vm.config.system.build.vm}/bin/run-tlaternet-vm" ''; + update-pkgs = let + nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; + in + writeShellScriptBin "update-pkgs" '' + cd "$(git rev-parse --show-toplevel)/pkgs" + ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml + ''; + update-nextcloud-apps = let nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; in diff --git a/keys/production.yaml b/keys/production.yaml index f8d259d..efeea6a 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -1,3 +1,8 @@ +gitea: + metrics-token: ENC[AES256_GCM,data:/7/zvVl2ZOBoekrJR32vl/QQcG5XqTmltgpHEMUpbXVeqwnq29idzE2Qyjau96ZHObmSI73/ZtW95uXF6LH9Qw==,iv:iWZECCZSh1CN7wMBqstXR5QWtriR7QLKVqhekGnpXl0=,tag:HEr9km8VYmruBzf0I/5HuA==,type:str] +grafana: + adminPassword: ENC[AES256_GCM,data:/qw//J7cOkIGa58bG4GgdzndvKof32AmQeWB00IX8WhA22PDCOc4VdUEoB3wVJJqI/ucoHFInYyhg2rFYoYBesBjAt0QS3+O+8WblIunUuYeqlBuYJJK1TLhy6ql6+aqvfiW/rJLm4LpgA7CboyDD2OYHcAbvGSD2GWwFcHTR/Y=,iv:KK6p8GKzc9SBDZZFkEwCdIjSxriPGNMDNcr97tfbwTI=,tag:gLRNSGdJWFD+V9K5TfJvXw==,type:str] + secretKey: ENC[AES256_GCM,data:OUXWOE6I3a26SrFEOczWNIwyR3Rx62fbsRBBcfh0xyEbxOIPhexH6lIqlVG9Ltwra9+rAldNM4/0BydtxIDj7A==,iv:fiNO/or5yZnhpDPMANDnEC5dtXmbKBZsV+BPmvCN/HI=,tag:Q0M0OtLWdWAJgQmUlL//fg==,type:str] nextcloud: tlater: ENC[AES256_GCM,data:zNsPm4uFaIRe3LjcwmayRg==,iv:5wam6bP5zP708jC9UrLV0s8qspl3Pm4fPzbMFYBUyPQ=,tag:apnJUMeJwMn9q0NhO4ptmA==,type:str] steam: @@ -21,8 +26,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-09-23T18:55:44Z" - mac: ENC[AES256_GCM,data:psqgXozY9L7nduZ11GF+mbIrZ4RUySqBixkWL5z0cYeoLA3URb/dr028LCmNgQS9l8aJVsjVkyLBJIU/8wmiUNqRy/VI5iqV5mu+sxXhUVwFL0dAAWP1lOKwwT5uGK89/ioqkphgzuWD37vGe2vYddKkJF0M+zlz12fqkMjaisU=,iv:UyRoJbfuGU3K/Mp5DQ1kY0Z+nKSSo46BGNAcxt+vAvc=,tag:HkP6+qxQ8J/xAYJXYoG/6g==,type:str] + lastmodified: "2023-10-12T18:40:26Z" + mac: ENC[AES256_GCM,data:F+yQ20jCtLRKeQDFVKoqrYCgtwGkXxrK6aQO0MFZTIMJAnbTVPM2ZJGQ1RxXb+Zs4T+44EEc2xN4LjeANvgpE6MfOz2VTw+sEEjcYwUyB6RcXHia9XlFLa8lh7/Wx/9DxlSFjjSrxmDkNB6r+n5UF81cdRXF2E9ibdH346ST98A=,iv:xVxFN1IDKrLskaGqnWvOWx1zUII0jRSjQxEsaTf2GNw=,tag:lnp1AvgMOXXlg1vFjHEWUQ==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | diff --git a/keys/staging.yaml b/keys/staging.yaml index a6b0849..73f0f94 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -1,3 +1,8 @@ +gitea: + metrics-token: ENC[AES256_GCM,data:J4QdfI1wKyM=,iv:8fqCbftyhj90eIVFxjEp9RXKC1y1IaLnV1r2MOdY15M=,tag:8W/juv1OZh4hJco02qXO6g==,type:str] +grafana: + adminPassword: ENC[AES256_GCM,data:dYfaxUpQpzA=,iv:j5wSem8C5+V4c5qRzXQJhsU7/FOtpvrnaEyFBmW6zJ4=,tag:oc8n3TkEbjF2gjuOobZuLA==,type:str] + secretKey: ENC[AES256_GCM,data:Atruvh2MsNY=,iv:y2MaCUCEzGIydHp6G0DJHfk289S1is0twKm2oUYwDhM=,tag:nAWeg+YqaYqk6k22oBkAhQ==,type:str] nextcloud: tlater: ENC[AES256_GCM,data:91kDcO4hpng=,iv:ayuILRmRru4ZxTCur9H2xHuLjkDzwPdS/4lEog/tesU=,tag:qYhJxnNDcCwUM7xe7Tlcjw==,type:str] steam: @@ -21,8 +26,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-09-22T21:07:02Z" - mac: ENC[AES256_GCM,data:gItC41S8MInLmikdH1okhPs+FVf8sCF/iQeJ5reigBunHkOngoc6nOFANyAcNZETszzhgTLXXtmVNEjW46v6K7D6nmoi/zwpedUxwzMwDC5I28VTMDHVMAThYSGtdo6kig8i2pi8rzEQd1DStxMv3TWML5y6DDTlFsd3lfudaHA=,iv:zXebvIVPR76GwUhpactwRgF/eEmx2OBkT18E8lkwzRA=,tag:6HyISACbFCGlpIIgkFeA/A==,type:str] + lastmodified: "2023-10-07T02:17:50Z" + mac: ENC[AES256_GCM,data:vZDq33YIn0Nf1FQ2+ySezox6igiw6zNFCu3l3kaIsBKo1797pohmAxj2Lcc+OmlBjj98khaBIlbQuA5ULM+uPN5ILaz3NuXD5PZtsV+rL2PsLNMW9FBSmJ0m0YQrt0nZ0tpzifn12XghcSK2IXv+FnxlfrAJCxDvr5tRm90uUwU=,iv:ct8CzIWjaoJ1UjZcdFSr8lZ626vA0RvM883V6H5plWc=,tag:waJNtp/UbRDOfyzNElrung==,type:str] pgp: - created_at: "2022-10-12T16:48:23Z" enc: | diff --git a/pkgs/_sources_pkgs/generated.json b/pkgs/_sources_pkgs/generated.json new file mode 100644 index 0000000..b3faf9a --- /dev/null +++ b/pkgs/_sources_pkgs/generated.json @@ -0,0 +1,21 @@ +{ + "prometheus-fail2ban-exporter": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "prometheus-fail2ban-exporter", + "passthru": null, + "pinned": false, + "src": { + "deepClone": false, + "fetchSubmodules": false, + "leaveDotGit": false, + "name": null, + "rev": "v0.10.0", + "sha256": "sha256-8nIW1XaHCBqQCoLkV1ZYE3NTbVZ6c+UOqYD08XQiv+4=", + "type": "git", + "url": "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" + }, + "version": "v0.10.0" + } +} \ No newline at end of file diff --git a/pkgs/_sources_pkgs/generated.nix b/pkgs/_sources_pkgs/generated.nix new file mode 100644 index 0000000..bb015b4 --- /dev/null +++ b/pkgs/_sources_pkgs/generated.nix @@ -0,0 +1,16 @@ +# This file was generated by nvfetcher, please do not modify it manually. +{ fetchgit, fetchurl, fetchFromGitHub, dockerTools }: +{ + prometheus-fail2ban-exporter = { + pname = "prometheus-fail2ban-exporter"; + version = "v0.10.0"; + src = fetchgit { + url = "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter"; + rev = "v0.10.0"; + fetchSubmodules = false; + deepClone = false; + leaveDotGit = false; + sha256 = "sha256-8nIW1XaHCBqQCoLkV1ZYE3NTbVZ6c+UOqYD08XQiv+4="; + }; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 3818a26..3130ae0 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -7,6 +7,9 @@ in { starbound = callPackage ./starbound {}; + prometheus-fail2ban-exporter = callPackage ./prometheus/fail2ban-exporter.nix { + sources = pkgs.callPackage ./_sources_pkgs/generated.nix {}; + }; } // ( # Add nextcloud apps diff --git a/pkgs/nvfetcher.toml b/pkgs/nvfetcher.toml new file mode 100644 index 0000000..8c53200 --- /dev/null +++ b/pkgs/nvfetcher.toml @@ -0,0 +1,3 @@ +[prometheus-fail2ban-exporter] +src.manual = "v0.10.0" # No gitlab support in nvfetcher +fetch.git = "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" diff --git a/pkgs/prometheus/fail2ban-exporter.nix b/pkgs/prometheus/fail2ban-exporter.nix new file mode 100644 index 0000000..50b4973 --- /dev/null +++ b/pkgs/prometheus/fail2ban-exporter.nix @@ -0,0 +1,8 @@ +{ + buildGoModule, + sources, +}: +buildGoModule { + inherit (sources.prometheus-fail2ban-exporter) pname src version; + vendorHash = "sha256-qU6opwhhvzbQOhfGVyiVgKhfCSB0Z4eSRAJnv6ht2I0="; +} From 759a9c7c0c088b1e65d22500bd66ffbae71f70ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 13 Oct 2023 06:08:26 +0200 Subject: [PATCH 079/196] conduit: Fix acme issue letsencrypt will prod on port 80 to verify the domain. `listen` overrides `addSSL`, so none of the NixOS modules' setup will actually work. This means the conduit virtualhost never listened on port 80, and couldn't verify letsencrypt requests. How this *ever* worked is beyond me, but this commit resolves the problems (don't worry, `forceSSL` does what it says on the tin and overrides the `listen` again). --- configuration/services/conduit.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 8257592..6c84705 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -183,6 +183,14 @@ in { enableACME = true; listen = [ + { + addr = "0.0.0.0"; + port = 80; + } + { + addr = "[::0]"; + port = 80; + } { addr = "0.0.0.0"; port = 443; @@ -200,12 +208,12 @@ in { } { addr = "[::0]"; - port = 8488; + port = 8448; ssl = true; } ]; - addSSL = true; + forceSSL = true; extraConfig = '' merge_slashes off; access_log /var/log/nginx/${domain}/access.log upstream_time; From eb3bd485c40c9ea69f5c87a7b86c60dd934a0698 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 13 Oct 2023 03:43:03 +0200 Subject: [PATCH 080/196] metrics: Add size limit to victoriametrics --- configuration/services/metrics/victoriametrics.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index a5149f7..4cdc770 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -1,6 +1,9 @@ {config, ...}: { config.services.victoriametrics = { enable = true; + extraOptions = [ + "-storage.minFreeDiskSpaceBytes=5GB" + ]; scrapeConfigs = { gitea = { From 95b5d4b3bd879783cef39f4d50f902e55548313f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 13 Oct 2023 10:16:10 +0200 Subject: [PATCH 081/196] nginx: Reduce number of rotated logs kept around --- configuration/default.nix | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 81e7241..6f7cf41 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -153,16 +153,21 @@ services.logrotate = { enable = true; - settings = lib.mapAttrs' (virtualHost: _: - lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { - frequency = "daily"; - rotate = 2; - compress = true; - delaycompress = true; - su = "${config.services.nginx.user} ${config.services.nginx.group}"; - postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; - }) - config.services.nginx.virtualHosts; + settings = + { + # Override the default, just keep fewer logs + nginx.rotate = 6; + } + // lib.mapAttrs' (virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + }) + config.services.nginx.virtualHosts; }; systemd.tmpfiles.rules = lib.mapAttrsToList ( From 4a966412b879fcabff6e58a61df285765ef89238 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 29 Dec 2023 16:10:00 +0100 Subject: [PATCH 082/196] staging: Use a static ssh host key --- .sops.yaml | 2 +- configuration/hardware-specific/vm.nix | 16 +++++++ keys/hosts/staging.asc | 50 ++++++++++----------- keys/hosts/staging.key | 49 +++++++++++++++++++++ keys/hosts/staging.key.pub | 1 + keys/staging.yaml | 60 +++++++++++++------------- 6 files changed, 122 insertions(+), 56 deletions(-) create mode 100644 keys/hosts/staging.key create mode 100644 keys/hosts/staging.key.pub diff --git a/.sops.yaml b/.sops.yaml index 4c17c75..dc2021d 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -1,7 +1,7 @@ keys: - &tlater 535B61015823443941C744DD12264F6BBDFABA89 - &server_tlaternet 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b - - &server_staging 7762ec55a5727cabada621d961e53f94caa314e4 + - &server_staging 2f5caa73e7ceea4fcc8d2881fde587e6737d2dbc creation_rules: - path_regex: keys/production.yaml diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 8c93f30..32423ab 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -16,6 +16,22 @@ networkConfig.DHCP = "yes"; }; + # Both so we have a predictable key for the staging env, as well as + # to have a static key for decrypting the sops secrets for the + # staging env. + environment.etc."staging.key" = { + mode = "0400"; + source = ../../keys/hosts/staging.key; + }; + + services.openssh.hostKeys = lib.mkForce [ + { + type = "rsa"; + bits = 4096; + path = "/etc/staging.key"; + } + ]; + # # Set up VM settings to match real VPS # virtualisation.memorySize = 3941; # virtualisation.cores = 2; diff --git a/keys/hosts/staging.asc b/keys/hosts/staging.asc index fbabfe2..4b376fe 100644 --- a/keys/hosts/staging.asc +++ b/keys/hosts/staging.asc @@ -1,28 +1,28 @@ -----BEGIN PGP PUBLIC KEY BLOCK----- -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 -xszxEVPuKG8ckw58WpT4vA== -=kJ/7 ------END PGP PUBLIC KEY BLOCK----- +AQgAFgUCAAAAAAkQ/eWH5nN9LbwCGw8CGQEAAM6kEACsZmMOZd5qMOOJReo/cu5p +8JcXZ1c3wAUGm/Nw7xN68AGxHHWqUJqs5hGqICqSxnjtDD95H5tb9ahrEIxszfVd +fj/CR1XRu4Scu7MZ45u4q/whLIwe1vqROmL1G0bR52WVvaHjcS+2h3NlxauO8bld +uCwwQrCEBv86XjCZNtcVWEjqBffIfJQYAywyprqL3LGB5ypuW1tb/fnTZSd/1k9D +3LZ26FRvPd8XsBAZ5zSilpTdE9yhDPQb49VLP4iVwPkIjbw0us1KxlGJapU1nYfx +pX23F1f3tRGah/QOuZYa9J2dnr8A9FJQ+x616nrxnJ4DIRsS/mG+ES1HiVKa9u+2 +ZHxXqRHY+eb2QYaWI25F4BYrADOMcDLHvNL4T8E21Nt7QJ0hUeTeMCROICoVOtF9 +JNaHwD7AhOIwZHA28WNcrDoOpYmXXeRd+Vohvx5LO0loq/3dQdr5KMH/VGVP0VzK +YgPjh+z7HT66oMUz1fOeWtIqzLj7Un6rfodfq50OouDwhkAGseupDHnY2MBrfi6v +fexpttnBuOx5NSeuYYxkWK8cUfAFVFO5bFCb3MW1e2waaiceS1vq3dXiZx3l23Pr +qOs7Ahdz5P4/GZGjIDKNrdLid5tfBI12hxFOSuXoF7G9Ak24a77A9qks40NL6TMi +hK7IB8p3wuRzngwa0WY3QQ== +=6Ym/ +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/keys/hosts/staging.key b/keys/hosts/staging.key new file mode 100644 index 0000000..1cec290 --- /dev/null +++ b/keys/hosts/staging.key @@ -0,0 +1,49 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +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 +SEsRv2HtGI4fAAAACnRsYXRlckB5dWk= +-----END OPENSSH PRIVATE KEY----- diff --git a/keys/hosts/staging.key.pub b/keys/hosts/staging.key.pub new file mode 100644 index 0000000..7704002 --- /dev/null +++ b/keys/hosts/staging.key.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDFaVmT5Xt4+nCM2hZ+Zq7Uybg26TISSrpU/3nZ+qxZSC65mqfBqWNR1kCpJpDvhwUhaTC2x00L/ckRoPcF60AqYR632owQ0AgyuG+xR0HJR5rpWzRscMINk1NOLQ4Vw9IaRykfx5YtKL3mPo8iLNQom6SkFG1hPqwoAzzWNLBLKMfKrDtWuBnsbGLrkAB/2eJBw9xDmpMpLV5f2lJDA89RQYV8YQhe4TBL9B0WSSc9CqX9TP6m30zY6jCWvfYL+Hi+YiR2K+dp9qXB55ViYcw8hRG99n5fSyZSB0hyttnIV76G0I27McFueWu6LzZ/lMEJM8OeFVgyMJFMVXHCBxLYHLqlJvxk4tV43Jkl4IOn4gBgG2oS7Sk1woz57UNug/AGcGAHL/YAbk+WcEut2RiwoTUEyQpRrP4QPnZivEkeTs0H4lf33SHW6snMdcCDkjO6VCo9DTsSpX8eNLj9hW8UMuUMsU3jLtV4L2TMoDnqRHO7icbCr+3CIi/yA5EWry/AReOPTFY+etX3XrVUUdA/SJL/OXLB8QD2jW0XbVeaHLgdhlt5UeDwSWDYHn4LXYr8SXa3YKC2OmIAU8yNInPCGizHPm8IZVG4zjzPNjM3BihxpZjjIVajFe07INd8sM6RXE+YA0QTmEDoGW2QcltRyHdAPz5XVkRypbV5ONZLTQ== tlater@yui diff --git a/keys/staging.yaml b/keys/staging.yaml index 73f0f94..fb1d15d 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -1,5 +1,5 @@ gitea: - metrics-token: ENC[AES256_GCM,data:J4QdfI1wKyM=,iv:8fqCbftyhj90eIVFxjEp9RXKC1y1IaLnV1r2MOdY15M=,tag:8W/juv1OZh4hJco02qXO6g==,type:str] + metrics-token: ENC[AES256_GCM,data:T1NYXRWbruA=,iv:usgHYHwWJFbaEdHLO6JX3z/42MVheY2wu0YrXmnz2ng=,tag:W+B7pKGOc/wX/0My0dWY5w==,type:str] grafana: adminPassword: ENC[AES256_GCM,data:dYfaxUpQpzA=,iv:j5wSem8C5+V4c5qRzXQJhsU7/FOtpvrnaEyFBmW6zJ4=,tag:oc8n3TkEbjF2gjuOobZuLA==,type:str] secretKey: ENC[AES256_GCM,data:Atruvh2MsNY=,iv:y2MaCUCEzGIydHp6G0DJHfk289S1is0twKm2oUYwDhM=,tag:nAWeg+YqaYqk6k22oBkAhQ==,type:str] @@ -26,43 +26,43 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-10-07T02:17:50Z" - mac: ENC[AES256_GCM,data:vZDq33YIn0Nf1FQ2+ySezox6igiw6zNFCu3l3kaIsBKo1797pohmAxj2Lcc+OmlBjj98khaBIlbQuA5ULM+uPN5ILaz3NuXD5PZtsV+rL2PsLNMW9FBSmJ0m0YQrt0nZ0tpzifn12XghcSK2IXv+FnxlfrAJCxDvr5tRm90uUwU=,iv:ct8CzIWjaoJ1UjZcdFSr8lZ626vA0RvM883V6H5plWc=,tag:waJNtp/UbRDOfyzNElrung==,type:str] + lastmodified: "2023-12-29T15:14:54Z" + mac: ENC[AES256_GCM,data:yJUprLcfw4ypsrSlhot7vsavVqzaFlJoJeEC/DdTfKDoJ0L607r6aCfXtCSg+qrR5JA2bvEATwDJM5qgA2vbMhSOqmc3zT7yBPUKC4Sk24Me3IOOum2DhNID/l/PLtxUIk3Rzz49PJZECUsIKnT7k6KvZ5nWe5sEUupCBgdKjG4=,iv:Axpml84/6wgBxld94AB+Ybdo3r/7Bym6Lsj/49P7jWE=,tag:wXAx3AoopQS7i6rbo70AYg==,type:str] pgp: - - created_at: "2022-10-12T16:48:23Z" + - created_at: "2023-12-29T15:25:27Z" enc: | -----BEGIN PGP MESSAGE----- - hQEMA7x7stsXx45CAQf/QKXxlgFzUn5ZS02JDiOLds6wjsiTbwQeIy+den+qH9KF - CyfC/8WhxojyhliG0zUzQ7oHtYYkbknF2DyrR7J4+S3SyvMS6MDGTUUn5dIcGwBO - 2/Q2bt4ayOJFNTPePA0IfuMYNUiMl5B/0GCFRV9DE+gG/dcsOzM5q1Uya/yJ1966 - RndWwbnE4j5yP4Nj2o3OiZFhlNi6W6UffYB0hsTTPmmebIZltDRbmLSSpKcfNEYw - h3st3WaJ0BCuQC5i/kvYTfJyBCoYnvFrb3RmXm3h+MvW0JZwHzfbST3nJCBHh5XJ - fVquF17oDJzn5S7EdWMhUbWwHgZwz2J6sZMgGEQ6WdJeAf2IlCuRYGjQMcB1WhxH - GCgbzUGoOGrxT3euzz9R1J98d1HQqtpFgeg9JgWndUdhoF80+AU7Wpyy6qOg2n/4 - wCcb4pcqG1OqFezauEu8+sFdE07vfLoWzxJIark8WA== - =pc2z + hQEMA7x7stsXx45CAQf/RWxP6z7xjV5TqiA6lFhtygjrH9x3y1DUWG9aUb/dO+xH + zDbGMYqGe9RPlgi5sWPstdKXvCgs+AKNj93qJYMwEtaasJOinYXCGeAQmzg90+pt + bS6SoBHhGIxAvvLKKPtYx0V50I2reYR+32ux9bcrnzwIsV0P7/SSp1Cl8H+sotB8 + yf+0ULXcpC+SYECmZqzR9qQ3S+3I6/+QS+QgWj4NsyF+apxnE9oQDcBLdYP4aKgR + JHERA9HYfDTKoS137pFHxgINqHkFRY6lhoZdz1yDzOjiPxd8YVfPdKyf022Rg+cX + J/Q2P+OhNZEG3gapNATp6wH3niovA89KwZKSmbTZOdJeAZ6NV6TiUP+TgGg5+CmV + pSLaGel2NZRnFVNdDFi0dsOwhHv3FpKhIpALJh08/jsmAAslfE7vVlcEnaoUJPTS + 3v86AACUC5D/gUxmFrrED1qoxbELCmZ17xTwjQzxwg== + =KzdF -----END PGP MESSAGE----- fp: 535B61015823443941C744DD12264F6BBDFABA89 - - created_at: "2022-10-12T16:48:23Z" + - created_at: "2023-12-29T15:25:27Z" enc: | -----BEGIN PGP MESSAGE----- - hQIMA2HlP5TKoxTkARAAl+2Y+pd5oraYLgiiJ0CbMFef0zCpFwBwUCyzykMOICGa - TWCYs8K6hChjepe0p8+oZnp0wi8U1qrmgRtFljQfHoXq5EXDYKydkz8XHHDI7/W7 - 1BmETajv9Mx7j4BFNB3z0XvLJTPeNhygemuHhox5pA8CUt5FkYahpzYR9AlLiAwx - NtU+csrcGUqYllT5WYIKFVIwFk07IvgK/7vj3filO5G2GMiH7lsV6p7W/MYqCFTV - grE383/bGCT18XmHpe3Uu0NcotexiqKSXpnFNntWOgd/KynBn8Oa/DMr8ci/4QSF - rEV4+IGJSmfAzQYaIfzNRGyTQJKBFiXWQv53GWT9Y5EbdEYEBhyqlIaV5fp/61X+ - 8zhLz3b6QMkNkI6mNVVLK96g2p0dhVoq+R3Wlj/RIVDw/BzH+vJIArQhc8T2NEOX - lmLFTMoTRXPrw/UZKMoO+JSDwt2p3WI0sb/ThS+bd7eymxt5lFW1Ikc4Jgd/iHHu - JtUZ78i8jAV/nBJPaAYXoRxfpcAMFqJCnxTwCoF7vYP6hHeYW9PPqsClPxQ97TrO - /Ei01e9YSfdtIzKcwkOThffRr+7hxwEGQ3EZ+2ShOW9ASfLkIo4MgoLtDAoHCK5E - vc2JGWP+vlylTVnZ46Hp8BMRlSjdkS/qGU0lSTPC3q+PllCF2gkN6ZcdLv5L2DDS - UAFD70TIN2QAiYEZW6jxg2UtO9ULLT5NgrvfHD9aGAk7jIxeY+nH3S7KqFgmA21c - IkNZJSX/J85d13+kJADms3vI7uMOcSUiInaQHy9Cqjrr - =fnOr + hQIMA/3lh+ZzfS28ARAAm729dMouF7juUeHAb+aHMoyZVKsXapxnxebkjE/LSIbz + IEZwegTNrtxQJLclV4Km2gUaBTcE4vLJCpB7YxZvk7JV9OdVKi97o9PcXUXbz9ej + /WomnEvFyyxTZGTiHU+L4kNudl8UAKhTt3P4fR3PLpTily75Kn53tzLFJuCO8fAY + I/YwQAzayxhPcxk3FuPsD/ONiG7mW8n2ZwfwgOkKXwnrlJv7DreKJRYzu/EeuvX/ + d4oz+k+xofniOeZmQjZllzR7/++MBg/e1U9VocN1EAWpWHP5taLiThfnVSGDhlQM + +4WT5ezH6EuUQlAyQNpDaCincBvCHInhrNlUPOpW51nHMb0y3n4x2hMtZA0JbYEu + mkWTYDe65cHjImHXQk9oO2/v4oIyq7ywHX7g2hqVbbiLHZqqTaGfV8lP30+r6/UQ + 29iAdWac1hY5HDzwbqpY6b38i60j4bkiS83xqrGYBy037bCFk1oHJqwxp5P7vrzr + rTv5NBr95BlwF+s8xPEPZneaEu7N3UnhhSzDWp1jgsCxN9b/XHarchNt70xEt2VS + xpgs9GEXhsJcbrFNPYqTkFb8vjLFI+poGPTfadW17j4Pp5ftIBRNdKvDG0ni/AIp + K98R/nvaHEFuX31SkL8ZUIRqhJm3JVqilFxLAJrqGuSN3jA6wKrimUYpK+t+64jS + WAEN9jHYFQDTVHix3g15S5YTGh5ROyqxouDhvSDFTmGtbm5W/HYgnkZmh53TgVeJ + Rph/O9QptculzTN+nEqshBhbjhl/uDsLsjLYo/O1AyCwTUSd3OKn6uU= + =zThh -----END PGP MESSAGE----- - fp: 7762ec55a5727cabada621d961e53f94caa314e4 + fp: 2f5caa73e7ceea4fcc8d2881fde587e6737d2dbc unencrypted_suffix: _unencrypted - version: 3.7.3 + version: 3.8.1 From ebc45a9af1e8d7515887e66db5b129859b867b7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 29 Dec 2023 16:11:46 +0100 Subject: [PATCH 083/196] treewide: Upgrade to NixOS 23.11 --- configuration/services/nextcloud.nix | 9 ++-- configuration/services/postgres.nix | 8 +-- flake.lock | 76 +++++++++++++++++----------- flake.nix | 2 +- pkgs/mkNextcloudApp.nix | 1 + 5 files changed, 54 insertions(+), 42 deletions(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 81f38a3..75993c3 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -11,7 +11,6 @@ in { inherit hostName; package = nextcloud; - enableBrokenCiphersForSSE = false; enable = true; maxUploadSize = "2G"; https = true; @@ -30,11 +29,9 @@ in { defaultPhoneRegion = "AT"; }; - phpOptions = - options.services.nextcloud.phpOptions.default - // { - "opcache.interned_strings_buffer" = "16"; - }; + phpOptions = { + "opcache.interned_strings_buffer" = "16"; + }; extraApps = { inherit (pkgs.local) bookmarks calendar contacts cookbook news notes; diff --git a/configuration/services/postgres.nix b/configuration/services/postgres.nix index 923007d..018dc6e 100644 --- a/configuration/services/postgres.nix +++ b/configuration/services/postgres.nix @@ -18,15 +18,11 @@ ensureUsers = [ { name = "grafana"; - ensurePermissions = { - "DATABASE grafana" = "ALL PRIVILEGES"; - }; + ensureDBOwnership = true; } { name = "nextcloud"; - ensurePermissions = { - "DATABASE nextcloud" = "ALL PRIVILEGES"; - }; + ensureDBOwnership = true; } ]; diff --git a/flake.lock b/flake.lock index b64bc75..3a73266 100644 --- a/flake.lock +++ b/flake.lock @@ -41,11 +41,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1694513707, - "narHash": "sha256-wE5kHco3+FQjc+MwTPwLVqYz4hM7uno2CgXDXUFMCpc=", + "lastModified": 1703087360, + "narHash": "sha256-0VUbWBW8VyiDRuimMuLsEO4elGuUw/nc2WDeuO1eN1M=", "owner": "serokell", "repo": "deploy-rs", - "rev": "31c32fb2959103a796e07bbe47e0a5e287c343a8", + "rev": "b709d63debafce9f5645a5ba550c9e0983b3d1f7", "type": "github" }, "original": { @@ -160,11 +160,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1668681692, - "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "owner": "edolstra", "repo": "flake-compat", - "rev": "009399224d5e398d03b22badca40a37ac85412a1", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { @@ -229,7 +229,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1692799911, @@ -267,11 +267,11 @@ ] }, "locked": { - "lastModified": 1691701569, - "narHash": "sha256-7TK+sO+JC37OGTQDTiz9TriqbB5yTgoo7fyPyLtWvd8=", + "lastModified": 1701473318, + "narHash": "sha256-QdCJN8GeNl/V8wMjrvNkrWzNXnahgfjBfCSya4qQdrc=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "3358ccef0ea3e06faabe8c54761fb8a0862b80d4", + "rev": "f624c0ceabe13dd876ecff871e0dc7f55f96e993", "type": "github" }, "original": { @@ -345,11 +345,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1671417167, - "narHash": "sha256-JkHam6WQOwZN1t2C2sbp1TqMv3TVRjzrdoejqfefwrM=", + "lastModified": 1702272962, + "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "bb31220cca6d044baa6dc2715b07497a2a7c4bc7", + "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", "type": "github" }, "original": { @@ -361,11 +361,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1693675694, - "narHash": "sha256-2pIOyQwGyy2FtFAUIb8YeKVmOCcPOTVphbAvmshudLE=", + "lastModified": 1703351344, + "narHash": "sha256-9FEelzftkE9UaJ5nqxidaJJPEhe9TPhbypLHmc2Mysc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5601118d39ca9105f8e7b39d4c221d3388c0419d", + "rev": "7790e078f8979a9fcd543f9a47427eeaba38f268", "type": "github" }, "original": { @@ -377,11 +377,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1694767346, - "narHash": "sha256-5uH27SiVFUwsTsqC5rs3kS7pBoNhtoy9QfTP9BmknGk=", + "lastModified": 1703637592, + "narHash": "sha256-8MXjxU0RfFfzl57Zy3OfXCITS0qWDNLzlBAdwxGZwfY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ace5093e36ab1e95cb9463863491bee90d5a4183", + "rev": "cfc3698c31b1fb9cdcf10f36c9643460264d0ca8", "type": "github" }, "original": { @@ -408,16 +408,16 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1694937365, - "narHash": "sha256-iHZSGrb9gVpZRR4B2ishUN/1LRKWtSHZNO37C8z1SmA=", + "lastModified": 1703467016, + "narHash": "sha256-/5A/dNPhbQx/Oa2d+Get174eNI3LERQ7u6WTWOlR1eQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "5d017a8822e0907fb96f7700a319f9fe2434de02", + "rev": "d02d818f22c777aa4e854efc3242ec451e5d462a", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-23.05", + "ref": "nixos-23.11", "repo": "nixpkgs", "type": "github" } @@ -556,11 +556,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1694495315, - "narHash": "sha256-sZEYXs9T1NVHZSSbMqBEtEm2PGa7dEDcx0ttQkArORc=", + "lastModified": 1703387502, + "narHash": "sha256-JnWuQmyanPtF8c5yAEFXVWzaIlMxA3EAZCh8XNvnVqE=", "owner": "Mic92", "repo": "sops-nix", - "rev": "ea208e55f8742fdcc0986b256bdfa8986f5e4415", + "rev": "e523e89763ff45f0a6cf15bcb1092636b1da9ed3", "type": "github" }, "original": { @@ -584,6 +584,21 @@ "type": "github" } }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", @@ -607,12 +622,15 @@ } }, "utils": { + "inputs": { + "systems": "systems" + }, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", "owner": "numtide", "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index d8ff1a8..efe6433 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { diff --git a/pkgs/mkNextcloudApp.nix b/pkgs/mkNextcloudApp.nix index 6430ac1..9bf6b26 100644 --- a/pkgs/mkNextcloudApp.nix +++ b/pkgs/mkNextcloudApp.nix @@ -5,4 +5,5 @@ fetchNextcloudApp { url = source.src.url; sha256 = source.src.sha256; + license = "unlicense"; # Blatant lie } From 54e0826860113a47245689b7135c3d3159b378e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 29 Dec 2023 16:11:16 +0100 Subject: [PATCH 084/196] gitea: Migrate to forgejo --- configuration/services/gitea.nix | 81 +++++++++---------- .../services/metrics/victoriametrics.nix | 6 +- configuration/sops.nix | 4 +- keys/production.yaml | 10 +-- keys/staging.yaml | 8 +- 5 files changed, 53 insertions(+), 56 deletions(-) diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 013842e..d77d6cc 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -6,12 +6,10 @@ }: let domain = "gitea.${config.services.nginx.domain}"; in { - services.gitea = { + services.forgejo = { enable = true; database.type = "postgres"; - appName = "Gitea: Git with a cup of tea"; - settings = { server = { DOMAIN = domain; @@ -29,18 +27,18 @@ in { }; }; - systemd.services.gitea.serviceConfig.ExecStartPre = let + systemd.services.forgejo.serviceConfig.ExecStartPre = let replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; - secretPath = config.sops.secrets."gitea/metrics-token".path; - runConfig = "${config.services.gitea.customDir}/conf/app.ini"; + secretPath = config.sops.secrets."forgejo/metrics-token".path; + runConfig = "${config.services.forgejo.customDir}/conf/app.ini"; in [ "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" ]; # Set up SSL services.nginx.virtualHosts."${domain}" = let - httpAddress = config.services.gitea.settings.server.HTTP_ADDR; - httpPort = config.services.gitea.settings.server.HTTP_PORT; + httpAddress = config.services.forgejo.settings.server.HTTP_ADDR; + httpPort = config.services.forgejo.settings.server.HTTP_PORT; in { forceSSL = true; enableACME = true; @@ -62,40 +60,39 @@ in { # Block repeated failed login attempts # - # TODO(tlater): Update to the new regex, since apparently this one - # is deprecated (but the new one doesn't work on the current version - # of gitea yet): https://docs.gitea.io/en-us/fail2ban-setup/ - environment.etc = { - "fail2ban/filter.d/gitea.conf".text = '' - [Definition] - failregex = .*(Failed authentication attempt|invalid credentials|Attempted access of unknown user).* from - journalmatch = _SYSTEMD_UNIT=gitea.service + _COMM=gitea + SYSLOG_IDENTIFIER=gitea - ''; - }; + # TODO(tlater): Update this - we switched to forgejo, who knows what + # the new matches are. + # environment.etc = { + # "fail2ban/filter.d/gitea.conf".text = '' + # [Definition] + # failregex = .*(Failed authentication attempt|invalid credentials|Attempted access of unknown user).* from + # journalmatch = _SYSTEMD_UNIT=forgejo.service + _COMM=forgejo + SYSLOG_IDENTIFIER=forgejo + # ''; + # }; - services.fail2ban.jails = { - gitea = '' - enabled = true - ''; - }; + # services.fail2ban.jails = { + # gitea = '' + # enabled = true + # ''; + # }; - services.backups.gitea = { - user = "gitea"; - paths = [ - "/var/lib/gitea/gitea-db.sql" - "/var/lib/gitea/repositories/" - "/var/lib/gitea/data/" - "/var/lib/gitea/custom/" - # Conf is backed up via nix - ]; - preparation = { - packages = [config.services.postgresql.package]; - text = "pg_dump ${config.services.gitea.database.name} --file=/var/lib/gitea/gitea-db.sql"; - }; - cleanup = { - packages = [pkgs.coreutils]; - text = "rm /var/lib/gitea/gitea-db.sql"; - }; - pauseServices = ["gitea.service"]; - }; + # services.backups.forgejo = { + # user = "forgejo"; + # paths = [ + # "/var/lib/forgejo/forgejo-db.sql" + # "/var/lib/forgejo/repositories/" + # "/var/lib/forgejo/data/" + # "/var/lib/forgejo/custom/" + # # Conf is backed up via nix + # ]; + # preparation = { + # packages = [config.services.postgresql.package]; + # text = "pg_dump ${config.services.forgejo.database.name} --file=/var/lib/forgejo/forgejo-db.sql"; + # }; + # cleanup = { + # packages = [pkgs.coreutils]; + # text = "rm /var/lib/forgejo/forgejo-db.sql"; + # }; + # pauseServices = ["forgejo.service"]; + # }; } diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index 4cdc770..daf3f94 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -6,9 +6,9 @@ ]; scrapeConfigs = { - gitea = { - targets = ["127.0.0.1:${toString config.services.gitea.settings.server.HTTP_PORT}"]; - extraSettings.authorization.credentials_file = config.sops.secrets."gitea/metrics-token".path; + forgejo = { + targets = ["127.0.0.1:${toString config.services.forgejo.settings.server.HTTP_PORT}"]; + extraSettings.authorization.credentials_file = config.sops.secrets."forgejo/metrics-token".path; }; coturn.targets = ["127.0.0.1:9641"]; }; diff --git a/configuration/sops.nix b/configuration/sops.nix index 03faf82..c7cb1f0 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -4,8 +4,8 @@ secrets = { # Gitea - "gitea/metrics-token" = { - owner = "gitea"; + "forgejo/metrics-token" = { + owner = "forgejo"; group = "metrics"; mode = "0440"; }; diff --git a/keys/production.yaml b/keys/production.yaml index efeea6a..da53b95 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -1,5 +1,5 @@ -gitea: - metrics-token: ENC[AES256_GCM,data:/7/zvVl2ZOBoekrJR32vl/QQcG5XqTmltgpHEMUpbXVeqwnq29idzE2Qyjau96ZHObmSI73/ZtW95uXF6LH9Qw==,iv:iWZECCZSh1CN7wMBqstXR5QWtriR7QLKVqhekGnpXl0=,tag:HEr9km8VYmruBzf0I/5HuA==,type:str] +forgejo: + metrics-token: ENC[AES256_GCM,data:WVbD5JloJlHNjeEwe1uEd4Haj6L3ilj1Pnux6yrelUQP18ZPAh90aDO1OIZHaPJR7tTeyATr8BIzZL1zkNhCuA==,iv:eTYXN3hymIN3bTX1YxNGkAYE0KVDbdz2ds8UQAHlALE=,tag:A61loGdu0pfsiez96u2Qsg==,type:str] grafana: adminPassword: ENC[AES256_GCM,data:/qw//J7cOkIGa58bG4GgdzndvKof32AmQeWB00IX8WhA22PDCOc4VdUEoB3wVJJqI/ucoHFInYyhg2rFYoYBesBjAt0QS3+O+8WblIunUuYeqlBuYJJK1TLhy6ql6+aqvfiW/rJLm4LpgA7CboyDD2OYHcAbvGSD2GWwFcHTR/Y=,iv:KK6p8GKzc9SBDZZFkEwCdIjSxriPGNMDNcr97tfbwTI=,tag:gLRNSGdJWFD+V9K5TfJvXw==,type:str] secretKey: ENC[AES256_GCM,data:OUXWOE6I3a26SrFEOczWNIwyR3Rx62fbsRBBcfh0xyEbxOIPhexH6lIqlVG9Ltwra9+rAldNM4/0BydtxIDj7A==,iv:fiNO/or5yZnhpDPMANDnEC5dtXmbKBZsV+BPmvCN/HI=,tag:Q0M0OtLWdWAJgQmUlL//fg==,type:str] @@ -26,8 +26,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-10-12T18:40:26Z" - mac: ENC[AES256_GCM,data:F+yQ20jCtLRKeQDFVKoqrYCgtwGkXxrK6aQO0MFZTIMJAnbTVPM2ZJGQ1RxXb+Zs4T+44EEc2xN4LjeANvgpE6MfOz2VTw+sEEjcYwUyB6RcXHia9XlFLa8lh7/Wx/9DxlSFjjSrxmDkNB6r+n5UF81cdRXF2E9ibdH346ST98A=,iv:xVxFN1IDKrLskaGqnWvOWx1zUII0jRSjQxEsaTf2GNw=,tag:lnp1AvgMOXXlg1vFjHEWUQ==,type:str] + lastmodified: "2023-12-28T00:07:08Z" + mac: ENC[AES256_GCM,data:P2bNJLjzn69Kg2bJHXmofER7J8wbEj9C4jq9ePWewXBOt45GEiqgnqIaISwZkyzQmm9cxZd95Lr780ICwoKDFdtSCCcC7CdYxYEfyyhnvU3W2qzEghvkypL8JbiEtPSlQ9xOlCk7p41A9eRrV+JziIVSv5UEUs4NubrG9Mkwv3k=,iv:Yq2gANTTgx6cFxkdustUZ1MPszxGSkao/bS1KHAkzJc=,tag:kqJibocgRQXkxTJze6O5MA==,type:str] pgp: - created_at: "2022-10-12T00:46:51Z" enc: | @@ -65,4 +65,4 @@ sops: -----END PGP MESSAGE----- fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b unencrypted_suffix: _unencrypted - version: 3.7.3 + version: 3.8.1 diff --git a/keys/staging.yaml b/keys/staging.yaml index fb1d15d..de7686b 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -1,5 +1,5 @@ -gitea: - metrics-token: ENC[AES256_GCM,data:T1NYXRWbruA=,iv:usgHYHwWJFbaEdHLO6JX3z/42MVheY2wu0YrXmnz2ng=,tag:W+B7pKGOc/wX/0My0dWY5w==,type:str] +forgejo: + metrics-token: ENC[AES256_GCM,data:HEDV/GK/WtI=,iv:ihPEusEGVUNZjjjxz2ys6Nfag/og4n7Cqmd4rroT6Ww=,tag:Brcv7XW6HfzzgF3emtuT2A==,type:str] grafana: adminPassword: ENC[AES256_GCM,data:dYfaxUpQpzA=,iv:j5wSem8C5+V4c5qRzXQJhsU7/FOtpvrnaEyFBmW6zJ4=,tag:oc8n3TkEbjF2gjuOobZuLA==,type:str] secretKey: ENC[AES256_GCM,data:Atruvh2MsNY=,iv:y2MaCUCEzGIydHp6G0DJHfk289S1is0twKm2oUYwDhM=,tag:nAWeg+YqaYqk6k22oBkAhQ==,type:str] @@ -26,8 +26,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-12-29T15:14:54Z" - mac: ENC[AES256_GCM,data:yJUprLcfw4ypsrSlhot7vsavVqzaFlJoJeEC/DdTfKDoJ0L607r6aCfXtCSg+qrR5JA2bvEATwDJM5qgA2vbMhSOqmc3zT7yBPUKC4Sk24Me3IOOum2DhNID/l/PLtxUIk3Rzz49PJZECUsIKnT7k6KvZ5nWe5sEUupCBgdKjG4=,iv:Axpml84/6wgBxld94AB+Ybdo3r/7Bym6Lsj/49P7jWE=,tag:wXAx3AoopQS7i6rbo70AYg==,type:str] + lastmodified: "2023-12-30T14:09:03Z" + mac: ENC[AES256_GCM,data:kuyzVV1Dhlb2LemqRzw2xPr9jtTWqSbFMv70LUEbRmsDpjwQsAIARgoaj32EXdDRTHYXBplTYieR7KvmxykL/8rkj0g4+IuRLY1TcbRS31Gi74FiXvV2apscHhQWXhHPHIHMbwZAfDSHdMrf8hPu28SC9QdbP3SXYNt28Imstrc=,iv:UALUiWGHlWEBmIVWeSyEa16ZdcDZvgtlpHETDV2CcRY=,tag:rxbd3ph+pPf11jup/CMEzw==,type:str] pgp: - created_at: "2023-12-29T15:25:27Z" enc: | From ddda6f534b722493696bb6a946ca44ea8293a216 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 2 Mar 2024 02:27:24 +0100 Subject: [PATCH 085/196] hetzner: Add new server config --- .sops.yaml | 2 + configuration/default.nix | 2 +- .../hardware-specific/hetzner/default.nix | 47 +++ .../hardware-specific/hetzner/disko.nix | 82 ++++ .../hetzner/hardware-configuration.nix | 25 ++ configuration/hardware-specific/vm.nix | 1 + configuration/services/gitea.nix | 38 +- flake.lock | 364 ++++-------------- flake.nix | 42 +- keys/hosts/hetzner1.asc | 28 ++ keys/production.yaml | 79 ++-- 11 files changed, 373 insertions(+), 337 deletions(-) create mode 100644 configuration/hardware-specific/hetzner/default.nix create mode 100644 configuration/hardware-specific/hetzner/disko.nix create mode 100644 configuration/hardware-specific/hetzner/hardware-configuration.nix create mode 100644 keys/hosts/hetzner1.asc diff --git a/.sops.yaml b/.sops.yaml index dc2021d..7444d2c 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -1,6 +1,7 @@ keys: - &tlater 535B61015823443941C744DD12264F6BBDFABA89 - &server_tlaternet 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b + - &server_hetzner1 0af7641adb8aa843136cf6d047f71da3e5ad79f9 - &server_staging 2f5caa73e7ceea4fcc8d2881fde587e6737d2dbc creation_rules: @@ -9,6 +10,7 @@ creation_rules: - pgp: - *tlater - *server_tlaternet + - *server_hetzner1 - path_regex: keys/staging.yaml key_groups: - pgp: diff --git a/configuration/default.nix b/configuration/default.nix index 6f7cf41..34b1f42 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -7,6 +7,7 @@ ... }: { imports = [ + flake-inputs.disko.nixosModules.disko flake-inputs.sops-nix.nixosModules.sops flake-inputs.tlaternet-webserver.nixosModules.default @@ -55,7 +56,6 @@ boot.kernelParams = ["highres=off" "nohz=off"]; networking = { - hostName = "tlaternet"; usePredictableInterfaceNames = false; useDHCP = false; diff --git a/configuration/hardware-specific/hetzner/default.nix b/configuration/hardware-specific/hetzner/default.nix new file mode 100644 index 0000000..5ecf63a --- /dev/null +++ b/configuration/hardware-specific/hetzner/default.nix @@ -0,0 +1,47 @@ +{ + imports = [ + ./hardware-configuration.nix + ./disko.nix + ]; + + # Intel's special encrypted memory<->CPU feature. Hetzner's BIOS + # disables it by default. + # + # TODO(tlater): See if would be useful for anything? + boot.kernelParams = ["nosgx"]; + + networking.hostName = "hetzner-1"; + services.nginx.domain = "tlater.net"; + + systemd.network.networks."eth0" = { + matchConfig.MACAddress = "90:1b:0e:c1:8c:62"; + + addresses = [ + # IPv4 + { + addressConfig = { + Address = "116.202.158.55/32"; + Peer = "116.202.158.1/32"; # Gateway + }; + } + # IPv6 + { + addressConfig.Address = "2a01:4f8:10b:3c85::2/64"; + } + ]; + + networkConfig = { + Gateway = [ + "116.202.158.1" + "fe80::1" + ]; + + DNS = [ + "185.12.64.1" + "185.12.64.2" + "2a01:4ff:ff00::add:1" + "2a01:4ff:ff00::add:2" + ]; + }; + }; +} diff --git a/configuration/hardware-specific/hetzner/disko.nix b/configuration/hardware-specific/hetzner/disko.nix new file mode 100644 index 0000000..e404688 --- /dev/null +++ b/configuration/hardware-specific/hetzner/disko.nix @@ -0,0 +1,82 @@ +{ + disko.devices.disk = let + bootPartition = { + size = "1M"; + type = "EF02"; + }; + + swapPartition = { + # 8G is apparently recommended for this much RAM, but we set up + # 4G on both disks for mirroring purposes. + # + # That'll still be 8G during normal operation, and it's probably + # not too bad to have slightly less swap if a disk dies. + size = "4G"; + content = { + type = "swap"; + randomEncryption = true; + }; + }; + + mountOptions = ["compress=zstd" "noatime"]; + in { + sda = { + type = "disk"; + device = "/dev/sda"; + content = { + type = "gpt"; + partitions = { + boot = bootPartition; + swap = swapPartition; + + disk1 = { + size = "100%"; + # Empty partition to combine in RAID0 with the other disk + }; + }; + }; + }; + + sdb = { + type = "disk"; + device = "/dev/sdb"; + content = { + type = "gpt"; + partitions = { + boot = bootPartition; + swap = swapPartition; + + disk2 = { + size = "100%"; + content = { + type = "btrfs"; + # Hack to get multi-device btrfs going + # See https://github.com/nix-community/disko/issues/99 + extraArgs = ["-d" "raid1" "-m" "raid1" "--runtime-features" "quota" "/dev/sda3"]; + subvolumes = { + "/volume" = {}; + "/volume/root" = { + inherit mountOptions; + mountpoint = "/"; + }; + "/volume/home" = { + inherit mountOptions; + mountpoint = "/home"; + }; + "/volume/var" = { + inherit mountOptions; + mountpoint = "/var"; + }; + "/volume/nix-store" = { + inherit mountOptions; + mountpoint = "/nix"; + }; + "/snapshots" = {}; + }; + }; + }; + }; + }; + }; + }; +} diff --git a/configuration/hardware-specific/hetzner/hardware-configuration.nix b/configuration/hardware-specific/hetzner/hardware-configuration.nix new file mode 100644 index 0000000..e7a99f9 --- /dev/null +++ b/configuration/hardware-specific/hetzner/hardware-configuration.nix @@ -0,0 +1,25 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 32423ab..79f4b35 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -4,6 +4,7 @@ # Disable graphical tty so -curses works boot.kernelParams = ["nomodeset"]; + networking.hostName = "testvm"; # Sets the base domain for nginx to localhost so that we # can easily test locally with the VM. services.nginx.domain = lib.mkOverride 99 "localhost"; diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index d77d6cc..41b8583 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -76,23 +76,23 @@ in { # ''; # }; - # services.backups.forgejo = { - # user = "forgejo"; - # paths = [ - # "/var/lib/forgejo/forgejo-db.sql" - # "/var/lib/forgejo/repositories/" - # "/var/lib/forgejo/data/" - # "/var/lib/forgejo/custom/" - # # Conf is backed up via nix - # ]; - # preparation = { - # packages = [config.services.postgresql.package]; - # text = "pg_dump ${config.services.forgejo.database.name} --file=/var/lib/forgejo/forgejo-db.sql"; - # }; - # cleanup = { - # packages = [pkgs.coreutils]; - # text = "rm /var/lib/forgejo/forgejo-db.sql"; - # }; - # pauseServices = ["forgejo.service"]; - # }; + services.backups.forgejo = { + user = "forgejo"; + paths = [ + "/var/lib/forgejo/forgejo-db.sql" + "/var/lib/forgejo/repositories/" + "/var/lib/forgejo/data/" + "/var/lib/forgejo/custom/" + # Conf is backed up via nix + ]; + preparation = { + packages = [config.services.postgresql.package]; + text = "pg_dump ${config.services.forgejo.database.name} --file=/var/lib/forgejo/forgejo-db.sql"; + }; + cleanup = { + packages = [pkgs.coreutils]; + text = "rm /var/lib/forgejo/forgejo-db.sql"; + }; + pauseServices = ["forgejo.service"]; + }; } diff --git a/flake.lock b/flake.lock index 3a73266..8a9fadc 100644 --- a/flake.lock +++ b/flake.lock @@ -1,39 +1,5 @@ { "nodes": { - "all-cabal-json": { - "flake": false, - "locked": { - "lastModified": 1665552503, - "narHash": "sha256-r14RmRSwzv5c+bWKUDaze6pXM7nOsiz1H8nvFHJvufc=", - "owner": "nix-community", - "repo": "all-cabal-json", - "rev": "d7c0434eebffb305071404edcf9d5cd99703878e", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "hackage", - "repo": "all-cabal-json", - "type": "github" - } - }, - "crane": { - "flake": false, - "locked": { - "lastModified": 1681175776, - "narHash": "sha256-7SsUy9114fryHAZ8p1L6G6YSu7jjz55FddEwa2U8XZc=", - "owner": "ipetkov", - "repo": "crane", - "rev": "445a3d222947632b5593112bb817850e8a9cf737", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "ref": "v0.12.1", - "repo": "crane", - "type": "github" - } - }, "deploy-rs": { "inputs": { "flake-compat": "flake-compat", @@ -54,47 +20,38 @@ "type": "github" } }, - "devshell": { - "flake": false, + "disko": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, "locked": { - "lastModified": 1663445644, - "narHash": "sha256-+xVlcK60x7VY1vRJbNUEAHi17ZuoQxAIH4S4iUFUGBA=", - "owner": "numtide", - "repo": "devshell", - "rev": "e3dc3e21594fe07bdb24bdf1c8657acaa4cb8f66", + "lastModified": 1709286488, + "narHash": "sha256-RDpTZ72zLu05djvXRzK76Ysqp9zSdh84ax/edEaJucs=", + "owner": "nix-community", + "repo": "disko", + "rev": "bde7dd352c07d43bd5b8245e6c39074a391fdd46", "type": "github" }, "original": { - "owner": "numtide", - "repo": "devshell", + "owner": "nix-community", + "repo": "disko", "type": "github" } }, "dream2nix": { "inputs": { - "all-cabal-json": "all-cabal-json", - "crane": "crane", - "devshell": "devshell", - "drv-parts": "drv-parts", - "flake-compat": "flake-compat_3", - "flake-parts": "flake-parts", - "flake-utils-pre-commit": "flake-utils-pre-commit", - "ghc-utils": "ghc-utils", - "gomod2nix": "gomod2nix", - "mach-nix": "mach-nix", - "nix-pypi-fetcher": "nix-pypi-fetcher", "nixpkgs": "nixpkgs_3", - "nixpkgsV1": "nixpkgsV1", - "poetry2nix": "poetry2nix", - "pre-commit-hooks": "pre-commit-hooks", - "pruned-racket-catalog": "pruned-racket-catalog" + "purescript-overlay": "purescript-overlay", + "pyproject-nix": "pyproject-nix" }, "locked": { - "lastModified": 1686064783, - "narHash": "sha256-qyptOk4vDut2JkRMJ+815eJNqqd8gIfjpz3l4WCCtMY=", + "lastModified": 1702457430, + "narHash": "sha256-8NQiXtYCOiC7XFayy6GPGDudCBrPROry3mfWjpdVj5g=", "owner": "nix-community", "repo": "dream2nix", - "rev": "0c064fa9dd025069cc215b0a8b4eb5ea734aceb0", + "rev": "262198033e23e9ee832f0cc8133d38f07598f555", "type": "github" }, "original": { @@ -103,38 +60,6 @@ "type": "github" } }, - "drv-parts": { - "inputs": { - "flake-compat": [ - "tlaternet-webserver", - "dream2nix", - "flake-compat" - ], - "flake-parts": [ - "tlaternet-webserver", - "dream2nix", - "flake-parts" - ], - "nixpkgs": [ - "tlaternet-webserver", - "dream2nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1680698112, - "narHash": "sha256-FgnobN/DvCjEsc0UAZEAdPLkL4IZi2ZMnu2K2bUaElc=", - "owner": "davhau", - "repo": "drv-parts", - "rev": "e8c2ec1157dc1edb002989669a0dbd935f430201", - "type": "github" - }, - "original": { - "owner": "davhau", - "repo": "drv-parts", - "type": "github" - } - }, "fenix": { "inputs": { "nixpkgs": [ @@ -144,11 +69,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1686637310, - "narHash": "sha256-sGfKyioVsxQppDM0eDO62wtFiz+bZOD0cBMMIEjqn4I=", + "lastModified": 1704003651, + "narHash": "sha256-bA3d4E1CX5G7TVbKwJOm9jZfVOGOPp6u5CKEUzNsE8E=", "owner": "nix-community", "repo": "fenix", - "rev": "6fbeedcd2fc1fba77152e13fd7492824d77a4060", + "rev": "c6d82e087ac96f24b90c5787a17e29a72566c2b4", "type": "github" }, "original": { @@ -189,44 +114,6 @@ "type": "github" } }, - "flake-compat_3": { - "flake": false, - "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "tlaternet-webserver", - "dream2nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1675933616, - "narHash": "sha256-/rczJkJHtx16IFxMmAWu5nNYcSXNg1YYXTHoGjLrLUA=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "47478a4a003e745402acf63be7f9a092d51b83d7", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, "flake-utils": { "inputs": { "systems": "systems_2" @@ -245,21 +132,6 @@ "type": "github" } }, - "flake-utils-pre-commit": { - "locked": { - "lastModified": 1644229661, - "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "foundryvtt": { "inputs": { "nixpkgs": [ @@ -267,11 +139,11 @@ ] }, "locked": { - "lastModified": 1701473318, - "narHash": "sha256-QdCJN8GeNl/V8wMjrvNkrWzNXnahgfjBfCSya4qQdrc=", + "lastModified": 1709504473, + "narHash": "sha256-hXzXxaZaI9Pn5tO4otY2gJUvW/orDGDAMdstm3AY8RU=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "f624c0ceabe13dd876ecff871e0dc7f55f96e993", + "rev": "5cf4e6d9ed7b662dbea7a61d785b67a878598986", "type": "github" }, "original": { @@ -280,69 +152,6 @@ "type": "github" } }, - "ghc-utils": { - "flake": false, - "locked": { - "lastModified": 1662774800, - "narHash": "sha256-1Rd2eohGUw/s1tfvkepeYpg8kCEXiIot0RijapUjAkE=", - "ref": "refs/heads/master", - "rev": "bb3a2d3dc52ff0253fb9c2812bd7aa2da03e0fea", - "revCount": 1072, - "type": "git", - "url": "https://gitlab.haskell.org/bgamari/ghc-utils" - }, - "original": { - "type": "git", - "url": "https://gitlab.haskell.org/bgamari/ghc-utils" - } - }, - "gomod2nix": { - "flake": false, - "locked": { - "lastModified": 1627572165, - "narHash": "sha256-MFpwnkvQpauj799b4QTBJQFEddbD02+Ln5k92QyHOSk=", - "owner": "tweag", - "repo": "gomod2nix", - "rev": "67f22dd738d092c6ba88e420350ada0ed4992ae8", - "type": "github" - }, - "original": { - "owner": "tweag", - "repo": "gomod2nix", - "type": "github" - } - }, - "mach-nix": { - "flake": false, - "locked": { - "lastModified": 1634711045, - "narHash": "sha256-m5A2Ty88NChLyFhXucECj6+AuiMZPHXNbw+9Kcs7F6Y=", - "owner": "DavHau", - "repo": "mach-nix", - "rev": "4433f74a97b94b596fa6cd9b9c0402104aceef5d", - "type": "github" - }, - "original": { - "id": "mach-nix", - "type": "indirect" - } - }, - "nix-pypi-fetcher": { - "flake": false, - "locked": { - "lastModified": 1669065297, - "narHash": "sha256-UStjXjNIuIm7SzMOWvuYWIHBkPUKQ8Id63BMJjnIDoA=", - "owner": "DavHau", - "repo": "nix-pypi-fetcher", - "rev": "a9885ac6a091576b5195d547ac743d45a2a615ac", - "type": "github" - }, - "original": { - "owner": "DavHau", - "repo": "nix-pypi-fetcher", - "type": "github" - } - }, "nixpkgs": { "locked": { "lastModified": 1702272962, @@ -391,21 +200,6 @@ "type": "github" } }, - "nixpkgsV1": { - "locked": { - "lastModified": 1678500271, - "narHash": "sha256-tRBLElf6f02HJGG0ZR7znMNFv/Uf7b2fFInpTHiHaSE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "5eb98948b66de29f899c7fe27ae112a47964baf8", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "ref": "nixos-22.11", - "type": "indirect" - } - }, "nixpkgs_2": { "locked": { "lastModified": 1703467016, @@ -424,17 +218,18 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1665580254, - "narHash": "sha256-hO61XPkp1Hphl4HGNzj1VvDH5URt7LI6LaY/385Eul4=", + "lastModified": 1702272962, + "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f634d427b0224a5f531ea5aa10c3960ba6ec5f0f", + "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", "type": "github" }, "original": { - "id": "nixpkgs", - "ref": "nixos-unstable", - "type": "indirect" + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" } }, "nvfetcher": { @@ -459,70 +254,50 @@ "type": "github" } }, - "poetry2nix": { - "flake": false, - "locked": { - "lastModified": 1666918719, - "narHash": "sha256-BkK42fjAku+2WgCOv2/1NrPa754eQPV7gPBmoKQBWlc=", - "owner": "nix-community", - "repo": "poetry2nix", - "rev": "289efb187123656a116b915206e66852f038720e", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "1.36.0", - "repo": "poetry2nix", - "type": "github" - } - }, - "pre-commit-hooks": { + "purescript-overlay": { "inputs": { - "flake-utils": [ - "tlaternet-webserver", - "dream2nix", - "flake-utils-pre-commit" - ], "nixpkgs": [ "tlaternet-webserver", "dream2nix", "nixpkgs" - ] + ], + "slimlock": "slimlock" }, "locked": { - "lastModified": 1646153636, - "narHash": "sha256-AlWHMzK+xJ1mG267FdT8dCq/HvLCA6jwmx2ZUy5O8tY=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "b6bc0b21e1617e2b07d8205e7fae7224036dfa4b", + "lastModified": 1696022621, + "narHash": "sha256-eMjFmsj2G1E0Q5XiibUNgFjTiSz0GxIeSSzzVdoN730=", + "owner": "thomashoneyman", + "repo": "purescript-overlay", + "rev": "047c7933abd6da8aa239904422e22d190ce55ead", "type": "github" }, "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", + "owner": "thomashoneyman", + "repo": "purescript-overlay", "type": "github" } }, - "pruned-racket-catalog": { + "pyproject-nix": { "flake": false, "locked": { - "lastModified": 1672537287, - "narHash": "sha256-SuOvXVcLfakw18oJB/PuRMyvGyGG1+CQD3R+TGHIv44=", - "owner": "nix-community", - "repo": "pruned-racket-catalog", - "rev": "c8b89557fb53b36efa2ee48a769c7364df0f6262", + "lastModified": 1702448246, + "narHash": "sha256-hFg5s/hoJFv7tDpiGvEvXP0UfFvFEDgTdyHIjDVHu1I=", + "owner": "davhau", + "repo": "pyproject.nix", + "rev": "5a06a2697b228c04dd2f35659b4b659ca74f7aeb", "type": "github" }, "original": { - "owner": "nix-community", - "ref": "catalog", - "repo": "pruned-racket-catalog", + "owner": "davhau", + "ref": "dream2nix", + "repo": "pyproject.nix", "type": "github" } }, "root": { "inputs": { "deploy-rs": "deploy-rs", + "disko": "disko", "foundryvtt": "foundryvtt", "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable", @@ -534,11 +309,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1686586902, - "narHash": "sha256-+zfBFBmUxWutKbhdntI9uvF4D5Rh7BhcByM2l+ReyTw=", + "lastModified": 1703965384, + "narHash": "sha256-3iyouqkBvhh/E48TkBlt4JmmcIEyfQwY7pokKBx9WNg=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "1f1fe81f0db301124b3026bd2940294526cdd852", + "rev": "e872f5085cf5b0e44558442365c1c033d486eff2", "type": "github" }, "original": { @@ -548,6 +323,29 @@ "type": "github" } }, + "slimlock": { + "inputs": { + "nixpkgs": [ + "tlaternet-webserver", + "dream2nix", + "purescript-overlay", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1688610262, + "narHash": "sha256-Wg0ViDotFWGWqKIQzyYCgayeH8s4U1OZcTiWTQYdAp4=", + "owner": "thomashoneyman", + "repo": "slimlock", + "rev": "b5c6cdcaf636ebbebd0a1f32520929394493f1a6", + "type": "github" + }, + "original": { + "owner": "thomashoneyman", + "repo": "slimlock", + "type": "github" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ @@ -608,11 +406,11 @@ ] }, "locked": { - "lastModified": 1686688441, - "narHash": "sha256-rcqAQzExGu0uV9Din8yy+Nn8FQvG/Itm8hp66amDj6o=", + "lastModified": 1704840002, + "narHash": "sha256-ik2LeuRjcnRXwBLoRSOyGEMXscE+coO8G79IFhZhdJk=", "ref": "refs/heads/master", - "rev": "c573a6f81827594ceeffbfa058659e2fc20e4a1e", - "revCount": 66, + "rev": "d14f50c8dcc8ab30a5e5fa907b392ac0df6c7b52", + "revCount": 73, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, diff --git a/flake.nix b/flake.nix index efe6433..af41d53 100644 --- a/flake.nix +++ b/flake.nix @@ -4,6 +4,10 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; + disko = { + url = "github:nix-community/disko"; + inputs.nixpkgs.follows = "nixpkgs"; + }; deploy-rs.url = "github:serokell/deploy-rs"; sops-nix = { url = "github:Mic92/sops-nix"; @@ -47,21 +51,45 @@ ./configuration/hardware-specific/linode ]; }; + + hetzner-1 = nixpkgs.lib.nixosSystem { + inherit system; + specialArgs.flake-inputs = inputs; + + modules = [ + ./configuration + ./configuration/hardware-specific/hetzner + ]; + }; }; ############################ # Deployment configuration # ############################ - deploy.nodes.tlaternet = { - hostname = "tlater.net"; + deploy.nodes = { + tlaternet = { + hostname = "tlater.net"; - profiles.system = { - user = "root"; - path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.tlaternet; + profiles.system = { + user = "root"; + path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.tlaternet; + }; + + sshUser = "tlater"; + sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; }; - sshUser = "tlater"; - sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; + hetzner-1 = { + hostname = "116.202.158.55"; + + profiles.system = { + user = "root"; + path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.hetzner-1; + }; + + sshUser = "tlater"; + sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; + }; }; ######### diff --git a/keys/hosts/hetzner1.asc b/keys/hosts/hetzner1.asc new file mode 100644 index 0000000..e58d723 --- /dev/null +++ b/keys/hosts/hetzner1.asc @@ -0,0 +1,28 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +xsFNBAAAAAABEADQWw0P407m704eEqPWA2SxNYdVIOAWPFPS1AJBOQycDMW3Mgv3 +v26H5Oan4t1ZD4yLYsJu6HcrGsIY3Xnhd/JGHVd8eazxl092rdAWUaLRPXusUKxY +KbtBij1U4dkV5npcWyzBN3pzNbU8iItyYS9aOTO6N51QJ3sNIflp+tSf+0Yg26DM +cXZsAQLERdCgttnbd8hoYE3ge02FDwKIY/pr7cVvdOnrsFcOugNTCvCsJQPVknUz +sE/BOtFEBnV5Hw7S5ahO4EEvdQpW+VJLa6XRrH8vXB/LJIoPtw11AKA6Rpb/AvG9 +JOKxhSEODVLcdmg5y2dZDrSg5tSzWikCkhPgxcDdhYK+kYwOOCZCwijMmD+cm2J9 +aDPuQho0LBwnwbTsQuXrPNMSGMFP9F1LVbr4X64x0J2E/70ic96xI3F5E+KHpTFL +kBOr66IFfd91gWLIbxYYtwyx19dPQ7LgZ0GWAMgfHnOdtMwO0Tduubhvq8m7to5B +wD3VN2Tz/2OUa0gbJrnznaMrSOIj1nOU3FLBjT9/wh9DpXMbZw6D2fzqdt03Kpw9 +XjqJzXN1iRkcMpYkxic1Eq2yoAEtLr13cLv+9Dlkvi01kwN/MxwgnQGuc7/R4ZyA +Z4aQtviPhT7geIOtY1jH9ZKosEVg2eXyI7YSxHvdXY+vCcwqzh8x+gRJowARAQAB +zSlyb290IChJbXBvcnRlZCBmcm9tIFNTSCkgPHJvb3RAbG9jYWxob3N0PsLBYgQT +AQgAFgUCAAAAAAkQR/cdo+WtefkCGw8CGQEAAHNAEACZcvbykefvO1cYp3VEGyHI +rjCdA+docXXpyZOe9OcNzB1HBjOLwe9cJgkPnTtDZMYhrN6vnb2td7xiX8LVvhgZ +npSCWtdqXo/EbkN88CP4GraT/9aaB6Joa2RSlZz5jSv3kuq+Q1QXxQqly5/qYhpS +Ibz3ZWcovI1tMcdvA/u74oQ+4m0Mgqbyg9G2vwAygsexdHQMY+L0SDXI1GMX8z0A +zFmtIlYkgqMoJY8qeJniwkmrHoLyFLIjnjQERV0FtQJ3S3sL63JVDNiA4OmwxIlR +M+6LcRDcVqPDEOJxgCKkd6Cg9vOGyCdMTsI42pMuQOflhntx6Ez9tkyQQtkH1dS6 +n9wqmBL47GaZE32GepzvJw3aix87UouuZr8NlzsIr937rp9s3kW4+WpzakimBNjs +kRWNhMaty2az171g3rvnL8yDejibE1OCHMakq7RUtYWC7Z8pNm2eHtHfTnH9qAZe +mRcTiiY308ZI046muN9BAg1/m7v/sD3uEI8YXz7kb3lTWb0iioyUZqo0bqNhADEG +5WLka2RK5fPnsyEalZ8mumUdGCH5iXKmXjK85GUaRwHgJUjhTdnpuqiuwVS3fxvN +KlPP59q/kbWXL6bnVokvzBuW5GRl8im7qw8ggrEuxmSFD1WQLkvswLum6mVvDFpS +HX938nRTHMgZfPW/gvR2aA== +=nrXn +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/keys/production.yaml b/keys/production.yaml index da53b95..dfc0a92 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -29,40 +29,65 @@ sops: lastmodified: "2023-12-28T00:07:08Z" mac: ENC[AES256_GCM,data:P2bNJLjzn69Kg2bJHXmofER7J8wbEj9C4jq9ePWewXBOt45GEiqgnqIaISwZkyzQmm9cxZd95Lr780ICwoKDFdtSCCcC7CdYxYEfyyhnvU3W2qzEghvkypL8JbiEtPSlQ9xOlCk7p41A9eRrV+JziIVSv5UEUs4NubrG9Mkwv3k=,iv:Yq2gANTTgx6cFxkdustUZ1MPszxGSkao/bS1KHAkzJc=,tag:kqJibocgRQXkxTJze6O5MA==,type:str] pgp: - - created_at: "2022-10-12T00:46:51Z" - enc: | + - created_at: "2024-03-02T21:16:50Z" + enc: |- -----BEGIN PGP MESSAGE----- - hQEMA7x7stsXx45CAQf9Hivg5x2NEKp3icdAIXKoBVTp5jnqJ2S5xDpK4cbCUwRd - Z2VyNjxAXdTgKsviXseWbtsEbqo41oqjtpZwXK36gT/miKSPYyBSLb689L70RpWR - aC4QzOHbYr1Trr1whkTVaQG1vd2u9ZEyxsi13ItiYVylu7tgMqaDqzE4Y47RPZtz - FWFY4chO5Tq/DL0blP8oCTLFx4LSL82JbZswCfqrSHX44HGZ/OELHqNhYNF6hkCr - DgYYh7l7s08farE+PnTbWt808Kd3kP8fCRaLm9nt1X1c5QQElaWBjGIscK9fOsV4 - iVFQfPBdwBi8aawCmwvXOcg6sX050Ow3NeYQBJVICtJeAeHyetxxEYip6CrADsiq - UG1Np+p6Pcbq/k6E1vT6bsRrhUWPYC4yuh6Edg5p/jxa4DAlsq/OgDI9pquE9aIt - F8cQMHfIkNP8/HiM/KwmdHoTJiy8YCwqP/UalSJdVw== - =lnlW + hQIMAzWu0p84AOApARAAi+GxJ9z+cMaMgENnDC0Kq6ZJZ/rkXnUIjVxpdXLVhnCc + E2S8NoXJI5jcqsYI08wVQm7OWzsNK6GuJET1i3YdHVDOiwYK+WNGeMA6JdIuJzXV + EDcuarLusygqIV1UcZCwTl362zuLi5kPs/fGsn7BJeI8Q7CtMEP1cmCk0LlHotjz + Pl53bUos1WUqSv0EQw9Cz1dhL6LGlUtoIJaPbB9OO/+chzQCFUJGbCO5KJ/+3fFq + 2DhQZw1GvgNf9/66f39tgY+jeQq5OyuoFSpuzyjxCeK+eX6Jkxs4zOVlcJoztSVc + FEiPIO4YfcgDXToLJWSWA2uGJ+KCvqDXDWyPATQupytAItw05oFyfZOPuh45Wj46 + 6Dm9QYKZMsFj6xfgNl6VEK0KK34zi0EcBKm4wmfF8hw4o5T2U542iPzgKv53jbC2 + F1dn7GI8ZkSGDPlw7UWSIRLmRYilZhbR+2RJX23nXoarP9oxigCpqhIGBGizdBEx + PpUYQjiPUuytk/B3DP+0q01lVvdqcxchA3s88iZwc5GSwBfEMVJ2MJOFkiwIkttO + 9PkmtXAaFAt7jjRCzhH05/S7g9xt/1zid/lHCGKcfaZJqX6YIu9+mXeERsZ7OdMs + uur8T7r14DC4ffPOYQR6BIfNZ3vPUyEP2/fSncAtyDFKO2Cc6ry3JvxBCdPGErjS + XgFwk6xHtOsIU3ozokW3aupo5eSNBEPpfIK28P0ivouIZsU64sVJFjc7zPpZnaF+ + bEnAXMK8FrHvYZz3v4+LSaYZyoKWYly0wCWrSOZTEphTJHFrW/KsJ2hmVTpjS58= + =qqF7 -----END PGP MESSAGE----- fp: 535B61015823443941C744DD12264F6BBDFABA89 - - created_at: "2022-10-12T00:46:51Z" - enc: | + - created_at: "2024-03-02T21:16:50Z" + enc: |- -----BEGIN PGP MESSAGE----- - hQIMA9ahl2ynTH87AQ/+ID/6Dcbat+YRvT8VpfKpZf2O6EFbI3dlPDkZ+f4yFW0R - uGKkLR69utM8FoEn1XUkPG3klDk5t/gQikS/d1lPZ6cPOsVzY4P2Te6LizP25vCE - cHkztZG/IuBCBfLp8xsEjF1OXEDnb7Klqd3aJuYrvJNm3SreNydRAGyM1E94+iQL - zLrHF0WbD+dVdVG+ZoHKouGHVVmcxTkfi8Ce63pHKxOiMgqJLnImC357mle4DlJV - 1My0CPV9Y1ElY+W5s+a7sRgursR0AVOkuvWYT39VW+RmFpUZyRCgyW+L6ilCEcOV - VXJHf0IFylkqevh11BssIetHAtT8anqZ+wo3ON4gEHjcahufc1h8rOxEEsWe/qUC - XZzfwilOsY/vKJ+GTz5Cp8XAviozQL5o2O5H9PiHxQl019QHZgprJclGMlukCBkR - Uo3h1Rl2na8JqcolAlFGQ1/QxsOnJ/KAmOpUZ7fZqG2qnsXnFjXcuqo+0e58odaT - sZLIspvsEHBHKzsvUa6BT8bTc+GlsB3hFolBVdX4y9kTWuzxy0K6bKA9HMTf4FPW - w2hIlvYhlgEx9MVqKLbemN3ye2rC3GRUBXxVXmlXBmb7nXPZCOGqL6nrvtsQ1E4h - D9+sN+cvYh5lYPByjXYinT8TqFVpqX++qnpgHC+5c6WtDHlhRAyfIQK51wCyiZbS - UAG6iDEbCWwD7uHZjDmVycC2R/0HnO+o9xMBI6teKYziFhvn8m7R9gzr7zn/0x3t - dVMXtojhfbMPzYK0gT6xOn8SbYGH0MV7ddOm7+Kl3Z8Y - =zDer + hQIMA9ahl2ynTH87ARAApU/UkNVGbtqxwQ83Zl3f7Zp/PTIeLtcvmuOUjSnPYrYi + 60H1ZPVJUhAv+gcTwRBZ+aN39mUI43qBgCjNu7Z7Bmevf+TXCvK1CwsxuxVbG1tl + sL8FtVH0p8KETq+v8aylTzaV339BmEgnLOBLCE9oP+PhLEERqIT1sz5CeaI71z4F + wETPCfJKEouCQpT0P6hSN1f/9h43PZDQQW5MLY2m1o8t+pFHfowADIlsAmZziXBf + t/IezzM7oo/QKITpLI8NND9nZfvG7leubG3L2TIL0xIgQeLBs4a+jfFSpt8DR0ii + YGf1RgrtpnlkA4B75KHTfEq1LMEn0wOJj89Z38x5MZEw3suUc8W+1PcKoKIgt4Dw + RN4K+CS/4Ud8pNLoO+zZ4moRlM9ltWpCJ9kSHNeMShxtsIEPxkhh3CqWU+Ta/4er + 1W2bkII2ieS4mLlJM6qqLYAb8VJpaKi3BQmB66KtDS4n4HEXvOO+nurmz9luKZZt + 1e3t8ABBowOu+LOVxUbx9DKFObBJ1CDDPQHxRDmGxeSz3ZccHlXsC83QSHCtcm8G + uFtUZLOCaR0iB7DbEUX43p40xFZ5ieqY9XDC3uGJfzoEZRfaX05I3MX267EZBKSp + H6kyYPnTBqI0UhIsDtd6AWd9huqOZ/TrWubTeDf07s6VDusMYrtE+WaVczaYUkPS + WAHYUCmSFUN5z3Emds26kMUQvWTKMvx8TgaEf9LwOfjo4LXhvNKjU5yi+hqZqlO8 + AOvcgnksjHUhonEl7GLaOvPPiyoB6F6ZuOFlzOeL1OB3QxJiEoRFbF8= + =574h -----END PGP MESSAGE----- fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b + - created_at: "2024-03-02T21:16:50Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA0f3HaPlrXn5AQ/8Cvb9YhG/wYRhu+B3iSTCOq1xiPbCOPs9BcCg85G2yI+5 + LA8G18XVDpaxlT4lyOE3p4XEbJkP+ceLhNbldiQns9HCDQXanRonZndLjwSdEuRj + /A/ql2Q27Xhad34Bu0n+hoNfQ2qKjjx6q5lbbKLIIGOvEBF35oImnWF+Vc2cYpzp + J0PT/gkKkGnBCihiUrmpISU+7grFMFT59UnWSthCpACG8ocjzF0PBdzPOj2QSDiv + eDiPEdd72KcGXVfRodrdAbApFXJx2goaxYobAFCyC7G3UHJTliCOEG/5PNSb8lSl + Xv8NJnYI7bs8bRMFTvpEIsogrVeXy0yDl+qogQWPKYwpStn6yqOMIvs2C476nY/f + llRLfjJLTEmPuq+JYhWfZ4o0tOZNECmq4DiAg30ePqThZNXJLNyk9sfkjuDz+zbh + rYnJ1Xb1UM7ZKyjGcxSU9eAba0MBJpVZa/ZDrb4GjysPq+rsEb8LO6WPPbYfLbr/ + kfiK7e4Rv4AgUdd7NjRwBHJSjIFCul8I2hF4v/vp+da11CktPXC0sJNsYXWBR1I+ + FeKxc+WkLTfuS6evb8Y+UuyQkTDI3mb13QfXaX1V8I63LivdCE7zsTOlnOWPT1k7 + cqhQ2VpNxBtt7gNG7MAYHn9KAwGbyQ/Ma6Qx//ftjmf47b8qnZuJe8HEg0Nh5uDS + WAGdbEL/ZXTT4ZxNm/QHVctZVzCAqDUMIkMK4vCCR+Bs8FvLFUo6YoVEnajqTSj8 + pkEyS0RuM68KTpivAjDhqlY4vJsMmiRBjx/q5rSwi29vOuhK9ttSj38= + =KQd3 + -----END PGP MESSAGE----- + fp: 0af7641adb8aa843136cf6d047f71da3e5ad79f9 unencrypted_suffix: _unencrypted version: 3.8.1 From 1c6e7ec1060953489396269e93f06235fc27dba6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 3 Mar 2024 01:06:52 +0100 Subject: [PATCH 086/196] acme: Don't attempt to get certs if the domain is wrong --- configuration/default.nix | 1 - .../hardware-specific/linode/default.nix | 2 ++ configuration/hardware-specific/vm.nix | 2 +- modules/default.nix | 21 ++++++++++++++++--- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 34b1f42..bea7539 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -137,7 +137,6 @@ recommendedGzipSettings = true; recommendedProxySettings = true; clientMaxBodySize = "10G"; - domain = "tlater.net"; statusPage = true; # For metrics, should be accessible only from localhost diff --git a/configuration/hardware-specific/linode/default.nix b/configuration/hardware-specific/linode/default.nix index b05fade..8194ec4 100644 --- a/configuration/hardware-specific/linode/default.nix +++ b/configuration/hardware-specific/linode/default.nix @@ -6,6 +6,8 @@ # Required for the lish console boot.kernelParams = ["console=ttyS0,19200n8"]; + services.nginx.domain = "tlater.net"; + boot.loader = { # Timeout to allow lish to connect timeout = 10; diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 79f4b35..f17e7ee 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -7,7 +7,7 @@ networking.hostName = "testvm"; # Sets the base domain for nginx to localhost so that we # can easily test locally with the VM. - services.nginx.domain = lib.mkOverride 99 "localhost"; + services.nginx.domain = "localhost"; # Use the staging secrets sops.defaultSopsFile = lib.mkOverride 99 ../../keys/staging.yaml; diff --git a/modules/default.nix b/modules/default.nix index 55e356c..de1c7c2 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1,8 +1,23 @@ -{lib, ...}: let - inherit (lib) mkOption types; -in { +{ + pkgs, + config, + lib, + ... +}: { options.services.nginx.domain = lib.mkOption { type = lib.types.str; description = "The base domain name to append to virtual domain names"; }; + + config = { + # Don't attempt to run acme if the domain name is not tlater.net + systemd.services = let + confirm = ''[[ "tlater.net" = ${config.services.nginx.domain} ]]''; + in + lib.mapAttrs' (cert: _: + lib.nameValuePair "acme-${cert}" { + serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; + }) + config.security.acme.certs; + }; } From ae18832cb09ae44085422be61e4bf14e1ef3816b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 00:32:25 +0100 Subject: [PATCH 087/196] linode: Remove old server --- README.md | 2 +- .../hardware-specific/linode/default.nix | 62 ------------------- .../linode/hardware-configuration.nix | 39 ------------ flake.nix | 22 ------- 4 files changed, 1 insertion(+), 124 deletions(-) delete mode 100644 configuration/hardware-specific/linode/default.nix delete mode 100644 configuration/hardware-specific/linode/hardware-configuration.nix diff --git a/README.md b/README.md index 3962a65..8104f1c 100644 --- a/README.md +++ b/README.md @@ -34,5 +34,5 @@ Deployment is handled using [deploy-rs](https://github.com/serokell/deploy-rs): ``` -deploy .#tlaternet +deploy .# ``` diff --git a/configuration/hardware-specific/linode/default.nix b/configuration/hardware-specific/linode/default.nix deleted file mode 100644 index 8194ec4..0000000 --- a/configuration/hardware-specific/linode/default.nix +++ /dev/null @@ -1,62 +0,0 @@ -{ - imports = [ - ./hardware-configuration.nix - ]; - - # Required for the lish console - boot.kernelParams = ["console=ttyS0,19200n8"]; - - services.nginx.domain = "tlater.net"; - - boot.loader = { - # Timeout to allow lish to connect - timeout = 10; - - grub = { - device = "nodev"; - extraConfig = '' - serial --speed=19200 --unit=0 --word=8 --parity=no --stop=1; - terminal_input serial; - terminal_output serial; - ''; - }; - }; - - systemd.network.networks."10-eth0" = { - matchConfig.Name = "eth0"; - - networkConfig = { - DHCP = "no"; - - Address = "178.79.137.55/24"; - Gateway = "178.79.137.1"; - - Domains = "ip.linodeusercontent.com"; - DNS = [ - "178.79.182.5" - "176.58.107.5" - "176.58.116.5" - "176.58.121.5" - "151.236.220.5" - "212.71.252.5" - "212.71.253.5" - "109.74.192.20" - "109.74.193.20" - "109.74.194.20" - "2a01:7e00::9" - "2a01:7e00::3" - "2a01:7e00::c" - "2a01:7e00::5" - "2a01:7e00::6" - "2a01:7e00::8" - "2a01:7e00::b" - "2a01:7e00::4" - "2a01:7e00::7" - "2a01:7e00::2" - ]; - - IPv6PrivacyExtensions = "no"; - IPv6AcceptRA = "yes"; - }; - }; -} diff --git a/configuration/hardware-specific/linode/hardware-configuration.nix b/configuration/hardware-specific/linode/hardware-configuration.nix deleted file mode 100644 index c1776d5..0000000 --- a/configuration/hardware-specific/linode/hardware-configuration.nix +++ /dev/null @@ -1,39 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/profiles/qemu-guest.nix") - ]; - - boot.initrd.availableKernelModules = [ "virtio_pci" "virtio_scsi" "ahci" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/e541bdc3-79d6-459f-9169-92b13b0a8959"; - fsType = "ext4"; - }; - - fileSystems."/var" = - { device = "/dev/disk/by-uuid/79f8fbbd-476d-4e1a-9675-a8474d98f42f"; - fsType = "ext4"; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/45c8ad29-3861-4e68-a566-47e6d9269dca"; } - ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.eth0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/flake.nix b/flake.nix index af41d53..21731e6 100644 --- a/flake.nix +++ b/flake.nix @@ -42,16 +42,6 @@ ################## nixosConfigurations = { # The actual system definition - tlaternet = nixpkgs.lib.nixosSystem { - inherit system; - specialArgs.flake-inputs = inputs; - - modules = [ - ./configuration - ./configuration/hardware-specific/linode - ]; - }; - hetzner-1 = nixpkgs.lib.nixosSystem { inherit system; specialArgs.flake-inputs = inputs; @@ -67,18 +57,6 @@ # Deployment configuration # ############################ deploy.nodes = { - tlaternet = { - hostname = "tlater.net"; - - profiles.system = { - user = "root"; - path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.tlaternet; - }; - - sshUser = "tlater"; - sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; - }; - hetzner-1 = { hostname = "116.202.158.55"; From 1b66bf491096c910f988bf91b0a5152e3a60ac68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 03:48:57 +0100 Subject: [PATCH 088/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/b709d63debafce9f5645a5ba550c9e0983b3d1f7' (2023-12-20) → 'github:serokell/deploy-rs/0a0187794ac7f7a1e62cda3dabf8dc041f868790' (2024-02-16) • Updated input 'disko': 'github:nix-community/disko/bde7dd352c07d43bd5b8245e6c39074a391fdd46' (2024-03-01) → 'github:nix-community/disko/d389901567d9ceda5a1a833fbf8e8e254e18eb0a' (2024-03-11) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/d02d818f22c777aa4e854efc3242ec451e5d462a' (2023-12-25) → 'github:nixos/nixpkgs/b94a96839afcc56de3551aa7472b8d9a3e77e05d' (2024-03-09) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/cfc3698c31b1fb9cdcf10f36c9643460264d0ca8' (2023-12-27) → 'github:nixos/nixpkgs/3030f185ba6a4bf4f18b87f345f104e6a6961f34' (2024-03-09) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/2bcf73dea96497ac9c36ed320b457caa705f9485' (2023-09-01) → 'github:berberman/nvfetcher/367e2eaa92d8f5133c2c5ac03a80c0cf25f301b8' (2024-02-25) • Updated input 'nvfetcher/flake-compat': 'github:edolstra/flake-compat/35bb57c0c8d8b62bbfd284272c928ceb64ddbde9' (2023-01-17) → 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33' (2023-10-04) • Updated input 'nvfetcher/flake-utils': 'github:numtide/flake-utils/f9e7cf818399d17d347f847525c5a5a8032e4e44' (2023-08-23) → 'github:numtide/flake-utils/1ef2e671c3b0c19053962c07dbda38332dcebf26' (2024-01-15) • Updated input 'sops-nix': 'github:Mic92/sops-nix/e523e89763ff45f0a6cf15bcb1092636b1da9ed3' (2023-12-24) → 'github:Mic92/sops-nix/f8d5c8baa83fe620a28c0db633be9db3e34474b4' (2024-03-10) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/7790e078f8979a9fcd543f9a47427eeaba38f268' (2023-12-23) → 'github:NixOS/nixpkgs/b17375d3bb7c79ffc52f3538028b2ec06eb79ef8' (2024-03-10) --- flake.lock | 56 +++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/flake.lock b/flake.lock index 8a9fadc..f8fe220 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1703087360, - "narHash": "sha256-0VUbWBW8VyiDRuimMuLsEO4elGuUw/nc2WDeuO1eN1M=", + "lastModified": 1708091384, + "narHash": "sha256-dTGGw2y8wvfjr+J9CjQbfdulOq72hUG17HXVNxpH1yE=", "owner": "serokell", "repo": "deploy-rs", - "rev": "b709d63debafce9f5645a5ba550c9e0983b3d1f7", + "rev": "0a0187794ac7f7a1e62cda3dabf8dc041f868790", "type": "github" }, "original": { @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1709286488, - "narHash": "sha256-RDpTZ72zLu05djvXRzK76Ysqp9zSdh84ax/edEaJucs=", + "lastModified": 1710119954, + "narHash": "sha256-e7AMYtBQgRzeRtn//k1dXu22xeiav+G0cQjm3gEky7o=", "owner": "nix-community", "repo": "disko", - "rev": "bde7dd352c07d43bd5b8245e6c39074a391fdd46", + "rev": "d389901567d9ceda5a1a833fbf8e8e254e18eb0a", "type": "github" }, "original": { @@ -101,11 +101,11 @@ "flake-compat_2": { "flake": false, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "owner": "edolstra", "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { @@ -119,11 +119,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1692799911, - "narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -170,27 +170,27 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1703351344, - "narHash": "sha256-9FEelzftkE9UaJ5nqxidaJJPEhe9TPhbypLHmc2Mysc=", + "lastModified": 1710033658, + "narHash": "sha256-yiZiVKP5Ya813iYLho2+CcFuuHpaqKc/CoxOlANKcqM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7790e078f8979a9fcd543f9a47427eeaba38f268", + "rev": "b17375d3bb7c79ffc52f3538028b2ec06eb79ef8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.05", + "ref": "release-23.11", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1703637592, - "narHash": "sha256-8MXjxU0RfFfzl57Zy3OfXCITS0qWDNLzlBAdwxGZwfY=", + "lastModified": 1709961763, + "narHash": "sha256-6H95HGJHhEZtyYA3rIQpvamMKAGoa8Yh2rFV29QnuGw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "cfc3698c31b1fb9cdcf10f36c9643460264d0ca8", + "rev": "3030f185ba6a4bf4f18b87f345f104e6a6961f34", "type": "github" }, "original": { @@ -202,11 +202,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1703467016, - "narHash": "sha256-/5A/dNPhbQx/Oa2d+Get174eNI3LERQ7u6WTWOlR1eQ=", + "lastModified": 1710021367, + "narHash": "sha256-FuMVdWqXMT38u1lcySYyv93A7B8wU0EGzUr4t4jQu8g=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d02d818f22c777aa4e854efc3242ec451e5d462a", + "rev": "b94a96839afcc56de3551aa7472b8d9a3e77e05d", "type": "github" }, "original": { @@ -241,11 +241,11 @@ ] }, "locked": { - "lastModified": 1693539235, - "narHash": "sha256-ACmCq1+RnVq+EB7yeN6fThUR3cCJZb6lKEfv937WG84=", + "lastModified": 1708838575, + "narHash": "sha256-brhWjqJG+Yp0KGkF1LE7h0E86Z7OhDQJLo9qhWAmoYw=", "owner": "berberman", "repo": "nvfetcher", - "rev": "2bcf73dea96497ac9c36ed320b457caa705f9485", + "rev": "367e2eaa92d8f5133c2c5ac03a80c0cf25f301b8", "type": "github" }, "original": { @@ -354,11 +354,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1703387502, - "narHash": "sha256-JnWuQmyanPtF8c5yAEFXVWzaIlMxA3EAZCh8XNvnVqE=", + "lastModified": 1710039806, + "narHash": "sha256-vC2fo/phnetp6ub/nRv6mgAi5LbhJ6ujGQWrRD2VgNs=", "owner": "Mic92", "repo": "sops-nix", - "rev": "e523e89763ff45f0a6cf15bcb1092636b1da9ed3", + "rev": "f8d5c8baa83fe620a28c0db633be9db3e34474b4", "type": "github" }, "original": { From c44c9fd8e8a3d63463c9ae2dd2c858525a37c451 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 04:50:40 +0100 Subject: [PATCH 089/196] nextcloud: Update apps --- pkgs/_sources_nextcloud/generated.json | 36 +++++++++++++------------- pkgs/_sources_nextcloud/generated.nix | 36 +++++++++++++------------- pkgs/nextcloud-apps.toml | 5 ++-- 3 files changed, 38 insertions(+), 39 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 1e731e8..55dc2d0 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-7baI+vGBg48vZKZY0ikme+4PQl+PLUlC6JE0Air2s5E=", + "sha256": "sha256-JXNQNnWXoii71QhtKktuEBEIqzmONVetULBhpSjM9xo=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.1.1/bookmarks-13.1.1.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.1.3/bookmarks-13.1.3.tar.gz" }, - "version": "13.1.1" + "version": "13.1.3" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-8KwFmnFFlyYzKy2acCCjmpRj2W5pOrbQaPRPm16ZZ7g=", + "sha256": "sha256-jf6SIsgWTkQIVIYbfNiTA+KRbUM6g7NHFIOVygBwWmU=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.5.0/calendar-v4.5.0.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.6/calendar-v4.6.6.tar.gz" }, - "version": "v4.5.0" + "version": "v4.6.6" }, "contacts": { "cargoLocks": null, @@ -35,11 +35,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-dNim0PqUlEGB6J/OTsOjyUZ2JhOBhXC60HhjTstmF4s=", + "sha256": "sha256-HCEjiAqn6sTNXKW6O5X6Ta9Ll4ehvzmGZUj1c0ue2Xc=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.4.0/contacts-v5.4.0.tar.gz" + "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.5.3/contacts-v5.5.3.tar.gz" }, - "version": "v5.4.0" + "version": "v5.5.3" }, "cookbook": { "cargoLocks": null, @@ -49,11 +49,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-XgBwUr26qW6wvqhrnhhhhcN4wkI+eXDHnNSm1HDbP6M=", + "sha256": "sha256-19LN1nYJJ0RMWj6DrYPvHzocTyhMfYdpdhBFch3fpHE=", "type": "tarball", - "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz" + "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/Cookbook-0.11.0.tar.gz" }, - "version": "0.10.2" + "version": "0.11.0" }, "news": { "cargoLocks": null, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-WrLikMN8jxu+vav9Xn8J1wUoGN5wQeQGr5pbVT6GLck=", + "sha256": "sha256-cfJkKRNSz15L4E3w1tnEb+t4MrVwVzb8lb6vCOA4cK4=", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/23.0.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/24.0.0/news.tar.gz" }, - "version": "23.0.0" + "version": "24.0.0" }, "notes": { "cargoLocks": null, @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-7GkTGyGTvtDbZsq/zOdbBE7xh6DZO183W6I5XX1ekbw=", + "sha256": "sha256-rnDeo6BRqIAPdw8CcnpO1ifQrx8Bnj5WdgcU/L8aCQk=", "type": "tarball", - "url": "https://github.com/nextcloud/notes/releases/download/v4.8.1/notes.tar.gz" + "url": "https://github.com/nextcloud/notes/releases/download/v4.9.2/notes.tar.gz" }, - "version": "v4.8.1" + "version": "v4.9.2" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index ecdbdf3..69fe7cc 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,50 +3,50 @@ { bookmarks = { pname = "bookmarks"; - version = "13.1.1"; + version = "13.1.3"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v13.1.1/bookmarks-13.1.1.tar.gz"; - sha256 = "sha256-7baI+vGBg48vZKZY0ikme+4PQl+PLUlC6JE0Air2s5E="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v13.1.3/bookmarks-13.1.3.tar.gz"; + sha256 = "sha256-JXNQNnWXoii71QhtKktuEBEIqzmONVetULBhpSjM9xo="; }; }; calendar = { pname = "calendar"; - version = "v4.5.0"; + version = "v4.6.6"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.5.0/calendar-v4.5.0.tar.gz"; - sha256 = "sha256-8KwFmnFFlyYzKy2acCCjmpRj2W5pOrbQaPRPm16ZZ7g="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.6/calendar-v4.6.6.tar.gz"; + sha256 = "sha256-jf6SIsgWTkQIVIYbfNiTA+KRbUM6g7NHFIOVygBwWmU="; }; }; contacts = { pname = "contacts"; - version = "v5.4.0"; + version = "v5.5.3"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.4.0/contacts-v5.4.0.tar.gz"; - sha256 = "sha256-dNim0PqUlEGB6J/OTsOjyUZ2JhOBhXC60HhjTstmF4s="; + url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.5.3/contacts-v5.5.3.tar.gz"; + sha256 = "sha256-HCEjiAqn6sTNXKW6O5X6Ta9Ll4ehvzmGZUj1c0ue2Xc="; }; }; cookbook = { pname = "cookbook"; - version = "0.10.2"; + version = "0.11.0"; src = fetchTarball { - url = "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz"; - sha256 = "sha256-XgBwUr26qW6wvqhrnhhhhcN4wkI+eXDHnNSm1HDbP6M="; + url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/Cookbook-0.11.0.tar.gz"; + sha256 = "sha256-19LN1nYJJ0RMWj6DrYPvHzocTyhMfYdpdhBFch3fpHE="; }; }; news = { pname = "news"; - version = "23.0.0"; + version = "24.0.0"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/23.0.0/news.tar.gz"; - sha256 = "sha256-WrLikMN8jxu+vav9Xn8J1wUoGN5wQeQGr5pbVT6GLck="; + url = "https://github.com/nextcloud/news/releases/download/24.0.0/news.tar.gz"; + sha256 = "sha256-cfJkKRNSz15L4E3w1tnEb+t4MrVwVzb8lb6vCOA4cK4="; }; }; notes = { pname = "notes"; - version = "v4.8.1"; + version = "v4.9.2"; src = fetchTarball { - url = "https://github.com/nextcloud/notes/releases/download/v4.8.1/notes.tar.gz"; - sha256 = "sha256-7GkTGyGTvtDbZsq/zOdbBE7xh6DZO183W6I5XX1ekbw="; + url = "https://github.com/nextcloud/notes/releases/download/v4.9.2/notes.tar.gz"; + sha256 = "sha256-rnDeo6BRqIAPdw8CcnpO1ifQrx8Bnj5WdgcU/L8aCQk="; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 69bccdc..a515930 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -12,10 +12,9 @@ src.github = "nextcloud-releases/contacts" fetch.tarball = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] -src.github_tag = "nextcloud/cookbook" +src.github = "christianlupus-nextcloud/cookbook-releases" src.prefix = "v" -src.exclude_regex = 'v\d+\.\d+\.\d+-rc\d+' -fetch.tarball = "https://github.com/nextcloud/cookbook/releases/download/v$ver/Cookbook-$ver.tar.gz" +fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v$ver/Cookbook-$ver.tar.gz" [news] src.github = "nextcloud/news" From aaa9a164f7a9fa287fd71522a51bc4927d42edfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 04:50:48 +0100 Subject: [PATCH 090/196] flake: Fix vm run command path --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 21731e6..f8255f6 100644 --- a/flake.nix +++ b/flake.nix @@ -109,7 +109,7 @@ writeShellScript "run-vm" '' export QEMU_OPTS="-m 3941 -smp 2 -display curses" export QEMU_NET_OPTS="${qemuNetOpts}" - "${vm.config.system.build.vm}/bin/run-tlaternet-vm" + "${vm.config.system.build.vm}/bin/run-testvm-vm" ''; update-pkgs = let From aec7c5c7d872ece1345584b2e6dadfe637083e2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 04:50:59 +0100 Subject: [PATCH 091/196] vm: Change domain --- configuration/hardware-specific/vm.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index f17e7ee..b2e8826 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -5,9 +5,9 @@ boot.kernelParams = ["nomodeset"]; networking.hostName = "testvm"; - # Sets the base domain for nginx to localhost so that we - # can easily test locally with the VM. - services.nginx.domain = "localhost"; + # Sets the base domain for nginx to a local domain so that we can + # easily test locally with the VM. + services.nginx.domain = "dev.local"; # Use the staging secrets sops.defaultSopsFile = lib.mkOverride 99 ../../keys/staging.yaml; From 7affed34f1b01f9c7b0783c13330d77309fffddf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 04:51:25 +0100 Subject: [PATCH 092/196] nextcloud: Remove unused variable --- configuration/services/nextcloud.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 75993c3..3ba967a 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,7 +1,6 @@ { pkgs, config, - options, ... }: let nextcloud = pkgs.nextcloud27; From 980122563e6a0f933c6c51ac6925d0708210ca76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 05:04:17 +0100 Subject: [PATCH 093/196] nextcloud: Downgrade cookbook --- pkgs/_sources_nextcloud/generated.json | 6 +++--- pkgs/_sources_nextcloud/generated.nix | 6 +++--- pkgs/nextcloud-apps.toml | 3 ++- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 55dc2d0..6f96b13 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -49,11 +49,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-19LN1nYJJ0RMWj6DrYPvHzocTyhMfYdpdhBFch3fpHE=", + "sha256": "sha256-TE/w8SgyIPaGl5wZUAsG234nxoPj25QoRPF3zjbMoRk=", "type": "tarball", - "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/Cookbook-0.11.0.tar.gz" + "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.10.5/Cookbook-0.10.5.tar.gz" }, - "version": "0.11.0" + "version": "0.10.5" }, "news": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 69fe7cc..e69b20a 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -27,10 +27,10 @@ }; cookbook = { pname = "cookbook"; - version = "0.11.0"; + version = "0.10.5"; src = fetchTarball { - url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.0/Cookbook-0.11.0.tar.gz"; - sha256 = "sha256-19LN1nYJJ0RMWj6DrYPvHzocTyhMfYdpdhBFch3fpHE="; + url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.10.5/Cookbook-0.10.5.tar.gz"; + sha256 = "sha256-TE/w8SgyIPaGl5wZUAsG234nxoPj25QoRPF3zjbMoRk="; }; }; news = { diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index a515930..25ac8d9 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -12,7 +12,8 @@ src.github = "nextcloud-releases/contacts" fetch.tarball = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] -src.github = "christianlupus-nextcloud/cookbook-releases" +# src.github = "christianlupus-nextcloud/cookbook-releases" +src.manual = "v0.10.5" src.prefix = "v" fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v$ver/Cookbook-$ver.tar.gz" From 07f819cc58c28f2bbdff7ea09e4dd32bb1bb9610 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 11 Mar 2024 21:56:41 +0100 Subject: [PATCH 094/196] coturn: Fix outdated IP address --- configuration/services/conduit.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 6c84705..f50613b 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -125,7 +125,7 @@ in { static-auth-secret-file = config.sops.secrets."turn/secret".path; realm = turn-realm; relay-ips = [ - "178.79.137.55" + "116.202.158.55" ]; # SSL config From f8789ee4d091cda79e017623179d3ce2f152ef7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 12 Mar 2024 05:35:18 +0100 Subject: [PATCH 095/196] foundryvtt: Mark as running behind a reverse proxy --- configuration/services/foundryvtt.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index d573480..a55bf24 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -12,6 +12,8 @@ in { enable = true; hostName = domain; minifyStaticFiles = true; + proxySSL = true; + proxyPort = 443; }; # Want to start it manually when I need it, not have it constantly From 329a6c4cf1fa9287e5d8339107ed429edbd10dd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 12 Mar 2024 05:40:49 +0100 Subject: [PATCH 096/196] foundryvtt: Enable backups --- configuration/services/foundryvtt.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index a55bf24..069f336 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -35,4 +35,12 @@ in { proxyPass = "http://localhost:${toString port}"; }; }; + + services.backups.foundryvtt = { + user = "foundryvtt"; + paths = [ + config.services.foundryvtt.dataDir + ]; + pauseServices = ["foundryvtt.service"]; + }; } From fa73574dba2704d912f98d554b0388a67a4c38a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 12 Mar 2024 05:44:47 +0100 Subject: [PATCH 097/196] nginx: Factor nginx configuration into a separate module --- configuration/default.nix | 74 ++++++++------------------------------- configuration/nginx.nix | 53 ++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+), 60 deletions(-) create mode 100644 configuration/nginx.nix diff --git a/configuration/default.nix b/configuration/default.nix index bea7539..ef1c804 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -26,6 +26,7 @@ ./services/wireguard.nix ./services/starbound.nix ./services/postgres.nix + ./nginx.nix ./sops.nix ]; @@ -108,17 +109,21 @@ openssh.authorizedKeys.keyFiles = [../keys/tlater.pub]; }; - services.openssh = { - enable = true; - allowSFTP = false; - ports = [2222]; - startWhenNeeded = true; + services = { + openssh = { + enable = true; + allowSFTP = false; + ports = [2222]; + startWhenNeeded = true; - settings = { - GatewayPorts = "yes"; - PermitRootLogin = "no"; - PasswordAuthentication = false; + settings = { + GatewayPorts = "yes"; + PermitRootLogin = "no"; + PasswordAuthentication = false; + }; }; + + logrotate.enable = true; }; security = { @@ -130,57 +135,6 @@ }; }; - services.nginx = { - enable = true; - recommendedTlsSettings = true; - recommendedOptimisation = true; - recommendedGzipSettings = true; - recommendedProxySettings = true; - clientMaxBodySize = "10G"; - - statusPage = true; # For metrics, should be accessible only from localhost - - commonHttpConfig = '' - log_format upstream_time '$remote_addr - $remote_user [$time_local] ' - '"$request" $status $body_bytes_sent ' - '"$http_referer" "$http_user_agent" ' - 'rt=$request_time uct="$upstream_connect_time" ' - 'uht="$upstream_header_time" urt="$upstream_response_time"'; - ''; - }; - - services.logrotate = { - enable = true; - - settings = - { - # Override the default, just keep fewer logs - nginx.rotate = 6; - } - // lib.mapAttrs' (virtualHost: _: - lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { - frequency = "daily"; - rotate = 2; - compress = true; - delaycompress = true; - su = "${config.services.nginx.user} ${config.services.nginx.group}"; - postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; - }) - config.services.nginx.virtualHosts; - }; - systemd.tmpfiles.rules = - lib.mapAttrsToList ( - virtualHost: _: - # - "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" - ) - config.services.nginx.virtualHosts; - - security.acme = { - defaults.email = "tm@tlater.net"; - acceptTerms = true; - }; - # Remove some unneeded packages environment.defaultPackages = []; diff --git a/configuration/nginx.nix b/configuration/nginx.nix new file mode 100644 index 0000000..5315ae6 --- /dev/null +++ b/configuration/nginx.nix @@ -0,0 +1,53 @@ +{ + config, + lib, + ... +}: { + services.nginx = { + enable = true; + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + recommendedProxySettings = true; + clientMaxBodySize = "10G"; + + statusPage = true; # For metrics, should be accessible only from localhost + + commonHttpConfig = '' + log_format upstream_time '$remote_addr - $remote_user [$time_local] ' + '"$request" $status $body_bytes_sent ' + '"$http_referer" "$http_user_agent" ' + 'rt=$request_time uct="$upstream_connect_time" ' + 'uht="$upstream_header_time" urt="$upstream_response_time"'; + ''; + }; + + services.logrotate.settings = + { + # Override the default, just keep fewer logs + nginx.rotate = 6; + } + // lib.mapAttrs' (virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + }) + config.services.nginx.virtualHosts; + + systemd.tmpfiles.rules = + lib.mapAttrsToList ( + virtualHost: _: + # + "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" + ) + config.services.nginx.virtualHosts; + + security.acme = { + defaults.email = "tm@tlater.net"; + acceptTerms = true; + }; +} From cf02da0d00378ccbf8b836206956ecb069a310cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 12 Mar 2024 05:58:36 +0100 Subject: [PATCH 098/196] acme: Back up SSL certificates --- configuration/nginx.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/configuration/nginx.nix b/configuration/nginx.nix index 5315ae6..14ba9d9 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -50,4 +50,11 @@ defaults.email = "tm@tlater.net"; acceptTerms = true; }; + + services.backups.acme = { + user = "acme"; + paths = + lib.mapAttrsToList (virtualHost: _: "/var/lib/acme/${virtualHost}") + config.services.nginx.virtualHosts; + }; } From f43f8742d9eb93ad24101c73d334bf687b232ef0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 18 Mar 2024 05:05:34 +0100 Subject: [PATCH 099/196] sops: Fix encryption --- flake.lock | 6 +-- keys/production.yaml | 89 +++++++++++++++++++++----------------------- 2 files changed, 45 insertions(+), 50 deletions(-) diff --git a/flake.lock b/flake.lock index f8fe220..475ddf8 100644 --- a/flake.lock +++ b/flake.lock @@ -354,11 +354,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1710039806, - "narHash": "sha256-vC2fo/phnetp6ub/nRv6mgAi5LbhJ6ujGQWrRD2VgNs=", + "lastModified": 1710433464, + "narHash": "sha256-IXlPoWgIRovZ32mYvqqdBgOQln71LouE/HBhbKc1wcw=", "owner": "Mic92", "repo": "sops-nix", - "rev": "f8d5c8baa83fe620a28c0db633be9db3e34474b4", + "rev": "6c32d3b9c7593f4b466ec5404e59fc09a803a090", "type": "github" }, "original": { diff --git a/keys/production.yaml b/keys/production.yaml index dfc0a92..80172e2 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -26,67 +26,62 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-12-28T00:07:08Z" - mac: ENC[AES256_GCM,data:P2bNJLjzn69Kg2bJHXmofER7J8wbEj9C4jq9ePWewXBOt45GEiqgnqIaISwZkyzQmm9cxZd95Lr780ICwoKDFdtSCCcC7CdYxYEfyyhnvU3W2qzEghvkypL8JbiEtPSlQ9xOlCk7p41A9eRrV+JziIVSv5UEUs4NubrG9Mkwv3k=,iv:Yq2gANTTgx6cFxkdustUZ1MPszxGSkao/bS1KHAkzJc=,tag:kqJibocgRQXkxTJze6O5MA==,type:str] + lastmodified: "2024-03-18T04:04:56Z" + mac: ENC[AES256_GCM,data:qIbgeaaFQXYacURO9EVfvtvvlUP0j7FMJuh9CIRbzQCyoSedibt1yhGIMQk2ERUliPb8OEuG4QPZ8rled/DmP1BHrUNTYFnRcagtPOnIE+0b9TuAVrj+vTWVl4MvQKMt9i/DQJsWAZVuaP8isDuZ77mVnlj1V8F+1MvXtL0+ZVM=,iv:0mKgiXjWrmNmuXLEsPYBMWSZvD9qrHDHEkSPAm9GCY4=,tag:ZM32r6kbsi4ERGFERzTRpA==,type:str] pgp: - - created_at: "2024-03-02T21:16:50Z" + - created_at: "2024-03-18T04:02:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMAzWu0p84AOApARAAi+GxJ9z+cMaMgENnDC0Kq6ZJZ/rkXnUIjVxpdXLVhnCc - E2S8NoXJI5jcqsYI08wVQm7OWzsNK6GuJET1i3YdHVDOiwYK+WNGeMA6JdIuJzXV - EDcuarLusygqIV1UcZCwTl362zuLi5kPs/fGsn7BJeI8Q7CtMEP1cmCk0LlHotjz - Pl53bUos1WUqSv0EQw9Cz1dhL6LGlUtoIJaPbB9OO/+chzQCFUJGbCO5KJ/+3fFq - 2DhQZw1GvgNf9/66f39tgY+jeQq5OyuoFSpuzyjxCeK+eX6Jkxs4zOVlcJoztSVc - FEiPIO4YfcgDXToLJWSWA2uGJ+KCvqDXDWyPATQupytAItw05oFyfZOPuh45Wj46 - 6Dm9QYKZMsFj6xfgNl6VEK0KK34zi0EcBKm4wmfF8hw4o5T2U542iPzgKv53jbC2 - F1dn7GI8ZkSGDPlw7UWSIRLmRYilZhbR+2RJX23nXoarP9oxigCpqhIGBGizdBEx - PpUYQjiPUuytk/B3DP+0q01lVvdqcxchA3s88iZwc5GSwBfEMVJ2MJOFkiwIkttO - 9PkmtXAaFAt7jjRCzhH05/S7g9xt/1zid/lHCGKcfaZJqX6YIu9+mXeERsZ7OdMs - uur8T7r14DC4ffPOYQR6BIfNZ3vPUyEP2/fSncAtyDFKO2Cc6ry3JvxBCdPGErjS - XgFwk6xHtOsIU3ozokW3aupo5eSNBEPpfIK28P0ivouIZsU64sVJFjc7zPpZnaF+ - bEnAXMK8FrHvYZz3v4+LSaYZyoKWYly0wCWrSOZTEphTJHFrW/KsJ2hmVTpjS58= - =qqF7 + hQEMA7x7stsXx45CAQf7BjF+HR3WKdMyAV6R1M0+lqDz6hBHKyGH7YBB/QZBqRbK + 3hdABIwWUsqpHjleEOp/Gj0VhZqwagqHxK4Fp5G0r3QBupbAO8u/+DNI8wll0Nva + dlOh0Jqp4E17TkERMQL02rrQ1ZmpOYmPkCd2//xkmWAQ1LatHWeRVSRxQBuMtPQi + btrefcQNjQCvS9/60dp8oTu8nxlFA4iHCBQKNIKVGqQH7jkdIfMPdUILjCkCiyCc + h+OxlHZZnpU6U9A+hjMBinvCzebSkZh48VX/T33Kr+4b0CBr1gR9MSXKG9f2MPQP + PMl6rPvqSqG6ddN9QDI+0HEHYaRvxPIV8uDS36tVxNJeAQHB5/6Lt7hJdYWgwf5E + TLgbZ0IxB17++6K++GlaG8WHO65l1jzmkPlN+ZGcwnhibDxnZjP6kqGqDFcZP4ge + cnV0KnhYcC59IooQYrWKzAJex9rnwPo7MGKV6XwZOQ== + =Hy9T -----END PGP MESSAGE----- fp: 535B61015823443941C744DD12264F6BBDFABA89 - - created_at: "2024-03-02T21:16:50Z" + - created_at: "2024-03-18T04:02:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA9ahl2ynTH87ARAApU/UkNVGbtqxwQ83Zl3f7Zp/PTIeLtcvmuOUjSnPYrYi - 60H1ZPVJUhAv+gcTwRBZ+aN39mUI43qBgCjNu7Z7Bmevf+TXCvK1CwsxuxVbG1tl - sL8FtVH0p8KETq+v8aylTzaV339BmEgnLOBLCE9oP+PhLEERqIT1sz5CeaI71z4F - wETPCfJKEouCQpT0P6hSN1f/9h43PZDQQW5MLY2m1o8t+pFHfowADIlsAmZziXBf - t/IezzM7oo/QKITpLI8NND9nZfvG7leubG3L2TIL0xIgQeLBs4a+jfFSpt8DR0ii - YGf1RgrtpnlkA4B75KHTfEq1LMEn0wOJj89Z38x5MZEw3suUc8W+1PcKoKIgt4Dw - RN4K+CS/4Ud8pNLoO+zZ4moRlM9ltWpCJ9kSHNeMShxtsIEPxkhh3CqWU+Ta/4er - 1W2bkII2ieS4mLlJM6qqLYAb8VJpaKi3BQmB66KtDS4n4HEXvOO+nurmz9luKZZt - 1e3t8ABBowOu+LOVxUbx9DKFObBJ1CDDPQHxRDmGxeSz3ZccHlXsC83QSHCtcm8G - uFtUZLOCaR0iB7DbEUX43p40xFZ5ieqY9XDC3uGJfzoEZRfaX05I3MX267EZBKSp - H6kyYPnTBqI0UhIsDtd6AWd9huqOZ/TrWubTeDf07s6VDusMYrtE+WaVczaYUkPS - WAHYUCmSFUN5z3Emds26kMUQvWTKMvx8TgaEf9LwOfjo4LXhvNKjU5yi+hqZqlO8 - AOvcgnksjHUhonEl7GLaOvPPiyoB6F6ZuOFlzOeL1OB3QxJiEoRFbF8= - =574h + hQIMA9ahl2ynTH87AQ/+LNXxC3acjs2+c38gHZRW6Am4XFx1t/4tfxIgaaK/Boq8 + PGU5CFNOMDGv8u/cwyDbfNM7GuL5g7vrLmBXzSV5ErZqc6bJ0+ZCNPTRIxP1Vxph + tWiDIyTwuqUzxWpOlSzii2Sqhlp8CyiWzBe95eIr96XzDCCtfzyCZ0BYyKgpHHxB + BltH0/+0JZFiR19zvf6M99AHwM8OddRQkXav+mRIJQpA87ovVZcAv5skYGJgNCqN + 55fbskuYmqEnloQCZVJ2+2ZXK5Qn/uq4fLJCiIdZm4YsctJnV5spzZIL+dcOty65 + Plk77BWzLaU5UOKCBAJWrK8oZSTGOrp4VZqb62DuqMRejG0JXmneIVk7p79yn5eA + ANVMGRF4b8RP9YUhzE8HACFzQebKpUU8XKv9+qsmO9Le5jUhU3UQeCSSzT/T5Dr8 + kLDNtmW+mliQnxFlKcVWq2JIG+HaQD1KLOAl0JBNCOSLif2ofaHahuZ15agbYeis + hyrBY92EhzqYXHk/Kzv4ff4r+WUs9NN7R4Gg+wfWvMcTtVfbi4Ht+pjjTtCZwK1C + M8JebQn0NZSpVi3e7Xaz1fQ5Tqrg8PHZtkYGoIHLRPJQwLn9PHYtGzC3rFAk+Fqq + 5WWHELxfcsZ6DakAGSXPK/80QhEZkpGmKizTwrEde+7fpEPxjdzUqlmH3rv7mFzS + WAGSiBIMjLR6ofb65vpghbwh6gXkpCtgUyINRhx/D+Kj5Z4lGD1u1I05DT1xD6VJ + FAbnH7oZ3PJecoAXgRT05FndFA1xfPMCkugmec8ML/sEZt+c3kbrXaA= + =MqS3 -----END PGP MESSAGE----- fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b - - created_at: "2024-03-02T21:16:50Z" + - created_at: "2024-03-18T04:02:00Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA0f3HaPlrXn5AQ/8Cvb9YhG/wYRhu+B3iSTCOq1xiPbCOPs9BcCg85G2yI+5 - LA8G18XVDpaxlT4lyOE3p4XEbJkP+ceLhNbldiQns9HCDQXanRonZndLjwSdEuRj - /A/ql2Q27Xhad34Bu0n+hoNfQ2qKjjx6q5lbbKLIIGOvEBF35oImnWF+Vc2cYpzp - J0PT/gkKkGnBCihiUrmpISU+7grFMFT59UnWSthCpACG8ocjzF0PBdzPOj2QSDiv - eDiPEdd72KcGXVfRodrdAbApFXJx2goaxYobAFCyC7G3UHJTliCOEG/5PNSb8lSl - Xv8NJnYI7bs8bRMFTvpEIsogrVeXy0yDl+qogQWPKYwpStn6yqOMIvs2C476nY/f - llRLfjJLTEmPuq+JYhWfZ4o0tOZNECmq4DiAg30ePqThZNXJLNyk9sfkjuDz+zbh - rYnJ1Xb1UM7ZKyjGcxSU9eAba0MBJpVZa/ZDrb4GjysPq+rsEb8LO6WPPbYfLbr/ - kfiK7e4Rv4AgUdd7NjRwBHJSjIFCul8I2hF4v/vp+da11CktPXC0sJNsYXWBR1I+ - FeKxc+WkLTfuS6evb8Y+UuyQkTDI3mb13QfXaX1V8I63LivdCE7zsTOlnOWPT1k7 - cqhQ2VpNxBtt7gNG7MAYHn9KAwGbyQ/Ma6Qx//ftjmf47b8qnZuJe8HEg0Nh5uDS - WAGdbEL/ZXTT4ZxNm/QHVctZVzCAqDUMIkMK4vCCR+Bs8FvLFUo6YoVEnajqTSj8 - pkEyS0RuM68KTpivAjDhqlY4vJsMmiRBjx/q5rSwi29vOuhK9ttSj38= - =KQd3 + hQIMA0f3HaPlrXn5AQ/+N5NK5UJdtw5e7O9T4hfIhtMXci/og1cJiI64daSyNeDH + jq+CPJ8e73yiTPwu6wHHqfuEhlEuI6sJY0ZJVFU+h4SIBtG21veGEz7GzlYgBCJm + xvJHXjtM8AprqnFVO7Fj9QA/ik5QBP6ZpkOY7j8/qf1G7alOIne/MYRALXDvvIMH + HTWE+Y2N57yZK55Pokmdw10hawbrn/N1nt2Y7sa1+5TlRNtuA/+zLkXtEjRr5U3N + DId+hqCKgXDqKLBMkh4mZUTGOGsk8eeKAWwyPp9+8A5/0rfy+xOJYEjjHICXQMSE + zfe6qvj/fRJKGzT5lEzD+ZKHlR0zHEwGRfHqrVUTdPcPdKj3DZILjsoe5ba4VlAp + sS0CAYTg3YuWMT4iHuOQlY5IoQxHHrn7k8ox5iZULFecg58f6r6iJL3AepDYWAey + gtQXYBeaeCm5Ddwmd6TBVz8Q4bCVYIrHbVeAhSDkxfrWLc5UORggvLEWiXilGDJi + DzAv0MVHE2Wa3eOJLq05K2/LBqRBD1XYM3dcS6JSdFxWWMzvLdUOB4dAuPt9gpl9 + liaA13Blw/ev+U4ADxptrl+QuYRbWz3z6rniYpluSrTbVCKFRoHXSGFPy5u8/N6O + QyjfoovIBxXKnbUq2kMoFa/qFpc1pDUn0sjQNsUBdtorAu3Up4icyoih7qwx2J3S + WAGB1jHWMfcsBJqPwjRYkqBf6MuwHAZWdd+zvj/fKfft9jtxLcCGOIM6QdfiWbl0 + Wq4gHdH7OhSy+ZgRnaBRt/GAkzkHvfG68HfulviHZ1h2mrQN1y3mxpg= + =RCYB -----END PGP MESSAGE----- fp: 0af7641adb8aa843136cf6d047f71da3e5ad79f9 unencrypted_suffix: _unencrypted From c161eeb056a6c91d226b5be7adef617625eb4f95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 18 Mar 2024 05:05:54 +0100 Subject: [PATCH 100/196] backups: Switch to hetzner storage box --- configuration/services/backups.nix | 76 +++++++++++++++++++----------- configuration/sops.nix | 10 ++++ keys/production.yaml | 6 ++- 3 files changed, 63 insertions(+), 29 deletions(-) diff --git a/configuration/services/backups.nix b/configuration/services/backups.nix index 3635a83..98aa473 100644 --- a/configuration/services/backups.nix +++ b/configuration/services/backups.nix @@ -24,6 +24,24 @@ inherit name text; runtimeInputs = packages; }); + + # *NOT* a TOML file, for some reason quotes are interpreted + # *literally + rcloneConfig = pkgs.writeText "rclone.conf" '' + [storagebox] + type = sftp + user = u395933 + host = u395933.your-storagebox.de + port = 23 + key_file = ${config.sops.secrets."restic/storagebox-ssh-key".path} + shell_type = unix + ''; + + resticEnv = { + RESTIC_PASSWORD_FILE = config.sops.secrets."restic/storagebox-backups".path; + RESTIC_REPOSITORY = "rclone:storagebox:backups"; + RCLONE_CONFIG = rcloneConfig; + }; in { options = { services.backups = lib.mkOption { @@ -120,13 +138,11 @@ in { # Doesn't hurt to finish the ongoing prune restartIfChanged = false; - environment = { - RESTIC_PASSWORD_FILE = config.sops.secrets."restic/local-backups".path; - RESTIC_REPOSITORY = "/var/lib/backups/"; - RESTIC_CACHE_DIR = "%C/restic-prune"; - }; + environment = resticEnv; path = with pkgs; [ + openssh + rclone restic ]; @@ -145,11 +161,6 @@ in { CacheDirectory = "restic-prune"; CacheDirectoryMode = "0700"; - ReadWritePaths = "/var/lib/backups/"; - - # Ensure we don't leave behind any files with the - # temporary UID of this service. - ExecStopPost = "+${pkgs.coreutils}/bin/chown -R root:backup /var/lib/backups/"; }; }; } @@ -158,17 +169,24 @@ in { # Don't want to restart mid-backup restartIfChanged = false; - environment = { - RESTIC_CACHE_DIR = "%C/backup-${name}"; - RESTIC_PASSWORD_FILE = config.sops.secrets."restic/local-backups".path; - # TODO(tlater): If I ever add more than one repo, service - # shutdown/restarting will potentially break if multiple - # backups for the same service overlap. A more clever - # sentinel file with reference counts would probably solve - # this. - RESTIC_REPOSITORY = "/var/lib/backups/"; - }; + environment = + resticEnv + // { + RESTIC_CACHE_DIR = "%C/backup-${name}"; + }; + path = with pkgs; [ + coreutils + openssh + rclone + restic + ]; + + # TODO(tlater): If I ever add more than one repo, service + # shutdown/restarting will potentially break if multiple + # backups for the same service overlap. A more clever + # sentinel file with reference counts would probably solve + # this. serviceConfig = { User = backup.user; Group = "backup"; @@ -183,8 +201,8 @@ in { ExecStartPre = map (service: "+${mkShutdownScript service}") backup.pauseServices - ++ singleton (writeScript "backup-${name}-repo-init" [pkgs.restic pkgs.coreutils] '' - restic snapshots || (restic init && chmod -R g+rwx "$RESTIC_REPOSITORY"/*) + ++ singleton (writeScript "backup-${name}-repo-init" [] '' + restic snapshots || restic init '') ++ optional (backup.preparation.text != null) (writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text); @@ -220,10 +238,14 @@ in { }) config.services.backups; - users.groups.backup = {}; - - systemd.tmpfiles.rules = [ - "d /var/lib/backups/ 0770 root backup" - ]; + users = { + # This user is only used to own the ssh key, because apparently + # the ssh client checks file permissions and is stuck in 1980. + users.backup = { + group = "backup"; + isSystemUser = true; + }; + groups.backup = {}; + }; }; } diff --git a/configuration/sops.nix b/configuration/sops.nix index c7cb1f0..dc9fcb5 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -36,6 +36,16 @@ group = "backup"; mode = "0440"; }; + "restic/storagebox-backups" = { + owner = "root"; + group = "backup"; + mode = "0440"; + }; + "restic/storagebox-ssh-key" = { + owner = "backup"; + group = "backup"; + mode = "0040"; + }; # Steam "steam/tlater" = {}; diff --git a/keys/production.yaml b/keys/production.yaml index 80172e2..aa25072 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -14,6 +14,8 @@ wireguard: server-key: ENC[AES256_GCM,data:mXb7ZznJHf5CgV8rI4uzPBATMRbmd7LimgtCkQM9kAjbIaGwUBqJZBN3fXs=,iv:3Po1Orinzov9rnEm9cLzgJY1PeD+5Jl9115MriABHh8=,tag:E/2CjDO1JCvJzxCnqKcNyw==,type:str] restic: local-backups: ENC[AES256_GCM,data:NLNVlR9G9bLSZOkMoPvkbBbAZlKkmiUbdWHOFDnaefuy9wNLH53ctOIyS0rSsQLaJCSBTpgPSWIIXUSuzoK/eA==,iv:DzuujmyJJP4GiE5z7KOOGUEzUgOwmtf/7UYhwkyLe9g=,tag:cElFhpVC7S6HYlB6UyN7PQ==,type:str] + storagebox-backups: ENC[AES256_GCM,data:UyT8jCkKlfYJXjWLI9MbYfeVhY5d89N3aj1Olj54/aBOP3gwcrx6gU56Pwa1xKZ3lR13AVs/b4wF9sbvP7Kqqg==,iv:0HM+DgH4iCiWpjRvAYCFQGEy4xIBQwAM+PkkzOsizw0=,tag:jbrqo1In2O4jVM5e7fjOzg==,type:str] + storagebox-ssh-key: ENC[AES256_GCM,data:7aYlKX7I8Bsur3nm4nV9eSW3lmIxBCeCUMbPX3qgcotPbyPYaUqD3MOCnFRepajYkFXAgMX4jknqLfoO9xYc4bavDFjOY8Ww/KmLay7ces6tDnkK6tTRxcNRPUBqEzaFiPNsZc2UwHnmHOF0rKvQusvhCOplYao3xxz5McTHC7IEriUApSNudWCg3qGbyAmxkGEw7tRfh6IiUXEOFeaXDZd78dWZlWIIeospmA1hcVhkLGrjMmoikt/YANHUpWPbd+B9E6x+s2eIzFdvztRjarBluWPZuX981b+hcOm1/+HY/tJ/jzgyVbX1rjmdgZ9jZqdKO/vkOkijHWXlwpQ0QJ2s8p5MURPGRsC7W5jfmGbVKrubxfQC2mSJRJgBaj1wX3yI4GbfCXNdbpseAMy7t8OmN/iMN57lGnD3uX8CWWD327PIWp3SgwMDIZtJRlMBu3vMUrBdNnrrlYoLgf821tX7JWW6L5g1EK/bcBZqZZ/6rE+Q9fLiJHTsj2lyTzQZRLKsn0YePlcIMOWHO2CG/aWrfycdSKKjaKGG,iv:OVnEIMFB4h/EQ8zV3XOpVXLDrV5t4roNYDFQz99m4sQ=,tag:mKWF12uD1TLla/MoJs2zNg==,type:str] turn: env: ENC[AES256_GCM,data:kt5nhVo9pb/ZbPUEcqSYXxN9YMgQKnFb5VRfFFS/qoIaJ73uD2fuJKqcxAyVRrdLqnSAWSQBgTgunBzdP7xqLAK2qt8DYAQWHkIe9uxFbSXZpdmw,iv:9lq6SFwTFN4GGm6gPiJpUMasMdnHVF6XLGYrsyG3kjU=,tag:428Qf9DOiiHt/Wjb188b8g==,type:str] secret: ENC[AES256_GCM,data:si7ee6Xfhdgdyzbp6aQpF7pz3TmTBb7iQ82lRPVXNDg9JfHI+lbmgAsSnRLX5qMCA6P9R045sSMosqidL8QwRg==,iv:SrhpZKK8D45yxCEfDb9P3TwtA14+qEI+wcRqcN/a6pw=,tag:PiwV+mOL9xHJgJft6sc61g==,type:str] @@ -26,8 +28,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-03-18T04:04:56Z" - mac: ENC[AES256_GCM,data:qIbgeaaFQXYacURO9EVfvtvvlUP0j7FMJuh9CIRbzQCyoSedibt1yhGIMQk2ERUliPb8OEuG4QPZ8rled/DmP1BHrUNTYFnRcagtPOnIE+0b9TuAVrj+vTWVl4MvQKMt9i/DQJsWAZVuaP8isDuZ77mVnlj1V8F+1MvXtL0+ZVM=,iv:0mKgiXjWrmNmuXLEsPYBMWSZvD9qrHDHEkSPAm9GCY4=,tag:ZM32r6kbsi4ERGFERzTRpA==,type:str] + lastmodified: "2024-03-18T04:05:08Z" + mac: ENC[AES256_GCM,data:/v/XRBizRUn8UR1HOIaKrY11/5I8RmsctmxXg0wcCXO983YgcGYTEqfXOSRJzkh/MOjB0c8jpdfE7tyqYgB2iYjm+HmRFVsGNB484e+3ukAMsxz4CTz26RWC/LEemQeBOa5RB3rrPXXo1LrJCBN9Y+T/PVgO2xshUSxyhRFQmMA=,iv:km1m8k/vrCVT8ugvqAZNORLu0NSW66B58btH5k4e//Y=,tag:RZXviobM03IQXN1FwDUlVA==,type:str] pgp: - created_at: "2024-03-18T04:02:00Z" enc: |- From e7d68790633656d2b3ad0ec829cc2407aa5e9e43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 25 Mar 2024 01:10:31 +0100 Subject: [PATCH 101/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/d389901567d9ceda5a1a833fbf8e8e254e18eb0a' (2024-03-11) → 'github:nix-community/disko/5d2d3e421ade554b19b4dbb0d11a04023378a330' (2024-03-24) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/5cf4e6d9ed7b662dbea7a61d785b67a878598986' (2024-03-03) → 'github:reckenrode/nix-foundryvtt/0e61d84370fd051d873216553d09e596b7ad3a34' (2024-03-17) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/b94a96839afcc56de3551aa7472b8d9a3e77e05d' (2024-03-09) → 'github:nixos/nixpkgs/56528ee42526794d413d6f244648aaee4a7b56c0' (2024-03-22) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/3030f185ba6a4bf4f18b87f345f104e6a6961f34' (2024-03-09) → 'github:nixos/nixpkgs/44d0940ea560dee511026a53f0e2e2cde489b4d4' (2024-03-23) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/367e2eaa92d8f5133c2c5ac03a80c0cf25f301b8' (2024-02-25) → 'github:berberman/nvfetcher/c774baef4285ce5c72784f58dc565d48f41fd22d' (2024-03-24) • Updated input 'nvfetcher/flake-utils': 'github:numtide/flake-utils/1ef2e671c3b0c19053962c07dbda38332dcebf26' (2024-01-15) → 'github:numtide/flake-utils/b1d9ab70662946ef0850d488da1c9019f3a9752a' (2024-03-11) • Updated input 'sops-nix': 'github:Mic92/sops-nix/6c32d3b9c7593f4b466ec5404e59fc09a803a090' (2024-03-14) → 'github:Mic92/sops-nix/405987a66cce9a4a82f321f11b205982a7127c88' (2024-03-24) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/b17375d3bb7c79ffc52f3538028b2ec06eb79ef8' (2024-03-10) → 'github:NixOS/nixpkgs/ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68' (2024-03-23) --- flake.lock | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/flake.lock b/flake.lock index 475ddf8..f3cd588 100644 --- a/flake.lock +++ b/flake.lock @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1710119954, - "narHash": "sha256-e7AMYtBQgRzeRtn//k1dXu22xeiav+G0cQjm3gEky7o=", + "lastModified": 1711261295, + "narHash": "sha256-5DUNQl9BSmLxgGLbF05G7hi/UTk9DyZq8AuEszhQA7Q=", "owner": "nix-community", "repo": "disko", - "rev": "d389901567d9ceda5a1a833fbf8e8e254e18eb0a", + "rev": "5d2d3e421ade554b19b4dbb0d11a04023378a330", "type": "github" }, "original": { @@ -119,11 +119,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -139,11 +139,11 @@ ] }, "locked": { - "lastModified": 1709504473, - "narHash": "sha256-hXzXxaZaI9Pn5tO4otY2gJUvW/orDGDAMdstm3AY8RU=", + "lastModified": 1710638592, + "narHash": "sha256-R6477tybK4LBP8MKlmMyvndTcZR1Ofi/XA9nDEVcViY=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "5cf4e6d9ed7b662dbea7a61d785b67a878598986", + "rev": "0e61d84370fd051d873216553d09e596b7ad3a34", "type": "github" }, "original": { @@ -170,11 +170,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1710033658, - "narHash": "sha256-yiZiVKP5Ya813iYLho2+CcFuuHpaqKc/CoxOlANKcqM=", + "lastModified": 1711233294, + "narHash": "sha256-eEu5y4J145BYDw9o/YEmeJyqh8blgnZwuz9k234zuWc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b17375d3bb7c79ffc52f3538028b2ec06eb79ef8", + "rev": "ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68", "type": "github" }, "original": { @@ -186,11 +186,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1709961763, - "narHash": "sha256-6H95HGJHhEZtyYA3rIQpvamMKAGoa8Yh2rFV29QnuGw=", + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3030f185ba6a4bf4f18b87f345f104e6a6961f34", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", "type": "github" }, "original": { @@ -202,11 +202,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1710021367, - "narHash": "sha256-FuMVdWqXMT38u1lcySYyv93A7B8wU0EGzUr4t4jQu8g=", + "lastModified": 1711124224, + "narHash": "sha256-l0zlN/3CiodvWDtfBOVxeTwYSRz93muVbXWSpaMjXxM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b94a96839afcc56de3551aa7472b8d9a3e77e05d", + "rev": "56528ee42526794d413d6f244648aaee4a7b56c0", "type": "github" }, "original": { @@ -241,11 +241,11 @@ ] }, "locked": { - "lastModified": 1708838575, - "narHash": "sha256-brhWjqJG+Yp0KGkF1LE7h0E86Z7OhDQJLo9qhWAmoYw=", + "lastModified": 1711260237, + "narHash": "sha256-0/7gn8gDuhNukcnKI5tdFYXYGc19x8CgHeF1x72k9Zw=", "owner": "berberman", "repo": "nvfetcher", - "rev": "367e2eaa92d8f5133c2c5ac03a80c0cf25f301b8", + "rev": "c774baef4285ce5c72784f58dc565d48f41fd22d", "type": "github" }, "original": { @@ -354,11 +354,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1710433464, - "narHash": "sha256-IXlPoWgIRovZ32mYvqqdBgOQln71LouE/HBhbKc1wcw=", + "lastModified": 1711249319, + "narHash": "sha256-N+Pp3/8H+rd7cO71VNV/ovV/Kwt+XNeUHNhsmyTabdM=", "owner": "Mic92", "repo": "sops-nix", - "rev": "6c32d3b9c7593f4b466ec5404e59fc09a803a090", + "rev": "405987a66cce9a4a82f321f11b205982a7127c88", "type": "github" }, "original": { From d28979c61fd1798de473dcfb36efd3dedee4b520 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 25 Mar 2024 01:14:27 +0100 Subject: [PATCH 102/196] nvfetcher: Update package inputs --- pkgs/_sources_nextcloud/generated.json | 6 +++--- pkgs/_sources_nextcloud/generated.nix | 6 +++--- pkgs/_sources_pkgs/generated.json | 6 +++--- pkgs/_sources_pkgs/generated.nix | 6 +++--- pkgs/nvfetcher.toml | 2 +- pkgs/prometheus/fail2ban-exporter.nix | 2 +- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 6f96b13..499f108 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-jf6SIsgWTkQIVIYbfNiTA+KRbUM6g7NHFIOVygBwWmU=", + "sha256": "sha256-hZfjWAMi/0qs5xMMgOlcoSXG6kcZ2aeDaez+NqSZFKI=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.6/calendar-v4.6.6.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.7/calendar-v4.6.7.tar.gz" }, - "version": "v4.6.6" + "version": "v4.6.7" }, "contacts": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index e69b20a..51e76fd 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -11,10 +11,10 @@ }; calendar = { pname = "calendar"; - version = "v4.6.6"; + version = "v4.6.7"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.6/calendar-v4.6.6.tar.gz"; - sha256 = "sha256-jf6SIsgWTkQIVIYbfNiTA+KRbUM6g7NHFIOVygBwWmU="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.7/calendar-v4.6.7.tar.gz"; + sha256 = "sha256-hZfjWAMi/0qs5xMMgOlcoSXG6kcZ2aeDaez+NqSZFKI="; }; }; contacts = { diff --git a/pkgs/_sources_pkgs/generated.json b/pkgs/_sources_pkgs/generated.json index b3faf9a..fc6c343 100644 --- a/pkgs/_sources_pkgs/generated.json +++ b/pkgs/_sources_pkgs/generated.json @@ -11,11 +11,11 @@ "fetchSubmodules": false, "leaveDotGit": false, "name": null, - "rev": "v0.10.0", - "sha256": "sha256-8nIW1XaHCBqQCoLkV1ZYE3NTbVZ6c+UOqYD08XQiv+4=", + "rev": "v0.10.1", + "sha256": "sha256-zGEhDy3uXIbvx4agSA8Mx7bRtiZZtoDZGbNbHc9L+yI=", "type": "git", "url": "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" }, - "version": "v0.10.0" + "version": "v0.10.1" } } \ No newline at end of file diff --git a/pkgs/_sources_pkgs/generated.nix b/pkgs/_sources_pkgs/generated.nix index bb015b4..39dc6d0 100644 --- a/pkgs/_sources_pkgs/generated.nix +++ b/pkgs/_sources_pkgs/generated.nix @@ -3,14 +3,14 @@ { prometheus-fail2ban-exporter = { pname = "prometheus-fail2ban-exporter"; - version = "v0.10.0"; + version = "v0.10.1"; src = fetchgit { url = "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter"; - rev = "v0.10.0"; + rev = "v0.10.1"; fetchSubmodules = false; deepClone = false; leaveDotGit = false; - sha256 = "sha256-8nIW1XaHCBqQCoLkV1ZYE3NTbVZ6c+UOqYD08XQiv+4="; + sha256 = "sha256-zGEhDy3uXIbvx4agSA8Mx7bRtiZZtoDZGbNbHc9L+yI="; }; }; } diff --git a/pkgs/nvfetcher.toml b/pkgs/nvfetcher.toml index 8c53200..d0dfbe5 100644 --- a/pkgs/nvfetcher.toml +++ b/pkgs/nvfetcher.toml @@ -1,3 +1,3 @@ [prometheus-fail2ban-exporter] -src.manual = "v0.10.0" # No gitlab support in nvfetcher +src.manual = "v0.10.1" # No gitlab support in nvfetcher fetch.git = "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" diff --git a/pkgs/prometheus/fail2ban-exporter.nix b/pkgs/prometheus/fail2ban-exporter.nix index 50b4973..b2c6a25 100644 --- a/pkgs/prometheus/fail2ban-exporter.nix +++ b/pkgs/prometheus/fail2ban-exporter.nix @@ -4,5 +4,5 @@ }: buildGoModule { inherit (sources.prometheus-fail2ban-exporter) pname src version; - vendorHash = "sha256-qU6opwhhvzbQOhfGVyiVgKhfCSB0Z4eSRAJnv6ht2I0="; + vendorHash = "sha256-5o8p5p0U/c0WAIV5dACnWA3ThzSh2tt5LIFMb59i9GY="; } From 14785afa1429a8c5b0f2a00f273a73cd06c1ec5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 27 Mar 2024 01:17:26 +0100 Subject: [PATCH 103/196] vm: Set up proper bridge networking --- .gitignore | 2 +- README.md | 7 -- configuration/default.nix | 1 - configuration/hardware-specific/vm.nix | 21 ++++-- flake.nix | 93 +++++++++++--------------- keys/staging.yaml | 6 +- lib/default.nix | 10 --- 7 files changed, 61 insertions(+), 79 deletions(-) delete mode 100644 lib/default.nix diff --git a/.gitignore b/.gitignore index 21e279e..dbee5b9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ /result -/tlaternet.qcow2 +*.qcow2 diff --git a/README.md b/README.md index 8104f1c..f3013ed 100644 --- a/README.md +++ b/README.md @@ -21,13 +21,6 @@ running the following in the repository root: qemu-img create -f qcow2 ./tlaternet.qcow2 20G ``` -### New services - -Whenever a new service is added, add an appropriate port binding to -`qemuNetOpts` in the default app. - -There is no way to test this without binding to the host port, sadly. - ## Deploying Deployment is handled using diff --git a/configuration/default.nix b/configuration/default.nix index ef1c804..d202fe5 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -11,7 +11,6 @@ flake-inputs.sops-nix.nixosModules.sops flake-inputs.tlaternet-webserver.nixosModules.default - "${modulesPath}/profiles/headless.nix" "${modulesPath}/profiles/minimal.nix" (import ../modules) diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index b2e8826..7f1fcf1 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -14,7 +14,9 @@ systemd.network.networks."10-eth0" = { matchConfig.Name = "eth0"; - networkConfig.DHCP = "yes"; + networkConfig = { + Address = "192.168.9.2/24"; + }; }; # Both so we have a predictable key for the staging env, as well as @@ -33,7 +35,18 @@ } ]; - # # Set up VM settings to match real VPS - # virtualisation.memorySize = 3941; - # virtualisation.cores = 2; + virtualisation.vmVariant = { + virtualisation = { + memorySize = 3941; + cores = 2; + graphics = false; + }; + + virtualisation.qemu = { + networkingOptions = lib.mkForce [ + "-device virtio-net,netdev=n1" + "-netdev bridge,id=n1,br=br0,helper=$(which qemu-bridge-helper)" + ]; + }; + }; } diff --git a/flake.nix b/flake.nix index f8255f6..6f6b386 100644 --- a/flake.nix +++ b/flake.nix @@ -36,6 +36,7 @@ ... } @ inputs: let system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.${system}; in { ################## # Configurations # @@ -75,69 +76,53 @@ ######### checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; - #################### - # Helper functions # - #################### - lib = import ./lib {inherit (nixpkgs) lib;}; - ################### # Utility scripts # ################### - packages.${system} = let - inherit (nixpkgs.legacyPackages.${system}) writeShellScript writeShellScriptBin; - vm = nixpkgs.lib.nixosSystem { - inherit system; - specialArgs.flake-inputs = inputs; - - modules = [ - ./configuration - ./configuration/hardware-specific/vm.nix - ]; - }; - in { - default = vm.config.system.build.vm; - - run-vm = let - qemuNetOpts = self.lib.makeQemuNetOpts { - "2222" = "2222"; - "3080" = "80"; - "3443" = "443"; - "8448" = "8448"; # Matrix - "21025" = "21025"; # Starbound - }; - in - writeShellScript "run-vm" '' - export QEMU_OPTS="-m 3941 -smp 2 -display curses" - export QEMU_NET_OPTS="${qemuNetOpts}" - "${vm.config.system.build.vm}/bin/run-testvm-vm" - ''; - - update-pkgs = let - nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; - in - writeShellScriptBin "update-pkgs" '' - cd "$(git rev-parse --show-toplevel)/pkgs" - ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml - ''; - - update-nextcloud-apps = let - nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; - in - writeShellScript "update-nextcloud-apps" '' - cd "$(git rev-parse --show-toplevel)/pkgs" - ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml - ''; - }; - apps.${system} = { - default = { + default = self.apps.${system}.run-vm; + + run-vm = { type = "app"; - program = builtins.toString self.packages.${system}.run-vm; + program = let + vm = nixpkgs.lib.nixosSystem { + inherit system; + specialArgs.flake-inputs = inputs; + + modules = [ + ./configuration + ./configuration/hardware-specific/vm.nix + ]; + }; + in + (pkgs.writeShellScript "" '' + ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm + '') + .outPath; + }; + + update-pkgs = { + type = "app"; + program = let + nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; + in + (pkgs.writeShellScript "update-pkgs" '' + cd "$(git rev-parse --show-toplevel)/pkgs" + ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml + '') + .outPath; }; update-nextcloud-apps = { type = "app"; - program = builtins.toString self.packages.${system}.update-nextcloud-apps; + program = let + nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; + in + (pkgs.writeShellScript "update-nextcloud-apps" '' + cd "$(git rev-parse --show-toplevel)/pkgs" + ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml + '') + .outPath; }; }; diff --git a/keys/staging.yaml b/keys/staging.yaml index de7686b..9e495ba 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -14,6 +14,8 @@ wireguard: server-key: ENC[AES256_GCM,data:FvY897XdKoa/mckE8JQLCkklsnYD6Wz1wpsu5t3uhEnW3iarnDQxF9msuYU=,iv:jqGXfekM+Vs+J9b5nlZ5Skd1ZKHajoUo2Dc4tMYPm1w=,tag:EehikjI/FCU8wqtpvJRamQ==,type:str] restic: local-backups: ENC[AES256_GCM,data:3QjEv03t7wE=,iv:y/6Lv4eUbZZfGPwUONykz8VNL62cAJuWaJy9yk3aAmk=,tag:wMlGsepuG9JjwtUKGWSibw==,type:str] + storagebox-backups: ENC[AES256_GCM,data:NEHk57B3YtI=,iv:0/qnqMVK0662sgfDQoLxcW7L09SKF8E5liCnjaQ2+2k=,tag:RU0BPwGgvI9bgOPr8VItmA==,type:str] + storagebox-ssh-key: ENC[AES256_GCM,data:65+kbJPO90y+rRh3Q5cqLDtQa3VFfbaDPPo1nJLqxgAB7Wm3J7K4qUYAKPcYnkWV4/xFz63R2uCNaq5xv+vuZA==,iv:O7AeE/ujp5p1P7nff7PpghQfN2tQUYBSWL+EHRbE5yA=,tag:Pu/+bEAQuqwmD1Rc//t0cA==,type:str] turn: env: ENC[AES256_GCM,data:xjIz/AY109lyiL5N01p5T3HcYco/rM5CJSRTtg==,iv:16bW6OpyOK/QL0QPGQp/Baa9xyT8E3ZsYkwqmjuofk0=,tag:J5re3uKxIykw3YunvQWBgg==,type:str] secret: ENC[AES256_GCM,data:eQ7dAocoZtg=,iv:fgzjTPv30WqTKlLy+yMn5MsKQgjhPnwlGFFwYEg3gWs=,tag:1ze33U1NBkgMX/9SiaBNQg==,type:str] @@ -26,8 +28,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2023-12-30T14:09:03Z" - mac: ENC[AES256_GCM,data:kuyzVV1Dhlb2LemqRzw2xPr9jtTWqSbFMv70LUEbRmsDpjwQsAIARgoaj32EXdDRTHYXBplTYieR7KvmxykL/8rkj0g4+IuRLY1TcbRS31Gi74FiXvV2apscHhQWXhHPHIHMbwZAfDSHdMrf8hPu28SC9QdbP3SXYNt28Imstrc=,iv:UALUiWGHlWEBmIVWeSyEa16ZdcDZvgtlpHETDV2CcRY=,tag:rxbd3ph+pPf11jup/CMEzw==,type:str] + lastmodified: "2024-03-18T23:13:42Z" + mac: ENC[AES256_GCM,data:/6GnUxOkftB07feEwQbeXoueLQUkRXL4pee973bAYbjse8gbmU3IvI8CVoj1PuY5JeC7pOFCMjZAxqbMh90oUbVSHssVDLIuL4/ZhxF3on+sKmC5wa/M8lU+Ld2upL+//bz2p4EsDKy1Fedwm22b3mOkjSAUcKp+uh8ORrRmWZ0=,iv:waVUyPo1VPfTldzbs0DH3mGukAWvy2Ut9w5bw7/bdFA=,tag:Wm4KUZwKI4VylJ1i2QoptA==,type:str] pgp: - created_at: "2023-12-29T15:25:27Z" enc: | diff --git a/lib/default.nix b/lib/default.nix deleted file mode 100644 index 20d874d..0000000 --- a/lib/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{lib}: let - inherit (lib.attrsets) mapAttrsToList; - inherit (lib.strings) concatStringsSep; -in { - makeQemuNetOpts = portMapping: - concatStringsSep "," - (mapAttrsToList - (host: vm: "hostfwd=::${host}-:${vm}") - portMapping); -} From 119db5e1d3d9dc38bcd40e7fd1de38c1b30285c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 8 Apr 2024 20:02:53 +0200 Subject: [PATCH 104/196] sonnenshift: Init --- configuration/default.nix | 1 + configuration/services/battery-manager.nix | 17 +++ configuration/sops.nix | 10 ++ flake.lock | 139 +++++++++++++++++++++ flake.nix | 5 + keys/production.yaml | 7 +- keys/staging.yaml | 7 +- 7 files changed, 182 insertions(+), 4 deletions(-) create mode 100644 configuration/services/battery-manager.nix diff --git a/configuration/default.nix b/configuration/default.nix index d202fe5..b4601b1 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -15,6 +15,7 @@ (import ../modules) ./services/backups.nix + ./services/battery-manager.nix ./services/conduit.nix ./services/fail2ban.nix ./services/foundryvtt.nix diff --git a/configuration/services/battery-manager.nix b/configuration/services/battery-manager.nix new file mode 100644 index 0000000..7f27931 --- /dev/null +++ b/configuration/services/battery-manager.nix @@ -0,0 +1,17 @@ +{ + config, + flake-inputs, + ... +}: { + imports = [ + flake-inputs.sonnenshift.nixosModules.default + ]; + + services.batteryManager = { + enable = true; + battery = "3ca39300-c523-4315-b9a3-d030f85a9373"; + + emailFile = "${config.sops.secrets."battery-manager/email".path}"; + passwordFile = "${config.sops.secrets."battery-manager/password".path}"; + }; +} diff --git a/configuration/sops.nix b/configuration/sops.nix index dc9fcb5..53044fc 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -3,6 +3,16 @@ defaultSopsFile = ../keys/production.yaml; secrets = { + "battery-manager/email" = { + owner = "battery-manager"; + group = "battery-manager"; + }; + + "battery-manager/password" = { + owner = "battery-manager"; + group = "battery-manager"; + }; + # Gitea "forgejo/metrics-token" = { owner = "forgejo"; diff --git a/flake.lock b/flake.lock index f3cd588..ea6e19f 100644 --- a/flake.lock +++ b/flake.lock @@ -132,6 +132,24 @@ "type": "github" } }, + "flake-utils_2": { + "inputs": { + "systems": "systems_3" + }, + "locked": { + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "foundryvtt": { "inputs": { "nixpkgs": [ @@ -152,6 +170,28 @@ "type": "github" } }, + "nix-github-actions": { + "inputs": { + "nixpkgs": [ + "sonnenshift", + "poetry2nixi", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1703863825, + "narHash": "sha256-rXwqjtwiGKJheXB43ybM8NwWB8rO2dSRrEqes0S7F5Y=", + "owner": "nix-community", + "repo": "nix-github-actions", + "rev": "5163432afc817cf8bd1f031418d1869e4c9d5547", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nix-github-actions", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1702272962, @@ -254,6 +294,31 @@ "type": "github" } }, + "poetry2nixi": { + "inputs": { + "flake-utils": "flake-utils_2", + "nix-github-actions": "nix-github-actions", + "nixpkgs": [ + "sonnenshift", + "nixpkgs" + ], + "systems": "systems_4", + "treefmt-nix": "treefmt-nix" + }, + "locked": { + "lastModified": 1708589824, + "narHash": "sha256-2GOiFTkvs5MtVF65sC78KNVxQSmsxtk0WmV1wJ9V2ck=", + "owner": "nix-community", + "repo": "poetry2nix", + "rev": "3c92540611f42d3fb2d0d084a6c694cd6544b609", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "poetry2nix", + "type": "github" + } + }, "purescript-overlay": { "inputs": { "nixpkgs": [ @@ -302,6 +367,7 @@ "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable", "nvfetcher": "nvfetcher", + "sonnenshift": "sonnenshift", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" } @@ -346,6 +412,28 @@ "type": "github" } }, + "sonnenshift": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ], + "poetry2nixi": "poetry2nixi" + }, + "locked": { + "lastModified": 1712437610, + "narHash": "sha256-U0xIqSupo6yBVWQcHIcLPDKg5ShQIkV/0Ay+Xg3GIlk=", + "ref": "tlater/implement-nix-module", + "rev": "43c4f591328f194ca989b86cea49773104f75549", + "revCount": 7, + "type": "git", + "url": "ssh://git@github.com/sonnenshift/battery-manager" + }, + "original": { + "ref": "tlater/implement-nix-module", + "type": "git", + "url": "ssh://git@github.com/sonnenshift/battery-manager" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ @@ -397,6 +485,35 @@ "type": "github" } }, + "systems_3": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "id": "systems", + "type": "indirect" + } + }, "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", @@ -419,6 +536,28 @@ "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" } }, + "treefmt-nix": { + "inputs": { + "nixpkgs": [ + "sonnenshift", + "poetry2nixi", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1708335038, + "narHash": "sha256-ETLZNFBVCabo7lJrpjD6cAbnE11eDOjaQnznmg/6hAE=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "e504621290a1fd896631ddbc5e9c16f4366c9f65", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + }, "utils": { "inputs": { "systems": "systems" diff --git a/flake.nix b/flake.nix index 6f6b386..f9941ba 100644 --- a/flake.nix +++ b/flake.nix @@ -25,6 +25,11 @@ url = "github:reckenrode/nix-foundryvtt"; inputs.nixpkgs.follows = "nixpkgs"; }; + + sonnenshift = { + url = "git+ssh://git@github.com/sonnenshift/battery-manager?ref=tlater/implement-nix-module"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = { diff --git a/keys/production.yaml b/keys/production.yaml index aa25072..7ed57b3 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -1,3 +1,6 @@ +battery-manager: + email: ENC[AES256_GCM,data:rYLUACXR/n+bLBmZ,iv:sUBEkh2+7qGjHZ5R23e/hoCiyTA7GTL4bJvXmxjZ5Sw=,tag:fdPMllaQQfRgX0WZKIre4g==,type:str] + password: ENC[AES256_GCM,data:7cokZa6Q6ahSeiFPz+cV,iv:vz405P0IcG9FsAQXlY7mi78GuushQUKJm2irG6buGzc=,tag:JLHG2jTkJDGbinAq9dXRsQ==,type:str] forgejo: metrics-token: ENC[AES256_GCM,data:WVbD5JloJlHNjeEwe1uEd4Haj6L3ilj1Pnux6yrelUQP18ZPAh90aDO1OIZHaPJR7tTeyATr8BIzZL1zkNhCuA==,iv:eTYXN3hymIN3bTX1YxNGkAYE0KVDbdz2ds8UQAHlALE=,tag:A61loGdu0pfsiez96u2Qsg==,type:str] grafana: @@ -28,8 +31,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-03-18T04:05:08Z" - mac: ENC[AES256_GCM,data:/v/XRBizRUn8UR1HOIaKrY11/5I8RmsctmxXg0wcCXO983YgcGYTEqfXOSRJzkh/MOjB0c8jpdfE7tyqYgB2iYjm+HmRFVsGNB484e+3ukAMsxz4CTz26RWC/LEemQeBOa5RB3rrPXXo1LrJCBN9Y+T/PVgO2xshUSxyhRFQmMA=,iv:km1m8k/vrCVT8ugvqAZNORLu0NSW66B58btH5k4e//Y=,tag:RZXviobM03IQXN1FwDUlVA==,type:str] + lastmodified: "2024-04-06T15:32:49Z" + mac: ENC[AES256_GCM,data:ShqLJf9b20LdmjK6MMPtI3KicE+fPc0ejzVGEIdgbNs7ueDwdt7jqgpDrpiyf+vW86tr3I1E1VTlh127XlSH/RZDRRHehpX0tnBiF0zMscmt1vdinY4cPhTwhLJ1fdpVpY8ihdOqv0UFyC39HP78aWESX5S/dJZQ6vS7K5VGKTY=,iv:TYE9f9iyrUQxmMeKXApEYsSPcMWK8vndyBm7HtJyJPo=,tag:vSlobwA1R0Go7BYgNVpMkw==,type:str] pgp: - created_at: "2024-03-18T04:02:00Z" enc: |- diff --git a/keys/staging.yaml b/keys/staging.yaml index 9e495ba..029e6ac 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -1,3 +1,6 @@ +battery-manager: + email: ENC[AES256_GCM,data:LM/EGzWHfVQ=,iv:jFaoUQuUfuGoOyj/GFpdI8TerH/c8D9fjvio+IEt2Tc=,tag:IWLiN011JEnHRLIXWQgfmA==,type:str] + password: ENC[AES256_GCM,data:SUxjqS7SJHM=,iv:LvdKk88S+nSImh6/ZezbFGLCUBu1Lpdu+neF2xyHdBg=,tag:rcMyZuW4FVNbcbz00wQKBg==,type:str] forgejo: metrics-token: ENC[AES256_GCM,data:HEDV/GK/WtI=,iv:ihPEusEGVUNZjjjxz2ys6Nfag/og4n7Cqmd4rroT6Ww=,tag:Brcv7XW6HfzzgF3emtuT2A==,type:str] grafana: @@ -28,8 +31,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-03-18T23:13:42Z" - mac: ENC[AES256_GCM,data:/6GnUxOkftB07feEwQbeXoueLQUkRXL4pee973bAYbjse8gbmU3IvI8CVoj1PuY5JeC7pOFCMjZAxqbMh90oUbVSHssVDLIuL4/ZhxF3on+sKmC5wa/M8lU+Ld2upL+//bz2p4EsDKy1Fedwm22b3mOkjSAUcKp+uh8ORrRmWZ0=,iv:waVUyPo1VPfTldzbs0DH3mGukAWvy2Ut9w5bw7/bdFA=,tag:Wm4KUZwKI4VylJ1i2QoptA==,type:str] + lastmodified: "2024-04-06T15:33:40Z" + mac: ENC[AES256_GCM,data:qB9uDDM5K6+BmeAKyTJ0Sel6Um0Fc9IhdV3wAn13WxpwDtxmMsdqnwaewI/KepsRG3k76x9vkYL+oKkUysqq1r1FkocUDg4DnKnf1KtKo2Zm9MPcVRG833m6oDoTeGnmgrAMTDKy1tUdGkXW40IfbMakbSjSIfLbrymtoHeVbaE=,iv:8P8M4Ueo3Idlgo+Yqj6JUtFfWX949fz6HfRHEOy1/Vg=,tag:ou+IGZSQSfX6gNoxbpAipg==,type:str] pgp: - created_at: "2023-12-29T15:25:27Z" enc: | From a243613e6a4c6ac410ecbdacb84a2cf67dfba479 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 8 Apr 2024 20:14:41 +0200 Subject: [PATCH 105/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/0a0187794ac7f7a1e62cda3dabf8dc041f868790' (2024-02-16) → 'github:serokell/deploy-rs/88b3059b020da69cbe16526b8d639bd5e0b51c8b' (2024-04-01) • Updated input 'disko': 'github:nix-community/disko/5d2d3e421ade554b19b4dbb0d11a04023378a330' (2024-03-24) → 'github:nix-community/disko/0a17298c0d96190ef3be729d594ba202b9c53beb' (2024-04-05) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/56528ee42526794d413d6f244648aaee4a7b56c0' (2024-03-22) → 'github:nixos/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/44d0940ea560dee511026a53f0e2e2cde489b4d4' (2024-03-23) → 'github:nixos/nixpkgs/ff0dbd94265ac470dda06a657d5fe49de93b4599' (2024-04-06) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/c774baef4285ce5c72784f58dc565d48f41fd22d' (2024-03-24) → 'github:berberman/nvfetcher/1463db224a54cbc9499860ef5a51a9b6bf7c3180' (2024-04-08) • Updated input 'sops-nix': 'github:Mic92/sops-nix/405987a66cce9a4a82f321f11b205982a7127c88' (2024-03-24) → 'github:Mic92/sops-nix/39191e8e6265b106c9a2ba0cfd3a4dafe98a31c6' (2024-04-07) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68' (2024-03-23) → 'github:NixOS/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06) --- flake.lock | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/flake.lock b/flake.lock index ea6e19f..be3a0e2 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1708091384, - "narHash": "sha256-dTGGw2y8wvfjr+J9CjQbfdulOq72hUG17HXVNxpH1yE=", + "lastModified": 1711973905, + "narHash": "sha256-UFKME/N1pbUtn+2Aqnk+agUt8CekbpuqwzljivfIme8=", "owner": "serokell", "repo": "deploy-rs", - "rev": "0a0187794ac7f7a1e62cda3dabf8dc041f868790", + "rev": "88b3059b020da69cbe16526b8d639bd5e0b51c8b", "type": "github" }, "original": { @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1711261295, - "narHash": "sha256-5DUNQl9BSmLxgGLbF05G7hi/UTk9DyZq8AuEszhQA7Q=", + "lastModified": 1712356478, + "narHash": "sha256-kTcEtrQIRnexu5lAbLsmUcfR2CrmsACF1s3ZFw1NEVA=", "owner": "nix-community", "repo": "disko", - "rev": "5d2d3e421ade554b19b4dbb0d11a04023378a330", + "rev": "0a17298c0d96190ef3be729d594ba202b9c53beb", "type": "github" }, "original": { @@ -210,11 +210,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1711233294, - "narHash": "sha256-eEu5y4J145BYDw9o/YEmeJyqh8blgnZwuz9k234zuWc=", + "lastModified": 1712437997, + "narHash": "sha256-g0whLLwRvgO2FsyhY8fNk+TWenS3jg5UdlWL4uqgFeo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68", + "rev": "e38d7cb66ea4f7a0eb6681920615dfcc30fc2920", "type": "github" }, "original": { @@ -226,11 +226,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1711163522, - "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", + "lastModified": 1712439257, + "narHash": "sha256-aSpiNepFOMk9932HOax0XwNxbA38GOUVOiXfUVPOrck=", "owner": "nixos", "repo": "nixpkgs", - "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", + "rev": "ff0dbd94265ac470dda06a657d5fe49de93b4599", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1711124224, - "narHash": "sha256-l0zlN/3CiodvWDtfBOVxeTwYSRz93muVbXWSpaMjXxM=", + "lastModified": 1712437997, + "narHash": "sha256-g0whLLwRvgO2FsyhY8fNk+TWenS3jg5UdlWL4uqgFeo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "56528ee42526794d413d6f244648aaee4a7b56c0", + "rev": "e38d7cb66ea4f7a0eb6681920615dfcc30fc2920", "type": "github" }, "original": { @@ -281,11 +281,11 @@ ] }, "locked": { - "lastModified": 1711260237, - "narHash": "sha256-0/7gn8gDuhNukcnKI5tdFYXYGc19x8CgHeF1x72k9Zw=", + "lastModified": 1712538578, + "narHash": "sha256-+fFOtg2fQK6kafSucYDpMG8ENXgo52+YSQtCoXv/+Ik=", "owner": "berberman", "repo": "nvfetcher", - "rev": "c774baef4285ce5c72784f58dc565d48f41fd22d", + "rev": "1463db224a54cbc9499860ef5a51a9b6bf7c3180", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1711249319, - "narHash": "sha256-N+Pp3/8H+rd7cO71VNV/ovV/Kwt+XNeUHNhsmyTabdM=", + "lastModified": 1712458908, + "narHash": "sha256-DMgBS+jNHDg8z3g9GkwqL8xTKXCRQ/0FGsAyrniVonc=", "owner": "Mic92", "repo": "sops-nix", - "rev": "405987a66cce9a4a82f321f11b205982a7127c88", + "rev": "39191e8e6265b106c9a2ba0cfd3a4dafe98a31c6", "type": "github" }, "original": { From a6091b4133e4ff820d0d565b54dca567f4b0697a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 8 Apr 2024 20:44:09 +0200 Subject: [PATCH 106/196] pkgs: Update nextcloud extensions --- pkgs/_sources_nextcloud/generated.json | 6 +++--- pkgs/_sources_nextcloud/generated.nix | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 499f108..c45e204 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-rnDeo6BRqIAPdw8CcnpO1ifQrx8Bnj5WdgcU/L8aCQk=", + "sha256": "sha256-h6RWWIQzpwObDmcGnZPwVwIJZFUXgggeCKBNwI/wDIo=", "type": "tarball", - "url": "https://github.com/nextcloud/notes/releases/download/v4.9.2/notes.tar.gz" + "url": "https://github.com/nextcloud/notes/releases/download/v4.9.4/notes.tar.gz" }, - "version": "v4.9.2" + "version": "v4.9.4" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 51e76fd..1d0f3a0 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -43,10 +43,10 @@ }; notes = { pname = "notes"; - version = "v4.9.2"; + version = "v4.9.4"; src = fetchTarball { - url = "https://github.com/nextcloud/notes/releases/download/v4.9.2/notes.tar.gz"; - sha256 = "sha256-rnDeo6BRqIAPdw8CcnpO1ifQrx8Bnj5WdgcU/L8aCQk="; + url = "https://github.com/nextcloud/notes/releases/download/v4.9.4/notes.tar.gz"; + sha256 = "sha256-h6RWWIQzpwObDmcGnZPwVwIJZFUXgggeCKBNwI/wDIo="; }; }; } From 7bb27d9bee25aa027879dfb17f186ead91890f65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 8 Apr 2024 20:49:44 +0200 Subject: [PATCH 107/196] conduit: Switch to stable package since that has updated --- configuration/services/conduit.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index f50613b..cae2510 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -2,7 +2,6 @@ pkgs, config, lib, - flake-inputs, ... }: let inherit (lib.strings) concatMapStringsSep; @@ -13,7 +12,6 @@ in { services.matrix-conduit = { enable = true; - package = flake-inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.matrix-conduit; settings.global = { address = "127.0.0.1"; server_name = domain; From 0d43b5177d3046fd818204dbc8fffcd2f02d3649 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 13 Apr 2024 04:34:53 +0200 Subject: [PATCH 108/196] treewide: Refactor nginx config --- configuration/services/conduit.nix | 2 +- configuration/services/foundryvtt.nix | 5 +- configuration/services/gitea.nix | 5 +- configuration/services/metrics/grafana.nix | 5 +- configuration/services/nextcloud.nix | 4 +- configuration/services/webserver.nix | 5 +- modules/default.nix | 24 ++------- modules/nginxExtensions.nix | 59 ++++++++++++++++++++++ 8 files changed, 68 insertions(+), 41 deletions(-) create mode 100644 modules/nginxExtensions.nix diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index cae2510..3fcadeb 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -212,9 +212,9 @@ in { ]; forceSSL = true; + enableHSTS = true; extraConfig = '' merge_slashes off; - access_log /var/log/nginx/${domain}/access.log upstream_time; ''; locations = { diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index 069f336..51b0212 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -25,10 +25,7 @@ in { in { forceSSL = true; enableACME = true; - extraConfig = '' - add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; - access_log /var/log/nginx/${domain}/access.log upstream_time; - ''; + enableHSTS = true; locations."/" = { proxyWebsockets = true; diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 41b8583..ffd21dc 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -42,10 +42,7 @@ in { in { forceSSL = true; enableACME = true; - extraConfig = '' - add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; - access_log /var/log/nginx/${domain}/access.log upstream_time; - ''; + enableHSTS = true; locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; locations."/metrics" = { diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index 8538dc7..75b9777 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -39,10 +39,7 @@ in { services.nginx.virtualHosts."${domain}" = { forceSSL = true; enableACME = true; - extraConfig = '' - add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; - access_log /var/log/nginx/${domain}/access.log upstream_time; - ''; + enableHSTS = true; locations."/".proxyPass = "http://localhost:${toString config.services.grafana.settings.server.http_port}"; }; } diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 3ba967a..73e075e 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -46,9 +46,7 @@ in { services.nginx.virtualHosts."${hostName}" = { forceSSL = true; enableACME = true; - extraConfig = '' - access_log /var/log/nginx/${hostName}/access.log upstream_time; - ''; + # The upstream module already adds HSTS }; # Block repeated failed login attempts diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index 085b1f7..defcae1 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -17,10 +17,7 @@ in { forceSSL = true; enableACME = true; - extraConfig = '' - add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; - access_log /var/log/nginx/${domain}/access.log upstream_time; - ''; + enableHSTS = true; locations."/".proxyPass = "http://${addr}:${toString port}"; }; diff --git a/modules/default.nix b/modules/default.nix index de1c7c2..9341a5a 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1,23 +1,5 @@ { - pkgs, - config, - lib, - ... -}: { - options.services.nginx.domain = lib.mkOption { - type = lib.types.str; - description = "The base domain name to append to virtual domain names"; - }; - - config = { - # Don't attempt to run acme if the domain name is not tlater.net - systemd.services = let - confirm = ''[[ "tlater.net" = ${config.services.nginx.domain} ]]''; - in - lib.mapAttrs' (cert: _: - lib.nameValuePair "acme-${cert}" { - serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; - }) - config.security.acme.certs; - }; + imports = [ + ./nginxExtensions.nix + ]; } diff --git a/modules/nginxExtensions.nix b/modules/nginxExtensions.nix new file mode 100644 index 0000000..9fe489a --- /dev/null +++ b/modules/nginxExtensions.nix @@ -0,0 +1,59 @@ +{ + config, + pkgs, + lib, + ... +}: { + options = { + services.nginx.domain = lib.mkOption { + type = lib.types.str; + description = "The base domain name to append to virtual domain names"; + }; + + services.nginx.virtualHosts = let + extraVirtualHostOptions = { + name, + config, + ... + }: { + options = { + enableHSTS = lib.mkEnableOption "Enable HSTS"; + + addAccessLog = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Add special logging to `/var/log/nginx/''${serverName}` + ''; + }; + }; + + config = { + extraConfig = lib.concatStringsSep "\n" [ + (lib.optionalString config.enableHSTS '' + add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + '') + (lib.optionalString config.addAccessLog '' + access_log /var/log/nginx/${name}/access.log upstream_time; + '') + ]; + }; + }; + in + lib.mkOption { + type = lib.types.attrsOf (lib.types.submodule extraVirtualHostOptions); + }; + }; + + config = { + # Don't attempt to run acme if the domain name is not tlater.net + systemd.services = let + confirm = ''[[ "tlater.net" = ${config.services.nginx.domain} ]]''; + in + lib.mapAttrs' (cert: _: + lib.nameValuePair "acme-${cert}" { + serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; + }) + config.security.acme.certs; + }; +} From 8f178f776e2dae3483097c49d795e485e5e7070d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 15 Apr 2024 02:58:09 +0200 Subject: [PATCH 109/196] afvalcalendar: Host enschede afvalcalendar --- configuration/default.nix | 1 + configuration/services/afvalcalendar.nix | 67 + pkgs/afvalcalendar/Cargo.lock | 1430 ++++++++++++++++++++++ pkgs/afvalcalendar/Cargo.toml | 16 + pkgs/afvalcalendar/default.nix | 20 + pkgs/afvalcalendar/src/calendar.rs | 43 + pkgs/afvalcalendar/src/main.rs | 10 + pkgs/afvalcalendar/src/trash.rs | 59 + pkgs/afvalcalendar/test.rest | 4 + pkgs/default.nix | 1 + 10 files changed, 1651 insertions(+) create mode 100644 configuration/services/afvalcalendar.nix create mode 100644 pkgs/afvalcalendar/Cargo.lock create mode 100644 pkgs/afvalcalendar/Cargo.toml create mode 100644 pkgs/afvalcalendar/default.nix create mode 100644 pkgs/afvalcalendar/src/calendar.rs create mode 100644 pkgs/afvalcalendar/src/main.rs create mode 100644 pkgs/afvalcalendar/src/trash.rs create mode 100644 pkgs/afvalcalendar/test.rest diff --git a/configuration/default.nix b/configuration/default.nix index b4601b1..6f93440 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -14,6 +14,7 @@ "${modulesPath}/profiles/minimal.nix" (import ../modules) + ./services/afvalcalendar.nix ./services/backups.nix ./services/battery-manager.nix ./services/conduit.nix diff --git a/configuration/services/afvalcalendar.nix b/configuration/services/afvalcalendar.nix new file mode 100644 index 0000000..0219e88 --- /dev/null +++ b/configuration/services/afvalcalendar.nix @@ -0,0 +1,67 @@ +{ + pkgs, + config, + ... +}: { + systemd.services.afvalcalendar = { + description = "Enschede afvalcalendar -> ical converter"; + wantedBy = ["multi-user.target"]; + after = ["network.target"]; + + script = '' + ${pkgs.local.afvalcalendar}/bin/afvalcalendar > /srv/afvalcalendar/afvalcalendar.ical + ''; + + startAt = "daily"; + + serviceConfig = { + DynamicUser = true; + ProtectHome = true; # Override the default (read-only) + PrivateDevices = true; + PrivateIPC = true; + PrivateUsers = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + RestrictAddressFamilies = ["AF_UNIX" "AF_INET" "AF_INET6"]; + RestrictNamespaces = true; + LockPersonality = true; + MemoryDenyWriteExecute = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + SystemCallFilter = ["@system-service" "~@privileged @resources @setuid @keyring"]; + + Umask = 0002; + SupplementaryGroups = "afvalcalendar-hosting"; + + ReadWritePaths = "/srv/afvalcalendar"; + }; + }; + + services.nginx.virtualHosts."afvalcalendar.${config.services.nginx.domain}" = { + forceSSL = true; + enableACME = true; + enableHSTS = true; + + root = "/srv/afvalcalendar"; + }; + + users.groups.afvalcalendar-hosting = {}; + systemd.tmpfiles.settings."10-afvalcalendar" = { + "/srv/afvalcalendar".d = { + user = "nginx"; + group = "afvalcalendar-hosting"; + mode = "0775"; + }; + + "/srv/afvalcalendar/afvalcalendar.ical".f = { + user = "nginx"; + group = "afvalcalendar-hosting"; + mode = "0775"; + }; + }; +} diff --git a/pkgs/afvalcalendar/Cargo.lock b/pkgs/afvalcalendar/Cargo.lock new file mode 100644 index 0000000..24cace4 --- /dev/null +++ b/pkgs/afvalcalendar/Cargo.lock @@ -0,0 +1,1430 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "afvalcalendar" +version = "0.1.0" +dependencies = [ + "chrono", + "hostname", + "icalendar", + "reqwest", + "serde", + "serde_json", + "serde_repr", + "tokio", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "backtrace" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" + +[[package]] +name = "bumpalo" +version = "3.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d32a994c2b3ca201d9b263612a374263f05e7adde37c4707f693dcd375076d1f" + +[[package]] +name = "bytes" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" + +[[package]] +name = "cc" +version = "1.0.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.52.0", +] + +[[package]] +name = "cookie" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" +dependencies = [ + "percent-encoding", + "time", + "version_check", +] + +[[package]] +name = "cookie_store" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6" +dependencies = [ + "cookie", + "idna 0.3.0", + "log", + "publicsuffix", + "serde", + "serde_derive", + "serde_json", + "time", + "url", +] + +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "encoding_rs" +version = "0.8.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "fastrand" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures-channel" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +dependencies = [ + "futures-core", +] + +[[package]] +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-sink" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-core", + "futures-task", + "pin-project-lite", + "pin-utils", +] + +[[package]] +name = "getrandom" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gimli" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" + +[[package]] +name = "h2" +version = "0.3.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http", + "indexmap", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" + +[[package]] +name = "hermit-abi" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd" + +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + +[[package]] +name = "http" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +dependencies = [ + "bytes", + "http", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "hyper" +version = "0.14.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "icalendar" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa4ffbcf3325ae94554c5259ce0b8907d37133c066cb3d424a2fa96aa1f10088" +dependencies = [ + "chrono", + "iso8601", + "nom", + "uuid", +] + +[[package]] +name = "idna" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "indexmap" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "ipnet" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" + +[[package]] +name = "iso8601" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "924e5d73ea28f59011fec52a0d12185d496a9b075d360657aed2a5707f701153" +dependencies = [ + "nom", +] + +[[package]] +name = "itoa" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" + +[[package]] +name = "js-sys" +version = "0.3.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.153" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" + +[[package]] +name = "linux-raw-sys" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + +[[package]] +name = "memchr" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" +dependencies = [ + "libc", + "wasi", + "windows-sys 0.48.0", +] + +[[package]] +name = "native-tls" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +dependencies = [ + "lazy_static", + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-traits" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "object" +version = "0.32.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "openssl" +version = "0.10.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" +dependencies = [ + "bitflags 2.4.2", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "openssl-sys" +version = "0.9.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae94056a791d0e1217d18b6cbdccb02c61e3054fc69893607f4067e3bb0b1fd1" +dependencies = [ + "cc", + "libc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "pin-project-lite" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "proc-macro2" +version = "1.0.78" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "psl-types" +version = "2.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac" + +[[package]] +name = "publicsuffix" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96a8c1bda5ae1af7f99a2962e49df150414a43d62404644d98dd5c3a93d07457" +dependencies = [ + "idna 0.3.0", + "psl-types", +] + +[[package]] +name = "quote" +version = "1.0.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "reqwest" +version = "0.11.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251" +dependencies = [ + "base64", + "bytes", + "cookie", + "cookie_store", + "encoding_rs", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "hyper", + "hyper-tls", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls-pemfile", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper", + "system-configuration", + "tokio", + "tokio-native-tls", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "winreg", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustix" +version = "0.38.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" +dependencies = [ + "bitflags 2.4.2", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64", +] + +[[package]] +name = "ryu" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" + +[[package]] +name = "schannel" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "security-framework" +version = "2.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "serde" +version = "1.0.196" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.196" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.114" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_repr" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "socket2" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "syn" +version = "2.0.49" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915aea9e586f80826ee59f8453c1101f9d1c4b3964cd2460185ee8e299ada496" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "tempfile" +version = "3.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67" +dependencies = [ + "cfg-if", + "fastrand", + "rustix", + "windows-sys 0.52.0", +] + +[[package]] +name = "time" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "pin-project-lite", + "socket2", + "tokio-macros", + "windows-sys 0.48.0", +] + +[[package]] +name = "tokio-macros" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tokio-native-tls" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +dependencies = [ + "native-tls", + "tokio", +] + +[[package]] +name = "tokio-util" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", + "tracing", +] + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "pin-project-lite", + "tracing-core", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "url" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +dependencies = [ + "form_urlencoded", + "idna 0.5.0", + "percent-encoding", +] + +[[package]] +name = "uuid" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" +dependencies = [ + "getrandom", + "wasm-bindgen", +] + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" + +[[package]] +name = "web-sys" +version = "0.3.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.0", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.0", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] diff --git a/pkgs/afvalcalendar/Cargo.toml b/pkgs/afvalcalendar/Cargo.toml new file mode 100644 index 0000000..f37dff1 --- /dev/null +++ b/pkgs/afvalcalendar/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "afvalcalendar" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +icalendar = "0.16.0" +serde = { version = "1.0.195", features = ["derive"] } +tokio = { version = "1.35.1", features = ["macros", "rt-multi-thread"] } +reqwest = { version = "0.11", features = ["cookies", "json"] } +chrono = { version = "0.4.34", features = ["serde"] } +serde_json = "1.0.114" +serde_repr = "0.1.18" +hostname = "0.3.1" diff --git a/pkgs/afvalcalendar/default.nix b/pkgs/afvalcalendar/default.nix new file mode 100644 index 0000000..12e2af5 --- /dev/null +++ b/pkgs/afvalcalendar/default.nix @@ -0,0 +1,20 @@ +{ + pkgs, + rustPlatform, + ... +}: +rustPlatform.buildRustPackage { + pname = "afvalcalendar"; + version = "0.1.0"; + src = ./.; + + nativeBuildInputs = with pkgs; [ + pkg-config + ]; + + buildInputs = with pkgs; [ + openssl + ]; + + cargoHash = "sha256-JXx6aUKdKbUTBCwlBw5i1hZy8ofCfSrhLCwFzqdA8cI="; +} diff --git a/pkgs/afvalcalendar/src/calendar.rs b/pkgs/afvalcalendar/src/calendar.rs new file mode 100644 index 0000000..2c76d7f --- /dev/null +++ b/pkgs/afvalcalendar/src/calendar.rs @@ -0,0 +1,43 @@ +use chrono::{Duration, NaiveDate}; +use icalendar::{Alarm, Calendar, Component, Event, EventLike, Property}; + +use crate::trash::TrashType; + +pub(crate) fn calendar_from_pickup_dates(dates: Vec<(TrashType, NaiveDate)>) -> Calendar { + let mut ical = Calendar::new(); + ical.name("Twente Milieu Afvalkalender"); + + let events = dates.iter().map(|date| { + let description = match date.0 { + TrashType::Grey => "Restafval wordt opgehaald", + TrashType::Green => "GFT wordt opgehaald", + TrashType::Paper => "Papier wordt opgehaald", + TrashType::Packages => "Verpakkingen worden opgehaald", + }; + + let color = Property::new( + "COLOR", + match date.0 { + TrashType::Grey => "darkgray", + TrashType::Green => "darkgreen", + TrashType::Paper => "royalblue", + TrashType::Packages => "darkorange", + }, + ); + + let reminder = Alarm::display(description, -Duration::hours(5)); + + Event::new() + .all_day(date.1) + .summary(description) + .append_property(color) + .alarm(reminder) + .done() + }); + + for event in events { + ical.push(event); + } + + ical.done() +} diff --git a/pkgs/afvalcalendar/src/main.rs b/pkgs/afvalcalendar/src/main.rs new file mode 100644 index 0000000..b6a5fb0 --- /dev/null +++ b/pkgs/afvalcalendar/src/main.rs @@ -0,0 +1,10 @@ +mod calendar; +mod trash; + +#[tokio::main] +async fn main() { + let dates = trash::get_pickup_dates().await.unwrap(); + let calendar = calendar::calendar_from_pickup_dates(dates); + + calendar.print().unwrap(); +} diff --git a/pkgs/afvalcalendar/src/trash.rs b/pkgs/afvalcalendar/src/trash.rs new file mode 100644 index 0000000..89a84d0 --- /dev/null +++ b/pkgs/afvalcalendar/src/trash.rs @@ -0,0 +1,59 @@ +use chrono::{Months, NaiveDate, NaiveDateTime, Utc}; +use serde::Deserialize; +use serde_repr::Deserialize_repr; + +#[derive(Deserialize, Debug)] +#[serde(rename_all = "camelCase")] +struct CalendarAPIDatum { + pickup_dates: Vec, + pickup_type: TrashType, +} + +#[derive(Deserialize, Debug)] +#[serde(rename_all = "camelCase")] +struct CalendarAPIResponse { + data_list: Vec, +} + +#[derive(Copy, Clone, Deserialize_repr, Debug)] +#[repr(u8)] +pub(crate) enum TrashType { + Grey = 0, + Green = 1, + Paper = 2, + Packages = 10, +} + +pub(crate) async fn get_pickup_dates() -> Result, reqwest::Error> { + let today = Utc::now().date_naive(); + let next_month = (today + Months::new(1)).to_string(); + let today = today.to_string(); + + let client = reqwest::Client::new(); + + let params = [ + ("companyCode", "8d97bb56-5afd-4cbc-a651-b4f7314264b4"), + ("uniqueAddressID", "1300002485"), + ("startDate", &today), + ("endDate", &next_month), + ]; + + let calendar = client + .post("https://twentemilieuapi.ximmio.com/api/GetCalendar") + .form(¶ms) + .send() + .await? + .json::() + .await?; + + Ok(calendar + .data_list + .iter() + .flat_map(|datum| { + datum + .pickup_dates + .iter() + .map(|date| (datum.pickup_type, NaiveDate::from(*date))) + }) + .collect::>()) +} diff --git a/pkgs/afvalcalendar/test.rest b/pkgs/afvalcalendar/test.rest new file mode 100644 index 0000000..d2d409e --- /dev/null +++ b/pkgs/afvalcalendar/test.rest @@ -0,0 +1,4 @@ +POST https://twentemilieuapi.ximmio.com/api/GetCalendar +Content-Type: application/x-www-form-urlencoded + +companyCode=8d97bb56-5afd-4cbc-a651-b4f7314264b4&uniqueAddressID=1300002485&startDate=2024-02-01&endDate=2024-02-29 diff --git a/pkgs/default.nix b/pkgs/default.nix index 3130ae0..3162787 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -10,6 +10,7 @@ in prometheus-fail2ban-exporter = callPackage ./prometheus/fail2ban-exporter.nix { sources = pkgs.callPackage ./_sources_pkgs/generated.nix {}; }; + afvalcalendar = callPackage ./afvalcalendar {}; } // ( # Add nextcloud apps From e16f3be3264bb87b9f8de701d6a991dc2f3c4efb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 16 Apr 2024 01:08:13 +0200 Subject: [PATCH 110/196] acme: Switch to a wildcard certificate --- configuration/nginx.nix | 7 +++++++ configuration/services/afvalcalendar.nix | 2 +- configuration/services/conduit.nix | 2 +- configuration/services/foundryvtt.nix | 2 +- configuration/services/gitea.nix | 2 +- configuration/services/metrics/grafana.nix | 2 +- configuration/services/nextcloud.nix | 2 +- configuration/services/webserver.nix | 2 +- configuration/sops.nix | 4 ++++ keys/production.yaml | 5 +++-- keys/staging.yaml | 5 +++-- 11 files changed, 24 insertions(+), 11 deletions(-) diff --git a/configuration/nginx.nix b/configuration/nginx.nix index 14ba9d9..82baab0 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -49,6 +49,13 @@ security.acme = { defaults.email = "tm@tlater.net"; acceptTerms = true; + + certs."tlater.net" = { + extraDomainNames = ["*.tlater.net"]; + dnsProvider = "hetzner"; + group = "nginx"; + credentialFiles."HETZNER_API_KEY_FILE" = config.sops.secrets."hetzner-api".path; + }; }; services.backups.acme = { diff --git a/configuration/services/afvalcalendar.nix b/configuration/services/afvalcalendar.nix index 0219e88..e27ba62 100644 --- a/configuration/services/afvalcalendar.nix +++ b/configuration/services/afvalcalendar.nix @@ -44,7 +44,7 @@ services.nginx.virtualHosts."afvalcalendar.${config.services.nginx.domain}" = { forceSSL = true; - enableACME = true; + useACMEHost = "tlater.net"; enableHSTS = true; root = "/srv/afvalcalendar"; diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 3fcadeb..2462d9b 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -178,7 +178,7 @@ in { }; services.nginx.virtualHosts."${domain}" = { - enableACME = true; + useACMEHost = "tlater.net"; listen = [ { diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index 51b0212..ac206fc 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -24,7 +24,7 @@ in { inherit (config.services.foundryvtt) port; in { forceSSL = true; - enableACME = true; + useACMEHost = "tlater.net"; enableHSTS = true; locations."/" = { diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index ffd21dc..26fe2f8 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -41,7 +41,7 @@ in { httpPort = config.services.forgejo.settings.server.HTTP_PORT; in { forceSSL = true; - enableACME = true; + useACMEHost = "tlater.net"; enableHSTS = true; locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index 75b9777..eb5106e 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -38,7 +38,7 @@ in { services.nginx.virtualHosts."${domain}" = { forceSSL = true; - enableACME = true; + useACMEHost = "tlater.net"; enableHSTS = true; locations."/".proxyPass = "http://localhost:${toString config.services.grafana.settings.server.http_port}"; }; diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 73e075e..bd36041 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -45,7 +45,7 @@ in { # Set up SSL services.nginx.virtualHosts."${hostName}" = { forceSSL = true; - enableACME = true; + useACMEHost = "tlater.net"; # The upstream module already adds HSTS }; diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index defcae1..387df57 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -16,7 +16,7 @@ in { serverAliases = ["www.${domain}"]; forceSSL = true; - enableACME = true; + useACMEHost = "tlater.net"; enableHSTS = true; locations."/".proxyPass = "http://${addr}:${toString port}"; diff --git a/configuration/sops.nix b/configuration/sops.nix index 53044fc..0746133 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -34,6 +34,10 @@ "heisenbridge/as-token" = {}; "heisenbridge/hs-token" = {}; + "hetzner-api" = { + owner = "acme"; + }; + # Nextcloud "nextcloud/tlater" = { owner = "nextcloud"; diff --git a/keys/production.yaml b/keys/production.yaml index 7ed57b3..da90860 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -1,3 +1,4 @@ +hetzner-api: ENC[AES256_GCM,data:OsUfo86AzcBe/OELkfB5brEfsZ4gkbeehxwIVUBwQgE=,iv:Bt/cjlZ6oZEVUOQjWMDL7/mfL3HWLFAw1tEGeLMgeKg=,tag:TMU2XiHlMgP4aes10mIQYQ==,type:str] battery-manager: email: ENC[AES256_GCM,data:rYLUACXR/n+bLBmZ,iv:sUBEkh2+7qGjHZ5R23e/hoCiyTA7GTL4bJvXmxjZ5Sw=,tag:fdPMllaQQfRgX0WZKIre4g==,type:str] password: ENC[AES256_GCM,data:7cokZa6Q6ahSeiFPz+cV,iv:vz405P0IcG9FsAQXlY7mi78GuushQUKJm2irG6buGzc=,tag:JLHG2jTkJDGbinAq9dXRsQ==,type:str] @@ -31,8 +32,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-04-06T15:32:49Z" - mac: ENC[AES256_GCM,data:ShqLJf9b20LdmjK6MMPtI3KicE+fPc0ejzVGEIdgbNs7ueDwdt7jqgpDrpiyf+vW86tr3I1E1VTlh127XlSH/RZDRRHehpX0tnBiF0zMscmt1vdinY4cPhTwhLJ1fdpVpY8ihdOqv0UFyC39HP78aWESX5S/dJZQ6vS7K5VGKTY=,iv:TYE9f9iyrUQxmMeKXApEYsSPcMWK8vndyBm7HtJyJPo=,tag:vSlobwA1R0Go7BYgNVpMkw==,type:str] + lastmodified: "2024-04-15T23:13:18Z" + mac: ENC[AES256_GCM,data:3/v+WgSWJ+VcBSBe1Wkis3z+tMmSjbKzLFqBB8xugc6DvgQG8J+1HRrPucLnpNNtEdmpyoTa72U6fPm6JnyUsuj5pLEghLprOJkqQNdRI06fllhw+9d3e3twx6D4oIIsVH6/io4ElXrGsGQTsfNbYhgn+987wa3WP5N25fBac3U=,iv:FL3tzPutOMN6IPkQfXIu/JOZT+OzUSqpMSQrUeXZQHE=,tag:jL1BTsYTA9XjrsjFszxZhA==,type:str] pgp: - created_at: "2024-03-18T04:02:00Z" enc: |- diff --git a/keys/staging.yaml b/keys/staging.yaml index 029e6ac..17e7875 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -1,3 +1,4 @@ +hetzner-api: ENC[AES256_GCM,data:1Zjp003j60g=,iv:+vDcyiqYm4A9CMIrW4oGZKdZiczatBcvfL4qYYhKwCg=,tag:Xeu8JuRm+b+5RO+wFR2M8w==,type:str] battery-manager: email: ENC[AES256_GCM,data:LM/EGzWHfVQ=,iv:jFaoUQuUfuGoOyj/GFpdI8TerH/c8D9fjvio+IEt2Tc=,tag:IWLiN011JEnHRLIXWQgfmA==,type:str] password: ENC[AES256_GCM,data:SUxjqS7SJHM=,iv:LvdKk88S+nSImh6/ZezbFGLCUBu1Lpdu+neF2xyHdBg=,tag:rcMyZuW4FVNbcbz00wQKBg==,type:str] @@ -31,8 +32,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-04-06T15:33:40Z" - mac: ENC[AES256_GCM,data:qB9uDDM5K6+BmeAKyTJ0Sel6Um0Fc9IhdV3wAn13WxpwDtxmMsdqnwaewI/KepsRG3k76x9vkYL+oKkUysqq1r1FkocUDg4DnKnf1KtKo2Zm9MPcVRG833m6oDoTeGnmgrAMTDKy1tUdGkXW40IfbMakbSjSIfLbrymtoHeVbaE=,iv:8P8M4Ueo3Idlgo+Yqj6JUtFfWX949fz6HfRHEOy1/Vg=,tag:ou+IGZSQSfX6gNoxbpAipg==,type:str] + lastmodified: "2024-04-15T23:13:27Z" + mac: ENC[AES256_GCM,data:JhEVrKF2Jsqpdztcr3g5lMrgEFeLXfBRQTwQJ6PmLSNyDORcTU09TJPNWTPDnR5okDrvIU/wlzi5DZ8A0ebNhrKf6l0tNFBT9LSvQFHU5SBxqY/m8uEJKSrEC4IL5lugOOISDka2KSvYXVCXrumMHE5FnmOS/CgOZaZk6LUjPYA=,iv:ygygnSedcTo2Vsc56s2qrz1qkWchvSgvoiMTebRxQQ8=,tag:vf6z8rxsXmqzwpDy9Avifw==,type:str] pgp: - created_at: "2023-12-29T15:25:27Z" enc: | From 5ddd9914e4b650114d6993d89dd4477e02ba94d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 29 Apr 2024 09:20:14 +0200 Subject: [PATCH 111/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/0a17298c0d96190ef3be729d594ba202b9c53beb' (2024-04-05) → 'github:nix-community/disko/285e26465a0bae510897ca04da26ce6307c652b4' (2024-04-26) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/0e61d84370fd051d873216553d09e596b7ad3a34' (2024-03-17) → 'github:reckenrode/nix-foundryvtt/6025615b431170558c3c13f16b549fc0126425e1' (2024-04-09) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06) → 'github:nixos/nixpkgs/12430e43bd9b81a6b4e79e64f87c624ade701eaf' (2024-04-28) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/ff0dbd94265ac470dda06a657d5fe49de93b4599' (2024-04-06) → 'github:nixos/nixpkgs/58a1abdbae3217ca6b702f03d3b35125d88a2994' (2024-04-27) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/1463db224a54cbc9499860ef5a51a9b6bf7c3180' (2024-04-08) → 'github:berberman/nvfetcher/2a824322dc6a755ffda83a13b948d42304521e4d' (2024-04-17) • Updated input 'sops-nix': 'github:Mic92/sops-nix/39191e8e6265b106c9a2ba0cfd3a4dafe98a31c6' (2024-04-07) → 'github:Mic92/sops-nix/f1b0adc27265274e3b0c9b872a8f476a098679bd' (2024-04-23) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/e38d7cb66ea4f7a0eb6681920615dfcc30fc2920' (2024-04-06) → 'github:NixOS/nixpkgs/74574c38577914733b4f7a775dd77d24245081dd' (2024-04-20) --- flake.lock | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/flake.lock b/flake.lock index be3a0e2..dce5748 100644 --- a/flake.lock +++ b/flake.lock @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1712356478, - "narHash": "sha256-kTcEtrQIRnexu5lAbLsmUcfR2CrmsACF1s3ZFw1NEVA=", + "lastModified": 1714103775, + "narHash": "sha256-kcBiIrmqzt3bNTr2GMBfAyA+on8BEKO1iKzzDFQZkjI=", "owner": "nix-community", "repo": "disko", - "rev": "0a17298c0d96190ef3be729d594ba202b9c53beb", + "rev": "285e26465a0bae510897ca04da26ce6307c652b4", "type": "github" }, "original": { @@ -157,11 +157,11 @@ ] }, "locked": { - "lastModified": 1710638592, - "narHash": "sha256-R6477tybK4LBP8MKlmMyvndTcZR1Ofi/XA9nDEVcViY=", + "lastModified": 1712623723, + "narHash": "sha256-jPD5+M+QPyMRk52zfFMIeHdv7yXYJ/yNGqwS0PhYF+E=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "0e61d84370fd051d873216553d09e596b7ad3a34", + "rev": "6025615b431170558c3c13f16b549fc0126425e1", "type": "github" }, "original": { @@ -210,11 +210,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1712437997, - "narHash": "sha256-g0whLLwRvgO2FsyhY8fNk+TWenS3jg5UdlWL4uqgFeo=", + "lastModified": 1713638189, + "narHash": "sha256-q7APLfB6FmmSMI1Su5ihW9IwntBsk2hWNXh8XtSdSIk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e38d7cb66ea4f7a0eb6681920615dfcc30fc2920", + "rev": "74574c38577914733b4f7a775dd77d24245081dd", "type": "github" }, "original": { @@ -226,11 +226,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1712439257, - "narHash": "sha256-aSpiNepFOMk9932HOax0XwNxbA38GOUVOiXfUVPOrck=", + "lastModified": 1714253743, + "narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ff0dbd94265ac470dda06a657d5fe49de93b4599", + "rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1712437997, - "narHash": "sha256-g0whLLwRvgO2FsyhY8fNk+TWenS3jg5UdlWL4uqgFeo=", + "lastModified": 1714272655, + "narHash": "sha256-3/ghIWCve93ngkx5eNPdHIKJP/pMzSr5Wc4rNKE1wOc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e38d7cb66ea4f7a0eb6681920615dfcc30fc2920", + "rev": "12430e43bd9b81a6b4e79e64f87c624ade701eaf", "type": "github" }, "original": { @@ -281,11 +281,11 @@ ] }, "locked": { - "lastModified": 1712538578, - "narHash": "sha256-+fFOtg2fQK6kafSucYDpMG8ENXgo52+YSQtCoXv/+Ik=", + "lastModified": 1713333471, + "narHash": "sha256-sIVQKOXzruxtTYiBRHZa8UQH+CSIa9K5MZlY6vavYfA=", "owner": "berberman", "repo": "nvfetcher", - "rev": "1463db224a54cbc9499860ef5a51a9b6bf7c3180", + "rev": "2a824322dc6a755ffda83a13b948d42304521e4d", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1712458908, - "narHash": "sha256-DMgBS+jNHDg8z3g9GkwqL8xTKXCRQ/0FGsAyrniVonc=", + "lastModified": 1713892811, + "narHash": "sha256-uIGmA2xq41vVFETCF1WW4fFWFT2tqBln+aXnWrvjGRE=", "owner": "Mic92", "repo": "sops-nix", - "rev": "39191e8e6265b106c9a2ba0cfd3a4dafe98a31c6", + "rev": "f1b0adc27265274e3b0c9b872a8f476a098679bd", "type": "github" }, "original": { From d8f1b9941e809dec932d2eb089f64a2563004ae6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 29 Apr 2024 09:46:11 +0200 Subject: [PATCH 112/196] nextcloud: Update apps --- pkgs/_sources_nextcloud/generated.json | 6 +++--- pkgs/_sources_nextcloud/generated.nix | 6 +++--- pkgs/nextcloud-apps.toml | 15 ++++++++++----- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index c45e204..ce9ac04 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-h6RWWIQzpwObDmcGnZPwVwIJZFUXgggeCKBNwI/wDIo=", + "sha256": "sha256-ydpxatwuZUz7XIgK8FMklZlxNQklpsP8Uqpxvt3iK0k=", "type": "tarball", - "url": "https://github.com/nextcloud/notes/releases/download/v4.9.4/notes.tar.gz" + "url": "https://github.com/nextcloud/notes/releases/download/v4.10.0/notes.tar.gz" }, - "version": "v4.9.4" + "version": "v4.10.0" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 1d0f3a0..c77aa9c 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -43,10 +43,10 @@ }; notes = { pname = "notes"; - version = "v4.9.4"; + version = "v4.10.0"; src = fetchTarball { - url = "https://github.com/nextcloud/notes/releases/download/v4.9.4/notes.tar.gz"; - sha256 = "sha256-h6RWWIQzpwObDmcGnZPwVwIJZFUXgggeCKBNwI/wDIo="; + url = "https://github.com/nextcloud/notes/releases/download/v4.10.0/notes.tar.gz"; + sha256 = "sha256-ydpxatwuZUz7XIgK8FMklZlxNQklpsP8Uqpxvt3iK0k="; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 25ac8d9..36566db 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,24 +1,29 @@ [bookmarks] -src.github = "nextcloud/bookmarks" +# src.github = "nextcloud/bookmarks" src.prefix = "v" +src.manual = "v13.1.3" fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] -src.github = "nextcloud-releases/calendar" +# src.github = "nextcloud-releases/calendar" +src.manual = "v4.6.7" fetch.tarball = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" [contacts] -src.github = "nextcloud-releases/contacts" +# src.github = "nextcloud-releases/contacts" +src.manual = "v5.5.3" fetch.tarball = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] # src.github = "christianlupus-nextcloud/cookbook-releases" -src.manual = "v0.10.5" src.prefix = "v" +src.manual = "0.10.5" fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v$ver/Cookbook-$ver.tar.gz" [news] -src.github = "nextcloud/news" +# src.github = "nextcloud/news" +# Update to 25 when angular rewrite is done/the alpha when I need to switch to nextcloud 28+ +src.manual = "24.0.0" fetch.tarball = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" [notes] From 0312fbad3a1b88e2c9925a5f3d33f02d0750283e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 30 Apr 2024 06:09:04 +0200 Subject: [PATCH 113/196] afvalcalendar: Add proper error handling --- flake.nix | 10 +++++++++- pkgs/afvalcalendar/src/main.rs | 13 +++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/flake.nix b/flake.nix index f9941ba..ae22b2e 100644 --- a/flake.nix +++ b/flake.nix @@ -140,9 +140,17 @@ sops-nix.packages.${system}.sops-import-keys-hook ]; - packages = [ + packages = with pkgs; [ sops-nix.packages.${system}.sops-init-gpg-key deploy-rs.packages.${system}.default + + cargo + clippy + rustc + rustfmt + rust-analyzer + pkg-config + openssl ]; }; }; diff --git a/pkgs/afvalcalendar/src/main.rs b/pkgs/afvalcalendar/src/main.rs index b6a5fb0..e8023f7 100644 --- a/pkgs/afvalcalendar/src/main.rs +++ b/pkgs/afvalcalendar/src/main.rs @@ -3,8 +3,13 @@ mod trash; #[tokio::main] async fn main() { - let dates = trash::get_pickup_dates().await.unwrap(); - let calendar = calendar::calendar_from_pickup_dates(dates); - - calendar.print().unwrap(); + match trash::get_pickup_dates().await { + Ok(dates) => { + let calendar = calendar::calendar_from_pickup_dates(dates); + calendar.print().unwrap(); + } + Err(error) => { + eprintln!("{}", error); + } + } } From 501c3466bc0d44fa49c07284765463f28ff5b4f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 14 Jun 2024 00:49:12 +0200 Subject: [PATCH 114/196] Update to NixOS 24.05 --- configuration/default.nix | 5 ++++- configuration/services/nextcloud.nix | 12 +++++++----- flake.lock | 8 ++++---- flake.nix | 2 +- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 6f93440..3b580eb 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -131,7 +131,10 @@ sudo.execWheelOnly = true; pam = { - enableSSHAgentAuth = true; + sshAgentAuth = { + enable = true; + authorizedKeysFiles = ["/etc/ssh/authorized_keys.d/%u"]; + }; services.sudo.sshAgentAuth = true; }; }; diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index bd36041..2c7fe4f 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -3,6 +3,9 @@ config, ... }: let + # Update pending on rewrite of nextcloud news, though there is an + # alpha to switch to if it becomes necessary: + # https://github.com/nextcloud/news/issues/2610 nextcloud = pkgs.nextcloud27; hostName = "nextcloud.${config.services.nginx.domain}"; in { @@ -17,15 +20,16 @@ in { configureRedis = true; config = { - overwriteProtocol = "https"; - dbtype = "pgsql"; dbhost = "/run/postgresql"; adminuser = "tlater"; adminpassFile = config.sops.secrets."nextcloud/tlater".path; + }; - defaultPhoneRegion = "AT"; + settings = { + default_phone_region = "AT"; + overwriteprotocol = "https"; }; phpOptions = { @@ -37,8 +41,6 @@ in { }; }; - services.redis.vmOverCommit = true; - # Ensure that this service doesn't start before postgres is ready systemd.services.nextcloud-setup.after = ["postgresql.service"]; diff --git a/flake.lock b/flake.lock index dce5748..3f8dcb9 100644 --- a/flake.lock +++ b/flake.lock @@ -242,16 +242,16 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1714272655, - "narHash": "sha256-3/ghIWCve93ngkx5eNPdHIKJP/pMzSr5Wc4rNKE1wOc=", + "lastModified": 1718208800, + "narHash": "sha256-US1tAChvPxT52RV8GksWZS415tTS7PV42KTc2PNDBmc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "12430e43bd9b81a6b4e79e64f87c624ade701eaf", + "rev": "cc54fb41d13736e92229c21627ea4f22199fee6b", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-23.11", + "ref": "nixos-24.05", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index ae22b2e..09a74ac 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; disko = { url = "github:nix-community/disko"; From fd138d45e6a2cad89fead6e9f246ba282070d6b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jun 2024 20:12:55 +0200 Subject: [PATCH 115/196] treewide: Start using nixpkgs-fmt formatting --- configuration/default.nix | 29 +- .../hardware-specific/hetzner/default.nix | 2 +- .../hardware-specific/hetzner/disko.nix | 132 +++++----- configuration/hardware-specific/vm.nix | 4 +- configuration/nginx.nix | 45 ++-- configuration/services/afvalcalendar.nix | 17 +- configuration/services/backups.nix | 152 +++++------ configuration/services/battery-manager.nix | 7 +- configuration/services/conduit.nix | 199 +++++++------- configuration/services/fail2ban.nix | 6 +- configuration/services/foundryvtt.nix | 43 +-- configuration/services/gitea.nix | 71 ++--- configuration/services/metrics/exporters.nix | 100 +++---- configuration/services/metrics/grafana.nix | 6 +- configuration/services/metrics/options.nix | 249 +++++++++--------- .../services/metrics/victoriametrics.nix | 6 +- configuration/services/nextcloud.nix | 15 +- configuration/services/postgres.nix | 2 +- configuration/services/starbound.nix | 19 +- configuration/services/webserver.nix | 26 +- configuration/services/wireguard.nix | 6 +- configuration/sops.nix | 8 +- flake.nix | 240 ++++++++--------- modules/nginxExtensions.nix | 84 +++--- pkgs/afvalcalendar/default.nix | 7 +- pkgs/default.nix | 37 +-- pkgs/mkNextcloudApp.nix | 6 +- pkgs/prometheus/fail2ban-exporter.nix | 6 +- pkgs/starbound/default.nix | 55 ++-- 29 files changed, 812 insertions(+), 767 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 3b580eb..b933d19 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,10 +1,9 @@ -{ - config, - pkgs, - lib, - modulesPath, - flake-inputs, - ... +{ config +, pkgs +, lib +, modulesPath +, flake-inputs +, ... }: { imports = [ flake-inputs.disko.nixosModules.disko @@ -47,15 +46,15 @@ ''; # Enable remote builds from tlater - settings.trusted-users = ["@wheel"]; + settings.trusted-users = [ "@wheel" ]; }; nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) ["steam-original" "steam-runtime" "steam-run" "steamcmd"]; + builtins.elem (lib.getName pkg) [ "steam-original" "steam-runtime" "steam-run" "steamcmd" ]; # Optimization for minecraft servers, see: # https://bugs.mojang.com/browse/MC-183518 - boot.kernelParams = ["highres=off" "nohz=off"]; + boot.kernelParams = [ "highres=off" "nohz=off" ]; networking = { usePredictableInterfaceNames = false; @@ -106,15 +105,15 @@ users.users.tlater = { isNormalUser = true; - extraGroups = ["wheel"]; - openssh.authorizedKeys.keyFiles = [../keys/tlater.pub]; + extraGroups = [ "wheel" ]; + openssh.authorizedKeys.keyFiles = [ ../keys/tlater.pub ]; }; services = { openssh = { enable = true; allowSFTP = false; - ports = [2222]; + ports = [ 2222 ]; startWhenNeeded = true; settings = { @@ -133,14 +132,14 @@ pam = { sshAgentAuth = { enable = true; - authorizedKeysFiles = ["/etc/ssh/authorized_keys.d/%u"]; + authorizedKeysFiles = [ "/etc/ssh/authorized_keys.d/%u" ]; }; services.sudo.sshAgentAuth = true; }; }; # Remove some unneeded packages - environment.defaultPackages = []; + environment.defaultPackages = [ ]; system.stateVersion = "20.09"; } diff --git a/configuration/hardware-specific/hetzner/default.nix b/configuration/hardware-specific/hetzner/default.nix index 5ecf63a..3106f19 100644 --- a/configuration/hardware-specific/hetzner/default.nix +++ b/configuration/hardware-specific/hetzner/default.nix @@ -8,7 +8,7 @@ # disables it by default. # # TODO(tlater): See if would be useful for anything? - boot.kernelParams = ["nosgx"]; + boot.kernelParams = [ "nosgx" ]; networking.hostName = "hetzner-1"; services.nginx.domain = "tlater.net"; diff --git a/configuration/hardware-specific/hetzner/disko.nix b/configuration/hardware-specific/hetzner/disko.nix index e404688..a2ea764 100644 --- a/configuration/hardware-specific/hetzner/disko.nix +++ b/configuration/hardware-specific/hetzner/disko.nix @@ -1,82 +1,84 @@ { - disko.devices.disk = let - bootPartition = { - size = "1M"; - type = "EF02"; - }; - - swapPartition = { - # 8G is apparently recommended for this much RAM, but we set up - # 4G on both disks for mirroring purposes. - # - # That'll still be 8G during normal operation, and it's probably - # not too bad to have slightly less swap if a disk dies. - size = "4G"; - content = { - type = "swap"; - randomEncryption = true; + disko.devices.disk = + let + bootPartition = { + size = "1M"; + type = "EF02"; }; - }; - mountOptions = ["compress=zstd" "noatime"]; - in { - sda = { - type = "disk"; - device = "/dev/sda"; - content = { - type = "gpt"; - partitions = { - boot = bootPartition; - swap = swapPartition; + swapPartition = { + # 8G is apparently recommended for this much RAM, but we set up + # 4G on both disks for mirroring purposes. + # + # That'll still be 8G during normal operation, and it's probably + # not too bad to have slightly less swap if a disk dies. + size = "4G"; + content = { + type = "swap"; + randomEncryption = true; + }; + }; - disk1 = { - size = "100%"; - # Empty partition to combine in RAID0 with the other disk + mountOptions = [ "compress=zstd" "noatime" ]; + in + { + sda = { + type = "disk"; + device = "/dev/sda"; + content = { + type = "gpt"; + partitions = { + boot = bootPartition; + swap = swapPartition; + + disk1 = { + size = "100%"; + # Empty partition to combine in RAID0 with the other disk + }; }; }; }; - }; - sdb = { - type = "disk"; - device = "/dev/sdb"; - content = { - type = "gpt"; - partitions = { - boot = bootPartition; - swap = swapPartition; + sdb = { + type = "disk"; + device = "/dev/sdb"; + content = { + type = "gpt"; + partitions = { + boot = bootPartition; + swap = swapPartition; - disk2 = { - size = "100%"; - content = { - type = "btrfs"; - # Hack to get multi-device btrfs going - # See https://github.com/nix-community/disko/issues/99 - extraArgs = ["-d" "raid1" "-m" "raid1" "--runtime-features" "quota" "/dev/sda3"]; - subvolumes = { - "/volume" = {}; - "/volume/root" = { - inherit mountOptions; - mountpoint = "/"; + disk2 = { + size = "100%"; + content = { + type = "btrfs"; + # Hack to get multi-device btrfs going + # See https://github.com/nix-community/disko/issues/99 + extraArgs = [ "-d" "raid1" "-m" "raid1" "--runtime-features" "quota" "/dev/sda3" ]; + subvolumes = { + "/volume" = { }; + "/volume/root" = { + inherit mountOptions; + mountpoint = "/"; + }; + "/volume/home" = { + inherit mountOptions; + mountpoint = "/home"; + }; + "/volume/var" = { + inherit mountOptions; + mountpoint = "/var"; + }; + "/volume/nix-store" = { + inherit mountOptions; + mountpoint = "/nix"; + }; + "/snapshots" = { }; }; - "/volume/home" = { - inherit mountOptions; - mountpoint = "/home"; - }; - "/volume/var" = { - inherit mountOptions; - mountpoint = "/var"; - }; - "/volume/nix-store" = { - inherit mountOptions; - mountpoint = "/nix"; - }; - "/snapshots" = {}; }; }; }; }; }; }; - }; } diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 7f1fcf1..86fcaed 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -1,8 +1,8 @@ -{lib, ...}: { +{ lib, ... }: { users.users.tlater.password = "insecure"; # Disable graphical tty so -curses works - boot.kernelParams = ["nomodeset"]; + boot.kernelParams = [ "nomodeset" ]; networking.hostName = "testvm"; # Sets the base domain for nginx to a local domain so that we can diff --git a/configuration/nginx.nix b/configuration/nginx.nix index 82baab0..d696bba 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -1,7 +1,6 @@ -{ - config, - lib, - ... +{ config +, lib +, ... }: { services.nginx = { enable = true; @@ -27,31 +26,33 @@ # Override the default, just keep fewer logs nginx.rotate = 6; } - // lib.mapAttrs' (virtualHost: _: - lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { - frequency = "daily"; - rotate = 2; - compress = true; - delaycompress = true; - su = "${config.services.nginx.user} ${config.services.nginx.group}"; - postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; - }) - config.services.nginx.virtualHosts; + // lib.mapAttrs' + (virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + }) + config.services.nginx.virtualHosts; systemd.tmpfiles.rules = - lib.mapAttrsToList ( - virtualHost: _: - # - "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" - ) - config.services.nginx.virtualHosts; + lib.mapAttrsToList + ( + virtualHost: _: + # + "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" + ) + config.services.nginx.virtualHosts; security.acme = { defaults.email = "tm@tlater.net"; acceptTerms = true; certs."tlater.net" = { - extraDomainNames = ["*.tlater.net"]; + extraDomainNames = [ "*.tlater.net" ]; dnsProvider = "hetzner"; group = "nginx"; credentialFiles."HETZNER_API_KEY_FILE" = config.sops.secrets."hetzner-api".path; @@ -62,6 +63,6 @@ user = "acme"; paths = lib.mapAttrsToList (virtualHost: _: "/var/lib/acme/${virtualHost}") - config.services.nginx.virtualHosts; + config.services.nginx.virtualHosts; }; } diff --git a/configuration/services/afvalcalendar.nix b/configuration/services/afvalcalendar.nix index e27ba62..28e3a75 100644 --- a/configuration/services/afvalcalendar.nix +++ b/configuration/services/afvalcalendar.nix @@ -1,12 +1,11 @@ -{ - pkgs, - config, - ... +{ pkgs +, config +, ... }: { systemd.services.afvalcalendar = { description = "Enschede afvalcalendar -> ical converter"; - wantedBy = ["multi-user.target"]; - after = ["network.target"]; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; script = '' ${pkgs.local.afvalcalendar}/bin/afvalcalendar > /srv/afvalcalendar/afvalcalendar.ical @@ -26,14 +25,14 @@ ProtectKernelModules = true; ProtectKernelLogs = true; ProtectControlGroups = true; - RestrictAddressFamilies = ["AF_UNIX" "AF_INET" "AF_INET6"]; + RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; RestrictNamespaces = true; LockPersonality = true; MemoryDenyWriteExecute = true; RestrictRealtime = true; RestrictSUIDSGID = true; SystemCallArchitectures = "native"; - SystemCallFilter = ["@system-service" "~@privileged @resources @setuid @keyring"]; + SystemCallFilter = [ "@system-service" "~@privileged @resources @setuid @keyring" ]; Umask = 0002; SupplementaryGroups = "afvalcalendar-hosting"; @@ -50,7 +49,7 @@ root = "/srv/afvalcalendar"; }; - users.groups.afvalcalendar-hosting = {}; + users.groups.afvalcalendar-hosting = { }; systemd.tmpfiles.settings."10-afvalcalendar" = { "/srv/afvalcalendar".d = { user = "nginx"; diff --git a/configuration/services/backups.nix b/configuration/services/backups.nix index 98aa473..7c77399 100644 --- a/configuration/services/backups.nix +++ b/configuration/services/backups.nix @@ -1,9 +1,9 @@ -{ - config, - pkgs, - lib, - ... -}: let +{ config +, pkgs +, lib +, ... +}: +let inherit (lib) types optional singleton; mkShutdownScript = service: pkgs.writeShellScript "backup-${service}-shutdown" '' @@ -42,17 +42,17 @@ RESTIC_REPOSITORY = "rclone:storagebox:backups"; RCLONE_CONFIG = rcloneConfig; }; -in { +in +{ options = { services.backups = lib.mkOption { description = lib.mdDoc '' Configure restic backups with a specific tag. ''; - type = types.attrsOf (types.submodule ({ - config, - name, - ... - }: { + type = types.attrsOf (types.submodule ({ config + , name + , ... + }: { options = { user = lib.mkOption { type = types.str; @@ -76,7 +76,7 @@ in { preparation = { packages = lib.mkOption { type = types.listOf types.package; - default = []; + default = [ ]; description = '' The list of packages to make available in the preparation script. @@ -97,7 +97,7 @@ in { cleanup = { packages = lib.mkOption { type = types.listOf types.package; - default = []; + default = [ ]; description = '' The list of packages to make available in the cleanup script. @@ -116,7 +116,7 @@ in { }; pauseServices = lib.mkOption { type = types.listOf types.str; - default = []; + default = [ ]; description = '' The systemd services that need to be shut down before the backup can run. Services will be restarted after the @@ -131,7 +131,7 @@ in { }; }; - config = lib.mkIf (config.services.backups != {}) { + config = lib.mkIf (config.services.backups != { }) { systemd.services = { restic-prune = { @@ -164,79 +164,81 @@ in { }; }; } - // lib.mapAttrs' (name: backup: - lib.nameValuePair "backup-${name}" { - # Don't want to restart mid-backup - restartIfChanged = false; + // lib.mapAttrs' + (name: backup: + lib.nameValuePair "backup-${name}" { + # Don't want to restart mid-backup + restartIfChanged = false; - environment = - resticEnv - // { - RESTIC_CACHE_DIR = "%C/backup-${name}"; - }; + environment = + resticEnv + // { + RESTIC_CACHE_DIR = "%C/backup-${name}"; + }; - path = with pkgs; [ - coreutils - openssh - rclone - restic - ]; - - # TODO(tlater): If I ever add more than one repo, service - # shutdown/restarting will potentially break if multiple - # backups for the same service overlap. A more clever - # sentinel file with reference counts would probably solve - # this. - serviceConfig = { - User = backup.user; - Group = "backup"; - RuntimeDirectory = "backup-${name}"; - CacheDirectory = "backup-${name}"; - CacheDirectoryMode = "0700"; - PrivateTmp = true; - - ExecStart = [ - (lib.concatStringsSep " " (["${pkgs.restic}/bin/restic" "backup" "--tag" name] ++ backup.paths)) + path = with pkgs; [ + coreutils + openssh + rclone + restic ]; - ExecStartPre = - map (service: "+${mkShutdownScript service}") backup.pauseServices - ++ singleton (writeScript "backup-${name}-repo-init" [] '' - restic snapshots || restic init - '') - ++ optional (backup.preparation.text != null) - (writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text); + # TODO(tlater): If I ever add more than one repo, service + # shutdown/restarting will potentially break if multiple + # backups for the same service overlap. A more clever + # sentinel file with reference counts would probably solve + # this. + serviceConfig = { + User = backup.user; + Group = "backup"; + RuntimeDirectory = "backup-${name}"; + CacheDirectory = "backup-${name}"; + CacheDirectoryMode = "0700"; + PrivateTmp = true; - # TODO(tlater): Add repo pruning/checking - ExecStopPost = - map (service: "+${mkRestartScript service}") backup.pauseServices - ++ optional (backup.cleanup.text != null) - (writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text); - }; - }) - config.services.backups; + ExecStart = [ + (lib.concatStringsSep " " ([ "${pkgs.restic}/bin/restic" "backup" "--tag" name ] ++ backup.paths)) + ]; + + ExecStartPre = + map (service: "+${mkShutdownScript service}") backup.pauseServices + ++ singleton (writeScript "backup-${name}-repo-init" [ ] '' + restic snapshots || restic init + '') + ++ optional (backup.preparation.text != null) + (writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text); + + # TODO(tlater): Add repo pruning/checking + ExecStopPost = + map (service: "+${mkRestartScript service}") backup.pauseServices + ++ optional (backup.cleanup.text != null) + (writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text); + }; + }) + config.services.backups; systemd.timers = { restic-prune = { - wantedBy = ["timers.target"]; + wantedBy = [ "timers.target" ]; timerConfig.OnCalendar = "Thursday 03:00:00 UTC"; # Don't make this persistent, in case the server was offline # for a while. This job cannot run at the same time as any # of the backup jobs. }; } - // lib.mapAttrs' (name: backup: - lib.nameValuePair "backup-${name}" { - wantedBy = ["timers.target"]; - timerConfig = { - OnCalendar = "Wednesday 02:30:00 UTC"; - RandomizedDelaySec = "1h"; - FixedRandomDelay = true; - Persistent = true; - }; - }) - config.services.backups; + // lib.mapAttrs' + (name: backup: + lib.nameValuePair "backup-${name}" { + wantedBy = [ "timers.target" ]; + timerConfig = { + OnCalendar = "Wednesday 02:30:00 UTC"; + RandomizedDelaySec = "1h"; + FixedRandomDelay = true; + Persistent = true; + }; + }) + config.services.backups; users = { # This user is only used to own the ssh key, because apparently @@ -245,7 +247,7 @@ in { group = "backup"; isSystemUser = true; }; - groups.backup = {}; + groups.backup = { }; }; }; } diff --git a/configuration/services/battery-manager.nix b/configuration/services/battery-manager.nix index 7f27931..7783a3b 100644 --- a/configuration/services/battery-manager.nix +++ b/configuration/services/battery-manager.nix @@ -1,7 +1,6 @@ -{ - config, - flake-inputs, - ... +{ config +, flake-inputs +, ... }: { imports = [ flake-inputs.sonnenshift.nixosModules.default diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 2462d9b..950165c 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -1,15 +1,16 @@ -{ - pkgs, - config, - lib, - ... -}: let +{ pkgs +, config +, lib +, ... +}: +let inherit (lib.strings) concatMapStringsSep; cfg = config.services.matrix-conduit; domain = "matrix.${config.services.nginx.domain}"; turn-realm = "turn.${config.services.nginx.domain}"; -in { +in +{ services.matrix-conduit = { enable = true; settings.global = { @@ -17,99 +18,103 @@ in { server_name = domain; database_backend = "rocksdb"; - turn_uris = let - address = "${config.services.coturn.realm}:${toString config.services.coturn.listening-port}"; - tls-address = "${config.services.coturn.realm}:${toString config.services.coturn.tls-listening-port}"; - in [ - "turn:${address}?transport=udp" - "turn:${address}?transport=tcp" - "turns:${tls-address}?transport=udp" - "turns:${tls-address}?transport=tcp" - ]; - }; - }; - - systemd.services.heisenbridge = let - replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; - registrationFile = builtins.toFile "heisenbridge-registration.yaml" (builtins.toJSON { - id = "heisenbridge"; - url = "http://127.0.0.1:9898"; - as_token = "@AS_TOKEN@"; - hs_token = "@HS_TOKEN@"; - rate_limited = false; - sender_localpart = "heisenbridge"; - namespaces = { - users = [ - { - regex = "@irc_.*"; - exclusive = true; - } - { - regex = "@heisenbridge:.*"; - exclusive = true; - } + turn_uris = + let + address = "${config.services.coturn.realm}:${toString config.services.coturn.listening-port}"; + tls-address = "${config.services.coturn.realm}:${toString config.services.coturn.tls-listening-port}"; + in + [ + "turn:${address}?transport=udp" + "turn:${address}?transport=tcp" + "turns:${tls-address}?transport=udp" + "turns:${tls-address}?transport=tcp" ]; - aliases = []; - rooms = []; - }; - }); - - # TODO(tlater): Starting with systemd 253 it will become possible - # to do the credential setup as part of ExecStartPre/preStart - # instead. - # - # This will also make it possible to actually set caps on the - # heisenbridge process using systemd, so that we can run the - # identd process. - execScript = pkgs.writeShellScript "heisenbridge" '' - cp ${registrationFile} "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" - chmod 600 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml - ${replaceSecretBin} '@AS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_as-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" - ${replaceSecretBin} '@HS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_hs-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" - chmod 400 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml - - ${pkgs.heisenbridge}/bin/heisenbridge \ - --config $RUNTIME_DIRECTORY/heisenbridge-registration.yaml \ - --owner @tlater:matrix.tlater.net \ - 'http://localhost:${toString cfg.settings.global.port}' - ''; - in { - description = "Matrix<->IRC bridge"; - wantedBy = ["multi-user.target"]; - after = ["conduit.service"]; - - serviceConfig = { - Type = "simple"; - - LoadCredential = "heisenbridge:/run/secrets/heisenbridge"; - - ExecStart = execScript; - - DynamicUser = true; - RuntimeDirectory = "heisenbridge"; - RuntimeDirectoryMode = "0700"; - - RestrictNamespaces = true; - PrivateUsers = true; - ProtectHostname = true; - ProtectClock = true; - ProtectKernelTunables = true; - ProtectKernelModules = true; - ProtectKernelLogs = true; - ProtectControlGroups = true; - RestrictAddressFamilies = ["AF_INET AF_INET6"]; - LockPersonality = true; - RestrictRealtime = true; - ProtectProc = "invisible"; - ProcSubset = "pid"; - UMask = 0077; - - # For the identd port - # CapabilityBoundingSet = ["CAP_NET_BIND_SERVICE"]; - # AmbientCapabilities = ["CAP_NET_BIND_SERVICE"]; }; }; + systemd.services.heisenbridge = + let + replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; + registrationFile = builtins.toFile "heisenbridge-registration.yaml" (builtins.toJSON { + id = "heisenbridge"; + url = "http://127.0.0.1:9898"; + as_token = "@AS_TOKEN@"; + hs_token = "@HS_TOKEN@"; + rate_limited = false; + sender_localpart = "heisenbridge"; + namespaces = { + users = [ + { + regex = "@irc_.*"; + exclusive = true; + } + { + regex = "@heisenbridge:.*"; + exclusive = true; + } + ]; + aliases = [ ]; + rooms = [ ]; + }; + }); + + # TODO(tlater): Starting with systemd 253 it will become possible + # to do the credential setup as part of ExecStartPre/preStart + # instead. + # + # This will also make it possible to actually set caps on the + # heisenbridge process using systemd, so that we can run the + # identd process. + execScript = pkgs.writeShellScript "heisenbridge" '' + cp ${registrationFile} "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" + chmod 600 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml + ${replaceSecretBin} '@AS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_as-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" + ${replaceSecretBin} '@HS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_hs-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" + chmod 400 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml + + ${pkgs.heisenbridge}/bin/heisenbridge \ + --config $RUNTIME_DIRECTORY/heisenbridge-registration.yaml \ + --owner @tlater:matrix.tlater.net \ + 'http://localhost:${toString cfg.settings.global.port}' + ''; + in + { + description = "Matrix<->IRC bridge"; + wantedBy = [ "multi-user.target" ]; + after = [ "conduit.service" ]; + + serviceConfig = { + Type = "simple"; + + LoadCredential = "heisenbridge:/run/secrets/heisenbridge"; + + ExecStart = execScript; + + DynamicUser = true; + RuntimeDirectory = "heisenbridge"; + RuntimeDirectoryMode = "0700"; + + RestrictNamespaces = true; + PrivateUsers = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + RestrictAddressFamilies = [ "AF_INET AF_INET6" ]; + LockPersonality = true; + RestrictRealtime = true; + ProtectProc = "invisible"; + ProcSubset = "pid"; + UMask = 0077; + + # For the identd port + # CapabilityBoundingSet = ["CAP_NET_BIND_SERVICE"]; + # AmbientCapabilities = ["CAP_NET_BIND_SERVICE"]; + }; + }; + # Pass in the TURN secret via EnvironmentFile, not supported by # upstream module currently. # @@ -249,6 +254,6 @@ in { ]; # Other services store their data in conduit, so no other services # need to be shut down currently. - pauseServices = ["conduit.service"]; + pauseServices = [ "conduit.service" ]; }; } diff --git a/configuration/services/fail2ban.nix b/configuration/services/fail2ban.nix index ace3219..1811046 100644 --- a/configuration/services/fail2ban.nix +++ b/configuration/services/fail2ban.nix @@ -1,7 +1,7 @@ -{pkgs, ...}: { +{ pkgs, ... }: { services.fail2ban = { enable = true; - extraPackages = [pkgs.ipset]; + extraPackages = [ pkgs.ipset ]; banaction = "iptables-ipset-proto6-allports"; bantime-increment.enable = true; @@ -21,7 +21,7 @@ }; # Allow metrics services to connect to the socket as well - users.groups.fail2ban = {}; + users.groups.fail2ban = { }; systemd.services.fail2ban.serviceConfig = { ExecStartPost = "+" diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index ac206fc..e69d2dd 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -1,12 +1,13 @@ -{ - lib, - config, - flake-inputs, - ... -}: let +{ lib +, config +, flake-inputs +, ... +}: +let domain = "foundryvtt.${config.services.nginx.domain}"; -in { - imports = [flake-inputs.foundryvtt.nixosModules.foundryvtt]; +in +{ + imports = [ flake-inputs.foundryvtt.nixosModules.foundryvtt ]; services.foundryvtt = { enable = true; @@ -18,26 +19,28 @@ in { # Want to start it manually when I need it, not have it constantly # running - systemd.services.foundryvtt.wantedBy = lib.mkForce []; + systemd.services.foundryvtt.wantedBy = lib.mkForce [ ]; - services.nginx.virtualHosts."${domain}" = let - inherit (config.services.foundryvtt) port; - in { - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; + services.nginx.virtualHosts."${domain}" = + let + inherit (config.services.foundryvtt) port; + in + { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; - locations."/" = { - proxyWebsockets = true; - proxyPass = "http://localhost:${toString port}"; + locations."/" = { + proxyWebsockets = true; + proxyPass = "http://localhost:${toString port}"; + }; }; - }; services.backups.foundryvtt = { user = "foundryvtt"; paths = [ config.services.foundryvtt.dataDir ]; - pauseServices = ["foundryvtt.service"]; + pauseServices = [ "foundryvtt.service" ]; }; } diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 26fe2f8..4ef6238 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -1,11 +1,12 @@ -{ - pkgs, - config, - lib, - ... -}: let +{ pkgs +, config +, lib +, ... +}: +let domain = "gitea.${config.services.nginx.domain}"; -in { +in +{ services.forgejo = { enable = true; database.type = "postgres"; @@ -27,33 +28,37 @@ in { }; }; - systemd.services.forgejo.serviceConfig.ExecStartPre = let - replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; - secretPath = config.sops.secrets."forgejo/metrics-token".path; - runConfig = "${config.services.forgejo.customDir}/conf/app.ini"; - in [ - "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" - ]; + systemd.services.forgejo.serviceConfig.ExecStartPre = + let + replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; + secretPath = config.sops.secrets."forgejo/metrics-token".path; + runConfig = "${config.services.forgejo.customDir}/conf/app.ini"; + in + [ + "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" + ]; # Set up SSL - services.nginx.virtualHosts."${domain}" = let - httpAddress = config.services.forgejo.settings.server.HTTP_ADDR; - httpPort = config.services.forgejo.settings.server.HTTP_PORT; - in { - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; + services.nginx.virtualHosts."${domain}" = + let + httpAddress = config.services.forgejo.settings.server.HTTP_ADDR; + httpPort = config.services.forgejo.settings.server.HTTP_PORT; + in + { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; - locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; - locations."/metrics" = { - extraConfig = '' - access_log off; - allow 127.0.0.1; - ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} - deny all; - ''; + locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; + locations."/metrics" = { + extraConfig = '' + access_log off; + allow 127.0.0.1; + ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} + deny all; + ''; + }; }; - }; # Block repeated failed login attempts # @@ -83,13 +88,13 @@ in { # Conf is backed up via nix ]; preparation = { - packages = [config.services.postgresql.package]; + packages = [ config.services.postgresql.package ]; text = "pg_dump ${config.services.forgejo.database.name} --file=/var/lib/forgejo/forgejo-db.sql"; }; cleanup = { - packages = [pkgs.coreutils]; + packages = [ pkgs.coreutils ]; text = "rm /var/lib/forgejo/forgejo-db.sql"; }; - pauseServices = ["forgejo.service"]; + pauseServices = [ "forgejo.service" ]; }; } diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index f3054db..e17be8e 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -1,25 +1,28 @@ +{ config +, pkgs +, lib +, ... +}: +let + yaml = pkgs.formats.yaml { }; +in { - config, - pkgs, - lib, - ... -}: let - yaml = pkgs.formats.yaml {}; -in { services.prometheus = { exporters = { # Periodically check domain registration status domain = { enable = true; listenAddress = "127.0.0.1"; - extraFlags = let - conf.domains = [ - "tlater.net" - "tlater.com" + extraFlags = + let + conf.domains = [ + "tlater.net" + "tlater.com" + ]; + in + [ + "--config=${yaml.generate "domains.yml" conf}" ]; - in [ - "--config=${yaml.generate "domains.yml" conf}" - ]; }; # System statistics @@ -49,47 +52,50 @@ in { group = "nginx"; settings.namespaces = - lib.mapAttrsToList (name: virtualHost: { - inherit name; - metrics_override.prefix = "nginxlog"; - namespace_label = "vhost"; + lib.mapAttrsToList + (name: virtualHost: { + inherit name; + metrics_override.prefix = "nginxlog"; + namespace_label = "vhost"; - format = lib.concatStringsSep " " [ - "$remote_addr - $remote_user [$time_local]" - ''"$request" $status $body_bytes_sent'' - ''"$http_referer" "$http_user_agent"'' - ''rt=$request_time uct="$upstream_connect_time"'' - ''uht="$upstream_header_time" urt="$upstream_response_time"'' - ]; + format = lib.concatStringsSep " " [ + "$remote_addr - $remote_user [$time_local]" + ''"$request" $status $body_bytes_sent'' + ''"$http_referer" "$http_user_agent"'' + ''rt=$request_time uct="$upstream_connect_time"'' + ''uht="$upstream_header_time" urt="$upstream_response_time"'' + ]; - source.files = [ - "/var/log/nginx/${name}/access.log" - ]; - }) - config.services.nginx.virtualHosts; + source.files = [ + "/var/log/nginx/${name}/access.log" + ]; + }) + config.services.nginx.virtualHosts; }; }; extraExporters = { - fail2ban = let - cfg = config.services.prometheus.extraExporters.fail2ban; - in { - port = 9191; - serviceOpts = { - after = ["fail2ban.service"]; - requires = ["fail2ban.service"]; - serviceConfig = { - Group = "fail2ban"; - RestrictAddressFamilies = ["AF_UNIX" "AF_INET" "AF_INET6"]; - ExecStart = lib.concatStringsSep " " [ - "${pkgs.local.prometheus-fail2ban-exporter}/bin/fail2ban-prometheus-exporter" - "--collector.f2b.socket=/var/run/fail2ban/fail2ban.sock" - "--web.listen-address='${cfg.listenAddress}:${toString cfg.port}'" - "--collector.f2b.exit-on-socket-connection-error=true" - ]; + fail2ban = + let + cfg = config.services.prometheus.extraExporters.fail2ban; + in + { + port = 9191; + serviceOpts = { + after = [ "fail2ban.service" ]; + requires = [ "fail2ban.service" ]; + serviceConfig = { + Group = "fail2ban"; + RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; + ExecStart = lib.concatStringsSep " " [ + "${pkgs.local.prometheus-fail2ban-exporter}/bin/fail2ban-prometheus-exporter" + "--collector.f2b.socket=/var/run/fail2ban/fail2ban.sock" + "--web.listen-address='${cfg.listenAddress}:${toString cfg.port}'" + "--collector.f2b.exit-on-socket-connection-error=true" + ]; + }; }; }; - }; }; # TODO(tlater): diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index eb5106e..d13fe7b 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -1,6 +1,8 @@ -{config, ...}: let +{ config, ... }: +let domain = "metrics.${config.services.nginx.domain}"; -in { +in +{ services.grafana = { enable = true; settings = { diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index 81f0865..552aec8 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -1,12 +1,13 @@ -{ - pkgs, - config, - lib, - ... -}: let +{ pkgs +, config +, lib +, ... +}: +let inherit (lib) types mkOption mkDefault; - yaml = pkgs.formats.yaml {}; -in { + yaml = pkgs.formats.yaml { }; +in +{ options = { services.prometheus = { extraExporters = mkOption { @@ -31,11 +32,10 @@ in { }; services.victoriametrics.scrapeConfigs = mkOption { - type = types.attrsOf (types.submodule ({ - name, - self, - ... - }: { + type = types.attrsOf (types.submodule ({ name + , self + , ... + }: { options = { job_name = mkOption { type = types.str; @@ -47,7 +47,7 @@ in { description = '' Other settings to set for this scrape config. ''; - default = {}; + default = { }; }; targets = mkOption { @@ -57,11 +57,11 @@ in { Shortcut for `static_configs = lib.singleton {targets = [];}` ''; - default = []; + default = [ ]; }; static_configs = mkOption { - default = []; + default = [ ]; type = types.listOf (types.submodule { options = { targets = mkOption { @@ -77,7 +77,7 @@ in { description = lib.mdDoc '' Labels to apply to all targets defined for this static config. ''; - default = {}; + default = { }; }; }; }); @@ -89,116 +89,125 @@ in { config = { systemd.services = lib.mkMerge [ - (lib.mapAttrs' (name: exporter: - lib.nameValuePair "prometheus-${name}-exporter" (lib.mkMerge [ - { - # Shamelessly copied from upstream because the upstream - # module is an intractable mess - wantedBy = ["multi-user.target"]; - after = ["network.target"]; - serviceConfig.Restart = mkDefault "always"; - serviceConfig.PrivateTmp = mkDefault true; - serviceConfig.WorkingDirectory = mkDefault /tmp; - serviceConfig.DynamicUser = mkDefault true; - # Hardening - serviceConfig.CapabilityBoundingSet = mkDefault [""]; - serviceConfig.DeviceAllow = [""]; - serviceConfig.LockPersonality = true; - serviceConfig.MemoryDenyWriteExecute = true; - serviceConfig.NoNewPrivileges = true; - serviceConfig.PrivateDevices = mkDefault true; - serviceConfig.ProtectClock = mkDefault true; - serviceConfig.ProtectControlGroups = true; - serviceConfig.ProtectHome = true; - serviceConfig.ProtectHostname = true; - serviceConfig.ProtectKernelLogs = true; - serviceConfig.ProtectKernelModules = true; - serviceConfig.ProtectKernelTunables = true; - serviceConfig.ProtectSystem = mkDefault "strict"; - serviceConfig.RemoveIPC = true; - serviceConfig.RestrictAddressFamilies = ["AF_INET" "AF_INET6"]; - serviceConfig.RestrictNamespaces = true; - serviceConfig.RestrictRealtime = true; - serviceConfig.RestrictSUIDSGID = true; - serviceConfig.SystemCallArchitectures = "native"; - serviceConfig.UMask = "0077"; - } - exporter.serviceOpts - ])) - config.services.prometheus.extraExporters) + (lib.mapAttrs' + (name: exporter: + lib.nameValuePair "prometheus-${name}-exporter" (lib.mkMerge [ + { + # Shamelessly copied from upstream because the upstream + # module is an intractable mess + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + serviceConfig.Restart = mkDefault "always"; + serviceConfig.PrivateTmp = mkDefault true; + serviceConfig.WorkingDirectory = mkDefault /tmp; + serviceConfig.DynamicUser = mkDefault true; + # Hardening + serviceConfig.CapabilityBoundingSet = mkDefault [ "" ]; + serviceConfig.DeviceAllow = [ "" ]; + serviceConfig.LockPersonality = true; + serviceConfig.MemoryDenyWriteExecute = true; + serviceConfig.NoNewPrivileges = true; + serviceConfig.PrivateDevices = mkDefault true; + serviceConfig.ProtectClock = mkDefault true; + serviceConfig.ProtectControlGroups = true; + serviceConfig.ProtectHome = true; + serviceConfig.ProtectHostname = true; + serviceConfig.ProtectKernelLogs = true; + serviceConfig.ProtectKernelModules = true; + serviceConfig.ProtectKernelTunables = true; + serviceConfig.ProtectSystem = mkDefault "strict"; + serviceConfig.RemoveIPC = true; + serviceConfig.RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + serviceConfig.RestrictNamespaces = true; + serviceConfig.RestrictRealtime = true; + serviceConfig.RestrictSUIDSGID = true; + serviceConfig.SystemCallArchitectures = "native"; + serviceConfig.UMask = "0077"; + } + exporter.serviceOpts + ])) + config.services.prometheus.extraExporters) { - vmagent-scrape-exporters = let - listenAddress = config.services.victoriametrics.listenAddress; - vmAddr = (lib.optionalString (lib.hasPrefix ":" listenAddress) "127.0.0.1") + listenAddress; - promscrape = yaml.generate "prometheus.yml" { - scrape_configs = lib.mapAttrsToList (_: scrape: - lib.recursiveUpdate { - inherit (scrape) job_name; - static_configs = - scrape.static_configs - ++ lib.optional (scrape.targets != []) {targets = scrape.targets;}; - } - scrape.extraSettings) - config.services.victoriametrics.scrapeConfigs; - }; - in { - enable = true; - path = [pkgs.victoriametrics]; - wantedBy = ["multi-user.target"]; - after = ["network.target" "victoriametrics.service"]; - serviceConfig = { - ExecStart = [ - (lib.concatStringsSep " " [ - "${pkgs.victoriametrics}/bin/vmagent" - "-promscrape.config=${promscrape}" - "-remoteWrite.url=http://${vmAddr}/api/v1/write" - "-remoteWrite.tmpDataPath=%t/vmagent" - ]) - ]; - SupplementaryGroups = "metrics"; + vmagent-scrape-exporters = + let + listenAddress = config.services.victoriametrics.listenAddress; + vmAddr = (lib.optionalString (lib.hasPrefix ":" listenAddress) "127.0.0.1") + listenAddress; + promscrape = yaml.generate "prometheus.yml" { + scrape_configs = lib.mapAttrsToList + (_: scrape: + lib.recursiveUpdate + { + inherit (scrape) job_name; + static_configs = + scrape.static_configs + ++ lib.optional (scrape.targets != [ ]) { targets = scrape.targets; }; + } + scrape.extraSettings) + config.services.victoriametrics.scrapeConfigs; + }; + in + { + enable = true; + path = [ pkgs.victoriametrics ]; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" "victoriametrics.service" ]; + serviceConfig = { + ExecStart = [ + (lib.concatStringsSep " " [ + "${pkgs.victoriametrics}/bin/vmagent" + "-promscrape.config=${promscrape}" + "-remoteWrite.url=http://${vmAddr}/api/v1/write" + "-remoteWrite.tmpDataPath=%t/vmagent" + ]) + ]; + SupplementaryGroups = "metrics"; - DynamicUser = true; - RuntimeDirectory = "vmagent"; - CapabilityBoundingSet = [""]; - DeviceAllow = [""]; - LockPersonality = true; - MemoryDenyWriteExecute = true; - NoNewPrivileges = true; - PrivateDevices = true; - ProtectClock = true; - ProtectControlGroups = true; - ProtectHome = true; - ProtectHostname = true; - ProtectKernelLogs = true; - ProtectKernelModules = true; - ProtectKernelTunables = true; - ProtectSystem = "strict"; - RemoveIPC = true; - RestrictAddressFamilies = ["AF_INET" "AF_INET6"]; - RestrictNamespaces = true; - RestrictRealtime = true; - RestrictSUIDSGID = true; - SystemCallArchitectures = "native"; - UMask = "0077"; + DynamicUser = true; + RuntimeDirectory = "vmagent"; + CapabilityBoundingSet = [ "" ]; + DeviceAllow = [ "" ]; + LockPersonality = true; + MemoryDenyWriteExecute = true; + NoNewPrivileges = true; + PrivateDevices = true; + ProtectClock = true; + ProtectControlGroups = true; + ProtectHome = true; + ProtectHostname = true; + ProtectKernelLogs = true; + ProtectKernelModules = true; + ProtectKernelTunables = true; + ProtectSystem = "strict"; + RemoveIPC = true; + RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + RestrictNamespaces = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + UMask = "0077"; + }; }; - }; } ]; - users.groups.metrics = {}; + users.groups.metrics = { }; - services.victoriametrics.scrapeConfigs = let - allExporters = - lib.mapAttrs (name: exporter: { - inherit (exporter) listenAddress port; - }) ((lib.filterAttrs (_: exporter: builtins.isAttrs exporter && exporter.enable) - config.services.prometheus.exporters) - // config.services.prometheus.extraExporters); - in - lib.mapAttrs (_: exporter: { - targets = ["${exporter.listenAddress}:${toString exporter.port}"]; - }) - allExporters; + services.victoriametrics.scrapeConfigs = + let + allExporters = + lib.mapAttrs + (name: exporter: { + inherit (exporter) listenAddress port; + }) + ((lib.filterAttrs (_: exporter: builtins.isAttrs exporter && exporter.enable) + config.services.prometheus.exporters) + // config.services.prometheus.extraExporters); + in + lib.mapAttrs + (_: exporter: { + targets = [ "${exporter.listenAddress}:${toString exporter.port}" ]; + }) + allExporters; }; } diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index daf3f94..695b89e 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -1,4 +1,4 @@ -{config, ...}: { +{ config, ... }: { config.services.victoriametrics = { enable = true; extraOptions = [ @@ -7,10 +7,10 @@ scrapeConfigs = { forgejo = { - targets = ["127.0.0.1:${toString config.services.forgejo.settings.server.HTTP_PORT}"]; + targets = [ "127.0.0.1:${toString config.services.forgejo.settings.server.HTTP_PORT}" ]; extraSettings.authorization.credentials_file = config.sops.secrets."forgejo/metrics-token".path; }; - coturn.targets = ["127.0.0.1:9641"]; + coturn.targets = [ "127.0.0.1:9641" ]; }; }; } diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 2c7fe4f..7c4fcf4 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,14 +1,15 @@ -{ - pkgs, - config, - ... -}: let +{ pkgs +, config +, ... +}: +let # Update pending on rewrite of nextcloud news, though there is an # alpha to switch to if it becomes necessary: # https://github.com/nextcloud/news/issues/2610 nextcloud = pkgs.nextcloud27; hostName = "nextcloud.${config.services.nginx.domain}"; -in { +in +{ services.nextcloud = { inherit hostName; @@ -42,7 +43,7 @@ in { }; # Ensure that this service doesn't start before postgres is ready - systemd.services.nextcloud-setup.after = ["postgresql.service"]; + systemd.services.nextcloud-setup.after = [ "postgresql.service" ]; # Set up SSL services.nginx.virtualHosts."${hostName}" = { diff --git a/configuration/services/postgres.nix b/configuration/services/postgres.nix index 018dc6e..62dfb01 100644 --- a/configuration/services/postgres.nix +++ b/configuration/services/postgres.nix @@ -1,4 +1,4 @@ -{pkgs, ...}: { +{ pkgs, ... }: { services.postgresql = { package = pkgs.postgresql_14; enable = true; diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix index 6da890e..3b54ee9 100644 --- a/configuration/services/starbound.nix +++ b/configuration/services/starbound.nix @@ -1,16 +1,17 @@ -{ - pkgs, - lib, - ... -}: let +{ pkgs +, lib +, ... +}: +let inherit (lib) concatStringsSep; -in { +in +{ # Sadly, steam-run requires some X libs environment.noXlibs = false; systemd.services.starbound = { description = "Starbound"; - after = ["network.target"]; + after = [ "network.target" ]; serviceConfig = { ExecStart = "${pkgs.local.starbound}/bin/launch-starbound ${./configs/starbound.json}"; @@ -67,7 +68,7 @@ in { # Game servers shouldn't use cgroups themselves either ProtectControlGroups = true; # Most game servers will never need other socket types - RestrictAddressFamilies = ["AF_UNIX AF_INET AF_INET6"]; + RestrictAddressFamilies = [ "AF_UNIX AF_INET AF_INET6" ]; # Also a no-brainer, no game server should ever need this LockPersonality = true; # Some game servers will probably try to set this, but they @@ -116,6 +117,6 @@ in { paths = [ "/var/lib/private/starbound/storage/universe/" ]; - pauseServices = ["starbound.service"]; + pauseServices = [ "starbound.service" ]; }; } diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index 387df57..e6b49b3 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -1,6 +1,8 @@ -{config, ...}: let +{ config, ... }: +let domain = config.services.nginx.domain; -in { +in +{ services.tlaternet-webserver = { enable = true; listen = { @@ -10,15 +12,17 @@ in { }; # Set up SSL - services.nginx.virtualHosts."${domain}" = let - inherit (config.services.tlaternet-webserver.listen) addr port; - in { - serverAliases = ["www.${domain}"]; + services.nginx.virtualHosts."${domain}" = + let + inherit (config.services.tlaternet-webserver.listen) addr port; + in + { + serverAliases = [ "www.${domain}" ]; - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; - locations."/".proxyPass = "http://${addr}:${toString port}"; - }; + locations."/".proxyPass = "http://${addr}:${toString port}"; + }; } diff --git a/configuration/services/wireguard.nix b/configuration/services/wireguard.nix index 1ae6aac..057a2e9 100644 --- a/configuration/services/wireguard.nix +++ b/configuration/services/wireguard.nix @@ -1,4 +1,4 @@ -{config, ...}: { +{ config, ... }: { # iptables needs to permit forwarding from wg0 to wg0 networking.firewall.extraCommands = '' iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT @@ -26,7 +26,7 @@ { # yui wireguardPeerConfig = { - AllowedIPs = ["10.45.249.2/32"]; + AllowedIPs = [ "10.45.249.2/32" ]; PublicKey = "5mlnqEVJWks5OqgeFA2bLIrvST9TlCE81Btl+j4myz0="; }; } @@ -34,7 +34,7 @@ { # yuanyuan wireguardPeerConfig = { - AllowedIPs = ["10.45.249.10/32"]; + AllowedIPs = [ "10.45.249.10/32" ]; PublicKey = "0UsFE2atz/O5P3OKQ8UHyyyGQNJbp1MeIWUJLuoerwE="; }; } diff --git a/configuration/sops.nix b/configuration/sops.nix index 0746133..bc21834 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -31,8 +31,8 @@ }; # Heisenbridge - "heisenbridge/as-token" = {}; - "heisenbridge/hs-token" = {}; + "heisenbridge/as-token" = { }; + "heisenbridge/hs-token" = { }; "hetzner-api" = { owner = "acme"; @@ -62,10 +62,10 @@ }; # Steam - "steam/tlater" = {}; + "steam/tlater" = { }; # Turn - "turn/env" = {}; + "turn/env" = { }; "turn/secret" = { owner = "turnserver"; }; diff --git a/flake.nix b/flake.nix index 09a74ac..afdc668 100644 --- a/flake.nix +++ b/flake.nix @@ -32,126 +32,130 @@ }; }; - outputs = { - self, - nixpkgs, - sops-nix, - nvfetcher, - deploy-rs, - ... - } @ inputs: let - system = "x86_64-linux"; - pkgs = nixpkgs.legacyPackages.${system}; - in { - ################## - # Configurations # - ################## - nixosConfigurations = { - # The actual system definition - hetzner-1 = nixpkgs.lib.nixosSystem { - inherit system; - specialArgs.flake-inputs = inputs; + outputs = + { self + , nixpkgs + , sops-nix + , nvfetcher + , deploy-rs + , ... + } @ inputs: + let + system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.${system}; + in + { + ################## + # Configurations # + ################## + nixosConfigurations = { + # The actual system definition + hetzner-1 = nixpkgs.lib.nixosSystem { + inherit system; + specialArgs.flake-inputs = inputs; - modules = [ - ./configuration - ./configuration/hardware-specific/hetzner + modules = [ + ./configuration + ./configuration/hardware-specific/hetzner + ]; + }; + }; + + ############################ + # Deployment configuration # + ############################ + deploy.nodes = { + hetzner-1 = { + hostname = "116.202.158.55"; + + profiles.system = { + user = "root"; + path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.hetzner-1; + }; + + sshUser = "tlater"; + sshOpts = [ "-p" "2222" "-o" "ForwardAgent=yes" ]; + }; + }; + + ######### + # Tests # + ######### + checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; + + ################### + # Utility scripts # + ################### + apps.${system} = { + default = self.apps.${system}.run-vm; + + run-vm = { + type = "app"; + program = + let + vm = nixpkgs.lib.nixosSystem { + inherit system; + specialArgs.flake-inputs = inputs; + + modules = [ + ./configuration + ./configuration/hardware-specific/vm.nix + ]; + }; + in + (pkgs.writeShellScript "" '' + ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm + '').outPath; + }; + + update-pkgs = { + type = "app"; + program = + let + nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; + in + (pkgs.writeShellScript "update-pkgs" '' + cd "$(git rev-parse --show-toplevel)/pkgs" + ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml + '').outPath; + }; + + update-nextcloud-apps = { + type = "app"; + program = + let + nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; + in + (pkgs.writeShellScript "update-nextcloud-apps" '' + cd "$(git rev-parse --show-toplevel)/pkgs" + ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml + '').outPath; + }; + }; + + ########################### + # Development environment # + ########################### + devShells.${system}.default = nixpkgs.legacyPackages.${system}.mkShell { + sopsPGPKeyDirs = [ "./keys/hosts/" "./keys/users/" ]; + nativeBuildInputs = [ + sops-nix.packages.${system}.sops-import-keys-hook + ]; + + packages = with pkgs; [ + sops-nix.packages.${system}.sops-init-gpg-key + deploy-rs.packages.${system}.default + + nixpkgs-fmt + + cargo + clippy + rustc + rustfmt + rust-analyzer + pkg-config + openssl ]; }; }; - - ############################ - # Deployment configuration # - ############################ - deploy.nodes = { - hetzner-1 = { - hostname = "116.202.158.55"; - - profiles.system = { - user = "root"; - path = deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.hetzner-1; - }; - - sshUser = "tlater"; - sshOpts = ["-p" "2222" "-o" "ForwardAgent=yes"]; - }; - }; - - ######### - # Tests # - ######### - checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; - - ################### - # Utility scripts # - ################### - apps.${system} = { - default = self.apps.${system}.run-vm; - - run-vm = { - type = "app"; - program = let - vm = nixpkgs.lib.nixosSystem { - inherit system; - specialArgs.flake-inputs = inputs; - - modules = [ - ./configuration - ./configuration/hardware-specific/vm.nix - ]; - }; - in - (pkgs.writeShellScript "" '' - ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm - '') - .outPath; - }; - - update-pkgs = { - type = "app"; - program = let - nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; - in - (pkgs.writeShellScript "update-pkgs" '' - cd "$(git rev-parse --show-toplevel)/pkgs" - ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml - '') - .outPath; - }; - - update-nextcloud-apps = { - type = "app"; - program = let - nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; - in - (pkgs.writeShellScript "update-nextcloud-apps" '' - cd "$(git rev-parse --show-toplevel)/pkgs" - ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml - '') - .outPath; - }; - }; - - ########################### - # Development environment # - ########################### - devShells.${system}.default = nixpkgs.legacyPackages.${system}.mkShell { - sopsPGPKeyDirs = ["./keys/hosts/" "./keys/users/"]; - nativeBuildInputs = [ - sops-nix.packages.${system}.sops-import-keys-hook - ]; - - packages = with pkgs; [ - sops-nix.packages.${system}.sops-init-gpg-key - deploy-rs.packages.${system}.default - - cargo - clippy - rustc - rustfmt - rust-analyzer - pkg-config - openssl - ]; - }; - }; } diff --git a/modules/nginxExtensions.nix b/modules/nginxExtensions.nix index 9fe489a..3603756 100644 --- a/modules/nginxExtensions.nix +++ b/modules/nginxExtensions.nix @@ -1,8 +1,7 @@ -{ - config, - pkgs, - lib, - ... +{ config +, pkgs +, lib +, ... }: { options = { services.nginx.domain = lib.mkOption { @@ -10,36 +9,37 @@ description = "The base domain name to append to virtual domain names"; }; - services.nginx.virtualHosts = let - extraVirtualHostOptions = { - name, - config, - ... - }: { - options = { - enableHSTS = lib.mkEnableOption "Enable HSTS"; + services.nginx.virtualHosts = + let + extraVirtualHostOptions = + { name + , config + , ... + }: { + options = { + enableHSTS = lib.mkEnableOption "Enable HSTS"; - addAccessLog = lib.mkOption { - type = lib.types.bool; - default = true; - description = '' - Add special logging to `/var/log/nginx/''${serverName}` - ''; + addAccessLog = lib.mkOption { + type = lib.types.bool; + default = true; + description = '' + Add special logging to `/var/log/nginx/''${serverName}` + ''; + }; + }; + + config = { + extraConfig = lib.concatStringsSep "\n" [ + (lib.optionalString config.enableHSTS '' + add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; + '') + (lib.optionalString config.addAccessLog '' + access_log /var/log/nginx/${name}/access.log upstream_time; + '') + ]; + }; }; - }; - - config = { - extraConfig = lib.concatStringsSep "\n" [ - (lib.optionalString config.enableHSTS '' - add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always; - '') - (lib.optionalString config.addAccessLog '' - access_log /var/log/nginx/${name}/access.log upstream_time; - '') - ]; - }; - }; - in + in lib.mkOption { type = lib.types.attrsOf (lib.types.submodule extraVirtualHostOptions); }; @@ -47,13 +47,15 @@ config = { # Don't attempt to run acme if the domain name is not tlater.net - systemd.services = let - confirm = ''[[ "tlater.net" = ${config.services.nginx.domain} ]]''; - in - lib.mapAttrs' (cert: _: - lib.nameValuePair "acme-${cert}" { - serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; - }) - config.security.acme.certs; + systemd.services = + let + confirm = ''[[ "tlater.net" = ${config.services.nginx.domain} ]]''; + in + lib.mapAttrs' + (cert: _: + lib.nameValuePair "acme-${cert}" { + serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; + }) + config.security.acme.certs; }; } diff --git a/pkgs/afvalcalendar/default.nix b/pkgs/afvalcalendar/default.nix index 12e2af5..12b868c 100644 --- a/pkgs/afvalcalendar/default.nix +++ b/pkgs/afvalcalendar/default.nix @@ -1,7 +1,6 @@ -{ - pkgs, - rustPlatform, - ... +{ pkgs +, rustPlatform +, ... }: rustPlatform.buildRustPackage { pname = "afvalcalendar"; diff --git a/pkgs/default.nix b/pkgs/default.nix index 3162787..132d0f5 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,22 +1,23 @@ -{ - pkgs, - lib, -}: let +{ pkgs +, lib +, +}: +let inherit (builtins) fromJSON mapAttrs readFile; inherit (pkgs) callPackage; in - { - starbound = callPackage ./starbound {}; - prometheus-fail2ban-exporter = callPackage ./prometheus/fail2ban-exporter.nix { - sources = pkgs.callPackage ./_sources_pkgs/generated.nix {}; - }; - afvalcalendar = callPackage ./afvalcalendar {}; - } +{ + starbound = callPackage ./starbound { }; + prometheus-fail2ban-exporter = callPackage ./prometheus/fail2ban-exporter.nix { + sources = pkgs.callPackage ./_sources_pkgs/generated.nix { }; + }; + afvalcalendar = callPackage ./afvalcalendar { }; +} // ( - # Add nextcloud apps - let - mkNextcloudApp = pkgs.callPackage ./mkNextcloudApp.nix {}; - sources = fromJSON (readFile ./_sources_nextcloud/generated.json); - in - mapAttrs (_: source: mkNextcloudApp source) sources - ) + # Add nextcloud apps + let + mkNextcloudApp = pkgs.callPackage ./mkNextcloudApp.nix { }; + sources = fromJSON (readFile ./_sources_nextcloud/generated.json); + in + mapAttrs (_: source: mkNextcloudApp source) sources +) diff --git a/pkgs/mkNextcloudApp.nix b/pkgs/mkNextcloudApp.nix index 9bf6b26..7453f44 100644 --- a/pkgs/mkNextcloudApp.nix +++ b/pkgs/mkNextcloudApp.nix @@ -1,6 +1,6 @@ -{ - fetchNextcloudApp, - lib, +{ fetchNextcloudApp +, lib +, }: source: fetchNextcloudApp { url = source.src.url; diff --git a/pkgs/prometheus/fail2ban-exporter.nix b/pkgs/prometheus/fail2ban-exporter.nix index b2c6a25..b74e35d 100644 --- a/pkgs/prometheus/fail2ban-exporter.nix +++ b/pkgs/prometheus/fail2ban-exporter.nix @@ -1,6 +1,6 @@ -{ - buildGoModule, - sources, +{ buildGoModule +, sources +, }: buildGoModule { inherit (sources.prometheus-fail2ban-exporter) pname src version; diff --git a/pkgs/starbound/default.nix b/pkgs/starbound/default.nix index 304f0f3..a8689f3 100644 --- a/pkgs/starbound/default.nix +++ b/pkgs/starbound/default.nix @@ -1,34 +1,35 @@ -{ - stdenv, - lib, - makeWrapper, - patchelf, - steamPackages, - replace-secret, -}: let +{ stdenv +, lib +, makeWrapper +, patchelf +, steamPackages +, replace-secret +, +}: +let # Use the directory in which starbound is installed so steamcmd # doesn't have to be reinstalled constantly (we're using DynamicUser # with StateDirectory to persist this). steamcmd = steamPackages.steamcmd.override { steamRoot = "/var/lib/starbound/.steamcmd"; }; - wrapperPath = lib.makeBinPath [patchelf steamcmd replace-secret]; + wrapperPath = lib.makeBinPath [ patchelf steamcmd replace-secret ]; in - stdenv.mkDerivation { - name = "starbound-update-script"; - nativeBuildInputs = [makeWrapper]; - dontUnpack = true; - patchPhase = '' - interpreter="$(cat $NIX_CC/nix-support/dynamic-linker)" - substitute ${./launch-starbound.sh} launch-starbound --subst-var interpreter - ''; - installPhase = '' - mkdir -p $out/bin - cp launch-starbound $out/bin/launch-starbound - chmod +x $out/bin/launch-starbound - ''; - postFixup = '' - wrapProgram $out/bin/launch-starbound \ - --prefix PATH : "${wrapperPath}" - ''; - } +stdenv.mkDerivation { + name = "starbound-update-script"; + nativeBuildInputs = [ makeWrapper ]; + dontUnpack = true; + patchPhase = '' + interpreter="$(cat $NIX_CC/nix-support/dynamic-linker)" + substitute ${./launch-starbound.sh} launch-starbound --subst-var interpreter + ''; + installPhase = '' + mkdir -p $out/bin + cp launch-starbound $out/bin/launch-starbound + chmod +x $out/bin/launch-starbound + ''; + postFixup = '' + wrapProgram $out/bin/launch-starbound \ + --prefix PATH : "${wrapperPath}" + ''; +} From 038a7974274e3e0a169516968cb935d4231e85e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jun 2024 20:15:11 +0200 Subject: [PATCH 116/196] git: Blame-ignore nixpkgs-fmt commit --- .git-blame-ignore-revs | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .git-blame-ignore-revs diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000..cee878d --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,8 @@ +# Run this command to always ignore formatting commits in `git blame` +# git config blame.ignoreRevsFile .git-blame-ignore-revs + +# Switch to nixpkgs-fmt formatting +fd138d45e6a2cad89fead6e9f246ba282070d6b7 + +# Switch to alejandra formatting +046a88905ddfa7f9edc3291c310dbb985dee34f9 From 9654d599e90e46cd42fe02b852235cb44c380c79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Jun 2024 20:28:15 +0200 Subject: [PATCH 117/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/88b3059b020da69cbe16526b8d639bd5e0b51c8b' (2024-04-01) → 'github:serokell/deploy-rs/3867348fa92bc892eba5d9ddb2d7a97b9e127a8a' (2024-06-12) • Updated input 'disko': 'github:nix-community/disko/285e26465a0bae510897ca04da26ce6307c652b4' (2024-04-26) → 'github:nix-community/disko/115311bc395f24c1b553338fec4b3aa28cbf5ae2' (2024-06-28) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/6025615b431170558c3c13f16b549fc0126425e1' (2024-04-09) → 'github:reckenrode/nix-foundryvtt/1176cc325e5e1d46c7a018663a8e02e699e838ec' (2024-06-28) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/cc54fb41d13736e92229c21627ea4f22199fee6b' (2024-06-12) → 'github:nixos/nixpkgs/89c49874fb15f4124bf71ca5f42a04f2ee5825fd' (2024-06-26) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/58a1abdbae3217ca6b702f03d3b35125d88a2994' (2024-04-27) → 'github:nixos/nixpkgs/2893f56de08021cffd9b6b6dfc70fd9ccd51eb60' (2024-06-24) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/2a824322dc6a755ffda83a13b948d42304521e4d' (2024-04-17) → 'github:berberman/nvfetcher/fa7609950023462c6f91c425de7610c0bb6b86ba' (2024-06-13) • Updated input 'sops-nix': 'github:Mic92/sops-nix/f1b0adc27265274e3b0c9b872a8f476a098679bd' (2024-04-23) → 'github:Mic92/sops-nix/c2ea1186c0cbfa4d06d406ae50f3e4b085ddc9b3' (2024-06-24) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/74574c38577914733b4f7a775dd77d24245081dd' (2024-04-20) → 'github:NixOS/nixpkgs/5e8e3b89adbd0be63192f6e645e0a54080004924' (2024-06-22) --- flake.lock | 84 +++++++++++++++++++++++++++--------------------------- flake.nix | 4 +-- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/flake.lock b/flake.lock index 3f8dcb9..dab6ebf 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1711973905, - "narHash": "sha256-UFKME/N1pbUtn+2Aqnk+agUt8CekbpuqwzljivfIme8=", + "lastModified": 1718194053, + "narHash": "sha256-FaGrf7qwZ99ehPJCAwgvNY5sLCqQ3GDiE/6uLhxxwSY=", "owner": "serokell", "repo": "deploy-rs", - "rev": "88b3059b020da69cbe16526b8d639bd5e0b51c8b", + "rev": "3867348fa92bc892eba5d9ddb2d7a97b9e127a8a", "type": "github" }, "original": { @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1714103775, - "narHash": "sha256-kcBiIrmqzt3bNTr2GMBfAyA+on8BEKO1iKzzDFQZkjI=", + "lastModified": 1719733833, + "narHash": "sha256-6h2EqZU9bL9rHlXE+2LCBgnDImejzbS+4dYsNDDFlkY=", "owner": "nix-community", "repo": "disko", - "rev": "285e26465a0bae510897ca04da26ce6307c652b4", + "rev": "d185770ea261fb5cf81aa5ad1791b93a7834d12c", "type": "github" }, "original": { @@ -47,11 +47,11 @@ "pyproject-nix": "pyproject-nix" }, "locked": { - "lastModified": 1702457430, - "narHash": "sha256-8NQiXtYCOiC7XFayy6GPGDudCBrPROry3mfWjpdVj5g=", + "lastModified": 1719685993, + "narHash": "sha256-04gy1icwnGO3ZXF6r96yBm/C0PNPzeLxA/8xzzq0dBI=", "owner": "nix-community", "repo": "dream2nix", - "rev": "262198033e23e9ee832f0cc8133d38f07598f555", + "rev": "1b5e01219a32324c8f6889fe1f4db933ec7932f6", "type": "github" }, "original": { @@ -69,11 +69,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1704003651, - "narHash": "sha256-bA3d4E1CX5G7TVbKwJOm9jZfVOGOPp6u5CKEUzNsE8E=", + "lastModified": 1719815435, + "narHash": "sha256-K2xFp142onP35jcx7li10xUxNVEVRWjAdY8DSuR7Naw=", "owner": "nix-community", "repo": "fenix", - "rev": "c6d82e087ac96f24b90c5787a17e29a72566c2b4", + "rev": "ebfe2c639111d7e82972a12711206afaeeda2450", "type": "github" }, "original": { @@ -157,11 +157,11 @@ ] }, "locked": { - "lastModified": 1712623723, - "narHash": "sha256-jPD5+M+QPyMRk52zfFMIeHdv7yXYJ/yNGqwS0PhYF+E=", + "lastModified": 1719541573, + "narHash": "sha256-9j8Rtv5UWsD4A3jAh8MpopNGmftSAoI8htssmXLu8jU=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "6025615b431170558c3c13f16b549fc0126425e1", + "rev": "1176cc325e5e1d46c7a018663a8e02e699e838ec", "type": "github" }, "original": { @@ -210,11 +210,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1713638189, - "narHash": "sha256-q7APLfB6FmmSMI1Su5ihW9IwntBsk2hWNXh8XtSdSIk=", + "lastModified": 1719663039, + "narHash": "sha256-tXlrgAQygNIy49LDVFuPXlWD2zTQV9/F8pfoqwwPJyo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "74574c38577914733b4f7a775dd77d24245081dd", + "rev": "4a1e673523344f6ccc84b37f4413ad74ea19a119", "type": "github" }, "original": { @@ -226,43 +226,43 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1714253743, - "narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=", + "lastModified": 1719824438, + "narHash": "sha256-pY0wosAgcr9W4vmGML0T3BVhQiGuKoozCbs2t+Je1zc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994", + "rev": "7f993cdf26ccef564eabf31fdb40d140821e12bc", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-unstable", + "ref": "nixos-unstable-small", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_2": { "locked": { - "lastModified": 1718208800, - "narHash": "sha256-US1tAChvPxT52RV8GksWZS415tTS7PV42KTc2PNDBmc=", + "lastModified": 1719825363, + "narHash": "sha256-2ASBatUTQWNIiTeBZRuxROu27MyOavVnzeCv7h40QNw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "cc54fb41d13736e92229c21627ea4f22199fee6b", + "rev": "10c832d0548e9e3a6df7eb51e68c2783212a303e", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-24.05", + "ref": "nixos-24.05-small", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_3": { "locked": { - "lastModified": 1702272962, - "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "lastModified": 1719468428, + "narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", + "rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d", "type": "github" }, "original": { @@ -281,11 +281,11 @@ ] }, "locked": { - "lastModified": 1713333471, - "narHash": "sha256-sIVQKOXzruxtTYiBRHZa8UQH+CSIa9K5MZlY6vavYfA=", + "lastModified": 1718252448, + "narHash": "sha256-xZZBdKqe1ByITzvx65pVgGQ5jeb73MybjgrcfI84lEo=", "owner": "berberman", "repo": "nvfetcher", - "rev": "2a824322dc6a755ffda83a13b948d42304521e4d", + "rev": "fa7609950023462c6f91c425de7610c0bb6b86ba", "type": "github" }, "original": { @@ -375,11 +375,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1703965384, - "narHash": "sha256-3iyouqkBvhh/E48TkBlt4JmmcIEyfQwY7pokKBx9WNg=", + "lastModified": 1719760370, + "narHash": "sha256-fsxAuW6RxKZYjAP3biUC6C4vaYFhDfWv8lp1Tmx3ZCY=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "e872f5085cf5b0e44558442365c1c033d486eff2", + "rev": "ea7fdada6a0940b239ddbde2048a4d7dac1efe1e", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1713892811, - "narHash": "sha256-uIGmA2xq41vVFETCF1WW4fFWFT2tqBln+aXnWrvjGRE=", + "lastModified": 1719716556, + "narHash": "sha256-KA9gy2Wkv76s4A8eLnOcdKVTygewbw3xsB8+awNMyqs=", "owner": "Mic92", "repo": "sops-nix", - "rev": "f1b0adc27265274e3b0c9b872a8f476a098679bd", + "rev": "b5974d4331fb6c893e808977a2e1a6d34b3162d6", "type": "github" }, "original": { @@ -523,11 +523,11 @@ ] }, "locked": { - "lastModified": 1704840002, - "narHash": "sha256-ik2LeuRjcnRXwBLoRSOyGEMXscE+coO8G79IFhZhdJk=", + "lastModified": 1719851829, + "narHash": "sha256-M5miiIbiwP4uArTyeIr/RKA857rP14AEJUe11AZsKAc=", "ref": "refs/heads/master", - "rev": "d14f50c8dcc8ab30a5e5fa907b392ac0df6c7b52", - "revCount": 73, + "rev": "4a099f27a27f4107ceb14969e2158eaabebcf1d4", + "revCount": 74, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, diff --git a/flake.nix b/flake.nix index afdc668..e3ff531 100644 --- a/flake.nix +++ b/flake.nix @@ -2,8 +2,8 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; - nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05-small"; + nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small"; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; From 21cb4eab9cbaeee6dab27ee9dc0c03b42269839c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 1 Jul 2024 18:34:23 +0200 Subject: [PATCH 118/196] foundryvtt: Set foundry version explicitly --- configuration/services/foundryvtt.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index e69d2dd..3383ab3 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -1,6 +1,7 @@ { lib , config , flake-inputs +, pkgs , ... }: let @@ -15,6 +16,7 @@ in minifyStaticFiles = true; proxySSL = true; proxyPort = 443; + package = flake-inputs.foundryvtt.packages.${pkgs.system}.foundryvtt_11; }; # Want to start it manually when I need it, not have it constantly From 32f4cabfa35bad8da8ef2a06e1f08dece6a9a6e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 1 Jul 2024 18:35:53 +0200 Subject: [PATCH 119/196] nextcloud: Update to 28 since 27 is EOL We were waiting for nextcloud news to update, but we can't wait any longer. --- configuration/services/nextcloud.nix | 2 +- pkgs/_sources_nextcloud/generated.json | 24 ++++++++++++------------ pkgs/_sources_nextcloud/generated.nix | 24 ++++++++++++------------ pkgs/nextcloud-apps.toml | 13 +++++-------- 4 files changed, 30 insertions(+), 33 deletions(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 7c4fcf4..0d22e6c 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -6,7 +6,7 @@ let # Update pending on rewrite of nextcloud news, though there is an # alpha to switch to if it becomes necessary: # https://github.com/nextcloud/news/issues/2610 - nextcloud = pkgs.nextcloud27; + nextcloud = pkgs.nextcloud28; hostName = "nextcloud.${config.services.nginx.domain}"; in { diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index ce9ac04..c216c8d 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-JXNQNnWXoii71QhtKktuEBEIqzmONVetULBhpSjM9xo=", + "sha256": "sha256-wUeXcbxNCRA2brzdCHKwl0zbhmDucKv1ZCkF3KlQ8O4=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v13.1.3/bookmarks-13.1.3.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.2/bookmarks-14.2.2.tar.gz" }, - "version": "13.1.3" + "version": "14.2.2" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-hZfjWAMi/0qs5xMMgOlcoSXG6kcZ2aeDaez+NqSZFKI=", + "sha256": "sha256-cuAqJz1cZ+VfxttAKjWIe11DFwWGLdSSvcNJKQKidgk=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.7/calendar-v4.6.7.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.8/calendar-v4.7.8.tar.gz" }, - "version": "v4.6.7" + "version": "v4.7.8" }, "contacts": { "cargoLocks": null, @@ -49,11 +49,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-TE/w8SgyIPaGl5wZUAsG234nxoPj25QoRPF3zjbMoRk=", + "sha256": "sha256-a8ekMnEzudHGiqHF53jPtgsVTOTc2QLuPg6YtTw5h68=", "type": "tarball", - "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.10.5/Cookbook-0.10.5.tar.gz" + "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/Cookbook-0.11.1.tar.gz" }, - "version": "0.10.5" + "version": "0.11.1" }, "news": { "cargoLocks": null, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-cfJkKRNSz15L4E3w1tnEb+t4MrVwVzb8lb6vCOA4cK4=", + "sha256": "sha256-XNGjf7SWgJYFdVNOh3ED0jxSG0GJwWImVQq4cJT1Lo4=", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/24.0.0/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz" }, - "version": "24.0.0" + "version": "25.0.0-alpha7" }, "notes": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index c77aa9c..3075206 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,18 +3,18 @@ { bookmarks = { pname = "bookmarks"; - version = "13.1.3"; + version = "14.2.2"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v13.1.3/bookmarks-13.1.3.tar.gz"; - sha256 = "sha256-JXNQNnWXoii71QhtKktuEBEIqzmONVetULBhpSjM9xo="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.2/bookmarks-14.2.2.tar.gz"; + sha256 = "sha256-wUeXcbxNCRA2brzdCHKwl0zbhmDucKv1ZCkF3KlQ8O4="; }; }; calendar = { pname = "calendar"; - version = "v4.6.7"; + version = "v4.7.8"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.6.7/calendar-v4.6.7.tar.gz"; - sha256 = "sha256-hZfjWAMi/0qs5xMMgOlcoSXG6kcZ2aeDaez+NqSZFKI="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.8/calendar-v4.7.8.tar.gz"; + sha256 = "sha256-cuAqJz1cZ+VfxttAKjWIe11DFwWGLdSSvcNJKQKidgk="; }; }; contacts = { @@ -27,18 +27,18 @@ }; cookbook = { pname = "cookbook"; - version = "0.10.5"; + version = "0.11.1"; src = fetchTarball { - url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.10.5/Cookbook-0.10.5.tar.gz"; - sha256 = "sha256-TE/w8SgyIPaGl5wZUAsG234nxoPj25QoRPF3zjbMoRk="; + url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/Cookbook-0.11.1.tar.gz"; + sha256 = "sha256-a8ekMnEzudHGiqHF53jPtgsVTOTc2QLuPg6YtTw5h68="; }; }; news = { pname = "news"; - version = "24.0.0"; + version = "25.0.0-alpha7"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/24.0.0/news.tar.gz"; - sha256 = "sha256-cfJkKRNSz15L4E3w1tnEb+t4MrVwVzb8lb6vCOA4cK4="; + url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz"; + sha256 = "sha256-XNGjf7SWgJYFdVNOh3ED0jxSG0GJwWImVQq4cJT1Lo4="; }; }; notes = { diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 36566db..9023dd3 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,12 +1,10 @@ [bookmarks] -# src.github = "nextcloud/bookmarks" +src.github = "nextcloud/bookmarks" src.prefix = "v" -src.manual = "v13.1.3" fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] -# src.github = "nextcloud-releases/calendar" -src.manual = "v4.6.7" +src.github = "nextcloud-releases/calendar" fetch.tarball = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" [contacts] @@ -15,15 +13,14 @@ src.manual = "v5.5.3" fetch.tarball = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" [cookbook] -# src.github = "christianlupus-nextcloud/cookbook-releases" +src.github = "christianlupus-nextcloud/cookbook-releases" src.prefix = "v" -src.manual = "0.10.5" fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v$ver/Cookbook-$ver.tar.gz" [news] +# Update manually until angular rewrite is done # src.github = "nextcloud/news" -# Update to 25 when angular rewrite is done/the alpha when I need to switch to nextcloud 28+ -src.manual = "24.0.0" +src.manual = "25.0.0-alpha7" fetch.tarball = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" [notes] From 222829d82a7ffe2887ceaaefa13ed3a2e4b8963a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 1 Jul 2024 18:39:42 +0200 Subject: [PATCH 120/196] starbound: Don't build service for now This includes the really huge steam-run closure, which is just a PITA to keep up with if we're never using it. --- configuration/default.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index b933d19..792a4c9 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -24,7 +24,7 @@ ./services/nextcloud.nix ./services/webserver.nix ./services/wireguard.nix - ./services/starbound.nix + # ./services/starbound.nix -- Not currently used ./services/postgres.nix ./nginx.nix ./sops.nix @@ -49,9 +49,6 @@ settings.trusted-users = [ "@wheel" ]; }; - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ "steam-original" "steam-runtime" "steam-run" "steamcmd" ]; - # Optimization for minecraft servers, see: # https://bugs.mojang.com/browse/MC-183518 boot.kernelParams = [ "highres=off" "nohz=off" ]; From d568436d83126c7e92a1402e1551aa7235412481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 1 Jul 2024 19:18:34 +0200 Subject: [PATCH 121/196] conduit: Use new upstream delegation support --- configuration/services/conduit.nix | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 950165c..8734785 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -18,6 +18,13 @@ in server_name = domain; database_backend = "rocksdb"; + # Set up delegation: https://docs.conduit.rs/delegation.html#automatic-recommended + # This is primarily to make sliding sync work + well_known = { + client = "https://${domain}"; + server = "${domain}:443"; + }; + turn_uris = let address = "${config.services.coturn.realm}:${toString config.services.coturn.listening-port}"; @@ -230,19 +237,8 @@ in proxy_buffering off; ''; }; - - # Add Element X support - # TODO(tlater): Remove when no longer required: https://github.com/vector-im/element-x-android/issues/1085 - "=/.well-known/matrix/client" = { - alias = pkgs.writeText "well-known-matrix-client" (builtins.toJSON { - "m.homeserver".base_url = "https://${domain}"; - "org.matrix.msc3575.proxy".url = "https://${domain}"; - }); - - extraConfig = '' - default_type application/json; - add_header Access-Control-Allow-Origin "*"; - ''; + "/.well-known/matrix" = { + proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; }; }; }; From 21b9112f76675cc23201433186d7ca25cb38ebf6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 1 Jul 2024 19:18:59 +0200 Subject: [PATCH 122/196] fail2ban-exporter: Bump generated source json/nix --- pkgs/_sources_pkgs/generated.json | 1 + pkgs/_sources_pkgs/generated.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/pkgs/_sources_pkgs/generated.json b/pkgs/_sources_pkgs/generated.json index fc6c343..cec5a92 100644 --- a/pkgs/_sources_pkgs/generated.json +++ b/pkgs/_sources_pkgs/generated.json @@ -13,6 +13,7 @@ "name": null, "rev": "v0.10.1", "sha256": "sha256-zGEhDy3uXIbvx4agSA8Mx7bRtiZZtoDZGbNbHc9L+yI=", + "sparseCheckout": [], "type": "git", "url": "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" }, diff --git a/pkgs/_sources_pkgs/generated.nix b/pkgs/_sources_pkgs/generated.nix index 39dc6d0..95fd75e 100644 --- a/pkgs/_sources_pkgs/generated.nix +++ b/pkgs/_sources_pkgs/generated.nix @@ -10,6 +10,7 @@ fetchSubmodules = false; deepClone = false; leaveDotGit = false; + sparseCheckout = [ ]; sha256 = "sha256-zGEhDy3uXIbvx4agSA8Mx7bRtiZZtoDZGbNbHc9L+yI="; }; }; From 306b69f6b543e785f929919a83c8169e281f25c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 3 Jul 2024 01:28:23 +0200 Subject: [PATCH 123/196] nextcloud: Use the system postgres version --- configuration/services/nextcloud.nix | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 0d22e6c..30adf6e 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,5 +1,6 @@ { pkgs , config +, lib , ... }: let @@ -14,6 +15,19 @@ in inherit hostName; package = nextcloud; + phpPackage = lib.mkForce + (pkgs.php.override { + packageOverrides = final: prev: { + extensions = prev.extensions // { + pgsql = prev.extensions.pgsql.overrideAttrs (old: { + configureFlags = [ "--with-pgsql=${config.services.postgresql.package}" ]; + }); + pdo_pgsql = prev.extensions.pdo_pgsql.overrideAttrs (old: { + configureFlags = [ "--with-pdo-pgsql=${config.services.postgresql.package}" ]; + }); + }; + }; + }); enable = true; maxUploadSize = "2G"; https = true; From d426e783cda4725e6b3e1bba2d726215676a502f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 3 Jul 2024 02:56:23 +0200 Subject: [PATCH 124/196] grafana: Properly proxy websocket connections Fixes #115 --- configuration/services/metrics/grafana.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index d13fe7b..5c779f2 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -42,6 +42,12 @@ in forceSSL = true; useACMEHost = "tlater.net"; enableHSTS = true; - locations."/".proxyPass = "http://localhost:${toString config.services.grafana.settings.server.http_port}"; + locations = { + "/".proxyPass = "http://localhost:${toString config.services.grafana.settings.server.http_port}"; + "/api/live" = { + proxyWebsockets = true; + proxyPass = "http://localhost:${toString config.services.grafana.settings.server.http_port}"; + }; + }; }; } From 0047b585a38526f237615afa6e776d80c10d51c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 5 Aug 2024 19:38:04 +0200 Subject: [PATCH 125/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/d185770ea261fb5cf81aa5ad1791b93a7834d12c' (2024-06-30) → 'github:nix-community/disko/0257e44f4ad472b54f19a6dd1615aee7fa48ed49' (2024-08-05) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/1176cc325e5e1d46c7a018663a8e02e699e838ec' (2024-06-28) → 'github:reckenrode/nix-foundryvtt/699a175398410688214615a9d977354e9ef98d2d' (2024-08-03) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/10c832d0548e9e3a6df7eb51e68c2783212a303e' (2024-07-01) → 'github:nixos/nixpkgs/0ab9c4c1e0cab782fcde00ec2b32436abfd2a6d4' (2024-08-05) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/7f993cdf26ccef564eabf31fdb40d140821e12bc' (2024-07-01) → 'github:nixos/nixpkgs/41d21a82c38e226e234e16f4ff213b3fcf85e6e9' (2024-08-05) • Updated input 'sops-nix': 'github:Mic92/sops-nix/b5974d4331fb6c893e808977a2e1a6d34b3162d6' (2024-06-30) → 'github:Mic92/sops-nix/eb34eb588132d653e4c4925d862f1e5a227cc2ab' (2024-07-27) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/4a1e673523344f6ccc84b37f4413ad74ea19a119' (2024-06-29) → 'github:NixOS/nixpkgs/556533a23879fc7e5f98dd2e0b31a6911a213171' (2024-07-21) --- flake.lock | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/flake.lock b/flake.lock index dab6ebf..c541444 100644 --- a/flake.lock +++ b/flake.lock @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1719733833, - "narHash": "sha256-6h2EqZU9bL9rHlXE+2LCBgnDImejzbS+4dYsNDDFlkY=", + "lastModified": 1722821805, + "narHash": "sha256-FGrUPUD+LMDwJsYyNSxNIzFMldtCm8wXiQuyL2PHSrM=", "owner": "nix-community", "repo": "disko", - "rev": "d185770ea261fb5cf81aa5ad1791b93a7834d12c", + "rev": "0257e44f4ad472b54f19a6dd1615aee7fa48ed49", "type": "github" }, "original": { @@ -157,11 +157,11 @@ ] }, "locked": { - "lastModified": 1719541573, - "narHash": "sha256-9j8Rtv5UWsD4A3jAh8MpopNGmftSAoI8htssmXLu8jU=", + "lastModified": 1722661736, + "narHash": "sha256-0lujsK40JV/2PlqCjhZMGpHKL4vDKzJcnkFJYnG1WZA=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "1176cc325e5e1d46c7a018663a8e02e699e838ec", + "rev": "699a175398410688214615a9d977354e9ef98d2d", "type": "github" }, "original": { @@ -210,27 +210,27 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1719663039, - "narHash": "sha256-tXlrgAQygNIy49LDVFuPXlWD2zTQV9/F8pfoqwwPJyo=", + "lastModified": 1721524707, + "narHash": "sha256-5NctRsoE54N86nWd0psae70YSLfrOek3Kv1e8KoXe/0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "4a1e673523344f6ccc84b37f4413ad74ea19a119", + "rev": "556533a23879fc7e5f98dd2e0b31a6911a213171", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.11", + "ref": "release-24.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1719824438, - "narHash": "sha256-pY0wosAgcr9W4vmGML0T3BVhQiGuKoozCbs2t+Je1zc=", + "lastModified": 1722849152, + "narHash": "sha256-Es/syckEivSAJWxVF6vRYAFMAgXhJpIPdxMwN70NYxo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "7f993cdf26ccef564eabf31fdb40d140821e12bc", + "rev": "41d21a82c38e226e234e16f4ff213b3fcf85e6e9", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1719825363, - "narHash": "sha256-2ASBatUTQWNIiTeBZRuxROu27MyOavVnzeCv7h40QNw=", + "lastModified": 1722821716, + "narHash": "sha256-VZMyGaYBuuQ+PCF4iRNeqJ/lbowOMQnnVF2Vg0tR3Dk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "10c832d0548e9e3a6df7eb51e68c2783212a303e", + "rev": "0ab9c4c1e0cab782fcde00ec2b32436abfd2a6d4", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1719716556, - "narHash": "sha256-KA9gy2Wkv76s4A8eLnOcdKVTygewbw3xsB8+awNMyqs=", + "lastModified": 1722114803, + "narHash": "sha256-s6YhI8UHwQvO4cIFLwl1wZ1eS5Cuuw7ld2VzUchdFP0=", "owner": "Mic92", "repo": "sops-nix", - "rev": "b5974d4331fb6c893e808977a2e1a6d34b3162d6", + "rev": "eb34eb588132d653e4c4925d862f1e5a227cc2ab", "type": "github" }, "original": { From e1bd183cdda6a61930cffa4061e688a5a5bfc981 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 5 Aug 2024 19:42:55 +0200 Subject: [PATCH 126/196] pkgs: Update sources --- pkgs/_sources_nextcloud/generated.json | 24 ++++++++++++------------ pkgs/_sources_nextcloud/generated.nix | 24 ++++++++++++------------ pkgs/nextcloud-apps.toml | 6 +++--- 3 files changed, 27 insertions(+), 27 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index c216c8d..73a69ea 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-wUeXcbxNCRA2brzdCHKwl0zbhmDucKv1ZCkF3KlQ8O4=", + "sha256": "sha256-32xlI+cQNlJT255F3lmx04FkeZdzd93YzSA3wPcETlQ=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.2/bookmarks-14.2.2.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.3/bookmarks-14.2.3.tar.gz" }, - "version": "14.2.2" + "version": "14.2.3" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-cuAqJz1cZ+VfxttAKjWIe11DFwWGLdSSvcNJKQKidgk=", + "sha256": "sha256-k73g1SpepMz0kBWX67dLahE/vE1AgTzTV+Sq6UBNPuU=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.8/calendar-v4.7.8.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.14/calendar-v4.7.14.tar.gz" }, - "version": "v4.7.8" + "version": "v4.7.14" }, "contacts": { "cargoLocks": null, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-XNGjf7SWgJYFdVNOh3ED0jxSG0GJwWImVQq4cJT1Lo4=", + "sha256": "sha256-AhTZGQCLeNgsRBF5w3+Lf9JtNN4D1QncB5t+odU+XUc=", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha8/news.tar.gz" }, - "version": "25.0.0-alpha7" + "version": "25.0.0-alpha8" }, "notes": { "cargoLocks": null, @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-ydpxatwuZUz7XIgK8FMklZlxNQklpsP8Uqpxvt3iK0k=", + "sha256": "sha256-A3QNWGWeC2OcZngMrh9NpYbU5qp5x9xiDcRfB9cRXBo=", "type": "tarball", - "url": "https://github.com/nextcloud/notes/releases/download/v4.10.0/notes.tar.gz" + "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.10.1/notes-v4.10.1.tar.gz" }, - "version": "v4.10.0" + "version": "v4.10.1" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 3075206..918c8d2 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,18 +3,18 @@ { bookmarks = { pname = "bookmarks"; - version = "14.2.2"; + version = "14.2.3"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.2/bookmarks-14.2.2.tar.gz"; - sha256 = "sha256-wUeXcbxNCRA2brzdCHKwl0zbhmDucKv1ZCkF3KlQ8O4="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.3/bookmarks-14.2.3.tar.gz"; + sha256 = "sha256-32xlI+cQNlJT255F3lmx04FkeZdzd93YzSA3wPcETlQ="; }; }; calendar = { pname = "calendar"; - version = "v4.7.8"; + version = "v4.7.14"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.8/calendar-v4.7.8.tar.gz"; - sha256 = "sha256-cuAqJz1cZ+VfxttAKjWIe11DFwWGLdSSvcNJKQKidgk="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.14/calendar-v4.7.14.tar.gz"; + sha256 = "sha256-k73g1SpepMz0kBWX67dLahE/vE1AgTzTV+Sq6UBNPuU="; }; }; contacts = { @@ -35,18 +35,18 @@ }; news = { pname = "news"; - version = "25.0.0-alpha7"; + version = "25.0.0-alpha8"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha7/news.tar.gz"; - sha256 = "sha256-XNGjf7SWgJYFdVNOh3ED0jxSG0GJwWImVQq4cJT1Lo4="; + url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha8/news.tar.gz"; + sha256 = "sha256-AhTZGQCLeNgsRBF5w3+Lf9JtNN4D1QncB5t+odU+XUc="; }; }; notes = { pname = "notes"; - version = "v4.10.0"; + version = "v4.10.1"; src = fetchTarball { - url = "https://github.com/nextcloud/notes/releases/download/v4.10.0/notes.tar.gz"; - sha256 = "sha256-ydpxatwuZUz7XIgK8FMklZlxNQklpsP8Uqpxvt3iK0k="; + url = "https://github.com/nextcloud-releases/notes/releases/download/v4.10.1/notes-v4.10.1.tar.gz"; + sha256 = "sha256-A3QNWGWeC2OcZngMrh9NpYbU5qp5x9xiDcRfB9cRXBo="; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 9023dd3..89dccb4 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -20,9 +20,9 @@ fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/r [news] # Update manually until angular rewrite is done # src.github = "nextcloud/news" -src.manual = "25.0.0-alpha7" +src.manual = "25.0.0-alpha8" fetch.tarball = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" [notes] -src.github = "nextcloud/notes" -fetch.tarball = "https://github.com/nextcloud/notes/releases/download/$ver/notes.tar.gz" +src.github = "nextcloud-releases/notes" +fetch.tarball = "https://github.com/nextcloud-releases/notes/releases/download/$ver/notes-$ver.tar.gz" From 521190297bc2fa7380383df26ba559053ab246d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 18 Aug 2024 17:24:45 +0200 Subject: [PATCH 127/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/0257e44f4ad472b54f19a6dd1615aee7fa48ed49' (2024-08-05) → 'github:nix-community/disko/276a0d055a720691912c6a34abb724e395c8e38a' (2024-08-15) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/0ab9c4c1e0cab782fcde00ec2b32436abfd2a6d4' (2024-08-05) → 'github:nixos/nixpkgs/1cbd3d585263dc620c483e138d352a39b9f0e3ec' (2024-08-17) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/41d21a82c38e226e234e16f4ff213b3fcf85e6e9' (2024-08-05) → 'github:nixos/nixpkgs/abcef4da4ebb72240bddc370a27263627e64877f' (2024-08-18) • Updated input 'sops-nix': 'github:Mic92/sops-nix/eb34eb588132d653e4c4925d862f1e5a227cc2ab' (2024-07-27) → 'github:Mic92/sops-nix/be0eec2d27563590194a9206f551a6f73d52fa34' (2024-08-12) --- flake.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index c541444..78327bf 100644 --- a/flake.lock +++ b/flake.lock @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1722821805, - "narHash": "sha256-FGrUPUD+LMDwJsYyNSxNIzFMldtCm8wXiQuyL2PHSrM=", + "lastModified": 1723685519, + "narHash": "sha256-GkXQIoZmW2zCPp1YFtAYGg/xHNyFH/Mgm79lcs81rq0=", "owner": "nix-community", "repo": "disko", - "rev": "0257e44f4ad472b54f19a6dd1615aee7fa48ed49", + "rev": "276a0d055a720691912c6a34abb724e395c8e38a", "type": "github" }, "original": { @@ -226,11 +226,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1722849152, - "narHash": "sha256-Es/syckEivSAJWxVF6vRYAFMAgXhJpIPdxMwN70NYxo=", + "lastModified": 1723957280, + "narHash": "sha256-J08Yqf2IJ73y7myI69qEKsQ048ibweG6FeJeCxbIdB4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "41d21a82c38e226e234e16f4ff213b3fcf85e6e9", + "rev": "abcef4da4ebb72240bddc370a27263627e64877f", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1722821716, - "narHash": "sha256-VZMyGaYBuuQ+PCF4iRNeqJ/lbowOMQnnVF2Vg0tR3Dk=", + "lastModified": 1723920526, + "narHash": "sha256-USs6A60raDKZ/8BEpqja1XjZIsRzADX+NtWKH6wIxIw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0ab9c4c1e0cab782fcde00ec2b32436abfd2a6d4", + "rev": "1cbd3d585263dc620c483e138d352a39b9f0e3ec", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1722114803, - "narHash": "sha256-s6YhI8UHwQvO4cIFLwl1wZ1eS5Cuuw7ld2VzUchdFP0=", + "lastModified": 1723501126, + "narHash": "sha256-N9IcHgj/p1+2Pvk8P4Zc1bfrMwld5PcosVA0nL6IGdE=", "owner": "Mic92", "repo": "sops-nix", - "rev": "eb34eb588132d653e4c4925d862f1e5a227cc2ab", + "rev": "be0eec2d27563590194a9206f551a6f73d52fa34", "type": "github" }, "original": { From 0ad265f6aa269c953c76cbc998550a864ec72653 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 18 Aug 2024 18:51:16 +0200 Subject: [PATCH 128/196] pkgs/sources: Update package sources --- pkgs/_sources_nextcloud/generated.json | 12 ++++++------ pkgs/_sources_nextcloud/generated.nix | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 73a69ea..4071726 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-32xlI+cQNlJT255F3lmx04FkeZdzd93YzSA3wPcETlQ=", + "sha256": "sha256-V4zZsAwPn8QiCXEDqOgNFHaXqMOcHMpMbJ1Oz3Db0pc=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.3/bookmarks-14.2.3.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.4/bookmarks-14.2.4.tar.gz" }, - "version": "14.2.3" + "version": "14.2.4" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-k73g1SpepMz0kBWX67dLahE/vE1AgTzTV+Sq6UBNPuU=", + "sha256": "sha256-sipXeyOL4OhENz7V2beFeSYBAoFZdCWtqftIy0lsqEY=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.14/calendar-v4.7.14.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.15/calendar-v4.7.15.tar.gz" }, - "version": "v4.7.14" + "version": "v4.7.15" }, "contacts": { "cargoLocks": null, diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 918c8d2..53e26d1 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,18 +3,18 @@ { bookmarks = { pname = "bookmarks"; - version = "14.2.3"; + version = "14.2.4"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.3/bookmarks-14.2.3.tar.gz"; - sha256 = "sha256-32xlI+cQNlJT255F3lmx04FkeZdzd93YzSA3wPcETlQ="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.4/bookmarks-14.2.4.tar.gz"; + sha256 = "sha256-V4zZsAwPn8QiCXEDqOgNFHaXqMOcHMpMbJ1Oz3Db0pc="; }; }; calendar = { pname = "calendar"; - version = "v4.7.14"; + version = "v4.7.15"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.14/calendar-v4.7.14.tar.gz"; - sha256 = "sha256-k73g1SpepMz0kBWX67dLahE/vE1AgTzTV+Sq6UBNPuU="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.15/calendar-v4.7.15.tar.gz"; + sha256 = "sha256-sipXeyOL4OhENz7V2beFeSYBAoFZdCWtqftIy0lsqEY="; }; }; contacts = { From 3a591863b01d275a472ae6706bb58ed4794b305e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 18 Aug 2024 17:36:45 +0200 Subject: [PATCH 129/196] flake.nix: Add default package to allow easily creating gc root --- flake.nix | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/flake.nix b/flake.nix index e3ff531..56f3972 100644 --- a/flake.nix +++ b/flake.nix @@ -43,6 +43,16 @@ let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; + + vm = nixpkgs.lib.nixosSystem { + inherit system; + specialArgs.flake-inputs = inputs; + + modules = [ + ./configuration + ./configuration/hardware-specific/vm.nix + ]; + }; in { ################## @@ -83,6 +93,12 @@ ######### checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; + ########################### + # Garbage collection root # + ########################### + + packages.${system}.default = vm.config.system.build.vm; + ################### # Utility scripts # ################### @@ -93,15 +109,6 @@ type = "app"; program = let - vm = nixpkgs.lib.nixosSystem { - inherit system; - specialArgs.flake-inputs = inputs; - - modules = [ - ./configuration - ./configuration/hardware-specific/vm.nix - ]; - }; in (pkgs.writeShellScript "" '' ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm From 04f7a7ef1d38906163afc9cddfa8ce2b0ebf3b45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 18 Aug 2024 20:41:20 +0200 Subject: [PATCH 130/196] treewide: Use nixfmt for formatting --- configuration/default.nix | 21 +- .../hardware-specific/hetzner/default.nix | 4 +- .../hardware-specific/hetzner/disko.nix | 15 +- configuration/hardware-specific/vm.nix | 3 +- configuration/nginx.nix | 47 ++- configuration/services/afvalcalendar.nix | 19 +- configuration/services/backups.nix | 308 +++++++++--------- configuration/services/battery-manager.nix | 10 +- configuration/services/conduit.nix | 65 ++-- configuration/services/fail2ban.nix | 3 +- configuration/services/foundryvtt.nix | 15 +- configuration/services/gitea.nix | 13 +- configuration/services/metrics/exporters.nix | 50 ++- configuration/services/metrics/options.nix | 218 +++++++------ .../services/metrics/victoriametrics.nix | 7 +- configuration/services/nextcloud.nix | 25 +- configuration/services/postgres.nix | 3 +- configuration/services/starbound.nix | 9 +- configuration/services/wireguard.nix | 3 +- flake.nix | 29 +- modules/default.nix | 6 +- modules/nginxExtensions.nix | 34 +- pkgs/afvalcalendar/default.nix | 13 +- pkgs/default.nix | 7 +- pkgs/mkNextcloudApp.nix | 6 +- pkgs/prometheus/fail2ban-exporter.nix | 5 +- pkgs/starbound/default.nix | 24 +- 27 files changed, 496 insertions(+), 466 deletions(-) diff --git a/configuration/default.nix b/configuration/default.nix index 792a4c9..333488b 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,10 +1,12 @@ -{ config -, pkgs -, lib -, modulesPath -, flake-inputs -, ... -}: { +{ + config, + pkgs, + lib, + modulesPath, + flake-inputs, + ... +}: +{ imports = [ flake-inputs.disko.nixosModules.disko flake-inputs.sops-nix.nixosModules.sops @@ -51,7 +53,10 @@ # Optimization for minecraft servers, see: # https://bugs.mojang.com/browse/MC-183518 - boot.kernelParams = [ "highres=off" "nohz=off" ]; + boot.kernelParams = [ + "highres=off" + "nohz=off" + ]; networking = { usePredictableInterfaceNames = false; diff --git a/configuration/hardware-specific/hetzner/default.nix b/configuration/hardware-specific/hetzner/default.nix index 3106f19..6795377 100644 --- a/configuration/hardware-specific/hetzner/default.nix +++ b/configuration/hardware-specific/hetzner/default.nix @@ -25,9 +25,7 @@ }; } # IPv6 - { - addressConfig.Address = "2a01:4f8:10b:3c85::2/64"; - } + { addressConfig.Address = "2a01:4f8:10b:3c85::2/64"; } ]; networkConfig = { diff --git a/configuration/hardware-specific/hetzner/disko.nix b/configuration/hardware-specific/hetzner/disko.nix index a2ea764..cc15471 100644 --- a/configuration/hardware-specific/hetzner/disko.nix +++ b/configuration/hardware-specific/hetzner/disko.nix @@ -19,7 +19,10 @@ }; }; - mountOptions = [ "compress=zstd" "noatime" ]; + mountOptions = [ + "compress=zstd" + "noatime" + ]; in { sda = { @@ -54,7 +57,15 @@ type = "btrfs"; # Hack to get multi-device btrfs going # See https://github.com/nix-community/disko/issues/99 - extraArgs = [ "-d" "raid1" "-m" "raid1" "--runtime-features" "quota" "/dev/sda3" ]; + extraArgs = [ + "-d" + "raid1" + "-m" + "raid1" + "--runtime-features" + "quota" + "/dev/sda3" + ]; subvolumes = { "/volume" = { }; "/volume/root" = { diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 86fcaed..1783956 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -1,4 +1,5 @@ -{ lib, ... }: { +{ lib, ... }: +{ users.users.tlater.password = "insecure"; # Disable graphical tty so -curses works diff --git a/configuration/nginx.nix b/configuration/nginx.nix index d696bba..b38118b 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -1,7 +1,5 @@ -{ config -, lib -, ... -}: { +{ config, lib, ... }: +{ services.nginx = { enable = true; recommendedTlsSettings = true; @@ -26,26 +24,23 @@ # Override the default, just keep fewer logs nginx.rotate = 6; } - // lib.mapAttrs' - (virtualHost: _: - lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { - frequency = "daily"; - rotate = 2; - compress = true; - delaycompress = true; - su = "${config.services.nginx.user} ${config.services.nginx.group}"; - postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; - }) - config.services.nginx.virtualHosts; + // lib.mapAttrs' ( + virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + } + ) config.services.nginx.virtualHosts; - systemd.tmpfiles.rules = - lib.mapAttrsToList - ( - virtualHost: _: - # - "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" - ) - config.services.nginx.virtualHosts; + systemd.tmpfiles.rules = lib.mapAttrsToList ( + virtualHost: _: + # + "d /var/log/nginx/${virtualHost} 0750 ${config.services.nginx.user} ${config.services.nginx.group}" + ) config.services.nginx.virtualHosts; security.acme = { defaults.email = "tm@tlater.net"; @@ -61,8 +56,8 @@ services.backups.acme = { user = "acme"; - paths = - lib.mapAttrsToList (virtualHost: _: "/var/lib/acme/${virtualHost}") - config.services.nginx.virtualHosts; + paths = lib.mapAttrsToList ( + virtualHost: _: "/var/lib/acme/${virtualHost}" + ) config.services.nginx.virtualHosts; }; } diff --git a/configuration/services/afvalcalendar.nix b/configuration/services/afvalcalendar.nix index 28e3a75..ec7d9f7 100644 --- a/configuration/services/afvalcalendar.nix +++ b/configuration/services/afvalcalendar.nix @@ -1,7 +1,5 @@ -{ pkgs -, config -, ... -}: { +{ pkgs, config, ... }: +{ systemd.services.afvalcalendar = { description = "Enschede afvalcalendar -> ical converter"; wantedBy = [ "multi-user.target" ]; @@ -25,16 +23,23 @@ ProtectKernelModules = true; ProtectKernelLogs = true; ProtectControlGroups = true; - RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; + RestrictAddressFamilies = [ + "AF_UNIX" + "AF_INET" + "AF_INET6" + ]; RestrictNamespaces = true; LockPersonality = true; MemoryDenyWriteExecute = true; RestrictRealtime = true; RestrictSUIDSGID = true; SystemCallArchitectures = "native"; - SystemCallFilter = [ "@system-service" "~@privileged @resources @setuid @keyring" ]; + SystemCallFilter = [ + "@system-service" + "~@privileged @resources @setuid @keyring" + ]; - Umask = 0002; + Umask = 2; SupplementaryGroups = "afvalcalendar-hosting"; ReadWritePaths = "/srv/afvalcalendar"; diff --git a/configuration/services/backups.nix b/configuration/services/backups.nix index 7c77399..81e3554 100644 --- a/configuration/services/backups.nix +++ b/configuration/services/backups.nix @@ -1,29 +1,35 @@ -{ config -, pkgs -, lib -, ... +{ + config, + pkgs, + lib, + ... }: let inherit (lib) types optional singleton; - mkShutdownScript = service: + mkShutdownScript = + service: pkgs.writeShellScript "backup-${service}-shutdown" '' if systemctl is-active --quiet '${service}'; then touch '/tmp/${service}-was-active' systemctl stop '${service}' fi ''; - mkRestartScript = service: + mkRestartScript = + service: pkgs.writeShellScript "backup-${service}-restart" '' if [ -f '/tmp/${service}-was-active' ]; then rm '/tmp/${service}-was-active' systemctl start '${service}' fi ''; - writeScript = name: packages: text: - lib.getExe (pkgs.writeShellApplication { - inherit name text; - runtimeInputs = packages; - }); + writeScript = + name: packages: text: + lib.getExe ( + pkgs.writeShellApplication { + inherit name text; + runtimeInputs = packages; + } + ); # *NOT* a TOML file, for some reason quotes are interpreted # *literally @@ -49,85 +55,87 @@ in description = lib.mdDoc '' Configure restic backups with a specific tag. ''; - type = types.attrsOf (types.submodule ({ config - , name - , ... - }: { - options = { - user = lib.mkOption { - type = types.str; - description = '' - The user as which to run the backup. - ''; - }; - paths = lib.mkOption { - type = types.listOf types.str; - description = '' - The paths to back up. - ''; - }; - tag = lib.mkOption { - type = types.str; - description = '' - The restic tag to mark the backup with. - ''; - default = name; - }; - preparation = { - packages = lib.mkOption { - type = types.listOf types.package; - default = [ ]; - description = '' - The list of packages to make available in the - preparation script. - ''; - }; - text = lib.mkOption { - type = types.nullOr types.str; - default = null; - description = '' - The preparation script to run before the backup. + type = types.attrsOf ( + types.submodule ( + { config, name, ... }: + { + options = { + user = lib.mkOption { + type = types.str; + description = '' + The user as which to run the backup. + ''; + }; + paths = lib.mkOption { + type = types.listOf types.str; + description = '' + The paths to back up. + ''; + }; + tag = lib.mkOption { + type = types.str; + description = '' + The restic tag to mark the backup with. + ''; + default = name; + }; + preparation = { + packages = lib.mkOption { + type = types.listOf types.package; + default = [ ]; + description = '' + The list of packages to make available in the + preparation script. + ''; + }; + text = lib.mkOption { + type = types.nullOr types.str; + default = null; + description = '' + The preparation script to run before the backup. - This should include things like database dumps and - enabling maintenance modes. If a service needs to be - shut down for backups, use `pauseServices` instead. - ''; - }; - }; - cleanup = { - packages = lib.mkOption { - type = types.listOf types.package; - default = [ ]; - description = '' - The list of packages to make available in the - cleanup script. - ''; - }; - text = lib.mkOption { - type = types.nullOr types.str; - default = null; - description = '' - The cleanup script to run after the backup. + This should include things like database dumps and + enabling maintenance modes. If a service needs to be + shut down for backups, use `pauseServices` instead. + ''; + }; + }; + cleanup = { + packages = lib.mkOption { + type = types.listOf types.package; + default = [ ]; + description = '' + The list of packages to make available in the + cleanup script. + ''; + }; + text = lib.mkOption { + type = types.nullOr types.str; + default = null; + description = '' + The cleanup script to run after the backup. - This should do things like cleaning up database dumps - and disabling maintenance modes. - ''; - }; - }; - pauseServices = lib.mkOption { - type = types.listOf types.str; - default = [ ]; - description = '' - The systemd services that need to be shut down before - the backup can run. Services will be restarted after the - backup is complete. + This should do things like cleaning up database dumps + and disabling maintenance modes. + ''; + }; + }; + pauseServices = lib.mkOption { + type = types.listOf types.str; + default = [ ]; + description = '' + The systemd services that need to be shut down before + the backup can run. Services will be restarted after the + backup is complete. - This is intended to be used for services that do not - support hot backups. - ''; - }; - }; - })); + This is intended to be used for services that do not + support hot backups. + ''; + }; + }; + } + ) + ); }; }; @@ -164,58 +172,68 @@ in }; }; } - // lib.mapAttrs' - (name: backup: - lib.nameValuePair "backup-${name}" { - # Don't want to restart mid-backup - restartIfChanged = false; + // lib.mapAttrs' ( + name: backup: + lib.nameValuePair "backup-${name}" { + # Don't want to restart mid-backup + restartIfChanged = false; - environment = - resticEnv - // { - RESTIC_CACHE_DIR = "%C/backup-${name}"; - }; + environment = resticEnv // { + RESTIC_CACHE_DIR = "%C/backup-${name}"; + }; - path = with pkgs; [ - coreutils - openssh - rclone - restic + path = with pkgs; [ + coreutils + openssh + rclone + restic + ]; + + # TODO(tlater): If I ever add more than one repo, service + # shutdown/restarting will potentially break if multiple + # backups for the same service overlap. A more clever + # sentinel file with reference counts would probably solve + # this. + serviceConfig = { + User = backup.user; + Group = "backup"; + RuntimeDirectory = "backup-${name}"; + CacheDirectory = "backup-${name}"; + CacheDirectoryMode = "0700"; + PrivateTmp = true; + + ExecStart = [ + (lib.concatStringsSep " " ( + [ + "${pkgs.restic}/bin/restic" + "backup" + "--tag" + name + ] + ++ backup.paths + )) ]; - # TODO(tlater): If I ever add more than one repo, service - # shutdown/restarting will potentially break if multiple - # backups for the same service overlap. A more clever - # sentinel file with reference counts would probably solve - # this. - serviceConfig = { - User = backup.user; - Group = "backup"; - RuntimeDirectory = "backup-${name}"; - CacheDirectory = "backup-${name}"; - CacheDirectoryMode = "0700"; - PrivateTmp = true; - - ExecStart = [ - (lib.concatStringsSep " " ([ "${pkgs.restic}/bin/restic" "backup" "--tag" name ] ++ backup.paths)) - ]; - - ExecStartPre = - map (service: "+${mkShutdownScript service}") backup.pauseServices - ++ singleton (writeScript "backup-${name}-repo-init" [ ] '' + ExecStartPre = + map (service: "+${mkShutdownScript service}") backup.pauseServices + ++ singleton ( + writeScript "backup-${name}-repo-init" [ ] '' restic snapshots || restic init - '') - ++ optional (backup.preparation.text != null) - (writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text); + '' + ) + ++ optional (backup.preparation.text != null) ( + writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text + ); - # TODO(tlater): Add repo pruning/checking - ExecStopPost = - map (service: "+${mkRestartScript service}") backup.pauseServices - ++ optional (backup.cleanup.text != null) - (writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text); - }; - }) - config.services.backups; + # TODO(tlater): Add repo pruning/checking + ExecStopPost = + map (service: "+${mkRestartScript service}") backup.pauseServices + ++ optional (backup.cleanup.text != null) ( + writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text + ); + }; + } + ) config.services.backups; systemd.timers = { @@ -227,18 +245,18 @@ in # of the backup jobs. }; } - // lib.mapAttrs' - (name: backup: - lib.nameValuePair "backup-${name}" { - wantedBy = [ "timers.target" ]; - timerConfig = { - OnCalendar = "Wednesday 02:30:00 UTC"; - RandomizedDelaySec = "1h"; - FixedRandomDelay = true; - Persistent = true; - }; - }) - config.services.backups; + // lib.mapAttrs' ( + name: backup: + lib.nameValuePair "backup-${name}" { + wantedBy = [ "timers.target" ]; + timerConfig = { + OnCalendar = "Wednesday 02:30:00 UTC"; + RandomizedDelaySec = "1h"; + FixedRandomDelay = true; + Persistent = true; + }; + } + ) config.services.backups; users = { # This user is only used to own the ssh key, because apparently diff --git a/configuration/services/battery-manager.nix b/configuration/services/battery-manager.nix index 7783a3b..a16cca1 100644 --- a/configuration/services/battery-manager.nix +++ b/configuration/services/battery-manager.nix @@ -1,10 +1,6 @@ -{ config -, flake-inputs -, ... -}: { - imports = [ - flake-inputs.sonnenshift.nixosModules.default - ]; +{ config, flake-inputs, ... }: +{ + imports = [ flake-inputs.sonnenshift.nixosModules.default ]; services.batteryManager = { enable = true; diff --git a/configuration/services/conduit.nix b/configuration/services/conduit.nix index 8734785..4e53241 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit.nix @@ -1,7 +1,8 @@ -{ pkgs -, config -, lib -, ... +{ + pkgs, + config, + lib, + ... }: let inherit (lib.strings) concatMapStringsSep; @@ -42,28 +43,30 @@ in systemd.services.heisenbridge = let replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; - registrationFile = builtins.toFile "heisenbridge-registration.yaml" (builtins.toJSON { - id = "heisenbridge"; - url = "http://127.0.0.1:9898"; - as_token = "@AS_TOKEN@"; - hs_token = "@HS_TOKEN@"; - rate_limited = false; - sender_localpart = "heisenbridge"; - namespaces = { - users = [ - { - regex = "@irc_.*"; - exclusive = true; - } - { - regex = "@heisenbridge:.*"; - exclusive = true; - } - ]; - aliases = [ ]; - rooms = [ ]; - }; - }); + registrationFile = builtins.toFile "heisenbridge-registration.yaml" ( + builtins.toJSON { + id = "heisenbridge"; + url = "http://127.0.0.1:9898"; + as_token = "@AS_TOKEN@"; + hs_token = "@HS_TOKEN@"; + rate_limited = false; + sender_localpart = "heisenbridge"; + namespaces = { + users = [ + { + regex = "@irc_.*"; + exclusive = true; + } + { + regex = "@heisenbridge:.*"; + exclusive = true; + } + ]; + aliases = [ ]; + rooms = [ ]; + }; + } + ); # TODO(tlater): Starting with systemd 253 it will become possible # to do the credential setup as part of ExecStartPre/preStart @@ -114,7 +117,7 @@ in RestrictRealtime = true; ProtectProc = "invisible"; ProcSubset = "pid"; - UMask = 0077; + UMask = 77; # For the identd port # CapabilityBoundingSet = ["CAP_NET_BIND_SERVICE"]; @@ -134,9 +137,7 @@ in use-auth-secret = true; static-auth-secret-file = config.sops.secrets."turn/secret".path; realm = turn-realm; - relay-ips = [ - "116.202.158.55" - ]; + relay-ips = [ "116.202.158.55" ]; # SSL config # @@ -245,9 +246,7 @@ in services.backups.conduit = { user = "root"; - paths = [ - "/var/lib/private/matrix-conduit/" - ]; + paths = [ "/var/lib/private/matrix-conduit/" ]; # Other services store their data in conduit, so no other services # need to be shut down currently. pauseServices = [ "conduit.service" ]; diff --git a/configuration/services/fail2ban.nix b/configuration/services/fail2ban.nix index 1811046..f09668c 100644 --- a/configuration/services/fail2ban.nix +++ b/configuration/services/fail2ban.nix @@ -1,4 +1,5 @@ -{ pkgs, ... }: { +{ pkgs, ... }: +{ services.fail2ban = { enable = true; extraPackages = [ pkgs.ipset ]; diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index 3383ab3..614b818 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -1,8 +1,9 @@ -{ lib -, config -, flake-inputs -, pkgs -, ... +{ + lib, + config, + flake-inputs, + pkgs, + ... }: let domain = "foundryvtt.${config.services.nginx.domain}"; @@ -40,9 +41,7 @@ in services.backups.foundryvtt = { user = "foundryvtt"; - paths = [ - config.services.foundryvtt.dataDir - ]; + paths = [ config.services.foundryvtt.dataDir ]; pauseServices = [ "foundryvtt.service" ]; }; } diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index 4ef6238..c88dd01 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -1,7 +1,8 @@ -{ pkgs -, config -, lib -, ... +{ + pkgs, + config, + lib, + ... }: let domain = "gitea.${config.services.nginx.domain}"; @@ -34,9 +35,7 @@ in secretPath = config.sops.secrets."forgejo/metrics-token".path; runConfig = "${config.services.forgejo.customDir}/conf/app.ini"; in - [ - "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" - ]; + [ "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" ]; # Set up SSL services.nginx.virtualHosts."${domain}" = diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index e17be8e..e16b945 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -1,7 +1,8 @@ -{ config -, pkgs -, lib -, ... +{ + config, + pkgs, + lib, + ... }: let yaml = pkgs.formats.yaml { }; @@ -20,9 +21,7 @@ in "tlater.com" ]; in - [ - "--config=${yaml.generate "domains.yml" conf}" - ]; + [ "--config=${yaml.generate "domains.yml" conf}" ]; }; # System statistics @@ -51,26 +50,21 @@ in listenAddress = "127.0.0.1"; group = "nginx"; - settings.namespaces = - lib.mapAttrsToList - (name: virtualHost: { - inherit name; - metrics_override.prefix = "nginxlog"; - namespace_label = "vhost"; + settings.namespaces = lib.mapAttrsToList (name: virtualHost: { + inherit name; + metrics_override.prefix = "nginxlog"; + namespace_label = "vhost"; - format = lib.concatStringsSep " " [ - "$remote_addr - $remote_user [$time_local]" - ''"$request" $status $body_bytes_sent'' - ''"$http_referer" "$http_user_agent"'' - ''rt=$request_time uct="$upstream_connect_time"'' - ''uht="$upstream_header_time" urt="$upstream_response_time"'' - ]; + format = lib.concatStringsSep " " [ + "$remote_addr - $remote_user [$time_local]" + ''"$request" $status $body_bytes_sent'' + ''"$http_referer" "$http_user_agent"'' + ''rt=$request_time uct="$upstream_connect_time"'' + ''uht="$upstream_header_time" urt="$upstream_response_time"'' + ]; - source.files = [ - "/var/log/nginx/${name}/access.log" - ]; - }) - config.services.nginx.virtualHosts; + source.files = [ "/var/log/nginx/${name}/access.log" ]; + }) config.services.nginx.virtualHosts; }; }; @@ -86,7 +80,11 @@ in requires = [ "fail2ban.service" ]; serviceConfig = { Group = "fail2ban"; - RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ]; + RestrictAddressFamilies = [ + "AF_UNIX" + "AF_INET" + "AF_INET6" + ]; ExecStart = lib.concatStringsSep " " [ "${pkgs.local.prometheus-fail2ban-exporter}/bin/fail2ban-prometheus-exporter" "--collector.f2b.socket=/var/run/fail2ban/fail2ban.sock" diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index 552aec8..5dd17a3 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -1,7 +1,8 @@ -{ pkgs -, config -, lib -, ... +{ + pkgs, + config, + lib, + ... }: let inherit (lib) types mkOption mkDefault; @@ -11,87 +12,94 @@ in options = { services.prometheus = { extraExporters = mkOption { - type = types.attrsOf (types.submodule { - options = { - port = mkOption { - type = types.int; - description = "The port on which this exporter listens."; + type = types.attrsOf ( + types.submodule { + options = { + port = mkOption { + type = types.int; + description = "The port on which this exporter listens."; + }; + listenAddress = mkOption { + type = types.str; + default = "127.0.0.1"; + description = "Address to listen on."; + }; + serviceOpts = mkOption { + type = types.attrs; + description = "An attrset to be merged with the exporter's systemd service."; + }; }; - listenAddress = mkOption { - type = types.str; - default = "127.0.0.1"; - description = "Address to listen on."; - }; - serviceOpts = mkOption { - type = types.attrs; - description = "An attrset to be merged with the exporter's systemd service."; - }; - }; - }); + } + ); }; }; services.victoriametrics.scrapeConfigs = mkOption { - type = types.attrsOf (types.submodule ({ name - , self - , ... - }: { - options = { - job_name = mkOption { - type = types.str; - default = name; - }; - - extraSettings = mkOption { - type = types.anything; - description = '' - Other settings to set for this scrape config. - ''; - default = { }; - }; - - targets = mkOption { - type = types.listOf types.str; - description = lib.mdDoc '' - Addresses scrape targets for this config listen on. - - Shortcut for `static_configs = lib.singleton {targets = [];}` - ''; - default = [ ]; - }; - - static_configs = mkOption { - default = [ ]; - type = types.listOf (types.submodule { - options = { - targets = mkOption { - type = types.listOf types.str; - description = lib.mdDoc '' - The addresses scrape targets for this config listen on. - - Must in `listenAddress:port` format. - ''; - }; - labels = mkOption { - type = types.attrsOf types.str; - description = lib.mdDoc '' - Labels to apply to all targets defined for this static config. - ''; - default = { }; - }; + type = types.attrsOf ( + types.submodule ( + { name, self, ... }: + { + options = { + job_name = mkOption { + type = types.str; + default = name; }; - }); - }; - }; - })); + + extraSettings = mkOption { + type = types.anything; + description = '' + Other settings to set for this scrape config. + ''; + default = { }; + }; + + targets = mkOption { + type = types.listOf types.str; + description = lib.mdDoc '' + Addresses scrape targets for this config listen on. + + Shortcut for `static_configs = lib.singleton {targets = [];}` + ''; + default = [ ]; + }; + + static_configs = mkOption { + default = [ ]; + type = types.listOf ( + types.submodule { + options = { + targets = mkOption { + type = types.listOf types.str; + description = lib.mdDoc '' + The addresses scrape targets for this config listen on. + + Must in `listenAddress:port` format. + ''; + }; + labels = mkOption { + type = types.attrsOf types.str; + description = lib.mdDoc '' + Labels to apply to all targets defined for this static config. + ''; + default = { }; + }; + }; + } + ); + }; + }; + } + ) + ); }; }; config = { systemd.services = lib.mkMerge [ - (lib.mapAttrs' - (name: exporter: - lib.nameValuePair "prometheus-${name}-exporter" (lib.mkMerge [ + (lib.mapAttrs' ( + name: exporter: + lib.nameValuePair "prometheus-${name}-exporter" ( + lib.mkMerge [ { # Shamelessly copied from upstream because the upstream # module is an intractable mess @@ -117,7 +125,10 @@ in serviceConfig.ProtectKernelTunables = true; serviceConfig.ProtectSystem = mkDefault "strict"; serviceConfig.RemoveIPC = true; - serviceConfig.RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + serviceConfig.RestrictAddressFamilies = [ + "AF_INET" + "AF_INET6" + ]; serviceConfig.RestrictNamespaces = true; serviceConfig.RestrictRealtime = true; serviceConfig.RestrictSUIDSGID = true; @@ -125,8 +136,9 @@ in serviceConfig.UMask = "0077"; } exporter.serviceOpts - ])) - config.services.prometheus.extraExporters) + ] + ) + ) config.services.prometheus.extraExporters) { vmagent-scrape-exporters = @@ -134,24 +146,25 @@ in listenAddress = config.services.victoriametrics.listenAddress; vmAddr = (lib.optionalString (lib.hasPrefix ":" listenAddress) "127.0.0.1") + listenAddress; promscrape = yaml.generate "prometheus.yml" { - scrape_configs = lib.mapAttrsToList - (_: scrape: - lib.recursiveUpdate - { - inherit (scrape) job_name; - static_configs = - scrape.static_configs - ++ lib.optional (scrape.targets != [ ]) { targets = scrape.targets; }; - } - scrape.extraSettings) - config.services.victoriametrics.scrapeConfigs; + scrape_configs = lib.mapAttrsToList ( + _: scrape: + lib.recursiveUpdate { + inherit (scrape) job_name; + static_configs = + scrape.static_configs + ++ lib.optional (scrape.targets != [ ]) { targets = scrape.targets; }; + } scrape.extraSettings + ) config.services.victoriametrics.scrapeConfigs; }; in { enable = true; path = [ pkgs.victoriametrics ]; wantedBy = [ "multi-user.target" ]; - after = [ "network.target" "victoriametrics.service" ]; + after = [ + "network.target" + "victoriametrics.service" + ]; serviceConfig = { ExecStart = [ (lib.concatStringsSep " " [ @@ -180,7 +193,10 @@ in ProtectKernelTunables = true; ProtectSystem = "strict"; RemoveIPC = true; - RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + RestrictAddressFamilies = [ + "AF_INET" + "AF_INET6" + ]; RestrictNamespaces = true; RestrictRealtime = true; RestrictSUIDSGID = true; @@ -195,19 +211,15 @@ in services.victoriametrics.scrapeConfigs = let - allExporters = - lib.mapAttrs - (name: exporter: { - inherit (exporter) listenAddress port; - }) - ((lib.filterAttrs (_: exporter: builtins.isAttrs exporter && exporter.enable) - config.services.prometheus.exporters) - // config.services.prometheus.extraExporters); + allExporters = lib.mapAttrs (name: exporter: { inherit (exporter) listenAddress port; }) ( + (lib.filterAttrs ( + _: exporter: builtins.isAttrs exporter && exporter.enable + ) config.services.prometheus.exporters) + // config.services.prometheus.extraExporters + ); in - lib.mapAttrs - (_: exporter: { - targets = [ "${exporter.listenAddress}:${toString exporter.port}" ]; - }) - allExporters; + lib.mapAttrs (_: exporter: { + targets = [ "${exporter.listenAddress}:${toString exporter.port}" ]; + }) allExporters; }; } diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index 695b89e..710cf70 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -1,9 +1,8 @@ -{ config, ... }: { +{ config, ... }: +{ config.services.victoriametrics = { enable = true; - extraOptions = [ - "-storage.minFreeDiskSpaceBytes=5GB" - ]; + extraOptions = [ "-storage.minFreeDiskSpaceBytes=5GB" ]; scrapeConfigs = { forgejo = { diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 30adf6e..63c7446 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -1,7 +1,8 @@ -{ pkgs -, config -, lib -, ... +{ + pkgs, + config, + lib, + ... }: let # Update pending on rewrite of nextcloud news, though there is an @@ -15,8 +16,8 @@ in inherit hostName; package = nextcloud; - phpPackage = lib.mkForce - (pkgs.php.override { + phpPackage = lib.mkForce ( + pkgs.php.override { packageOverrides = final: prev: { extensions = prev.extensions // { pgsql = prev.extensions.pgsql.overrideAttrs (old: { @@ -27,7 +28,8 @@ in }); }; }; - }); + } + ); enable = true; maxUploadSize = "2G"; https = true; @@ -52,7 +54,14 @@ in }; extraApps = { - inherit (pkgs.local) bookmarks calendar contacts cookbook news notes; + inherit (pkgs.local) + bookmarks + calendar + contacts + cookbook + news + notes + ; }; }; diff --git a/configuration/services/postgres.nix b/configuration/services/postgres.nix index 62dfb01..85a6843 100644 --- a/configuration/services/postgres.nix +++ b/configuration/services/postgres.nix @@ -1,4 +1,5 @@ -{ pkgs, ... }: { +{ pkgs, ... }: +{ services.postgresql = { package = pkgs.postgresql_14; enable = true; diff --git a/configuration/services/starbound.nix b/configuration/services/starbound.nix index 3b54ee9..f5b23c3 100644 --- a/configuration/services/starbound.nix +++ b/configuration/services/starbound.nix @@ -1,7 +1,4 @@ -{ pkgs -, lib -, ... -}: +{ pkgs, lib, ... }: let inherit (lib) concatStringsSep; in @@ -114,9 +111,7 @@ in services.backups.starbound = { user = "root"; - paths = [ - "/var/lib/private/starbound/storage/universe/" - ]; + paths = [ "/var/lib/private/starbound/storage/universe/" ]; pauseServices = [ "starbound.service" ]; }; } diff --git a/configuration/services/wireguard.nix b/configuration/services/wireguard.nix index 057a2e9..6f8f6a2 100644 --- a/configuration/services/wireguard.nix +++ b/configuration/services/wireguard.nix @@ -1,4 +1,5 @@ -{ config, ... }: { +{ config, ... }: +{ # iptables needs to permit forwarding from wg0 to wg0 networking.firewall.extraCommands = '' iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT diff --git a/flake.nix b/flake.nix index 56f3972..6dbbaa5 100644 --- a/flake.nix +++ b/flake.nix @@ -33,13 +33,14 @@ }; outputs = - { self - , nixpkgs - , sops-nix - , nvfetcher - , deploy-rs - , ... - } @ inputs: + { + self, + nixpkgs, + sops-nix, + nvfetcher, + deploy-rs, + ... + }@inputs: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; @@ -84,7 +85,12 @@ }; sshUser = "tlater"; - sshOpts = [ "-p" "2222" "-o" "ForwardAgent=yes" ]; + sshOpts = [ + "-p" + "2222" + "-o" + "ForwardAgent=yes" + ]; }; }; @@ -144,10 +150,11 @@ # Development environment # ########################### devShells.${system}.default = nixpkgs.legacyPackages.${system}.mkShell { - sopsPGPKeyDirs = [ "./keys/hosts/" "./keys/users/" ]; - nativeBuildInputs = [ - sops-nix.packages.${system}.sops-import-keys-hook + sopsPGPKeyDirs = [ + "./keys/hosts/" + "./keys/users/" ]; + nativeBuildInputs = [ sops-nix.packages.${system}.sops-import-keys-hook ]; packages = with pkgs; [ sops-nix.packages.${system}.sops-init-gpg-key diff --git a/modules/default.nix b/modules/default.nix index 9341a5a..e1db4cc 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1,5 +1 @@ -{ - imports = [ - ./nginxExtensions.nix - ]; -} +{ imports = [ ./nginxExtensions.nix ]; } diff --git a/modules/nginxExtensions.nix b/modules/nginxExtensions.nix index 3603756..bd505d3 100644 --- a/modules/nginxExtensions.nix +++ b/modules/nginxExtensions.nix @@ -1,8 +1,10 @@ -{ config -, pkgs -, lib -, ... -}: { +{ + config, + pkgs, + lib, + ... +}: +{ options = { services.nginx.domain = lib.mkOption { type = lib.types.str; @@ -12,10 +14,8 @@ services.nginx.virtualHosts = let extraVirtualHostOptions = - { name - , config - , ... - }: { + { name, config, ... }: + { options = { enableHSTS = lib.mkEnableOption "Enable HSTS"; @@ -40,9 +40,7 @@ }; }; in - lib.mkOption { - type = lib.types.attrsOf (lib.types.submodule extraVirtualHostOptions); - }; + lib.mkOption { type = lib.types.attrsOf (lib.types.submodule extraVirtualHostOptions); }; }; config = { @@ -51,11 +49,11 @@ let confirm = ''[[ "tlater.net" = ${config.services.nginx.domain} ]]''; in - lib.mapAttrs' - (cert: _: - lib.nameValuePair "acme-${cert}" { - serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; - }) - config.security.acme.certs; + lib.mapAttrs' ( + cert: _: + lib.nameValuePair "acme-${cert}" { + serviceConfig.ExecCondition = ''${pkgs.runtimeShell} -c '${confirm}' ''; + } + ) config.security.acme.certs; }; } diff --git a/pkgs/afvalcalendar/default.nix b/pkgs/afvalcalendar/default.nix index 12b868c..6392220 100644 --- a/pkgs/afvalcalendar/default.nix +++ b/pkgs/afvalcalendar/default.nix @@ -1,19 +1,12 @@ -{ pkgs -, rustPlatform -, ... -}: +{ pkgs, rustPlatform, ... }: rustPlatform.buildRustPackage { pname = "afvalcalendar"; version = "0.1.0"; src = ./.; - nativeBuildInputs = with pkgs; [ - pkg-config - ]; + nativeBuildInputs = with pkgs; [ pkg-config ]; - buildInputs = with pkgs; [ - openssl - ]; + buildInputs = with pkgs; [ openssl ]; cargoHash = "sha256-JXx6aUKdKbUTBCwlBw5i1hZy8ofCfSrhLCwFzqdA8cI="; } diff --git a/pkgs/default.nix b/pkgs/default.nix index 132d0f5..a9d7aa1 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,7 +1,4 @@ -{ pkgs -, lib -, -}: +{ pkgs, lib }: let inherit (builtins) fromJSON mapAttrs readFile; inherit (pkgs) callPackage; @@ -13,7 +10,7 @@ in }; afvalcalendar = callPackage ./afvalcalendar { }; } - // ( +// ( # Add nextcloud apps let mkNextcloudApp = pkgs.callPackage ./mkNextcloudApp.nix { }; diff --git a/pkgs/mkNextcloudApp.nix b/pkgs/mkNextcloudApp.nix index 7453f44..095b0e8 100644 --- a/pkgs/mkNextcloudApp.nix +++ b/pkgs/mkNextcloudApp.nix @@ -1,7 +1,5 @@ -{ fetchNextcloudApp -, lib -, -}: source: +{ fetchNextcloudApp, lib }: +source: fetchNextcloudApp { url = source.src.url; sha256 = source.src.sha256; diff --git a/pkgs/prometheus/fail2ban-exporter.nix b/pkgs/prometheus/fail2ban-exporter.nix index b74e35d..dc22b6c 100644 --- a/pkgs/prometheus/fail2ban-exporter.nix +++ b/pkgs/prometheus/fail2ban-exporter.nix @@ -1,7 +1,4 @@ -{ buildGoModule -, sources -, -}: +{ buildGoModule, sources }: buildGoModule { inherit (sources.prometheus-fail2ban-exporter) pname src version; vendorHash = "sha256-5o8p5p0U/c0WAIV5dACnWA3ThzSh2tt5LIFMb59i9GY="; diff --git a/pkgs/starbound/default.nix b/pkgs/starbound/default.nix index a8689f3..26f2184 100644 --- a/pkgs/starbound/default.nix +++ b/pkgs/starbound/default.nix @@ -1,19 +1,21 @@ -{ stdenv -, lib -, makeWrapper -, patchelf -, steamPackages -, replace-secret -, +{ + stdenv, + lib, + makeWrapper, + patchelf, + steamPackages, + replace-secret, }: let # Use the directory in which starbound is installed so steamcmd # doesn't have to be reinstalled constantly (we're using DynamicUser # with StateDirectory to persist this). - steamcmd = steamPackages.steamcmd.override { - steamRoot = "/var/lib/starbound/.steamcmd"; - }; - wrapperPath = lib.makeBinPath [ patchelf steamcmd replace-secret ]; + steamcmd = steamPackages.steamcmd.override { steamRoot = "/var/lib/starbound/.steamcmd"; }; + wrapperPath = lib.makeBinPath [ + patchelf + steamcmd + replace-secret + ]; in stdenv.mkDerivation { name = "starbound-update-script"; From d56fad518b0cfd0c2013f0ad50d69a36348d910a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 18 Aug 2024 20:41:58 +0200 Subject: [PATCH 131/196] git: Blame-ignore nixfmt commit --- .git-blame-ignore-revs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index cee878d..df9d62b 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -1,6 +1,9 @@ # Run this command to always ignore formatting commits in `git blame` # git config blame.ignoreRevsFile .git-blame-ignore-revs +# Switch to nixfmt formatting +04f7a7ef1d38906163afc9cddfa8ce2b0ebf3b45 + # Switch to nixpkgs-fmt formatting fd138d45e6a2cad89fead6e9f246ba282070d6b7 From c4ec382de9fed4afe99d425254d05ae8f7f586e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 24 Oct 2024 23:02:57 +0200 Subject: [PATCH 132/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/3867348fa92bc892eba5d9ddb2d7a97b9e127a8a' (2024-06-12) → 'github:serokell/deploy-rs/aa07eb05537d4cd025e2310397a6adcedfe72c76' (2024-09-27) • Updated input 'disko': 'github:nix-community/disko/276a0d055a720691912c6a34abb724e395c8e38a' (2024-08-15) → 'github:nix-community/disko/09a776702b004fdf9c41a024e1299d575ee18a7d' (2024-10-23) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/699a175398410688214615a9d977354e9ef98d2d' (2024-08-03) → 'github:reckenrode/nix-foundryvtt/bf07f9dd916a97a091f8ab83358c2f295bea9ec9' (2024-09-18) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/1cbd3d585263dc620c483e138d352a39b9f0e3ec' (2024-08-17) → 'github:nixos/nixpkgs/00c24c17345ba867086a807a7869b12e05955c81' (2024-10-24) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/abcef4da4ebb72240bddc370a27263627e64877f' (2024-08-18) → 'github:nixos/nixpkgs/8b052aac04356e25b6ec1058c86de8792440362d' (2024-10-24) • Updated input 'sops-nix': 'github:Mic92/sops-nix/be0eec2d27563590194a9206f551a6f73d52fa34' (2024-08-12) → 'github:Mic92/sops-nix/78a0e634fc8981d6b564f08b6715c69a755c4c7d' (2024-10-24) • Updated input 'sops-nix/nixpkgs-stable': 'github:NixOS/nixpkgs/556533a23879fc7e5f98dd2e0b31a6911a213171' (2024-07-21) → 'github:NixOS/nixpkgs/bb8c2cf7ea0dd2e18a52746b2c3a5b0c73b93c22' (2024-10-19) --- flake.lock | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/flake.lock b/flake.lock index 78327bf..61d58f4 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1718194053, - "narHash": "sha256-FaGrf7qwZ99ehPJCAwgvNY5sLCqQ3GDiE/6uLhxxwSY=", + "lastModified": 1727447169, + "narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=", "owner": "serokell", "repo": "deploy-rs", - "rev": "3867348fa92bc892eba5d9ddb2d7a97b9e127a8a", + "rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76", "type": "github" }, "original": { @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1723685519, - "narHash": "sha256-GkXQIoZmW2zCPp1YFtAYGg/xHNyFH/Mgm79lcs81rq0=", + "lastModified": 1729712798, + "narHash": "sha256-a+Aakkb+amHw4biOZ0iMo8xYl37uUL48YEXIC5PYJ/8=", "owner": "nix-community", "repo": "disko", - "rev": "276a0d055a720691912c6a34abb724e395c8e38a", + "rev": "09a776702b004fdf9c41a024e1299d575ee18a7d", "type": "github" }, "original": { @@ -157,11 +157,11 @@ ] }, "locked": { - "lastModified": 1722661736, - "narHash": "sha256-0lujsK40JV/2PlqCjhZMGpHKL4vDKzJcnkFJYnG1WZA=", + "lastModified": 1726638033, + "narHash": "sha256-+hcgXKG5t/9wibv+8T9WASWItBAWb0tsmcZXH+VIYdw=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "699a175398410688214615a9d977354e9ef98d2d", + "rev": "bf07f9dd916a97a091f8ab83358c2f295bea9ec9", "type": "github" }, "original": { @@ -210,11 +210,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1721524707, - "narHash": "sha256-5NctRsoE54N86nWd0psae70YSLfrOek3Kv1e8KoXe/0=", + "lastModified": 1729357638, + "narHash": "sha256-66RHecx+zohbZwJVEPF7uuwHeqf8rykZTMCTqIrOew4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "556533a23879fc7e5f98dd2e0b31a6911a213171", + "rev": "bb8c2cf7ea0dd2e18a52746b2c3a5b0c73b93c22", "type": "github" }, "original": { @@ -226,11 +226,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1723957280, - "narHash": "sha256-J08Yqf2IJ73y7myI69qEKsQ048ibweG6FeJeCxbIdB4=", + "lastModified": 1729766066, + "narHash": "sha256-QLeNRaGsoIFfv2Kfd4rw2l1TTDb1i4gQzvClSmrk1l4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "abcef4da4ebb72240bddc370a27263627e64877f", + "rev": "8b052aac04356e25b6ec1058c86de8792440362d", "type": "github" }, "original": { @@ -242,11 +242,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1723920526, - "narHash": "sha256-USs6A60raDKZ/8BEpqja1XjZIsRzADX+NtWKH6wIxIw=", + "lastModified": 1729762315, + "narHash": "sha256-l0HyBdB2drPowQm044HDWqMLWwf818G38flxL0bhwqU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "1cbd3d585263dc620c483e138d352a39b9f0e3ec", + "rev": "00c24c17345ba867086a807a7869b12e05955c81", "type": "github" }, "original": { @@ -442,11 +442,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1723501126, - "narHash": "sha256-N9IcHgj/p1+2Pvk8P4Zc1bfrMwld5PcosVA0nL6IGdE=", + "lastModified": 1729775275, + "narHash": "sha256-J2vtHq9sw1wWm0aTMXpEEAzsVCUMZDTEe5kiBYccpLE=", "owner": "Mic92", "repo": "sops-nix", - "rev": "be0eec2d27563590194a9206f551a6f73d52fa34", + "rev": "78a0e634fc8981d6b564f08b6715c69a755c4c7d", "type": "github" }, "original": { From cbbe555f075ddace197e563c40628c8a32cd50d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 25 Oct 2024 00:17:29 +0200 Subject: [PATCH 133/196] bump: Update nextcloud --- configuration/services/nextcloud.nix | 5 +---- pkgs/_sources_nextcloud/generated.json | 30 +++++++++++++------------- pkgs/_sources_nextcloud/generated.nix | 30 +++++++++++++------------- pkgs/nextcloud-apps.toml | 10 +++++---- 4 files changed, 37 insertions(+), 38 deletions(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 63c7446..205d702 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -5,10 +5,7 @@ ... }: let - # Update pending on rewrite of nextcloud news, though there is an - # alpha to switch to if it becomes necessary: - # https://github.com/nextcloud/news/issues/2610 - nextcloud = pkgs.nextcloud28; + nextcloud = pkgs.nextcloud29; hostName = "nextcloud.${config.services.nginx.domain}"; in { diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json index 4071726..1c553ce 100644 --- a/pkgs/_sources_nextcloud/generated.json +++ b/pkgs/_sources_nextcloud/generated.json @@ -7,11 +7,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-V4zZsAwPn8QiCXEDqOgNFHaXqMOcHMpMbJ1Oz3Db0pc=", + "sha256": "sha256-7BTNFsNcqmDACpj5PMEiS71xtr50v7Sqo3qeCL+3J9s=", "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.4/bookmarks-14.2.4.tar.gz" + "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.6/bookmarks-14.2.6.tar.gz" }, - "version": "14.2.4" + "version": "14.2.6" }, "calendar": { "cargoLocks": null, @@ -21,11 +21,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-sipXeyOL4OhENz7V2beFeSYBAoFZdCWtqftIy0lsqEY=", + "sha256": "sha256-X2XcH7HpxgizCEJVrazGtzNQTBihFxvTq/ybK939cxo=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.15/calendar-v4.7.15.tar.gz" + "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.16/calendar-v4.7.16.tar.gz" }, - "version": "v4.7.15" + "version": "v4.7.16" }, "contacts": { "cargoLocks": null, @@ -49,11 +49,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-a8ekMnEzudHGiqHF53jPtgsVTOTc2QLuPg6YtTw5h68=", + "sha256": "sha256-Pfa+Xbopg20os+pnGgg+wpEX1MI5fz5JMb0K4a8rBhs=", "type": "tarball", - "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/Cookbook-0.11.1.tar.gz" + "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.2/Cookbook-0.11.2.tar.gz" }, - "version": "0.11.1" + "version": "0.11.2" }, "news": { "cargoLocks": null, @@ -63,11 +63,11 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-AhTZGQCLeNgsRBF5w3+Lf9JtNN4D1QncB5t+odU+XUc=", + "sha256": "sha256-pnvyMZQ+NYMgH0Unfh5S19HdZSjnghgoUDAoi2KIXNI=", "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha8/news.tar.gz" + "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha12/news.tar.gz" }, - "version": "25.0.0-alpha8" + "version": "25.0.0-alpha12" }, "notes": { "cargoLocks": null, @@ -77,10 +77,10 @@ "passthru": null, "pinned": false, "src": { - "sha256": "sha256-A3QNWGWeC2OcZngMrh9NpYbU5qp5x9xiDcRfB9cRXBo=", + "sha256": "sha256-Cu73H0hJREbkskLbj56M8qUF1Tp4EazORlCF9rpPL90=", "type": "tarball", - "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.10.1/notes-v4.10.1.tar.gz" + "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.11.0/notes-v4.11.0.tar.gz" }, - "version": "v4.10.1" + "version": "v4.11.0" } } \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix index 53e26d1..da275cc 100644 --- a/pkgs/_sources_nextcloud/generated.nix +++ b/pkgs/_sources_nextcloud/generated.nix @@ -3,18 +3,18 @@ { bookmarks = { pname = "bookmarks"; - version = "14.2.4"; + version = "14.2.6"; src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.4/bookmarks-14.2.4.tar.gz"; - sha256 = "sha256-V4zZsAwPn8QiCXEDqOgNFHaXqMOcHMpMbJ1Oz3Db0pc="; + url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.6/bookmarks-14.2.6.tar.gz"; + sha256 = "sha256-7BTNFsNcqmDACpj5PMEiS71xtr50v7Sqo3qeCL+3J9s="; }; }; calendar = { pname = "calendar"; - version = "v4.7.15"; + version = "v4.7.16"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.15/calendar-v4.7.15.tar.gz"; - sha256 = "sha256-sipXeyOL4OhENz7V2beFeSYBAoFZdCWtqftIy0lsqEY="; + url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.16/calendar-v4.7.16.tar.gz"; + sha256 = "sha256-X2XcH7HpxgizCEJVrazGtzNQTBihFxvTq/ybK939cxo="; }; }; contacts = { @@ -27,26 +27,26 @@ }; cookbook = { pname = "cookbook"; - version = "0.11.1"; + version = "0.11.2"; src = fetchTarball { - url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.1/Cookbook-0.11.1.tar.gz"; - sha256 = "sha256-a8ekMnEzudHGiqHF53jPtgsVTOTc2QLuPg6YtTw5h68="; + url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.2/Cookbook-0.11.2.tar.gz"; + sha256 = "sha256-Pfa+Xbopg20os+pnGgg+wpEX1MI5fz5JMb0K4a8rBhs="; }; }; news = { pname = "news"; - version = "25.0.0-alpha8"; + version = "25.0.0-alpha12"; src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha8/news.tar.gz"; - sha256 = "sha256-AhTZGQCLeNgsRBF5w3+Lf9JtNN4D1QncB5t+odU+XUc="; + url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha12/news.tar.gz"; + sha256 = "sha256-pnvyMZQ+NYMgH0Unfh5S19HdZSjnghgoUDAoi2KIXNI="; }; }; notes = { pname = "notes"; - version = "v4.10.1"; + version = "v4.11.0"; src = fetchTarball { - url = "https://github.com/nextcloud-releases/notes/releases/download/v4.10.1/notes-v4.10.1.tar.gz"; - sha256 = "sha256-A3QNWGWeC2OcZngMrh9NpYbU5qp5x9xiDcRfB9cRXBo="; + url = "https://github.com/nextcloud-releases/notes/releases/download/v4.11.0/notes-v4.11.0.tar.gz"; + sha256 = "sha256-Cu73H0hJREbkskLbj56M8qUF1Tp4EazORlCF9rpPL90="; }; }; } diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml index 89dccb4..4e6e0b2 100644 --- a/pkgs/nextcloud-apps.toml +++ b/pkgs/nextcloud-apps.toml @@ -1,10 +1,12 @@ [bookmarks] -src.github = "nextcloud/bookmarks" -src.prefix = "v" +# src.github = "nextcloud/bookmarks" +# src.prefix = "v" +src.manual = "14.2.6" fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" [calendar] -src.github = "nextcloud-releases/calendar" +# src.github = "nextcloud-releases/calendar" +src.manual = "v4.7.16" fetch.tarball = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" [contacts] @@ -20,7 +22,7 @@ fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/r [news] # Update manually until angular rewrite is done # src.github = "nextcloud/news" -src.manual = "25.0.0-alpha8" +src.manual = "25.0.0-alpha12" fetch.tarball = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" [notes] From 2d977f4f13ef75c86699b6147e1426165b3b38e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 28 Nov 2024 00:56:31 +0100 Subject: [PATCH 134/196] Update battery-manager --- flake.lock | 35 +++++++++++++++++------------------ flake.nix | 2 +- 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/flake.lock b/flake.lock index 61d58f4..a2017c6 100644 --- a/flake.lock +++ b/flake.lock @@ -137,11 +137,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "lastModified": 1726560853, + "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "type": "github" }, "original": { @@ -179,11 +179,11 @@ ] }, "locked": { - "lastModified": 1703863825, - "narHash": "sha256-rXwqjtwiGKJheXB43ybM8NwWB8rO2dSRrEqes0S7F5Y=", + "lastModified": 1729742964, + "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=", "owner": "nix-community", "repo": "nix-github-actions", - "rev": "5163432afc817cf8bd1f031418d1869e4c9d5547", + "rev": "e04df33f62cdcf93d73e9a04142464753a16db67", "type": "github" }, "original": { @@ -306,11 +306,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1708589824, - "narHash": "sha256-2GOiFTkvs5MtVF65sC78KNVxQSmsxtk0WmV1wJ9V2ck=", + "lastModified": 1731205797, + "narHash": "sha256-F7N1mxH1VrkVNHR3JGNMRvp9+98KYO4b832KS8Gl2xI=", "owner": "nix-community", "repo": "poetry2nix", - "rev": "3c92540611f42d3fb2d0d084a6c694cd6544b609", + "rev": "f554d27c1544d9c56e5f1f8e2b8aff399803674e", "type": "github" }, "original": { @@ -420,16 +420,15 @@ "poetry2nixi": "poetry2nixi" }, "locked": { - "lastModified": 1712437610, - "narHash": "sha256-U0xIqSupo6yBVWQcHIcLPDKg5ShQIkV/0Ay+Xg3GIlk=", - "ref": "tlater/implement-nix-module", - "rev": "43c4f591328f194ca989b86cea49773104f75549", - "revCount": 7, + "lastModified": 1733296058, + "narHash": "sha256-2tYgb4TbvoLk+zsRdCPaglP0s9GCG5HOR9Jm9rsSiHU=", + "ref": "refs/heads/main", + "rev": "5f01c17df4dbe841bb6ccd85993c0d9b7368af72", + "revCount": 13, "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" }, "original": { - "ref": "tlater/implement-nix-module", "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" } @@ -545,11 +544,11 @@ ] }, "locked": { - "lastModified": 1708335038, - "narHash": "sha256-ETLZNFBVCabo7lJrpjD6cAbnE11eDOjaQnznmg/6hAE=", + "lastModified": 1730120726, + "narHash": "sha256-LqHYIxMrl/1p3/kvm2ir925tZ8DkI0KA10djk8wecSk=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "e504621290a1fd896631ddbc5e9c16f4366c9f65", + "rev": "9ef337e492a5555d8e17a51c911ff1f02635be15", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 6dbbaa5..ea27f2d 100644 --- a/flake.nix +++ b/flake.nix @@ -27,7 +27,7 @@ }; sonnenshift = { - url = "git+ssh://git@github.com/sonnenshift/battery-manager?ref=tlater/implement-nix-module"; + url = "git+ssh://git@github.com/sonnenshift/battery-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; }; From 7ebb2ca6d8d7f3d18a3ae6c88a6c565c28ed9406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 18 Jan 2025 22:55:57 +0800 Subject: [PATCH 135/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/09a776702b004fdf9c41a024e1299d575ee18a7d?narHash=sha256-a%2BAakkb%2BamHw4biOZ0iMo8xYl37uUL48YEXIC5PYJ/8%3D' (2024-10-23) → 'github:nix-community/disko/bf0abfde48f469c256f2b0f481c6281ff04a5db2?narHash=sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk%3D' (2025-01-16) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/bf07f9dd916a97a091f8ab83358c2f295bea9ec9?narHash=sha256-%2BhcgXKG5t/9wibv%2B8T9WASWItBAWb0tsmcZXH%2BVIYdw%3D' (2024-09-18) → 'github:reckenrode/nix-foundryvtt/0a72a4bf64224c6584fd1b9e9f0012dd09af979a?narHash=sha256-vM9C1gFiQGa3nTYqmTBI8MoiUfprkQdepUBbxV7ECMQ%3D' (2025-01-17) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/8b052aac04356e25b6ec1058c86de8792440362d?narHash=sha256-QLeNRaGsoIFfv2Kfd4rw2l1TTDb1i4gQzvClSmrk1l4%3D' (2024-10-24) → 'github:nixos/nixpkgs/09c71b16e6efc9e90edae7eb8b63348702ff9a85?narHash=sha256-jtucJjcdryEZQw1g0RThPSPxCdWNHF42sLp8pmMMGDs%3D' (2025-01-18) • Updated input 'nvfetcher': 'github:berberman/nvfetcher/fa7609950023462c6f91c425de7610c0bb6b86ba?narHash=sha256-xZZBdKqe1ByITzvx65pVgGQ5jeb73MybjgrcfI84lEo%3D' (2024-06-13) → 'github:berberman/nvfetcher/bdb14eab6fe9cefc29efe01e60c3a3f616d6b62a?narHash=sha256-Z0BpHelaGQsE5VD9hBsBHsvMU9h%2BXt0kfkDJyFivZOU%3D' (2024-11-25) • Updated input 'nvfetcher/flake-utils': 'github:numtide/flake-utils/b1d9ab70662946ef0850d488da1c9019f3a9752a?narHash=sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ%3D' (2024-03-11) → 'github:numtide/flake-utils/11707dc2f618dd54ca8739b309ec4fc024de578b?narHash=sha256-l0KFg5HjrsfsO/JpG%2Br7fRrqm12kzFHyUHqHCVpMMbI%3D' (2024-11-13) • Updated input 'sops-nix': 'github:Mic92/sops-nix/78a0e634fc8981d6b564f08b6715c69a755c4c7d?narHash=sha256-J2vtHq9sw1wWm0aTMXpEEAzsVCUMZDTEe5kiBYccpLE%3D' (2024-10-24) → 'github:Mic92/sops-nix/4c4fb93f18b9072c6fa1986221f9a3d7bf1fe4b6?narHash=sha256-GXUE9%2BFgxoZU8v0p6ilBJ8NH7k8nKmZjp/7dmMrCv3o%3D' (2025-01-17) • Removed input 'sops-nix/nixpkgs-stable' --- flake.lock | 63 ++++++++++++++++++++---------------------------------- 1 file changed, 23 insertions(+), 40 deletions(-) diff --git a/flake.lock b/flake.lock index a2017c6..9aff775 100644 --- a/flake.lock +++ b/flake.lock @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1729712798, - "narHash": "sha256-a+Aakkb+amHw4biOZ0iMo8xYl37uUL48YEXIC5PYJ/8=", + "lastModified": 1737038063, + "narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=", "owner": "nix-community", "repo": "disko", - "rev": "09a776702b004fdf9c41a024e1299d575ee18a7d", + "rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2", "type": "github" }, "original": { @@ -119,11 +119,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -157,11 +157,11 @@ ] }, "locked": { - "lastModified": 1726638033, - "narHash": "sha256-+hcgXKG5t/9wibv+8T9WASWItBAWb0tsmcZXH+VIYdw=", + "lastModified": 1737076827, + "narHash": "sha256-vM9C1gFiQGa3nTYqmTBI8MoiUfprkQdepUBbxV7ECMQ=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "bf07f9dd916a97a091f8ab83358c2f295bea9ec9", + "rev": "0a72a4bf64224c6584fd1b9e9f0012dd09af979a", "type": "github" }, "original": { @@ -208,29 +208,13 @@ "type": "github" } }, - "nixpkgs-stable": { - "locked": { - "lastModified": 1729357638, - "narHash": "sha256-66RHecx+zohbZwJVEPF7uuwHeqf8rykZTMCTqIrOew4=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "bb8c2cf7ea0dd2e18a52746b2c3a5b0c73b93c22", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, "nixpkgs-unstable": { "locked": { - "lastModified": 1729766066, - "narHash": "sha256-QLeNRaGsoIFfv2Kfd4rw2l1TTDb1i4gQzvClSmrk1l4=", + "lastModified": 1737192615, + "narHash": "sha256-jtucJjcdryEZQw1g0RThPSPxCdWNHF42sLp8pmMMGDs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8b052aac04356e25b6ec1058c86de8792440362d", + "rev": "09c71b16e6efc9e90edae7eb8b63348702ff9a85", "type": "github" }, "original": { @@ -242,16 +226,16 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1729762315, - "narHash": "sha256-l0HyBdB2drPowQm044HDWqMLWwf818G38flxL0bhwqU=", + "lastModified": 1737171713, + "narHash": "sha256-9mWmMXCto7e8U9hM8ZFozElv4dgOMTe308SSc7rEEFs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "00c24c17345ba867086a807a7869b12e05955c81", + "rev": "8773174492fc61571b578f34a59953baba46471a", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-24.05-small", + "ref": "nixos-24.11-small", "repo": "nixpkgs", "type": "github" } @@ -281,11 +265,11 @@ ] }, "locked": { - "lastModified": 1718252448, - "narHash": "sha256-xZZBdKqe1ByITzvx65pVgGQ5jeb73MybjgrcfI84lEo=", + "lastModified": 1732501185, + "narHash": "sha256-Z0BpHelaGQsE5VD9hBsBHsvMU9h+Xt0kfkDJyFivZOU=", "owner": "berberman", "repo": "nvfetcher", - "rev": "fa7609950023462c6f91c425de7610c0bb6b86ba", + "rev": "bdb14eab6fe9cefc29efe01e60c3a3f616d6b62a", "type": "github" }, "original": { @@ -437,15 +421,14 @@ "inputs": { "nixpkgs": [ "nixpkgs" - ], - "nixpkgs-stable": "nixpkgs-stable" + ] }, "locked": { - "lastModified": 1729775275, - "narHash": "sha256-J2vtHq9sw1wWm0aTMXpEEAzsVCUMZDTEe5kiBYccpLE=", + "lastModified": 1737107480, + "narHash": "sha256-GXUE9+FgxoZU8v0p6ilBJ8NH7k8nKmZjp/7dmMrCv3o=", "owner": "Mic92", "repo": "sops-nix", - "rev": "78a0e634fc8981d6b564f08b6715c69a755c4c7d", + "rev": "4c4fb93f18b9072c6fa1986221f9a3d7bf1fe4b6", "type": "github" }, "original": { From 84759f564a0687bd849dfbc5a51abf06e0dd44b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 18 Jan 2025 23:35:12 +0800 Subject: [PATCH 136/196] Sigh... --- configuration/services/wireguard.nix | 8 -------- 1 file changed, 8 deletions(-) diff --git a/configuration/services/wireguard.nix b/configuration/services/wireguard.nix index 6f8f6a2..a5185c5 100644 --- a/configuration/services/wireguard.nix +++ b/configuration/services/wireguard.nix @@ -31,14 +31,6 @@ PublicKey = "5mlnqEVJWks5OqgeFA2bLIrvST9TlCE81Btl+j4myz0="; }; } - - { - # yuanyuan - wireguardPeerConfig = { - AllowedIPs = [ "10.45.249.10/32" ]; - PublicKey = "0UsFE2atz/O5P3OKQ8UHyyyGQNJbp1MeIWUJLuoerwE="; - }; - } ]; }; }; From 34f88ee8d5e5b664251f309a2defe0be58f863a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 19 Jan 2025 00:11:22 +0800 Subject: [PATCH 137/196] chore: Remove afvalcalendar --- configuration/default.nix | 1 - configuration/services/afvalcalendar.nix | 71 -- pkgs/afvalcalendar/Cargo.lock | 1430 ---------------------- pkgs/afvalcalendar/Cargo.toml | 16 - pkgs/afvalcalendar/default.nix | 12 - pkgs/afvalcalendar/src/calendar.rs | 43 - pkgs/afvalcalendar/src/main.rs | 15 - pkgs/afvalcalendar/src/trash.rs | 59 - pkgs/afvalcalendar/test.rest | 4 - pkgs/default.nix | 1 - 10 files changed, 1652 deletions(-) delete mode 100644 configuration/services/afvalcalendar.nix delete mode 100644 pkgs/afvalcalendar/Cargo.lock delete mode 100644 pkgs/afvalcalendar/Cargo.toml delete mode 100644 pkgs/afvalcalendar/default.nix delete mode 100644 pkgs/afvalcalendar/src/calendar.rs delete mode 100644 pkgs/afvalcalendar/src/main.rs delete mode 100644 pkgs/afvalcalendar/src/trash.rs delete mode 100644 pkgs/afvalcalendar/test.rest diff --git a/configuration/default.nix b/configuration/default.nix index 333488b..48ee8c4 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -15,7 +15,6 @@ "${modulesPath}/profiles/minimal.nix" (import ../modules) - ./services/afvalcalendar.nix ./services/backups.nix ./services/battery-manager.nix ./services/conduit.nix diff --git a/configuration/services/afvalcalendar.nix b/configuration/services/afvalcalendar.nix deleted file mode 100644 index ec7d9f7..0000000 --- a/configuration/services/afvalcalendar.nix +++ /dev/null @@ -1,71 +0,0 @@ -{ pkgs, config, ... }: -{ - systemd.services.afvalcalendar = { - description = "Enschede afvalcalendar -> ical converter"; - wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; - - script = '' - ${pkgs.local.afvalcalendar}/bin/afvalcalendar > /srv/afvalcalendar/afvalcalendar.ical - ''; - - startAt = "daily"; - - serviceConfig = { - DynamicUser = true; - ProtectHome = true; # Override the default (read-only) - PrivateDevices = true; - PrivateIPC = true; - PrivateUsers = true; - ProtectHostname = true; - ProtectClock = true; - ProtectKernelTunables = true; - ProtectKernelModules = true; - ProtectKernelLogs = true; - ProtectControlGroups = true; - RestrictAddressFamilies = [ - "AF_UNIX" - "AF_INET" - "AF_INET6" - ]; - RestrictNamespaces = true; - LockPersonality = true; - MemoryDenyWriteExecute = true; - RestrictRealtime = true; - RestrictSUIDSGID = true; - SystemCallArchitectures = "native"; - SystemCallFilter = [ - "@system-service" - "~@privileged @resources @setuid @keyring" - ]; - - Umask = 2; - SupplementaryGroups = "afvalcalendar-hosting"; - - ReadWritePaths = "/srv/afvalcalendar"; - }; - }; - - services.nginx.virtualHosts."afvalcalendar.${config.services.nginx.domain}" = { - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; - - root = "/srv/afvalcalendar"; - }; - - users.groups.afvalcalendar-hosting = { }; - systemd.tmpfiles.settings."10-afvalcalendar" = { - "/srv/afvalcalendar".d = { - user = "nginx"; - group = "afvalcalendar-hosting"; - mode = "0775"; - }; - - "/srv/afvalcalendar/afvalcalendar.ical".f = { - user = "nginx"; - group = "afvalcalendar-hosting"; - mode = "0775"; - }; - }; -} diff --git a/pkgs/afvalcalendar/Cargo.lock b/pkgs/afvalcalendar/Cargo.lock deleted file mode 100644 index 24cace4..0000000 --- a/pkgs/afvalcalendar/Cargo.lock +++ /dev/null @@ -1,1430 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "addr2line" -version = "0.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "afvalcalendar" -version = "0.1.0" -dependencies = [ - "chrono", - "hostname", - "icalendar", - "reqwest", - "serde", - "serde_json", - "serde_repr", - "tokio", -] - -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - -[[package]] -name = "autocfg" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" - -[[package]] -name = "backtrace" -version = "0.3.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", -] - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - -[[package]] -name = "bumpalo" -version = "3.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32a994c2b3ca201d9b263612a374263f05e7adde37c4707f693dcd375076d1f" - -[[package]] -name = "bytes" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" - -[[package]] -name = "cc" -version = "1.0.83" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "libc", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "chrono" -version = "0.4.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b" -dependencies = [ - "android-tzdata", - "iana-time-zone", - "js-sys", - "num-traits", - "serde", - "wasm-bindgen", - "windows-targets 0.52.0", -] - -[[package]] -name = "cookie" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24" -dependencies = [ - "percent-encoding", - "time", - "version_check", -] - -[[package]] -name = "cookie_store" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6" -dependencies = [ - "cookie", - "idna 0.3.0", - "log", - "publicsuffix", - "serde", - "serde_derive", - "serde_json", - "time", - "url", -] - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" - -[[package]] -name = "deranged" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" -dependencies = [ - "powerfmt", -] - -[[package]] -name = "encoding_rs" -version = "0.8.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "errno" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "fastrand" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foreign-types" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-shared" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" - -[[package]] -name = "form_urlencoded" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "futures-channel" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" -dependencies = [ - "futures-core", -] - -[[package]] -name = "futures-core" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" - -[[package]] -name = "futures-sink" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" - -[[package]] -name = "futures-task" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" - -[[package]] -name = "futures-util" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" -dependencies = [ - "futures-core", - "futures-task", - "pin-project-lite", - "pin-utils", -] - -[[package]] -name = "getrandom" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "wasi", - "wasm-bindgen", -] - -[[package]] -name = "gimli" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" - -[[package]] -name = "h2" -version = "0.3.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "hashbrown" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" - -[[package]] -name = "hermit-abi" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd" - -[[package]] -name = "hostname" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" -dependencies = [ - "libc", - "match_cfg", - "winapi", -] - -[[package]] -name = "http" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http", - "pin-project-lite", -] - -[[package]] -name = "httparse" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "hyper" -version = "0.14.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - -[[package]] -name = "hyper-tls" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" -dependencies = [ - "bytes", - "hyper", - "native-tls", - "tokio", - "tokio-native-tls", -] - -[[package]] -name = "iana-time-zone" -version = "0.1.60" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "icalendar" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa4ffbcf3325ae94554c5259ce0b8907d37133c066cb3d424a2fa96aa1f10088" -dependencies = [ - "chrono", - "iso8601", - "nom", - "uuid", -] - -[[package]] -name = "idna" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "idna" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "indexmap" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177" -dependencies = [ - "equivalent", - "hashbrown", -] - -[[package]] -name = "ipnet" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" - -[[package]] -name = "iso8601" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "924e5d73ea28f59011fec52a0d12185d496a9b075d360657aed2a5707f701153" -dependencies = [ - "nom", -] - -[[package]] -name = "itoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" - -[[package]] -name = "js-sys" -version = "0.3.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "libc" -version = "0.2.153" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" - -[[package]] -name = "linux-raw-sys" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" - -[[package]] -name = "log" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" - -[[package]] -name = "match_cfg" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" - -[[package]] -name = "memchr" -version = "2.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - -[[package]] -name = "miniz_oxide" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" -dependencies = [ - "adler", -] - -[[package]] -name = "mio" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" -dependencies = [ - "libc", - "wasi", - "windows-sys 0.48.0", -] - -[[package]] -name = "native-tls" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" -dependencies = [ - "lazy_static", - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", -] - -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - -[[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - -[[package]] -name = "num-traits" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" -dependencies = [ - "autocfg", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi", - "libc", -] - -[[package]] -name = "object" -version = "0.32.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" -dependencies = [ - "memchr", -] - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "openssl" -version = "0.10.64" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" -dependencies = [ - "bitflags 2.4.2", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", -] - -[[package]] -name = "openssl-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "openssl-probe" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" - -[[package]] -name = "openssl-sys" -version = "0.9.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae94056a791d0e1217d18b6cbdccb02c61e3054fc69893607f4067e3bb0b1fd1" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - -[[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "pin-project-lite" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pkg-config" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" - -[[package]] -name = "powerfmt" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" - -[[package]] -name = "proc-macro2" -version = "1.0.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "psl-types" -version = "2.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac" - -[[package]] -name = "publicsuffix" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96a8c1bda5ae1af7f99a2962e49df150414a43d62404644d98dd5c3a93d07457" -dependencies = [ - "idna 0.3.0", - "psl-types", -] - -[[package]] -name = "quote" -version = "1.0.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "reqwest" -version = "0.11.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251" -dependencies = [ - "base64", - "bytes", - "cookie", - "cookie_store", - "encoding_rs", - "futures-core", - "futures-util", - "h2", - "http", - "http-body", - "hyper", - "hyper-tls", - "ipnet", - "js-sys", - "log", - "mime", - "native-tls", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls-pemfile", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "system-configuration", - "tokio", - "tokio-native-tls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "winreg", -] - -[[package]] -name = "rustc-demangle" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" - -[[package]] -name = "rustix" -version = "0.38.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" -dependencies = [ - "bitflags 2.4.2", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64", -] - -[[package]] -name = "ryu" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" - -[[package]] -name = "schannel" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "security-framework" -version = "2.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "serde" -version = "1.0.196" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.196" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.114" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" -dependencies = [ - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_repr" -version = "0.1.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "socket2" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" -dependencies = [ - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "syn" -version = "2.0.49" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915aea9e586f80826ee59f8453c1101f9d1c4b3964cd2460185ee8e299ada496" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "tempfile" -version = "3.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67" -dependencies = [ - "cfg-if", - "fastrand", - "rustix", - "windows-sys 0.52.0", -] - -[[package]] -name = "time" -version = "0.3.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749" -dependencies = [ - "deranged", - "itoa", - "num-conv", - "powerfmt", - "serde", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" - -[[package]] -name = "time-macros" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774" -dependencies = [ - "num-conv", - "time-core", -] - -[[package]] -name = "tinyvec" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "tokio" -version = "1.36.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931" -dependencies = [ - "backtrace", - "bytes", - "libc", - "mio", - "num_cpus", - "pin-project-lite", - "socket2", - "tokio-macros", - "windows-sys 0.48.0", -] - -[[package]] -name = "tokio-macros" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", -] - -[[package]] -name = "tokio-util" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", - "tracing", -] - -[[package]] -name = "tower-service" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" - -[[package]] -name = "tracing" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" -dependencies = [ - "pin-project-lite", - "tracing-core", -] - -[[package]] -name = "tracing-core" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" -dependencies = [ - "once_cell", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "unicode-bidi" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" - -[[package]] -name = "unicode-ident" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" - -[[package]] -name = "unicode-normalization" -version = "0.1.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "url" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" -dependencies = [ - "form_urlencoded", - "idna 0.5.0", - "percent-encoding", -] - -[[package]] -name = "uuid" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" -dependencies = [ - "getrandom", - "wasm-bindgen", -] - -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - -[[package]] -name = "version_check" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasm-bindgen" -version = "0.2.91" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" -dependencies = [ - "cfg-if", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.91" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" -dependencies = [ - "bumpalo", - "log", - "once_cell", - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.41" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97" -dependencies = [ - "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.91" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.91" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.91" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" - -[[package]] -name = "web-sys" -version = "0.3.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "windows-core" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" -dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" -dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] diff --git a/pkgs/afvalcalendar/Cargo.toml b/pkgs/afvalcalendar/Cargo.toml deleted file mode 100644 index f37dff1..0000000 --- a/pkgs/afvalcalendar/Cargo.toml +++ /dev/null @@ -1,16 +0,0 @@ -[package] -name = "afvalcalendar" -version = "0.1.0" -edition = "2021" - -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - -[dependencies] -icalendar = "0.16.0" -serde = { version = "1.0.195", features = ["derive"] } -tokio = { version = "1.35.1", features = ["macros", "rt-multi-thread"] } -reqwest = { version = "0.11", features = ["cookies", "json"] } -chrono = { version = "0.4.34", features = ["serde"] } -serde_json = "1.0.114" -serde_repr = "0.1.18" -hostname = "0.3.1" diff --git a/pkgs/afvalcalendar/default.nix b/pkgs/afvalcalendar/default.nix deleted file mode 100644 index 6392220..0000000 --- a/pkgs/afvalcalendar/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs, rustPlatform, ... }: -rustPlatform.buildRustPackage { - pname = "afvalcalendar"; - version = "0.1.0"; - src = ./.; - - nativeBuildInputs = with pkgs; [ pkg-config ]; - - buildInputs = with pkgs; [ openssl ]; - - cargoHash = "sha256-JXx6aUKdKbUTBCwlBw5i1hZy8ofCfSrhLCwFzqdA8cI="; -} diff --git a/pkgs/afvalcalendar/src/calendar.rs b/pkgs/afvalcalendar/src/calendar.rs deleted file mode 100644 index 2c76d7f..0000000 --- a/pkgs/afvalcalendar/src/calendar.rs +++ /dev/null @@ -1,43 +0,0 @@ -use chrono::{Duration, NaiveDate}; -use icalendar::{Alarm, Calendar, Component, Event, EventLike, Property}; - -use crate::trash::TrashType; - -pub(crate) fn calendar_from_pickup_dates(dates: Vec<(TrashType, NaiveDate)>) -> Calendar { - let mut ical = Calendar::new(); - ical.name("Twente Milieu Afvalkalender"); - - let events = dates.iter().map(|date| { - let description = match date.0 { - TrashType::Grey => "Restafval wordt opgehaald", - TrashType::Green => "GFT wordt opgehaald", - TrashType::Paper => "Papier wordt opgehaald", - TrashType::Packages => "Verpakkingen worden opgehaald", - }; - - let color = Property::new( - "COLOR", - match date.0 { - TrashType::Grey => "darkgray", - TrashType::Green => "darkgreen", - TrashType::Paper => "royalblue", - TrashType::Packages => "darkorange", - }, - ); - - let reminder = Alarm::display(description, -Duration::hours(5)); - - Event::new() - .all_day(date.1) - .summary(description) - .append_property(color) - .alarm(reminder) - .done() - }); - - for event in events { - ical.push(event); - } - - ical.done() -} diff --git a/pkgs/afvalcalendar/src/main.rs b/pkgs/afvalcalendar/src/main.rs deleted file mode 100644 index e8023f7..0000000 --- a/pkgs/afvalcalendar/src/main.rs +++ /dev/null @@ -1,15 +0,0 @@ -mod calendar; -mod trash; - -#[tokio::main] -async fn main() { - match trash::get_pickup_dates().await { - Ok(dates) => { - let calendar = calendar::calendar_from_pickup_dates(dates); - calendar.print().unwrap(); - } - Err(error) => { - eprintln!("{}", error); - } - } -} diff --git a/pkgs/afvalcalendar/src/trash.rs b/pkgs/afvalcalendar/src/trash.rs deleted file mode 100644 index 89a84d0..0000000 --- a/pkgs/afvalcalendar/src/trash.rs +++ /dev/null @@ -1,59 +0,0 @@ -use chrono::{Months, NaiveDate, NaiveDateTime, Utc}; -use serde::Deserialize; -use serde_repr::Deserialize_repr; - -#[derive(Deserialize, Debug)] -#[serde(rename_all = "camelCase")] -struct CalendarAPIDatum { - pickup_dates: Vec, - pickup_type: TrashType, -} - -#[derive(Deserialize, Debug)] -#[serde(rename_all = "camelCase")] -struct CalendarAPIResponse { - data_list: Vec, -} - -#[derive(Copy, Clone, Deserialize_repr, Debug)] -#[repr(u8)] -pub(crate) enum TrashType { - Grey = 0, - Green = 1, - Paper = 2, - Packages = 10, -} - -pub(crate) async fn get_pickup_dates() -> Result, reqwest::Error> { - let today = Utc::now().date_naive(); - let next_month = (today + Months::new(1)).to_string(); - let today = today.to_string(); - - let client = reqwest::Client::new(); - - let params = [ - ("companyCode", "8d97bb56-5afd-4cbc-a651-b4f7314264b4"), - ("uniqueAddressID", "1300002485"), - ("startDate", &today), - ("endDate", &next_month), - ]; - - let calendar = client - .post("https://twentemilieuapi.ximmio.com/api/GetCalendar") - .form(¶ms) - .send() - .await? - .json::() - .await?; - - Ok(calendar - .data_list - .iter() - .flat_map(|datum| { - datum - .pickup_dates - .iter() - .map(|date| (datum.pickup_type, NaiveDate::from(*date))) - }) - .collect::>()) -} diff --git a/pkgs/afvalcalendar/test.rest b/pkgs/afvalcalendar/test.rest deleted file mode 100644 index d2d409e..0000000 --- a/pkgs/afvalcalendar/test.rest +++ /dev/null @@ -1,4 +0,0 @@ -POST https://twentemilieuapi.ximmio.com/api/GetCalendar -Content-Type: application/x-www-form-urlencoded - -companyCode=8d97bb56-5afd-4cbc-a651-b4f7314264b4&uniqueAddressID=1300002485&startDate=2024-02-01&endDate=2024-02-29 diff --git a/pkgs/default.nix b/pkgs/default.nix index a9d7aa1..24ade6f 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -8,7 +8,6 @@ in prometheus-fail2ban-exporter = callPackage ./prometheus/fail2ban-exporter.nix { sources = pkgs.callPackage ./_sources_pkgs/generated.nix { }; }; - afvalcalendar = callPackage ./afvalcalendar { }; } // ( # Add nextcloud apps From b3be7bd88fc70c7d0262798fe241dc297352eaaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 19 Jan 2025 00:09:40 +0800 Subject: [PATCH 138/196] bump: Update to NixOS 24.11 --- configuration/default.nix | 2 - .../hardware-specific/hetzner/default.nix | 8 +- configuration/services/metrics/options.nix | 10 ++- configuration/services/nextcloud.nix | 6 +- configuration/services/wireguard.nix | 22 +++-- flake.lock | 61 ++++++++----- flake.nix | 14 +-- pkgs/_sources_nextcloud/generated.json | 86 ------------------- pkgs/_sources_nextcloud/generated.nix | 52 ----------- pkgs/default.nix | 11 +-- pkgs/mkNextcloudApp.nix | 7 -- pkgs/nextcloud-apps.toml | 30 ------- 12 files changed, 66 insertions(+), 243 deletions(-) delete mode 100644 pkgs/_sources_nextcloud/generated.json delete mode 100644 pkgs/_sources_nextcloud/generated.nix delete mode 100644 pkgs/mkNextcloudApp.nix delete mode 100644 pkgs/nextcloud-apps.toml diff --git a/configuration/default.nix b/configuration/default.nix index 48ee8c4..18d124e 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -35,13 +35,11 @@ (final: prev: { local = import ../pkgs { pkgs = prev; - lib = prev.lib; }; }) ]; nix = { - package = pkgs.nixFlakes; extraOptions = '' experimental-features = nix-command flakes ''; diff --git a/configuration/hardware-specific/hetzner/default.nix b/configuration/hardware-specific/hetzner/default.nix index 6795377..3e35eb0 100644 --- a/configuration/hardware-specific/hetzner/default.nix +++ b/configuration/hardware-specific/hetzner/default.nix @@ -19,13 +19,11 @@ addresses = [ # IPv4 { - addressConfig = { - Address = "116.202.158.55/32"; - Peer = "116.202.158.1/32"; # Gateway - }; + Address = "116.202.158.55/32"; + Peer = "116.202.158.1/32"; # Gateway } # IPv6 - { addressConfig.Address = "2a01:4f8:10b:3c85::2/64"; } + { Address = "2a01:4f8:10b:3c85::2/64"; } ]; networkConfig = { diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index 5dd17a3..69cbd6b 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -213,7 +213,15 @@ in let allExporters = lib.mapAttrs (name: exporter: { inherit (exporter) listenAddress port; }) ( (lib.filterAttrs ( - _: exporter: builtins.isAttrs exporter && exporter.enable + name: exporter: + # A bunch of deprecated exporters that need to be ignored + !(builtins.elem name [ + "minio" + "tor" + "unifi-poller" + ]) + && builtins.isAttrs exporter + && exporter.enable ) config.services.prometheus.exporters) // config.services.prometheus.extraExporters ); diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 205d702..45cfe80 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -18,10 +18,10 @@ in packageOverrides = final: prev: { extensions = prev.extensions // { pgsql = prev.extensions.pgsql.overrideAttrs (old: { - configureFlags = [ "--with-pgsql=${config.services.postgresql.package}" ]; + configureFlags = [ "--with-pgsql=${lib.getDev config.services.postgresql.package}" ]; }); pdo_pgsql = prev.extensions.pdo_pgsql.overrideAttrs (old: { - configureFlags = [ "--with-pdo-pgsql=${config.services.postgresql.package}" ]; + configureFlags = [ "--with-pdo-pgsql=${lib.getDev config.services.postgresql.package}" ]; }); }; }; @@ -51,7 +51,7 @@ in }; extraApps = { - inherit (pkgs.local) + inherit (config.services.nextcloud.package.packages.apps) bookmarks calendar contacts diff --git a/configuration/services/wireguard.nix b/configuration/services/wireguard.nix index a5185c5..bbab22e 100644 --- a/configuration/services/wireguard.nix +++ b/configuration/services/wireguard.nix @@ -24,12 +24,10 @@ }; wireguardPeers = [ + # yui { - # yui - wireguardPeerConfig = { - AllowedIPs = [ "10.45.249.2/32" ]; - PublicKey = "5mlnqEVJWks5OqgeFA2bLIrvST9TlCE81Btl+j4myz0="; - }; + AllowedIPs = [ "10.45.249.2/32" ]; + PublicKey = "5mlnqEVJWks5OqgeFA2bLIrvST9TlCE81Btl+j4myz0="; } ]; }; @@ -40,23 +38,23 @@ matchConfig.Name = "wg0"; networkConfig = { + Description = "VLAN"; + Address = [ "10.45.249.1/32" # TODO(tlater): Add IPv6 whenever that becomes relevant ]; - IPForward = "yes"; + IPv4Forwarding = "yes"; IPv4ProxyARP = "yes"; }; routes = [ { - routeConfig = { - Source = "10.45.249.0/24"; - Destination = "10.45.249.0/24"; - Gateway = "10.45.249.1"; - GatewayOnLink = "no"; - }; + Source = "10.45.249.0/24"; + Destination = "10.45.249.0/24"; + Gateway = "10.45.249.1"; + GatewayOnLink = "no"; } ]; diff --git a/flake.lock b/flake.lock index 9aff775..d349bea 100644 --- a/flake.lock +++ b/flake.lock @@ -47,11 +47,11 @@ "pyproject-nix": "pyproject-nix" }, "locked": { - "lastModified": 1719685993, - "narHash": "sha256-04gy1icwnGO3ZXF6r96yBm/C0PNPzeLxA/8xzzq0dBI=", + "lastModified": 1735160684, + "narHash": "sha256-n5CwhmqKxifuD4Sq4WuRP/h5LO6f23cGnSAuJemnd/4=", "owner": "nix-community", "repo": "dream2nix", - "rev": "1b5e01219a32324c8f6889fe1f4db933ec7932f6", + "rev": "8ce6284ff58208ed8961681276f82c2f8f978ef4", "type": "github" }, "original": { @@ -69,11 +69,11 @@ "rust-analyzer-src": "rust-analyzer-src" }, "locked": { - "lastModified": 1719815435, - "narHash": "sha256-K2xFp142onP35jcx7li10xUxNVEVRWjAdY8DSuR7Naw=", + "lastModified": 1737181903, + "narHash": "sha256-lvp77MhGzSN+ICd0MugppCjQR6cmlM2iAC5cjy2ZsaA=", "owner": "nix-community", "repo": "fenix", - "rev": "ebfe2c639111d7e82972a12711206afaeeda2450", + "rev": "ac79bb490b8c1af4bbc587b84c76f9527d6b14f7", "type": "github" }, "original": { @@ -114,6 +114,22 @@ "type": "github" } }, + "flake-compat_3": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems_2" @@ -242,11 +258,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1719468428, - "narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=", + "lastModified": 1729850857, + "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d", + "rev": "41dea55321e5a999b17033296ac05fe8a8b5a257", "type": "github" }, "original": { @@ -305,6 +321,7 @@ }, "purescript-overlay": { "inputs": { + "flake-compat": "flake-compat_3", "nixpkgs": [ "tlaternet-webserver", "dream2nix", @@ -313,11 +330,11 @@ "slimlock": "slimlock" }, "locked": { - "lastModified": 1696022621, - "narHash": "sha256-eMjFmsj2G1E0Q5XiibUNgFjTiSz0GxIeSSzzVdoN730=", + "lastModified": 1728546539, + "narHash": "sha256-Sws7w0tlnjD+Bjck1nv29NjC5DbL6nH5auL9Ex9Iz2A=", "owner": "thomashoneyman", "repo": "purescript-overlay", - "rev": "047c7933abd6da8aa239904422e22d190ce55ead", + "rev": "4ad4c15d07bd899d7346b331f377606631eb0ee4", "type": "github" }, "original": { @@ -359,11 +376,11 @@ "rust-analyzer-src": { "flake": false, "locked": { - "lastModified": 1719760370, - "narHash": "sha256-fsxAuW6RxKZYjAP3biUC6C4vaYFhDfWv8lp1Tmx3ZCY=", + "lastModified": 1737140097, + "narHash": "sha256-m4SN8DeKzsP10EQFS7+2zgGfCrMhTfTt1H0QRNesD08=", "owner": "rust-lang", "repo": "rust-analyzer", - "rev": "ea7fdada6a0940b239ddbde2048a4d7dac1efe1e", + "rev": "f61bfa4d7feb84d07538d361fe77d34a29e3b375", "type": "github" }, "original": { @@ -383,11 +400,11 @@ ] }, "locked": { - "lastModified": 1688610262, - "narHash": "sha256-Wg0ViDotFWGWqKIQzyYCgayeH8s4U1OZcTiWTQYdAp4=", + "lastModified": 1688756706, + "narHash": "sha256-xzkkMv3neJJJ89zo3o2ojp7nFeaZc2G0fYwNXNJRFlo=", "owner": "thomashoneyman", "repo": "slimlock", - "rev": "b5c6cdcaf636ebbebd0a1f32520929394493f1a6", + "rev": "cf72723f59e2340d24881fd7bf61cb113b4c407c", "type": "github" }, "original": { @@ -505,11 +522,11 @@ ] }, "locked": { - "lastModified": 1719851829, - "narHash": "sha256-M5miiIbiwP4uArTyeIr/RKA857rP14AEJUe11AZsKAc=", + "lastModified": 1737271785, + "narHash": "sha256-yVdaaawYK1/q9V5btfGpxVCQBdyQx1WcFHYO0yX5bP8=", "ref": "refs/heads/master", - "rev": "4a099f27a27f4107ceb14969e2158eaabebcf1d4", - "revCount": 74, + "rev": "5d3d84836101ec9b9867a5f754c9ee1b9d4dc538", + "revCount": 76, "type": "git", "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" }, diff --git a/flake.nix b/flake.nix index ea27f2d..e6f1dcb 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05-small"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11-small"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small"; disko = { url = "github:nix-community/disko"; @@ -132,18 +132,6 @@ ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml '').outPath; }; - - update-nextcloud-apps = { - type = "app"; - program = - let - nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; - in - (pkgs.writeShellScript "update-nextcloud-apps" '' - cd "$(git rev-parse --show-toplevel)/pkgs" - ${nvfetcher-bin} -o _sources_nextcloud -c nextcloud-apps.toml - '').outPath; - }; }; ########################### diff --git a/pkgs/_sources_nextcloud/generated.json b/pkgs/_sources_nextcloud/generated.json deleted file mode 100644 index 1c553ce..0000000 --- a/pkgs/_sources_nextcloud/generated.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "bookmarks": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "bookmarks", - "passthru": null, - "pinned": false, - "src": { - "sha256": "sha256-7BTNFsNcqmDACpj5PMEiS71xtr50v7Sqo3qeCL+3J9s=", - "type": "tarball", - "url": "https://github.com/nextcloud/bookmarks/releases/download/v14.2.6/bookmarks-14.2.6.tar.gz" - }, - "version": "14.2.6" - }, - "calendar": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "calendar", - "passthru": null, - "pinned": false, - "src": { - "sha256": "sha256-X2XcH7HpxgizCEJVrazGtzNQTBihFxvTq/ybK939cxo=", - "type": "tarball", - "url": "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.16/calendar-v4.7.16.tar.gz" - }, - "version": "v4.7.16" - }, - "contacts": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "contacts", - "passthru": null, - "pinned": false, - "src": { - "sha256": "sha256-HCEjiAqn6sTNXKW6O5X6Ta9Ll4ehvzmGZUj1c0ue2Xc=", - "type": "tarball", - "url": "https://github.com/nextcloud-releases/contacts/releases/download/v5.5.3/contacts-v5.5.3.tar.gz" - }, - "version": "v5.5.3" - }, - "cookbook": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "cookbook", - "passthru": null, - "pinned": false, - "src": { - "sha256": "sha256-Pfa+Xbopg20os+pnGgg+wpEX1MI5fz5JMb0K4a8rBhs=", - "type": "tarball", - "url": "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.2/Cookbook-0.11.2.tar.gz" - }, - "version": "0.11.2" - }, - "news": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "news", - "passthru": null, - "pinned": false, - "src": { - "sha256": "sha256-pnvyMZQ+NYMgH0Unfh5S19HdZSjnghgoUDAoi2KIXNI=", - "type": "tarball", - "url": "https://github.com/nextcloud/news/releases/download/25.0.0-alpha12/news.tar.gz" - }, - "version": "25.0.0-alpha12" - }, - "notes": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "notes", - "passthru": null, - "pinned": false, - "src": { - "sha256": "sha256-Cu73H0hJREbkskLbj56M8qUF1Tp4EazORlCF9rpPL90=", - "type": "tarball", - "url": "https://github.com/nextcloud-releases/notes/releases/download/v4.11.0/notes-v4.11.0.tar.gz" - }, - "version": "v4.11.0" - } -} \ No newline at end of file diff --git a/pkgs/_sources_nextcloud/generated.nix b/pkgs/_sources_nextcloud/generated.nix deleted file mode 100644 index da275cc..0000000 --- a/pkgs/_sources_nextcloud/generated.nix +++ /dev/null @@ -1,52 +0,0 @@ -# This file was generated by nvfetcher, please do not modify it manually. -{ fetchgit, fetchurl, fetchFromGitHub, dockerTools }: -{ - bookmarks = { - pname = "bookmarks"; - version = "14.2.6"; - src = fetchTarball { - url = "https://github.com/nextcloud/bookmarks/releases/download/v14.2.6/bookmarks-14.2.6.tar.gz"; - sha256 = "sha256-7BTNFsNcqmDACpj5PMEiS71xtr50v7Sqo3qeCL+3J9s="; - }; - }; - calendar = { - pname = "calendar"; - version = "v4.7.16"; - src = fetchTarball { - url = "https://github.com/nextcloud-releases/calendar/releases/download/v4.7.16/calendar-v4.7.16.tar.gz"; - sha256 = "sha256-X2XcH7HpxgizCEJVrazGtzNQTBihFxvTq/ybK939cxo="; - }; - }; - contacts = { - pname = "contacts"; - version = "v5.5.3"; - src = fetchTarball { - url = "https://github.com/nextcloud-releases/contacts/releases/download/v5.5.3/contacts-v5.5.3.tar.gz"; - sha256 = "sha256-HCEjiAqn6sTNXKW6O5X6Ta9Ll4ehvzmGZUj1c0ue2Xc="; - }; - }; - cookbook = { - pname = "cookbook"; - version = "0.11.2"; - src = fetchTarball { - url = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v0.11.2/Cookbook-0.11.2.tar.gz"; - sha256 = "sha256-Pfa+Xbopg20os+pnGgg+wpEX1MI5fz5JMb0K4a8rBhs="; - }; - }; - news = { - pname = "news"; - version = "25.0.0-alpha12"; - src = fetchTarball { - url = "https://github.com/nextcloud/news/releases/download/25.0.0-alpha12/news.tar.gz"; - sha256 = "sha256-pnvyMZQ+NYMgH0Unfh5S19HdZSjnghgoUDAoi2KIXNI="; - }; - }; - notes = { - pname = "notes"; - version = "v4.11.0"; - src = fetchTarball { - url = "https://github.com/nextcloud-releases/notes/releases/download/v4.11.0/notes-v4.11.0.tar.gz"; - sha256 = "sha256-Cu73H0hJREbkskLbj56M8qUF1Tp4EazORlCF9rpPL90="; - }; - }; -} diff --git a/pkgs/default.nix b/pkgs/default.nix index 24ade6f..131282d 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,6 +1,5 @@ -{ pkgs, lib }: +{ pkgs }: let - inherit (builtins) fromJSON mapAttrs readFile; inherit (pkgs) callPackage; in { @@ -9,11 +8,3 @@ in sources = pkgs.callPackage ./_sources_pkgs/generated.nix { }; }; } -// ( - # Add nextcloud apps - let - mkNextcloudApp = pkgs.callPackage ./mkNextcloudApp.nix { }; - sources = fromJSON (readFile ./_sources_nextcloud/generated.json); - in - mapAttrs (_: source: mkNextcloudApp source) sources -) diff --git a/pkgs/mkNextcloudApp.nix b/pkgs/mkNextcloudApp.nix deleted file mode 100644 index 095b0e8..0000000 --- a/pkgs/mkNextcloudApp.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ fetchNextcloudApp, lib }: -source: -fetchNextcloudApp { - url = source.src.url; - sha256 = source.src.sha256; - license = "unlicense"; # Blatant lie -} diff --git a/pkgs/nextcloud-apps.toml b/pkgs/nextcloud-apps.toml deleted file mode 100644 index 4e6e0b2..0000000 --- a/pkgs/nextcloud-apps.toml +++ /dev/null @@ -1,30 +0,0 @@ -[bookmarks] -# src.github = "nextcloud/bookmarks" -# src.prefix = "v" -src.manual = "14.2.6" -fetch.tarball = "https://github.com/nextcloud/bookmarks/releases/download/v$ver/bookmarks-$ver.tar.gz" - -[calendar] -# src.github = "nextcloud-releases/calendar" -src.manual = "v4.7.16" -fetch.tarball = "https://github.com/nextcloud-releases/calendar/releases/download/$ver/calendar-$ver.tar.gz" - -[contacts] -# src.github = "nextcloud-releases/contacts" -src.manual = "v5.5.3" -fetch.tarball = "https://github.com/nextcloud-releases/contacts/releases/download/$ver/contacts-$ver.tar.gz" - -[cookbook] -src.github = "christianlupus-nextcloud/cookbook-releases" -src.prefix = "v" -fetch.tarball = "https://github.com/christianlupus-nextcloud/cookbook-releases/releases/download/v$ver/Cookbook-$ver.tar.gz" - -[news] -# Update manually until angular rewrite is done -# src.github = "nextcloud/news" -src.manual = "25.0.0-alpha12" -fetch.tarball = "https://github.com/nextcloud/news/releases/download/$ver/news.tar.gz" - -[notes] -src.github = "nextcloud-releases/notes" -fetch.tarball = "https://github.com/nextcloud-releases/notes/releases/download/$ver/notes-$ver.tar.gz" From ac2913c1867bb3a090c30689e818ff630d41c9e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 19 Jan 2025 01:35:15 +0800 Subject: [PATCH 139/196] chore: Ignore manual gcroots --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index dbee5b9..7512d76 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /result *.qcow2 +/gcroots/ From 22e1ab609572f9d20a95faab1a59e874a12a9ab7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 19 Jan 2025 17:48:33 +0800 Subject: [PATCH 140/196] chore: Remove nextcloud apps that I don't really use anymore --- configuration/services/nextcloud.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 45cfe80..55ce7f8 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -52,12 +52,10 @@ in extraApps = { inherit (config.services.nextcloud.package.packages.apps) - bookmarks calendar contacts cookbook news - notes ; }; }; From 9efc952c7c3b40948196bbdc802d34965196d0fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 19 Jan 2025 18:13:11 +0800 Subject: [PATCH 141/196] bump: Update nextcloud --- configuration/services/nextcloud.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 55ce7f8..e54df14 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -5,7 +5,7 @@ ... }: let - nextcloud = pkgs.nextcloud29; + nextcloud = pkgs.nextcloud30; hostName = "nextcloud.${config.services.nginx.domain}"; in { From 73c06e6ec8c3ab1f2d41625d0d6a9f790a37eee9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Wed, 22 Jan 2025 01:56:58 +0800 Subject: [PATCH 142/196] chore: Renew encryption keys --- .sops.yaml | 2 +- keys/production.yaml | 82 ++++++------ keys/staging.yaml | 56 ++++----- keys/users/tlater.asc | 284 +++++++++++++++++++++++++++++++++--------- 4 files changed, 296 insertions(+), 128 deletions(-) diff --git a/.sops.yaml b/.sops.yaml index 7444d2c..bed2365 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -1,5 +1,5 @@ keys: - - &tlater 535B61015823443941C744DD12264F6BBDFABA89 + - &tlater B9C7AE554602D82B1AC2CFD0BC7BB2DB17C78E42! - &server_tlaternet 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b - &server_hetzner1 0af7641adb8aa843136cf6d047f71da3e5ad79f9 - &server_staging 2f5caa73e7ceea4fcc8d2881fde587e6737d2dbc diff --git a/keys/production.yaml b/keys/production.yaml index da90860..6dd4c21 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -35,59 +35,59 @@ sops: lastmodified: "2024-04-15T23:13:18Z" mac: ENC[AES256_GCM,data:3/v+WgSWJ+VcBSBe1Wkis3z+tMmSjbKzLFqBB8xugc6DvgQG8J+1HRrPucLnpNNtEdmpyoTa72U6fPm6JnyUsuj5pLEghLprOJkqQNdRI06fllhw+9d3e3twx6D4oIIsVH6/io4ElXrGsGQTsfNbYhgn+987wa3WP5N25fBac3U=,iv:FL3tzPutOMN6IPkQfXIu/JOZT+OzUSqpMSQrUeXZQHE=,tag:jL1BTsYTA9XjrsjFszxZhA==,type:str] pgp: - - created_at: "2024-03-18T04:02:00Z" + - created_at: "2025-01-21T17:55:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQEMA7x7stsXx45CAQf7BjF+HR3WKdMyAV6R1M0+lqDz6hBHKyGH7YBB/QZBqRbK - 3hdABIwWUsqpHjleEOp/Gj0VhZqwagqHxK4Fp5G0r3QBupbAO8u/+DNI8wll0Nva - dlOh0Jqp4E17TkERMQL02rrQ1ZmpOYmPkCd2//xkmWAQ1LatHWeRVSRxQBuMtPQi - btrefcQNjQCvS9/60dp8oTu8nxlFA4iHCBQKNIKVGqQH7jkdIfMPdUILjCkCiyCc - h+OxlHZZnpU6U9A+hjMBinvCzebSkZh48VX/T33Kr+4b0CBr1gR9MSXKG9f2MPQP - PMl6rPvqSqG6ddN9QDI+0HEHYaRvxPIV8uDS36tVxNJeAQHB5/6Lt7hJdYWgwf5E - TLgbZ0IxB17++6K++GlaG8WHO65l1jzmkPlN+ZGcwnhibDxnZjP6kqGqDFcZP4ge - cnV0KnhYcC59IooQYrWKzAJex9rnwPo7MGKV6XwZOQ== - =Hy9T + hQEMA7x7stsXx45CAQf6AjhhYCHhRvJx4xxiXPMTfpIpAvseB1CXVfuhfj2r2yrf + 3HfJnNOSDBcmHdp9fiLJattqfsykcGisUDVIplCeA7cIJjH3sf8MuIJXDTLmvE0Z + BmV8LuwP/UPQSZzY3w1eTAoYT/by35gfJm4ofipft2qyIjQuBgOlrg/0swvBl7LK + 47mI6mVdds8RutHw/xhJZeNjKF/5tADPJ2CHjOHbCQhLji13Kpm3yObOnM8K2SfV + P9uVudCFN/ZBiTlVkB7PsuitwZx1fW0SR3jcWxbRd17M2k2RAQQDUCqPKaoJ3T3f + r2ExwmyO4j7G2vkFv1RgQnhAoHqqRZ1nSjNw1+27MNJeAbT1ddia2TC5Q2zjRZY9 + tRJi2pNZH9A424lpIBLnkPl5rpCR/UZ+bqhaQ9C2kFMldSldPn8dMiBy8XG0Trji + B6X44Q/0RCsJD3FS61GASIjaWdEX0DdSOdhtbtBLLQ== + =yLOx -----END PGP MESSAGE----- - fp: 535B61015823443941C744DD12264F6BBDFABA89 - - created_at: "2024-03-18T04:02:00Z" + fp: B9C7AE554602D82B1AC2CFD0BC7BB2DB17C78E42! + - created_at: "2025-01-21T17:55:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA9ahl2ynTH87AQ/+LNXxC3acjs2+c38gHZRW6Am4XFx1t/4tfxIgaaK/Boq8 - PGU5CFNOMDGv8u/cwyDbfNM7GuL5g7vrLmBXzSV5ErZqc6bJ0+ZCNPTRIxP1Vxph - tWiDIyTwuqUzxWpOlSzii2Sqhlp8CyiWzBe95eIr96XzDCCtfzyCZ0BYyKgpHHxB - BltH0/+0JZFiR19zvf6M99AHwM8OddRQkXav+mRIJQpA87ovVZcAv5skYGJgNCqN - 55fbskuYmqEnloQCZVJ2+2ZXK5Qn/uq4fLJCiIdZm4YsctJnV5spzZIL+dcOty65 - Plk77BWzLaU5UOKCBAJWrK8oZSTGOrp4VZqb62DuqMRejG0JXmneIVk7p79yn5eA - ANVMGRF4b8RP9YUhzE8HACFzQebKpUU8XKv9+qsmO9Le5jUhU3UQeCSSzT/T5Dr8 - kLDNtmW+mliQnxFlKcVWq2JIG+HaQD1KLOAl0JBNCOSLif2ofaHahuZ15agbYeis - hyrBY92EhzqYXHk/Kzv4ff4r+WUs9NN7R4Gg+wfWvMcTtVfbi4Ht+pjjTtCZwK1C - M8JebQn0NZSpVi3e7Xaz1fQ5Tqrg8PHZtkYGoIHLRPJQwLn9PHYtGzC3rFAk+Fqq - 5WWHELxfcsZ6DakAGSXPK/80QhEZkpGmKizTwrEde+7fpEPxjdzUqlmH3rv7mFzS - WAGSiBIMjLR6ofb65vpghbwh6gXkpCtgUyINRhx/D+Kj5Z4lGD1u1I05DT1xD6VJ - FAbnH7oZ3PJecoAXgRT05FndFA1xfPMCkugmec8ML/sEZt+c3kbrXaA= - =MqS3 + hQIMA9ahl2ynTH87AQ/9F/lyLXn60X5Slcd9I7VPdM6x4IjFI0UwMAhMVv0GeimD + 9Mj1vKW+l1v0gFtqCGjANEEYpXMr109CES+m6z7dNXcIQeR6pyjW6uCTiPUK/ZO/ + ZQyhJR0zsT15BTHc6c9Eso9YedsggpRAbjjVIlmrTJx52LfqYYGoRA0XqcLE6LUS + 6v6KR/299zzSHsTFVon6wac9wY7i1XvL0Q7JiYSNV2cNADiCJdCIBw1UkaSVH1uz + sTVdoEoQ1m7hu9pgg4UksUzi9IV3xBpte82tlEK9p0M+RXK/02fjMTWcx3q5fnjN + pBu3HkVzLpAjAQHMQ/O2cgbjFmwgjp5APUhn3IBx5M3F2ypGICnAvsrjfzalTChN + nkCmTfLynNIL1bX7PViABX2Q/yXGzPqFDe96pPw2hGjOXmxjKxjDoLT2IHixYp4D + cxb5519/WmOMrFd4SJeGiUR2Ph/VBZBVGafRfGAKMzxi666igWjwSU0YSDYeEUW/ + BalkkWoz/KQZ5HgQwL9dyp26/cjDtpIwe8jLKVNI6aWhZ2ZmBxFwNEB6fE1txOjf + ceIJAfm8y2qIolw3TpBAFk6s53jir17SrEux9VzfiEfFeQ0g5q7cjAs5HfhTOMfh + iuUnHcCFy27wd+8bPxEaRYR57u7hneenTn3BMuu1CZputDFJWRvweMZk3cH8tiXS + WAGpXw7aKGIOpxe7Ye5X+T3xvYCBN77aFQKkrOmHMWFCbkr2QfnwVanxmmL9BwxF + rf8pG+H0URxBAsy9RZzSC+dXugnwnNBse3wupXf5YkipLx3rX9gtz4Y= + =a7xO -----END PGP MESSAGE----- fp: 8a3737d48f1035fe6c3a0a8fd6a1976ca74c7f3b - - created_at: "2024-03-18T04:02:00Z" + - created_at: "2025-01-21T17:55:44Z" enc: |- -----BEGIN PGP MESSAGE----- - hQIMA0f3HaPlrXn5AQ/+N5NK5UJdtw5e7O9T4hfIhtMXci/og1cJiI64daSyNeDH - jq+CPJ8e73yiTPwu6wHHqfuEhlEuI6sJY0ZJVFU+h4SIBtG21veGEz7GzlYgBCJm - xvJHXjtM8AprqnFVO7Fj9QA/ik5QBP6ZpkOY7j8/qf1G7alOIne/MYRALXDvvIMH - HTWE+Y2N57yZK55Pokmdw10hawbrn/N1nt2Y7sa1+5TlRNtuA/+zLkXtEjRr5U3N - DId+hqCKgXDqKLBMkh4mZUTGOGsk8eeKAWwyPp9+8A5/0rfy+xOJYEjjHICXQMSE - zfe6qvj/fRJKGzT5lEzD+ZKHlR0zHEwGRfHqrVUTdPcPdKj3DZILjsoe5ba4VlAp - sS0CAYTg3YuWMT4iHuOQlY5IoQxHHrn7k8ox5iZULFecg58f6r6iJL3AepDYWAey - gtQXYBeaeCm5Ddwmd6TBVz8Q4bCVYIrHbVeAhSDkxfrWLc5UORggvLEWiXilGDJi - DzAv0MVHE2Wa3eOJLq05K2/LBqRBD1XYM3dcS6JSdFxWWMzvLdUOB4dAuPt9gpl9 - liaA13Blw/ev+U4ADxptrl+QuYRbWz3z6rniYpluSrTbVCKFRoHXSGFPy5u8/N6O - QyjfoovIBxXKnbUq2kMoFa/qFpc1pDUn0sjQNsUBdtorAu3Up4icyoih7qwx2J3S - WAGB1jHWMfcsBJqPwjRYkqBf6MuwHAZWdd+zvj/fKfft9jtxLcCGOIM6QdfiWbl0 - Wq4gHdH7OhSy+ZgRnaBRt/GAkzkHvfG68HfulviHZ1h2mrQN1y3mxpg= - =RCYB + hQIMA0f3HaPlrXn5ARAAph6bpRqnO1TKEE7K6cMCxCA9k3xj7hknBdHN1KlIQkeb + LUOW9lvxh96q/fQ3NvZXpEQqZoEgdhnYTHgr/Hqx7VSksSicOkJLorrBLELjP1Xo + FKTxRYQmgZmgmBc0u7+lF2t0VLey6DfsC9ehY2LQcRuY9WxxCp2nDjjR4wrfmMKi + i/SbpaM9Q29DpdNpwkSlTe2sKr+uMDVA2rCrjpisSDiUBgPe2eJEYPQJ7DHFxB4N + 26NHS+QtUgZhAA1DOGYZvrXzqcZSeAPGk8WXY44KA7o2iRFw+TczpF/VaMHRR5vN + M62IoXGqnMIBau+tsiE1JEVg60DIHpBjsEY/WUgbNX02zfaHcp1OenxU4p7W19Xn + Y8psPm7JNzmi3+nItB2i3+OLQrumk6VaT021ykterc52tR/3ejCzQCsfbqDLnc/6 + r2SvNVDiKpxQ/iFyHb0uLHWy0Jx0lYwmMUrThe1f4k/+m9fEPrA5v/1kTGY5o1Iy + aTuHE19VtB6V+g1H6ZRPr8g8wn/3pg1nC2vUoRzT+oUudxrijrUH8SSlwhu59y1z + 7SrdMmtqA1/JsGNMawCLWd63u+/3GC9LmZzK2h/bV/R4DG5f8tsCpy9BrFAHqTMs + lZ3SONUUeM3uMOggQ/JT26EVxECmNGYIX1TYLOxcqisRXLbfco5LEc6T8PJvdivS + WAFr6kBMdoeWhUT8MdT5AJBm9mo95A0WM8I14pGrszaezfgo9zc2zs0ebdLEjhI4 + jlTf4tXgK3RG455CRWOd9OA3ukR83W7UW6LYjoNaDWHw2RXZlb+hv8E= + =+MFT -----END PGP MESSAGE----- fp: 0af7641adb8aa843136cf6d047f71da3e5ad79f9 unencrypted_suffix: _unencrypted diff --git a/keys/staging.yaml b/keys/staging.yaml index 17e7875..091424d 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -35,39 +35,39 @@ sops: lastmodified: "2024-04-15T23:13:27Z" mac: ENC[AES256_GCM,data:JhEVrKF2Jsqpdztcr3g5lMrgEFeLXfBRQTwQJ6PmLSNyDORcTU09TJPNWTPDnR5okDrvIU/wlzi5DZ8A0ebNhrKf6l0tNFBT9LSvQFHU5SBxqY/m8uEJKSrEC4IL5lugOOISDka2KSvYXVCXrumMHE5FnmOS/CgOZaZk6LUjPYA=,iv:ygygnSedcTo2Vsc56s2qrz1qkWchvSgvoiMTebRxQQ8=,tag:vf6z8rxsXmqzwpDy9Avifw==,type:str] pgp: - - created_at: "2023-12-29T15:25:27Z" - enc: | + - created_at: "2025-01-21T17:55:30Z" + enc: |- -----BEGIN PGP MESSAGE----- - hQEMA7x7stsXx45CAQf/RWxP6z7xjV5TqiA6lFhtygjrH9x3y1DUWG9aUb/dO+xH - zDbGMYqGe9RPlgi5sWPstdKXvCgs+AKNj93qJYMwEtaasJOinYXCGeAQmzg90+pt - bS6SoBHhGIxAvvLKKPtYx0V50I2reYR+32ux9bcrnzwIsV0P7/SSp1Cl8H+sotB8 - yf+0ULXcpC+SYECmZqzR9qQ3S+3I6/+QS+QgWj4NsyF+apxnE9oQDcBLdYP4aKgR - JHERA9HYfDTKoS137pFHxgINqHkFRY6lhoZdz1yDzOjiPxd8YVfPdKyf022Rg+cX - J/Q2P+OhNZEG3gapNATp6wH3niovA89KwZKSmbTZOdJeAZ6NV6TiUP+TgGg5+CmV - pSLaGel2NZRnFVNdDFi0dsOwhHv3FpKhIpALJh08/jsmAAslfE7vVlcEnaoUJPTS - 3v86AACUC5D/gUxmFrrED1qoxbELCmZ17xTwjQzxwg== - =KzdF + hQEMA7x7stsXx45CAQf9ELnm9TdXCIO6fTPiSCkKthx0tSHqBWX/s63158k4IUu7 + v0WWgQy0SKFU3AwIFuVaAYEXB32SaOWKq2WbVAbFZU+xhyUmNe9asg9Fl24+zjGI + oYnPzv3lz/5vcI6Q9rZi8F2uIi2GQZnbscS1XfjA5u17uOalQpb0hjUXr0LMaUvU + Sggm1ZMKE1o1mHAWK6ZT9SrTMIroWFArJRZLS1eY/vI9ja7I5YR3z0MkLqIvdIp+ + B4DsOXLlqAqtVoPGcK1CixQiXzzwyQAYHyJc3JFDpaF9Y4S5/bkMLGyQVMA259a+ + W7ge+EngdJdXV8Unj4s7ndB1e1iM87Jc+4YOcA7jC9JeAR98n8GL+MN9vE8q2AsB + qSOXiGSwmAkhq7+ZwJHWlivlB1In0coyJ4eMd/yhyBuc2NrstO0t595HlA93GcLN + 5JsXIFMqklqGSzE2KgEXhxa2aUoJxcpApVz2BLFPvg== + =X72N -----END PGP MESSAGE----- - fp: 535B61015823443941C744DD12264F6BBDFABA89 - - created_at: "2023-12-29T15:25:27Z" - enc: | + fp: B9C7AE554602D82B1AC2CFD0BC7BB2DB17C78E42! + - created_at: "2025-01-21T17:55:30Z" + enc: |- -----BEGIN PGP MESSAGE----- - hQIMA/3lh+ZzfS28ARAAm729dMouF7juUeHAb+aHMoyZVKsXapxnxebkjE/LSIbz - IEZwegTNrtxQJLclV4Km2gUaBTcE4vLJCpB7YxZvk7JV9OdVKi97o9PcXUXbz9ej - /WomnEvFyyxTZGTiHU+L4kNudl8UAKhTt3P4fR3PLpTily75Kn53tzLFJuCO8fAY - I/YwQAzayxhPcxk3FuPsD/ONiG7mW8n2ZwfwgOkKXwnrlJv7DreKJRYzu/EeuvX/ - d4oz+k+xofniOeZmQjZllzR7/++MBg/e1U9VocN1EAWpWHP5taLiThfnVSGDhlQM - +4WT5ezH6EuUQlAyQNpDaCincBvCHInhrNlUPOpW51nHMb0y3n4x2hMtZA0JbYEu - mkWTYDe65cHjImHXQk9oO2/v4oIyq7ywHX7g2hqVbbiLHZqqTaGfV8lP30+r6/UQ - 29iAdWac1hY5HDzwbqpY6b38i60j4bkiS83xqrGYBy037bCFk1oHJqwxp5P7vrzr - rTv5NBr95BlwF+s8xPEPZneaEu7N3UnhhSzDWp1jgsCxN9b/XHarchNt70xEt2VS - xpgs9GEXhsJcbrFNPYqTkFb8vjLFI+poGPTfadW17j4Pp5ftIBRNdKvDG0ni/AIp - K98R/nvaHEFuX31SkL8ZUIRqhJm3JVqilFxLAJrqGuSN3jA6wKrimUYpK+t+64jS - WAEN9jHYFQDTVHix3g15S5YTGh5ROyqxouDhvSDFTmGtbm5W/HYgnkZmh53TgVeJ - Rph/O9QptculzTN+nEqshBhbjhl/uDsLsjLYo/O1AyCwTUSd3OKn6uU= - =zThh + hQIMA/3lh+ZzfS28AQ//TPVk5x8wZtKnNcbZjqmXUvi7FzaDMGYFNtiX+bQ17Lkm + qdo9TcH8gZI+xni6wlROQBVmu5MAVkT+NWnZIyxN7pokQPmb2v9zo7oyUPV70owU + dD/LDNVqgyFTVzWKco4wr8CUwQWhOJI9wM0sjTCOTTbCT5hYVnJOLe630sNG9G5b + cJYvaQFxKJeHKJq/DL1I9wT02gOE7vu2xh2OyEozEz3SlB7Bp2mGTLNSiOZBhbzh + DNwFRTeDc1Z/ACQJyoGEXkmj1VLyBFuCfXu4UvUQSmlfyCXKTD1/CUo2uiw1N44W + sYh5UpIrCU2eVAAXAiD1nB6dHxiau3QlapNQfbY2sOZVSnsB21yIja9C3aQN/0Q5 + gRrKYcwULzLZ0Z3oQqQxQG9acU8L9CwjKJ1vOKgPVF7hcWkba2bLVsMMaK6seVNc + jazp9gDAj440S2aE86CdQvgcOEsfgPhBZrulYglbhW8ZaIN2SdjDN/xP1Tn5PadP + gS2DVgqILKPRMF4VavzV3uhEA77QF39Hr18SeToNWcDmfqNPNNf7HpnogstGPf3y + xrFAysLbD8IClU4LqI5M19akODON8qeQa5QD+jHOJmAYnMYNRmY/IwHb/SC5WyIm + EPNZg5E+q9cNrTKtEIuWec0SObqpaUz2E/Vt9+dge0uVgTA/QqPvMP7x19XBrRDS + WAFiKkv7MxImNgcqqe7D3StZoeNm+RXJiULaxxuR8qmMnmvaC+L7ggI4QR3TPQw2 + mSoi7SkdjQUCa8ut15UwNHTGO+smbRs9aonGP4G7c1cOH90YYvR+BTs= + =q2IG -----END PGP MESSAGE----- fp: 2f5caa73e7ceea4fcc8d2881fde587e6737d2dbc unencrypted_suffix: _unencrypted diff --git a/keys/users/tlater.asc b/keys/users/tlater.asc index d9c50dd..d94a304 100644 --- a/keys/users/tlater.asc +++ b/keys/users/tlater.asc @@ -11,62 +11,230 @@ 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 -PhCB2Dz76iQ5nDY4MQ== -=R7Pm +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 +GmeDneCrlseO +=ncr2 -----END PGP PUBLIC KEY BLOCK----- From 37c4613ab33678fd7c53e41f0c4bf667d2cbe1a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 30 Jan 2025 04:01:09 +0800 Subject: [PATCH 143/196] fix: Add gateway for internet access in test envs --- configuration/hardware-specific/vm.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 1783956..225a846 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -15,6 +15,9 @@ systemd.network.networks."10-eth0" = { matchConfig.Name = "eth0"; + gateway = [ + "192.168.9.1" + ]; networkConfig = { Address = "192.168.9.2/24"; }; From cf751d01992fec0e19957658f1866d98ed1ae720 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 31 Jan 2025 22:31:10 +0800 Subject: [PATCH 144/196] feat: Don't run battery manager in test VM --- configuration/hardware-specific/vm.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index 225a846..db563fe 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -23,6 +23,9 @@ }; }; + # Don't run this + services.batteryManager.enable = lib.mkForce false; + # Both so we have a predictable key for the staging env, as well as # to have a static key for decrypting the sops secrets for the # staging env. From 22981fdcdd70c30436fd34133af3f6e8c8e7ae29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 24 Jan 2025 00:34:25 +0800 Subject: [PATCH 145/196] feat: Remove fail2ban --- configuration/default.nix | 1 - configuration/services/fail2ban.nix | 43 ----------- configuration/services/gitea.nix | 18 ----- configuration/services/metrics/exporters.nix | 28 ------- configuration/services/metrics/options.nix | 1 + configuration/services/nextcloud.nix | 23 ------ flake.lock | 78 +------------------- flake.nix | 17 ----- pkgs/_sources_pkgs/generated.json | 22 ------ pkgs/_sources_pkgs/generated.nix | 17 ----- pkgs/default.nix | 3 - pkgs/nvfetcher.toml | 3 - pkgs/prometheus/fail2ban-exporter.nix | 5 -- 13 files changed, 4 insertions(+), 255 deletions(-) delete mode 100644 configuration/services/fail2ban.nix delete mode 100644 pkgs/_sources_pkgs/generated.json delete mode 100644 pkgs/_sources_pkgs/generated.nix delete mode 100644 pkgs/nvfetcher.toml delete mode 100644 pkgs/prometheus/fail2ban-exporter.nix diff --git a/configuration/default.nix b/configuration/default.nix index 18d124e..a22f8fc 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -18,7 +18,6 @@ ./services/backups.nix ./services/battery-manager.nix ./services/conduit.nix - ./services/fail2ban.nix ./services/foundryvtt.nix ./services/gitea.nix ./services/metrics diff --git a/configuration/services/fail2ban.nix b/configuration/services/fail2ban.nix deleted file mode 100644 index f09668c..0000000 --- a/configuration/services/fail2ban.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ pkgs, ... }: -{ - services.fail2ban = { - enable = true; - extraPackages = [ pkgs.ipset ]; - banaction = "iptables-ipset-proto6-allports"; - bantime-increment.enable = true; - - jails = { - nginx-botsearch = '' - enabled = true - logpath = /var/log/nginx/access.log - ''; - }; - - ignoreIP = [ - "127.0.0.0/8" - "10.0.0.0/8" - "172.16.0.0/12" - "192.168.0.0/16" - ]; - }; - - # Allow metrics services to connect to the socket as well - users.groups.fail2ban = { }; - systemd.services.fail2ban.serviceConfig = { - ExecStartPost = - "+" - + (pkgs.writeShellScript "fail2ban-post-start" '' - while ! [ -S /var/run/fail2ban/fail2ban.sock ]; do - sleep 1 - done - - while ! ${pkgs.netcat}/bin/nc -zU /var/run/fail2ban/fail2ban.sock; do - sleep 1 - done - - ${pkgs.coreutils}/bin/chown root:fail2ban /var/run/fail2ban /var/run/fail2ban/fail2ban.sock - ${pkgs.coreutils}/bin/chmod 660 /var/run/fail2ban/fail2ban.sock - ${pkgs.coreutils}/bin/chmod 710 /var/run/fail2ban - ''); - }; -} diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index c88dd01..da01cde 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -59,24 +59,6 @@ in }; }; - # Block repeated failed login attempts - # - # TODO(tlater): Update this - we switched to forgejo, who knows what - # the new matches are. - # environment.etc = { - # "fail2ban/filter.d/gitea.conf".text = '' - # [Definition] - # failregex = .*(Failed authentication attempt|invalid credentials|Attempted access of unknown user).* from - # journalmatch = _SYSTEMD_UNIT=forgejo.service + _COMM=forgejo + SYSLOG_IDENTIFIER=forgejo - # ''; - # }; - - # services.fail2ban.jails = { - # gitea = '' - # enabled = true - # ''; - # }; - services.backups.forgejo = { user = "forgejo"; paths = [ diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index e16b945..ecd69bd 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -68,34 +68,6 @@ in }; }; - extraExporters = { - fail2ban = - let - cfg = config.services.prometheus.extraExporters.fail2ban; - in - { - port = 9191; - serviceOpts = { - after = [ "fail2ban.service" ]; - requires = [ "fail2ban.service" ]; - serviceConfig = { - Group = "fail2ban"; - RestrictAddressFamilies = [ - "AF_UNIX" - "AF_INET" - "AF_INET6" - ]; - ExecStart = lib.concatStringsSep " " [ - "${pkgs.local.prometheus-fail2ban-exporter}/bin/fail2ban-prometheus-exporter" - "--collector.f2b.socket=/var/run/fail2ban/fail2ban.sock" - "--web.listen-address='${cfg.listenAddress}:${toString cfg.port}'" - "--collector.f2b.exit-on-socket-connection-error=true" - ]; - }; - }; - }; - }; - # TODO(tlater): # - wireguard (?) # - postgres (?) diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index 69cbd6b..8868c6c 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -12,6 +12,7 @@ in options = { services.prometheus = { extraExporters = mkOption { + default = { }; type = types.attrsOf ( types.submodule { options = { diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index e54df14..b5cb691 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -70,29 +70,6 @@ in # The upstream module already adds HSTS }; - # Block repeated failed login attempts - environment.etc = { - "fail2ban/filter.d/nextcloud.conf".text = '' - [Definition] - _groupsre = (?:(?:,?\s*"\w+":(?:"[^"]+"|\w+))*) - failregex = \{%(_groupsre)s,?\s*"remoteAddr":""%(_groupsre)s,?\s*"message":"Login failed: - \{%(_groupsre)s,?\s*"remoteAddr":""%(_groupsre)s,?\s*"message":"Trusted domain error. - datepattern = ,?\s*"time"\s*:\s*"%%Y-%%m-%%d[T ]%%H:%%M:%%S(%%z)?" - journalmatch = SYSLOG_IDENTIFIER=Nextcloud - ''; - }; - - services.fail2ban.jails = { - nextcloud = '' - enabled = true - - # Nextcloud does some throttling already, so we need to set - # these to something bigger. - findtime = 43200 - bantime = 86400 - ''; - }; - services.backups.nextcloud = { user = "nextcloud"; paths = [ diff --git a/flake.lock b/flake.lock index d349bea..d761f4f 100644 --- a/flake.lock +++ b/flake.lock @@ -114,44 +114,10 @@ "type": "github" } }, - "flake-compat_3": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "flake-utils": { "inputs": { "systems": "systems_2" }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { - "inputs": { - "systems": "systems_3" - }, "locked": { "lastModified": 1726560853, "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", @@ -272,37 +238,15 @@ "type": "github" } }, - "nvfetcher": { - "inputs": { - "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1732501185, - "narHash": "sha256-Z0BpHelaGQsE5VD9hBsBHsvMU9h+Xt0kfkDJyFivZOU=", - "owner": "berberman", - "repo": "nvfetcher", - "rev": "bdb14eab6fe9cefc29efe01e60c3a3f616d6b62a", - "type": "github" - }, - "original": { - "owner": "berberman", - "repo": "nvfetcher", - "type": "github" - } - }, "poetry2nixi": { "inputs": { - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils", "nix-github-actions": "nix-github-actions", "nixpkgs": [ "sonnenshift", "nixpkgs" ], - "systems": "systems_4", + "systems": "systems_3", "treefmt-nix": "treefmt-nix" }, "locked": { @@ -321,7 +265,7 @@ }, "purescript-overlay": { "inputs": { - "flake-compat": "flake-compat_3", + "flake-compat": "flake-compat_2", "nixpkgs": [ "tlaternet-webserver", "dream2nix", @@ -367,7 +311,6 @@ "foundryvtt": "foundryvtt", "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable", - "nvfetcher": "nvfetcher", "sonnenshift": "sonnenshift", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" @@ -485,21 +428,6 @@ } }, "systems_3": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_4": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", diff --git a/flake.nix b/flake.nix index e6f1dcb..2253566 100644 --- a/flake.nix +++ b/flake.nix @@ -13,10 +13,6 @@ url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; - nvfetcher = { - url = "github:berberman/nvfetcher"; - inputs.nixpkgs.follows = "nixpkgs"; - }; tlaternet-webserver = { url = "git+https://gitea.tlater.net/tlaternet/tlaternet.git"; inputs.nixpkgs.follows = "nixpkgs"; @@ -37,7 +33,6 @@ self, nixpkgs, sops-nix, - nvfetcher, deploy-rs, ... }@inputs: @@ -120,18 +115,6 @@ ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm '').outPath; }; - - update-pkgs = { - type = "app"; - program = - let - nvfetcher-bin = "${nvfetcher.packages.${system}.default}/bin/nvfetcher"; - in - (pkgs.writeShellScript "update-pkgs" '' - cd "$(git rev-parse --show-toplevel)/pkgs" - ${nvfetcher-bin} -o _sources_pkgs -c nvfetcher.toml - '').outPath; - }; }; ########################### diff --git a/pkgs/_sources_pkgs/generated.json b/pkgs/_sources_pkgs/generated.json deleted file mode 100644 index cec5a92..0000000 --- a/pkgs/_sources_pkgs/generated.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "prometheus-fail2ban-exporter": { - "cargoLocks": null, - "date": null, - "extract": null, - "name": "prometheus-fail2ban-exporter", - "passthru": null, - "pinned": false, - "src": { - "deepClone": false, - "fetchSubmodules": false, - "leaveDotGit": false, - "name": null, - "rev": "v0.10.1", - "sha256": "sha256-zGEhDy3uXIbvx4agSA8Mx7bRtiZZtoDZGbNbHc9L+yI=", - "sparseCheckout": [], - "type": "git", - "url": "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" - }, - "version": "v0.10.1" - } -} \ No newline at end of file diff --git a/pkgs/_sources_pkgs/generated.nix b/pkgs/_sources_pkgs/generated.nix deleted file mode 100644 index 95fd75e..0000000 --- a/pkgs/_sources_pkgs/generated.nix +++ /dev/null @@ -1,17 +0,0 @@ -# This file was generated by nvfetcher, please do not modify it manually. -{ fetchgit, fetchurl, fetchFromGitHub, dockerTools }: -{ - prometheus-fail2ban-exporter = { - pname = "prometheus-fail2ban-exporter"; - version = "v0.10.1"; - src = fetchgit { - url = "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter"; - rev = "v0.10.1"; - fetchSubmodules = false; - deepClone = false; - leaveDotGit = false; - sparseCheckout = [ ]; - sha256 = "sha256-zGEhDy3uXIbvx4agSA8Mx7bRtiZZtoDZGbNbHc9L+yI="; - }; - }; -} diff --git a/pkgs/default.nix b/pkgs/default.nix index 131282d..036afd4 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -4,7 +4,4 @@ let in { starbound = callPackage ./starbound { }; - prometheus-fail2ban-exporter = callPackage ./prometheus/fail2ban-exporter.nix { - sources = pkgs.callPackage ./_sources_pkgs/generated.nix { }; - }; } diff --git a/pkgs/nvfetcher.toml b/pkgs/nvfetcher.toml deleted file mode 100644 index d0dfbe5..0000000 --- a/pkgs/nvfetcher.toml +++ /dev/null @@ -1,3 +0,0 @@ -[prometheus-fail2ban-exporter] -src.manual = "v0.10.1" # No gitlab support in nvfetcher -fetch.git = "https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter" diff --git a/pkgs/prometheus/fail2ban-exporter.nix b/pkgs/prometheus/fail2ban-exporter.nix deleted file mode 100644 index dc22b6c..0000000 --- a/pkgs/prometheus/fail2ban-exporter.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ buildGoModule, sources }: -buildGoModule { - inherit (sources.prometheus-fail2ban-exporter) pname src version; - vendorHash = "sha256-5o8p5p0U/c0WAIV5dACnWA3ThzSh2tt5LIFMb59i9GY="; -} From d0c6f2bcbe387ed451cfa5a83d3ad78c9725cc3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 24 Jan 2025 00:35:23 +0800 Subject: [PATCH 146/196] feat: Add crowdsec module --- flake.lock | 17 + flake.nix | 29 +- modules/crowdsec/default.nix | 361 ++++++++++++++++++ .../remediations/cs-firewall-bouncer.nix | 90 +++++ modules/crowdsec/remediations/default.nix | 5 + modules/default.nix | 7 +- pkgs/crowdsec/_sources/generated.json | 42 ++ pkgs/crowdsec/_sources/generated.nix | 27 ++ pkgs/crowdsec/default.nix | 9 + pkgs/crowdsec/firewall-bouncer.nix | 26 ++ pkgs/crowdsec/hub.nix | 4 + pkgs/crowdsec/nvfetcher.toml | 7 + pkgs/default.nix | 6 +- 13 files changed, 624 insertions(+), 6 deletions(-) create mode 100644 modules/crowdsec/default.nix create mode 100644 modules/crowdsec/remediations/cs-firewall-bouncer.nix create mode 100644 modules/crowdsec/remediations/default.nix create mode 100644 pkgs/crowdsec/_sources/generated.json create mode 100644 pkgs/crowdsec/_sources/generated.nix create mode 100644 pkgs/crowdsec/default.nix create mode 100644 pkgs/crowdsec/firewall-bouncer.nix create mode 100644 pkgs/crowdsec/hub.nix create mode 100644 pkgs/crowdsec/nvfetcher.toml diff --git a/flake.lock b/flake.lock index d761f4f..d86b361 100644 --- a/flake.lock +++ b/flake.lock @@ -190,6 +190,22 @@ "type": "github" } }, + "nixpkgs-crowdsec": { + "locked": { + "lastModified": 1738085579, + "narHash": "sha256-7mLjMrOiiIi0vI7BJwbEipYQzwA7JF/NWHP+LM4q5S8=", + "owner": "tlater", + "repo": "nixpkgs", + "rev": "426a7afc9a6ecfdac544bda4022acef31e36df34", + "type": "github" + }, + "original": { + "owner": "tlater", + "ref": "tlater/fix-crowdsec", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-unstable": { "locked": { "lastModified": 1737192615, @@ -310,6 +326,7 @@ "disko": "disko", "foundryvtt": "foundryvtt", "nixpkgs": "nixpkgs_2", + "nixpkgs-crowdsec": "nixpkgs-crowdsec", "nixpkgs-unstable": "nixpkgs-unstable", "sonnenshift": "sonnenshift", "sops-nix": "sops-nix", diff --git a/flake.nix b/flake.nix index 2253566..3d04d7c 100644 --- a/flake.nix +++ b/flake.nix @@ -26,6 +26,8 @@ url = "git+ssh://git@github.com/sonnenshift/battery-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; + + nixpkgs-crowdsec.url = "github:tlater/nixpkgs/tlater/fix-crowdsec"; }; outputs = @@ -98,7 +100,16 @@ # Garbage collection root # ########################### - packages.${system}.default = vm.config.system.build.vm; + packages.${system} = + let + localPkgs = import ./pkgs { inherit pkgs; }; + in + { + default = vm.config.system.build.vm; + crowdsec = pkgs.callPackage "${inputs.nixpkgs-crowdsec}/pkgs/by-name/cr/crowdsec/package.nix" { }; + crowdsec-hub = localPkgs.crowdsec.hub; + crowdsec-firewall-bouncer = localPkgs.crowdsec.firewall-bouncer; + }; ################### # Utility scripts # @@ -115,6 +126,22 @@ ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm '').outPath; }; + + update-crowdsec-packages = + let + git = pkgs.lib.getExe pkgs.git; + nvfetcher = pkgs.lib.getExe pkgs.nvfetcher; + in + { + type = "app"; + program = + (pkgs.writeShellScript "update-crowdsec-packages" '' + cd "$(${git} rev-parse --show-toplevel)" + cd ./pkgs/crowdsec + ${nvfetcher} + echo 'Remember to update the vendorHash of any go packages!' + '').outPath; + }; }; ########################### diff --git a/modules/crowdsec/default.nix b/modules/crowdsec/default.nix new file mode 100644 index 0000000..915ca0b --- /dev/null +++ b/modules/crowdsec/default.nix @@ -0,0 +1,361 @@ +{ + flake-inputs, + pkgs, + lib, + config, + ... +}: +let + cfg = config.security.crowdsec; + settingsFormat = pkgs.formats.yaml { }; + + crowdsec = flake-inputs.self.packages.${pkgs.system}.crowdsec; + + hub = pkgs.fetchFromGitHub { + owner = "crowdsecurity"; + repo = "hub"; + rev = "7a3b4753f4577257c0cbeb8f8f90c7f17d2ae008"; + hash = "sha256-HB4jHyhiO8gjBkLmpo6bDbwhfm5m5nAtNlKhDkZjt2I="; + }; + + cscli = pkgs.writeShellScriptBin "cscli" '' + export PATH="$PATH:${crowdsec}/bin/" + + sudo=exec + if [ "$USER" != "crowdsec" ]; then + sudo='exec /run/wrappers/bin/sudo -u crowdsec' + fi + + $sudo ${crowdsec}/bin/cscli "$@" + ''; +in +{ + imports = [ ./remediations ]; + + options.security.crowdsec = + let + inherit (lib.types) + nullOr + listOf + package + path + str + ; + in + { + enable = lib.mkEnableOption "crowdsec"; + + package = lib.mkOption { + type = package; + default = crowdsec; + }; + + stateDirectory = lib.mkOption { + type = path; + readOnly = true; + + description = '' + The state directory of the crowdsec instance. Cannot be + changed, but is exposed for downstream use. + ''; + }; + + settings = lib.mkOption { + inherit (settingsFormat) type; + default = { }; + + description = '' + The crowdsec configuration. Refer to + + for details on supported values. + ''; + }; + + parserWhitelist = lib.mkOption { + type = listOf str; + default = [ ]; + description = '' + Set of IP addresses to add to a parser-based whitelist. + + Addresses can be specified either as plain IP addresses or + in CIDR notation. + ''; + }; + + hubConfigurations = { + collections = lib.mkOption { + type = listOf str; + description = '' + List of pre-made crowdsec collections to install. + ''; + }; + + scenarios = lib.mkOption { + type = listOf str; + description = '' + List of pre-made crowdsec scenarios to install. + ''; + }; + + parsers = lib.mkOption { + type = listOf str; + description = '' + List of pre-made crowdsec parsers to install. + ''; + }; + + postoverflows = lib.mkOption { + type = listOf str; + description = '' + List of pre-made crowdsec postoverflows to install. + ''; + }; + + appsecConfigs = lib.mkOption { + type = listOf str; + description = '' + List of pre-made crowdsec appsec configurations to install. + ''; + }; + + appsecRules = lib.mkOption { + type = listOf str; + description = '' + List of pre-made crowdsec appsec rules to install. + ''; + }; + }; + + centralApiCredentials = lib.mkOption { + type = nullOr path; + default = null; + + description = '' + The API key to access crowdsec's central API - this is + required to access any of the shared blocklists. + + Use of this feature is optional, entering no API key (the + default) turns all sharing or receiving of blocked IPs off. + + Note that adding the API key by itself does not enable + sharing of blocked IPs with the central API. This limits the + types of blocklists this instance can access. + + To also turn sharing blocked IPs on, set + `api.server.online_client.sharing = true;`. + ''; + }; + + ctiApiKey = lib.mkOption { + type = nullOr path; + default = null; + + description = '' + The API key for crowdsec's CTI offering. + ''; + }; + }; + + config = lib.mkIf cfg.enable { + # Set up default settings; anything that *shouldn't* be changed is + # set to the default priority so that users need to use + # `lib.mkForce`. + security.crowdsec = { + stateDirectory = "/var/lib/crowdsec"; + + settings = { + common = { + daemonize = true; + # The default logs to files, which isn't the preferred way + # on NixOS + log_media = "stdout"; + }; + + config_paths = { + config_dir = "${cfg.stateDirectory}/config/"; + data_dir = "${cfg.stateDirectory}/data/"; + # This "config" file is intended to be written to using the + # cscli tool, so you can temporarily make it so rules don't + # do anything but log what they *would* do for + # experimentation. + simulation_path = "${cfg.stateDirectory}/config/simulation.yaml"; + + pattern_dir = lib.mkDefault "${cfg.package}/share/crowdsec/config/patterns"; + + hub_dir = hub; + index_path = "${hub}/.index.json"; + + # Integrations aren't supported for now + notification_dir = lib.mkDefault "/var/empty/"; + plugin_dir = lib.mkDefault "/var/empty/"; + }; + + crowdsec_service.acquisition_path = lib.mkDefault "${cfg.package}/share/crowdsec/config/acquis.yaml"; + + cscli = { + prometheus_uri = lib.mkDefault "127.0.0.1:6060"; + }; + + db_config = { + type = lib.mkDefault "sqlite"; + db_path = lib.mkDefault "${cfg.stateDirectory}/data/crowdsec.db"; + use_wal = lib.mkDefault true; + flush = { + max_items = lib.mkDefault 5000; + max_age = lib.mkDefault "7d"; + }; + }; + + api = { + cti = { + enabled = cfg.ctiApiKey != null; + key = cfg.ctiApiKey; + }; + client.credentials_path = "${cfg.stateDirectory}/local_credentials.yaml"; + server = { + listen_uri = lib.mkDefault "127.0.0.1:8080"; + profiles_path = lib.mkDefault "${cfg.package}/share/crowdsec/config/profiles.yaml"; + console_path = lib.mkDefault "${cfg.package}/share/crowdsec/config/console.yaml"; + + online_client = { + # By default, we don't let crowdsec phone home, since + # this is usually within NixOS users' concerns. + # + # TODO: Enable when this option becomes available + # (1.6.4, current nixpkgs-unstable) + # sharing = lib.mkDefault false; + credentials_path = cfg.centralApiCredentials; + }; + }; + }; + + # We enable prometheus by default, since cscli relies on it + # for metrics + prometheus = { + enabled = lib.mkDefault true; + level = lib.mkDefault "full"; + listen_addr = lib.mkDefault "127.0.0.1"; + listen_port = lib.mkDefault 6060; + }; + }; + }; + + systemd.packages = [ + cfg.package + ]; + + environment = { + systemPackages = [ + # To add completions; sadly need to hand-roll this since + # neither `symlinkJoin` nor `buildEnv` have collision + # handling. + (pkgs.runCommandNoCCLocal "cscli" { } '' + mkdir -p $out + ln -s ${cscli}/bin $out/bin + ln -s ${cfg.package}/share $out/share + '') + ]; + + etc."crowdsec/config.yaml".source = settingsFormat.generate "crowdsec-settings.yaml" cfg.settings; + }; + + systemd = { + tmpfiles.settings."10-crowdsec" = { + "${cfg.stateDirectory}".d = { + user = "crowdsec"; + group = "crowdsec"; + mode = "0700"; + }; + + # This must be created for the setup service to work + "${cfg.stateDirectory}/config".d = { + user = "crowdsec"; + group = "crowdsec"; + mode = "0700"; + }; + + "${cfg.stateDirectory}/config/parsers".d = lib.mkIf (cfg.parserWhitelist != [ ]) { + user = "crowdsec"; + group = "crowdsec"; + mode = "0700"; + }; + + "${cfg.stateDirectory}/config/parsers/s02-enrich".d = lib.mkIf (cfg.parserWhitelist != [ ]) { + user = "crowdsec"; + group = "crowdsec"; + mode = "0700"; + }; + + "${cfg.stateDirectory}/config/parsers/s02-enrich/nixos-whitelist.yaml" = + lib.mkIf (cfg.parserWhitelist != [ ]) + { + "L+".argument = + (settingsFormat.generate "crowdsec-nixos-whitelist.yaml" { + name = "nixos/parser-whitelist"; + description = "Parser whitelist generated by the crowdsec NixOS module"; + whitelist = { + reason = "Filtered by NixOS whitelist"; + ip = lib.lists.filter (ip: !(lib.hasInfix "/" ip)) cfg.parserWhitelist; + cidr = lib.lists.filter (ip: lib.hasInfix "/" ip) cfg.parserWhitelist; + }; + }).outPath; + }; + }; + + services = { + crowdsec-setup = { + # TODO(tlater): Depend on tmpfiles path for + # /var/lib/crowdsec/config + description = "Crowdsec database and config preparation"; + + script = '' + if [ ! -e '${cfg.settings.config_paths.simulation_path}' ]; then + cp '${cfg.package}/share/crowdsec/config/simulation.yaml' '${cfg.settings.config_paths.simulation_path}' + fi + + if [ ! -e '${cfg.settings.api.client.credentials_path}' ]; then + ${cfg.package}/bin/cscli machines add --auto --file '${cfg.settings.api.client.credentials_path}' + fi + ''; + + serviceConfig = { + User = "crowdsec"; + Group = "crowdsec"; + StateDirectory = "crowdsec"; + + Type = "oneshot"; + RemainAfterExit = true; + }; + }; + + # Note that the service basics are already defined upstream + crowdsec = { + enable = true; + + after = [ "crowdsec-setup.service" ]; + bindsTo = [ "crowdsec-setup.service" ]; + wantedBy = [ "multi-user.target" ]; + + serviceConfig = { + User = "crowdsec"; + Group = "crowdsec"; + SupplementaryGroups = [ "systemd-journal" ]; + + StateDirectory = "crowdsec"; + }; + }; + }; + }; + + users = { + users.crowdsec = { + isSystemUser = true; + home = cfg.stateDirectory; + group = "crowdsec"; + }; + groups = { + crowdsec = { }; + }; + }; + }; +} diff --git a/modules/crowdsec/remediations/cs-firewall-bouncer.nix b/modules/crowdsec/remediations/cs-firewall-bouncer.nix new file mode 100644 index 0000000..aa70552 --- /dev/null +++ b/modules/crowdsec/remediations/cs-firewall-bouncer.nix @@ -0,0 +1,90 @@ +{ + flake-inputs, + pkgs, + lib, + config, + ... +}: +let + crowdsecCfg = config.security.crowdsec; + cfg = crowdsecCfg.remediationComponents.firewallBouncer; + settingsFormat = pkgs.formats.yaml { }; + crowdsec-firewall-bouncer = flake-inputs.self.packages.${pkgs.system}.crowdsec-firewall-bouncer; +in +{ + options.security.crowdsec.remediationComponents.firewallBouncer = { + enable = lib.mkEnableOption "cs-firewall-bouncer"; + + settings = lib.mkOption { + inherit (settingsFormat) type; + default = { }; + + description = '' + The bouncer configuration. Refer to + for details + on supported values. + ''; + }; + }; + + config = lib.mkIf cfg.enable { + security.crowdsec.remediationComponents.firewallBouncer.settings = { + mode = lib.mkDefault "${if config.networking.nftables.enable then "nftables" else "iptables"}"; + log_mode = "stdout"; + iptables_chains = [ + "nixos-fw" + ]; + + # Don't let users easily override this; unfortunately we need to + # set up this key through substitution at runtime. + api_key = lib.mkForce "\${API_KEY}"; + api_url = lib.mkDefault "http://${crowdsecCfg.settings.api.server.listen_uri}"; + }; + + systemd = { + packages = [ crowdsec-firewall-bouncer ]; + + services = { + crowdsec-firewall-bouncer-setup = { + description = "Crowdsec firewall bouncer config preparation"; + script = '' + if [ ! -e '${crowdsecCfg.stateDirectory}/firewall_bouncer_credentials.yaml' ]; then + ${crowdsecCfg.package}/bin/cscli -oraw bouncers add "cs-firewall-bouncer-$(${pkgs.coreutils}/bin/date +%s)" > \ + ${crowdsecCfg.stateDirectory}/firewall_bouncer_credentials.yaml + fi + + # Stdout redirection is deliberately used to forcibly + # overwrite the file if it exists + API_KEY="$(<${crowdsecCfg.stateDirectory}/firewall_bouncer_credentials.yaml)" \ + ${lib.getExe pkgs.envsubst} \ + -i ${settingsFormat.generate "crowdsec-firewall-bouncer.yaml" cfg.settings} \ + > /var/lib/crowdsec/config/crowdsec-firewall-bouncer.yaml + ''; + + serviceConfig = { + User = "crowdsec"; + Group = "crowdsec"; + + Type = "oneshot"; + RemainAfterExit = true; + }; + }; + + crowdsec-firewall-bouncer = { + enable = true; + + after = [ "crowdsec-firewall-bouncer-setup.service" ]; + bindsTo = [ "crowdsec-firewall-bouncer-setup.service" ]; + requiredBy = [ "crowdsec.service" ]; + + path = + lib.optionals (cfg.settings.mode == "ipset" || cfg.settings.mode == "iptables") [ + pkgs.ipset + ] + ++ lib.optional (cfg.settings.mode == "iptables") pkgs.iptables + ++ lib.optional (cfg.settings.mode == "nftables") pkgs.nftables; + }; + }; + }; + }; +} diff --git a/modules/crowdsec/remediations/default.nix b/modules/crowdsec/remediations/default.nix new file mode 100644 index 0000000..7df6ade --- /dev/null +++ b/modules/crowdsec/remediations/default.nix @@ -0,0 +1,5 @@ +{ + imports = [ + ./cs-firewall-bouncer.nix + ]; +} diff --git a/modules/default.nix b/modules/default.nix index e1db4cc..89f1752 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -1 +1,6 @@ -{ imports = [ ./nginxExtensions.nix ]; } +{ + imports = [ + ./crowdsec + ./nginxExtensions.nix + ]; +} diff --git a/pkgs/crowdsec/_sources/generated.json b/pkgs/crowdsec/_sources/generated.json new file mode 100644 index 0000000..8485779 --- /dev/null +++ b/pkgs/crowdsec/_sources/generated.json @@ -0,0 +1,42 @@ +{ + "crowdsec-firewall-bouncer": { + "cargoLocks": null, + "date": null, + "extract": null, + "name": "crowdsec-firewall-bouncer", + "passthru": null, + "pinned": false, + "src": { + "deepClone": false, + "fetchSubmodules": false, + "leaveDotGit": false, + "name": null, + "owner": "crowdsecurity", + "repo": "cs-firewall-bouncer", + "rev": "v0.0.31", + "sha256": "sha256-59MWll8v00CF4WA53gjHZSTFc8hpYaHENg9O7LgTCrA=", + "type": "github" + }, + "version": "v0.0.31" + }, + "crowdsec-hub": { + "cargoLocks": null, + "date": "2025-01-30", + "extract": null, + "name": "crowdsec-hub", + "passthru": null, + "pinned": false, + "src": { + "deepClone": false, + "fetchSubmodules": false, + "leaveDotGit": false, + "name": null, + "owner": "crowdsecurity", + "repo": "hub", + "rev": "8f102f5ac79af59d3024ca2771b65ec87411ac02", + "sha256": "sha256-8K1HkBg0++Au1dr2KMrl9b2ruqXdo+vqWngOCwL11Mo=", + "type": "github" + }, + "version": "8f102f5ac79af59d3024ca2771b65ec87411ac02" + } +} \ No newline at end of file diff --git a/pkgs/crowdsec/_sources/generated.nix b/pkgs/crowdsec/_sources/generated.nix new file mode 100644 index 0000000..6f845ec --- /dev/null +++ b/pkgs/crowdsec/_sources/generated.nix @@ -0,0 +1,27 @@ +# This file was generated by nvfetcher, please do not modify it manually. +{ fetchgit, fetchurl, fetchFromGitHub, dockerTools }: +{ + crowdsec-firewall-bouncer = { + pname = "crowdsec-firewall-bouncer"; + version = "v0.0.31"; + src = fetchFromGitHub { + owner = "crowdsecurity"; + repo = "cs-firewall-bouncer"; + rev = "v0.0.31"; + fetchSubmodules = false; + sha256 = "sha256-59MWll8v00CF4WA53gjHZSTFc8hpYaHENg9O7LgTCrA="; + }; + }; + crowdsec-hub = { + pname = "crowdsec-hub"; + version = "8f102f5ac79af59d3024ca2771b65ec87411ac02"; + src = fetchFromGitHub { + owner = "crowdsecurity"; + repo = "hub"; + rev = "8f102f5ac79af59d3024ca2771b65ec87411ac02"; + fetchSubmodules = false; + sha256 = "sha256-8K1HkBg0++Au1dr2KMrl9b2ruqXdo+vqWngOCwL11Mo="; + }; + date = "2025-01-30"; + }; +} diff --git a/pkgs/crowdsec/default.nix b/pkgs/crowdsec/default.nix new file mode 100644 index 0000000..66faac3 --- /dev/null +++ b/pkgs/crowdsec/default.nix @@ -0,0 +1,9 @@ +{ pkgs }: +let + sources = pkgs.callPackage ./_sources/generated.nix { }; + callPackage = pkgs.lib.callPackageWith (pkgs // { inherit sources; }); +in +{ + hub = callPackage ./hub.nix { }; + firewall-bouncer = callPackage ./firewall-bouncer.nix { }; +} diff --git a/pkgs/crowdsec/firewall-bouncer.nix b/pkgs/crowdsec/firewall-bouncer.nix new file mode 100644 index 0000000..86370c4 --- /dev/null +++ b/pkgs/crowdsec/firewall-bouncer.nix @@ -0,0 +1,26 @@ +{ + lib, + sources, + buildGoModule, + envsubst, + coreutils, +}: +let + envsubstBin = lib.getExe envsubst; +in +buildGoModule { + inherit (sources.crowdsec-firewall-bouncer) pname version src; + + vendorHash = "sha256-7Jxvg8UEjUxnIz1llvXyI2AefJ31OVdNzhWD/C8wU/Y="; + + postInstall = '' + mkdir -p $out/lib/systemd/system + + CFG=/var/lib/crowdsec/config BIN=$out/bin/cs-firewall-bouncer ${envsubstBin} \ + -i ./config/crowdsec-firewall-bouncer.service \ + -o $out/lib/systemd/system/crowdsec-firewall-bouncer.service + + substituteInPlace $out/lib/systemd/system/crowdsec-firewall-bouncer.service \ + --replace-fail /bin/sleep ${coreutils}/bin/sleep + ''; +} diff --git a/pkgs/crowdsec/hub.nix b/pkgs/crowdsec/hub.nix new file mode 100644 index 0000000..d057ca8 --- /dev/null +++ b/pkgs/crowdsec/hub.nix @@ -0,0 +1,4 @@ +{ + sources, +}: +sources.crowdsec-hub.src diff --git a/pkgs/crowdsec/nvfetcher.toml b/pkgs/crowdsec/nvfetcher.toml new file mode 100644 index 0000000..2287dba --- /dev/null +++ b/pkgs/crowdsec/nvfetcher.toml @@ -0,0 +1,7 @@ +[crowdsec-hub] +src.git = "https://github.com/crowdsecurity/hub.git" +fetch.github = "crowdsecurity/hub" + +[crowdsec-firewall-bouncer] +src.github = "crowdsecurity/cs-firewall-bouncer" +fetch.github = "crowdsecurity/cs-firewall-bouncer" diff --git a/pkgs/default.nix b/pkgs/default.nix index 036afd4..0e5de7a 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,7 +1,5 @@ { pkgs }: -let - inherit (pkgs) callPackage; -in { - starbound = callPackage ./starbound { }; + crowdsec = import ./crowdsec { inherit pkgs; }; + starbound = pkgs.callPackage ./starbound { }; } From 40187d4b2d64f6835dcddef68edaa160d2219daa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 30 Jan 2025 03:50:08 +0800 Subject: [PATCH 147/196] feat: Add crowdsec to replace fail2ban --- configuration/default.nix | 1 + configuration/services/crowdsec.nix | 35 +++++++++++++++++++ .../services/metrics/victoriametrics.nix | 16 +++++++++ 3 files changed, 52 insertions(+) create mode 100644 configuration/services/crowdsec.nix diff --git a/configuration/default.nix b/configuration/default.nix index a22f8fc..c9c71ec 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -18,6 +18,7 @@ ./services/backups.nix ./services/battery-manager.nix ./services/conduit.nix + ./services/crowdsec.nix ./services/foundryvtt.nix ./services/gitea.nix ./services/metrics diff --git a/configuration/services/crowdsec.nix b/configuration/services/crowdsec.nix new file mode 100644 index 0000000..110602c --- /dev/null +++ b/configuration/services/crowdsec.nix @@ -0,0 +1,35 @@ +{ pkgs, ... }: +{ + security.crowdsec = { + enable = true; + + parserWhitelist = [ + "1.64.239.213" + ]; + + settings.crowdsec_service.acquisition_path = pkgs.writeText "crowdsec-acquisitions.yaml" '' + --- + source: journalctl + journalctl_filter: + - "SYSLOG_IDENTIFIER=Nextcloud" + labels: + type: syslog + --- + source: journalctl + journalctl_filter: + - "SYSLOG_IDENTIFIER=sshd-session" + labels: + type: syslog + --- + ''; + + remediationComponents.firewallBouncer = { + enable = true; + settings.prometheus = { + enabled = true; + listen_addr = "127.0.0.1"; + listen_port = "60601"; + }; + }; + }; +} diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index 710cf70..5cfc614 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -10,6 +10,22 @@ extraSettings.authorization.credentials_file = config.sops.secrets."forgejo/metrics-token".path; }; coturn.targets = [ "127.0.0.1:9641" ]; + + crowdsec.targets = + let + address = config.security.crowdsec.settings.prometheus.listen_addr; + port = config.security.crowdsec.settings.prometheus.listen_port; + in + [ "${address}:${toString port}" ]; + + csFirewallBouncer.targets = + let + address = + config.security.crowdsec.remediationComponents.firewallBouncer.settings.prometheus.listen_addr; + port = + config.security.crowdsec.remediationComponents.firewallBouncer.settings.prometheus.listen_port; + in + [ "${address}:${toString port}" ]; }; }; } From 2831fdb0f27e2b3e6eb32f907681a07337a752ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 1 Feb 2025 17:57:32 +0800 Subject: [PATCH 148/196] feat(crowdsec): Add proper support for acquisitions --- modules/crowdsec/default.nix | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/modules/crowdsec/default.nix b/modules/crowdsec/default.nix index 915ca0b..0d0ff1c 100644 --- a/modules/crowdsec/default.nix +++ b/modules/crowdsec/default.nix @@ -28,6 +28,12 @@ let $sudo ${crowdsec}/bin/cscli "$@" ''; + + acquisitions = '' + --- + ${lib.concatMapStringsSep "\n---\n" builtins.toJSON cfg.acquisitions} + --- + ''; in { imports = [ ./remediations ]; @@ -82,6 +88,24 @@ in ''; }; + acquisitions = lib.mkOption { + type = listOf settingsFormat.type; + default = [ ]; + description = '' + Log acquisitions. + ''; + }; + + extraGroups = lib.mkOption { + type = listOf str; + default = [ ]; + description = '' + Additional groups to make the service part of. + + Required to permit reading from various log sources. + ''; + }; + hubConfigurations = { collections = lib.mkOption { type = listOf str; @@ -190,7 +214,13 @@ in plugin_dir = lib.mkDefault "/var/empty/"; }; - crowdsec_service.acquisition_path = lib.mkDefault "${cfg.package}/share/crowdsec/config/acquis.yaml"; + crowdsec_service.acquisition_path = + # Using an if/else here because `mkMerge` does not work in + # YAML-type options + if cfg.acquisitions == [ ] then + "${cfg.package}/share/crowdsec/config/acquis.yaml" + else + pkgs.writeText "acquis.yaml" acquisitions; cscli = { prometheus_uri = lib.mkDefault "127.0.0.1:6060"; @@ -339,7 +369,7 @@ in serviceConfig = { User = "crowdsec"; Group = "crowdsec"; - SupplementaryGroups = [ "systemd-journal" ]; + SupplementaryGroups = cfg.extraGroups; StateDirectory = "crowdsec"; }; From 68450870cf3776f4f855cfdf117b24069777d3c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 1 Feb 2025 17:58:15 +0800 Subject: [PATCH 149/196] feat(crowdsec-service): Add nginx monitoring --- configuration/services/crowdsec.nix | 50 ++++++++++++++++++++--------- 1 file changed, 34 insertions(+), 16 deletions(-) diff --git a/configuration/services/crowdsec.nix b/configuration/services/crowdsec.nix index 110602c..4891cad 100644 --- a/configuration/services/crowdsec.nix +++ b/configuration/services/crowdsec.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ config, lib, ... }: { security.crowdsec = { enable = true; @@ -7,21 +7,39 @@ "1.64.239.213" ]; - settings.crowdsec_service.acquisition_path = pkgs.writeText "crowdsec-acquisitions.yaml" '' - --- - source: journalctl - journalctl_filter: - - "SYSLOG_IDENTIFIER=Nextcloud" - labels: - type: syslog - --- - source: journalctl - journalctl_filter: - - "SYSLOG_IDENTIFIER=sshd-session" - labels: - type: syslog - --- - ''; + extraGroups = [ + "systemd-journal" + "nginx" + ]; + + acquisitions = [ + { + source = "journalctl"; + labels.type = "syslog"; + journalctl_filter = [ + "SYSLOG_IDENTIFIER=Nextcloud" + ]; + } + + { + source = "journalctl"; + labels.type = "syslog"; + journalctl_filter = [ + "SYSLOG_IDENTIFIER=sshd-session" + ]; + } + + { + labels.type = "nginx"; + filenames = + [ + "/var/log/nginx/*.log" + ] + ++ lib.mapAttrsToList ( + vHost: _: "/var/log/nginx/${vHost}/access.log" + ) config.services.nginx.virtualHosts; + } + ]; remediationComponents.firewallBouncer = { enable = true; From 78c81a10284d2202be058c8e51f24baa539cb116 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 1 Feb 2025 18:16:52 +0800 Subject: [PATCH 150/196] feat(acme): Switch to porkbun --- configuration/nginx.nix | 13 ++++++++++--- configuration/sops.nix | 12 ++++++++---- keys/production.yaml | 10 ++++++---- keys/staging.yaml | 10 ++++++---- 4 files changed, 30 insertions(+), 15 deletions(-) diff --git a/configuration/nginx.nix b/configuration/nginx.nix index b38118b..0b72cc1 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -47,10 +47,17 @@ acceptTerms = true; certs."tlater.net" = { - extraDomainNames = [ "*.tlater.net" ]; - dnsProvider = "hetzner"; + extraDomainNames = [ + "*.tlater.net" + "tlater.com" + "*.tlater.com" + ]; + dnsProvider = "porkbun"; group = "nginx"; - credentialFiles."HETZNER_API_KEY_FILE" = config.sops.secrets."hetzner-api".path; + credentialFiles = { + PORKBUN_API_KEY_FILE = config.sops.secrets."porkbun/api-key".path; + PORKBUN_SECRET_API_KEY_FILE = config.sops.secrets."porkbun/secret-api-key".path; + }; }; }; diff --git a/configuration/sops.nix b/configuration/sops.nix index bc21834..bbfb888 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -34,16 +34,20 @@ "heisenbridge/as-token" = { }; "heisenbridge/hs-token" = { }; - "hetzner-api" = { - owner = "acme"; - }; - # Nextcloud "nextcloud/tlater" = { owner = "nextcloud"; group = "nextcloud"; }; + # Porkbub/ACME + "porkbun/api-key" = { + owner = "acme"; + }; + "porkbun/secret-api-key" = { + owner = "acme"; + }; + # Restic "restic/local-backups" = { owner = "root"; diff --git a/keys/production.yaml b/keys/production.yaml index 6dd4c21..19df9bd 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -1,4 +1,6 @@ -hetzner-api: ENC[AES256_GCM,data:OsUfo86AzcBe/OELkfB5brEfsZ4gkbeehxwIVUBwQgE=,iv:Bt/cjlZ6oZEVUOQjWMDL7/mfL3HWLFAw1tEGeLMgeKg=,tag:TMU2XiHlMgP4aes10mIQYQ==,type:str] +porkbun: + api-key: ENC[AES256_GCM,data:p3lqvGc8m2U/12rBPjoNR7hxQyD52CyEen/V8q59k5CSJZSqzZS8M5vEXFBsUMjz2lrmKM4pgtz4wa2fWK6Ty4LJCaI=,iv:OQC3FpwTtPmqHvDbA41mWF7LGYwC/jD2ZMBsE8ktNOg=,tag:kq5hUR7TBgczuGcXpsdu2A==,type:str] + secret-api-key: ENC[AES256_GCM,data:zV5PTKf45Zab8uW8mbuXmPNzciq6tV9OF0wUND7YnRk/DjZneYWItAsNBVoM+iHA+XsUPDoeKo6hoJiGkH/cCQ8WvuM=,iv:yr1M5DlgI8k6BgzNz3HRnqspHOrQuf2PmoZS1HGp0v8=,tag:JkNNziMMfKFZV2hnx5lXRg==,type:str] battery-manager: email: ENC[AES256_GCM,data:rYLUACXR/n+bLBmZ,iv:sUBEkh2+7qGjHZ5R23e/hoCiyTA7GTL4bJvXmxjZ5Sw=,tag:fdPMllaQQfRgX0WZKIre4g==,type:str] password: ENC[AES256_GCM,data:7cokZa6Q6ahSeiFPz+cV,iv:vz405P0IcG9FsAQXlY7mi78GuushQUKJm2irG6buGzc=,tag:JLHG2jTkJDGbinAq9dXRsQ==,type:str] @@ -32,8 +34,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-04-15T23:13:18Z" - mac: ENC[AES256_GCM,data:3/v+WgSWJ+VcBSBe1Wkis3z+tMmSjbKzLFqBB8xugc6DvgQG8J+1HRrPucLnpNNtEdmpyoTa72U6fPm6JnyUsuj5pLEghLprOJkqQNdRI06fllhw+9d3e3twx6D4oIIsVH6/io4ElXrGsGQTsfNbYhgn+987wa3WP5N25fBac3U=,iv:FL3tzPutOMN6IPkQfXIu/JOZT+OzUSqpMSQrUeXZQHE=,tag:jL1BTsYTA9XjrsjFszxZhA==,type:str] + lastmodified: "2025-02-01T10:16:20Z" + mac: ENC[AES256_GCM,data:oFJNljU0RJdgsdK7qRXKCqRs7kPXgHqSyYcexEs8kXFnn68mKHNKKfl7skepCPKk0U7h6JqJQ+EOnAA0eo6mraBAMKLSXUcucTzqsfcI+V04rYcP2nGPMUiNDGdKHCcb6OmBhfvKw7+elnonPxKsBlyK31AqB9RFDKaTKXpcNMw=,iv:Q9t7ZkUrevHm5I4JBW95TfvZ88dl2Fq3Yq/E642dV6s=,tag:p2XWfii168qq29wX/RCJuQ==,type:str] pgp: - created_at: "2025-01-21T17:55:44Z" enc: |- @@ -91,4 +93,4 @@ sops: -----END PGP MESSAGE----- fp: 0af7641adb8aa843136cf6d047f71da3e5ad79f9 unencrypted_suffix: _unencrypted - version: 3.8.1 + version: 3.9.2 diff --git a/keys/staging.yaml b/keys/staging.yaml index 091424d..67e47ad 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -1,4 +1,6 @@ -hetzner-api: ENC[AES256_GCM,data:1Zjp003j60g=,iv:+vDcyiqYm4A9CMIrW4oGZKdZiczatBcvfL4qYYhKwCg=,tag:Xeu8JuRm+b+5RO+wFR2M8w==,type:str] +porkbun: + api-key: ENC[AES256_GCM,data:A5J1sqwq6hs=,iv:77Mar3IX7mq7z7x6s9sSeGNVYc1Wv78HptJElEC7z3Q=,tag:eM/EF9TxKu+zcbJ1SYXiuA==,type:str] + secret-api-key: ENC[AES256_GCM,data:8Xv+jWYaWMI=,iv:li4tdY0pch5lksftMmfMVS729caAwfaacoztaQ49az0=,tag:KhfElBGzVH4ByFPfuQsdhw==,type:str] battery-manager: email: ENC[AES256_GCM,data:LM/EGzWHfVQ=,iv:jFaoUQuUfuGoOyj/GFpdI8TerH/c8D9fjvio+IEt2Tc=,tag:IWLiN011JEnHRLIXWQgfmA==,type:str] password: ENC[AES256_GCM,data:SUxjqS7SJHM=,iv:LvdKk88S+nSImh6/ZezbFGLCUBu1Lpdu+neF2xyHdBg=,tag:rcMyZuW4FVNbcbz00wQKBg==,type:str] @@ -32,8 +34,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2024-04-15T23:13:27Z" - mac: ENC[AES256_GCM,data:JhEVrKF2Jsqpdztcr3g5lMrgEFeLXfBRQTwQJ6PmLSNyDORcTU09TJPNWTPDnR5okDrvIU/wlzi5DZ8A0ebNhrKf6l0tNFBT9LSvQFHU5SBxqY/m8uEJKSrEC4IL5lugOOISDka2KSvYXVCXrumMHE5FnmOS/CgOZaZk6LUjPYA=,iv:ygygnSedcTo2Vsc56s2qrz1qkWchvSgvoiMTebRxQQ8=,tag:vf6z8rxsXmqzwpDy9Avifw==,type:str] + lastmodified: "2025-02-01T10:16:31Z" + mac: ENC[AES256_GCM,data:N4RQHOyWvSXW16fepQvRznNbmGerct03kptyiY3IoTpYaJ+43cyFjW15ZqfpaRFyV66QIeqmceqV8c4eP8YSndj6e55e04w0RCyqREXQlFPR6Eh5elaBenokoJhjF6BCsq+xX1C+LUEcxiR/dgy5cwA3mAD/dLCm+G11a06EG6k=,iv:wt5fEOVP6CXHCzmMH9hNCQDDgPa66bLMOa39Eipux9Y=,tag:kWZPnWD1stANVAmWmvOjCg==,type:str] pgp: - created_at: "2025-01-21T17:55:30Z" enc: |- @@ -71,4 +73,4 @@ sops: -----END PGP MESSAGE----- fp: 2f5caa73e7ceea4fcc8d2881fde587e6737d2dbc unencrypted_suffix: _unencrypted - version: 3.8.1 + version: 3.9.2 From e1989a6009f0b5e7a8e7433498e55fe286aba94d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 8 Feb 2025 05:29:35 +0800 Subject: [PATCH 151/196] fix(crowdsec): Filter out events against matrix --- configuration/services/crowdsec.nix | 39 ++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/configuration/services/crowdsec.nix b/configuration/services/crowdsec.nix index 4891cad..f6f3c80 100644 --- a/configuration/services/crowdsec.nix +++ b/configuration/services/crowdsec.nix @@ -1,4 +1,9 @@ -{ config, lib, ... }: +{ + pkgs, + config, + lib, + ... +}: { security.crowdsec = { enable = true; @@ -50,4 +55,36 @@ }; }; }; + + # Add whitelists for matrix + systemd.tmpfiles.settings."10-matrix" = + let + stateDir = config.security.crowdsec.stateDirectory; + in + { + "${stateDir}/config/postoverflows".d = { + user = "crowdsec"; + group = "crowdsec"; + mode = "0700"; + }; + + "${stateDir}/config/postoverflows/s01-whitelist".d = { + user = "crowdsec"; + group = "crowdsec"; + mode = "0700"; + }; + + "${stateDir}/config/postoverflows/s01-whitelist/matrix-whitelist.yaml"."L+".argument = + ((pkgs.formats.yaml { }).generate "crowdsec-matrix-whitelist.yaml" { + name = "tetsumaki/matrix"; + description = "custom matrix whitelist"; + whitelist = { + reason = "whitelist false positive for matrix"; + expression = [ + "evt.Overflow.Alert.Events[0].GetMeta('target_fqdn') == '${config.services.matrix-conduit.settings.global.server_name}'" + "evt.Overflow.Alert.GetScenario() in ['crowdsecurity/http-probing', 'crowdsecurity/http-crawl-non_statics']" + ]; + }; + }).outPath; + }; } From e11b6f810bd504af9783174bb9f8cebbd7f995c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 7 Feb 2025 01:39:57 +0800 Subject: [PATCH 152/196] feat(crowdsec): Switch to whitelisting wireguard IP My IP address is not static, and grafana seems to comfortably produce enough traffic to get me IP banned. --- configuration/services/crowdsec.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/crowdsec.nix b/configuration/services/crowdsec.nix index f6f3c80..6e0f367 100644 --- a/configuration/services/crowdsec.nix +++ b/configuration/services/crowdsec.nix @@ -9,7 +9,7 @@ enable = true; parserWhitelist = [ - "1.64.239.213" + "10.45.249.2" ]; extraGroups = [ From c939b935bfe4f4d201bc4e5b8fe4edb192f120f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 8 Feb 2025 05:47:44 +0800 Subject: [PATCH 153/196] feat(conduit): Refactor matrix appservices and add matrix-hookshot --- configuration/default.nix | 2 +- .../{conduit.nix => conduit/default.nix} | 91 +---------- .../services/conduit/heisenbridge.nix | 78 ++++++++++ configuration/services/conduit/lib.nix | 67 ++++++++ .../services/conduit/matrix-hookshot.nix | 144 ++++++++++++++++++ .../services/metrics/victoriametrics.nix | 4 + configuration/sops.nix | 4 + keys/production.yaml | 7 +- keys/staging.yaml | 7 +- 9 files changed, 313 insertions(+), 91 deletions(-) rename configuration/services/{conduit.nix => conduit/default.nix} (62%) create mode 100644 configuration/services/conduit/heisenbridge.nix create mode 100644 configuration/services/conduit/lib.nix create mode 100644 configuration/services/conduit/matrix-hookshot.nix diff --git a/configuration/default.nix b/configuration/default.nix index c9c71ec..239f9f6 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -17,7 +17,7 @@ ./services/backups.nix ./services/battery-manager.nix - ./services/conduit.nix + ./services/conduit ./services/crowdsec.nix ./services/foundryvtt.nix ./services/gitea.nix diff --git a/configuration/services/conduit.nix b/configuration/services/conduit/default.nix similarity index 62% rename from configuration/services/conduit.nix rename to configuration/services/conduit/default.nix index 4e53241..c3803f4 100644 --- a/configuration/services/conduit.nix +++ b/configuration/services/conduit/default.nix @@ -1,5 +1,4 @@ { - pkgs, config, lib, ... @@ -12,6 +11,11 @@ let turn-realm = "turn.${config.services.nginx.domain}"; in { + imports = [ + ./heisenbridge.nix + ./matrix-hookshot.nix + ]; + services.matrix-conduit = { enable = true; settings.global = { @@ -40,91 +44,6 @@ in }; }; - systemd.services.heisenbridge = - let - replaceSecretBin = "${pkgs.replace-secret}/bin/replace-secret"; - registrationFile = builtins.toFile "heisenbridge-registration.yaml" ( - builtins.toJSON { - id = "heisenbridge"; - url = "http://127.0.0.1:9898"; - as_token = "@AS_TOKEN@"; - hs_token = "@HS_TOKEN@"; - rate_limited = false; - sender_localpart = "heisenbridge"; - namespaces = { - users = [ - { - regex = "@irc_.*"; - exclusive = true; - } - { - regex = "@heisenbridge:.*"; - exclusive = true; - } - ]; - aliases = [ ]; - rooms = [ ]; - }; - } - ); - - # TODO(tlater): Starting with systemd 253 it will become possible - # to do the credential setup as part of ExecStartPre/preStart - # instead. - # - # This will also make it possible to actually set caps on the - # heisenbridge process using systemd, so that we can run the - # identd process. - execScript = pkgs.writeShellScript "heisenbridge" '' - cp ${registrationFile} "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" - chmod 600 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml - ${replaceSecretBin} '@AS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_as-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" - ${replaceSecretBin} '@HS_TOKEN@' "$CREDENTIALS_DIRECTORY/heisenbridge_hs-token" "$RUNTIME_DIRECTORY/heisenbridge-registration.yaml" - chmod 400 $RUNTIME_DIRECTORY/heisenbridge-registration.yaml - - ${pkgs.heisenbridge}/bin/heisenbridge \ - --config $RUNTIME_DIRECTORY/heisenbridge-registration.yaml \ - --owner @tlater:matrix.tlater.net \ - 'http://localhost:${toString cfg.settings.global.port}' - ''; - in - { - description = "Matrix<->IRC bridge"; - wantedBy = [ "multi-user.target" ]; - after = [ "conduit.service" ]; - - serviceConfig = { - Type = "simple"; - - LoadCredential = "heisenbridge:/run/secrets/heisenbridge"; - - ExecStart = execScript; - - DynamicUser = true; - RuntimeDirectory = "heisenbridge"; - RuntimeDirectoryMode = "0700"; - - RestrictNamespaces = true; - PrivateUsers = true; - ProtectHostname = true; - ProtectClock = true; - ProtectKernelTunables = true; - ProtectKernelModules = true; - ProtectKernelLogs = true; - ProtectControlGroups = true; - RestrictAddressFamilies = [ "AF_INET AF_INET6" ]; - LockPersonality = true; - RestrictRealtime = true; - ProtectProc = "invisible"; - ProcSubset = "pid"; - UMask = 77; - - # For the identd port - # CapabilityBoundingSet = ["CAP_NET_BIND_SERVICE"]; - # AmbientCapabilities = ["CAP_NET_BIND_SERVICE"]; - }; - }; - # Pass in the TURN secret via EnvironmentFile, not supported by # upstream module currently. # diff --git a/configuration/services/conduit/heisenbridge.nix b/configuration/services/conduit/heisenbridge.nix new file mode 100644 index 0000000..f0f7e49 --- /dev/null +++ b/configuration/services/conduit/heisenbridge.nix @@ -0,0 +1,78 @@ +{ + pkgs, + lib, + config, + ... +}: +let + conduitCfg = config.services.matrix-conduit; + matrixLib = pkgs.callPackage ./lib.nix { }; +in +{ + systemd.services.heisenbridge = + let + registration = matrixLib.writeRegistrationScript { + id = "heisenbridge"; + url = "http://127.0.0.1:9898"; + sender_localpart = "heisenbridge"; + + namespaces = { + users = [ + { + regex = "@irc_.*"; + exclusive = true; + } + { + regex = "@heisenbridge:.*"; + exclusive = true; + } + ]; + + aliases = [ ]; + rooms = [ ]; + }; + }; + in + { + description = "Matrix<->IRC bridge"; + wantedBy = [ "multi-user.target" ]; + after = [ "conduit.service" ]; + + serviceConfig = { + Type = "exec"; + + LoadCredential = "heisenbridge:/run/secrets/heisenbridge"; + + inherit (registration) ExecStartPre; + ExecStart = lib.concatStringsSep " " [ + "${lib.getExe pkgs.heisenbridge}" + "--config \${RUNTIME_DIRECTORY}/heisenbridge-registration.yaml" + "--owner @tlater:matrix.tlater.net" + "http://localhost:${toString conduitCfg.settings.global.port}" + ]; + + DynamicUser = true; + RuntimeDirectory = "heisenbridge"; + RuntimeDirectoryMode = "0700"; + + RestrictNamespaces = true; + PrivateUsers = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + RestrictAddressFamilies = [ "AF_INET AF_INET6" ]; + LockPersonality = true; + RestrictRealtime = true; + ProtectProc = "invisible"; + ProcSubset = "pid"; + UMask = 77; + + # For the identd port + # CapabilityBoundingSet = [ "CAP_NET_BIND_SERVICE" ]; + # AmbientCapabilities = [ "CAP_NET_BIND_SERVICE" ]; + }; + }; +} diff --git a/configuration/services/conduit/lib.nix b/configuration/services/conduit/lib.nix new file mode 100644 index 0000000..ef407cf --- /dev/null +++ b/configuration/services/conduit/lib.nix @@ -0,0 +1,67 @@ +{ + lib, + writeShellScript, + formats, + replace-secret, +}: +let + replaceSecretBin = "${lib.getExe replace-secret}"; +in +{ + # Write a script that will set up the service's registration.yaml + # with secrets from systemd credentials. + # + # The credentials should be named `${id}_as-token` and + # `${id}_hs-token`. + # + # This registration file needs to be manually added to conduit by + # messaging the admin with the yaml file. + # + # TODO(tlater): Conduwuit seems to support a CLI interface for this, + # may want to migrate to that sometime. + writeRegistrationScript = + { + id, # Must be unique among all registered appservices/bots + url, # The URL on which the service listens + sender_localpart, + rate_limited ? false, + namespaces ? { + aliases = [ ]; + rooms = [ ]; + users = [ ]; + }, + extraSettings ? { }, + # The location to place the file; assumes systemd runtime dir + runtimeRegistration ? "$RUNTIME_DIRECTORY/${id}-registration.yaml", + }: + let + registrationFile = (formats.yaml { }).generate "${id}-registration.yaml" ( + { + inherit + id + url + sender_localpart + rate_limited + namespaces + ; + + as_token = "@AS_TOKEN@"; + hs_token = "@HS_TOKEN@"; + } + // extraSettings + ); + in + { + inherit runtimeRegistration; + ExecStartPre = writeShellScript "${id}-registration-setup.sh" '' + cp -f ${registrationFile} "${runtimeRegistration}" + chmod 600 "${runtimeRegistration}" + + # Write actual secrets into config + ${replaceSecretBin} '@AS_TOKEN@' "$CREDENTIALS_DIRECTORY/${id}_as-token" "${runtimeRegistration}" + ${replaceSecretBin} '@HS_TOKEN@' "$CREDENTIALS_DIRECTORY/${id}_hs-token" "${runtimeRegistration}" + + chmod 400 "${runtimeRegistration}" + ''; + }; +} diff --git a/configuration/services/conduit/matrix-hookshot.nix b/configuration/services/conduit/matrix-hookshot.nix new file mode 100644 index 0000000..6f11728 --- /dev/null +++ b/configuration/services/conduit/matrix-hookshot.nix @@ -0,0 +1,144 @@ +{ + pkgs, + lib, + config, + ... +}: +let + matrixLib = pkgs.callPackage ./lib.nix { }; + + cfg = config.services.matrix-hookshot; + conduitCfg = config.services.matrix-conduit; + + domain = conduitCfg.settings.global.server_name; + + registration = matrixLib.writeRegistrationScript { + id = "matrix-hookshot"; + url = "http://127.0.0.1:9993"; + sender_localpart = "hookshot"; + + namespaces = { + aliases = [ ]; + rooms = [ ]; + users = [ + { + regex = "@${cfg.settings.generic.userIdPrefix}.*:${domain}"; + exclusive = true; + } + ]; + }; + + # Encryption support + extraSettings = { + "de.sorunome.msc2409.push_ephemeral" = true; + push_ephemeral = true; + "org.matrix.msc3202" = true; + }; + + runtimeRegistration = "${cfg.registrationFile}"; + }; +in +{ + systemd.services.matrix-hookshot = { + serviceConfig = { + Type = lib.mkForce "exec"; + + LoadCredential = "matrix-hookshot:/run/secrets/matrix-hookshot"; + inherit (registration) ExecStartPre; + + # Some library in matrix-hookshot wants a home directory + Environment = [ "HOME=/run/matrix-hookshot" ]; + + DynamicUser = true; + StateDirectory = "matrix-hookshot"; + RuntimeDirectory = "matrix-hookshot"; + RuntimeDirectoryMode = "0700"; + + RestrictNamespaces = true; + PrivateUsers = true; + ProtectHostname = true; + ProtectClock = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectKernelLogs = true; + ProtectControlGroups = true; + RestrictAddressFamilies = [ "AF_INET AF_INET6" ]; + LockPersonality = true; + RestrictRealtime = true; + ProtectProc = "invisible"; + ProcSubset = "pid"; + UMask = 77; + }; + }; + + services.matrix-hookshot = { + enable = true; + + serviceDependencies = [ + "conduit.service" + ]; + + registrationFile = "/run/matrix-hookshot/registration.yaml"; + + settings = { + bridge = { + inherit domain; + url = "http://localhost:${toString conduitCfg.settings.global.port}"; + mediaUrl = conduitCfg.settings.global.well_known.client; + port = 9993; + bindAddress = "127.0.0.1"; + }; + + bot.displayname = "Hookshot"; + + generic = { + enabled = true; + outbound = false; + # Only allow webhooks from localhost for the moment + urlPrefix = "http://127.0.0.1:9000/webhook"; + userIdPrefix = "_webhooks_"; + allowJsTransformationFunctions = true; + }; + + encryption.storagePath = "/var/lib/matrix-hookshot/cryptostore"; + + permissions = [ + { + actor = "matrix.tlater.net"; + services = [ + { + service = "*"; + level = "notifications"; + } + ]; + } + { + actor = "@tlater:matrix.tlater.net"; + services = [ + { + service = "*"; + level = "admin"; + } + ]; + } + ]; + + listeners = [ + { + port = 9000; + resources = [ + "webhooks" + ]; + } + { + port = 9001; + resources = [ + "metrics" + ]; + } + ]; + + metrics.enable = true; + }; + }; +} diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index 5cfc614..d72215e 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -26,6 +26,10 @@ config.security.crowdsec.remediationComponents.firewallBouncer.settings.prometheus.listen_port; in [ "${address}:${toString port}" ]; + + # Configured in the hookshot listeners, but it's hard to filter + # the correct values out of that config. + matrixHookshot.targets = [ "127.0.0.1:9001" ]; }; }; } diff --git a/configuration/sops.nix b/configuration/sops.nix index bbfb888..4800e6b 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -34,6 +34,10 @@ "heisenbridge/as-token" = { }; "heisenbridge/hs-token" = { }; + # Matrix-hookshot + "matrix-hookshot/as-token" = { }; + "matrix-hookshot/hs-token" = { }; + # Nextcloud "nextcloud/tlater" = { owner = "nextcloud"; diff --git a/keys/production.yaml b/keys/production.yaml index 19df9bd..0e906bd 100644 --- a/keys/production.yaml +++ b/keys/production.yaml @@ -16,6 +16,9 @@ steam: heisenbridge: as-token: ENC[AES256_GCM,data:+2yo6T18j34622H8ZWblAFB2phLw1q0k0vUQEZ5sFj7dQaRnkEiAMi0R3p17Zq0pOtGEC0RRZuPLYkcZ1oKP0w==,iv:lGwrQYp//FufpmJocrLIVyy9RK7lEEVcpAi0wmkjr34=,tag:yV06UbhAYJQz36O2XdhY+A==,type:str] hs-token: ENC[AES256_GCM,data:u52WpkQFd/J7JFoE/rfNluebyZQLOokvkVdL7+AEAvrhJhrkJli1ztkD79lbC+6tGUH4tT3T+nX9wvGKnrRUQg==,iv:as+9fVuvMg2IoE2WIKD9mHi+znhNcWRh5Zq+yr0xcDQ=,tag:mZ7fh7U0MfgI8hyq/28Bcg==,type:str] +matrix-hookshot: + as-token: ENC[AES256_GCM,data:nXTanPhDyDF7R3AllLqpM5dzljBrHwlh1KJnTGIi5PhbDY2lPj4+uXkMEwvm1u+hQjPyM7vKZPfK+0/dms6Y7A==,iv:fSakJN+yai0gfOJKFxxaxgyUtk0pNmIeqVgrdq92/24=,tag:Qc7+SUnm5/Nq5+QIScR9kQ==,type:str] + hs-token: ENC[AES256_GCM,data:Bwyj0JTTN0NNnwOs1zA8CqbtZSNcvlINeT7QVc2eJiHda92J6vQk7bSxy6KuqCN9DxlUsK13ggYjNORY2vic5w==,iv:Npnp8arYQ3Yb6CXrnKgE03hD7ZjGINPa/DwFI8D+5tA=,tag:FqNE6yI0nF4puEUw9MGAjQ==,type:str] wireguard: server-key: ENC[AES256_GCM,data:mXb7ZznJHf5CgV8rI4uzPBATMRbmd7LimgtCkQM9kAjbIaGwUBqJZBN3fXs=,iv:3Po1Orinzov9rnEm9cLzgJY1PeD+5Jl9115MriABHh8=,tag:E/2CjDO1JCvJzxCnqKcNyw==,type:str] restic: @@ -34,8 +37,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2025-02-01T10:16:20Z" - mac: ENC[AES256_GCM,data:oFJNljU0RJdgsdK7qRXKCqRs7kPXgHqSyYcexEs8kXFnn68mKHNKKfl7skepCPKk0U7h6JqJQ+EOnAA0eo6mraBAMKLSXUcucTzqsfcI+V04rYcP2nGPMUiNDGdKHCcb6OmBhfvKw7+elnonPxKsBlyK31AqB9RFDKaTKXpcNMw=,iv:Q9t7ZkUrevHm5I4JBW95TfvZ88dl2Fq3Yq/E642dV6s=,tag:p2XWfii168qq29wX/RCJuQ==,type:str] + lastmodified: "2025-02-07T19:44:49Z" + mac: ENC[AES256_GCM,data:+0hpd/E7GxK/27f2Itf0hDV+3Ga4gHb8xxLutJ32HLBWLZ5Y+dN03xgkz8jBTiM+BeHwS4gz70Cs9X3zLMHbosWVuIV9DLuRaHRq/IU9KiADwqmCySZALqCf3+T5QKZr3Qs4AZJHwaAXkRX9HbnRFriIAFDJW/BGdIHdoROquxY=,iv:TeXI8LGqHVa5wo61sGdNbZ2nJvSlPdgn9R3Lq5qUggU=,tag:TFort5wxVTdi9LMlMeT/DQ==,type:str] pgp: - created_at: "2025-01-21T17:55:44Z" enc: |- diff --git a/keys/staging.yaml b/keys/staging.yaml index 67e47ad..876d60e 100644 --- a/keys/staging.yaml +++ b/keys/staging.yaml @@ -16,6 +16,9 @@ steam: heisenbridge: as-token: ENC[AES256_GCM,data:tXbOeo7nv8I=,iv:wJAKcOXX9nGIw4n38ThOoj29u7dUWhsxSQG/p79JlEw=,tag:rTVaGS2UuWcea1uBa8YX2g==,type:str] hs-token: ENC[AES256_GCM,data:VBwvwomv0Xg=,iv:q6INtJ+rg+QiXj8uBdBzQYQZUBBXp+9odxDHwvu8Jxc=,tag:XKhm8nxygAkKaiVPJ2Fcdg==,type:str] +matrix-hookshot: + as-token: ENC[AES256_GCM,data:uSUOo4f2KqA=,iv:Xb9G8Ecv6m59m51kDw2bOfq3SMJt4g9/6/EdH74R+KM=,tag:K9MSfO2c2Y4rlf0eYrmTnw==,type:str] + hs-token: ENC[AES256_GCM,data:0KsyA06InL4=,iv:zAR0Y1fk8SyodcSLBHlQ8I+BAmttz9Hkd8Q3OREFqs4=,tag:t1Et8N/3seq95DeGoUd7Sw==,type:str] wireguard: server-key: ENC[AES256_GCM,data:FvY897XdKoa/mckE8JQLCkklsnYD6Wz1wpsu5t3uhEnW3iarnDQxF9msuYU=,iv:jqGXfekM+Vs+J9b5nlZ5Skd1ZKHajoUo2Dc4tMYPm1w=,tag:EehikjI/FCU8wqtpvJRamQ==,type:str] restic: @@ -34,8 +37,8 @@ sops: azure_kv: [] hc_vault: [] age: [] - lastmodified: "2025-02-01T10:16:31Z" - mac: ENC[AES256_GCM,data:N4RQHOyWvSXW16fepQvRznNbmGerct03kptyiY3IoTpYaJ+43cyFjW15ZqfpaRFyV66QIeqmceqV8c4eP8YSndj6e55e04w0RCyqREXQlFPR6Eh5elaBenokoJhjF6BCsq+xX1C+LUEcxiR/dgy5cwA3mAD/dLCm+G11a06EG6k=,iv:wt5fEOVP6CXHCzmMH9hNCQDDgPa66bLMOa39Eipux9Y=,tag:kWZPnWD1stANVAmWmvOjCg==,type:str] + lastmodified: "2025-02-07T17:43:24Z" + mac: ENC[AES256_GCM,data:akmD/bfgeTyFzW1quvM16cdj0fC6+CbJ8WyX9173H11yKGxvE1USQYcErpl1SHOx9Jk8LVb7f+MsUm2fjQF1MEq6xaWI74jem12lZ9CGXFaTL7e87JvfbK7pV+aKpxSBBNFyJgbYm30ibdUwxwKmNVfPb1e0HT9qwenvoV7RobM=,iv:mKqOW0ULXL711uczUbRf9NPo6uPTQoS/IbR46S+JID4=,tag:vE6NYzYLbQHDImov1XGTcg==,type:str] pgp: - created_at: "2025-01-21T17:55:30Z" enc: |- From 92f5040cbc66e77386572412aed2e821cec0e079 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 10 Feb 2025 03:04:44 +0800 Subject: [PATCH 154/196] fix(grafana): Fix root URL --- configuration/services/metrics/grafana.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index 5c779f2..e597cff 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -6,7 +6,10 @@ in services.grafana = { enable = true; settings = { - server.http_port = 3001; # Default overlaps with gitea + server = { + http_port = 3001; # Default overlaps with gitea + root_url = "https://metrics.tlater.net"; + }; security = { admin_user = "tlater"; From 07b5064a85dd3766cbc43866afc31f3462ef748e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 11 Feb 2025 02:56:43 +0800 Subject: [PATCH 155/196] feat(metrics): Add blackbox exporter --- configuration/services/metrics/exporters.nix | 15 +++++++- configuration/services/metrics/options.nix | 3 +- .../services/metrics/victoriametrics.nix | 35 ++++++++++++++++++- 3 files changed, 50 insertions(+), 3 deletions(-) diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index ecd69bd..a47a701 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -10,6 +10,20 @@ in { services.prometheus = { exporters = { + blackbox = { + enable = true; + listenAddress = "127.0.0.1"; + configFile = yaml.generate "blackbox.yaml" { + modules = { + http_2xx = { + prober = "http"; + timeout = "5s"; + http.preferred_ip_protocol = "ip4"; + }; + }; + }; + }; + # Periodically check domain registration status domain = { enable = true; @@ -71,7 +85,6 @@ in # TODO(tlater): # - wireguard (?) # - postgres (?) - # - blackbox (?) (curl to see if http and similar is up) # - ssl_exporter (?) }; } diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index 8868c6c..d69ecfb 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -47,7 +47,7 @@ in }; extraSettings = mkOption { - type = types.anything; + inherit (pkgs.formats.yaml { }) type; description = '' Other settings to set for this scrape config. ''; @@ -217,6 +217,7 @@ in name: exporter: # A bunch of deprecated exporters that need to be ignored !(builtins.elem name [ + "blackbox" "minio" "tor" "unifi-poller" diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index d72215e..eca65d0 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -1,4 +1,8 @@ -{ config, ... }: +{ config, lib, ... }: +let + blackbox_host = config.services.prometheus.exporters.blackbox.listenAddress; + blackbox_port = config.services.prometheus.exporters.blackbox.port; +in { config.services.victoriametrics = { enable = true; @@ -9,6 +13,35 @@ targets = [ "127.0.0.1:${toString config.services.forgejo.settings.server.HTTP_PORT}" ]; extraSettings.authorization.credentials_file = config.sops.secrets."forgejo/metrics-token".path; }; + + blackbox = { + static_configs = lib.singleton { + targets = lib.mapAttrsToList (vHost: _: "https://${vHost}") config.services.nginx.virtualHosts; + }; + + extraSettings = { + metrics_path = "/probe"; + params.module = [ "http_2xx" ]; + + relabel_configs = [ + { + source_labels = [ "__address__" ]; + target_label = "__param_target"; + } + { + source_labels = [ "__param_target" ]; + target_label = "instance"; + } + { + target_label = "__address__"; + replacement = "${blackbox_host}:${toString blackbox_port}"; + } + ]; + }; + }; + + blackbox_exporter.targets = [ "${blackbox_host}:${toString blackbox_port}" ]; + coturn.targets = [ "127.0.0.1:9641" ]; crowdsec.targets = From 5be7d3f10ed59e4bb53c8d65af6174fdab35d1ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 8 Feb 2025 01:59:36 +0800 Subject: [PATCH 156/196] fix(vm): Make sops not break if running without battery manager --- configuration/sops.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/configuration/sops.nix b/configuration/sops.nix index 4800e6b..3a1c3d8 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -1,14 +1,15 @@ +{ config, lib, ... }: { sops = { defaultSopsFile = ../keys/production.yaml; secrets = { - "battery-manager/email" = { + "battery-manager/email" = lib.mkIf config.services.batteryManager.enable { owner = "battery-manager"; group = "battery-manager"; }; - "battery-manager/password" = { + "battery-manager/password" = lib.mkIf config.services.batteryManager.enable { owner = "battery-manager"; group = "battery-manager"; }; From b93ea1aaca49c9aaf170bb13892b0ec9fbc3b84b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 7 Feb 2025 02:47:16 +0800 Subject: [PATCH 157/196] bump(flake.lock): Update sonnenshift input --- flake.lock | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index d86b361..7f117e9 100644 --- a/flake.lock +++ b/flake.lock @@ -266,11 +266,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1731205797, - "narHash": "sha256-F7N1mxH1VrkVNHR3JGNMRvp9+98KYO4b832KS8Gl2xI=", + "lastModified": 1738741221, + "narHash": "sha256-UiTOA89yQV5YNlO1ZAp4IqJUGWOnTyBC83netvt8rQE=", "owner": "nix-community", "repo": "poetry2nix", - "rev": "f554d27c1544d9c56e5f1f8e2b8aff399803674e", + "rev": "be1fe795035d3d36359ca9135b26dcc5321b31fb", "type": "github" }, "original": { @@ -381,11 +381,11 @@ "poetry2nixi": "poetry2nixi" }, "locked": { - "lastModified": 1733296058, - "narHash": "sha256-2tYgb4TbvoLk+zsRdCPaglP0s9GCG5HOR9Jm9rsSiHU=", + "lastModified": 1738867540, + "narHash": "sha256-co2Fs1VoWtTzo7IAeRtaNnyofoUWFOv/Aa/+vSorurA=", "ref": "refs/heads/main", - "rev": "5f01c17df4dbe841bb6ccd85993c0d9b7368af72", - "revCount": 13, + "rev": "c6eeff42799c9d4073a241056198004d89bf87df", + "revCount": 15, "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" }, @@ -454,8 +454,9 @@ "type": "github" }, "original": { - "id": "systems", - "type": "indirect" + "owner": "nix-systems", + "repo": "default", + "type": "github" } }, "tlaternet-webserver": { From 3c7b6a7163628216c754bf564cd39e5793c36e61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 16 Feb 2025 18:35:16 +0800 Subject: [PATCH 158/196] bump: Update inputs --- flake.lock | 41 ++++++++------------------- flake.nix | 3 -- modules/crowdsec/default.nix | 9 ++---- pkgs/crowdsec/_sources/generated.json | 8 +++--- pkgs/crowdsec/_sources/generated.nix | 8 +++--- 5 files changed, 23 insertions(+), 46 deletions(-) diff --git a/flake.lock b/flake.lock index 7f117e9..b2487b6 100644 --- a/flake.lock +++ b/flake.lock @@ -27,11 +27,11 @@ ] }, "locked": { - "lastModified": 1737038063, - "narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=", + "lastModified": 1739634831, + "narHash": "sha256-xFnU+uUl48Icas2wPQ+ZzlL2O3n8f6J2LrzNK9f2nng=", "owner": "nix-community", "repo": "disko", - "rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2", + "rev": "fa5746ecea1772cf59b3f34c5816ab3531478142", "type": "github" }, "original": { @@ -190,29 +190,13 @@ "type": "github" } }, - "nixpkgs-crowdsec": { - "locked": { - "lastModified": 1738085579, - "narHash": "sha256-7mLjMrOiiIi0vI7BJwbEipYQzwA7JF/NWHP+LM4q5S8=", - "owner": "tlater", - "repo": "nixpkgs", - "rev": "426a7afc9a6ecfdac544bda4022acef31e36df34", - "type": "github" - }, - "original": { - "owner": "tlater", - "ref": "tlater/fix-crowdsec", - "repo": "nixpkgs", - "type": "github" - } - }, "nixpkgs-unstable": { "locked": { - "lastModified": 1737192615, - "narHash": "sha256-jtucJjcdryEZQw1g0RThPSPxCdWNHF42sLp8pmMMGDs=", + "lastModified": 1739611738, + "narHash": "sha256-3bnOIZz8KXtzcaXGuH9Eriv0HiQyr1EIfcye+VHLQZE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "09c71b16e6efc9e90edae7eb8b63348702ff9a85", + "rev": "31ff66eb77d02e9ac34b7256a02edb1c43fb9998", "type": "github" }, "original": { @@ -224,11 +208,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1737171713, - "narHash": "sha256-9mWmMXCto7e8U9hM8ZFozElv4dgOMTe308SSc7rEEFs=", + "lastModified": 1739578539, + "narHash": "sha256-jGiez5BtGGJUB/LXzRa+4AQurMO9acc1B69kBfgQhJc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8773174492fc61571b578f34a59953baba46471a", + "rev": "30d4471a8a2a13b716530d3aad60b9846ea5ff83", "type": "github" }, "original": { @@ -326,7 +310,6 @@ "disko": "disko", "foundryvtt": "foundryvtt", "nixpkgs": "nixpkgs_2", - "nixpkgs-crowdsec": "nixpkgs-crowdsec", "nixpkgs-unstable": "nixpkgs-unstable", "sonnenshift": "sonnenshift", "sops-nix": "sops-nix", @@ -401,11 +384,11 @@ ] }, "locked": { - "lastModified": 1737107480, - "narHash": "sha256-GXUE9+FgxoZU8v0p6ilBJ8NH7k8nKmZjp/7dmMrCv3o=", + "lastModified": 1739262228, + "narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=", "owner": "Mic92", "repo": "sops-nix", - "rev": "4c4fb93f18b9072c6fa1986221f9a3d7bf1fe4b6", + "rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 3d04d7c..b31d108 100644 --- a/flake.nix +++ b/flake.nix @@ -26,8 +26,6 @@ url = "git+ssh://git@github.com/sonnenshift/battery-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; - - nixpkgs-crowdsec.url = "github:tlater/nixpkgs/tlater/fix-crowdsec"; }; outputs = @@ -106,7 +104,6 @@ in { default = vm.config.system.build.vm; - crowdsec = pkgs.callPackage "${inputs.nixpkgs-crowdsec}/pkgs/by-name/cr/crowdsec/package.nix" { }; crowdsec-hub = localPkgs.crowdsec.hub; crowdsec-firewall-bouncer = localPkgs.crowdsec.firewall-bouncer; }; diff --git a/modules/crowdsec/default.nix b/modules/crowdsec/default.nix index 0d0ff1c..c0003a5 100644 --- a/modules/crowdsec/default.nix +++ b/modules/crowdsec/default.nix @@ -1,5 +1,4 @@ { - flake-inputs, pkgs, lib, config, @@ -9,8 +8,6 @@ let cfg = config.security.crowdsec; settingsFormat = pkgs.formats.yaml { }; - crowdsec = flake-inputs.self.packages.${pkgs.system}.crowdsec; - hub = pkgs.fetchFromGitHub { owner = "crowdsecurity"; repo = "hub"; @@ -19,14 +16,14 @@ let }; cscli = pkgs.writeShellScriptBin "cscli" '' - export PATH="$PATH:${crowdsec}/bin/" + export PATH="$PATH:${cfg.package}/bin/" sudo=exec if [ "$USER" != "crowdsec" ]; then sudo='exec /run/wrappers/bin/sudo -u crowdsec' fi - $sudo ${crowdsec}/bin/cscli "$@" + $sudo ${cfg.package}/bin/cscli "$@" ''; acquisitions = '' @@ -53,7 +50,7 @@ in package = lib.mkOption { type = package; - default = crowdsec; + default = pkgs.crowdsec; }; stateDirectory = lib.mkOption { diff --git a/pkgs/crowdsec/_sources/generated.json b/pkgs/crowdsec/_sources/generated.json index 8485779..634bc18 100644 --- a/pkgs/crowdsec/_sources/generated.json +++ b/pkgs/crowdsec/_sources/generated.json @@ -21,7 +21,7 @@ }, "crowdsec-hub": { "cargoLocks": null, - "date": "2025-01-30", + "date": "2025-02-16", "extract": null, "name": "crowdsec-hub", "passthru": null, @@ -33,10 +33,10 @@ "name": null, "owner": "crowdsecurity", "repo": "hub", - "rev": "8f102f5ac79af59d3024ca2771b65ec87411ac02", - "sha256": "sha256-8K1HkBg0++Au1dr2KMrl9b2ruqXdo+vqWngOCwL11Mo=", + "rev": "f7d7f476f88a4af05e1cfb3994536990adecfb57", + "sha256": "sha256-m78uipryHDKixJzrF4K59ioAJ3WJN1JlXEC0DNVMCJ8=", "type": "github" }, - "version": "8f102f5ac79af59d3024ca2771b65ec87411ac02" + "version": "f7d7f476f88a4af05e1cfb3994536990adecfb57" } } \ No newline at end of file diff --git a/pkgs/crowdsec/_sources/generated.nix b/pkgs/crowdsec/_sources/generated.nix index 6f845ec..7ef44e6 100644 --- a/pkgs/crowdsec/_sources/generated.nix +++ b/pkgs/crowdsec/_sources/generated.nix @@ -14,14 +14,14 @@ }; crowdsec-hub = { pname = "crowdsec-hub"; - version = "8f102f5ac79af59d3024ca2771b65ec87411ac02"; + version = "f7d7f476f88a4af05e1cfb3994536990adecfb57"; src = fetchFromGitHub { owner = "crowdsecurity"; repo = "hub"; - rev = "8f102f5ac79af59d3024ca2771b65ec87411ac02"; + rev = "f7d7f476f88a4af05e1cfb3994536990adecfb57"; fetchSubmodules = false; - sha256 = "sha256-8K1HkBg0++Au1dr2KMrl9b2ruqXdo+vqWngOCwL11Mo="; + sha256 = "sha256-m78uipryHDKixJzrF4K59ioAJ3WJN1JlXEC0DNVMCJ8="; }; - date = "2025-01-30"; + date = "2025-02-16"; }; } From 586ab969a4bed26a3df9b1861deb4194234af40b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 21 Feb 2025 04:09:35 +0800 Subject: [PATCH 159/196] feat(battery-manager): Switch to rust version --- configuration/services/battery-manager.nix | 6 +- configuration/sops.nix | 11 +- flake.lock | 846 +++++++++++++++++++-- flake.nix | 2 +- 4 files changed, 799 insertions(+), 66 deletions(-) diff --git a/configuration/services/battery-manager.nix b/configuration/services/battery-manager.nix index a16cca1..9da7e32 100644 --- a/configuration/services/battery-manager.nix +++ b/configuration/services/battery-manager.nix @@ -4,9 +4,13 @@ services.batteryManager = { enable = true; - battery = "3ca39300-c523-4315-b9a3-d030f85a9373"; emailFile = "${config.sops.secrets."battery-manager/email".path}"; passwordFile = "${config.sops.secrets."battery-manager/password".path}"; + + settings = { + battery_id = "3ca39300-c523-4315-b9a3-d030f85a9373"; + log_level = "DEBUG"; + }; }; } diff --git a/configuration/sops.nix b/configuration/sops.nix index 3a1c3d8..0337438 100644 --- a/configuration/sops.nix +++ b/configuration/sops.nix @@ -1,18 +1,11 @@ -{ config, lib, ... }: { sops = { defaultSopsFile = ../keys/production.yaml; secrets = { - "battery-manager/email" = lib.mkIf config.services.batteryManager.enable { - owner = "battery-manager"; - group = "battery-manager"; - }; + "battery-manager/email" = { }; - "battery-manager/password" = lib.mkIf config.services.batteryManager.enable { - owner = "battery-manager"; - group = "battery-manager"; - }; + "battery-manager/password" = { }; # Gitea "forgejo/metrics-token" = { diff --git a/flake.lock b/flake.lock index b2487b6..276b8b2 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,206 @@ { "nodes": { + "cachix": { + "inputs": { + "devenv": [ + "sonnenshift", + "crate2nix" + ], + "flake-compat": [ + "sonnenshift", + "crate2nix" + ], + "nixpkgs": "nixpkgs_3", + "pre-commit-hooks": [ + "sonnenshift", + "crate2nix" + ] + }, + "locked": { + "lastModified": 1709700175, + "narHash": "sha256-A0/6ZjLmT9qdYzKHmevnEIC7G+GiZ4UCr8v0poRPzds=", + "owner": "cachix", + "repo": "cachix", + "rev": "be97b37989f11b724197b5f4c7ffd78f12c8c4bf", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "latest", + "repo": "cachix", + "type": "github" + } + }, + "cachix_2": { + "inputs": { + "devenv": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable" + ], + "flake-compat": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable" + ], + "nixpkgs": "nixpkgs_4", + "pre-commit-hooks": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable" + ] + }, + "locked": { + "lastModified": 1716549461, + "narHash": "sha256-lHy5kgx6J8uD+16SO47dPrbob98sh+W1tf4ceSqPVK4=", + "owner": "cachix", + "repo": "cachix", + "rev": "e2bb269fb8c0828d5d4d2d7b8d09ea85abcacbd4", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "latest", + "repo": "cachix", + "type": "github" + } + }, + "cachix_3": { + "inputs": { + "devenv": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable" + ], + "flake-compat": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable" + ], + "nixpkgs": "nixpkgs_5", + "pre-commit-hooks": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable" + ] + }, + "locked": { + "lastModified": 1716549461, + "narHash": "sha256-lHy5kgx6J8uD+16SO47dPrbob98sh+W1tf4ceSqPVK4=", + "owner": "cachix", + "repo": "cachix", + "rev": "e2bb269fb8c0828d5d4d2d7b8d09ea85abcacbd4", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "latest", + "repo": "cachix", + "type": "github" + } + }, + "crate2nix": { + "inputs": { + "cachix": "cachix", + "crate2nix_stable": "crate2nix_stable", + "devshell": "devshell_3", + "flake-compat": "flake-compat_4", + "flake-parts": "flake-parts_3", + "nix-test-runner": "nix-test-runner_3", + "nixpkgs": [ + "sonnenshift", + "nixpkgs" + ], + "pre-commit-hooks": "pre-commit-hooks_3" + }, + "locked": { + "lastModified": 1739473963, + "narHash": "sha256-ItAhpjNUzEWd/cgZVyW/jvoGbCec4TK29e1Mnmn1oJE=", + "owner": "nix-community", + "repo": "crate2nix", + "rev": "be31feae9a82c225c0fd1bdf978565dc452a483a", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "crate2nix", + "type": "github" + } + }, + "crate2nix_stable": { + "inputs": { + "cachix": "cachix_2", + "crate2nix_stable": "crate2nix_stable_2", + "devshell": "devshell_2", + "flake-compat": "flake-compat_3", + "flake-parts": "flake-parts_2", + "nix-test-runner": "nix-test-runner_2", + "nixpkgs": "nixpkgs_7", + "pre-commit-hooks": "pre-commit-hooks_2" + }, + "locked": { + "lastModified": 1719760004, + "narHash": "sha256-esWhRnt7FhiYq0CcIxw9pvH+ybOQmWBfHYMtleaMhBE=", + "owner": "nix-community", + "repo": "crate2nix", + "rev": "1dee214bb20855fa3e1e7bb98d28922ddaff8c57", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "0.14.1", + "repo": "crate2nix", + "type": "github" + } + }, + "crate2nix_stable_2": { + "inputs": { + "cachix": "cachix_3", + "crate2nix_stable": "crate2nix_stable_3", + "devshell": "devshell", + "flake-compat": "flake-compat_2", + "flake-parts": "flake-parts", + "nix-test-runner": "nix-test-runner", + "nixpkgs": "nixpkgs_6", + "pre-commit-hooks": "pre-commit-hooks" + }, + "locked": { + "lastModified": 1712821484, + "narHash": "sha256-rGT3CW64cJS9nlnWPFWSc1iEa3dNZecVVuPVGzcsHe8=", + "owner": "nix-community", + "repo": "crate2nix", + "rev": "42883afcad3823fa5811e967fb7bff54bc3c9d6d", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "0.14.0", + "repo": "crate2nix", + "type": "github" + } + }, + "crate2nix_stable_3": { + "inputs": { + "flake-utils": "flake-utils" + }, + "locked": { + "lastModified": 1702842982, + "narHash": "sha256-A9AowkHIjsy1a4LuiPiVP88FMxyCWK41flZEZOUuwQM=", + "owner": "nix-community", + "repo": "crate2nix", + "rev": "75ac2973affa6b9b4f661a7b592cba6e4f51d426", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "0.12.0", + "repo": "crate2nix", + "type": "github" + } + }, "deploy-rs": { "inputs": { "flake-compat": "flake-compat", @@ -20,6 +221,78 @@ "type": "github" } }, + "devshell": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1717408969, + "narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=", + "owner": "numtide", + "repo": "devshell", + "rev": "1ebbe68d57457c8cae98145410b164b5477761f4", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "devshell_2": { + "inputs": { + "flake-utils": "flake-utils_3", + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1717408969, + "narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=", + "owner": "numtide", + "repo": "devshell", + "rev": "1ebbe68d57457c8cae98145410b164b5477761f4", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "devshell_3": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1711099426, + "narHash": "sha256-HzpgM/wc3aqpnHJJ2oDqPBkNsqWbW0WfWUO8lKu8nGk=", + "owner": "numtide", + "repo": "devshell", + "rev": "2d45b54ca4a183f2fdcf4b19c895b64fbf620ee8", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, "disko": { "inputs": { "nixpkgs": [ @@ -42,7 +315,7 @@ }, "dream2nix": { "inputs": { - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_8", "purescript-overlay": "purescript-overlay", "pyproject-nix": "pyproject-nix" }, @@ -99,6 +372,48 @@ } }, "flake-compat_2": { + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_3": { + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_4": { + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_5": { "flake": false, "locked": { "lastModified": 1696426674, @@ -114,16 +429,157 @@ "type": "github" } }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1719745305, + "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1719745305, + "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { + "inputs": { + "nixpkgs-lib": [ + "sonnenshift", + "crate2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1712014858, + "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems_2" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "inputs": { + "systems": "systems_3" + }, + "locked": { + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_3": { + "inputs": { + "systems": "systems_4" + }, + "locked": { + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_4": { + "inputs": { + "systems": "systems_5" + }, + "locked": { + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_5": { + "inputs": { + "systems": "systems_6" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -152,25 +608,123 @@ "type": "github" } }, - "nix-github-actions": { + "gitignore": { "inputs": { "nixpkgs": [ "sonnenshift", - "poetry2nixi", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", + "pre-commit-hooks", "nixpkgs" ] }, "locked": { - "lastModified": 1729742964, - "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=", - "owner": "nix-community", - "repo": "nix-github-actions", - "rev": "e04df33f62cdcf93d73e9a04142464753a16db67", + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "nix-github-actions", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_2": { + "inputs": { + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_3": { + "inputs": { + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "nix-test-runner": { + "flake": false, + "locked": { + "lastModified": 1588761593, + "narHash": "sha256-FKJykltAN/g3eIceJl4SfDnnyuH2jHImhMrXS2KvGIs=", + "owner": "stoeffel", + "repo": "nix-test-runner", + "rev": "c45d45b11ecef3eb9d834c3b6304c05c49b06ca2", + "type": "github" + }, + "original": { + "owner": "stoeffel", + "repo": "nix-test-runner", + "type": "github" + } + }, + "nix-test-runner_2": { + "flake": false, + "locked": { + "lastModified": 1588761593, + "narHash": "sha256-FKJykltAN/g3eIceJl4SfDnnyuH2jHImhMrXS2KvGIs=", + "owner": "stoeffel", + "repo": "nix-test-runner", + "rev": "c45d45b11ecef3eb9d834c3b6304c05c49b06ca2", + "type": "github" + }, + "original": { + "owner": "stoeffel", + "repo": "nix-test-runner", + "type": "github" + } + }, + "nix-test-runner_3": { + "flake": false, + "locked": { + "lastModified": 1588761593, + "narHash": "sha256-FKJykltAN/g3eIceJl4SfDnnyuH2jHImhMrXS2KvGIs=", + "owner": "stoeffel", + "repo": "nix-test-runner", + "rev": "c45d45b11ecef3eb9d834c3b6304c05c49b06ca2", + "type": "github" + }, + "original": { + "owner": "stoeffel", + "repo": "nix-test-runner", "type": "github" } }, @@ -223,6 +777,80 @@ } }, "nixpkgs_3": { + "locked": { + "lastModified": 1700612854, + "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1715534503, + "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "2057814051972fa1453ddfb0d98badbea9b83c06", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { + "locked": { + "lastModified": 1715534503, + "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "2057814051972fa1453ddfb0d98badbea9b83c06", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_6": { + "locked": { + "lastModified": 1719506693, + "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", + "path": "/nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source", + "rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a", + "type": "path" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "nixpkgs_7": { + "locked": { + "lastModified": 1719506693, + "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", + "path": "/nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source", + "rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a", + "type": "path" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "nixpkgs_8": { "locked": { "lastModified": 1729850857, "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", @@ -238,34 +866,118 @@ "type": "github" } }, - "poetry2nixi": { + "pre-commit-hooks": { "inputs": { - "flake-utils": "flake-utils", - "nix-github-actions": "nix-github-actions", + "flake-compat": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", + "flake-compat" + ], + "gitignore": "gitignore", "nixpkgs": [ "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", "nixpkgs" ], - "systems": "systems_3", - "treefmt-nix": "treefmt-nix" + "nixpkgs-stable": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", + "nixpkgs" + ] }, "locked": { - "lastModified": 1738741221, - "narHash": "sha256-UiTOA89yQV5YNlO1ZAp4IqJUGWOnTyBC83netvt8rQE=", - "owner": "nix-community", - "repo": "poetry2nix", - "rev": "be1fe795035d3d36359ca9135b26dcc5321b31fb", + "lastModified": 1719259945, + "narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "poetry2nix", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, + "pre-commit-hooks_2": { + "inputs": { + "flake-compat": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "flake-compat" + ], + "gitignore": "gitignore_2", + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "nixpkgs" + ], + "nixpkgs-stable": [ + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1719259945, + "narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, + "pre-commit-hooks_3": { + "inputs": { + "flake-compat": [ + "sonnenshift", + "crate2nix", + "flake-compat" + ], + "flake-utils": "flake-utils_5", + "gitignore": "gitignore_3", + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "nixpkgs" + ], + "nixpkgs-stable": [ + "sonnenshift", + "crate2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1712055707, + "narHash": "sha256-4XLvuSIDZJGS17xEwSrNuJLL7UjDYKGJSbK1WWX2AK8=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "e35aed5fda3cc79f88ed7f1795021e559582093a", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", "type": "github" } }, "purescript-overlay": { "inputs": { - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat_5", "nixpkgs": [ "tlaternet-webserver", "dream2nix", @@ -358,21 +1070,22 @@ }, "sonnenshift": { "inputs": { + "crate2nix": "crate2nix", "nixpkgs": [ "nixpkgs" - ], - "poetry2nixi": "poetry2nixi" + ] }, "locked": { - "lastModified": 1738867540, - "narHash": "sha256-co2Fs1VoWtTzo7IAeRtaNnyofoUWFOv/Aa/+vSorurA=", - "ref": "refs/heads/main", - "rev": "c6eeff42799c9d4073a241056198004d89bf87df", - "revCount": 15, + "lastModified": 1740082109, + "narHash": "sha256-WdRNkwsIotFOSymee/yQyH46RmYtuxd1FENhvGL4KRc=", + "ref": "tlater/rust-rewrite", + "rev": "a1b48cf2ba194054e2d8816c94a84cebc4fb5de0", + "revCount": 23, "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" }, "original": { + "ref": "tlater/rust-rewrite", "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" } @@ -442,6 +1155,51 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_5": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_6": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", @@ -464,28 +1222,6 @@ "url": "https://gitea.tlater.net/tlaternet/tlaternet.git" } }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "sonnenshift", - "poetry2nixi", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1730120726, - "narHash": "sha256-LqHYIxMrl/1p3/kvm2ir925tZ8DkI0KA10djk8wecSk=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "9ef337e492a5555d8e17a51c911ff1f02635be15", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, "utils": { "inputs": { "systems": "systems" diff --git a/flake.nix b/flake.nix index b31d108..737a17f 100644 --- a/flake.nix +++ b/flake.nix @@ -23,7 +23,7 @@ }; sonnenshift = { - url = "git+ssh://git@github.com/sonnenshift/battery-manager"; + url = "git+ssh://git@github.com/sonnenshift/battery-manager?ref=tlater/rust-rewrite"; inputs.nixpkgs.follows = "nixpkgs"; }; }; From a60cb7f60cc58e2696f171884f9130d451b3d2c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 16 Feb 2025 18:46:25 +0800 Subject: [PATCH 160/196] chore(coturn): Switch to letsencrypt certificate Fixes #107 --- configuration/nginx.nix | 8 ++++++- configuration/services/conduit/default.nix | 11 +++++---- configuration/services/metrics/exporters.nix | 10 ++++++++ .../services/metrics/victoriametrics.nix | 24 +++++++++++++++++++ 4 files changed, 47 insertions(+), 6 deletions(-) diff --git a/configuration/nginx.nix b/configuration/nginx.nix index 0b72cc1..3ec3bd9 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -53,7 +53,7 @@ "*.tlater.com" ]; dnsProvider = "porkbun"; - group = "nginx"; + group = "ssl-cert"; credentialFiles = { PORKBUN_API_KEY_FILE = config.sops.secrets."porkbun/api-key".path; PORKBUN_SECRET_API_KEY_FILE = config.sops.secrets."porkbun/secret-api-key".path; @@ -61,6 +61,12 @@ }; }; + users.groups.ssl-cert = { }; + + systemd.services.nginx.serviceConfig.SupplementaryGroups = [ + config.security.acme.certs."tlater.net".group + ]; + services.backups.acme = { user = "acme"; paths = lib.mapAttrsToList ( diff --git a/configuration/services/conduit/default.nix b/configuration/services/conduit/default.nix index c3803f4..c7e4ab4 100644 --- a/configuration/services/conduit/default.nix +++ b/configuration/services/conduit/default.nix @@ -50,6 +50,10 @@ in # See also https://gitlab.com/famedly/conduit/-/issues/314 systemd.services.conduit.serviceConfig.EnvironmentFile = config.sops.secrets."turn/env".path; + systemd.services.coturn.serviceConfig.SupplementaryGroups = [ + config.security.acme.certs."tlater.net".group + ]; + services.coturn = { enable = true; no-cli = true; @@ -59,11 +63,8 @@ in relay-ips = [ "116.202.158.55" ]; # SSL config - # - # TODO(tlater): Switch to letsencrypt once google fix: - # https://github.com/vector-im/element-android/issues/1533 - pkey = config.sops.secrets."turn/ssl-key".path; - cert = config.sops.secrets."turn/ssl-cert".path; + pkey = "${config.security.acme.certs."tlater.net".directory}/key.pem"; + cert = "${config.security.acme.certs."tlater.net".directory}/fullchain.pem"; # Based on suggestions from # https://github.com/matrix-org/synapse/blob/develop/docs/turn-howto.md diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index a47a701..78ba684 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -20,6 +20,16 @@ in timeout = "5s"; http.preferred_ip_protocol = "ip4"; }; + + turn_server = { + prober = "tcp"; + timeout = "5s"; + tcp = { + preferred_ip_protocol = "ip4"; + source_ip_address = "116.202.158.55"; + tls = true; + }; + }; }; }; }; diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index eca65d0..4a78d46 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -40,6 +40,30 @@ in }; }; + blackbox_turn = { + targets = [ "turn.tlater.net:${toString config.services.coturn.tls-listening-port}" ]; + + extraSettings = { + metrics_path = "/probe"; + params.module = [ "turn_server" ]; + + relabel_configs = [ + { + source_labels = [ "__address__" ]; + target_label = "__param_target"; + } + { + source_labels = [ "__param_target" ]; + target_label = "instance"; + } + { + target_label = "__address__"; + replacement = "${blackbox_host}:${toString blackbox_port}"; + } + ]; + }; + }; + blackbox_exporter.targets = [ "${blackbox_host}:${toString blackbox_port}" ]; coturn.targets = [ "127.0.0.1:9641" ]; From be1d739b400a5c16c7b51c82916960b30692995c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 23 Feb 2025 01:43:13 +0800 Subject: [PATCH 161/196] bump: Update inputs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/fa5746ecea1772cf59b3f34c5816ab3531478142?narHash=sha256-xFnU%2BuUl48Icas2wPQ%2BZzlL2O3n8f6J2LrzNK9f2nng%3D' (2025-02-15) → 'github:nix-community/disko/15dbf8cebd8e2655a883b74547108e089f051bf0?narHash=sha256-lSOXdgW/1zi/SSu7xp71v%2B55D5Egz8ACv0STkj7fhbs%3D' (2025-02-18) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/0a72a4bf64224c6584fd1b9e9f0012dd09af979a?narHash=sha256-vM9C1gFiQGa3nTYqmTBI8MoiUfprkQdepUBbxV7ECMQ%3D' (2025-01-17) → 'github:reckenrode/nix-foundryvtt/a7fa493ba2c623cf90e83756b62285b3b58f18d2?narHash=sha256-u3m%2BawbdL%2B0BKk8IWidsWMr%2BR0ian3GZMUlH7623kd8%3D' (2025-02-16) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/30d4471a8a2a13b716530d3aad60b9846ea5ff83?narHash=sha256-jGiez5BtGGJUB/LXzRa%2B4AQurMO9acc1B69kBfgQhJc%3D' (2025-02-15) → 'github:nixos/nixpkgs/11415c7ae8539d6292f2928317ee7a8410b28bb9?narHash=sha256-SSYxFhqCOb3aiPb6MmN68yEzBIltfom8IgRz7phHscM%3D' (2025-02-21) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/31ff66eb77d02e9ac34b7256a02edb1c43fb9998?narHash=sha256-3bnOIZz8KXtzcaXGuH9Eriv0HiQyr1EIfcye%2BVHLQZE%3D' (2025-02-15) → 'github:nixos/nixpkgs/8465e233b0668cf162c608a92e62e8d78c1ba7e4?narHash=sha256-wzBbGGZ6i1VVBA/cDJaLfuuGYCUriD7fwsLgJJHRVRk%3D' (2025-02-22) --- flake.lock | 27 +++++++++++++-------------- flake.nix | 2 +- pkgs/crowdsec/_sources/generated.json | 8 ++++---- pkgs/crowdsec/_sources/generated.nix | 8 ++++---- 4 files changed, 22 insertions(+), 23 deletions(-) diff --git a/flake.lock b/flake.lock index 276b8b2..37c3d5f 100644 --- a/flake.lock +++ b/flake.lock @@ -300,11 +300,11 @@ ] }, "locked": { - "lastModified": 1739634831, - "narHash": "sha256-xFnU+uUl48Icas2wPQ+ZzlL2O3n8f6J2LrzNK9f2nng=", + "lastModified": 1739841949, + "narHash": "sha256-lSOXdgW/1zi/SSu7xp71v+55D5Egz8ACv0STkj7fhbs=", "owner": "nix-community", "repo": "disko", - "rev": "fa5746ecea1772cf59b3f34c5816ab3531478142", + "rev": "15dbf8cebd8e2655a883b74547108e089f051bf0", "type": "github" }, "original": { @@ -595,11 +595,11 @@ ] }, "locked": { - "lastModified": 1737076827, - "narHash": "sha256-vM9C1gFiQGa3nTYqmTBI8MoiUfprkQdepUBbxV7ECMQ=", + "lastModified": 1739712626, + "narHash": "sha256-u3m+awbdL+0BKk8IWidsWMr+R0ian3GZMUlH7623kd8=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "0a72a4bf64224c6584fd1b9e9f0012dd09af979a", + "rev": "a7fa493ba2c623cf90e83756b62285b3b58f18d2", "type": "github" }, "original": { @@ -746,11 +746,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1739611738, - "narHash": "sha256-3bnOIZz8KXtzcaXGuH9Eriv0HiQyr1EIfcye+VHLQZE=", + "lastModified": 1740215764, + "narHash": "sha256-wzBbGGZ6i1VVBA/cDJaLfuuGYCUriD7fwsLgJJHRVRk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "31ff66eb77d02e9ac34b7256a02edb1c43fb9998", + "rev": "8465e233b0668cf162c608a92e62e8d78c1ba7e4", "type": "github" }, "original": { @@ -762,11 +762,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1739578539, - "narHash": "sha256-jGiez5BtGGJUB/LXzRa+4AQurMO9acc1B69kBfgQhJc=", + "lastModified": 1740162160, + "narHash": "sha256-SSYxFhqCOb3aiPb6MmN68yEzBIltfom8IgRz7phHscM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "30d4471a8a2a13b716530d3aad60b9846ea5ff83", + "rev": "11415c7ae8539d6292f2928317ee7a8410b28bb9", "type": "github" }, "original": { @@ -1078,14 +1078,13 @@ "locked": { "lastModified": 1740082109, "narHash": "sha256-WdRNkwsIotFOSymee/yQyH46RmYtuxd1FENhvGL4KRc=", - "ref": "tlater/rust-rewrite", + "ref": "refs/heads/main", "rev": "a1b48cf2ba194054e2d8816c94a84cebc4fb5de0", "revCount": 23, "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" }, "original": { - "ref": "tlater/rust-rewrite", "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" } diff --git a/flake.nix b/flake.nix index 737a17f..b31d108 100644 --- a/flake.nix +++ b/flake.nix @@ -23,7 +23,7 @@ }; sonnenshift = { - url = "git+ssh://git@github.com/sonnenshift/battery-manager?ref=tlater/rust-rewrite"; + url = "git+ssh://git@github.com/sonnenshift/battery-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; }; diff --git a/pkgs/crowdsec/_sources/generated.json b/pkgs/crowdsec/_sources/generated.json index 634bc18..ac251aa 100644 --- a/pkgs/crowdsec/_sources/generated.json +++ b/pkgs/crowdsec/_sources/generated.json @@ -21,7 +21,7 @@ }, "crowdsec-hub": { "cargoLocks": null, - "date": "2025-02-16", + "date": "2025-02-22", "extract": null, "name": "crowdsec-hub", "passthru": null, @@ -33,10 +33,10 @@ "name": null, "owner": "crowdsecurity", "repo": "hub", - "rev": "f7d7f476f88a4af05e1cfb3994536990adecfb57", - "sha256": "sha256-m78uipryHDKixJzrF4K59ioAJ3WJN1JlXEC0DNVMCJ8=", + "rev": "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df", + "sha256": "sha256-45pUln7Qj5luY9I9BE2qhzjH7kv4IbYvNoEX3/4AVVg=", "type": "github" }, - "version": "f7d7f476f88a4af05e1cfb3994536990adecfb57" + "version": "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df" } } \ No newline at end of file diff --git a/pkgs/crowdsec/_sources/generated.nix b/pkgs/crowdsec/_sources/generated.nix index 7ef44e6..9c63cc5 100644 --- a/pkgs/crowdsec/_sources/generated.nix +++ b/pkgs/crowdsec/_sources/generated.nix @@ -14,14 +14,14 @@ }; crowdsec-hub = { pname = "crowdsec-hub"; - version = "f7d7f476f88a4af05e1cfb3994536990adecfb57"; + version = "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df"; src = fetchFromGitHub { owner = "crowdsecurity"; repo = "hub"; - rev = "f7d7f476f88a4af05e1cfb3994536990adecfb57"; + rev = "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df"; fetchSubmodules = false; - sha256 = "sha256-m78uipryHDKixJzrF4K59ioAJ3WJN1JlXEC0DNVMCJ8="; + sha256 = "sha256-45pUln7Qj5luY9I9BE2qhzjH7kv4IbYvNoEX3/4AVVg="; }; - date = "2025-02-16"; + date = "2025-02-22"; }; } From e4a7fa8764f2c283e0d1d989e53d61e078ed48d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Feb 2025 01:47:58 +0800 Subject: [PATCH 162/196] feat(grafana): Use the victoriametrics metrics plugin --- configuration/services/metrics/grafana.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index e597cff..d14b908 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -1,4 +1,4 @@ -{ config, ... }: +{ pkgs, config, ... }: let domain = "metrics.${config.services.nginx.domain}"; in @@ -28,6 +28,10 @@ in }; }; + declarativePlugins = [ + pkgs.grafanaPlugins.victoriametrics-metrics-datasource + ]; + provision = { enable = true; @@ -35,7 +39,9 @@ in { name = "Victoriametrics - tlater.net"; url = "http://localhost:8428"; - type = "prometheus"; + type = "victoriametrics-metrics-datasource"; + access = "proxy"; + isDefault = true; } ]; }; From a398790ef496f6cac8a485b2a3ef1d065e48d639 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 28 Feb 2025 01:43:10 +0800 Subject: [PATCH 163/196] feat(metrics): Add victorialogs --- configuration/services/metrics/default.nix | 1 + configuration/services/metrics/grafana.nix | 15 ++- .../services/metrics/victorialogs.nix | 110 ++++++++++++++++++ 3 files changed, 125 insertions(+), 1 deletion(-) create mode 100644 configuration/services/metrics/victorialogs.nix diff --git a/configuration/services/metrics/default.nix b/configuration/services/metrics/default.nix index 84e126a..fe250fe 100644 --- a/configuration/services/metrics/default.nix +++ b/configuration/services/metrics/default.nix @@ -5,5 +5,6 @@ ./exporters.nix ./grafana.nix ./victoriametrics.nix + ./victorialogs.nix ]; } diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index d14b908..b872833 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -1,4 +1,9 @@ -{ pkgs, config, ... }: +{ + pkgs, + config, + flake-inputs, + ... +}: let domain = "metrics.${config.services.nginx.domain}"; in @@ -30,6 +35,7 @@ in declarativePlugins = [ pkgs.grafanaPlugins.victoriametrics-metrics-datasource + flake-inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.grafanaPlugins.victoriametrics-logs-datasource ]; provision = { @@ -43,6 +49,13 @@ in access = "proxy"; isDefault = true; } + + { + name = "Victorialogs - tlater.net"; + url = "http://${config.services.victorialogs.bindAddress}"; + type = "victoriametrics-logs-datasource"; + access = "proxy"; + } ]; }; }; diff --git a/configuration/services/metrics/victorialogs.nix b/configuration/services/metrics/victorialogs.nix new file mode 100644 index 0000000..ed74c59 --- /dev/null +++ b/configuration/services/metrics/victorialogs.nix @@ -0,0 +1,110 @@ +{ + config, + pkgs, + lib, + ... +}: +let + cfg = config.services.victorialogs; + pkg = pkgs.victoriametrics; + dirname = "victorialogs"; +in +{ + options.services.victorialogs = + let + inherit (lib.types) str; + in + { + listenAddress = lib.mkOption { + default = ":9428"; + type = str; + }; + + bindAddress = lib.mkOption { + readOnly = true; + type = str; + description = '' + Final address on which victorialogs listens. + ''; + }; + }; + + config = { + services.victorialogs.bindAddress = + (lib.optionalString (lib.hasPrefix ":" cfg.listenAddress) "127.0.0.1") + cfg.listenAddress; + + services.journald.upload = { + enable = true; + settings.Upload = { + URL = "http://${cfg.bindAddress}/insert/journald"; + NetworkTimeoutSec = "20s"; + }; + }; + + systemd.services."systemd-journal-upload".after = [ "victorialogs.service" ]; + + systemd.services.victorialogs = { + description = "VictoriaLogs log database"; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + startLimitBurst = 5; + + serviceConfig = { + ExecStart = lib.escapeShellArgs [ + "${pkg}/bin/victoria-logs" + "-storageDataPath=/var/lib/${dirname}" + "-httpListenAddr=${cfg.listenAddress}" + ]; + + DynamicUser = true; + RestartSec = 1; + Restart = "on-failure"; + RuntimeDirectory = dirname; + RuntimeDirectoryMode = "0700"; + StateDirectory = dirname; + StateDirectoryMode = "0700"; + + LimitNOFILE = 1048576; + + # Hardening + DeviceAllow = [ "/dev/null rw" ]; + DevicePolicy = "strict"; + LockPersonality = true; + MemoryDenyWriteExecute = true; + NoNewPrivileges = true; + PrivateDevices = true; + PrivateTmp = true; + PrivateUsers = true; + ProtectClock = true; + ProtectControlGroups = true; + ProtectHome = true; + ProtectHostname = true; + ProtectKernelLogs = true; + ProtectKernelModules = true; + ProtectKernelTunables = true; + ProtectProc = "invisible"; + ProtectSystem = "full"; + RemoveIPC = true; + RestrictAddressFamilies = [ + "AF_INET" + "AF_INET6" + "AF_UNIX" + ]; + RestrictNamespaces = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + SystemCallFilter = [ + "@system-service" + "~@privileged" + ]; + }; + + postStart = lib.mkBefore '' + until ${lib.getBin pkgs.curl}/bin/curl -s -o /dev/null http://${cfg.bindAddress}/ping; do + sleep 1; + done + ''; + }; + }; +} From 3c6afa0c66544826169432018f82ae22169c12cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 4 Apr 2025 21:06:27 +0800 Subject: [PATCH 164/196] feat(matrix): Switch to conduwuit This fixes support for the new sliding sync API. --- .../hardware-specific/hetzner/disko.nix | 11 + configuration/services/conduit/default.nix | 19 +- flake.lock | 912 +++++++++++++++--- flake.nix | 4 + 4 files changed, 807 insertions(+), 139 deletions(-) diff --git a/configuration/hardware-specific/hetzner/disko.nix b/configuration/hardware-specific/hetzner/disko.nix index cc15471..7e1acd7 100644 --- a/configuration/hardware-specific/hetzner/disko.nix +++ b/configuration/hardware-specific/hetzner/disko.nix @@ -80,6 +80,17 @@ inherit mountOptions; mountpoint = "/var"; }; + "/volume/var/lib/private/matrix-conduit" = { + mountOptions = [ + # Explicitly don't compress here, since + # conduwuit's database does compression by + # itself, and relies on being able to read the + # raw file data from disk (which is impossible + # if btrfs compresses it) + "noatime" + ]; + mountpoint = "/var/lib/private/matrix-conduit"; + }; "/volume/nix-store" = { inherit mountOptions; mountpoint = "/nix"; diff --git a/configuration/services/conduit/default.nix b/configuration/services/conduit/default.nix index c7e4ab4..5a2b8ac 100644 --- a/configuration/services/conduit/default.nix +++ b/configuration/services/conduit/default.nix @@ -1,4 +1,6 @@ { + pkgs, + flake-inputs, config, lib, ... @@ -18,10 +20,12 @@ in services.matrix-conduit = { enable = true; + package = flake-inputs.conduwuit.packages.${pkgs.system}.default; settings.global = { address = "127.0.0.1"; server_name = domain; - database_backend = "rocksdb"; + new_user_displayname_suffix = "🦆"; + allow_check_for_updates = true; # Set up delegation: https://docs.conduit.rs/delegation.html#automatic-recommended # This is primarily to make sliding sync work @@ -44,11 +48,14 @@ in }; }; - # Pass in the TURN secret via EnvironmentFile, not supported by - # upstream module currently. - # - # See also https://gitlab.com/famedly/conduit/-/issues/314 - systemd.services.conduit.serviceConfig.EnvironmentFile = config.sops.secrets."turn/env".path; + systemd.services.conduit.serviceConfig = { + ExecStart = lib.mkForce "${config.services.matrix-conduit.package}/bin/conduwuit"; + # Pass in the TURN secret via EnvironmentFile, not supported by + # upstream module currently. + # + # See also https://gitlab.com/famedly/conduit/-/issues/314 + EnvironmentFile = config.sops.secrets."turn/env".path; + }; systemd.services.coturn.serviceConfig.SupplementaryGroups = [ config.security.acme.certs."tlater.net".group diff --git a/flake.lock b/flake.lock index 37c3d5f..3f3fc39 100644 --- a/flake.lock +++ b/flake.lock @@ -1,6 +1,86 @@ { "nodes": { + "attic": { + "inputs": { + "crane": "crane", + "flake-compat": "flake-compat", + "flake-parts": "flake-parts", + "nix-github-actions": "nix-github-actions", + "nixpkgs": "nixpkgs", + "nixpkgs-stable": "nixpkgs-stable" + }, + "locked": { + "lastModified": 1738524606, + "narHash": "sha256-hPYEJ4juK3ph7kbjbvv7PlU1D9pAkkhl+pwx8fZY53U=", + "owner": "zhaofengli", + "repo": "attic", + "rev": "ff8a897d1f4408ebbf4d45fa9049c06b3e1e3f4e", + "type": "github" + }, + "original": { + "owner": "zhaofengli", + "ref": "main", + "repo": "attic", + "type": "github" + } + }, "cachix": { + "inputs": { + "devenv": "devenv", + "flake-compat": "flake-compat_2", + "git-hooks": "git-hooks", + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1737621947, + "narHash": "sha256-8HFvG7fvIFbgtaYAY2628Tb89fA55nPm2jSiNs0/Cws=", + "owner": "cachix", + "repo": "cachix", + "rev": "f65a3cd5e339c223471e64c051434616e18cc4f5", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "master", + "repo": "cachix", + "type": "github" + } + }, + "cachix_2": { + "inputs": { + "devenv": [ + "conduwuit", + "cachix", + "devenv" + ], + "flake-compat": [ + "conduwuit", + "cachix", + "devenv" + ], + "git-hooks": [ + "conduwuit", + "cachix", + "devenv" + ], + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1728672398, + "narHash": "sha256-KxuGSoVUFnQLB2ZcYODW7AVPAh9JqRlD5BrfsC/Q4qs=", + "owner": "cachix", + "repo": "cachix", + "rev": "aac51f698309fd0f381149214b7eee213c66ef0a", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "latest", + "repo": "cachix", + "type": "github" + } + }, + "cachix_3": { "inputs": { "devenv": [ "sonnenshift", @@ -10,7 +90,7 @@ "sonnenshift", "crate2nix" ], - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_7", "pre-commit-hooks": [ "sonnenshift", "crate2nix" @@ -31,7 +111,7 @@ "type": "github" } }, - "cachix_2": { + "cachix_4": { "inputs": { "devenv": [ "sonnenshift", @@ -43,7 +123,7 @@ "crate2nix", "crate2nix_stable" ], - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_8", "pre-commit-hooks": [ "sonnenshift", "crate2nix", @@ -65,7 +145,7 @@ "type": "github" } }, - "cachix_3": { + "cachix_5": { "inputs": { "devenv": [ "sonnenshift", @@ -79,7 +159,7 @@ "crate2nix_stable", "crate2nix_stable" ], - "nixpkgs": "nixpkgs_5", + "nixpkgs": "nixpkgs_9", "pre-commit-hooks": [ "sonnenshift", "crate2nix", @@ -102,13 +182,98 @@ "type": "github" } }, + "complement": { + "flake": false, + "locked": { + "lastModified": 1741891349, + "narHash": "sha256-YvrzOWcX7DH1drp5SGa+E/fc7wN3hqFtPbqPjZpOu1Q=", + "owner": "girlbossceo", + "repo": "complement", + "rev": "e587b3df569cba411aeac7c20b6366d03c143745", + "type": "github" + }, + "original": { + "owner": "girlbossceo", + "ref": "main", + "repo": "complement", + "type": "github" + } + }, + "conduwuit": { + "inputs": { + "attic": "attic", + "cachix": "cachix", + "complement": "complement", + "crane": "crane_2", + "fenix": "fenix", + "flake-compat": "flake-compat_3", + "flake-utils": "flake-utils", + "liburing": "liburing", + "nix-filter": "nix-filter", + "nixpkgs": [ + "nixpkgs" + ], + "rocksdb": "rocksdb" + }, + "locked": { + "lastModified": 1743473828, + "narHash": "sha256-x/sfh6LCHGAz8rL23GHhH7dac1LtHBbRRJi1p8gOdtI=", + "owner": "girlbossceo", + "repo": "conduwuit", + "rev": "0f81c1e1ccdcb0c5c6d5a27e82f16eb37b1e61c8", + "type": "github" + }, + "original": { + "owner": "girlbossceo", + "repo": "conduwuit", + "type": "github" + } + }, + "crane": { + "inputs": { + "nixpkgs": [ + "conduwuit", + "attic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1722960479, + "narHash": "sha256-NhCkJJQhD5GUib8zN9JrmYGMwt4lCRp6ZVNzIiYCl0Y=", + "owner": "ipetkov", + "repo": "crane", + "rev": "4c6c77920b8d44cd6660c1621dea6b3fc4b4c4f4", + "type": "github" + }, + "original": { + "owner": "ipetkov", + "repo": "crane", + "type": "github" + } + }, + "crane_2": { + "locked": { + "lastModified": 1739936662, + "narHash": "sha256-x4syUjNUuRblR07nDPeLDP7DpphaBVbUaSoeZkFbGSk=", + "owner": "ipetkov", + "repo": "crane", + "rev": "19de14aaeb869287647d9461cbd389187d8ecdb7", + "type": "github" + }, + "original": { + "owner": "ipetkov", + "ref": "master", + "repo": "crane", + "type": "github" + } + }, "crate2nix": { "inputs": { - "cachix": "cachix", + "cachix": "cachix_3", "crate2nix_stable": "crate2nix_stable", "devshell": "devshell_3", - "flake-compat": "flake-compat_4", - "flake-parts": "flake-parts_3", + "flake-compat": "flake-compat_7", + "flake-parts": "flake-parts_5", "nix-test-runner": "nix-test-runner_3", "nixpkgs": [ "sonnenshift", @@ -132,13 +297,13 @@ }, "crate2nix_stable": { "inputs": { - "cachix": "cachix_2", + "cachix": "cachix_4", "crate2nix_stable": "crate2nix_stable_2", "devshell": "devshell_2", - "flake-compat": "flake-compat_3", - "flake-parts": "flake-parts_2", + "flake-compat": "flake-compat_6", + "flake-parts": "flake-parts_4", "nix-test-runner": "nix-test-runner_2", - "nixpkgs": "nixpkgs_7", + "nixpkgs": "nixpkgs_11", "pre-commit-hooks": "pre-commit-hooks_2" }, "locked": { @@ -158,13 +323,13 @@ }, "crate2nix_stable_2": { "inputs": { - "cachix": "cachix_3", + "cachix": "cachix_5", "crate2nix_stable": "crate2nix_stable_3", "devshell": "devshell", - "flake-compat": "flake-compat_2", - "flake-parts": "flake-parts", + "flake-compat": "flake-compat_5", + "flake-parts": "flake-parts_3", "nix-test-runner": "nix-test-runner", - "nixpkgs": "nixpkgs_6", + "nixpkgs": "nixpkgs_10", "pre-commit-hooks": "pre-commit-hooks" }, "locked": { @@ -184,7 +349,7 @@ }, "crate2nix_stable_3": { "inputs": { - "flake-utils": "flake-utils" + "flake-utils": "flake-utils_2" }, "locked": { "lastModified": 1702842982, @@ -203,8 +368,8 @@ }, "deploy-rs": { "inputs": { - "flake-compat": "flake-compat", - "nixpkgs": "nixpkgs", + "flake-compat": "flake-compat_4", + "nixpkgs": "nixpkgs_5", "utils": "utils" }, "locked": { @@ -221,9 +386,43 @@ "type": "github" } }, + "devenv": { + "inputs": { + "cachix": "cachix_2", + "flake-compat": [ + "conduwuit", + "cachix", + "flake-compat" + ], + "git-hooks": [ + "conduwuit", + "cachix", + "git-hooks" + ], + "nix": "nix", + "nixpkgs": [ + "conduwuit", + "cachix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733323168, + "narHash": "sha256-d5DwB4MZvlaQpN6OQ4SLYxb5jA4UH5EtV5t5WOtjLPU=", + "owner": "cachix", + "repo": "devenv", + "rev": "efa9010b8b1cfd5dd3c7ed1e172a470c3b84a064", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "devenv", + "type": "github" + } + }, "devshell": { "inputs": { - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils_3", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -248,7 +447,7 @@ }, "devshell_2": { "inputs": { - "flake-utils": "flake-utils_3", + "flake-utils": "flake-utils_4", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -272,7 +471,7 @@ }, "devshell_3": { "inputs": { - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils_5", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -315,7 +514,7 @@ }, "dream2nix": { "inputs": { - "nixpkgs": "nixpkgs_8", + "nixpkgs": "nixpkgs_12", "purescript-overlay": "purescript-overlay", "pyproject-nix": "pyproject-nix" }, @@ -336,11 +535,34 @@ "fenix": { "inputs": { "nixpkgs": [ - "tlaternet-webserver", + "conduwuit", "nixpkgs" ], "rust-analyzer-src": "rust-analyzer-src" }, + "locked": { + "lastModified": 1740724364, + "narHash": "sha256-D1jLIueJx1dPrP09ZZwTrPf4cubV+TsFMYbpYYTVj6A=", + "owner": "nix-community", + "repo": "fenix", + "rev": "edf7d9e431cda8782e729253835f178a356d3aab", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "main", + "repo": "fenix", + "type": "github" + } + }, + "fenix_2": { + "inputs": { + "nixpkgs": [ + "tlaternet-webserver", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src_2" + }, "locked": { "lastModified": 1737181903, "narHash": "sha256-lvp77MhGzSN+ICd0MugppCjQR6cmlM2iAC5cjy2ZsaA=", @@ -372,34 +594,55 @@ } }, "flake-compat_2": { + "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "type": "github" }, "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" } }, "flake-compat_3": { + "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "type": "github" }, "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + "owner": "edolstra", + "ref": "master", + "repo": "flake-compat", + "type": "github" } }, "flake-compat_4": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_5": { "locked": { "lastModified": 1696426674, "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", @@ -413,7 +656,35 @@ "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" } }, - "flake-compat_5": { + "flake-compat_6": { + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_7": { + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_8": { "flake": false, "locked": { "lastModified": 1696426674, @@ -430,6 +701,52 @@ } }, "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "conduwuit", + "attic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1722555600, + "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "8471fe90ad337a8074e957b69ca4d0089218391d", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "conduwuit", + "cachix", + "devenv", + "nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1712014858, + "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "sonnenshift", @@ -453,7 +770,7 @@ "type": "github" } }, - "flake-parts_2": { + "flake-parts_4": { "inputs": { "nixpkgs-lib": [ "sonnenshift", @@ -476,7 +793,7 @@ "type": "github" } }, - "flake-parts_3": { + "flake-parts_5": { "inputs": { "nixpkgs-lib": [ "sonnenshift", @@ -500,18 +817,19 @@ }, "flake-utils": { "inputs": { - "systems": "systems_2" + "systems": "systems" }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { "owner": "numtide", + "ref": "main", "repo": "flake-utils", "type": "github" } @@ -521,11 +839,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", "type": "github" }, "original": { @@ -574,6 +892,24 @@ "inputs": { "systems": "systems_6" }, + "locked": { + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_6": { + "inputs": { + "systems": "systems_7" + }, "locked": { "lastModified": 1710146030, "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", @@ -608,14 +944,41 @@ "type": "github" } }, + "git-hooks": { + "inputs": { + "flake-compat": [ + "conduwuit", + "cachix", + "flake-compat" + ], + "gitignore": "gitignore", + "nixpkgs": [ + "conduwuit", + "cachix", + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable_2" + }, + "locked": { + "lastModified": 1733318908, + "narHash": "sha256-SVQVsbafSM1dJ4fpgyBqLZ+Lft+jcQuMtEL3lQWx2Sk=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "6f4e2a2112050951a314d2733a994fbab94864c6", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ - "sonnenshift", - "crate2nix", - "crate2nix_stable", - "crate2nix_stable", - "pre-commit-hooks", + "conduwuit", + "cachix", + "git-hooks", "nixpkgs" ] }, @@ -639,6 +1002,7 @@ "sonnenshift", "crate2nix", "crate2nix_stable", + "crate2nix_stable", "pre-commit-hooks", "nixpkgs" ] @@ -662,6 +1026,7 @@ "nixpkgs": [ "sonnenshift", "crate2nix", + "crate2nix_stable", "pre-commit-hooks", "nixpkgs" ] @@ -680,6 +1045,141 @@ "type": "github" } }, + "gitignore_4": { + "inputs": { + "nixpkgs": [ + "sonnenshift", + "crate2nix", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "libgit2": { + "flake": false, + "locked": { + "lastModified": 1697646580, + "narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=", + "owner": "libgit2", + "repo": "libgit2", + "rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5", + "type": "github" + }, + "original": { + "owner": "libgit2", + "repo": "libgit2", + "type": "github" + } + }, + "liburing": { + "flake": false, + "locked": { + "lastModified": 1740613216, + "narHash": "sha256-NpPOBqNND3Qe9IwqYs0mJLGTmIx7e6FgUEBAnJ+1ZLA=", + "owner": "axboe", + "repo": "liburing", + "rev": "e1003e496e66f9b0ae06674869795edf772d5500", + "type": "github" + }, + "original": { + "owner": "axboe", + "ref": "master", + "repo": "liburing", + "type": "github" + } + }, + "nix": { + "inputs": { + "flake-compat": [ + "conduwuit", + "cachix", + "devenv" + ], + "flake-parts": "flake-parts_2", + "libgit2": "libgit2", + "nixpkgs": "nixpkgs_3", + "nixpkgs-23-11": [ + "conduwuit", + "cachix", + "devenv" + ], + "nixpkgs-regression": [ + "conduwuit", + "cachix", + "devenv" + ], + "pre-commit-hooks": [ + "conduwuit", + "cachix", + "devenv" + ] + }, + "locked": { + "lastModified": 1727438425, + "narHash": "sha256-X8ES7I1cfNhR9oKp06F6ir4Np70WGZU5sfCOuNBEwMg=", + "owner": "domenkozar", + "repo": "nix", + "rev": "f6c5ae4c1b2e411e6b1e6a8181cc84363d6a7546", + "type": "github" + }, + "original": { + "owner": "domenkozar", + "ref": "devenv-2.24", + "repo": "nix", + "type": "github" + } + }, + "nix-filter": { + "locked": { + "lastModified": 1731533336, + "narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=", + "owner": "numtide", + "repo": "nix-filter", + "rev": "f7653272fd234696ae94229839a99b73c9ab7de0", + "type": "github" + }, + "original": { + "owner": "numtide", + "ref": "main", + "repo": "nix-filter", + "type": "github" + } + }, + "nix-github-actions": { + "inputs": { + "nixpkgs": [ + "conduwuit", + "attic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1729742964, + "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=", + "owner": "nix-community", + "repo": "nix-github-actions", + "rev": "e04df33f62cdcf93d73e9a04142464753a16db67", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nix-github-actions", + "type": "github" + } + }, "nix-test-runner": { "flake": false, "locked": { @@ -730,11 +1230,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1702272962, - "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "lastModified": 1726042813, + "narHash": "sha256-LnNKCCxnwgF+575y0pxUdlGZBO/ru1CtGHIqQVfvjlA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", + "rev": "159be5db480d1df880a0135ca0bfed84c2f88353", "type": "github" }, "original": { @@ -744,6 +1244,38 @@ "type": "github" } }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1724316499, + "narHash": "sha256-Qb9MhKBUTCfWg/wqqaxt89Xfi6qTD3XpTzQ9eXi3JmE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "797f7dc49e0bc7fab4b57c021cdf68f595e47841", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-24.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable_2": { + "locked": { + "lastModified": 1730741070, + "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-24.05", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-unstable": { "locked": { "lastModified": 1740215764, @@ -760,71 +1292,7 @@ "type": "github" } }, - "nixpkgs_2": { - "locked": { - "lastModified": 1740162160, - "narHash": "sha256-SSYxFhqCOb3aiPb6MmN68yEzBIltfom8IgRz7phHscM=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "11415c7ae8539d6292f2928317ee7a8410b28bb9", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-24.11-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1700612854, - "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1715534503, - "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "2057814051972fa1453ddfb0d98badbea9b83c06", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1715534503, - "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "2057814051972fa1453ddfb0d98badbea9b83c06", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_6": { + "nixpkgs_10": { "locked": { "lastModified": 1719506693, "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", @@ -837,7 +1305,7 @@ "type": "indirect" } }, - "nixpkgs_7": { + "nixpkgs_11": { "locked": { "lastModified": 1719506693, "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", @@ -850,7 +1318,7 @@ "type": "indirect" } }, - "nixpkgs_8": { + "nixpkgs_12": { "locked": { "lastModified": 1729850857, "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", @@ -866,6 +1334,134 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1730531603, + "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1717432640, + "narHash": "sha256-+f9c4/ZX5MWDOuB1rKoWj+lBNm0z0rs4CK47HBLxy1o=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "88269ab3044128b7c2f4c7d68448b2fb50456870", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "release-24.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1733212471, + "narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "55d15ad12a74eb7d4646254e13638ad0c4128776", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { + "locked": { + "lastModified": 1702272962, + "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_6": { + "locked": { + "lastModified": 1740162160, + "narHash": "sha256-SSYxFhqCOb3aiPb6MmN68yEzBIltfom8IgRz7phHscM=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "11415c7ae8539d6292f2928317ee7a8410b28bb9", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-24.11-small", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_7": { + "locked": { + "lastModified": 1700612854, + "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_8": { + "locked": { + "lastModified": 1715534503, + "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "2057814051972fa1453ddfb0d98badbea9b83c06", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_9": { + "locked": { + "lastModified": 1715534503, + "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "2057814051972fa1453ddfb0d98badbea9b83c06", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "pre-commit-hooks": { "inputs": { "flake-compat": [ @@ -875,7 +1471,7 @@ "crate2nix_stable", "flake-compat" ], - "gitignore": "gitignore", + "gitignore": "gitignore_2", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -913,7 +1509,7 @@ "crate2nix_stable", "flake-compat" ], - "gitignore": "gitignore_2", + "gitignore": "gitignore_3", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -948,8 +1544,8 @@ "crate2nix", "flake-compat" ], - "flake-utils": "flake-utils_5", - "gitignore": "gitignore_3", + "flake-utils": "flake-utils_6", + "gitignore": "gitignore_4", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -977,7 +1573,7 @@ }, "purescript-overlay": { "inputs": { - "flake-compat": "flake-compat_5", + "flake-compat": "flake-compat_8", "nixpkgs": [ "tlaternet-webserver", "dream2nix", @@ -1016,12 +1612,30 @@ "type": "github" } }, + "rocksdb": { + "flake": false, + "locked": { + "lastModified": 1741308171, + "narHash": "sha256-YdBvdQ75UJg5ffwNjxizpviCVwVDJnBkM8ZtGIduMgY=", + "owner": "girlbossceo", + "repo": "rocksdb", + "rev": "3ce04794bcfbbb0d2e6f81ae35fc4acf688b6986", + "type": "github" + }, + "original": { + "owner": "girlbossceo", + "ref": "v9.11.1", + "repo": "rocksdb", + "type": "github" + } + }, "root": { "inputs": { + "conduwuit": "conduwuit", "deploy-rs": "deploy-rs", "disko": "disko", "foundryvtt": "foundryvtt", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_6", "nixpkgs-unstable": "nixpkgs-unstable", "sonnenshift": "sonnenshift", "sops-nix": "sops-nix", @@ -1029,6 +1643,23 @@ } }, "rust-analyzer-src": { + "flake": false, + "locked": { + "lastModified": 1740691488, + "narHash": "sha256-Fs6vBrByuiOf2WO77qeMDMTXcTGzrIMqLBv+lNeywwM=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "fe3eda77d3a7ce212388bda7b6cec8bffcc077e5", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } + }, + "rust-analyzer-src_2": { "flake": false, "locked": { "lastModified": 1737140097, @@ -1199,10 +1830,25 @@ "type": "github" } }, + "systems_7": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", - "fenix": "fenix", + "fenix": "fenix_2", "nixpkgs": [ "nixpkgs" ] @@ -1223,7 +1869,7 @@ }, "utils": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1701680307, diff --git a/flake.nix b/flake.nix index b31d108..4f17def 100644 --- a/flake.nix +++ b/flake.nix @@ -4,6 +4,10 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11-small"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small"; + conduwuit = { + url = "github:girlbossceo/conduwuit"; + inputs.nixpkgs.follows = "nixpkgs"; + }; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; From ee760bfa1ba04d642b38ad589495016ccb6622ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 4 Apr 2025 21:07:15 +0800 Subject: [PATCH 165/196] feat(victoriametrics): Add missing scrape configs --- configuration/services/conduit/matrix-hookshot.nix | 2 +- configuration/services/metrics/victoriametrics.nix | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/configuration/services/conduit/matrix-hookshot.nix b/configuration/services/conduit/matrix-hookshot.nix index 6f11728..c1f16dc 100644 --- a/configuration/services/conduit/matrix-hookshot.nix +++ b/configuration/services/conduit/matrix-hookshot.nix @@ -138,7 +138,7 @@ in } ]; - metrics.enable = true; + metrics.enabled = true; }; }; } diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index 4a78d46..53864d6 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -87,6 +87,8 @@ in # Configured in the hookshot listeners, but it's hard to filter # the correct values out of that config. matrixHookshot.targets = [ "127.0.0.1:9001" ]; + + victorialogs.targets = [ config.services.victorialogs.bindAddress ]; }; }; } From b396835f88cb8760a777e869b155418f51da0e74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 4 Apr 2025 21:17:00 +0800 Subject: [PATCH 166/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'conduwuit': 'github:girlbossceo/conduwuit/0f81c1e1ccdcb0c5c6d5a27e82f16eb37b1e61c8' (2025-04-01) → 'github:girlbossceo/conduwuit/00f7745ec4ebcea5f892376c5de5db1299f71696' (2025-04-04) • Updated input 'disko': 'github:nix-community/disko/15dbf8cebd8e2655a883b74547108e089f051bf0' (2025-02-18) → 'github:nix-community/disko/329d3d7e8bc63dd30c39e14e6076db590a6eabe6' (2025-04-02) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/11415c7ae8539d6292f2928317ee7a8410b28bb9' (2025-02-21) → 'github:nixos/nixpkgs/bdb91860de2f719b57eef819b5617762f7120c70' (2025-04-03) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/8465e233b0668cf162c608a92e62e8d78c1ba7e4' (2025-02-22) → 'github:nixos/nixpkgs/a462b946265ed006720d02153882780b12a8376d' (2025-04-04) • Updated input 'sops-nix': 'github:Mic92/sops-nix/07af005bb7d60c7f118d9d9f5530485da5d1e975' (2025-02-11) → 'github:Mic92/sops-nix/cff8437c5fe8c68fc3a840a21bf1f4dc801da40d' (2025-04-04) --- flake.lock | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/flake.lock b/flake.lock index 3f3fc39..83911d7 100644 --- a/flake.lock +++ b/flake.lock @@ -216,11 +216,11 @@ "rocksdb": "rocksdb" }, "locked": { - "lastModified": 1743473828, - "narHash": "sha256-x/sfh6LCHGAz8rL23GHhH7dac1LtHBbRRJi1p8gOdtI=", + "lastModified": 1743735594, + "narHash": "sha256-aaP8OjY4fkpxk2JdSggx9S3Rk+P+VhuivT6aRpLxoj0=", "owner": "girlbossceo", "repo": "conduwuit", - "rev": "0f81c1e1ccdcb0c5c6d5a27e82f16eb37b1e61c8", + "rev": "00f7745ec4ebcea5f892376c5de5db1299f71696", "type": "github" }, "original": { @@ -499,11 +499,11 @@ ] }, "locked": { - "lastModified": 1739841949, - "narHash": "sha256-lSOXdgW/1zi/SSu7xp71v+55D5Egz8ACv0STkj7fhbs=", + "lastModified": 1743598667, + "narHash": "sha256-ViE7NoFWytYO2uJONTAX35eGsvTYXNHjWALeHAg8OQY=", "owner": "nix-community", "repo": "disko", - "rev": "15dbf8cebd8e2655a883b74547108e089f051bf0", + "rev": "329d3d7e8bc63dd30c39e14e6076db590a6eabe6", "type": "github" }, "original": { @@ -1278,11 +1278,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1740215764, - "narHash": "sha256-wzBbGGZ6i1VVBA/cDJaLfuuGYCUriD7fwsLgJJHRVRk=", + "lastModified": 1743732435, + "narHash": "sha256-RrWgOj3F1N6kDG0xatvZzP0p1Zq00yhcTMlaj4bWi5E=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8465e233b0668cf162c608a92e62e8d78c1ba7e4", + "rev": "a462b946265ed006720d02153882780b12a8376d", "type": "github" }, "original": { @@ -1400,11 +1400,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1740162160, - "narHash": "sha256-SSYxFhqCOb3aiPb6MmN68yEzBIltfom8IgRz7phHscM=", + "lastModified": 1743703532, + "narHash": "sha256-s1KLDALEeqy+ttrvqV3jx9mBZEvmthQErTVOAzbjHZs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "11415c7ae8539d6292f2928317ee7a8410b28bb9", + "rev": "bdb91860de2f719b57eef819b5617762f7120c70", "type": "github" }, "original": { @@ -1727,11 +1727,11 @@ ] }, "locked": { - "lastModified": 1739262228, - "narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=", + "lastModified": 1743756170, + "narHash": "sha256-2b11EYa08oqDmF3zEBLkG1AoNn9rB1k39ew/T/mSvbU=", "owner": "Mic92", "repo": "sops-nix", - "rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975", + "rev": "cff8437c5fe8c68fc3a840a21bf1f4dc801da40d", "type": "github" }, "original": { From e37c589654c67863d32ad63ed1643b4a08f99188 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 4 Apr 2025 21:21:03 +0800 Subject: [PATCH 167/196] bump(crowdsec-hub): Update hub --- pkgs/crowdsec/_sources/generated.json | 8 ++++---- pkgs/crowdsec/_sources/generated.nix | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/crowdsec/_sources/generated.json b/pkgs/crowdsec/_sources/generated.json index ac251aa..97c4e87 100644 --- a/pkgs/crowdsec/_sources/generated.json +++ b/pkgs/crowdsec/_sources/generated.json @@ -21,7 +21,7 @@ }, "crowdsec-hub": { "cargoLocks": null, - "date": "2025-02-22", + "date": "2025-04-04", "extract": null, "name": "crowdsec-hub", "passthru": null, @@ -33,10 +33,10 @@ "name": null, "owner": "crowdsecurity", "repo": "hub", - "rev": "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df", - "sha256": "sha256-45pUln7Qj5luY9I9BE2qhzjH7kv4IbYvNoEX3/4AVVg=", + "rev": "eebc5f71379ea8f4de4a26f6695e0340444c719c", + "sha256": "sha256-/jhsqumekdOHDbHjBP8KvAICsSNhCg5ejMT3jSRiROo=", "type": "github" }, - "version": "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df" + "version": "eebc5f71379ea8f4de4a26f6695e0340444c719c" } } \ No newline at end of file diff --git a/pkgs/crowdsec/_sources/generated.nix b/pkgs/crowdsec/_sources/generated.nix index 9c63cc5..aca88b2 100644 --- a/pkgs/crowdsec/_sources/generated.nix +++ b/pkgs/crowdsec/_sources/generated.nix @@ -14,14 +14,14 @@ }; crowdsec-hub = { pname = "crowdsec-hub"; - version = "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df"; + version = "eebc5f71379ea8f4de4a26f6695e0340444c719c"; src = fetchFromGitHub { owner = "crowdsecurity"; repo = "hub"; - rev = "f9883cd6c7d1913c13e4a3a69d9a0b887a7d57df"; + rev = "eebc5f71379ea8f4de4a26f6695e0340444c719c"; fetchSubmodules = false; - sha256 = "sha256-45pUln7Qj5luY9I9BE2qhzjH7kv4IbYvNoEX3/4AVVg="; + sha256 = "sha256-/jhsqumekdOHDbHjBP8KvAICsSNhCg5ejMT3jSRiROo="; }; - date = "2025-02-22"; + date = "2025-04-04"; }; } From 89f9196ef0405d2b82a8330a4e00f45c5a8b7e28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 4 Apr 2025 21:35:24 +0800 Subject: [PATCH 168/196] fix(victorialogs): Use new upstream module --- .../services/metrics/victorialogs.nix | 100 +++--------------- 1 file changed, 12 insertions(+), 88 deletions(-) diff --git a/configuration/services/metrics/victorialogs.nix b/configuration/services/metrics/victorialogs.nix index ed74c59..ae47c39 100644 --- a/configuration/services/metrics/victorialogs.nix +++ b/configuration/services/metrics/victorialogs.nix @@ -1,37 +1,26 @@ { config, - pkgs, lib, ... }: let cfg = config.services.victorialogs; - pkg = pkgs.victoriametrics; - dirname = "victorialogs"; in { - options.services.victorialogs = - let - inherit (lib.types) str; - in - { - listenAddress = lib.mkOption { - default = ":9428"; - type = str; - }; - - bindAddress = lib.mkOption { - readOnly = true; - type = str; - description = '' - Final address on which victorialogs listens. - ''; - }; - }; + options.services.victorialogs.bindAddress = lib.mkOption { + readOnly = true; + type = lib.types.str; + description = '' + Final address on which victorialogs listens. + ''; + }; config = { - services.victorialogs.bindAddress = - (lib.optionalString (lib.hasPrefix ":" cfg.listenAddress) "127.0.0.1") + cfg.listenAddress; + services.victorialogs = { + enable = true; + bindAddress = + (lib.optionalString (lib.hasPrefix ":" cfg.listenAddress) "127.0.0.1") + cfg.listenAddress; + }; services.journald.upload = { enable = true; @@ -40,71 +29,6 @@ in NetworkTimeoutSec = "20s"; }; }; - systemd.services."systemd-journal-upload".after = [ "victorialogs.service" ]; - - systemd.services.victorialogs = { - description = "VictoriaLogs log database"; - wantedBy = [ "multi-user.target" ]; - after = [ "network.target" ]; - startLimitBurst = 5; - - serviceConfig = { - ExecStart = lib.escapeShellArgs [ - "${pkg}/bin/victoria-logs" - "-storageDataPath=/var/lib/${dirname}" - "-httpListenAddr=${cfg.listenAddress}" - ]; - - DynamicUser = true; - RestartSec = 1; - Restart = "on-failure"; - RuntimeDirectory = dirname; - RuntimeDirectoryMode = "0700"; - StateDirectory = dirname; - StateDirectoryMode = "0700"; - - LimitNOFILE = 1048576; - - # Hardening - DeviceAllow = [ "/dev/null rw" ]; - DevicePolicy = "strict"; - LockPersonality = true; - MemoryDenyWriteExecute = true; - NoNewPrivileges = true; - PrivateDevices = true; - PrivateTmp = true; - PrivateUsers = true; - ProtectClock = true; - ProtectControlGroups = true; - ProtectHome = true; - ProtectHostname = true; - ProtectKernelLogs = true; - ProtectKernelModules = true; - ProtectKernelTunables = true; - ProtectProc = "invisible"; - ProtectSystem = "full"; - RemoveIPC = true; - RestrictAddressFamilies = [ - "AF_INET" - "AF_INET6" - "AF_UNIX" - ]; - RestrictNamespaces = true; - RestrictRealtime = true; - RestrictSUIDSGID = true; - SystemCallArchitectures = "native"; - SystemCallFilter = [ - "@system-service" - "~@privileged" - ]; - }; - - postStart = lib.mkBefore '' - until ${lib.getBin pkgs.curl}/bin/curl -s -o /dev/null http://${cfg.bindAddress}/ping; do - sleep 1; - done - ''; - }; }; } From cfbc2999d75e53afe0e8e9bfed53f97086144394 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 17 May 2025 14:48:39 +0800 Subject: [PATCH 169/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'conduwuit': 'github:girlbossceo/conduwuit/00f7745ec4ebcea5f892376c5de5db1299f71696' (2025-04-04) → 'github:girlbossceo/conduwuit/d8311a5ff672fdc4729d956af5e3af8646b0670d' (2025-04-09) • Updated input 'disko': 'github:nix-community/disko/329d3d7e8bc63dd30c39e14e6076db590a6eabe6' (2025-04-02) → 'github:nix-community/disko/ec7c109a4f794fce09aad87239eab7f66540b888' (2025-05-15) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/a7fa493ba2c623cf90e83756b62285b3b58f18d2' (2025-02-16) → 'github:reckenrode/nix-foundryvtt/f1b401831d796dd94cf5a11b65fd169a199d4ff0' (2025-05-10) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/bdb91860de2f719b57eef819b5617762f7120c70' (2025-04-03) → 'github:nixos/nixpkgs/d6c9326e40bb557ebb8c040b4375590bc06413f8' (2025-05-16) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/a462b946265ed006720d02153882780b12a8376d' (2025-04-04) → 'github:nixos/nixpkgs/b965e4c283060415956ccd39eee4ca34a6a56cf8' (2025-05-16) • Updated input 'sops-nix': 'github:Mic92/sops-nix/cff8437c5fe8c68fc3a840a21bf1f4dc801da40d' (2025-04-04) → 'github:Mic92/sops-nix/e93ee1d900ad264d65e9701a5c6f895683433386' (2025-05-05) --- flake.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/flake.lock b/flake.lock index 83911d7..80f2bc5 100644 --- a/flake.lock +++ b/flake.lock @@ -216,11 +216,11 @@ "rocksdb": "rocksdb" }, "locked": { - "lastModified": 1743735594, - "narHash": "sha256-aaP8OjY4fkpxk2JdSggx9S3Rk+P+VhuivT6aRpLxoj0=", + "lastModified": 1744169934, + "narHash": "sha256-5YyHmPUUrXXrczWayji9327knihVTKnmjX+vX6+p6d0=", "owner": "girlbossceo", "repo": "conduwuit", - "rev": "00f7745ec4ebcea5f892376c5de5db1299f71696", + "rev": "d8311a5ff672fdc4729d956af5e3af8646b0670d", "type": "github" }, "original": { @@ -499,11 +499,11 @@ ] }, "locked": { - "lastModified": 1743598667, - "narHash": "sha256-ViE7NoFWytYO2uJONTAX35eGsvTYXNHjWALeHAg8OQY=", + "lastModified": 1747274630, + "narHash": "sha256-87RJwXbfOHyzTB9LYagAQ6vOZhszCvd8Gvudu+gf3qo=", "owner": "nix-community", "repo": "disko", - "rev": "329d3d7e8bc63dd30c39e14e6076db590a6eabe6", + "rev": "ec7c109a4f794fce09aad87239eab7f66540b888", "type": "github" }, "original": { @@ -931,11 +931,11 @@ ] }, "locked": { - "lastModified": 1739712626, - "narHash": "sha256-u3m+awbdL+0BKk8IWidsWMr+R0ian3GZMUlH7623kd8=", + "lastModified": 1746877938, + "narHash": "sha256-N9J96pSPg4vbozV+ZZ++dwLnMIf2Le6ONNMO0kZCj1M=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "a7fa493ba2c623cf90e83756b62285b3b58f18d2", + "rev": "f1b401831d796dd94cf5a11b65fd169a199d4ff0", "type": "github" }, "original": { @@ -1278,11 +1278,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1743732435, - "narHash": "sha256-RrWgOj3F1N6kDG0xatvZzP0p1Zq00yhcTMlaj4bWi5E=", + "lastModified": 1747413287, + "narHash": "sha256-hOnqJr0tZBERWa29JWf9B3/8qr82mlt/UlKPvS7iYzA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "a462b946265ed006720d02153882780b12a8376d", + "rev": "b965e4c283060415956ccd39eee4ca34a6a56cf8", "type": "github" }, "original": { @@ -1400,11 +1400,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1743703532, - "narHash": "sha256-s1KLDALEeqy+ttrvqV3jx9mBZEvmthQErTVOAzbjHZs=", + "lastModified": 1747418223, + "narHash": "sha256-DkCYFm09AR2+FPKcT7lD8iIMNXqTdesVvwKpCnqKiYg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bdb91860de2f719b57eef819b5617762f7120c70", + "rev": "d6c9326e40bb557ebb8c040b4375590bc06413f8", "type": "github" }, "original": { @@ -1727,11 +1727,11 @@ ] }, "locked": { - "lastModified": 1743756170, - "narHash": "sha256-2b11EYa08oqDmF3zEBLkG1AoNn9rB1k39ew/T/mSvbU=", + "lastModified": 1746485181, + "narHash": "sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB+qsl9BZUnRvg=", "owner": "Mic92", "repo": "sops-nix", - "rev": "cff8437c5fe8c68fc3a840a21bf1f4dc801da40d", + "rev": "e93ee1d900ad264d65e9701a5c6f895683433386", "type": "github" }, "original": { From 1bef207356fce8770249aad33bc13ed16594ea19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 17 May 2025 15:46:03 +0800 Subject: [PATCH 170/196] bump(crowdsec-up): Update hub --- pkgs/crowdsec/_sources/generated.json | 8 ++++---- pkgs/crowdsec/_sources/generated.nix | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/crowdsec/_sources/generated.json b/pkgs/crowdsec/_sources/generated.json index 97c4e87..f3c8f01 100644 --- a/pkgs/crowdsec/_sources/generated.json +++ b/pkgs/crowdsec/_sources/generated.json @@ -21,7 +21,7 @@ }, "crowdsec-hub": { "cargoLocks": null, - "date": "2025-04-04", + "date": "2025-05-17", "extract": null, "name": "crowdsec-hub", "passthru": null, @@ -33,10 +33,10 @@ "name": null, "owner": "crowdsecurity", "repo": "hub", - "rev": "eebc5f71379ea8f4de4a26f6695e0340444c719c", - "sha256": "sha256-/jhsqumekdOHDbHjBP8KvAICsSNhCg5ejMT3jSRiROo=", + "rev": "850614b9fcd4298f559b422c5ac685a69aa2e5ff", + "sha256": "sha256-96MMwFN5KongQA3YJVSuk7Kanbr1gR94CCyiflmez2k=", "type": "github" }, - "version": "eebc5f71379ea8f4de4a26f6695e0340444c719c" + "version": "850614b9fcd4298f559b422c5ac685a69aa2e5ff" } } \ No newline at end of file diff --git a/pkgs/crowdsec/_sources/generated.nix b/pkgs/crowdsec/_sources/generated.nix index aca88b2..19a7f5a 100644 --- a/pkgs/crowdsec/_sources/generated.nix +++ b/pkgs/crowdsec/_sources/generated.nix @@ -14,14 +14,14 @@ }; crowdsec-hub = { pname = "crowdsec-hub"; - version = "eebc5f71379ea8f4de4a26f6695e0340444c719c"; + version = "850614b9fcd4298f559b422c5ac685a69aa2e5ff"; src = fetchFromGitHub { owner = "crowdsecurity"; repo = "hub"; - rev = "eebc5f71379ea8f4de4a26f6695e0340444c719c"; + rev = "850614b9fcd4298f559b422c5ac685a69aa2e5ff"; fetchSubmodules = false; - sha256 = "sha256-/jhsqumekdOHDbHjBP8KvAICsSNhCg5ejMT3jSRiROo="; + sha256 = "sha256-96MMwFN5KongQA3YJVSuk7Kanbr1gR94CCyiflmez2k="; }; - date = "2025-04-04"; + date = "2025-05-17"; }; } From 09b90433e6d448b84540d8a1341dc2b089bbcd21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 17 May 2025 15:46:26 +0800 Subject: [PATCH 171/196] feat(conduit): Switch from conduwuit to continuwuity --- configuration/services/conduit/default.nix | 2 +- flake.lock | 59 +++++++++++----------- flake.nix | 4 +- 3 files changed, 33 insertions(+), 32 deletions(-) diff --git a/configuration/services/conduit/default.nix b/configuration/services/conduit/default.nix index 5a2b8ac..94d401a 100644 --- a/configuration/services/conduit/default.nix +++ b/configuration/services/conduit/default.nix @@ -20,7 +20,7 @@ in services.matrix-conduit = { enable = true; - package = flake-inputs.conduwuit.packages.${pkgs.system}.default; + package = flake-inputs.continuwuity.packages.${pkgs.system}.default; settings.global = { address = "127.0.0.1"; server_name = domain; diff --git a/flake.lock b/flake.lock index 80f2bc5..c17c613 100644 --- a/flake.lock +++ b/flake.lock @@ -49,17 +49,17 @@ "cachix_2": { "inputs": { "devenv": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ], "flake-compat": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ], "git-hooks": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ], @@ -199,7 +199,7 @@ "type": "github" } }, - "conduwuit": { + "continuwuity": { "inputs": { "attic": "attic", "cachix": "cachix", @@ -216,23 +216,24 @@ "rocksdb": "rocksdb" }, "locked": { - "lastModified": 1744169934, - "narHash": "sha256-5YyHmPUUrXXrczWayji9327knihVTKnmjX+vX6+p6d0=", - "owner": "girlbossceo", - "repo": "conduwuit", - "rev": "d8311a5ff672fdc4729d956af5e3af8646b0670d", - "type": "github" + "lastModified": 1745186840, + "narHash": "sha256-Oq2scBu3Ewao828BT1QGffqIqF5WoH9HMXEXKg1YU0o=", + "ref": "refs/tags/v0.5.0-rc.5", + "rev": "0a0f327ae034f5c44b12a3154cc1143aff10291c", + "revCount": 5147, + "type": "git", + "url": "https://forgejo.ellis.link/continuwuation/continuwuity.git" }, "original": { - "owner": "girlbossceo", - "repo": "conduwuit", - "type": "github" + "ref": "refs/tags/v0.5.0-rc.5", + "type": "git", + "url": "https://forgejo.ellis.link/continuwuation/continuwuity.git" } }, "crane": { "inputs": { "nixpkgs": [ - "conduwuit", + "continuwuity", "attic", "nixpkgs" ] @@ -390,18 +391,18 @@ "inputs": { "cachix": "cachix_2", "flake-compat": [ - "conduwuit", + "continuwuity", "cachix", "flake-compat" ], "git-hooks": [ - "conduwuit", + "continuwuity", "cachix", "git-hooks" ], "nix": "nix", "nixpkgs": [ - "conduwuit", + "continuwuity", "cachix", "nixpkgs" ] @@ -535,7 +536,7 @@ "fenix": { "inputs": { "nixpkgs": [ - "conduwuit", + "continuwuity", "nixpkgs" ], "rust-analyzer-src": "rust-analyzer-src" @@ -703,7 +704,7 @@ "flake-parts": { "inputs": { "nixpkgs-lib": [ - "conduwuit", + "continuwuity", "attic", "nixpkgs" ] @@ -725,7 +726,7 @@ "flake-parts_2": { "inputs": { "nixpkgs-lib": [ - "conduwuit", + "continuwuity", "cachix", "devenv", "nix", @@ -947,13 +948,13 @@ "git-hooks": { "inputs": { "flake-compat": [ - "conduwuit", + "continuwuity", "cachix", "flake-compat" ], "gitignore": "gitignore", "nixpkgs": [ - "conduwuit", + "continuwuity", "cachix", "nixpkgs" ], @@ -976,7 +977,7 @@ "gitignore": { "inputs": { "nixpkgs": [ - "conduwuit", + "continuwuity", "cachix", "git-hooks", "nixpkgs" @@ -1104,7 +1105,7 @@ "nix": { "inputs": { "flake-compat": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ], @@ -1112,17 +1113,17 @@ "libgit2": "libgit2", "nixpkgs": "nixpkgs_3", "nixpkgs-23-11": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ], "nixpkgs-regression": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ], "pre-commit-hooks": [ - "conduwuit", + "continuwuity", "cachix", "devenv" ] @@ -1161,7 +1162,7 @@ "nix-github-actions": { "inputs": { "nixpkgs": [ - "conduwuit", + "continuwuity", "attic", "nixpkgs" ] @@ -1631,7 +1632,7 @@ }, "root": { "inputs": { - "conduwuit": "conduwuit", + "continuwuity": "continuwuity", "deploy-rs": "deploy-rs", "disko": "disko", "foundryvtt": "foundryvtt", diff --git a/flake.nix b/flake.nix index 4f17def..bdb60ed 100644 --- a/flake.nix +++ b/flake.nix @@ -4,8 +4,8 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11-small"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small"; - conduwuit = { - url = "github:girlbossceo/conduwuit"; + continuwuity = { + url = "git+https://forgejo.ellis.link/continuwuation/continuwuity.git?ref=refs/tags/v0.5.0-rc.5"; inputs.nixpkgs.follows = "nixpkgs"; }; disko = { From fc991a0b07c2c1821bafd34fc0ffaff2b0bcc29f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 20 May 2025 01:06:44 +0800 Subject: [PATCH 172/196] fix(metrics-exporters): Fix dbus socket access for DynamicUsers This broke the systemd exporter, I don't fully know what caused the breakage, though. See https://discourse.nixos.org/t/systemd-exporter-couldnt-get-dbus-connection-read-unix-run-dbus-system-bus-socket-recvmsg-connection-reset-by-peer/ --- configuration/services/metrics/exporters.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index 78ba684..80a3480 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -97,4 +97,6 @@ in # - postgres (?) # - ssl_exporter (?) }; + + services.dbus.implementation = "broker"; } From 5c6b697e55e95e13f009cbcc4dcef4d070e83aee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 20 May 2025 20:37:05 +0800 Subject: [PATCH 173/196] feat(checks): Add linters --- checks/default.nix | 52 ++++++++++++++++++++++++++++++++++++++++++++++ checks/lints.nu | 39 ++++++++++++++++++++++++++++++++++ flake.nix | 2 +- 3 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 checks/default.nix create mode 100644 checks/lints.nu diff --git a/checks/default.nix b/checks/default.nix new file mode 100644 index 0000000..80279ba --- /dev/null +++ b/checks/default.nix @@ -0,0 +1,52 @@ +{ + self, + nixpkgs, + deploy-rs, + system, + ... +}: +let + pkgs = nixpkgs.legacyPackages.${system}; + + runNuCheck = + { + name, + packages, + check, + }: + pkgs.stdenvNoCC.mkDerivation { + inherit name; + + src = nixpkgs.lib.cleanSourceWith { + src = self; + filter = nixpkgs.lib.cleanSourceFilter; + }; + + dontPatch = true; + dontConfigure = true; + dontBuild = true; + dontInstall = true; + dontFixup = true; + doCheck = true; + + checkInputs = nixpkgs.lib.singleton pkgs.nushell ++ packages; + + checkPhase = '' + nu ${check} + ''; + }; +in +nixpkgs.lib.recursiveUpdate { + lints = runNuCheck { + name = "lints"; + + packages = [ + pkgs.deadnix + pkgs.nixfmt-rfc-style + pkgs.shellcheck + pkgs.statix + ]; + + check = ./lints.nu; + }; +} (deploy-rs.lib.${system}.deployChecks self.deploy) diff --git a/checks/lints.nu b/checks/lints.nu new file mode 100644 index 0000000..ffc2047 --- /dev/null +++ b/checks/lints.nu @@ -0,0 +1,39 @@ +#!/usr/bin/env nu + +let shell_files = ls **/*.sh | get name +let nix_files = ls **/*.nix | where name !~ "hardware-configuration.nix|_sources" | get name + +let linters = [ + ([shellcheck] ++ $shell_files) + ([nixfmt --check --strict] ++ $nix_files) + ([deadnix --fail] ++ $nix_files) + ([statix check] ++ $nix_files) +] + +mkdir $env.out + +def run-linter [linterArgs: list] { + print $'Running ($linterArgs.0)...' + + let exit_code = try { + ^$linterArgs.0 ...($linterArgs | skip 1) + $env.LAST_EXIT_CODE + } catch {|e| $e.exit_code} + + [$linterArgs.0, $exit_code] +} + +let results = $linters | each {|linter| run-linter $linter} + +print 'Linter results:' + +let success = $results | each {|result| + match $result.1 { + 0 => {print $'(ansi green)($result.0)(ansi reset)'} + _ => {print $'(ansi red)($result.0)(ansi reset)'} + } + + $result.1 +} | math sum + +exit $success diff --git a/flake.nix b/flake.nix index bdb60ed..6747c24 100644 --- a/flake.nix +++ b/flake.nix @@ -96,7 +96,7 @@ ######### # Tests # ######### - checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deploy-rs.lib; + checks.${system} = import ./checks (inputs // { inherit system; }); ########################### # Garbage collection root # From 63b3cbe00be80ccb4b221aad64eb657ae5c96d70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 20 May 2025 20:38:43 +0800 Subject: [PATCH 174/196] style(treewide): Apply linter suggestions --- checks/default.nix | 11 +- configuration/default.nix | 10 +- configuration/hardware-specific/vm.nix | 35 +-- configuration/nginx.nix | 78 ++--- configuration/services/backups.nix | 4 +- configuration/services/conduit/default.nix | 286 +++++++++--------- .../services/conduit/matrix-hookshot.nix | 12 +- configuration/services/crowdsec.nix | 16 +- configuration/services/foundryvtt.nix | 58 ++-- configuration/services/gitea.nix | 114 +++---- configuration/services/metrics/exporters.nix | 2 +- configuration/services/metrics/options.nix | 68 +++-- .../services/metrics/victorialogs.nix | 6 +- configuration/services/nextcloud.nix | 152 +++++----- configuration/services/webserver.nix | 2 +- flake.nix | 2 - modules/crowdsec/default.nix | 4 +- .../remediations/cs-firewall-bouncer.nix | 11 +- modules/crowdsec/remediations/default.nix | 6 +- pkgs/crowdsec/hub.nix | 5 +- 20 files changed, 432 insertions(+), 450 deletions(-) diff --git a/checks/default.nix b/checks/default.nix index 80279ba..f3db4ce 100644 --- a/checks/default.nix +++ b/checks/default.nix @@ -8,6 +8,15 @@ let pkgs = nixpkgs.legacyPackages.${system}; + statix' = pkgs.statix.overrideAttrs (old: { + patches = old.patches ++ [ + (pkgs.fetchpatch { + url = "https://github.com/oppiliappan/statix/commit/925dec39bb705acbbe77178b4d658fe1b752abbb.patch"; + hash = "sha256-0wacO6wuYJ4ufN9PGucRVJucFdFFNF+NoHYIrLXsCWs="; + }) + ]; + }); + runNuCheck = { name, @@ -44,7 +53,7 @@ nixpkgs.lib.recursiveUpdate { pkgs.deadnix pkgs.nixfmt-rfc-style pkgs.shellcheck - pkgs.statix + statix' ]; check = ./lints.nu; diff --git a/configuration/default.nix b/configuration/default.nix index 239f9f6..544e20c 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -1,7 +1,5 @@ { config, - pkgs, - lib, modulesPath, flake-inputs, ... @@ -31,13 +29,7 @@ ./sops.nix ]; - nixpkgs.overlays = [ - (final: prev: { - local = import ../pkgs { - pkgs = prev; - }; - }) - ]; + nixpkgs.overlays = [ (_: prev: { local = import ../pkgs { pkgs = prev; }; }) ]; nix = { extraOptions = '' diff --git a/configuration/hardware-specific/vm.nix b/configuration/hardware-specific/vm.nix index db563fe..71870fb 100644 --- a/configuration/hardware-specific/vm.nix +++ b/configuration/hardware-specific/vm.nix @@ -6,26 +6,35 @@ boot.kernelParams = [ "nomodeset" ]; networking.hostName = "testvm"; - # Sets the base domain for nginx to a local domain so that we can - # easily test locally with the VM. - services.nginx.domain = "dev.local"; + + services = { + # Sets the base domain for nginx to a local domain so that we can + # easily test locally with the VM. + nginx.domain = "dev.local"; + + # Don't run this + batteryManager.enable = lib.mkForce false; + + openssh.hostKeys = lib.mkForce [ + { + type = "rsa"; + bits = 4096; + path = "/etc/staging.key"; + } + ]; + }; # Use the staging secrets sops.defaultSopsFile = lib.mkOverride 99 ../../keys/staging.yaml; systemd.network.networks."10-eth0" = { matchConfig.Name = "eth0"; - gateway = [ - "192.168.9.1" - ]; + gateway = [ "192.168.9.1" ]; networkConfig = { Address = "192.168.9.2/24"; }; }; - # Don't run this - services.batteryManager.enable = lib.mkForce false; - # Both so we have a predictable key for the staging env, as well as # to have a static key for decrypting the sops secrets for the # staging env. @@ -34,14 +43,6 @@ source = ../../keys/hosts/staging.key; }; - services.openssh.hostKeys = lib.mkForce [ - { - type = "rsa"; - bits = 4096; - path = "/etc/staging.key"; - } - ]; - virtualisation.vmVariant = { virtualisation = { memorySize = 3941; diff --git a/configuration/nginx.nix b/configuration/nginx.nix index 3ec3bd9..3abef7f 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -1,40 +1,49 @@ { config, lib, ... }: { - services.nginx = { - enable = true; - recommendedTlsSettings = true; - recommendedOptimisation = true; - recommendedGzipSettings = true; - recommendedProxySettings = true; - clientMaxBodySize = "10G"; + services = { + nginx = { + enable = true; + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + recommendedProxySettings = true; + clientMaxBodySize = "10G"; - statusPage = true; # For metrics, should be accessible only from localhost + statusPage = true; # For metrics, should be accessible only from localhost - commonHttpConfig = '' - log_format upstream_time '$remote_addr - $remote_user [$time_local] ' - '"$request" $status $body_bytes_sent ' - '"$http_referer" "$http_user_agent" ' - 'rt=$request_time uct="$upstream_connect_time" ' - 'uht="$upstream_header_time" urt="$upstream_response_time"'; - ''; - }; + commonHttpConfig = '' + log_format upstream_time '$remote_addr - $remote_user [$time_local] ' + '"$request" $status $body_bytes_sent ' + '"$http_referer" "$http_user_agent" ' + 'rt=$request_time uct="$upstream_connect_time" ' + 'uht="$upstream_header_time" urt="$upstream_response_time"'; + ''; + }; - services.logrotate.settings = - { - # Override the default, just keep fewer logs - nginx.rotate = 6; - } - // lib.mapAttrs' ( - virtualHost: _: - lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { - frequency = "daily"; - rotate = 2; - compress = true; - delaycompress = true; - su = "${config.services.nginx.user} ${config.services.nginx.group}"; - postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + logrotate.settings = + { + # Override the default, just keep fewer logs + nginx.rotate = 6; } - ) config.services.nginx.virtualHosts; + // lib.mapAttrs' ( + virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; + } + ) config.services.nginx.virtualHosts; + + backups.acme = { + user = "acme"; + paths = lib.mapAttrsToList ( + virtualHost: _: "/var/lib/acme/${virtualHost}" + ) config.services.nginx.virtualHosts; + }; + }; systemd.tmpfiles.rules = lib.mapAttrsToList ( virtualHost: _: @@ -66,11 +75,4 @@ systemd.services.nginx.serviceConfig.SupplementaryGroups = [ config.security.acme.certs."tlater.net".group ]; - - services.backups.acme = { - user = "acme"; - paths = lib.mapAttrsToList ( - virtualHost: _: "/var/lib/acme/${virtualHost}" - ) config.services.nginx.virtualHosts; - }; } diff --git a/configuration/services/backups.nix b/configuration/services/backups.nix index 81e3554..baa61e3 100644 --- a/configuration/services/backups.nix +++ b/configuration/services/backups.nix @@ -57,7 +57,7 @@ in ''; type = types.attrsOf ( types.submodule ( - { config, name, ... }: + { name, ... }: { options = { user = lib.mkOption { @@ -246,7 +246,7 @@ in }; } // lib.mapAttrs' ( - name: backup: + name: _: lib.nameValuePair "backup-${name}" { wantedBy = [ "timers.target" ]; timerConfig = { diff --git a/configuration/services/conduit/default.nix b/configuration/services/conduit/default.nix index 94d401a..58abc49 100644 --- a/configuration/services/conduit/default.nix +++ b/configuration/services/conduit/default.nix @@ -18,33 +18,153 @@ in ./matrix-hookshot.nix ]; - services.matrix-conduit = { - enable = true; - package = flake-inputs.continuwuity.packages.${pkgs.system}.default; - settings.global = { - address = "127.0.0.1"; - server_name = domain; - new_user_displayname_suffix = "🦆"; - allow_check_for_updates = true; + services = { + matrix-conduit = { + enable = true; + package = flake-inputs.continuwuity.packages.${pkgs.system}.default; + settings.global = { + address = "127.0.0.1"; + server_name = domain; + new_user_displayname_suffix = "🦆"; + allow_check_for_updates = true; - # Set up delegation: https://docs.conduit.rs/delegation.html#automatic-recommended - # This is primarily to make sliding sync work - well_known = { - client = "https://${domain}"; - server = "${domain}:443"; + # Set up delegation: https://docs.conduit.rs/delegation.html#automatic-recommended + # This is primarily to make sliding sync work + well_known = { + client = "https://${domain}"; + server = "${domain}:443"; + }; + + turn_uris = + let + address = "${config.services.coturn.realm}:${toString config.services.coturn.listening-port}"; + tls-address = "${config.services.coturn.realm}:${toString config.services.coturn.tls-listening-port}"; + in + [ + "turn:${address}?transport=udp" + "turn:${address}?transport=tcp" + "turns:${tls-address}?transport=udp" + "turns:${tls-address}?transport=tcp" + ]; }; + }; - turn_uris = - let - address = "${config.services.coturn.realm}:${toString config.services.coturn.listening-port}"; - tls-address = "${config.services.coturn.realm}:${toString config.services.coturn.tls-listening-port}"; - in - [ - "turn:${address}?transport=udp" - "turn:${address}?transport=tcp" - "turns:${tls-address}?transport=udp" - "turns:${tls-address}?transport=tcp" - ]; + coturn = { + enable = true; + no-cli = true; + use-auth-secret = true; + static-auth-secret-file = config.sops.secrets."turn/secret".path; + realm = turn-realm; + relay-ips = [ "116.202.158.55" ]; + + # SSL config + pkey = "${config.security.acme.certs."tlater.net".directory}/key.pem"; + cert = "${config.security.acme.certs."tlater.net".directory}/fullchain.pem"; + + # Based on suggestions from + # https://github.com/matrix-org/synapse/blob/develop/docs/turn-howto.md + # and + # https://www.foxypossibilities.com/2018/05/19/setting-up-a-turn-sever-for-matrix-on-nixos/ + no-tcp-relay = true; + secure-stun = true; + extraConfig = '' + # Deny various local IP ranges, see + # https://www.rtcsec.com/article/cve-2020-26262-bypass-of-coturns-access-control-protection/ + no-multicast-peers + denied-peer-ip=0.0.0.0-0.255.255.255 + denied-peer-ip=10.0.0.0-10.255.255.255 + denied-peer-ip=100.64.0.0-100.127.255.255 + denied-peer-ip=127.0.0.0-127.255.255.255 + denied-peer-ip=169.254.0.0-169.254.255.255 + denied-peer-ip=172.16.0.0-172.31.255.255 + denied-peer-ip=192.0.0.0-192.0.0.255 + denied-peer-ip=192.0.2.0-192.0.2.255 + denied-peer-ip=192.88.99.0-192.88.99.255 + denied-peer-ip=192.168.0.0-192.168.255.255 + denied-peer-ip=198.18.0.0-198.19.255.255 + denied-peer-ip=198.51.100.0-198.51.100.255 + denied-peer-ip=203.0.113.0-203.0.113.255 + denied-peer-ip=240.0.0.0-255.255.255.255 denied-peer-ip=::1 + denied-peer-ip=64:ff9b::-64:ff9b::ffff:ffff + denied-peer-ip=::ffff:0.0.0.0-::ffff:255.255.255.255 + denied-peer-ip=100::-100::ffff:ffff:ffff:ffff + denied-peer-ip=2001::-2001:1ff:ffff:ffff:ffff:ffff:ffff:ffff + denied-peer-ip=2002::-2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff + denied-peer-ip=fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff + denied-peer-ip=fe80::-febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff + + # *Allow* any IP addresses that we explicitly set as relay IPs + ${concatMapStringsSep "\n" (ip: "allowed-peer-ip=${ip}") config.services.coturn.relay-ips} + + # Various other security settings + no-tlsv1 + no-tlsv1_1 + + # Monitoring + prometheus + ''; + }; + + nginx.virtualHosts."${domain}" = { + useACMEHost = "tlater.net"; + + listen = [ + { + addr = "0.0.0.0"; + port = 80; + } + { + addr = "[::0]"; + port = 80; + } + { + addr = "0.0.0.0"; + port = 443; + ssl = true; + } + { + addr = "[::0]"; + port = 443; + ssl = true; + } + { + addr = "0.0.0.0"; + port = 8448; + ssl = true; + } + { + addr = "[::0]"; + port = 8448; + ssl = true; + } + ]; + + forceSSL = true; + enableHSTS = true; + extraConfig = '' + merge_slashes off; + ''; + + locations = { + "/_matrix" = { + proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; + # Recommended by conduit + extraConfig = '' + proxy_buffering off; + ''; + }; + "/.well-known/matrix" = { + proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; + }; + }; + }; + + backups.conduit = { + user = "root"; + paths = [ "/var/lib/private/matrix-conduit/" ]; + # Other services store their data in conduit, so no other services + # need to be shut down currently. + pauseServices = [ "conduit.service" ]; }; }; @@ -60,122 +180,4 @@ in systemd.services.coturn.serviceConfig.SupplementaryGroups = [ config.security.acme.certs."tlater.net".group ]; - - services.coturn = { - enable = true; - no-cli = true; - use-auth-secret = true; - static-auth-secret-file = config.sops.secrets."turn/secret".path; - realm = turn-realm; - relay-ips = [ "116.202.158.55" ]; - - # SSL config - pkey = "${config.security.acme.certs."tlater.net".directory}/key.pem"; - cert = "${config.security.acme.certs."tlater.net".directory}/fullchain.pem"; - - # Based on suggestions from - # https://github.com/matrix-org/synapse/blob/develop/docs/turn-howto.md - # and - # https://www.foxypossibilities.com/2018/05/19/setting-up-a-turn-sever-for-matrix-on-nixos/ - no-tcp-relay = true; - secure-stun = true; - extraConfig = '' - # Deny various local IP ranges, see - # https://www.rtcsec.com/article/cve-2020-26262-bypass-of-coturns-access-control-protection/ - no-multicast-peers - denied-peer-ip=0.0.0.0-0.255.255.255 - denied-peer-ip=10.0.0.0-10.255.255.255 - denied-peer-ip=100.64.0.0-100.127.255.255 - denied-peer-ip=127.0.0.0-127.255.255.255 - denied-peer-ip=169.254.0.0-169.254.255.255 - denied-peer-ip=172.16.0.0-172.31.255.255 - denied-peer-ip=192.0.0.0-192.0.0.255 - denied-peer-ip=192.0.2.0-192.0.2.255 - denied-peer-ip=192.88.99.0-192.88.99.255 - denied-peer-ip=192.168.0.0-192.168.255.255 - denied-peer-ip=198.18.0.0-198.19.255.255 - denied-peer-ip=198.51.100.0-198.51.100.255 - denied-peer-ip=203.0.113.0-203.0.113.255 - denied-peer-ip=240.0.0.0-255.255.255.255 denied-peer-ip=::1 - denied-peer-ip=64:ff9b::-64:ff9b::ffff:ffff - denied-peer-ip=::ffff:0.0.0.0-::ffff:255.255.255.255 - denied-peer-ip=100::-100::ffff:ffff:ffff:ffff - denied-peer-ip=2001::-2001:1ff:ffff:ffff:ffff:ffff:ffff:ffff - denied-peer-ip=2002::-2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff - denied-peer-ip=fc00::-fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff - denied-peer-ip=fe80::-febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff - - # *Allow* any IP addresses that we explicitly set as relay IPs - ${concatMapStringsSep "\n" (ip: "allowed-peer-ip=${ip}") config.services.coturn.relay-ips} - - # Various other security settings - no-tlsv1 - no-tlsv1_1 - - # Monitoring - prometheus - ''; - }; - - services.nginx.virtualHosts."${domain}" = { - useACMEHost = "tlater.net"; - - listen = [ - { - addr = "0.0.0.0"; - port = 80; - } - { - addr = "[::0]"; - port = 80; - } - { - addr = "0.0.0.0"; - port = 443; - ssl = true; - } - { - addr = "[::0]"; - port = 443; - ssl = true; - } - { - addr = "0.0.0.0"; - port = 8448; - ssl = true; - } - { - addr = "[::0]"; - port = 8448; - ssl = true; - } - ]; - - forceSSL = true; - enableHSTS = true; - extraConfig = '' - merge_slashes off; - ''; - - locations = { - "/_matrix" = { - proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; - # Recommended by conduit - extraConfig = '' - proxy_buffering off; - ''; - }; - "/.well-known/matrix" = { - proxyPass = "http://${cfg.settings.global.address}:${toString cfg.settings.global.port}"; - }; - }; - }; - - services.backups.conduit = { - user = "root"; - paths = [ "/var/lib/private/matrix-conduit/" ]; - # Other services store their data in conduit, so no other services - # need to be shut down currently. - pauseServices = [ "conduit.service" ]; - }; } diff --git a/configuration/services/conduit/matrix-hookshot.nix b/configuration/services/conduit/matrix-hookshot.nix index c1f16dc..6846d99 100644 --- a/configuration/services/conduit/matrix-hookshot.nix +++ b/configuration/services/conduit/matrix-hookshot.nix @@ -74,9 +74,7 @@ in services.matrix-hookshot = { enable = true; - serviceDependencies = [ - "conduit.service" - ]; + serviceDependencies = [ "conduit.service" ]; registrationFile = "/run/matrix-hookshot/registration.yaml"; @@ -126,15 +124,11 @@ in listeners = [ { port = 9000; - resources = [ - "webhooks" - ]; + resources = [ "webhooks" ]; } { port = 9001; - resources = [ - "metrics" - ]; + resources = [ "metrics" ]; } ]; diff --git a/configuration/services/crowdsec.nix b/configuration/services/crowdsec.nix index 6e0f367..b736047 100644 --- a/configuration/services/crowdsec.nix +++ b/configuration/services/crowdsec.nix @@ -8,9 +8,7 @@ security.crowdsec = { enable = true; - parserWhitelist = [ - "10.45.249.2" - ]; + parserWhitelist = [ "10.45.249.2" ]; extraGroups = [ "systemd-journal" @@ -21,25 +19,19 @@ { source = "journalctl"; labels.type = "syslog"; - journalctl_filter = [ - "SYSLOG_IDENTIFIER=Nextcloud" - ]; + journalctl_filter = [ "SYSLOG_IDENTIFIER=Nextcloud" ]; } { source = "journalctl"; labels.type = "syslog"; - journalctl_filter = [ - "SYSLOG_IDENTIFIER=sshd-session" - ]; + journalctl_filter = [ "SYSLOG_IDENTIFIER=sshd-session" ]; } { labels.type = "nginx"; filenames = - [ - "/var/log/nginx/*.log" - ] + [ "/var/log/nginx/*.log" ] ++ lib.mapAttrsToList ( vHost: _: "/var/log/nginx/${vHost}/access.log" ) config.services.nginx.virtualHosts; diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index 614b818..f25bbcd 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -11,37 +11,39 @@ in { imports = [ flake-inputs.foundryvtt.nixosModules.foundryvtt ]; - services.foundryvtt = { - enable = true; - hostName = domain; - minifyStaticFiles = true; - proxySSL = true; - proxyPort = 443; - package = flake-inputs.foundryvtt.packages.${pkgs.system}.foundryvtt_11; + services = { + foundryvtt = { + enable = true; + hostName = domain; + minifyStaticFiles = true; + proxySSL = true; + proxyPort = 443; + package = flake-inputs.foundryvtt.packages.${pkgs.system}.foundryvtt_11; + }; + + nginx.virtualHosts."${domain}" = + let + inherit (config.services.foundryvtt) port; + in + { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; + + locations."/" = { + proxyWebsockets = true; + proxyPass = "http://localhost:${toString port}"; + }; + }; + + backups.foundryvtt = { + user = "foundryvtt"; + paths = [ config.services.foundryvtt.dataDir ]; + pauseServices = [ "foundryvtt.service" ]; + }; }; # Want to start it manually when I need it, not have it constantly # running systemd.services.foundryvtt.wantedBy = lib.mkForce [ ]; - - services.nginx.virtualHosts."${domain}" = - let - inherit (config.services.foundryvtt) port; - in - { - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; - - locations."/" = { - proxyWebsockets = true; - proxyPass = "http://localhost:${toString port}"; - }; - }; - - services.backups.foundryvtt = { - user = "foundryvtt"; - paths = [ config.services.foundryvtt.dataDir ]; - pauseServices = [ "foundryvtt.service" ]; - }; } diff --git a/configuration/services/gitea.nix b/configuration/services/gitea.nix index da01cde..613d30c 100644 --- a/configuration/services/gitea.nix +++ b/configuration/services/gitea.nix @@ -8,24 +8,68 @@ let domain = "gitea.${config.services.nginx.domain}"; in { - services.forgejo = { - enable = true; - database.type = "postgres"; + services = { + forgejo = { + enable = true; + database.type = "postgres"; - settings = { - server = { - DOMAIN = domain; - HTTP_ADDR = "127.0.0.1"; - ROOT_URL = "https://${domain}/"; - SSH_PORT = 2222; + settings = { + server = { + DOMAIN = domain; + HTTP_ADDR = "127.0.0.1"; + ROOT_URL = "https://${domain}/"; + SSH_PORT = 2222; + }; + + metrics = { + ENABLED = true; + TOKEN = "#metricstoken#"; + }; + service.DISABLE_REGISTRATION = true; + session.COOKIE_SECURE = true; + }; + }; + + # Set up SSL + nginx.virtualHosts."${domain}" = + let + httpAddress = config.services.forgejo.settings.server.HTTP_ADDR; + httpPort = config.services.forgejo.settings.server.HTTP_PORT; + in + { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; + + locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; + locations."/metrics" = { + extraConfig = '' + access_log off; + allow 127.0.0.1; + ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} + deny all; + ''; + }; }; - metrics = { - ENABLED = true; - TOKEN = "#metricstoken#"; + backups.forgejo = { + user = "forgejo"; + paths = [ + "/var/lib/forgejo/forgejo-db.sql" + "/var/lib/forgejo/repositories/" + "/var/lib/forgejo/data/" + "/var/lib/forgejo/custom/" + # Conf is backed up via nix + ]; + preparation = { + packages = [ config.services.postgresql.package ]; + text = "pg_dump ${config.services.forgejo.database.name} --file=/var/lib/forgejo/forgejo-db.sql"; }; - service.DISABLE_REGISTRATION = true; - session.COOKIE_SECURE = true; + cleanup = { + packages = [ pkgs.coreutils ]; + text = "rm /var/lib/forgejo/forgejo-db.sql"; + }; + pauseServices = [ "forgejo.service" ]; }; }; @@ -36,46 +80,4 @@ in runConfig = "${config.services.forgejo.customDir}/conf/app.ini"; in [ "+${replaceSecretBin} '#metricstoken#' '${secretPath}' '${runConfig}'" ]; - - # Set up SSL - services.nginx.virtualHosts."${domain}" = - let - httpAddress = config.services.forgejo.settings.server.HTTP_ADDR; - httpPort = config.services.forgejo.settings.server.HTTP_PORT; - in - { - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; - - locations."/".proxyPass = "http://${httpAddress}:${toString httpPort}"; - locations."/metrics" = { - extraConfig = '' - access_log off; - allow 127.0.0.1; - ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} - deny all; - ''; - }; - }; - - services.backups.forgejo = { - user = "forgejo"; - paths = [ - "/var/lib/forgejo/forgejo-db.sql" - "/var/lib/forgejo/repositories/" - "/var/lib/forgejo/data/" - "/var/lib/forgejo/custom/" - # Conf is backed up via nix - ]; - preparation = { - packages = [ config.services.postgresql.package ]; - text = "pg_dump ${config.services.forgejo.database.name} --file=/var/lib/forgejo/forgejo-db.sql"; - }; - cleanup = { - packages = [ pkgs.coreutils ]; - text = "rm /var/lib/forgejo/forgejo-db.sql"; - }; - pauseServices = [ "forgejo.service" ]; - }; } diff --git a/configuration/services/metrics/exporters.nix b/configuration/services/metrics/exporters.nix index 80a3480..52c2a46 100644 --- a/configuration/services/metrics/exporters.nix +++ b/configuration/services/metrics/exporters.nix @@ -74,7 +74,7 @@ in listenAddress = "127.0.0.1"; group = "nginx"; - settings.namespaces = lib.mapAttrsToList (name: virtualHost: { + settings.namespaces = lib.mapAttrsToList (name: _: { inherit name; metrics_override.prefix = "nginxlog"; namespace_label = "vhost"; diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index d69ecfb..e1b0761 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -38,7 +38,7 @@ in services.victoriametrics.scrapeConfigs = mkOption { type = types.attrsOf ( types.submodule ( - { name, self, ... }: + { name, ... }: { options = { job_name = mkOption { @@ -106,35 +106,37 @@ in # module is an intractable mess wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; - serviceConfig.Restart = mkDefault "always"; - serviceConfig.PrivateTmp = mkDefault true; - serviceConfig.WorkingDirectory = mkDefault /tmp; - serviceConfig.DynamicUser = mkDefault true; - # Hardening - serviceConfig.CapabilityBoundingSet = mkDefault [ "" ]; - serviceConfig.DeviceAllow = [ "" ]; - serviceConfig.LockPersonality = true; - serviceConfig.MemoryDenyWriteExecute = true; - serviceConfig.NoNewPrivileges = true; - serviceConfig.PrivateDevices = mkDefault true; - serviceConfig.ProtectClock = mkDefault true; - serviceConfig.ProtectControlGroups = true; - serviceConfig.ProtectHome = true; - serviceConfig.ProtectHostname = true; - serviceConfig.ProtectKernelLogs = true; - serviceConfig.ProtectKernelModules = true; - serviceConfig.ProtectKernelTunables = true; - serviceConfig.ProtectSystem = mkDefault "strict"; - serviceConfig.RemoveIPC = true; - serviceConfig.RestrictAddressFamilies = [ - "AF_INET" - "AF_INET6" - ]; - serviceConfig.RestrictNamespaces = true; - serviceConfig.RestrictRealtime = true; - serviceConfig.RestrictSUIDSGID = true; - serviceConfig.SystemCallArchitectures = "native"; - serviceConfig.UMask = "0077"; + serviceConfig = { + Restart = mkDefault "always"; + PrivateTmp = mkDefault true; + WorkingDirectory = mkDefault /tmp; + DynamicUser = mkDefault true; + # Hardening + CapabilityBoundingSet = mkDefault [ "" ]; + DeviceAllow = [ "" ]; + LockPersonality = true; + MemoryDenyWriteExecute = true; + NoNewPrivileges = true; + PrivateDevices = mkDefault true; + ProtectClock = mkDefault true; + ProtectControlGroups = true; + ProtectHome = true; + ProtectHostname = true; + ProtectKernelLogs = true; + ProtectKernelModules = true; + ProtectKernelTunables = true; + ProtectSystem = mkDefault "strict"; + RemoveIPC = true; + RestrictAddressFamilies = [ + "AF_INET" + "AF_INET6" + ]; + RestrictNamespaces = true; + RestrictRealtime = true; + RestrictSUIDSGID = true; + SystemCallArchitectures = "native"; + UMask = "0077"; + }; } exporter.serviceOpts ] @@ -144,7 +146,7 @@ in { vmagent-scrape-exporters = let - listenAddress = config.services.victoriametrics.listenAddress; + inherit (config.services.victoriametrics) listenAddress; vmAddr = (lib.optionalString (lib.hasPrefix ":" listenAddress) "127.0.0.1") + listenAddress; promscrape = yaml.generate "prometheus.yml" { scrape_configs = lib.mapAttrsToList ( @@ -153,7 +155,7 @@ in inherit (scrape) job_name; static_configs = scrape.static_configs - ++ lib.optional (scrape.targets != [ ]) { targets = scrape.targets; }; + ++ lib.optional (scrape.targets != [ ]) { inherit (scrape) targets; }; } scrape.extraSettings ) config.services.victoriametrics.scrapeConfigs; }; @@ -212,7 +214,7 @@ in services.victoriametrics.scrapeConfigs = let - allExporters = lib.mapAttrs (name: exporter: { inherit (exporter) listenAddress port; }) ( + allExporters = lib.mapAttrs (_: exporter: { inherit (exporter) listenAddress port; }) ( (lib.filterAttrs ( name: exporter: # A bunch of deprecated exporters that need to be ignored diff --git a/configuration/services/metrics/victorialogs.nix b/configuration/services/metrics/victorialogs.nix index ae47c39..413659a 100644 --- a/configuration/services/metrics/victorialogs.nix +++ b/configuration/services/metrics/victorialogs.nix @@ -1,8 +1,4 @@ -{ - config, - lib, - ... -}: +{ config, lib, ... }: let cfg = config.services.victorialogs; in diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index b5cb691..2f8fa76 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -9,93 +9,95 @@ let hostName = "nextcloud.${config.services.nginx.domain}"; in { - services.nextcloud = { - inherit hostName; + services = { + nextcloud = { + inherit hostName; - package = nextcloud; - phpPackage = lib.mkForce ( - pkgs.php.override { - packageOverrides = final: prev: { - extensions = prev.extensions // { - pgsql = prev.extensions.pgsql.overrideAttrs (old: { - configureFlags = [ "--with-pgsql=${lib.getDev config.services.postgresql.package}" ]; - }); - pdo_pgsql = prev.extensions.pdo_pgsql.overrideAttrs (old: { - configureFlags = [ "--with-pdo-pgsql=${lib.getDev config.services.postgresql.package}" ]; - }); + package = nextcloud; + phpPackage = lib.mkForce ( + pkgs.php.override { + packageOverrides = _: prev: { + extensions = prev.extensions // { + pgsql = prev.extensions.pgsql.overrideAttrs (_: { + configureFlags = [ "--with-pgsql=${lib.getDev config.services.postgresql.package}" ]; + }); + pdo_pgsql = prev.extensions.pdo_pgsql.overrideAttrs (_: { + configureFlags = [ "--with-pdo-pgsql=${lib.getDev config.services.postgresql.package}" ]; + }); + }; }; - }; - } - ); - enable = true; - maxUploadSize = "2G"; - https = true; + } + ); + enable = true; + maxUploadSize = "2G"; + https = true; - configureRedis = true; + configureRedis = true; - config = { - dbtype = "pgsql"; - dbhost = "/run/postgresql"; + config = { + dbtype = "pgsql"; + dbhost = "/run/postgresql"; - adminuser = "tlater"; - adminpassFile = config.sops.secrets."nextcloud/tlater".path; + adminuser = "tlater"; + adminpassFile = config.sops.secrets."nextcloud/tlater".path; + }; + + settings = { + default_phone_region = "AT"; + overwriteprotocol = "https"; + }; + + phpOptions = { + "opcache.interned_strings_buffer" = "16"; + }; + + extraApps = { + inherit (config.services.nextcloud.package.packages.apps) + calendar + contacts + cookbook + news + ; + }; }; - settings = { - default_phone_region = "AT"; - overwriteprotocol = "https"; + # Set up SSL + nginx.virtualHosts."${hostName}" = { + forceSSL = true; + useACMEHost = "tlater.net"; + # The upstream module already adds HSTS }; - phpOptions = { - "opcache.interned_strings_buffer" = "16"; - }; - - extraApps = { - inherit (config.services.nextcloud.package.packages.apps) - calendar - contacts - cookbook - news - ; + backups.nextcloud = { + user = "nextcloud"; + paths = [ + "/var/lib/nextcloud/nextcloud-db.sql" + "/var/lib/nextcloud/data/" + "/var/lib/nextcloud/config/config.php" + ]; + preparation = { + packages = [ + config.services.postgresql.package + config.services.nextcloud.occ + ]; + text = '' + nextcloud-occ maintenance:mode --on + pg_dump ${config.services.nextcloud.config.dbname} --file=/var/lib/nextcloud/nextcloud-db.sql + ''; + }; + cleanup = { + packages = [ + pkgs.coreutils + config.services.nextcloud.occ + ]; + text = '' + rm /var/lib/nextcloud/nextcloud-db.sql + nextcloud-occ maintenance:mode --off + ''; + }; }; }; # Ensure that this service doesn't start before postgres is ready systemd.services.nextcloud-setup.after = [ "postgresql.service" ]; - - # Set up SSL - services.nginx.virtualHosts."${hostName}" = { - forceSSL = true; - useACMEHost = "tlater.net"; - # The upstream module already adds HSTS - }; - - services.backups.nextcloud = { - user = "nextcloud"; - paths = [ - "/var/lib/nextcloud/nextcloud-db.sql" - "/var/lib/nextcloud/data/" - "/var/lib/nextcloud/config/config.php" - ]; - preparation = { - packages = [ - config.services.postgresql.package - config.services.nextcloud.occ - ]; - text = '' - nextcloud-occ maintenance:mode --on - pg_dump ${config.services.nextcloud.config.dbname} --file=/var/lib/nextcloud/nextcloud-db.sql - ''; - }; - cleanup = { - packages = [ - pkgs.coreutils - config.services.nextcloud.occ - ]; - text = '' - rm /var/lib/nextcloud/nextcloud-db.sql - nextcloud-occ maintenance:mode --off - ''; - }; - }; } diff --git a/configuration/services/webserver.nix b/configuration/services/webserver.nix index e6b49b3..864f6c0 100644 --- a/configuration/services/webserver.nix +++ b/configuration/services/webserver.nix @@ -1,6 +1,6 @@ { config, ... }: let - domain = config.services.nginx.domain; + inherit (config.services.nginx) domain; in { services.tlaternet-webserver = { diff --git a/flake.nix b/flake.nix index 6747c24..90716e5 100644 --- a/flake.nix +++ b/flake.nix @@ -121,8 +121,6 @@ run-vm = { type = "app"; program = - let - in (pkgs.writeShellScript "" '' ${vm.config.system.build.vm.outPath}/bin/run-testvm-vm '').outPath; diff --git a/modules/crowdsec/default.nix b/modules/crowdsec/default.nix index c0003a5..ac93c4a 100644 --- a/modules/crowdsec/default.nix +++ b/modules/crowdsec/default.nix @@ -267,9 +267,7 @@ in }; }; - systemd.packages = [ - cfg.package - ]; + systemd.packages = [ cfg.package ]; environment = { systemPackages = [ diff --git a/modules/crowdsec/remediations/cs-firewall-bouncer.nix b/modules/crowdsec/remediations/cs-firewall-bouncer.nix index aa70552..42accc6 100644 --- a/modules/crowdsec/remediations/cs-firewall-bouncer.nix +++ b/modules/crowdsec/remediations/cs-firewall-bouncer.nix @@ -6,10 +6,11 @@ ... }: let + inherit (flake-inputs.self.packages.${pkgs.system}) crowdsec-firewall-bouncer; + crowdsecCfg = config.security.crowdsec; cfg = crowdsecCfg.remediationComponents.firewallBouncer; settingsFormat = pkgs.formats.yaml { }; - crowdsec-firewall-bouncer = flake-inputs.self.packages.${pkgs.system}.crowdsec-firewall-bouncer; in { options.security.crowdsec.remediationComponents.firewallBouncer = { @@ -31,9 +32,7 @@ in security.crowdsec.remediationComponents.firewallBouncer.settings = { mode = lib.mkDefault "${if config.networking.nftables.enable then "nftables" else "iptables"}"; log_mode = "stdout"; - iptables_chains = [ - "nixos-fw" - ]; + iptables_chains = [ "nixos-fw" ]; # Don't let users easily override this; unfortunately we need to # set up this key through substitution at runtime. @@ -78,9 +77,7 @@ in requiredBy = [ "crowdsec.service" ]; path = - lib.optionals (cfg.settings.mode == "ipset" || cfg.settings.mode == "iptables") [ - pkgs.ipset - ] + lib.optionals (cfg.settings.mode == "ipset" || cfg.settings.mode == "iptables") [ pkgs.ipset ] ++ lib.optional (cfg.settings.mode == "iptables") pkgs.iptables ++ lib.optional (cfg.settings.mode == "nftables") pkgs.nftables; }; diff --git a/modules/crowdsec/remediations/default.nix b/modules/crowdsec/remediations/default.nix index 7df6ade..c3c0790 100644 --- a/modules/crowdsec/remediations/default.nix +++ b/modules/crowdsec/remediations/default.nix @@ -1,5 +1 @@ -{ - imports = [ - ./cs-firewall-bouncer.nix - ]; -} +{ imports = [ ./cs-firewall-bouncer.nix ]; } diff --git a/pkgs/crowdsec/hub.nix b/pkgs/crowdsec/hub.nix index d057ca8..1b8c9b3 100644 --- a/pkgs/crowdsec/hub.nix +++ b/pkgs/crowdsec/hub.nix @@ -1,4 +1 @@ -{ - sources, -}: -sources.crowdsec-hub.src +{ sources }: sources.crowdsec-hub.src From 8d0be61483178428191cf79f55705ff20cb2b8cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 20 May 2025 20:49:16 +0800 Subject: [PATCH 175/196] chore(ignore-revs): Ignore linter changes in `blame` --- .git-blame-ignore-revs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index df9d62b..40e5d59 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -9,3 +9,6 @@ fd138d45e6a2cad89fead6e9f246ba282070d6b7 # Switch to alejandra formatting 046a88905ddfa7f9edc3291c310dbb985dee34f9 + +# Apply wide linting +63b3cbe00be80ccb4b221aad64eb657ae5c96d70 From 913944cff37a3007574525735c854d4be6dd97eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 23 May 2025 11:40:19 +0800 Subject: [PATCH 176/196] feat(immich): Add immich service --- configuration/default.nix | 1 + configuration/services/immich.nix | 65 +++++++++++++++++++ .../services/metrics/victoriametrics.nix | 5 ++ 3 files changed, 71 insertions(+) create mode 100644 configuration/services/immich.nix diff --git a/configuration/default.nix b/configuration/default.nix index 544e20c..0377e9c 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -19,6 +19,7 @@ ./services/crowdsec.nix ./services/foundryvtt.nix ./services/gitea.nix + ./services/immich.nix ./services/metrics ./services/nextcloud.nix ./services/webserver.nix diff --git a/configuration/services/immich.nix b/configuration/services/immich.nix new file mode 100644 index 0000000..b74c877 --- /dev/null +++ b/configuration/services/immich.nix @@ -0,0 +1,65 @@ +{ + pkgs, + config, + lib, + ... +}: +let + hostName = "immich.${config.services.nginx.domain}"; +in +{ + services.immich = { + enable = true; + settings.server.externalDomain = "https://${hostName}"; + + environment.IMMICH_TELEMETRY_INCLUDE = "all"; + }; + + services.nginx.virtualHosts.${hostName} = + let + local = "http://${config.services.immich.host}:${toString config.services.immich.port}"; + in + { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; + + locations."/" = { + proxyPass = local; + proxyWebsockets = true; + }; + locations."/metrics" = { + extraConfig = '' + access_log off; + allow 127.0.0.1; + ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} + deny all; + ''; + }; + }; + + backups.immich = + let + db-dump = "${config.services.immich.mediaLocation}/immich-db.sql"; + in + { + user = "immich"; + paths = [ config.services.immich.mediaLocation ]; + + preparation = { + packages = [ config.services.postgresql.package ]; + text = '' + pg_dump ${config.services.immich.database.name} --clean --if-exists --file=${db-dump} + ''; + }; + + cleanup = { + packages = [ pkgs.coreutils ]; + text = "rm ${db-dump}"; + }; + pauseServices = [ + "immich-server.service" + "immich-machine-learning.service" + ]; + }; +} diff --git a/configuration/services/metrics/victoriametrics.nix b/configuration/services/metrics/victoriametrics.nix index 53864d6..f37b8b0 100644 --- a/configuration/services/metrics/victoriametrics.nix +++ b/configuration/services/metrics/victoriametrics.nix @@ -84,6 +84,11 @@ in in [ "${address}:${toString port}" ]; + immich.targets = [ + "127.0.0.1:8081" + "127.0.0.1:8082" + ]; + # Configured in the hookshot listeners, but it's hard to filter # the correct values out of that config. matrixHookshot.targets = [ "127.0.0.1:9001" ]; From b067bbc8c004af4780f8306c3ad7de466a9d823f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 24 May 2025 05:32:55 +0800 Subject: [PATCH 177/196] fix(immich): Set the correct backup attribute --- configuration/services/immich.nix | 106 +++++++++++++++--------------- 1 file changed, 54 insertions(+), 52 deletions(-) diff --git a/configuration/services/immich.nix b/configuration/services/immich.nix index b74c877..516ea3e 100644 --- a/configuration/services/immich.nix +++ b/configuration/services/immich.nix @@ -8,58 +8,60 @@ let hostName = "immich.${config.services.nginx.domain}"; in { - services.immich = { - enable = true; - settings.server.externalDomain = "https://${hostName}"; + services = { + immich = { + enable = true; + settings.server.externalDomain = "https://${hostName}"; - environment.IMMICH_TELEMETRY_INCLUDE = "all"; + environment.IMMICH_TELEMETRY_INCLUDE = "all"; + }; + + nginx.virtualHosts.${hostName} = + let + local = "http://${config.services.immich.host}:${toString config.services.immich.port}"; + in + { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; + + locations."/" = { + proxyPass = local; + proxyWebsockets = true; + }; + locations."/metrics" = { + extraConfig = '' + access_log off; + allow 127.0.0.1; + ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} + deny all; + ''; + }; + }; + + backups.immich = + let + db-dump = "${config.services.immich.mediaLocation}/immich-db.sql"; + in + { + user = "immich"; + paths = [ config.services.immich.mediaLocation ]; + + preparation = { + packages = [ config.services.postgresql.package ]; + text = '' + pg_dump ${config.services.immich.database.name} --clean --if-exists --file=${db-dump} + ''; + }; + + cleanup = { + packages = [ pkgs.coreutils ]; + text = "rm ${db-dump}"; + }; + pauseServices = [ + "immich-server.service" + "immich-machine-learning.service" + ]; + }; }; - - services.nginx.virtualHosts.${hostName} = - let - local = "http://${config.services.immich.host}:${toString config.services.immich.port}"; - in - { - forceSSL = true; - useACMEHost = "tlater.net"; - enableHSTS = true; - - locations."/" = { - proxyPass = local; - proxyWebsockets = true; - }; - locations."/metrics" = { - extraConfig = '' - access_log off; - allow 127.0.0.1; - ${lib.optionalString config.networking.enableIPv6 "allow ::1;"} - deny all; - ''; - }; - }; - - backups.immich = - let - db-dump = "${config.services.immich.mediaLocation}/immich-db.sql"; - in - { - user = "immich"; - paths = [ config.services.immich.mediaLocation ]; - - preparation = { - packages = [ config.services.postgresql.package ]; - text = '' - pg_dump ${config.services.immich.database.name} --clean --if-exists --file=${db-dump} - ''; - }; - - cleanup = { - packages = [ pkgs.coreutils ]; - text = "rm ${db-dump}"; - }; - pauseServices = [ - "immich-server.service" - "immich-machine-learning.service" - ]; - }; } From fc6be0c4c27dd00283bacb7c5cd3bcf1d5bab09c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 24 May 2025 22:53:33 +0800 Subject: [PATCH 178/196] chore(treewide): Upgrade to NixOS 25.05 --- configuration/services/conduit/default.nix | 3 +- .../services/conduit/matrix-hookshot.nix | 42 +++++++++++++++---- configuration/services/metrics/grafana.nix | 9 +--- configuration/services/nextcloud.nix | 6 +-- flake.nix | 7 +--- modules/crowdsec/default.nix | 5 +-- 6 files changed, 43 insertions(+), 29 deletions(-) diff --git a/configuration/services/conduit/default.nix b/configuration/services/conduit/default.nix index 58abc49..4ba5271 100644 --- a/configuration/services/conduit/default.nix +++ b/configuration/services/conduit/default.nix @@ -1,6 +1,5 @@ { pkgs, - flake-inputs, config, lib, ... @@ -21,7 +20,7 @@ in services = { matrix-conduit = { enable = true; - package = flake-inputs.continuwuity.packages.${pkgs.system}.default; + package = pkgs.matrix-continuwuity; settings.global = { address = "127.0.0.1"; server_name = domain; diff --git a/configuration/services/conduit/matrix-hookshot.nix b/configuration/services/conduit/matrix-hookshot.nix index 6846d99..6b788b2 100644 --- a/configuration/services/conduit/matrix-hookshot.nix +++ b/configuration/services/conduit/matrix-hookshot.nix @@ -29,16 +29,29 @@ let }; # Encryption support - extraSettings = { - "de.sorunome.msc2409.push_ephemeral" = true; - push_ephemeral = true; - "org.matrix.msc3202" = true; - }; + # TODO(tlater): Enable when + # https://github.com/matrix-org/matrix-hookshot/issues/1060 is + # fixed + # extraSettings = { + # "de.sorunome.msc2409.push_ephemeral" = true; + # push_ephemeral = true; + # "org.matrix.msc3202" = true; + # }; runtimeRegistration = "${cfg.registrationFile}"; }; in { + # users = { + # users.matrix-hookshot = { + # home = "/run/matrix-hookshot"; + # group = "matrix-hookshot"; + # isSystemUser = true; + # }; + + # groups.matrix-hookshot = { }; + # }; + systemd.services.matrix-hookshot = { serviceConfig = { Type = lib.mkForce "exec"; @@ -49,6 +62,7 @@ in # Some library in matrix-hookshot wants a home directory Environment = [ "HOME=/run/matrix-hookshot" ]; + # User = "matrix-hookshot"; DynamicUser = true; StateDirectory = "matrix-hookshot"; RuntimeDirectory = "matrix-hookshot"; @@ -62,7 +76,11 @@ in ProtectKernelModules = true; ProtectKernelLogs = true; ProtectControlGroups = true; - RestrictAddressFamilies = [ "AF_INET AF_INET6" ]; + RestrictAddressFamilies = [ + # "AF_UNIX" + "AF_INET" + "AF_INET6" + ]; LockPersonality = true; RestrictRealtime = true; ProtectProc = "invisible"; @@ -71,6 +89,11 @@ in }; }; + # services.redis.servers.matrix-hookshot = { + # enable = true; + # user = "matrix-hookshot"; + # }; + services.matrix-hookshot = { enable = true; @@ -89,6 +112,8 @@ in bot.displayname = "Hookshot"; + # cache.redisUri = "redis://${config.services.redis.servers.matrix-hookshot.unixSocket}"; + generic = { enabled = true; outbound = false; @@ -98,7 +123,10 @@ in allowJsTransformationFunctions = true; }; - encryption.storagePath = "/var/lib/matrix-hookshot/cryptostore"; + # TODO(tlater): Enable when + # https://github.com/matrix-org/matrix-hookshot/issues/1060 is + # fixed + # encryption.storagePath = "/var/lib/matrix-hookshot/cryptostore"; permissions = [ { diff --git a/configuration/services/metrics/grafana.nix b/configuration/services/metrics/grafana.nix index b872833..b30806c 100644 --- a/configuration/services/metrics/grafana.nix +++ b/configuration/services/metrics/grafana.nix @@ -1,9 +1,4 @@ -{ - pkgs, - config, - flake-inputs, - ... -}: +{ pkgs, config, ... }: let domain = "metrics.${config.services.nginx.domain}"; in @@ -35,7 +30,7 @@ in declarativePlugins = [ pkgs.grafanaPlugins.victoriametrics-metrics-datasource - flake-inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.grafanaPlugins.victoriametrics-logs-datasource + pkgs.grafanaPlugins.victoriametrics-logs-datasource ]; provision = { diff --git a/configuration/services/nextcloud.nix b/configuration/services/nextcloud.nix index 2f8fa76..4af77a9 100644 --- a/configuration/services/nextcloud.nix +++ b/configuration/services/nextcloud.nix @@ -5,7 +5,7 @@ ... }: let - nextcloud = pkgs.nextcloud30; + nextcloud = pkgs.nextcloud31; hostName = "nextcloud.${config.services.nginx.domain}"; in { @@ -19,10 +19,10 @@ in packageOverrides = _: prev: { extensions = prev.extensions // { pgsql = prev.extensions.pgsql.overrideAttrs (_: { - configureFlags = [ "--with-pgsql=${lib.getDev config.services.postgresql.package}" ]; + configureFlags = [ "--with-pgsql=${lib.getDev config.services.postgresql.package.pg_config}" ]; }); pdo_pgsql = prev.extensions.pdo_pgsql.overrideAttrs (_: { - configureFlags = [ "--with-pdo-pgsql=${lib.getDev config.services.postgresql.package}" ]; + configureFlags = [ "--with-pdo-pgsql=${lib.getDev config.services.postgresql.package.pg_config}" ]; }); }; }; diff --git a/flake.nix b/flake.nix index 90716e5..da8455f 100644 --- a/flake.nix +++ b/flake.nix @@ -2,12 +2,7 @@ description = "tlater.net host configuration"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11-small"; - nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small"; - continuwuity = { - url = "git+https://forgejo.ellis.link/continuwuation/continuwuity.git?ref=refs/tags/v0.5.0-rc.5"; - inputs.nixpkgs.follows = "nixpkgs"; - }; + nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05-small"; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; diff --git a/modules/crowdsec/default.nix b/modules/crowdsec/default.nix index ac93c4a..44e6bc5 100644 --- a/modules/crowdsec/default.nix +++ b/modules/crowdsec/default.nix @@ -247,10 +247,7 @@ in online_client = { # By default, we don't let crowdsec phone home, since # this is usually within NixOS users' concerns. - # - # TODO: Enable when this option becomes available - # (1.6.4, current nixpkgs-unstable) - # sharing = lib.mkDefault false; + sharing = lib.mkDefault false; credentials_path = cfg.centralApiCredentials; }; }; From f2cbeebbb5c9634e9b82a3bb672b3dbbb15739fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 24 May 2025 18:28:51 +0800 Subject: [PATCH 179/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/ec7c109a4f794fce09aad87239eab7f66540b888' (2025-05-15) → 'github:nix-community/disko/df522e787fdffc4f32ed3e1fca9ed0968a384d62' (2025-05-20) • Updated input 'nixpkgs-unstable': 'github:nixos/nixpkgs/b965e4c283060415956ccd39eee4ca34a6a56cf8' (2025-05-16) → 'github:nixos/nixpkgs/c3ee76c437067f1ae09d6e530df46a3f80977992' (2025-05-24) • Updated input 'sops-nix': 'github:Mic92/sops-nix/e93ee1d900ad264d65e9701a5c6f895683433386' (2025-05-05) → 'github:Mic92/sops-nix/8d215e1c981be3aa37e47aeabd4e61bb069548fd' (2025-05-18) --- flake.lock | 932 ++++++++--------------------------------------------- 1 file changed, 134 insertions(+), 798 deletions(-) diff --git a/flake.lock b/flake.lock index c17c613..885b579 100644 --- a/flake.lock +++ b/flake.lock @@ -1,86 +1,6 @@ { "nodes": { - "attic": { - "inputs": { - "crane": "crane", - "flake-compat": "flake-compat", - "flake-parts": "flake-parts", - "nix-github-actions": "nix-github-actions", - "nixpkgs": "nixpkgs", - "nixpkgs-stable": "nixpkgs-stable" - }, - "locked": { - "lastModified": 1738524606, - "narHash": "sha256-hPYEJ4juK3ph7kbjbvv7PlU1D9pAkkhl+pwx8fZY53U=", - "owner": "zhaofengli", - "repo": "attic", - "rev": "ff8a897d1f4408ebbf4d45fa9049c06b3e1e3f4e", - "type": "github" - }, - "original": { - "owner": "zhaofengli", - "ref": "main", - "repo": "attic", - "type": "github" - } - }, "cachix": { - "inputs": { - "devenv": "devenv", - "flake-compat": "flake-compat_2", - "git-hooks": "git-hooks", - "nixpkgs": "nixpkgs_4" - }, - "locked": { - "lastModified": 1737621947, - "narHash": "sha256-8HFvG7fvIFbgtaYAY2628Tb89fA55nPm2jSiNs0/Cws=", - "owner": "cachix", - "repo": "cachix", - "rev": "f65a3cd5e339c223471e64c051434616e18cc4f5", - "type": "github" - }, - "original": { - "owner": "cachix", - "ref": "master", - "repo": "cachix", - "type": "github" - } - }, - "cachix_2": { - "inputs": { - "devenv": [ - "continuwuity", - "cachix", - "devenv" - ], - "flake-compat": [ - "continuwuity", - "cachix", - "devenv" - ], - "git-hooks": [ - "continuwuity", - "cachix", - "devenv" - ], - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1728672398, - "narHash": "sha256-KxuGSoVUFnQLB2ZcYODW7AVPAh9JqRlD5BrfsC/Q4qs=", - "owner": "cachix", - "repo": "cachix", - "rev": "aac51f698309fd0f381149214b7eee213c66ef0a", - "type": "github" - }, - "original": { - "owner": "cachix", - "ref": "latest", - "repo": "cachix", - "type": "github" - } - }, - "cachix_3": { "inputs": { "devenv": [ "sonnenshift", @@ -90,7 +10,7 @@ "sonnenshift", "crate2nix" ], - "nixpkgs": "nixpkgs_7", + "nixpkgs": "nixpkgs_3", "pre-commit-hooks": [ "sonnenshift", "crate2nix" @@ -111,7 +31,7 @@ "type": "github" } }, - "cachix_4": { + "cachix_2": { "inputs": { "devenv": [ "sonnenshift", @@ -123,7 +43,7 @@ "crate2nix", "crate2nix_stable" ], - "nixpkgs": "nixpkgs_8", + "nixpkgs": "nixpkgs_4", "pre-commit-hooks": [ "sonnenshift", "crate2nix", @@ -145,7 +65,7 @@ "type": "github" } }, - "cachix_5": { + "cachix_3": { "inputs": { "devenv": [ "sonnenshift", @@ -159,7 +79,7 @@ "crate2nix_stable", "crate2nix_stable" ], - "nixpkgs": "nixpkgs_9", + "nixpkgs": "nixpkgs_5", "pre-commit-hooks": [ "sonnenshift", "crate2nix", @@ -182,99 +102,13 @@ "type": "github" } }, - "complement": { - "flake": false, - "locked": { - "lastModified": 1741891349, - "narHash": "sha256-YvrzOWcX7DH1drp5SGa+E/fc7wN3hqFtPbqPjZpOu1Q=", - "owner": "girlbossceo", - "repo": "complement", - "rev": "e587b3df569cba411aeac7c20b6366d03c143745", - "type": "github" - }, - "original": { - "owner": "girlbossceo", - "ref": "main", - "repo": "complement", - "type": "github" - } - }, - "continuwuity": { - "inputs": { - "attic": "attic", - "cachix": "cachix", - "complement": "complement", - "crane": "crane_2", - "fenix": "fenix", - "flake-compat": "flake-compat_3", - "flake-utils": "flake-utils", - "liburing": "liburing", - "nix-filter": "nix-filter", - "nixpkgs": [ - "nixpkgs" - ], - "rocksdb": "rocksdb" - }, - "locked": { - "lastModified": 1745186840, - "narHash": "sha256-Oq2scBu3Ewao828BT1QGffqIqF5WoH9HMXEXKg1YU0o=", - "ref": "refs/tags/v0.5.0-rc.5", - "rev": "0a0f327ae034f5c44b12a3154cc1143aff10291c", - "revCount": 5147, - "type": "git", - "url": "https://forgejo.ellis.link/continuwuation/continuwuity.git" - }, - "original": { - "ref": "refs/tags/v0.5.0-rc.5", - "type": "git", - "url": "https://forgejo.ellis.link/continuwuation/continuwuity.git" - } - }, - "crane": { - "inputs": { - "nixpkgs": [ - "continuwuity", - "attic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1722960479, - "narHash": "sha256-NhCkJJQhD5GUib8zN9JrmYGMwt4lCRp6ZVNzIiYCl0Y=", - "owner": "ipetkov", - "repo": "crane", - "rev": "4c6c77920b8d44cd6660c1621dea6b3fc4b4c4f4", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "repo": "crane", - "type": "github" - } - }, - "crane_2": { - "locked": { - "lastModified": 1739936662, - "narHash": "sha256-x4syUjNUuRblR07nDPeLDP7DpphaBVbUaSoeZkFbGSk=", - "owner": "ipetkov", - "repo": "crane", - "rev": "19de14aaeb869287647d9461cbd389187d8ecdb7", - "type": "github" - }, - "original": { - "owner": "ipetkov", - "ref": "master", - "repo": "crane", - "type": "github" - } - }, "crate2nix": { "inputs": { - "cachix": "cachix_3", + "cachix": "cachix", "crate2nix_stable": "crate2nix_stable", "devshell": "devshell_3", - "flake-compat": "flake-compat_7", - "flake-parts": "flake-parts_5", + "flake-compat": "flake-compat_4", + "flake-parts": "flake-parts_3", "nix-test-runner": "nix-test-runner_3", "nixpkgs": [ "sonnenshift", @@ -298,13 +132,13 @@ }, "crate2nix_stable": { "inputs": { - "cachix": "cachix_4", + "cachix": "cachix_2", "crate2nix_stable": "crate2nix_stable_2", "devshell": "devshell_2", - "flake-compat": "flake-compat_6", - "flake-parts": "flake-parts_4", + "flake-compat": "flake-compat_3", + "flake-parts": "flake-parts_2", "nix-test-runner": "nix-test-runner_2", - "nixpkgs": "nixpkgs_11", + "nixpkgs": "nixpkgs_7", "pre-commit-hooks": "pre-commit-hooks_2" }, "locked": { @@ -324,13 +158,13 @@ }, "crate2nix_stable_2": { "inputs": { - "cachix": "cachix_5", + "cachix": "cachix_3", "crate2nix_stable": "crate2nix_stable_3", "devshell": "devshell", - "flake-compat": "flake-compat_5", - "flake-parts": "flake-parts_3", + "flake-compat": "flake-compat_2", + "flake-parts": "flake-parts", "nix-test-runner": "nix-test-runner", - "nixpkgs": "nixpkgs_10", + "nixpkgs": "nixpkgs_6", "pre-commit-hooks": "pre-commit-hooks" }, "locked": { @@ -350,7 +184,7 @@ }, "crate2nix_stable_3": { "inputs": { - "flake-utils": "flake-utils_2" + "flake-utils": "flake-utils" }, "locked": { "lastModified": 1702842982, @@ -369,8 +203,8 @@ }, "deploy-rs": { "inputs": { - "flake-compat": "flake-compat_4", - "nixpkgs": "nixpkgs_5", + "flake-compat": "flake-compat", + "nixpkgs": "nixpkgs", "utils": "utils" }, "locked": { @@ -387,43 +221,9 @@ "type": "github" } }, - "devenv": { - "inputs": { - "cachix": "cachix_2", - "flake-compat": [ - "continuwuity", - "cachix", - "flake-compat" - ], - "git-hooks": [ - "continuwuity", - "cachix", - "git-hooks" - ], - "nix": "nix", - "nixpkgs": [ - "continuwuity", - "cachix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1733323168, - "narHash": "sha256-d5DwB4MZvlaQpN6OQ4SLYxb5jA4UH5EtV5t5WOtjLPU=", - "owner": "cachix", - "repo": "devenv", - "rev": "efa9010b8b1cfd5dd3c7ed1e172a470c3b84a064", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "devenv", - "type": "github" - } - }, "devshell": { "inputs": { - "flake-utils": "flake-utils_3", + "flake-utils": "flake-utils_2", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -448,7 +248,7 @@ }, "devshell_2": { "inputs": { - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils_3", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -472,7 +272,7 @@ }, "devshell_3": { "inputs": { - "flake-utils": "flake-utils_5", + "flake-utils": "flake-utils_4", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -500,11 +300,11 @@ ] }, "locked": { - "lastModified": 1747274630, - "narHash": "sha256-87RJwXbfOHyzTB9LYagAQ6vOZhszCvd8Gvudu+gf3qo=", + "lastModified": 1747742835, + "narHash": "sha256-kYL4GCwwznsypvsnA20oyvW8zB/Dvn6K5G/tgMjVMT4=", "owner": "nix-community", "repo": "disko", - "rev": "ec7c109a4f794fce09aad87239eab7f66540b888", + "rev": "df522e787fdffc4f32ed3e1fca9ed0968a384d62", "type": "github" }, "original": { @@ -515,7 +315,7 @@ }, "dream2nix": { "inputs": { - "nixpkgs": "nixpkgs_12", + "nixpkgs": "nixpkgs_8", "purescript-overlay": "purescript-overlay", "pyproject-nix": "pyproject-nix" }, @@ -534,35 +334,12 @@ } }, "fenix": { - "inputs": { - "nixpkgs": [ - "continuwuity", - "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src" - }, - "locked": { - "lastModified": 1740724364, - "narHash": "sha256-D1jLIueJx1dPrP09ZZwTrPf4cubV+TsFMYbpYYTVj6A=", - "owner": "nix-community", - "repo": "fenix", - "rev": "edf7d9e431cda8782e729253835f178a356d3aab", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "main", - "repo": "fenix", - "type": "github" - } - }, - "fenix_2": { "inputs": { "nixpkgs": [ "tlaternet-webserver", "nixpkgs" ], - "rust-analyzer-src": "rust-analyzer-src_2" + "rust-analyzer-src": "rust-analyzer-src" }, "locked": { "lastModified": 1737181903, @@ -595,97 +372,48 @@ } }, "flake-compat_2": { - "flake": false, "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "type": "github" + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" } }, "flake-compat_3": { - "flake": false, "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "type": "github" + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" }, "original": { - "owner": "edolstra", - "ref": "master", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" } }, "flake-compat_4": { - "flake": false, "locked": { "lastModified": 1696426674, "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" + "revCount": 57, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" }, "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" } }, "flake-compat_5": { - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" - } - }, - "flake-compat_6": { - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" - } - }, - "flake-compat_7": { - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" - } - }, - "flake-compat_8": { "flake": false, "locked": { "lastModified": 1696426674, @@ -704,17 +432,19 @@ "flake-parts": { "inputs": { "nixpkgs-lib": [ - "continuwuity", - "attic", + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", "nixpkgs" ] }, "locked": { - "lastModified": 1722555600, - "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", + "lastModified": 1719745305, + "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "8471fe90ad337a8074e957b69ca4d0089218391d", + "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", "type": "github" }, "original": { @@ -726,19 +456,18 @@ "flake-parts_2": { "inputs": { "nixpkgs-lib": [ - "continuwuity", - "cachix", - "devenv", - "nix", + "sonnenshift", + "crate2nix", + "crate2nix_stable", "nixpkgs" ] }, "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "lastModified": 1719745305, + "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", "type": "github" }, "original": { @@ -748,53 +477,6 @@ } }, "flake-parts_3": { - "inputs": { - "nixpkgs-lib": [ - "sonnenshift", - "crate2nix", - "crate2nix_stable", - "crate2nix_stable", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1719745305, - "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_4": { - "inputs": { - "nixpkgs-lib": [ - "sonnenshift", - "crate2nix", - "crate2nix_stable", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1719745305, - "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_5": { "inputs": { "nixpkgs-lib": [ "sonnenshift", @@ -818,19 +500,18 @@ }, "flake-utils": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", "owner": "numtide", "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", "type": "github" }, "original": { "owner": "numtide", - "ref": "main", "repo": "flake-utils", "type": "github" } @@ -840,11 +521,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", "owner": "numtide", "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", "type": "github" }, "original": { @@ -893,24 +574,6 @@ "inputs": { "systems": "systems_6" }, - "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_6": { - "inputs": { - "systems": "systems_7" - }, "locked": { "lastModified": 1710146030, "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", @@ -945,41 +608,14 @@ "type": "github" } }, - "git-hooks": { - "inputs": { - "flake-compat": [ - "continuwuity", - "cachix", - "flake-compat" - ], - "gitignore": "gitignore", - "nixpkgs": [ - "continuwuity", - "cachix", - "nixpkgs" - ], - "nixpkgs-stable": "nixpkgs-stable_2" - }, - "locked": { - "lastModified": 1733318908, - "narHash": "sha256-SVQVsbafSM1dJ4fpgyBqLZ+Lft+jcQuMtEL3lQWx2Sk=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "6f4e2a2112050951a314d2733a994fbab94864c6", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, "gitignore": { "inputs": { "nixpkgs": [ - "continuwuity", - "cachix", - "git-hooks", + "sonnenshift", + "crate2nix", + "crate2nix_stable", + "crate2nix_stable", + "pre-commit-hooks", "nixpkgs" ] }, @@ -1003,7 +639,6 @@ "sonnenshift", "crate2nix", "crate2nix_stable", - "crate2nix_stable", "pre-commit-hooks", "nixpkgs" ] @@ -1027,7 +662,6 @@ "nixpkgs": [ "sonnenshift", "crate2nix", - "crate2nix_stable", "pre-commit-hooks", "nixpkgs" ] @@ -1046,141 +680,6 @@ "type": "github" } }, - "gitignore_4": { - "inputs": { - "nixpkgs": [ - "sonnenshift", - "crate2nix", - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "libgit2": { - "flake": false, - "locked": { - "lastModified": 1697646580, - "narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=", - "owner": "libgit2", - "repo": "libgit2", - "rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5", - "type": "github" - }, - "original": { - "owner": "libgit2", - "repo": "libgit2", - "type": "github" - } - }, - "liburing": { - "flake": false, - "locked": { - "lastModified": 1740613216, - "narHash": "sha256-NpPOBqNND3Qe9IwqYs0mJLGTmIx7e6FgUEBAnJ+1ZLA=", - "owner": "axboe", - "repo": "liburing", - "rev": "e1003e496e66f9b0ae06674869795edf772d5500", - "type": "github" - }, - "original": { - "owner": "axboe", - "ref": "master", - "repo": "liburing", - "type": "github" - } - }, - "nix": { - "inputs": { - "flake-compat": [ - "continuwuity", - "cachix", - "devenv" - ], - "flake-parts": "flake-parts_2", - "libgit2": "libgit2", - "nixpkgs": "nixpkgs_3", - "nixpkgs-23-11": [ - "continuwuity", - "cachix", - "devenv" - ], - "nixpkgs-regression": [ - "continuwuity", - "cachix", - "devenv" - ], - "pre-commit-hooks": [ - "continuwuity", - "cachix", - "devenv" - ] - }, - "locked": { - "lastModified": 1727438425, - "narHash": "sha256-X8ES7I1cfNhR9oKp06F6ir4Np70WGZU5sfCOuNBEwMg=", - "owner": "domenkozar", - "repo": "nix", - "rev": "f6c5ae4c1b2e411e6b1e6a8181cc84363d6a7546", - "type": "github" - }, - "original": { - "owner": "domenkozar", - "ref": "devenv-2.24", - "repo": "nix", - "type": "github" - } - }, - "nix-filter": { - "locked": { - "lastModified": 1731533336, - "narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=", - "owner": "numtide", - "repo": "nix-filter", - "rev": "f7653272fd234696ae94229839a99b73c9ab7de0", - "type": "github" - }, - "original": { - "owner": "numtide", - "ref": "main", - "repo": "nix-filter", - "type": "github" - } - }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "continuwuity", - "attic", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729742964, - "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=", - "owner": "nix-community", - "repo": "nix-github-actions", - "rev": "e04df33f62cdcf93d73e9a04142464753a16db67", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nix-github-actions", - "type": "github" - } - }, "nix-test-runner": { "flake": false, "locked": { @@ -1230,160 +729,6 @@ } }, "nixpkgs": { - "locked": { - "lastModified": 1726042813, - "narHash": "sha256-LnNKCCxnwgF+575y0pxUdlGZBO/ru1CtGHIqQVfvjlA=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "159be5db480d1df880a0135ca0bfed84c2f88353", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-stable": { - "locked": { - "lastModified": 1724316499, - "narHash": "sha256-Qb9MhKBUTCfWg/wqqaxt89Xfi6qTD3XpTzQ9eXi3JmE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "797f7dc49e0bc7fab4b57c021cdf68f595e47841", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-stable_2": { - "locked": { - "lastModified": 1730741070, - "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-unstable": { - "locked": { - "lastModified": 1747413287, - "narHash": "sha256-hOnqJr0tZBERWa29JWf9B3/8qr82mlt/UlKPvS7iYzA=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "b965e4c283060415956ccd39eee4ca34a6a56cf8", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable-small", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_10": { - "locked": { - "lastModified": 1719506693, - "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", - "path": "/nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source", - "rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a", - "type": "path" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, - "nixpkgs_11": { - "locked": { - "lastModified": 1719506693, - "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", - "path": "/nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source", - "rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a", - "type": "path" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, - "nixpkgs_12": { - "locked": { - "lastModified": 1729850857, - "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "41dea55321e5a999b17033296ac05fe8a8b5a257", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1730531603, - "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1717432640, - "narHash": "sha256-+f9c4/ZX5MWDOuB1rKoWj+lBNm0z0rs4CK47HBLxy1o=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "88269ab3044128b7c2f4c7d68448b2fb50456870", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1733212471, - "narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "55d15ad12a74eb7d4646254e13638ad0c4128776", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { "locked": { "lastModified": 1702272962, "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", @@ -1399,23 +744,23 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_2": { "locked": { - "lastModified": 1747418223, - "narHash": "sha256-DkCYFm09AR2+FPKcT7lD8iIMNXqTdesVvwKpCnqKiYg=", + "lastModified": 1748085680, + "narHash": "sha256-XG90Q/040NiV70gAVvoYbXg1lULbiwIzfkWmwSINyGQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d6c9326e40bb557ebb8c040b4375590bc06413f8", + "rev": "4e6eeca5ed45465087274fc9dc6bc2011254a0f3", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-24.11-small", + "ref": "nixos-25.05-small", "repo": "nixpkgs", "type": "github" } }, - "nixpkgs_7": { + "nixpkgs_3": { "locked": { "lastModified": 1700612854, "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", @@ -1431,7 +776,7 @@ "type": "github" } }, - "nixpkgs_8": { + "nixpkgs_4": { "locked": { "lastModified": 1715534503, "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", @@ -1447,7 +792,7 @@ "type": "github" } }, - "nixpkgs_9": { + "nixpkgs_5": { "locked": { "lastModified": 1715534503, "narHash": "sha256-5ZSVkFadZbFP1THataCaSf0JH2cAH3S29hU9rrxTEqk=", @@ -1463,6 +808,48 @@ "type": "github" } }, + "nixpkgs_6": { + "locked": { + "lastModified": 1719506693, + "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", + "path": "/nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source", + "rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a", + "type": "path" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "nixpkgs_7": { + "locked": { + "lastModified": 1719506693, + "narHash": "sha256-C8e9S7RzshSdHB7L+v9I51af1gDM5unhJ2xO1ywxNH8=", + "path": "/nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source", + "rev": "b2852eb9365c6de48ffb0dc2c9562591f652242a", + "type": "path" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "nixpkgs_8": { + "locked": { + "lastModified": 1729850857, + "narHash": "sha256-WvLXzNNnnw+qpFOmgaM3JUlNEH+T4s22b5i2oyyCpXE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "41dea55321e5a999b17033296ac05fe8a8b5a257", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "pre-commit-hooks": { "inputs": { "flake-compat": [ @@ -1472,7 +859,7 @@ "crate2nix_stable", "flake-compat" ], - "gitignore": "gitignore_2", + "gitignore": "gitignore", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -1510,7 +897,7 @@ "crate2nix_stable", "flake-compat" ], - "gitignore": "gitignore_3", + "gitignore": "gitignore_2", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -1545,8 +932,8 @@ "crate2nix", "flake-compat" ], - "flake-utils": "flake-utils_6", - "gitignore": "gitignore_4", + "flake-utils": "flake-utils_5", + "gitignore": "gitignore_3", "nixpkgs": [ "sonnenshift", "crate2nix", @@ -1574,7 +961,7 @@ }, "purescript-overlay": { "inputs": { - "flake-compat": "flake-compat_8", + "flake-compat": "flake-compat_5", "nixpkgs": [ "tlaternet-webserver", "dream2nix", @@ -1613,54 +1000,18 @@ "type": "github" } }, - "rocksdb": { - "flake": false, - "locked": { - "lastModified": 1741308171, - "narHash": "sha256-YdBvdQ75UJg5ffwNjxizpviCVwVDJnBkM8ZtGIduMgY=", - "owner": "girlbossceo", - "repo": "rocksdb", - "rev": "3ce04794bcfbbb0d2e6f81ae35fc4acf688b6986", - "type": "github" - }, - "original": { - "owner": "girlbossceo", - "ref": "v9.11.1", - "repo": "rocksdb", - "type": "github" - } - }, "root": { "inputs": { - "continuwuity": "continuwuity", "deploy-rs": "deploy-rs", "disko": "disko", "foundryvtt": "foundryvtt", - "nixpkgs": "nixpkgs_6", - "nixpkgs-unstable": "nixpkgs-unstable", + "nixpkgs": "nixpkgs_2", "sonnenshift": "sonnenshift", "sops-nix": "sops-nix", "tlaternet-webserver": "tlaternet-webserver" } }, "rust-analyzer-src": { - "flake": false, - "locked": { - "lastModified": 1740691488, - "narHash": "sha256-Fs6vBrByuiOf2WO77qeMDMTXcTGzrIMqLBv+lNeywwM=", - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "fe3eda77d3a7ce212388bda7b6cec8bffcc077e5", - "type": "github" - }, - "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" - } - }, - "rust-analyzer-src_2": { "flake": false, "locked": { "lastModified": 1737140097, @@ -1728,11 +1079,11 @@ ] }, "locked": { - "lastModified": 1746485181, - "narHash": "sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB+qsl9BZUnRvg=", + "lastModified": 1747603214, + "narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=", "owner": "Mic92", "repo": "sops-nix", - "rev": "e93ee1d900ad264d65e9701a5c6f895683433386", + "rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd", "type": "github" }, "original": { @@ -1831,25 +1182,10 @@ "type": "github" } }, - "systems_7": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "tlaternet-webserver": { "inputs": { "dream2nix": "dream2nix", - "fenix": "fenix_2", + "fenix": "fenix", "nixpkgs": [ "nixpkgs" ] @@ -1870,7 +1206,7 @@ }, "utils": { "inputs": { - "systems": "systems_2" + "systems": "systems" }, "locked": { "lastModified": 1701680307, From 94ec261a94a844f33d5f98e5633f260449e7cf64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sun, 25 May 2025 02:11:31 +0800 Subject: [PATCH 180/196] chore(foundryvtt): Upgrade to version 13 --- configuration/services/foundryvtt.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configuration/services/foundryvtt.nix b/configuration/services/foundryvtt.nix index f25bbcd..6c475a3 100644 --- a/configuration/services/foundryvtt.nix +++ b/configuration/services/foundryvtt.nix @@ -18,7 +18,7 @@ in minifyStaticFiles = true; proxySSL = true; proxyPort = 443; - package = flake-inputs.foundryvtt.packages.${pkgs.system}.foundryvtt_11; + package = flake-inputs.foundryvtt.packages.${pkgs.system}.foundryvtt_13; }; nginx.virtualHosts."${domain}" = From 3f1825946de578e4a77f1d8330f6d42e4599eb84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Fri, 13 Jun 2025 08:09:53 +0800 Subject: [PATCH 181/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'deploy-rs': 'github:serokell/deploy-rs/aa07eb05537d4cd025e2310397a6adcedfe72c76' (2024-09-27) → 'github:serokell/deploy-rs/6bc76b872374845ba9d645a2f012b764fecd765f' (2025-06-05) • Updated input 'deploy-rs/flake-compat': 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33' (2023-10-04) → 'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec' (2024-12-04) • Updated input 'deploy-rs/nixpkgs': 'github:NixOS/nixpkgs/e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d' (2023-12-11) → 'github:NixOS/nixpkgs/bd3bac8bfb542dbde7ffffb6987a1a1f9d41699f' (2025-03-26) • Updated input 'deploy-rs/utils': 'github:numtide/flake-utils/4022d587cbbfd70fe950c1e2083a02621806a725' (2023-12-04) → 'github:numtide/flake-utils/11707dc2f618dd54ca8739b309ec4fc024de578b' (2024-11-13) • Updated input 'disko': 'github:nix-community/disko/df522e787fdffc4f32ed3e1fca9ed0968a384d62' (2025-05-20) → 'github:nix-community/disko/dfa4d1b9c39c0342ef133795127a3af14598017a' (2025-06-09) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/f1b401831d796dd94cf5a11b65fd169a199d4ff0' (2025-05-10) → 'github:reckenrode/nix-foundryvtt/d5fe29ab69176aa0c7727fa7c57889a2aa577355' (2025-05-28) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/4e6eeca5ed45465087274fc9dc6bc2011254a0f3' (2025-05-24) → 'github:nixos/nixpkgs/a31e0bd87fdf782f68011eea96199874c1a8316b' (2025-06-12) • Updated input 'sonnenshift': 'git+ssh://git@github.com/sonnenshift/battery-manager?ref=refs/heads/main&rev=a1b48cf2ba194054e2d8816c94a84cebc4fb5de0' (2025-02-20) → 'git+ssh://git@github.com/sonnenshift/battery-manager?ref=refs/heads/main&rev=429036aa8630d2325f8a9f067cc041d628279a8e' (2025-05-25) • Updated input 'sops-nix': 'github:Mic92/sops-nix/8d215e1c981be3aa37e47aeabd4e61bb069548fd' (2025-05-18) → 'github:Mic92/sops-nix/50754dfaa0e24e313c626900d44ef431f3210138' (2025-06-10) --- flake.lock | 56 +++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/flake.lock b/flake.lock index 885b579..8375b1b 100644 --- a/flake.lock +++ b/flake.lock @@ -208,11 +208,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1727447169, - "narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=", + "lastModified": 1749105467, + "narHash": "sha256-hXh76y/wDl15almBcqvjryB50B0BaiXJKk20f314RoE=", "owner": "serokell", "repo": "deploy-rs", - "rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76", + "rev": "6bc76b872374845ba9d645a2f012b764fecd765f", "type": "github" }, "original": { @@ -300,11 +300,11 @@ ] }, "locked": { - "lastModified": 1747742835, - "narHash": "sha256-kYL4GCwwznsypvsnA20oyvW8zB/Dvn6K5G/tgMjVMT4=", + "lastModified": 1750903843, + "narHash": "sha256-Ng9+f0H5/dW+mq/XOKvB9uwvGbsuiiO6HrPdAcVglCs=", "owner": "nix-community", "repo": "disko", - "rev": "df522e787fdffc4f32ed3e1fca9ed0968a384d62", + "rev": "83c4da299c1d7d300f8c6fd3a72ac46cb0d59aae", "type": "github" }, "original": { @@ -358,11 +358,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "owner": "edolstra", "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "type": "github" }, "original": { @@ -595,11 +595,11 @@ ] }, "locked": { - "lastModified": 1746877938, - "narHash": "sha256-N9J96pSPg4vbozV+ZZ++dwLnMIf2Le6ONNMO0kZCj1M=", + "lastModified": 1748450994, + "narHash": "sha256-BWdJ+3lPmK99kjWfBlppKSRIH0sBlT1fpUkSvlgmvoA=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "f1b401831d796dd94cf5a11b65fd169a199d4ff0", + "rev": "d5fe29ab69176aa0c7727fa7c57889a2aa577355", "type": "github" }, "original": { @@ -730,11 +730,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1702272962, - "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "lastModified": 1743014863, + "narHash": "sha256-jAIUqsiN2r3hCuHji80U7NNEafpIMBXiwKlSrjWMlpg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", + "rev": "bd3bac8bfb542dbde7ffffb6987a1a1f9d41699f", "type": "github" }, "original": { @@ -746,11 +746,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1748085680, - "narHash": "sha256-XG90Q/040NiV70gAVvoYbXg1lULbiwIzfkWmwSINyGQ=", + "lastModified": 1750960134, + "narHash": "sha256-5FAvzqSmG34Y6AAnOJU7DB1ABSCn5LTSAV3B7CPR0nA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "4e6eeca5ed45465087274fc9dc6bc2011254a0f3", + "rev": "ba6b0351137bdefe18cfbab2de47deb59c8096f5", "type": "github" }, "original": { @@ -1059,11 +1059,11 @@ ] }, "locked": { - "lastModified": 1740082109, - "narHash": "sha256-WdRNkwsIotFOSymee/yQyH46RmYtuxd1FENhvGL4KRc=", + "lastModified": 1748144928, + "narHash": "sha256-OPdi6AjrWWwZlukNwDHDWAf1CCFkHsf8JbA3rJoibXM=", "ref": "refs/heads/main", - "rev": "a1b48cf2ba194054e2d8816c94a84cebc4fb5de0", - "revCount": 23, + "rev": "429036aa8630d2325f8a9f067cc041d628279a8e", + "revCount": 24, "type": "git", "url": "ssh://git@github.com/sonnenshift/battery-manager" }, @@ -1079,11 +1079,11 @@ ] }, "locked": { - "lastModified": 1747603214, - "narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=", + "lastModified": 1750119275, + "narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=", "owner": "Mic92", "repo": "sops-nix", - "rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd", + "rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2", "type": "github" }, "original": { @@ -1209,11 +1209,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { From 0b5b6ef42102c935b663317c7e68e43c697e593e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 7 Nov 2024 20:26:43 +0100 Subject: [PATCH 182/196] feat: Add minecraft server --- configuration/default.nix | 6 +- configuration/services/minecraft.nix | 83 ++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+), 5 deletions(-) create mode 100644 configuration/services/minecraft.nix diff --git a/configuration/default.nix b/configuration/default.nix index 0377e9c..1b9531d 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -21,6 +21,7 @@ ./services/gitea.nix ./services/immich.nix ./services/metrics + ./services/minecraft.nix ./services/nextcloud.nix ./services/webserver.nix ./services/wireguard.nix @@ -63,8 +64,6 @@ 8448 # starbound 21025 - # Minecraft - 25565 config.services.coturn.listening-port config.services.coturn.tls-listening-port @@ -73,9 +72,6 @@ ]; allowedUDPPorts = [ - # More minecraft - 25565 - config.services.coturn.listening-port config.services.coturn.tls-listening-port config.services.coturn.alt-listening-port diff --git a/configuration/services/minecraft.nix b/configuration/services/minecraft.nix new file mode 100644 index 0000000..0477f44 --- /dev/null +++ b/configuration/services/minecraft.nix @@ -0,0 +1,83 @@ +{ + pkgs, + lib, + config, + ... +}: +{ + services.minecraft-server = { + enable = true; + eula = true; + # jvmOpts are set using a file for forge + # jvmOpts = "-Xmx8G -Xms8G"; + openFirewall = true; + + declarative = true; + + whitelist = { + tlater = "140d177a-966f-41b8-a4c0-e305babd291b"; + romino25 = "59cd1648-14a4-4bcf-8f5a-2e1bde678f2c"; + lasi25 = "0ab6e3d1-544a-47e7-8538-2e6c248e49a4"; + }; + + serverProperties = { + allow-flight = true; + difficulty = "hard"; + motd = "tlater.net"; + spawn-protection = 1; + white-list = true; + enable-query = true; + enable-status = true; + + # Allows the server to write chunks without hogging the main + # thread... + sync-chunk-writes = false; + # Disables chat reporting, because we don't need any of that + # drama on a lil' friends-only server. + enforce-secure-profile = false; + }; + + package = pkgs.writeShellApplication { + name = "minecraft-server"; + runtimeInputs = with pkgs; [ jdk17_headless ]; + + text = '' + exec /var/lib/minecraft/run.sh $@ + ''; + }; + }; + + systemd.services.minecraft-server = { + path = with pkgs; [ jdk17_headless ]; + + # Since we read from our own HTTP server, we need to wait for it + # to be up + after = [ "nginx.service" ]; + + serviceConfig = { + # Use packwiz to install mods + ExecStartPre = [ + "${pkgs.jdk17_headless}/bin/java -jar ${config.services.minecraft-server.dataDir}/packwiz-installer-bootstrap.jar -g -s server 'https://minecraft.${config.services.nginx.domain}/cobblemon-pack/pack.toml'" + ]; + # Forge requires some bonus JVM options, which they include in a + # little `run.sh` script + ExecStart = lib.mkForce "${config.services.minecraft-server.dataDir}/run.sh --nogui"; + }; + }; + + systemd.tmpfiles.settings."10-minecraft" = { + "/srv/minecraft".d = { + user = "nginx"; + group = "minecraft"; + mode = "0775"; + }; + }; + + services.nginx.virtualHosts."minecraft.${config.services.nginx.domain}" = { + forceSSL = true; + useACMEHost = "tlater.net"; + enableHSTS = true; + + root = "/srv/minecraft"; + }; +} From 91d158637f0014affd8ca17e114938d1cf68024c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Mon, 30 Jun 2025 22:11:20 +0800 Subject: [PATCH 183/196] chore(flake.nix): Remove unused cargo build deps --- flake.lock | 6 +++--- flake.nix | 8 +------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/flake.lock b/flake.lock index 8375b1b..fc55466 100644 --- a/flake.lock +++ b/flake.lock @@ -746,11 +746,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1750960134, - "narHash": "sha256-5FAvzqSmG34Y6AAnOJU7DB1ABSCn5LTSAV3B7CPR0nA=", + "lastModified": 1751230698, + "narHash": "sha256-ANWE9dHPeACz3SIbUhbWZforTgfAvOS5Tg1l4yYa/B0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ba6b0351137bdefe18cfbab2de47deb59c8096f5", + "rev": "e410afb41ba16a2ceeaeff85c536d35f10bbbdcf", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index da8455f..52e3a89 100644 --- a/flake.nix +++ b/flake.nix @@ -154,13 +154,7 @@ nixpkgs-fmt - cargo - clippy - rustc - rustfmt - rust-analyzer - pkg-config - openssl + packwiz ]; }; }; From e32c256369918c2810be205a906db71cd6d8af39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Tue, 1 Jul 2025 07:15:16 +0800 Subject: [PATCH 184/196] feat(minecraft): Add minecraft modpack --- configuration/services/minecraft.nix | 10 + flake.nix | 29 +- pkgs/minecraftmon/.packwizignore | 2 + .../extra/config/cataclysm.toml | 811 +++++++++++++++++ .../extra/config/inventoryhud-client.toml | 249 ++++++ .../extra/config/iris.properties | 9 + .../extra/config/sodium-extra-options.json | 66 ++ .../config/sodiumdynamiclights-client.toml | 18 + .../extra/config/sodiumextras-client.toml | 135 +++ .../config/defaultoptions/keybindings.txt | 50 ++ .../config/defaultoptions/options.txt | 1 + .../config/defaultoptions/servers.dat | Bin 0 -> 89 bytes pkgs/minecraftmon/index.toml | 842 ++++++++++++++++++ .../mods/aether-emissivity.pw.toml | 13 + .../aether-enhanced-extinguishing.pw.toml | 13 + pkgs/minecraftmon/mods/aether.pw.toml | 13 + pkgs/minecraftmon/mods/ambientsounds.pw.toml | 13 + pkgs/minecraftmon/mods/appleskin.pw.toml | 13 + .../mods/architectury-api.pw.toml | 13 + .../mods/armourers-workshop.pw.toml | 13 + pkgs/minecraftmon/mods/attributefix.pw.toml | 13 + .../mods/bad-wither-no-cookie.pw.toml | 13 + .../mods/badoptimizations.pw.toml | 13 + pkgs/minecraftmon/mods/balm.pw.toml | 13 + .../mods/barbeques-delight-forge.pw.toml | 13 + pkgs/minecraftmon/mods/berry-good.pw.toml | 13 + .../mods/better-advancements.pw.toml | 13 + .../mods/better-animations-collection.pw.toml | 13 + .../mods/better-third-person.pw.toml | 13 + pkgs/minecraftmon/mods/betterf3.pw.toml | 13 + pkgs/minecraftmon/mods/blueprint.pw.toml | 13 + pkgs/minecraftmon/mods/bookshelf-lib.pw.toml | 13 + .../cant-sleep-clowns-will-eat-me.pw.toml | 13 + pkgs/minecraftmon/mods/cloth-config.pw.toml | 13 + pkgs/minecraftmon/mods/clumps.pw.toml | 13 + .../mods/cobblemon-additions.pw.toml | 13 + .../mods/cobblemon-counter.pw.toml | 13 + .../cobblemon-fight-or-flight-reborn.pw.toml | 13 + .../mods/cobblemon-integrations.pw.toml | 13 + .../mods/cobblemon-pokenav.pw.toml | 13 + .../mods/cobblemon-unchained.pw.toml | 13 + pkgs/minecraftmon/mods/cobblemon.pw.toml | 13 + .../mods/colorwheel-patcher.pw.toml | 13 + pkgs/minecraftmon/mods/colorwheel.pw.toml | 13 + pkgs/minecraftmon/mods/comforts.pw.toml | 13 + pkgs/minecraftmon/mods/connector.pw.toml | 13 + pkgs/minecraftmon/mods/controlling.pw.toml | 13 + pkgs/minecraftmon/mods/corn-delight.pw.toml | 13 + pkgs/minecraftmon/mods/corpse.pw.toml | 13 + .../mods/crabbers-delight.pw.toml | 13 + .../mods/create-dragons-plus.pw.toml | 13 + .../mods/create-enchantment-industry.pw.toml | 13 + pkgs/minecraftmon/mods/create.pw.toml | 13 + pkgs/minecraftmon/mods/creativecore.pw.toml | 13 + pkgs/minecraftmon/mods/curios.pw.toml | 13 + pkgs/minecraftmon/mods/cut-through.pw.toml | 13 + pkgs/minecraftmon/mods/deep-aether.pw.toml | 13 + .../minecraftmon/mods/default-options.pw.toml | 13 + .../minecraftmon/mods/diagonal-fences.pw.toml | 13 + pkgs/minecraftmon/mods/diagonal-walls.pw.toml | 13 + .../mods/diagonal-windows.pw.toml | 13 + .../minecraftmon/mods/distanthorizons.pw.toml | 13 + .../mods/distinguished-potions.pw.toml | 13 + pkgs/minecraftmon/mods/dynamic-fps.pw.toml | 13 + pkgs/minecraftmon/mods/edivadlib.pw.toml | 13 + .../mods/emi-create-schematics.pw.toml | 13 + pkgs/minecraftmon/mods/emi-enchanting.pw.toml | 13 + pkgs/minecraftmon/mods/emi-loot.pw.toml | 13 + pkgs/minecraftmon/mods/emi-ores.pw.toml | 13 + .../mods/emi-professions-(emip).pw.toml | 13 + pkgs/minecraftmon/mods/emi.pw.toml | 13 + pkgs/minecraftmon/mods/emiffect.pw.toml | 13 + .../mods/enchantment-descriptions.pw.toml | 13 + pkgs/minecraftmon/mods/ends-delight.pw.toml | 13 + pkgs/minecraftmon/mods/entityculling.pw.toml | 13 + pkgs/minecraftmon/mods/every-compat.pw.toml | 13 + .../mods/extra-mod-integrations.pw.toml | 13 + pkgs/minecraftmon/mods/extrastorage.pw.toml | 13 + .../minecraftmon/mods/farmers-delight.pw.toml | 13 + .../mods/forgified-fabric-api.pw.toml | 13 + ...iends-and-foes-beekeeper-hut-forge.pw.toml | 13 + ...s-and-foes-flowery-mooblooms-forge.pw.toml | 13 + .../mods/friends-and-foes-forge.pw.toml | 13 + pkgs/minecraftmon/mods/fruits-delight.pw.toml | 13 + pkgs/minecraftmon/mods/fzzy-config.pw.toml | 13 + pkgs/minecraftmon/mods/geckolib.pw.toml | 13 + .../mods/hardcore-revival.pw.toml | 13 + .../mods/immersiveengineering.pw.toml | 13 + .../mods/immersivemusicmod.pw.toml | 13 + .../mods/inventory-hud-forge.pw.toml | 13 + pkgs/minecraftmon/mods/iris.pw.toml | 13 + .../mods/irons-spells-n-spellbooks.pw.toml | 13 + pkgs/minecraftmon/mods/jade.pw.toml | 13 + pkgs/minecraftmon/mods/jei.pw.toml | 13 + pkgs/minecraftmon/mods/journey-pac.pw.toml | 13 + .../mods/journeymap-integration.pw.toml | 13 + pkgs/minecraftmon/mods/journeymap.pw.toml | 13 + pkgs/minecraftmon/mods/kiwi.pw.toml | 13 + .../mods/kotlin-for-forge.pw.toml | 13 + .../mods/l_enders-cataclysm.pw.toml | 13 + .../mods/leave-my-bars-alone.pw.toml | 13 + pkgs/minecraftmon/mods/leaves-be-gone.pw.toml | 13 + pkgs/minecraftmon/mods/lionfish-api.pw.toml | 13 + pkgs/minecraftmon/mods/lithostitched.pw.toml | 13 + pkgs/minecraftmon/mods/magnum-torch.pw.toml | 13 + pkgs/minecraftmon/mods/mmlib.pw.toml | 13 + pkgs/minecraftmon/mods/modelfix.pw.toml | 13 + ...ect-descriptions-(meed)-jeed-addon.pw.toml | 13 + pkgs/minecraftmon/mods/modernfix.pw.toml | 13 + pkgs/minecraftmon/mods/moonlight.pw.toml | 13 + pkgs/minecraftmon/mods/more-concrete.pw.toml | 13 + pkgs/minecraftmon/mods/mouse-tweaks.pw.toml | 13 + .../minecraftmon/mods/no-chat-reports.pw.toml | 13 + pkgs/minecraftmon/mods/noisium.pw.toml | 13 + .../mods/notenoughrecipebook.pw.toml | 13 + pkgs/minecraftmon/mods/nullscape.pw.toml | 13 + pkgs/minecraftmon/mods/oceans-delight.pw.toml | 13 + pkgs/minecraftmon/mods/octo-lib.pw.toml | 13 + .../mods/ominous-phantoms.pw.toml | 13 + pkgs/minecraftmon/mods/open-loader.pw.toml | 13 + .../mods/open-parties-and-claims.pw.toml | 13 + .../mods/overflowing-bars.pw.toml | 13 + pkgs/minecraftmon/mods/owo-lib.pw.toml | 13 + .../mods/pick-up-notifier.pw.toml | 13 + pkgs/minecraftmon/mods/platter.pw.toml | 13 + pkgs/minecraftmon/mods/playeranimator.pw.toml | 13 + pkgs/minecraftmon/mods/prickle.pw.toml | 13 + pkgs/minecraftmon/mods/puzzles-lib.pw.toml | 13 + .../mods/reeses-sodium-options.pw.toml | 13 + .../refined-storage-emi-integration.pw.toml | 13 + .../minecraftmon/mods/refined-storage.pw.toml | 13 + .../mods/resource-pack-overrides.pw.toml | 13 + .../minecraftmon/mods/resourceful-lib.pw.toml | 13 + .../mods/respawning-animals.pw.toml | 13 + pkgs/minecraftmon/mods/rrls.pw.toml | 13 + pkgs/minecraftmon/mods/searchables.pw.toml | 13 + pkgs/minecraftmon/mods/silent-gear.pw.toml | 13 + pkgs/minecraftmon/mods/silent-lib.pw.toml | 13 + ...impletms-tms-and-trs-for-cobblemon.pw.toml | 13 + .../minecraftmon/mods/snow-real-magic.pw.toml | 13 + .../mods/snow-under-trees.pw.toml | 13 + .../mods/sodium-dynamic-lights.pw.toml | 13 + pkgs/minecraftmon/mods/sodium-extra.pw.toml | 13 + pkgs/minecraftmon/mods/sodium-extras.pw.toml | 13 + .../mods/sodium-options-api.pw.toml | 13 + pkgs/minecraftmon/mods/sodium.pw.toml | 13 + .../mods/sophisticated-backpacks.pw.toml | 13 + .../mods/sophisticated-core.pw.toml | 13 + ...ticated-storage-create-integration.pw.toml | 13 + .../mods/sophisticated-storage.pw.toml | 13 + .../mods/spice-of-life-onion.pw.toml | 13 + .../minecraftmon/mods/storage-delight.pw.toml | 13 + .../minecraftmon/mods/stylish-effects.pw.toml | 13 + pkgs/minecraftmon/mods/subtle-effects.pw.toml | 13 + .../minecraftmon/mods/tax-free-levels.pw.toml | 13 + pkgs/minecraftmon/mods/tectonic.pw.toml | 13 + pkgs/minecraftmon/mods/terralith.pw.toml | 13 + pkgs/minecraftmon/mods/tidal-towns.pw.toml | 13 + pkgs/minecraftmon/mods/wall-jump-txf.pw.toml | 13 + pkgs/minecraftmon/mods/yacl.pw.toml | 13 + .../mods/yeetus-experimentus.pw.toml | 13 + pkgs/minecraftmon/mods/yungs-api.pw.toml | 13 + .../mods/yungs-better-desert-temples.pw.toml | 13 + .../mods/yungs-better-dungeons.pw.toml | 13 + .../mods/yungs-better-end-island.pw.toml | 13 + .../mods/yungs-better-jungle-temples.pw.toml | 13 + .../mods/yungs-better-mineshafts.pw.toml | 13 + .../yungs-better-nether-fortresses.pw.toml | 13 + .../mods/yungs-better-ocean-monuments.pw.toml | 13 + .../mods/yungs-better-strongholds.pw.toml | 13 + .../mods/yungs-better-witch-huts.pw.toml | 13 + pkgs/minecraftmon/mods/yungs-bridges.pw.toml | 13 + pkgs/minecraftmon/mods/yungs-extras.pw.toml | 13 + pkgs/minecraftmon/pack.toml | 15 + .../complementary-reimagined.pw.toml | 13 + 175 files changed, 4316 insertions(+), 14 deletions(-) create mode 100644 pkgs/minecraftmon/.packwizignore create mode 100644 pkgs/minecraftmon/config/defaultoptions/extra/config/cataclysm.toml create mode 100644 pkgs/minecraftmon/config/defaultoptions/extra/config/inventoryhud-client.toml create mode 100644 pkgs/minecraftmon/config/defaultoptions/extra/config/iris.properties create mode 100644 pkgs/minecraftmon/config/defaultoptions/extra/config/sodium-extra-options.json create mode 100644 pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumdynamiclights-client.toml create mode 100644 pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumextras-client.toml create mode 100644 pkgs/minecraftmon/config/defaultoptions/keybindings.txt create mode 100644 pkgs/minecraftmon/config/defaultoptions/options.txt create mode 100644 pkgs/minecraftmon/config/defaultoptions/servers.dat create mode 100644 pkgs/minecraftmon/index.toml create mode 100644 pkgs/minecraftmon/mods/aether-emissivity.pw.toml create mode 100644 pkgs/minecraftmon/mods/aether-enhanced-extinguishing.pw.toml create mode 100644 pkgs/minecraftmon/mods/aether.pw.toml create mode 100644 pkgs/minecraftmon/mods/ambientsounds.pw.toml create mode 100644 pkgs/minecraftmon/mods/appleskin.pw.toml create mode 100644 pkgs/minecraftmon/mods/architectury-api.pw.toml create mode 100644 pkgs/minecraftmon/mods/armourers-workshop.pw.toml create mode 100644 pkgs/minecraftmon/mods/attributefix.pw.toml create mode 100644 pkgs/minecraftmon/mods/bad-wither-no-cookie.pw.toml create mode 100644 pkgs/minecraftmon/mods/badoptimizations.pw.toml create mode 100644 pkgs/minecraftmon/mods/balm.pw.toml create mode 100644 pkgs/minecraftmon/mods/barbeques-delight-forge.pw.toml create mode 100644 pkgs/minecraftmon/mods/berry-good.pw.toml create mode 100644 pkgs/minecraftmon/mods/better-advancements.pw.toml create mode 100644 pkgs/minecraftmon/mods/better-animations-collection.pw.toml create mode 100644 pkgs/minecraftmon/mods/better-third-person.pw.toml create mode 100644 pkgs/minecraftmon/mods/betterf3.pw.toml create mode 100644 pkgs/minecraftmon/mods/blueprint.pw.toml create mode 100644 pkgs/minecraftmon/mods/bookshelf-lib.pw.toml create mode 100644 pkgs/minecraftmon/mods/cant-sleep-clowns-will-eat-me.pw.toml create mode 100644 pkgs/minecraftmon/mods/cloth-config.pw.toml create mode 100644 pkgs/minecraftmon/mods/clumps.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon-additions.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon-counter.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon-fight-or-flight-reborn.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon-integrations.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon-pokenav.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon-unchained.pw.toml create mode 100644 pkgs/minecraftmon/mods/cobblemon.pw.toml create mode 100644 pkgs/minecraftmon/mods/colorwheel-patcher.pw.toml create mode 100644 pkgs/minecraftmon/mods/colorwheel.pw.toml create mode 100644 pkgs/minecraftmon/mods/comforts.pw.toml create mode 100644 pkgs/minecraftmon/mods/connector.pw.toml create mode 100644 pkgs/minecraftmon/mods/controlling.pw.toml create mode 100644 pkgs/minecraftmon/mods/corn-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/corpse.pw.toml create mode 100644 pkgs/minecraftmon/mods/crabbers-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/create-dragons-plus.pw.toml create mode 100644 pkgs/minecraftmon/mods/create-enchantment-industry.pw.toml create mode 100644 pkgs/minecraftmon/mods/create.pw.toml create mode 100644 pkgs/minecraftmon/mods/creativecore.pw.toml create mode 100644 pkgs/minecraftmon/mods/curios.pw.toml create mode 100644 pkgs/minecraftmon/mods/cut-through.pw.toml create mode 100644 pkgs/minecraftmon/mods/deep-aether.pw.toml create mode 100644 pkgs/minecraftmon/mods/default-options.pw.toml create mode 100644 pkgs/minecraftmon/mods/diagonal-fences.pw.toml create mode 100644 pkgs/minecraftmon/mods/diagonal-walls.pw.toml create mode 100644 pkgs/minecraftmon/mods/diagonal-windows.pw.toml create mode 100644 pkgs/minecraftmon/mods/distanthorizons.pw.toml create mode 100644 pkgs/minecraftmon/mods/distinguished-potions.pw.toml create mode 100644 pkgs/minecraftmon/mods/dynamic-fps.pw.toml create mode 100644 pkgs/minecraftmon/mods/edivadlib.pw.toml create mode 100644 pkgs/minecraftmon/mods/emi-create-schematics.pw.toml create mode 100644 pkgs/minecraftmon/mods/emi-enchanting.pw.toml create mode 100644 pkgs/minecraftmon/mods/emi-loot.pw.toml create mode 100644 pkgs/minecraftmon/mods/emi-ores.pw.toml create mode 100644 pkgs/minecraftmon/mods/emi-professions-(emip).pw.toml create mode 100644 pkgs/minecraftmon/mods/emi.pw.toml create mode 100644 pkgs/minecraftmon/mods/emiffect.pw.toml create mode 100644 pkgs/minecraftmon/mods/enchantment-descriptions.pw.toml create mode 100644 pkgs/minecraftmon/mods/ends-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/entityculling.pw.toml create mode 100644 pkgs/minecraftmon/mods/every-compat.pw.toml create mode 100644 pkgs/minecraftmon/mods/extra-mod-integrations.pw.toml create mode 100644 pkgs/minecraftmon/mods/extrastorage.pw.toml create mode 100644 pkgs/minecraftmon/mods/farmers-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/forgified-fabric-api.pw.toml create mode 100644 pkgs/minecraftmon/mods/friends-and-foes-beekeeper-hut-forge.pw.toml create mode 100644 pkgs/minecraftmon/mods/friends-and-foes-flowery-mooblooms-forge.pw.toml create mode 100644 pkgs/minecraftmon/mods/friends-and-foes-forge.pw.toml create mode 100644 pkgs/minecraftmon/mods/fruits-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/fzzy-config.pw.toml create mode 100644 pkgs/minecraftmon/mods/geckolib.pw.toml create mode 100644 pkgs/minecraftmon/mods/hardcore-revival.pw.toml create mode 100644 pkgs/minecraftmon/mods/immersiveengineering.pw.toml create mode 100644 pkgs/minecraftmon/mods/immersivemusicmod.pw.toml create mode 100644 pkgs/minecraftmon/mods/inventory-hud-forge.pw.toml create mode 100644 pkgs/minecraftmon/mods/iris.pw.toml create mode 100644 pkgs/minecraftmon/mods/irons-spells-n-spellbooks.pw.toml create mode 100644 pkgs/minecraftmon/mods/jade.pw.toml create mode 100644 pkgs/minecraftmon/mods/jei.pw.toml create mode 100644 pkgs/minecraftmon/mods/journey-pac.pw.toml create mode 100644 pkgs/minecraftmon/mods/journeymap-integration.pw.toml create mode 100644 pkgs/minecraftmon/mods/journeymap.pw.toml create mode 100644 pkgs/minecraftmon/mods/kiwi.pw.toml create mode 100644 pkgs/minecraftmon/mods/kotlin-for-forge.pw.toml create mode 100644 pkgs/minecraftmon/mods/l_enders-cataclysm.pw.toml create mode 100644 pkgs/minecraftmon/mods/leave-my-bars-alone.pw.toml create mode 100644 pkgs/minecraftmon/mods/leaves-be-gone.pw.toml create mode 100644 pkgs/minecraftmon/mods/lionfish-api.pw.toml create mode 100644 pkgs/minecraftmon/mods/lithostitched.pw.toml create mode 100644 pkgs/minecraftmon/mods/magnum-torch.pw.toml create mode 100644 pkgs/minecraftmon/mods/mmlib.pw.toml create mode 100644 pkgs/minecraftmon/mods/modelfix.pw.toml create mode 100644 pkgs/minecraftmon/mods/moderately-enough-effect-descriptions-(meed)-jeed-addon.pw.toml create mode 100644 pkgs/minecraftmon/mods/modernfix.pw.toml create mode 100644 pkgs/minecraftmon/mods/moonlight.pw.toml create mode 100644 pkgs/minecraftmon/mods/more-concrete.pw.toml create mode 100644 pkgs/minecraftmon/mods/mouse-tweaks.pw.toml create mode 100644 pkgs/minecraftmon/mods/no-chat-reports.pw.toml create mode 100644 pkgs/minecraftmon/mods/noisium.pw.toml create mode 100644 pkgs/minecraftmon/mods/notenoughrecipebook.pw.toml create mode 100644 pkgs/minecraftmon/mods/nullscape.pw.toml create mode 100644 pkgs/minecraftmon/mods/oceans-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/octo-lib.pw.toml create mode 100644 pkgs/minecraftmon/mods/ominous-phantoms.pw.toml create mode 100644 pkgs/minecraftmon/mods/open-loader.pw.toml create mode 100644 pkgs/minecraftmon/mods/open-parties-and-claims.pw.toml create mode 100644 pkgs/minecraftmon/mods/overflowing-bars.pw.toml create mode 100644 pkgs/minecraftmon/mods/owo-lib.pw.toml create mode 100644 pkgs/minecraftmon/mods/pick-up-notifier.pw.toml create mode 100644 pkgs/minecraftmon/mods/platter.pw.toml create mode 100644 pkgs/minecraftmon/mods/playeranimator.pw.toml create mode 100644 pkgs/minecraftmon/mods/prickle.pw.toml create mode 100644 pkgs/minecraftmon/mods/puzzles-lib.pw.toml create mode 100644 pkgs/minecraftmon/mods/reeses-sodium-options.pw.toml create mode 100644 pkgs/minecraftmon/mods/refined-storage-emi-integration.pw.toml create mode 100644 pkgs/minecraftmon/mods/refined-storage.pw.toml create mode 100644 pkgs/minecraftmon/mods/resource-pack-overrides.pw.toml create mode 100644 pkgs/minecraftmon/mods/resourceful-lib.pw.toml create mode 100644 pkgs/minecraftmon/mods/respawning-animals.pw.toml create mode 100644 pkgs/minecraftmon/mods/rrls.pw.toml create mode 100644 pkgs/minecraftmon/mods/searchables.pw.toml create mode 100644 pkgs/minecraftmon/mods/silent-gear.pw.toml create mode 100644 pkgs/minecraftmon/mods/silent-lib.pw.toml create mode 100644 pkgs/minecraftmon/mods/simpletms-tms-and-trs-for-cobblemon.pw.toml create mode 100644 pkgs/minecraftmon/mods/snow-real-magic.pw.toml create mode 100644 pkgs/minecraftmon/mods/snow-under-trees.pw.toml create mode 100644 pkgs/minecraftmon/mods/sodium-dynamic-lights.pw.toml create mode 100644 pkgs/minecraftmon/mods/sodium-extra.pw.toml create mode 100644 pkgs/minecraftmon/mods/sodium-extras.pw.toml create mode 100644 pkgs/minecraftmon/mods/sodium-options-api.pw.toml create mode 100644 pkgs/minecraftmon/mods/sodium.pw.toml create mode 100644 pkgs/minecraftmon/mods/sophisticated-backpacks.pw.toml create mode 100644 pkgs/minecraftmon/mods/sophisticated-core.pw.toml create mode 100644 pkgs/minecraftmon/mods/sophisticated-storage-create-integration.pw.toml create mode 100644 pkgs/minecraftmon/mods/sophisticated-storage.pw.toml create mode 100644 pkgs/minecraftmon/mods/spice-of-life-onion.pw.toml create mode 100644 pkgs/minecraftmon/mods/storage-delight.pw.toml create mode 100644 pkgs/minecraftmon/mods/stylish-effects.pw.toml create mode 100644 pkgs/minecraftmon/mods/subtle-effects.pw.toml create mode 100644 pkgs/minecraftmon/mods/tax-free-levels.pw.toml create mode 100644 pkgs/minecraftmon/mods/tectonic.pw.toml create mode 100644 pkgs/minecraftmon/mods/terralith.pw.toml create mode 100644 pkgs/minecraftmon/mods/tidal-towns.pw.toml create mode 100644 pkgs/minecraftmon/mods/wall-jump-txf.pw.toml create mode 100644 pkgs/minecraftmon/mods/yacl.pw.toml create mode 100644 pkgs/minecraftmon/mods/yeetus-experimentus.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-api.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-desert-temples.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-dungeons.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-end-island.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-jungle-temples.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-mineshafts.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-nether-fortresses.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-ocean-monuments.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-strongholds.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-better-witch-huts.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-bridges.pw.toml create mode 100644 pkgs/minecraftmon/mods/yungs-extras.pw.toml create mode 100644 pkgs/minecraftmon/pack.toml create mode 100644 pkgs/minecraftmon/shaderpacks/complementary-reimagined.pw.toml diff --git a/configuration/services/minecraft.nix b/configuration/services/minecraft.nix index 0477f44..725b638 100644 --- a/configuration/services/minecraft.nix +++ b/configuration/services/minecraft.nix @@ -54,6 +54,9 @@ # to be up after = [ "nginx.service" ]; + # Don't auto-start the server + wantedBy = lib.mkForce [ ]; + serviceConfig = { # Use packwiz to install mods ExecStartPre = [ @@ -71,6 +74,13 @@ group = "minecraft"; mode = "0775"; }; + + "/srv/minecraft/cobblemon-pack"."L+" = { + user = "nginx"; + group = "minecraft"; + mode = "0775"; + argument = "${../../pkgs/minecraftmon}"; + }; }; services.nginx.virtualHosts."minecraft.${config.services.nginx.domain}" = { diff --git a/flake.nix b/flake.nix index 52e3a89..b5228c3 100644 --- a/flake.nix +++ b/flake.nix @@ -141,21 +141,22 @@ ########################### # Development environment # ########################### - devShells.${system}.default = nixpkgs.legacyPackages.${system}.mkShell { - sopsPGPKeyDirs = [ - "./keys/hosts/" - "./keys/users/" - ]; - nativeBuildInputs = [ sops-nix.packages.${system}.sops-import-keys-hook ]; + devShells.${system} = { + default = nixpkgs.legacyPackages.${system}.mkShell { + sopsPGPKeyDirs = [ + "./keys/hosts/" + "./keys/users/" + ]; + nativeBuildInputs = [ sops-nix.packages.${system}.sops-import-keys-hook ]; - packages = with pkgs; [ - sops-nix.packages.${system}.sops-init-gpg-key - deploy-rs.packages.${system}.default - - nixpkgs-fmt - - packwiz - ]; + packages = with pkgs; [ + sops-nix.packages.${system}.sops-init-gpg-key + deploy-rs.packages.${system}.default + nixpkgs-fmt + ]; + }; }; + + minecraft = nixpkgs.legacyPackages.${system}.mkShell { packages = [ pkgs.packwiz ]; }; }; } diff --git a/pkgs/minecraftmon/.packwizignore b/pkgs/minecraftmon/.packwizignore new file mode 100644 index 0000000..f3bf9c3 --- /dev/null +++ b/pkgs/minecraftmon/.packwizignore @@ -0,0 +1,2 @@ +.direnv +.envrc diff --git a/pkgs/minecraftmon/config/defaultoptions/extra/config/cataclysm.toml b/pkgs/minecraftmon/config/defaultoptions/extra/config/cataclysm.toml new file mode 100644 index 0000000..236b83d --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/extra/config/cataclysm.toml @@ -0,0 +1,811 @@ +[Etc] + #ScreenShake(on/off) + "ScreenShake(on/off)" = true + #Forced viewpoint change when hit by a grab attack + "setThirdPerson(on/off)" = true + #Forced viewpoint change when hit by a grab attack + "setFirstPerson(on/off)" = true + +["bosses Common settings"] + #custombossbar(on/off) + "custombossbar(on/off)" = true + #BossMusic(on/off) + "BossMusic(on/off)" = true + #BossMusicVolume(denominator) + # Default: 1 + # Range: 1 ~ 1000000 + BossMusicVolume = 1 + #If the boss leaves the summoned location and there is no target, it returns to the summoned location. When set to 0, it does not return + # Default: 20 + # Range: 0 ~ 200 + ReturnHome = 20 + +[Weapon] + #Armor Infinity Durability(on/off) + "Armor Infinity Durability(on/off)" = true + #Bulwark of the Flame's Cooldown + # Default: 80 + # Range: 0 ~ 1000000 + BulwarkOfTheFlameCooldown = 80 + #Gauntlet of Bulwark's Cooldown + # Default: 80 + # Range: 0 ~ 1000000 + GauntletOfBulwarkCooldown = 80 + #Infernal Forge's Cooldown + # Default: 80 + # Range: 0 ~ 1000000 + InfernalForgeCooldown = 80 + #Void Forge's Cooldown + # Default: 120 + # Range: 0 ~ 1000000 + VoidForgeCooldown = 120 + #The Incinerator's Cooldown + # Default: 400 + # Range: 0 ~ 1000000 + TheIncineratorCooldown = 400 + #Wither Assault Shoulder Weapon's Missile Cooldown + # Default: 40 + # Range: 0 ~ 1000000 + WASWMissileCooldown = 40 + #WASW's Wither Missile's Damage + # Default: 16.0 + # Range: 0.0 ~ 1000000.0 + "WASW's WitherMissiledamage" = 16.0 + #Wither Assault Shoulder Weapon's Howitzer Cooldown + # Default: 100 + # Range: 0 ~ 1000000 + WASWHowitzerCooldown = 100 + #Void Assault Shoulder Weapon's Cooldown + # Default: 120 + # Range: 0 ~ 1000000 + VASWCooldown = 120 + #Void Core's Cooldown + # Default: 160 + # Range: 0 ~ 1000000 + VoidCoreCooldown = 160 + #Sandstorm's cooldown + # Default: 300 + # Range: 0 ~ 1000000 + Sandstormcooldown = 300 + #Soul Render's Timer + # Default: 100 + # Range: 0 ~ 1000000 + SoulRenderCooldown = 100 + #Gauntlet of Maelstrom's Timer + # Default: 180 + # Range: 0 ~ 1000000 + gauntletofMaelstromCooldown = 180 + #The Immolator's Timer + # Default: 300 + # Range: 0 ~ 1000000 + immolatorCooldown = 300 + #Storm Bringer's LightningStorm Damage + # Default: 6.0 + # Range: 0.0 ~ 1000000.0 + "Ceraunus 's Lightning Storm Damage" = 6.0 + #Ceraunus's Wave Damage + # Default: 6.0 + # Range: 0.0 ~ 1000000.0 + "Ceraunus's Wave Damage'" = 6.0 + #Ceraunus's Cooldown + # Default: 150 + # Range: 0 ~ 1000000 + "Ceraunus Cooldown" = 150 + #Astrape's LightningStorm Damage + # Default: 11.0 + # Range: 0.0 ~ 1000000.0 + "Astrape's Lightning Spear Damage" = 11.0 + #Astrape's Wave Damage + # Default: 2.0 + # Range: 0.0 ~ 1000000.0 + "Astrape's Area Damage'" = 2.0 + #Astrape's Cooldown + # Default: 80 + # Range: 0 ~ 1000000 + "Astrape Cooldown" = 80 + +[Block] + #Cursed Tombstone Summon cooldown Minute + # Default: 1 + # Range: 1 ~ 300 + "Cursed Tombstone Summon cooldown Minute" = 1 + +["Entity damage"] + #Void Rune's Damage + # Default: 7.0 + # Range: 0.0 ~ 1000000.0 + Voidrunedamage = 7.0 + #Ashen Breath's Damage + # Default: 4.0 + # Range: 0.0 ~ 1000000.0 + Ashenbreathdamage = 4.0 + #Death Laser's Damage + # Default: 5.0 + # Range: 0.0 ~ 1000000.0 + DeathLaserdamage = 5.0 + #Death Laser's Hp Damage + # Default: 5.0 + # Range: 0.0 ~ 100.0 + DeathLaserHpdamage = 5.0 + #Player's Laser's Damage + # Default: 7.0 + # Range: 0.0 ~ 1000000.0 + Laserdamage = 7.0 + #Blazing Bone's Damage + # Default: 5.0 + # Range: 0.0 ~ 1000000.0 + BlazingBonedamage = 5.0 + #Lionfish Spike's Damage + # Default: 4.0 + # Range: 0.0 ~ 1000000.0 + LionfishSpikedamage = 4.0 + #Wither Howizter's Damage + # Default: 8.0 + # Range: 0.0 ~ 1000000.0 + WitherHowizterdamage = 8.0 + #Dimensional Rift's Damage + # Default: 10.0 + # Range: 0.0 ~ 1000000.0 + DimensionalRiftdamage = 10.0 + #Wither Homing Missile's Damage + # Default: 3.0 + # Range: 0.0 ~ 1000000.0 + WitherHomingMissiledamage = 3.0 + #Abyss Blast's Damage + # Default: 10.0 + # Range: 0.0 ~ 1000000.0 + AbyssBlastdamage = 10.0 + #Abyss Blast's Hp Damage + # Default: 0.1 + # Range: 0.0 ~ 1.0 + AbyssBlastHpdamage = 0.1 + #Abyss Orb's Damage + # Default: 4.0 + # Range: 0.0 ~ 1000000.0 + AbyssOrbdamage = 4.0 + #Lava bomb's Radius + # Default: 2 + # Range: 1 ~ 7 + Lavabombradius = 2 + #Amethyst Cluster's Damage + # Default: 12.0 + # Range: 0.0 ~ 1000000.0 + "Amethyst Cluster Damage" = 12.0 + #Sandstorm's Damage + # Default: 5.0 + # Range: 0.0 ~ 1000000.0 + "Sandstorm Damage" = 5.0 + #Ancient Desert Stele's Damage + # Default: 18.0 + # Range: 0.0 ~ 1000000.0 + "Ancient Desert Stele Damage" = 18.0 + #Player's Phantom Arrow's Damage + # Default: 8.0 + # Range: 0.0 ~ 1000000.0 + "Phantom Arrow Damage" = 8.0 + #Phantom Halberd's Damage + # Default: 12.0 + # Range: 0.0 ~ 1000000.0 + "Phantom Halberd Damage" = 12.0 + #Cursed Sandstorm's Damage + # Default: 7.5 + # Range: 0.0 ~ 1000000.0 + "Cursed Sandstorm Damage" = 7.5 + #Flame jet's Damage + # Default: 7.0 + # Range: 0.0 ~ 1000000.0 + "Flame Jet Damage" = 7.0 + #Flare Bomb's Damage + # Default: 7.0 + # Range: 0.0 ~ 1000000.0 + "Flare Bomb Damage" = 7.0 + +["Ender Guardian"] + #EnderGuardian's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + EnderGuardianHealthMultiplier = 1.0 + #EnderGuardian's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + EnderGuardianDamageMultiplier = 1.0 + #EnderGuardian's DamageCap + # Default: 22.0 + # Range: 0.0 ~ 1000000.0 + EnderGuardianDamageCap = 22.0 + #EnderGuardian's DamageTime + # Default: 30 + # Range: 0 ~ 100 + EnderGuardianDamageTime = 30 + #EnderGuardian's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + EnderGuardianNatureHealing = 25.0 + #Ender guardian's block breaking ignore the MobGriefing + EnderguardianBlockBreaking = true + #Guardian's Immune to Long distance attack range. + # Default: 12.0 + # Range: 1.0 ~ 1000000.0 + "Guardian's prevent attacks from far away Range" = 12.0 + #Guardian's gravity Punch Hp Damage + # Default: 0.05 + # Range: 0.0 ~ 1.0 + "Guardian's gravity Punch Hp Damage" = 0.05 + #Guardian's Teleport attack Hp Damage + # Default: 0.05 + # Range: 0.0 ~ 1.0 + "Guardian's Teleport attack Hp Damage" = 0.05 + #Guardian's Punch Hp Damage + # Default: 0.06 + # Range: 0.0 ~ 1.0 + "Guardian's knockback Hp Damage" = 0.06 + #Guardian's Uppercut Hp Damage + # Default: 0.1 + # Range: 0.0 ~ 1.0 + "Guardian's Uppercut Hp Damage" = 0.1 + #Guardian's RocketPunch Hp Damage + # Default: 0.1 + # Range: 0.0 ~ 1.0 + "Guardian's RocketPunch Hp Damage" = 0.1 + #Guardian's etc area attack Hp Damage + # Default: 0.08 + # Range: 0.0 ~ 1.0 + "Guardian's area attack Hp Damage" = 0.08 + #EnderGuardianBlockBreaking radius + # Default: 15 + # Range: 0 ~ 20 + "EnderGuardianBlockBreaking X" = 15 + #EnderGuardianBlockBreaking radius + # Default: 2 + # Range: 0 ~ 10 + "EnderGuardianBlockBreaking Y" = 2 + #EnderGuardianBlockBreaking radius + # Default: 15 + # Range: 0 ~ 20 + "EnderGuardianBlockBreaking Z" = 15 + +["Netherite Monstrosity"] + #Monstrosity's Lavabomb magazine. + # Default: 3 + # Range: 1 ~ 1000000 + LavabombMagazine = 3 + #Monstrosity's Lavabomb amount + # Default: 3 + # Range: 1 ~ 1000000 + Lavabombamount = 3 + #Lava Bomb of Monstrosity's Duration + # Default: 350 + # Range: 1 ~ 10000 + LavaBombDuration = 350 + #Lava Bomb of Monstrosity's additional random duration size + # Default: 150 + # Range: 1 ~ 10000 + LavaBombRandomDuration = 150 + #Monstrosity's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + MonstrosityHealthMultiplier = 1.0 + #Monstrosity's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + MonstrosityDamageMultiplier = 1.0 + #Monstrosity's Healing Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + MonstrosityHealingMultiplier = 1.0 + # Monstrosity's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + MonstrosityNatureHealing = 25.0 + #Monstrosity's DamageCap + # Default: 22.0 + # Range: 0.0 ~ 1000000.0 + MonstrosityDamageCap = 22.0 + #Monstrosity's DamageTime + # Default: 10 + # Range: 0 ~ 100 + MonstrosityDamageTime = 10 + #Monstrosity's bodyBlocking verdict + NetheritemonstrosityBodyBloking = true + #Monstrosity's attack Hp Damage + # Default: 0.08 + # Range: 0.0 ~ 1.0 + "Monstrosity's attack Hp Damage" = 0.08 + #Monstrosity's Immune to Long distance attack range. + # Default: 18.0 + # Range: 1.0 ~ 1000000.0 + "Monstrosity's prevent attacks from far away Range" = 18.0 + #Monstrosity's block breaking ignore the MobGriefing + monstrosityBlockBreaking = true + +["Ender Golem"] + #Ender Golem's block breaking ignore the MobGriefing + EndergolemBlockBreaking = false + #Endergolem's Immune to Long distance attack range. + # Default: 6.0 + # Range: 1.0 ~ 1000000.0 + "Endergolem's prevent attacks from far away Range" = 6.0 + #Golem's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + GolemHealthMultiplier = 1.0 + #Golem's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + GolemDamageMultiplier = 1.0 + +[Ignis] + #Ignis's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + IgnisHealthMultiplier = 1.0 + #Ignis's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + IgnisDamageMultiplier = 1.0 + #Ignis's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + IgnisNatureHealing = 25.0 + #Ignis's Healing Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + IgnisHealingMultiplier = 1.0 + #Ignis's Immune to Long distance attack range. + # Default: 15.0 + # Range: 1.0 ~ 1000000.0 + "Ignis's prevent attacks from far away Range" = 15.0 + #Ignis's DamageCap + # Default: 20.0 + # Range: 0.0 ~ 1000000.0 + IgnisDamageCap = 20.0 + #Ignis's DamageTime + # Default: 15 + # Range: 0 ~ 100 + IgnisDamageTime = 15 + #Ignis's cracked block breaking ignore the MobGriefing + IgnisBlockBreaking = true + +[revenant] + #Revenant's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + RevenantHealthMultiplier = 1.0 + #Revenant's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + RevenantDamageMultiplier = 1.0 + +["The Prowler"] + #The Prowler's Immune to Long distance attack range. + # Default: 16.0 + # Range: 1.0 ~ 1000000.0 + "The Prowler's prevent attacks from far away Range" = 16.0 + #Prowler's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ProwlerHealthMultiplier = 1.0 + #Prowler's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ProwlerDamageMultiplier = 1.0 + +["The Harbinger"] + #Harbinger's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + HarbingerHealthMultiplier = 1.0 + #Harbinger's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + HarbingerDamageMultiplier = 1.0 + #Harbinger's Healing Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + HarbingerHealingMultiplier = 1.0 + #Harbinger's Wither Missile's Damage + # Default: 8.0 + # Range: 0.0 ~ 1000000.0 + "Harbinger's WitherMissiledamage" = 8.0 + #Harbinger's laser's Damage + # Default: 5.0 + # Range: 0.0 ~ 1000000.0 + "Harbinger's laser damage" = 5.0 + #Harbinger's Immune to Long distance attack range. + # Default: 35.0 + # Range: 1.0 ~ 1000000.0 + "The Harbinger's prevent attacks from far away Range" = 35.0 + #Harbinger's DamageCap + # Default: 22.0 + # Range: 0.0 ~ 1000000.0 + "The Harbinger DamageCap" = 22.0 + #Harbinger's DamageTime + # Default: 12 + # Range: 0 ~ 100 + "The Harbinger DamageTime" = 12 + #Harbinger's lasers can light a fire in MobGriefing + "The Harbinger Light A Fire" = true + #The Harbinger's charge attack Hp Damage + # Default: 0.06 + # Range: 0.0 ~ 1.0 + "The Harbinger's charge attack Hp Damage" = 0.06 + +["The Leviathan"] + #Leviathan's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + LeviathanHealthMultiplier = 1.0 + #Leviathan's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + LeviathanDamageMultiplier = 1.0 + #Leviathan's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + LeviathanNatureHealing = 25.0 + #Leviathan's Immune to Long distance attack range. + # Default: 38.0 + # Range: 1.0 ~ 1000000.0 + "Leviathan's prevent attacks from far away Range" = 38.0 + #Leviathan's Bite Hp Damage + # Default: 0.1 + # Range: 0.0 ~ 1.0 + "Leviathan's Bite Hp Damage" = 0.1 + #Leviathan's Rush Hp Damage + # Default: 0.05 + # Range: 0.0 ~ 1.0 + "Leviathan's Rush Hp Damage" = 0.05 + #Leviathan's TailSwing Hp Damage + # Default: 0.08 + # Range: 0.0 ~ 1.0 + "Leviathan's TailSwing Hp Damage" = 0.08 + #Leviathan's Tentacle Hp Damage + # Default: 0.03 + # Range: 0.0 ~ 1.0 + "Leviathan's Tentacle Hp Damage" = 0.03 + #Leviathan's DamageCap + # Default: 20.0 + # Range: 0.0 ~ 1000000.0 + LeviathanDamageCap = 20.0 + #Leviathan's DamageTime + # Default: 15 + # Range: 0 ~ 100 + "Leviathan DamageTime" = 15 + #Leviathan's block breaking ignore the MobGriefing + LeviathanBlockBreaking = true + #Leviathan Immune Out of Water + LeviathanImmuneOutofWater = true + +["The Baby Leviathan"] + #BabyLeviathan's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + BabyLeviathanHealthMultiplier = 1.0 + #BabyLeviathan's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + BabyLeviathanDamageMultiplier = 1.0 + +["Modern Remnant"] + #Modern Remnant's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ModernRemnantHealthMultiplier = 1.0 + #Modern Remnant's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ModernRemnantDamageMultiplier = 1.0 + +["Netherite Ministrosity"] + #Ministrosity's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + MinistrosityHealthMultiplier = 1.0 + +["Amethyst Crab"] + #Amethyst Crab's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + AmethystCrabHealthMultiplier = 1.0 + #Amethyst Crab's EarthQuake Damage + # Default: 5.0 + # Range: 0.0 ~ 1000000.0 + AmethystCrabEarthQuakeDamage = 5.0 + #Amethyst Crab's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + AmethystCrabDamageMultiplier = 1.0 + +["Ancient Remnant"] + #Ancient Remnant's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + AncientRemnantHealthMultiplier = 1.0 + #Ancient Remnant's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + AncientRemnantDamageMultiplier = 1.0 + #AncientRemnant's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + AncientRemnantNatureHealing = 25.0 + #Ancient Remnant's Immune to Long distance attack range. + # Default: 14.0 + # Range: 1.0 ~ 1000000.0 + "Ancient Remnant's prevent attacks from far away Range" = 14.0 + #Ancient Remnant's DamageCap + # Default: 21.0 + # Range: 0.0 ~ 1000000.0 + AncientRemnantCap = 21.0 + #Ancient Remnant's DamageTime + # Default: 12 + # Range: 0 ~ 100 + "Ancient Remnant DamageTime" = 12 + #Ancient Remnant's block breaking ignore the MobGriefing + AncientRemnantBlockBreaking = true + #Remnant's Charge Hp Damage + # Default: 0.1 + # Range: 0.0 ~ 1.0 + "Remnant's Charge Hp Damage" = 0.1 + #Remnant's Hp Damage + # Default: 0.05 + # Range: 0.0 ~ 1.0 + "Remnant's Normal attack Hp Damage" = 0.05 + #Remnant's Stomp Hp Damage + # Default: 0.03 + # Range: 0.0 ~ 1.0 + "Remnant's Stomp Hp Damage" = 0.03 + #Remnant's EarthQuake Damage + # Default: 11.0 + # Range: 0.0 ~ 1000000.0 + "Remnant's EarthQuakeDamage" = 11.0 + +[Koboleton] + #Cause Koboleton to Drop Item In Hand Percent + # Default: 5.0 + # Range: 0.0 ~ 100.0 + CauseKoboletontoDropItemInHandPercent = 5.0 + +[Kobolediator] + #Kobolediator's block breaking ignore the MobGriefing + KobolediatorBlockBreaking = false + #Kobolediator's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + KobolediatorHealthMultiplier = 1.0 + #Kobolediator's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + KobolediatorDamageMultiplier = 1.0 + +[Wadjet] + #Wadjet's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + WadjetHealthMultiplier = 1.0 + #Wadjet's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + WadjetDamageMultiplier = 1.0 + +[Aptrgangr] + #Aptrgangr's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + AptrgangrHealthMultiplier = 1.0 + #Aptrgangr's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + AptrgangrDamageMultiplier = 1.0 + #Axe Blade's Damage + # Default: 8.0 + # Range: 0.0 ~ 1000000.0 + AptrgangrAxeBladeDamage = 8.0 + +[Clawdian] + #Clawdian's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ClawdianHealthMultiplier = 1.0 + #Clawdian's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ClawdianDamageMultiplier = 1.0 + +[Scylla] + #Scylla's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ScyllaHealthMultiplier = 1.0 + #Scylla's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + ScyllaDamageMultiplier = 1.0 + #Scylla's Immune to Long distance attack range. + # Default: 10.0 + # Range: 1.0 ~ 1000000.0 + "Scylla's prevent attacks from far away Range" = 10.0 + #Scylla's Spear Damage + # Default: 14.0 + # Range: 0.0 ~ 1000000.0 + "Scylla's Spear Damage" = 14.0 + #Scylla's Lightning Storm + # Default: 10.0 + # Range: 0.0 ~ 1000000.0 + "Scylla's Lightning Storm" = 10.0 + #Scylla's Lightning Area + # Default: 4.0 + # Range: 0.0 ~ 1000000.0 + "Scylla's Lightning Area" = 4.0 + #Scylla's Storm Serpent + # Default: 16.0 + # Range: 0.0 ~ 1000000.0 + "Scylla's Snake Damage" = 16.0 + #Scylla's Anchor Damage + # Default: 16.0 + # Range: 0.0 ~ 1000000.0 + "Scylla's Anchor Damage" = 16.0 + #Scylla's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + "Scylla NatureHealing" = 25.0 + #Scylla's DamageCap + # Default: 22.0 + # Range: 0.0 ~ 1000000.0 + "Scylla DamageCap" = 22.0 + #Scylla's DamageTime + # Default: 25 + # Range: 0 ~ 100 + "Scylla DamageTime" = 25 + #Scylla's HP Damage + # Default: 0.05 + # Range: 0.0 ~ 1000000.0 + "Scylla's HP Damage" = 0.05 + #Scylla's Spin HP Damage + # Default: 0.07 + # Range: 0.0 ~ 1000000.0 + "Scylla's Spin Hp Damage" = 0.07 + #Scylla's Lightning Storm HP Damage + # Default: 0.04 + # Range: 0.0 ~ 1000000.0 + "Scylla's Lightning Storm HP Damage" = 0.04 + +[Maledictus] + #Maledictus's Health Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + MaledictusHealthMultiplier = 1.0 + #Maledictus's Damage Multiplier + # Default: 1.0 + # Range: 0.0 ~ 1000000.0 + MaledictusDamageMultiplier = 1.0 + #Maledictus's Immune to Long distance attack range. + # Default: 12.0 + # Range: 1.0 ~ 1000000.0 + "Maledictus's prevent attacks from far away Range" = 12.0 + #Maledictus's Healing with out target + # Default: 25.0 + # Range: 0.0 ~ 1000000.0 + MaledictusNatureHealing = 25.0 + #Maledictus's Phantom Halberd Damage + # Default: 10.0 + # Range: 0.0 ~ 1000000.0 + "Maledictus' Phantom Halberd Damage'" = 10.0 + #Maledictus's DamageCap + # Default: 20.0 + # Range: 0.0 ~ 1000000.0 + MaledictusDamageCap = 20.0 + #Maledictus's DamageTime + # Default: 30 + # Range: 0 ~ 100 + "Maledictus DamageTime" = 30 + #Maledictus's melee Hp Damage + # Default: 0.05 + # Range: 0.0 ~ 1.0 + "Maledictus's melee Hp Damage" = 0.05 + #Maledictus's Shock wave Hp Damage + # Default: 0.03 + # Range: 0.0 ~ 1.0 + "Maledictus's Shock Wave Hp Damage" = 0.03 + #Maledictus's AOE Hp Damage + # Default: 0.15 + # Range: 0.0 ~ 1.0 + "Maledictus's AOE Hp Damage" = 0.15 + #Maledictus's flying Smash Hp Damage + # Default: 0.1 + # Range: 0.0 ~ 1.0 + "Maledictus's Flying Smash Hp Damage" = 0.1 + #Maledictus's Jump Smash Hp Damage + # Default: 0.08 + # Range: 0.0 ~ 1.0 + "Maledictus's Jump Smash Hp Damage" = 0.08 + #Maledictus's Phantom Arrow's Damage + # Default: 5.0 + # Range: 0.0 ~ 1000000.0 + "Maledictus's Phantom Arrow Damage" = 5.0 + #Maledictus's cracked block breaking ignore the MobGriefing + MaledictusBlockBreaking = true + +[spawning] + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 2 + # Range: 0 ~ 1000 + DeeplingSpawnWeight = 0 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 30 + # Range: > 0 + DeeplingSpawnRolls = 30 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 1 + # Range: 0 ~ 1000 + DeeplingBruteSpawnWeight = 0 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 50 + # Range: > 0 + DeeplingBruteSpawnRolls = 50 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 2 + # Range: 0 ~ 1000 + DeeplingAnglerSpawnWeight = 0 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 30 + # Range: > 0 + DeeplingAnglerSpawnRolls = 30 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 1 + # Range: 0 ~ 1000 + DeeplingPriestSpawnWeight = 0 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 70 + # Range: > 0 + DeeplingPriestSpawnRolls = 70 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 1 + # Range: 0 ~ 1000 + DeeplingWarlockSpawnWeight = 0 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 70 + # Range: > 0 + DeeplingWarlockSpawnRolls = 70 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 1 + # Range: 0 ~ 1000 + CoralgolemSpawnWeight = 1 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 70 + # Range: > 0 + CoralgolemSpawnRolls = 70 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 1 + # Range: 0 ~ 1000 + AmethystCrabSpawnWeight = 1 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 20 + # Range: > 0 + AmethystCrabSpawnRolls = 20 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 15 + # Range: 0 ~ 1000 + KoboletonSpawnWeight = 15 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 1 + # Range: > 0 + KoboletonSpawnRolls = 1 + #Spawn Weight, added to a pool of other mobs for each biome. Higher number = higher chance of spawning. 0 = disable spawn + # Default: 5 + # Range: 0 ~ 1000 + IgnitedBerserkerSpawnWeight = 5 + #Random roll chance to enable mob spawning. Higher number = lower chance of spawning + # Default: 2 + # Range: > 0 + IgnitedBerserkerSpawnRolls = 2 + +["World Generation"] + #Defines the area in which the structure check for height variances (1 means 9 chunks will be checked (center + area around it)) - 0 disables this check + # Default: 2 + # Range: 0 ~ 5 + cursedPyramidCheckRange = 2 + #Allowed height variance for the check - if the variance is lower than this value the structure will not spawn (has no effect if the are check is disabled) + # Default: 2 + # Range: 0 ~ 32 + cursedPyramidHeightVariance = 2 diff --git a/pkgs/minecraftmon/config/defaultoptions/extra/config/inventoryhud-client.toml b/pkgs/minecraftmon/config/defaultoptions/extra/config/inventoryhud-client.toml new file mode 100644 index 0000000..6df7190 --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/extra/config/inventoryhud-client.toml @@ -0,0 +1,249 @@ +#Settings for Inventory HUD +[inventoryhud] + #Inventory HUD mini mode + invMini = true + #Inventory HUD vertical mode + invVert = false + #Inventory HUD alpha + # Default: 0 + # Range: 0 ~ 100 + invAlpha = 0 + #Toggle on by default + byDefault = false + #Animate recently picked up items + animatedInv = false + #Hide background if inventory is empty + hideBackground = false + #Show Inventory HUD when debug menu is open + invWithDebug = true + +#Settings for ArmorStatus HUD +[armorhud] + #Is Armor Damage HUD enabled + ArmorDamage = true + #Hide if durability is above this (in percentage): + # Default: 100 + # Range: 0 ~ 100 + armAbove = 100 + #Show/Hide armor + showArmor = true + #Show/Hide armor + showMain = true + #Show/Hide armor + showOff = true + #Show/Hide armor + showArrows = true + #Show/Hide armor + showInv = true + #Armor HUD durability view (PERCENTAGE, DAMAGE, DAMAGE LEFT) + #Allowed Values: PERCENTAGE, DAMAGE, DAMAGE_LEFT, OFF + armView = "PERCENTAGE" + #Show item durability bar + armBars = false + #Move all items at once or each one + moveAll = true + #Show/Hide empty slot icon + showEmpty = true + #Show overall count of items in main/off hand + showCount = false + #ArmorHUD scale in persentage from 50 to 150 + # Default: 100 + # Range: 50 ~ 150 + armScale = 100 + #Show Armor HUD when debug menu is open + armWithDebug = true + #Show arrows count when no weapon in your hands + showArrowsWithoutWeapon = true + +#Settings for Potions HUD +[potionshud] + #Is Potions HUD enabled + Potions = true + #Potion HUD alpha + # Default: 100 + # Range: 0 ~ 100 + potAlpha = 100 + #Potion HUD gap + # Default: 0 + # Range: -5 ~ 5 + potGap = 0 + #Potion HUD mini mode + potMini = false + #Potion HUD horizontal mode + potHor = false + #Full bar duration + # Default: 300 + # Range: > 1 + barDuration = 300 + #Show hidden effects + showHiddenEffects = true + #Disable icons for effects in this list + effectsBlackList = [] + #Show Potion HUD when debug menu is open + potWithDebug = true + #Show all levels of effects + potionLevels = false + +#DONT TOUCH THESE FIELDS! +[positions] + #Inventory HUD vertical align + #Allowed Values: TOP, CENTER, BOTTOM + invValign = "BOTTOM" + #Inventory HUD horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + invHalign = "MIDDLE" + #Inventory HUD position (X) + # Default: 0 + # Range: -9999 ~ 9999 + xPos = 0 + #Inventory HUD position (Y) + # Default: 150 + # Range: -9999 ~ 9999 + yPos = 150 + #Armor HUD vertical align + #Allowed Values: TOP, CENTER, BOTTOM + armValign = "BOTTOM" + #Armor HUD horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + armHalign = "MIDDLE" + #Armor HUD position (X) + # Default: 0 + # Range: -9999 ~ 9999 + xArmPos = 0 + #Armor HUD position (Y) + # Default: 70 + # Range: -9999 ~ 9999 + yArmPos = 70 + #Potion HUD vertical align + #Allowed Values: TOP, CENTER, BOTTOM + potValign = "TOP" + #Potion HUD horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + potHalign = "LEFT" + #Potion HUD position (X) + # Default: 20 + # Range: -9999 ~ 9999 + xPotionPos = 20 + #Potion HUD position (Y) + # Default: 20 + # Range: -9999 ~ 9999 + yPotionPos = 20 + #Helmet position (X) + # Default: 103 + # Range: -9999 ~ 9999 + helmPosX = 103 + #Helmet position (Y) + # Default: 54 + # Range: -9999 ~ 9999 + helmPosY = 54 + #Chestplate position (X) + # Default: 103 + # Range: -9999 ~ 9999 + chestPosX = 103 + #Chestplate position (Y) + # Default: 37 + # Range: -9999 ~ 9999 + chestPosY = 37 + #Leggings position (X) + # Default: -103 + # Range: -9999 ~ 9999 + legPosX = -103 + #Leggings position (Y) + # Default: 54 + # Range: -9999 ~ 9999 + legPosY = 54 + #Boots position (X) + # Default: -103 + # Range: -9999 ~ 9999 + bootPosX = -103 + #Boots position (Y) + # Default: 37 + # Range: -9999 ~ 9999 + bootPosY = 37 + #MainHand position (X) + # Default: 103 + # Range: -9999 ~ 9999 + mainPosX = 103 + #MainHand position (Y) + # Default: 71 + # Range: -9999 ~ 9999 + mainPosY = 71 + #OffHand position (X) + # Default: -103 + # Range: -9999 ~ 9999 + offPosX = -103 + #OffHand position (Y) + # Default: 71 + # Range: -9999 ~ 9999 + offPosY = 71 + #Arrows position (X) + # Default: 103 + # Range: -9999 ~ 9999 + arrPosX = 103 + #Arrows position (Y) + # Default: 20 + # Range: -9999 ~ 9999 + arrPosY = 20 + #InvIcon position (X) + # Default: -103 + # Range: -9999 ~ 9999 + invPosX = -103 + #InvIcon position (Y) + # Default: 20 + # Range: -9999 ~ 9999 + invPosY = 20 + #Helmet horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + helmHal = "MIDDLE" + #Helmet vertical align + #Allowed Values: TOP, CENTER, BOTTOM + helmVal = "BOTTOM" + #Chestplate horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + chestHal = "MIDDLE" + #Chestplate vertical align + #Allowed Values: TOP, CENTER, BOTTOM + chestVal = "BOTTOM" + #Leggings horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + legHal = "MIDDLE" + #Leggings vertical align + #Allowed Values: TOP, CENTER, BOTTOM + legVal = "BOTTOM" + #Boots horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + bootHal = "MIDDLE" + #Boots vertical align + #Allowed Values: TOP, CENTER, BOTTOM + bootVal = "BOTTOM" + #MainHand horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + mainHal = "MIDDLE" + #MainHand vertical align + #Allowed Values: TOP, CENTER, BOTTOM + mainVal = "BOTTOM" + #OffHand horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + offHal = "MIDDLE" + #OffHand vertical align + #Allowed Values: TOP, CENTER, BOTTOM + offVal = "BOTTOM" + #Arrows horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + arrHal = "MIDDLE" + #Arrows vertical align + #Allowed Values: TOP, CENTER, BOTTOM + arrVal = "BOTTOM" + #InvIcon horizontal align + #Allowed Values: LEFT, MIDDLE, RIGHT + invHal = "MIDDLE" + #InvIcon vertical align + #Allowed Values: TOP, CENTER, BOTTOM + invVal = "BOTTOM" + +#Notification settings +[notification] + #Last notified mod version + lastNotifiedVersion = "3.4.28" + #Notify more than once + keepNotifying = true diff --git a/pkgs/minecraftmon/config/defaultoptions/extra/config/iris.properties b/pkgs/minecraftmon/config/defaultoptions/extra/config/iris.properties new file mode 100644 index 0000000..94e5f28 --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/extra/config/iris.properties @@ -0,0 +1,9 @@ +#This file stores configuration options for Iris, such as the currently active shaderpack +#Thu Jul 31 02:25:56 HKT 2025 +allowUnknownShaders=false +colorSpace=SRGB +disableUpdateMessage=false +enableDebugOptions=false +enableShaders=true +maxShadowRenderDistance=32 +shaderPack=ComplementaryReimagined_r5.5.1 + Colorwheel_0.2.4.zip diff --git a/pkgs/minecraftmon/config/defaultoptions/extra/config/sodium-extra-options.json b/pkgs/minecraftmon/config/defaultoptions/extra/config/sodium-extra-options.json new file mode 100644 index 0000000..b18d359 --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/extra/config/sodium-extra-options.json @@ -0,0 +1,66 @@ +{ + "animation_settings": { + "animation": true, + "water": true, + "lava": true, + "fire": true, + "portal": true, + "block_animations": true, + "sculk_sensor": true + }, + "particle_settings": { + "particles": true, + "rain_splash": true, + "block_break": true, + "block_breaking": true, + "other": { + "subtle_effects:item_rarity": false, + "subtle_effects:frosty_breath": false + } + }, + "detail_settings": { + "sky": true, + "sun": true, + "moon": true, + "stars": true, + "rain_snow": true, + "biome_colors": true, + "sky_colors": true + }, + "render_settings": { + "fog_distance": 0, + "fog_start": 100, + "multi_dimension_fog_control": false, + "dimensionFogDistance": {}, + "light_updates": true, + "item_frame": true, + "armor_stand": true, + "painting": true, + "piston": true, + "beacon_beam": true, + "limit_beacon_beam_height": false, + "enchanting_table_book": true, + "item_frame_name_tag": true, + "player_name_tag": true + }, + "extra_settings": { + "overlay_corner": "TOP_LEFT", + "text_contrast": "NONE", + "show_fps": false, + "show_f_p_s_extended": true, + "show_coords": false, + "reduce_resolution_on_mac": false, + "use_adaptive_sync": false, + "cloud_height": 192, + "cloud_distance": 100, + "toasts": true, + "advancement_toast": true, + "recipe_toast": true, + "system_toast": true, + "tutorial_toast": true, + "instant_sneak": false, + "prevent_shaders": false, + "steady_debug_hud": true, + "steady_debug_hud_refresh_interval": 1 + } +} \ No newline at end of file diff --git a/pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumdynamiclights-client.toml b/pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumdynamiclights-client.toml new file mode 100644 index 0000000..97a08c1 --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumdynamiclights-client.toml @@ -0,0 +1,18 @@ +[sodiumdynamiclights] + #Lighting mode + #Allowed Values: OFF, SLOW, FAST, REALTIME + mode = "OFF" + #Enable entities light source. + entities = false + #Enable first-person player light source. + self = true + #Enable block entities light source. + block_entities = true + #Enables water-sensitive light sources check. This means that water-sensitive items will not light up when submerged in water. + water_sensitive_check = true + #TNT lighting mode. May be off, simple or fancy. + #Allowed Values: OFF, SIMPLE, FANCY + tnt = "SIMPLE" + #Creeper lighting mode. May be off, simple or fancy. + #Allowed Values: OFF, SIMPLE, FANCY + creeper = "OFF" diff --git a/pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumextras-client.toml b/pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumextras-client.toml new file mode 100644 index 0000000..7545ac7 --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/extra/config/sodiumextras-client.toml @@ -0,0 +1,135 @@ + [embeddiumextras.general] + #Set Fullscreen mode + #Borderless let you change between screens more faster and move your mouse across monitors + #Allowed Values: WINDOWED, BORDERLESS, FULLSCREEN + fullscreen = "WINDOWED" + #Configure FPS Display mode + #Complete mode gives you min FPS count and average count + #Allowed Values: OFF, SIMPLE, ADVANCED + fpsDisplay = "ADVANCED" + #Configure FPS Display gravity + #Places counter on specified corner of your screen + #Allowed Values: LEFT, CENTER, RIGHT + fpsDisplayGravity = "LEFT" + #Shows GPU and memory usage onto FPS display + #Allowed Values: OFF, ON, GPU, RAM + fpsDisplaySystem = "ON" + #Configure FPS Display margin + #Give some space between corner and text + # Default: 12 + # Range: 0 ~ 48 + fpsDisplayMargin = 12 + #Toggle FPS Display shadow + #In case sometimes you can't see the text + fpsDisplayShadow = false + + [embeddiumextras.quality] + #Toggle fog feature + #Fog was a vanilla feature, toggling off may increases performance + fog = true + #Raise clouds + #Modify clouds height perfect for a adaptative world experience + # Default: 192 + # Range: 0 ~ 512 + cloudsHeight = 192 + #Chunks fade in speed + #This option doesn't affect performance, just changes speed + #Allowed Values: OFF, FAST, SLOW + chunkFadeSpeed = "SLOW" + + [embeddiumextras.quality.darkness] + #Configure Darkness Mode + #Each config changes what is considered 'true darkness' + #Allowed Values: PITCH_BLACK, TOTAL_DARKNESS, DARK, DIM, OFF + mode = "OFF" + #Toggle Darkness on Overworld dimension + enableOnOverworld = true + #Toggle Darkness on Nether dimension + enableOnNether = false + #Configure fog brightness on nether when darkness is enabled + # Default: 0.5 + # Range: 0.0 ~ 1.0 + netherFogBright = 0.5 + #Toggle Darkness on End dimension + enableOnEnd = false + #Configure fog brightness on nether when darkness is enabled + # Default: 0.5 + # Range: 0.0 ~ 1.0 + endFogBright = 0.5 + #Toggle Darkness default mode for modded dimensions + valueByDefault = false + #List of all dimensions to use True Darkness + #This option overrides 'valueByDefault' state + dimensionWhitelist = [] + #Toggle darkness when dimension has no SkyLight + enableOnNoSkyLight = false + #Disables all bright sources of darkness like moon or fog + #Only affects darkness effect + enableBlockLightOnly = false + #Toggles if moon phases affects darkness in the overworld + affectedByMoonPhase = true + #Configure max moon brightness level with darkness + # Default: 0.25 + # Range: 0.0 ~ 1.0 + fullMoonBright = 0.25 + #Configure min moon brightness level with darkness + # Default: 0.0 + # Range: 0.0 ~ 1.0 + newMoonBright = 0.0 + + [embeddiumextras.performance] + #Toggles JREI item rendering until searching + #Increases performance a little bit and cleans your screen when you don't want to use it + hideJREI = false + #Toggles Minecraft Fonts shadows + #Depending of the case may increase performance + #Gives a flat style text + fontShadows = true + + [embeddiumextras.performance.distanceCulling.tileEntities] + #Toggles distance culling for Block Entities + #Maybe you use another mod for that :( + enable = true + #Configure horizontal max distance before cull Block entities + #Value is squared, default was 64^2 (or 64x64) + # Default: 4096 + # Range: > 0 + cullingMaxDistanceX = 4096 + #Configure vertical max distance before cull Block entities + #Value is raw + # Default: 32 + # Range: 0 ~ 512 + cullingMaxDistanceY = 32 + #List of all Block Entities to be ignored by distance culling + #Uses ResourceLocation to identify it + #Example 1: "minecraft:chest" - Ignores chests only + #Example 2: "ae2:*" - ignores all Block entities from Applied Energetics 2 + whitelist = ["waterframes:*"] + + [embeddiumextras.performance.distanceCulling.entities] + #Toggles distance culling for entities + #Maybe you use another mod for that :( + enable = true + #Configure horizontal max distance before cull entities + #Value is squared, default was 64^2 (or 64x64) + # Default: 4096 + # Range: > 0 + cullingMaxDistanceX = 4096 + #Configure vertical max distance before cull entities + #Value is raw + # Default: 32 + # Range: 0 ~ 512 + cullingMaxDistanceY = 32 + #List of all Entities to be ignored by distance culling + #Uses ResourceLocation to identify it + #Example 1: "minecraft:bat" - Ignores bats only + #Example 2: "alexsmobs:*" - ignores all entities for alexmobs mod + whitelist = ["minecraft:ghast", "minecraft:ender_dragon", "iceandfire:*", "create:*"] + + [embeddiumextras.others] + #Configure if borderless fullscreen option should be attached to F11 or replace vanilla fullscreen + #Allowed Values: ATTACH, REPLACE, OFF + borderlessAttachModeOnF11 = "OFF" + #Toggles fast language reload + #Embeddedt points it maybe cause troubles to JEI, so ¿why not add it as a toggleable option? + fastLanguageReload = true diff --git a/pkgs/minecraftmon/config/defaultoptions/keybindings.txt b/pkgs/minecraftmon/config/defaultoptions/keybindings.txt new file mode 100644 index 0000000..ff62f54 --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/keybindings.txt @@ -0,0 +1,50 @@ +key_iris.keybind.reload:key.keyboard.unknown: +key_iris.keybind.toggleShaders:key.keyboard.unknown: +key_iris.keybind.shaderPackSelection:key.keyboard.unknown: +key_key.corpse.death_history:key.keyboard.unknown: +key_key.curios.open.desc:key.keyboard.unknown: +key_key.cobblemon.hideparty:key.keyboard.unknown: +key_key.cobblemon.throwpartypokemon:key.keyboard.z +key_accessories.key.open_accessories_screen:key.keyboard.unknown: +key_key.jei.toggleOverlay:key.keyboard.unknown: +key_key.jei.focusSearch:key.keyboard.unknown: +key_key.jei.bookmark:key.keyboard.unknown: +key_key.jei.showRecipe:key.keyboard.unknown: +key_key.jei.showRecipe2:key.keyboard.unknown: +key_key.jei.showUses:key.keyboard.unknown: +key_key.jei.showUses2:key.keyboard.unknown: +key_key.jei.transferRecipeBookmark:key.keyboard.unknown: +key_key.jei.maxTransferRecipeBookmark:key.keyboard.unknown: +key_key.jei.clearSearchBar:key.keyboard.unknown: +key_key.jei.previousSearch:key.keyboard.unknown: +key_key.jei.nextSearch:key.keyboard.unknown: +key_key.jei.cheatOneItem:key.keyboard.unknown: +key_key.jei.cheatOneItem2:key.keyboard.unknown: +key_key.jei.cheatItemStack:key.keyboard.unknown: +key_key.jei.cheatItemStack2:key.keyboard.unknown: +key_key.jei.toggleCheatModeConfigButton:key.keyboard.unknown: +key_key.jei.toggleHideIngredient:key.keyboard.unknown: +key_key.jei.toggleWildcardHideIngredient:key.keyboard.unknown: +key_key.jei.recipeBack:key.keyboard.unknown: +key_key.jei.previousRecipePage:key.keyboard.unknown: +key_key.jei.nextRecipePage:key.keyboard.unknown: +key_key.jei.previousCategory:key.keyboard.unknown: +key_key.jei.nextCategory:key.keyboard.unknown: +key_key.jei.closeRecipeGui:key.keyboard.unknown: +key_key.aether.open_accessories.desc:key.keyboard.unknown: +key_key.aether.invisibility_toggle.desc:key.keyboard.unknown: +key_key.deep_aether.stratus_dash_ability.desc:key.keyboard.unknown: +key_key.deep_aether.toggle_skyjade_transparency:key.keyboard.unknown: +key_key.cataclysm.ability:key.keyboard.unknown: +key_key.cataclysm.helmet_ability:key.keyboard.unknown: +key_key.cataclysm.chestplate_ability:key.keyboard.unknown: +key_key.cataclysm.boots_ability:key.keyboard.unknown: +key_key.fightorflight.startbattle:key.keyboard.unknown: +key_key.journeymap.minimap_type:key.keyboard.unknown: +key_key.journeymap.minimap_preset:key.keyboard.unknown: +key_key.journeymap.create_waypoint:key.keyboard.unknown: +key_key.journeymap.toggle_entity_names:key.keyboard.unknown: +key_key.irons_spellbooks.spell_wheel:key.keyboard.v +key_key.irons_spellbooks.spellbook_cast:key.keyboard.r +key_key.inventoryhud.toggle:key.keyboard.unknown: +key_key.inventoryhud.openconfig:key.keyboard.unknown: diff --git a/pkgs/minecraftmon/config/defaultoptions/options.txt b/pkgs/minecraftmon/config/defaultoptions/options.txt new file mode 100644 index 0000000..d82a4ef --- /dev/null +++ b/pkgs/minecraftmon/config/defaultoptions/options.txt @@ -0,0 +1 @@ +guiScale:2 diff --git a/pkgs/minecraftmon/config/defaultoptions/servers.dat b/pkgs/minecraftmon/config/defaultoptions/servers.dat new file mode 100644 index 0000000000000000000000000000000000000000..a64aa2498a89aac5b38a0ec611ef0c8ab9245072 GIT binary patch literal 89 zcmd;LVBln6FHS8gOD!tqVqjokWMp8=$V^E|&0}C>5H2W6ElbTSDR$0CED1_2$S*1> iX5e68$}C{uD#=MKNiEXLOD*AGV986&O+^-BU;qH@#u!5Y literal 0 HcmV?d00001 diff --git a/pkgs/minecraftmon/index.toml b/pkgs/minecraftmon/index.toml new file mode 100644 index 0000000..c82361e --- /dev/null +++ b/pkgs/minecraftmon/index.toml @@ -0,0 +1,842 @@ +hash-format = "sha256" + +[[files]] +file = "config/defaultoptions/extra/config/cataclysm.toml" +hash = "9a76bf60248db9056912d34a2f5c303882f9e4bd4c1b9ffe61fef99b8eb0de38" + +[[files]] +file = "config/defaultoptions/extra/config/inventoryhud-client.toml" +hash = "61d89f6c1a9c1398ff109bc4f13ec30b68f3e71408b005ec096ebab163c05a53" + +[[files]] +file = "config/defaultoptions/extra/config/iris.properties" +hash = "7c386f2921f9c1a94c984114ff8df28d7c127b5b986ce344615e4ac4cb02c4eb" + +[[files]] +file = "config/defaultoptions/extra/config/sodium-extra-options.json" +hash = "92a62325cccecccf843d04e1be02f036fa1a3506a21290ebf040fbb78b46fc1f" + +[[files]] +file = "config/defaultoptions/extra/config/sodiumdynamiclights-client.toml" +hash = "33516556e1f7761835817a2ad13a42c3563010cf4df15296b2f685e95d0ddcb1" + +[[files]] +file = "config/defaultoptions/extra/config/sodiumextras-client.toml" +hash = "8b493ad01cbdb351da8f51d98ad791b9ae9519e69d353acf82a2f893094853ef" + +[[files]] +file = "config/defaultoptions/keybindings.txt" +hash = "64852eef84ab3f853973c3ad6affb00999638d0fc49515b9daa42981e3b9f5b2" + +[[files]] +file = "config/defaultoptions/options.txt" +hash = "624a8e4974cae64389b28e8046c3cc18a94e609a02df63f5397ec2ca0c0f7ee8" + +[[files]] +file = "config/defaultoptions/servers.dat" +hash = "0e7bfc4d1ae85b5e1bb57914cb3d07abf75a4ef5158763095f5208891f43bfe7" + +[[files]] +file = "mods/aether-emissivity.pw.toml" +hash = "d245f988ce58a69b2734cbd656afc8c0ba510a7ddcc7b779c0f05de3275c52d3" +metafile = true + +[[files]] +file = "mods/aether-enhanced-extinguishing.pw.toml" +hash = "3ab0e784d15c52edda001697336bc3d7bceb1d016c89b166c77b10f6fb689737" +metafile = true + +[[files]] +file = "mods/aether.pw.toml" +hash = "5e62bb12eb55e4575d1ca5e3570b5cc18473138973c80ac7093e61e459339db1" +metafile = true + +[[files]] +file = "mods/ambientsounds.pw.toml" +hash = "f63a7e300c9556f4bcb76b7afd3aecc4d19d5323d24c48709083f5dafcbde09f" +metafile = true + +[[files]] +file = "mods/appleskin.pw.toml" +hash = "3213c881d019cd8f952f738c10d5a950ee52ff0084750b81f656a58a4a78515d" +metafile = true + +[[files]] +file = "mods/architectury-api.pw.toml" +hash = "ea336d25c3e21ef168aec20e1ea470c96949ad29632646ee8e8ab0d74b4bbfc9" +metafile = true + +[[files]] +file = "mods/armourers-workshop.pw.toml" +hash = "735660605aff58b7a921c328a62195c3600d23b9e7709784c3863bd618adc19a" +metafile = true + +[[files]] +file = "mods/attributefix.pw.toml" +hash = "586341de7078015cea16ffaf8e2e198a16c43b306d70bc439a15ea0298f9d3cb" +metafile = true + +[[files]] +file = "mods/bad-wither-no-cookie.pw.toml" +hash = "574807cedb57ba6360060d6bf4a359cea9d00bf8700caee866d48ab949005b89" +metafile = true + +[[files]] +file = "mods/badoptimizations.pw.toml" +hash = "c92c73551dc3ba9f116e0cef1e90bb553bf59f34530c7c281af28ac624a3a9d6" +metafile = true + +[[files]] +file = "mods/balm.pw.toml" +hash = "13e7e233a4a658aa21212e45aecc6b20efb3cc34932836c2a6fed70c8d20ce23" +metafile = true + +[[files]] +file = "mods/barbeques-delight-forge.pw.toml" +hash = "835ef70e3767f9a37474ca44366be17e6603212cd1333fd76266060d1771917e" +metafile = true + +[[files]] +file = "mods/berry-good.pw.toml" +hash = "781a0931f5ab4cc333717c2d6a56ce311474d2c0bd27681c4126aa8f24e97aa8" +metafile = true + +[[files]] +file = "mods/better-advancements.pw.toml" +hash = "93c4acd165a291c6d1e69c27b05b2747afc926b38a414712263fbc95f42da323" +metafile = true + +[[files]] +file = "mods/better-animations-collection.pw.toml" +hash = "fbb8968dd31ab07131a8885ddf4f70999fad54cdd68d448dbb09dd56b2bf7919" +metafile = true + +[[files]] +file = "mods/better-third-person.pw.toml" +hash = "e1f1588b18947699ddc9b4f7c5b5406c5559155b8cb52dcd0f203c07c31cd0b8" +metafile = true + +[[files]] +file = "mods/betterf3.pw.toml" +hash = "c9aca350959a8936b054c7164fb55d789ab1e0d38cff2af48b78f70af2bc0c6d" +metafile = true + +[[files]] +file = "mods/blueprint.pw.toml" +hash = "02c2891e2548adf5c59d0ef237ed01ffd89632b4908290269b513c4958ca9043" +metafile = true + +[[files]] +file = "mods/bookshelf-lib.pw.toml" +hash = "293ec22e4e8342a9bd0f338505a14e3794b44cd7ca1e5278a86f41f99c69a3af" +metafile = true + +[[files]] +file = "mods/cant-sleep-clowns-will-eat-me.pw.toml" +hash = "c9b95c629249ab90b4baeb88f501c51592b52f3edddb20ebf6eed96631a54839" +metafile = true + +[[files]] +file = "mods/cloth-config.pw.toml" +hash = "75181b55e0407d1fca1e2f346c6501f919f5109545990ddfb66db9cd1b771f8a" +metafile = true + +[[files]] +file = "mods/clumps.pw.toml" +hash = "2acaff560bbda5741538528a2967355ec86a8f7564adba0b2316989c66892374" +metafile = true + +[[files]] +file = "mods/cobblemon-additions.pw.toml" +hash = "d94f943034bca0270c72a3e56a9ef4864d81e2300c5e64418ee2b2619b7d979b" +metafile = true + +[[files]] +file = "mods/cobblemon-counter.pw.toml" +hash = "46e0f70fdcc4d47e3750b8b62a9d69c2accc3b08aafc25891ba1617c3c586714" +metafile = true + +[[files]] +file = "mods/cobblemon-fight-or-flight-reborn.pw.toml" +hash = "c6c63f3818b49bf0de7d5000e43ef6a381faf7d46198b13771ab6080c751f56c" +metafile = true + +[[files]] +file = "mods/cobblemon-integrations.pw.toml" +hash = "d21c41437169bb49b9b92bc97a2f05daa45bcd56744f590a2a858840a5f56044" +metafile = true + +[[files]] +file = "mods/cobblemon-pokenav.pw.toml" +hash = "0d1d81244b3898bfeced61aaba79e063ced9778f0c70aaddd0bd2442131066b5" +metafile = true + +[[files]] +file = "mods/cobblemon-unchained.pw.toml" +hash = "556abed0327d7cd3e96c31a0b9a2a483c52fa4adb04d11b9896a34560d5b18f7" +metafile = true + +[[files]] +file = "mods/cobblemon.pw.toml" +hash = "e3cb1eb238192071af93f764e3ff2c493f4f437802bb56273f664bafdea13f1d" +metafile = true + +[[files]] +file = "mods/colorwheel-patcher.pw.toml" +hash = "2d8c419acad3bab8eb54c6d5461f99ab76d924b753a9c811e7e94d624fe32f61" +metafile = true + +[[files]] +file = "mods/colorwheel.pw.toml" +hash = "9da820e4bd91294a900ec2c2859fa8ae261a573922df3a15ca64cb838c76df9f" +metafile = true + +[[files]] +file = "mods/comforts.pw.toml" +hash = "5e0a875282f4abed66a2cccf7929488ebb5e88447d2bb3369e8ddc728fc66fc0" +metafile = true + +[[files]] +file = "mods/connector.pw.toml" +hash = "9f920c5f1df2577cf374285e4aad4f2982a30ea2a3da1cf7ddaf25e04b3a2e31" +metafile = true + +[[files]] +file = "mods/controlling.pw.toml" +hash = "65c8086d2ec3d39acc7bd36c7a0306ccc43b602b38fa07d13291bc478ef7dfff" +metafile = true + +[[files]] +file = "mods/corn-delight.pw.toml" +hash = "a7216dad68fe8cabfbdcced66ad94e1da20d23fe531e03022f877ffead92df50" +metafile = true + +[[files]] +file = "mods/corpse.pw.toml" +hash = "d0c4db41717ede48a6f9c47ce2cd30a4336b7520279cac56649f96939cd1e7cb" +metafile = true + +[[files]] +file = "mods/crabbers-delight.pw.toml" +hash = "cd66e48a19b8447ef66c6148bbcd5ecb363f4a7b472dba385b4b790feae0ad0f" +metafile = true + +[[files]] +file = "mods/create-dragons-plus.pw.toml" +hash = "8e88d68a9dee5ca107ea3fd5d5394e52ae4e4f03decfc33974d6a958ccb200b5" +metafile = true + +[[files]] +file = "mods/create-enchantment-industry.pw.toml" +hash = "0177b98d7552743df5bd62e45d2efe012d8d416c53f94735a0d4074468f5a2ca" +metafile = true + +[[files]] +file = "mods/create.pw.toml" +hash = "7f25446123f66f57e7cc8e148155a3da39d85b31963c663b5b9be77fc1bacbe6" +metafile = true + +[[files]] +file = "mods/creativecore.pw.toml" +hash = "6028668d5c1c5e49797eb97bb597d818be33a67a939d0cc356a702460b504675" +metafile = true + +[[files]] +file = "mods/curios.pw.toml" +hash = "36debf7653e95a855b4fedacc19027cf2e01960fc0b6d55ef2ffbffbcb455690" +metafile = true + +[[files]] +file = "mods/cut-through.pw.toml" +hash = "4c16ee75d3b04443e96d854eec79344293963e9f4beaaf8e7215023e8ef53b88" +metafile = true + +[[files]] +file = "mods/deep-aether.pw.toml" +hash = "21134d88b6a1063faa58aec8163a1fb63316dbbed9bce8a50c0ab9613412f92a" +metafile = true + +[[files]] +file = "mods/default-options.pw.toml" +hash = "8950c7377844b642f7e6547b821691f395a6d3f90f8cf9a6d740e390792a2de3" +metafile = true + +[[files]] +file = "mods/diagonal-fences.pw.toml" +hash = "632743d54d410c8b78fb92c94d8f3bb6a7a3faed45171f91e554877f94f82163" +metafile = true + +[[files]] +file = "mods/diagonal-walls.pw.toml" +hash = "bbc15c019fd260bbb9058b14a8e03232a55df77608d9aca466d051007d62abd2" +metafile = true + +[[files]] +file = "mods/diagonal-windows.pw.toml" +hash = "218dcd780f0251a15f78b097206ea22a519d57b974b39e2fdd43dce91ac07133" +metafile = true + +[[files]] +file = "mods/distanthorizons.pw.toml" +hash = "34fc0845727b08bc39e5b56444e0695b55f6a5471380f2d1d40c5548105da28e" +metafile = true + +[[files]] +file = "mods/distinguished-potions.pw.toml" +hash = "fa1ff0b4d2c6fc9c26b74ba4b06d30f1e6d77763c6e2823b42fb2c08f5b72f13" +metafile = true + +[[files]] +file = "mods/dynamic-fps.pw.toml" +hash = "975f1280c712d2e86dd4ecddf89c516afbf3f1fb684499d3e5c71fc666c4888c" +metafile = true + +[[files]] +file = "mods/edivadlib.pw.toml" +hash = "e2ee2481b63a012bdfb8c9f588788dd2f116ff48298014bb3e00d08a224fe14f" +metafile = true + +[[files]] +file = "mods/emi-create-schematics.pw.toml" +hash = "8a9bf4dfd8d29112e64dbffd71a84aba5279f6c85ed31233f026c84ebc4ef688" +metafile = true + +[[files]] +file = "mods/emi-enchanting.pw.toml" +hash = "ff029ee6fc50f2696e96cdbcc696f42e75b483c9d7b83f2b1447dcf5c865e664" +metafile = true + +[[files]] +file = "mods/emi-loot.pw.toml" +hash = "bbf03bec2bd4927ace16eef106c45b0f3ec53c48d5f43119520123ad98f3fdf1" +metafile = true + +[[files]] +file = "mods/emi-ores.pw.toml" +hash = "0b921f73d5b1ad6615740956567d6cb06950f5520f094dbb7a045bb4bd5ba309" +metafile = true + +[[files]] +file = "mods/emi-professions-(emip).pw.toml" +hash = "0477d572817d9de3a5569109a8d07a2e519af9ccf0e8236cae621369afbc6e4c" +metafile = true + +[[files]] +file = "mods/emi.pw.toml" +hash = "d3c9b48d7caa2ed964e5d1a4dab1da5655c63f0a7e4a59231c4369be7ffc30e1" +metafile = true + +[[files]] +file = "mods/emiffect.pw.toml" +hash = "34342d4a5a9a4853c653cf768309d5b42f651250dc832bc239e746c736c70411" +metafile = true + +[[files]] +file = "mods/enchantment-descriptions.pw.toml" +hash = "0b380e24e46e328c362bda7cff892c5b0e471789ca8c429fd2a588eaf63b8712" +metafile = true + +[[files]] +file = "mods/ends-delight.pw.toml" +hash = "c31e8aea1f4ddc50d79c6dfa46dec8cbbf1a6108ff74db140baa0395ea4c5766" +metafile = true + +[[files]] +file = "mods/entityculling.pw.toml" +hash = "65026277699cc4b73c3d2c57ab7aad5173f161c0d6ff95e184911826387dbdec" +metafile = true + +[[files]] +file = "mods/every-compat.pw.toml" +hash = "6235e7170c7322559d2b0e76a97c891dbab60e79c15a9d4cb3a4805b5d23fbda" +metafile = true + +[[files]] +file = "mods/extra-mod-integrations.pw.toml" +hash = "6f59e18621f30c6dc0ffa7f34324b423f3e3a7a8c251560c6a1dd835b6bce87a" +metafile = true + +[[files]] +file = "mods/extrastorage.pw.toml" +hash = "3c242c20cc1c5ef446abf5f56a1e0624bfd038ee3bc685435cec846b0051aab0" +metafile = true + +[[files]] +file = "mods/farmers-delight.pw.toml" +hash = "c4027b8071cc6dfc7f0d49e702a5e25b1e36841e50acba1e699f308be156b8f2" +metafile = true + +[[files]] +file = "mods/forgified-fabric-api.pw.toml" +hash = "5b34f5aff5000de94ed9e132315bad7288a72a9cbb8f902df2799a579433b7af" +metafile = true + +[[files]] +file = "mods/friends-and-foes-beekeeper-hut-forge.pw.toml" +hash = "75c642b17b484c0d7c4ec9863295c24364ef69785937d15a80de568efafd585a" +metafile = true + +[[files]] +file = "mods/friends-and-foes-flowery-mooblooms-forge.pw.toml" +hash = "1cdeed5adabcbac7ca3d06ead6392d43ae400557f71275c5449ec2505008cd40" +metafile = true + +[[files]] +file = "mods/friends-and-foes-forge.pw.toml" +hash = "3ea8f49ae191f67ce56f1fad83147dbfd08b21640b9a4ce3330eea448664e92a" +metafile = true + +[[files]] +file = "mods/fruits-delight.pw.toml" +hash = "bd1e1bf1cacb4f256a606a06b0f28a7adf99428bf2bf593b7631c85b1108374d" +metafile = true + +[[files]] +file = "mods/fzzy-config.pw.toml" +hash = "b83675c9b88fcd909a7e1a0d93f8bfb06431f8f9f249d690520ba11e738c4402" +metafile = true + +[[files]] +file = "mods/geckolib.pw.toml" +hash = "9e80e6f2a680b052f2a66ade20a5abbd98a0abbebde6f30472d6ae6b993e9464" +metafile = true + +[[files]] +file = "mods/hardcore-revival.pw.toml" +hash = "2c0d0941d6ade8fb28d43b2ba211678aa643d229f0df0c2112442de1e5073a7b" +metafile = true + +[[files]] +file = "mods/immersiveengineering.pw.toml" +hash = "91875c996a9958aeea794843fb449915218625f52aaf0234ccd1faffa887e277" +metafile = true + +[[files]] +file = "mods/immersivemusicmod.pw.toml" +hash = "9b105ded2255d63b2b4d8b3bb24c14e467617d56019dc9abafe64cbb0c0d3cfa" +metafile = true + +[[files]] +file = "mods/inventory-hud-forge.pw.toml" +hash = "bacbda049bf918a3a048f017a23e3197a91d31ab905e25f7a811d69d55344ca6" +metafile = true + +[[files]] +file = "mods/iris.pw.toml" +hash = "f67aa60c765593a8c70f78296a460349c6aef5f4a16d173eae02e8803b545ad4" +metafile = true + +[[files]] +file = "mods/irons-spells-n-spellbooks.pw.toml" +hash = "cf1bb72bbbb1ad55af745b6ccb8baf8ff5d6914dc11e41e4752212ca3eb17440" +metafile = true + +[[files]] +file = "mods/jade.pw.toml" +hash = "407c4cc8cb9920a9b23674d81952c512302525755d8fba12e94acecaaae949e7" +metafile = true + +[[files]] +file = "mods/jei.pw.toml" +hash = "49b54c496707ed15e2f22cd806cbebb3d3ac489483d97f4b61495690e2eeecea" +metafile = true + +[[files]] +file = "mods/journey-pac.pw.toml" +hash = "c1a7d513c59eeb49bd2f377236357a280cc2e1d206c3eb3985a3a4615ed97aec" +metafile = true + +[[files]] +file = "mods/journeymap-integration.pw.toml" +hash = "f161cd39e3619182a8606ec812634d74713d32ca30c3585bdf7d40b7bb573919" +metafile = true + +[[files]] +file = "mods/journeymap.pw.toml" +hash = "cc903c56f854019dc420ab9a088e1a3a328e7839291aafae038f37005e59988e" +metafile = true + +[[files]] +file = "mods/kiwi.pw.toml" +hash = "a5e837dd0b40e4c730252cd8b571a28bb8baab22ab8c277d2293b39ab403c201" +metafile = true + +[[files]] +file = "mods/kotlin-for-forge.pw.toml" +hash = "297eb75ce1aedc28f183a8891fde9c67318953e6c8adf3d7531a17b211f9349d" +metafile = true + +[[files]] +file = "mods/l_enders-cataclysm.pw.toml" +hash = "5d1be74f86f5f9ec1b414368fbee483859048e17f51376efae530b32135377ea" +metafile = true + +[[files]] +file = "mods/leave-my-bars-alone.pw.toml" +hash = "6fc46d72336be11582b933177410f6e0e1e89c5464e19a1885c5ce80738b01c5" +metafile = true + +[[files]] +file = "mods/leaves-be-gone.pw.toml" +hash = "6917553073df67745da1d535cc6107839a76b54081b1b6f368a38c723f5fd8c7" +metafile = true + +[[files]] +file = "mods/lionfish-api.pw.toml" +hash = "b821efc793dd7308be6788095bea26a2a0479f9a3ddc3b0d6a6a2af351153fc0" +metafile = true + +[[files]] +file = "mods/lithostitched.pw.toml" +hash = "c18ca4f4035e67182ea949ee2d6cd2c31409306ffc404c0c14bc5c1c212747a8" +metafile = true + +[[files]] +file = "mods/magnum-torch.pw.toml" +hash = "f0c97c0212ddda5c012ba451a123d4b39e89f402cc70d38d31dc9098736ec07f" +metafile = true + +[[files]] +file = "mods/mmlib.pw.toml" +hash = "59f033615895cd019f9fb168fa93590422c5050274630a8faec46460979a5156" +metafile = true + +[[files]] +file = "mods/modelfix.pw.toml" +hash = "6f0dcbcffd4400c6cef07f1eeb48cdc25bac0fa01270936feab4c549aff4738e" +metafile = true + +[[files]] +file = "mods/moderately-enough-effect-descriptions-(meed)-jeed-addon.pw.toml" +hash = "67cf0829e2773cb44edda983e169b8197deb8e87b1cc8e1669c6ad5e4c760880" +metafile = true + +[[files]] +file = "mods/modernfix.pw.toml" +hash = "a9593968393bae08257ba9aae887ad60fc49991f676b637006b2bcd89907f09a" +metafile = true + +[[files]] +file = "mods/moonlight.pw.toml" +hash = "2219a1b4f53f8a96bf1e9827aa695e84ad9d53623f7fe40b88ccd260c732cc98" +metafile = true + +[[files]] +file = "mods/more-concrete.pw.toml" +hash = "af08c145608a13f68a624394b68611753f7d7d6f439538e2c328eea60be5a8e1" +metafile = true + +[[files]] +file = "mods/mouse-tweaks.pw.toml" +hash = "6bc414cc0f2d4c078fe83f384d786343f701f371d657c5279b5b0df1595804bd" +metafile = true + +[[files]] +file = "mods/no-chat-reports.pw.toml" +hash = "5da18814472be5dc93a21886983646da3a7236413800075ac75229be82d114fa" +metafile = true + +[[files]] +file = "mods/noisium.pw.toml" +hash = "b3e831b3e4d6ddbf23806b0fec6087eca264af1ebc04e747c89024972aaa8607" +metafile = true + +[[files]] +file = "mods/notenoughrecipebook.pw.toml" +hash = "8c36ea5d11344480d76f8463f452c4ecc8ee59781667589ea2fd7b69f6ee86e8" +metafile = true + +[[files]] +file = "mods/nullscape.pw.toml" +hash = "71dba581a68de19790dd6888e515d8b693debfc915a18ffb82af473c395f4dd3" +metafile = true + +[[files]] +file = "mods/oceans-delight.pw.toml" +hash = "152f6cfe8ee891ba80faa800dd3df3058be14882f9f8d07cb38eb6a6f96ece4b" +metafile = true + +[[files]] +file = "mods/octo-lib.pw.toml" +hash = "94828636fa5e8b258a60049250c84ba8c5a0310a98bc1530fc02c351a06aab8b" +metafile = true + +[[files]] +file = "mods/ominous-phantoms.pw.toml" +hash = "086a276f1ab191871a11914448792bcdacc29de00770978b55ebe7d40eb6f4c9" +metafile = true + +[[files]] +file = "mods/open-loader.pw.toml" +hash = "904c4adb3f8087a2c5381efd5d210183484934540372a5c839ab4790325e5cff" +metafile = true + +[[files]] +file = "mods/open-parties-and-claims.pw.toml" +hash = "39261ba5716225d4fcfe98701080fe78ad1832419f620a3789390a5998e918bf" +metafile = true + +[[files]] +file = "mods/overflowing-bars.pw.toml" +hash = "cb40fc0e1e0a3338d57b34a5ba2612ae9a9f0e32619695c4da637a98b4e52cf3" +metafile = true + +[[files]] +file = "mods/owo-lib.pw.toml" +hash = "46831c04077a06df823bcd0f254833a90a9a9ccc78f5069f4b4c27fa301ac0cf" +metafile = true + +[[files]] +file = "mods/pick-up-notifier.pw.toml" +hash = "a1b19740a94f43405c4a9d303e9313911b3d12e48958699bfeaed3dafc57a24f" +metafile = true + +[[files]] +file = "mods/platter.pw.toml" +hash = "f82f7a5186b43d1e40773b8576a711f4d93bf09f4e3dcacc811e896f8271ad9c" +metafile = true + +[[files]] +file = "mods/playeranimator.pw.toml" +hash = "c83705becd548879473132552de960f9d5975fa0edaeeb2d4665a4e35457423e" +metafile = true + +[[files]] +file = "mods/prickle.pw.toml" +hash = "a69a8ba0d9e52361b1853cf59b2cf2a38b668b1d508a565f315f2fa30407f546" +metafile = true + +[[files]] +file = "mods/puzzles-lib.pw.toml" +hash = "b27fedf73ce2b829db06bf18fea5afd33f0a001b75465301c7f5bafe7e3c04d8" +metafile = true + +[[files]] +file = "mods/reeses-sodium-options.pw.toml" +hash = "09306b955060349986ccf6a6d2a67f1e019fa172a7dc690dd6007f81c966309a" +metafile = true + +[[files]] +file = "mods/refined-storage-emi-integration.pw.toml" +hash = "4a5af515250fbde913593346d51b2c4ac8f660e71ba21f65f49a02209bb65509" +metafile = true + +[[files]] +file = "mods/refined-storage.pw.toml" +hash = "f5658cd7ba78eedf85cfb999945eb708adfd8aa65a4f32703bd5711ced59abae" +metafile = true + +[[files]] +file = "mods/resource-pack-overrides.pw.toml" +hash = "b8101dca20d054277d99e75b43dd8db44dea64a761d2ab69fdda9f6d59d9e6f1" +metafile = true + +[[files]] +file = "mods/resourceful-lib.pw.toml" +hash = "c0b066684294c33972d562e0cb08ea17b2d31bcf86cd1d6c63b8e968f0eac7a2" +metafile = true + +[[files]] +file = "mods/respawning-animals.pw.toml" +hash = "c24f3a995c06808a047abf9b8b97fb1e09defcbab121755cb23f7316a6b0bb4c" +metafile = true + +[[files]] +file = "mods/rrls.pw.toml" +hash = "b78044fd79ce21750d05dc61b6aede33c4b87cdc16a26f5aff472d4f73ab623c" +metafile = true + +[[files]] +file = "mods/searchables.pw.toml" +hash = "ce9ddada6ffd55a512149cc474c6a453281a997a5fdf1b7b4a2cc73f875e704a" +metafile = true + +[[files]] +file = "mods/silent-gear.pw.toml" +hash = "3ef17cc38cbe19ee924f20f3bfebb7c52bb2bb0db5e578e32473870bd1de67fa" +metafile = true + +[[files]] +file = "mods/silent-lib.pw.toml" +hash = "0270a241e1d1c3c8e1ecda59aeaa5004771a57d46a4a470566cb7dd6d7e89c85" +metafile = true + +[[files]] +file = "mods/simpletms-tms-and-trs-for-cobblemon.pw.toml" +hash = "f8ba20a06c8391dedc25741ab2817e1af2bfb9a182eee248471dae4b41eb7d77" +metafile = true + +[[files]] +file = "mods/snow-real-magic.pw.toml" +hash = "a1deef8071fb83a13df63c289576813b82f0687eebda9b48b7667620d5d45103" +metafile = true + +[[files]] +file = "mods/snow-under-trees.pw.toml" +hash = "82aedef3c457ffe51e27a4153aaf73ef7c073b87059a021495af487e41ed2e99" +metafile = true + +[[files]] +file = "mods/sodium-dynamic-lights.pw.toml" +hash = "c1e526d3d17cb3563e596d45c7567ed1fe60c31bdc3457f7a747ef8150bd3c1b" +metafile = true + +[[files]] +file = "mods/sodium-extra.pw.toml" +hash = "a1fb713df668ed21dda0602e99cb23b991c8faff841e130d7aae46258c3d6a45" +metafile = true + +[[files]] +file = "mods/sodium-extras.pw.toml" +hash = "02b29315d2ec0d055d0ebba1f36879da5bcacc823328a668c7e7340fb2cb03d4" +metafile = true + +[[files]] +file = "mods/sodium-options-api.pw.toml" +hash = "d193173f0f5dfb4a921d44e29e8d5cee656dd3a40872939069715bb482b66fc9" +metafile = true + +[[files]] +file = "mods/sodium.pw.toml" +hash = "0281ed9713f3141bdac363056a791845510e14761ea65b4b2813cf96d664b20a" +metafile = true + +[[files]] +file = "mods/sophisticated-backpacks.pw.toml" +hash = "8dd03896ae32eb04e41632127b7265b7fc8b6771ea02bf68830eb9dc8eaba6bc" +metafile = true + +[[files]] +file = "mods/sophisticated-core.pw.toml" +hash = "e770af79af2825410069e4889865dc2da89c0d46a21c0e4991749740ea32959b" +metafile = true + +[[files]] +file = "mods/sophisticated-storage-create-integration.pw.toml" +hash = "27ff0f0f6845e5ca640a1d0eaa70ec9af869e5794c18abf65546a23c9ceac765" +metafile = true + +[[files]] +file = "mods/sophisticated-storage.pw.toml" +hash = "f21fbfc70bc381e1beb3d8e123ec7a9fe5290e70bc0b91fe53e26e2244c71ef0" +metafile = true + +[[files]] +file = "mods/spice-of-life-onion.pw.toml" +hash = "bce75bb35eb4719687f61b217bb57d83ef0e63040c291354c1b2369f3c508680" +metafile = true + +[[files]] +file = "mods/storage-delight.pw.toml" +hash = "0ccdb1ac3f7fffacc28ffa235bdf7e37105c088095f96b6e3fc9748d64328b94" +metafile = true + +[[files]] +file = "mods/stylish-effects.pw.toml" +hash = "07208867dff9eb56eed1f370186187dab4ac0c1086d57ce5fd9ce07ea93a5320" +metafile = true + +[[files]] +file = "mods/subtle-effects.pw.toml" +hash = "d42a1a14488605365ab717784d6552dcfa3ad45f09332e0b983eab7516848c68" +metafile = true + +[[files]] +file = "mods/tax-free-levels.pw.toml" +hash = "dbfe27c8d868f5d934b882b8d26f3772fad78d97da191937d051a4f5c81a0b3b" +metafile = true + +[[files]] +file = "mods/tectonic.pw.toml" +hash = "3601406f8001d9e5a1564e0bed50a4b92f75d435af37415e44900ae74273bb0e" +metafile = true + +[[files]] +file = "mods/terralith.pw.toml" +hash = "da7ee99189ad35aac094919fe33cac647d98533b23c228f10d4811f08989e2b8" +metafile = true + +[[files]] +file = "mods/tidal-towns.pw.toml" +hash = "0ccb1c696758d7935d02dd5160987cab8d3594ab24f89deb01c28f9e596094e7" +metafile = true + +[[files]] +file = "mods/wall-jump-txf.pw.toml" +hash = "4ba37fc038fb52396b3557d6249d96c45acd8feec0355589032ea625d0a9edd6" +metafile = true + +[[files]] +file = "mods/yacl.pw.toml" +hash = "aa9070a0e763f00f0d0b325e9bb980e53faabe9854bae25f2e542a7b81b7492e" +metafile = true + +[[files]] +file = "mods/yeetus-experimentus.pw.toml" +hash = "5e25dccab496945a5f19bb82383e0ebf98452ffc14cd25c7e0259cc44312281a" +metafile = true + +[[files]] +file = "mods/yungs-api.pw.toml" +hash = "d9c0c9209bac0b693af2a7c1e47ffb28d366bad19c91df31dc6d345fa75250a1" +metafile = true + +[[files]] +file = "mods/yungs-better-desert-temples.pw.toml" +hash = "c2cb28859e7bcc0eb4ce59c5792f90fa5f8ab8865f5867ba26a5a345ec60b498" +metafile = true + +[[files]] +file = "mods/yungs-better-dungeons.pw.toml" +hash = "1496ffa30020676979e65921b91e583a2fdc77e50001e2ed55f99edf1a0ae880" +metafile = true + +[[files]] +file = "mods/yungs-better-end-island.pw.toml" +hash = "03d964cba45be30fbcbef52f89f3953185737f55c8934d12e199b67194c2b368" +metafile = true + +[[files]] +file = "mods/yungs-better-jungle-temples.pw.toml" +hash = "c2dc09f214e7c1cecca6cf434776c2616f6d36bd27c06a6b39f985da0453a4f5" +metafile = true + +[[files]] +file = "mods/yungs-better-mineshafts.pw.toml" +hash = "e839608ebc974e9e7819adc7bf29132ea86fc41b46af540fe0fa39b2007b2439" +metafile = true + +[[files]] +file = "mods/yungs-better-nether-fortresses.pw.toml" +hash = "50c1731148d91a4ef05cfc47f759ca8fb3dad254e15ce4ecc5732d6fbfa68637" +metafile = true + +[[files]] +file = "mods/yungs-better-ocean-monuments.pw.toml" +hash = "a2d7176026abf4a68a663b375811a603c508f36062cc7fb5b45416e1462682a8" +metafile = true + +[[files]] +file = "mods/yungs-better-strongholds.pw.toml" +hash = "03084966c05070b5c4b17cd89234f3c0d813940a2d76b405a6699deac10a0ab8" +metafile = true + +[[files]] +file = "mods/yungs-better-witch-huts.pw.toml" +hash = "9854b699d5a067c46ac99b1dedeeb529bff3fc18dd079e29b438c4cbf9725f68" +metafile = true + +[[files]] +file = "mods/yungs-bridges.pw.toml" +hash = "c5e5f5aed37edd8073ec736e179b6159530ff497f4fe4c4dfaf954c810910433" +metafile = true + +[[files]] +file = "mods/yungs-extras.pw.toml" +hash = "cfb7ce4c2b00cedd2e61f7d345b824d6bcc1471021668d2319ee2e4079108639" +metafile = true + +[[files]] +file = "shaderpacks/complementary-reimagined.pw.toml" +hash = "3385e33cb8e2cbf402562dcb68669cc2905fec01b4be9fe27a516010c5aaff87" +metafile = true diff --git a/pkgs/minecraftmon/mods/aether-emissivity.pw.toml b/pkgs/minecraftmon/mods/aether-emissivity.pw.toml new file mode 100644 index 0000000..0c2008c --- /dev/null +++ b/pkgs/minecraftmon/mods/aether-emissivity.pw.toml @@ -0,0 +1,13 @@ +name = "Aether Addon: Emissivity" +filename = "aether_emissivity-1.21.1-1.0.1-neoforge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/sKHHynnb/versions/NgXUuFDh/aether_emissivity-1.21.1-1.0.1-neoforge.jar" +hash-format = "sha512" +hash = "51d68890596958d9dba32afce0f27b8d03fcfbaafec654c8604e847beef681adb895b85a349380997d448449c86d255825b0061290daf0db5fe890bc31016689" + +[update] +[update.modrinth] +mod-id = "sKHHynnb" +version = "NgXUuFDh" diff --git a/pkgs/minecraftmon/mods/aether-enhanced-extinguishing.pw.toml b/pkgs/minecraftmon/mods/aether-enhanced-extinguishing.pw.toml new file mode 100644 index 0000000..d26ab56 --- /dev/null +++ b/pkgs/minecraftmon/mods/aether-enhanced-extinguishing.pw.toml @@ -0,0 +1,13 @@ +name = "Aether Addon: Enhanced Extinguishing" +filename = "aether_enhanced_extinguishing-1.21.1-1.0.0-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/FDrEl7QY/versions/6O6CJTuj/aether_enhanced_extinguishing-1.21.1-1.0.0-neoforge.jar" +hash-format = "sha512" +hash = "006a921f1c52bd8aa0c195cda646ab6787c28bbc70ebed66d7d444838f464ba8be479c74b801deeb9aaf3ddf7350ea238fc73228af275a7112783d91c064d4b0" + +[update] +[update.modrinth] +mod-id = "FDrEl7QY" +version = "6O6CJTuj" diff --git a/pkgs/minecraftmon/mods/aether.pw.toml b/pkgs/minecraftmon/mods/aether.pw.toml new file mode 100644 index 0000000..8a2e36b --- /dev/null +++ b/pkgs/minecraftmon/mods/aether.pw.toml @@ -0,0 +1,13 @@ +name = "The Aether" +filename = "aether-1.21.1-1.5.8-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/YhmgMVyu/versions/IOyjRzWX/aether-1.21.1-1.5.8-neoforge.jar" +hash-format = "sha512" +hash = "3343a8d87f49ae46eeae1aa657bcec8a6a6451110ffee18bc7d6e6b5df5a85c01a534c1bc01ef7f62648abc8a8ee408ac741891cd066804fa3fe6761b9532f7e" + +[update] +[update.modrinth] +mod-id = "YhmgMVyu" +version = "IOyjRzWX" diff --git a/pkgs/minecraftmon/mods/ambientsounds.pw.toml b/pkgs/minecraftmon/mods/ambientsounds.pw.toml new file mode 100644 index 0000000..4617300 --- /dev/null +++ b/pkgs/minecraftmon/mods/ambientsounds.pw.toml @@ -0,0 +1,13 @@ +name = "AmbientSounds" +filename = "AmbientSounds_NEOFORGE_v6.1.12_mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/fM515JnW/versions/YY79wyx3/AmbientSounds_NEOFORGE_v6.1.12_mc1.21.1.jar" +hash-format = "sha512" +hash = "9af4fdae4d520924299baea52a56c2bb3ce6997d356ba7e74d5a48cf42ee6353583037fa3cbc36172c97cff806b321bbb8d9b8d4065465cfbf8d883b67c80340" + +[update] +[update.modrinth] +mod-id = "fM515JnW" +version = "YY79wyx3" diff --git a/pkgs/minecraftmon/mods/appleskin.pw.toml b/pkgs/minecraftmon/mods/appleskin.pw.toml new file mode 100644 index 0000000..23f5126 --- /dev/null +++ b/pkgs/minecraftmon/mods/appleskin.pw.toml @@ -0,0 +1,13 @@ +name = "AppleSkin" +filename = "appleskin-neoforge-mc1.21-3.0.7.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/EsAfCjCV/versions/kztxpjAA/appleskin-neoforge-mc1.21-3.0.7.jar" +hash-format = "sha512" +hash = "03a94fe4143250b8e80abe97770918ba0af1265110bb73c25444674f9cdf86164464332a913cbac29af82d8ed02dce6ef19bbb62fced92620817a7ec1e761b71" + +[update] +[update.modrinth] +mod-id = "EsAfCjCV" +version = "kztxpjAA" diff --git a/pkgs/minecraftmon/mods/architectury-api.pw.toml b/pkgs/minecraftmon/mods/architectury-api.pw.toml new file mode 100644 index 0000000..79469bb --- /dev/null +++ b/pkgs/minecraftmon/mods/architectury-api.pw.toml @@ -0,0 +1,13 @@ +name = "Architectury API" +filename = "architectury-13.0.8-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/lhGA9TYQ/versions/ZxYGwlk0/architectury-13.0.8-neoforge.jar" +hash-format = "sha512" +hash = "65e3664953385d880320dd6bb818bcb96d361c07c53e2a7f65e64c6a47720ee26b233224ae9cad465ef0b2bbaefdaf30fb0175a983cecd91de058817d6fcf57e" + +[update] +[update.modrinth] +mod-id = "lhGA9TYQ" +version = "ZxYGwlk0" diff --git a/pkgs/minecraftmon/mods/armourers-workshop.pw.toml b/pkgs/minecraftmon/mods/armourers-workshop.pw.toml new file mode 100644 index 0000000..3eef4dd --- /dev/null +++ b/pkgs/minecraftmon/mods/armourers-workshop.pw.toml @@ -0,0 +1,13 @@ +name = "Armourer's Workshop" +filename = "armourersworkshop-forge-1.21.1-3.2.3-beta.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/y4JF3gXL/versions/gWKk3ffs/armourersworkshop-forge-1.21.1-3.2.3-beta.jar" +hash-format = "sha512" +hash = "d36aa65096c3293db2b6f4056123f737823bd55eeaf86984e9bfd83d3ab33e68f0e38770962913530d4113ceebac6ebb53676c739975aac8a56f646eccd7fd0c" + +[update] +[update.modrinth] +mod-id = "y4JF3gXL" +version = "gWKk3ffs" diff --git a/pkgs/minecraftmon/mods/attributefix.pw.toml b/pkgs/minecraftmon/mods/attributefix.pw.toml new file mode 100644 index 0000000..2e75df6 --- /dev/null +++ b/pkgs/minecraftmon/mods/attributefix.pw.toml @@ -0,0 +1,13 @@ +name = "AttributeFix" +filename = "attributefix-neoforge-1.21.1-21.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/lOOpEntO/versions/a0oKmnPU/attributefix-neoforge-1.21.1-21.1.2.jar" +hash-format = "sha512" +hash = "bbfe003ed29a2bb0b4dd0a61d64b411748c9f5cb48ccbfd954dd2d813c452c540638749b6f19e7472e44ae1e966a3629b135190ffba3099cfdf45355618c0b97" + +[update] +[update.modrinth] +mod-id = "lOOpEntO" +version = "a0oKmnPU" diff --git a/pkgs/minecraftmon/mods/bad-wither-no-cookie.pw.toml b/pkgs/minecraftmon/mods/bad-wither-no-cookie.pw.toml new file mode 100644 index 0000000..1d1d265 --- /dev/null +++ b/pkgs/minecraftmon/mods/bad-wither-no-cookie.pw.toml @@ -0,0 +1,13 @@ +name = "Bad Wither No Cookie - Reloaded" +filename = "bwncr-neoforge-1.21.1-3.20.3.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/lL2MtE37/versions/Vg54emzq/bwncr-neoforge-1.21.1-3.20.3.jar" +hash-format = "sha512" +hash = "db8419504e6ede1553b2e2d060fe4937c53898154c66475b726381155233a55daa0f52a530562dfc84202692e52614f8c585e89b1f8621f6bf799ce6d97c91ab" + +[update] +[update.modrinth] +mod-id = "lL2MtE37" +version = "Vg54emzq" diff --git a/pkgs/minecraftmon/mods/badoptimizations.pw.toml b/pkgs/minecraftmon/mods/badoptimizations.pw.toml new file mode 100644 index 0000000..4d677b1 --- /dev/null +++ b/pkgs/minecraftmon/mods/badoptimizations.pw.toml @@ -0,0 +1,13 @@ +name = "BadOptimizations" +filename = "BadOptimizations-2.3.0-1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/g96Z4WVZ/versions/AQrpXs3f/BadOptimizations-2.3.0-1.21.1.jar" +hash-format = "sha512" +hash = "a9d78ab8d84d0ba3ebfd77eb3c4f585b9c3f0cad8e59b0ecef8c3ba107067342d7549f275c8fe45a5d4f35f7d848a15c184ad6e369044e659d17ce08afe91a77" + +[update] +[update.modrinth] +mod-id = "g96Z4WVZ" +version = "AQrpXs3f" diff --git a/pkgs/minecraftmon/mods/balm.pw.toml b/pkgs/minecraftmon/mods/balm.pw.toml new file mode 100644 index 0000000..20eee59 --- /dev/null +++ b/pkgs/minecraftmon/mods/balm.pw.toml @@ -0,0 +1,13 @@ +name = "Balm" +filename = "balm-neoforge-1.21.1-21.0.48.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/MBAkmtvl/versions/flSytBwz/balm-neoforge-1.21.1-21.0.48.jar" +hash-format = "sha512" +hash = "66a601c8b84c994392d5b81766b0610d9fe757c84ae0879799f0f669750c04f7aa4d8e3b9ca6f0049aaa959a1aa5d49d77e570cec678f569b8ad00e96cd09414" + +[update] +[update.modrinth] +mod-id = "MBAkmtvl" +version = "flSytBwz" diff --git a/pkgs/minecraftmon/mods/barbeques-delight-forge.pw.toml b/pkgs/minecraftmon/mods/barbeques-delight-forge.pw.toml new file mode 100644 index 0000000..6e1d723 --- /dev/null +++ b/pkgs/minecraftmon/mods/barbeques-delight-forge.pw.toml @@ -0,0 +1,13 @@ +name = "Barbeque's Delight [Forge/NeoForge]" +filename = "barbequesdelight-1.2.0+3.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/rtu7uERF/versions/h49PLX7j/barbequesdelight-1.2.0%2B3.jar" +hash-format = "sha512" +hash = "d29490f2982bfb225e23a77b37d82a8a35f0b0d6a842205685215eb9005b87ac92ad3ff0bbe3ffa08df1e7f466fadf2e3c245f9be17c15b32e76bf9f023c1cf5" + +[update] +[update.modrinth] +mod-id = "rtu7uERF" +version = "h49PLX7j" diff --git a/pkgs/minecraftmon/mods/berry-good.pw.toml b/pkgs/minecraftmon/mods/berry-good.pw.toml new file mode 100644 index 0000000..0ba2cd4 --- /dev/null +++ b/pkgs/minecraftmon/mods/berry-good.pw.toml @@ -0,0 +1,13 @@ +name = "Berry Good" +filename = "berry_good-1.21.1-8.0.0.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/2WZWaKCl/versions/dJvvZvQk/berry_good-1.21.1-8.0.0.jar" +hash-format = "sha512" +hash = "0fea9a289d39e0d722a323d5777bede66d4850655377c923cd4cae2f864b0e994fc87b0e75df7bd50683f40f08f509a77f3107c9956169326a0c184d7f092970" + +[update] +[update.modrinth] +mod-id = "2WZWaKCl" +version = "dJvvZvQk" diff --git a/pkgs/minecraftmon/mods/better-advancements.pw.toml b/pkgs/minecraftmon/mods/better-advancements.pw.toml new file mode 100644 index 0000000..97b5649 --- /dev/null +++ b/pkgs/minecraftmon/mods/better-advancements.pw.toml @@ -0,0 +1,13 @@ +name = "Better Advancements" +filename = "BetterAdvancements-NeoForge-1.21.1-0.4.3.21.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/Q2OqKxDG/versions/FjTYILOi/BetterAdvancements-NeoForge-1.21.1-0.4.3.21.jar" +hash-format = "sha512" +hash = "b3deafd146dc3ea6e879fbc92f00de5797319a1aa620fb3b39be64c19271dab2efa07f824cda7139f8c22f2524ea413949357f5469bb6de584d1386de069c6b7" + +[update] +[update.modrinth] +mod-id = "Q2OqKxDG" +version = "FjTYILOi" diff --git a/pkgs/minecraftmon/mods/better-animations-collection.pw.toml b/pkgs/minecraftmon/mods/better-animations-collection.pw.toml new file mode 100644 index 0000000..85c025b --- /dev/null +++ b/pkgs/minecraftmon/mods/better-animations-collection.pw.toml @@ -0,0 +1,13 @@ +name = "Better Animations Collection" +filename = "BetterAnimationsCollection-v21.1.0-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/OoOVj3J3/versions/tlFY9zBb/BetterAnimationsCollection-v21.1.0-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "bd99f6040b076ff878e4aae3832e6c494fbaba5d0cb0b26d80c1874c7bd59c11e725705aaeb777d9f1bb821b516e15866600c665a4fba1eafa7a75cbf66307bf" + +[update] +[update.modrinth] +mod-id = "OoOVj3J3" +version = "tlFY9zBb" diff --git a/pkgs/minecraftmon/mods/better-third-person.pw.toml b/pkgs/minecraftmon/mods/better-third-person.pw.toml new file mode 100644 index 0000000..5d12eb6 --- /dev/null +++ b/pkgs/minecraftmon/mods/better-third-person.pw.toml @@ -0,0 +1,13 @@ +name = "Better Third Person" +filename = "BetterThirdPerson-neoforge-1.9.0.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/G1s2WpNo/versions/aG5y4JUQ/BetterThirdPerson-neoforge-1.9.0.jar" +hash-format = "sha512" +hash = "053acb813940aac69578810558056942966f2f0a24006a3a5de545c82888f8190b3bdc27a2401d0f70200dc4c927c0f84a45bf17821fb94fb9b886d633644619" + +[update] +[update.modrinth] +mod-id = "G1s2WpNo" +version = "aG5y4JUQ" diff --git a/pkgs/minecraftmon/mods/betterf3.pw.toml b/pkgs/minecraftmon/mods/betterf3.pw.toml new file mode 100644 index 0000000..d0f1391 --- /dev/null +++ b/pkgs/minecraftmon/mods/betterf3.pw.toml @@ -0,0 +1,13 @@ +name = "BetterF3" +filename = "BetterF3-11.0.3-NeoForge-1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/8shC1gFX/versions/maXNB1dn/BetterF3-11.0.3-NeoForge-1.21.1.jar" +hash-format = "sha512" +hash = "59c36a882669399dce2110db42df05e8fe935a2e1194c4bac49abffc3129b2e19373dfe3c4a3d2f8b22f21b1d66ad8cbd653944ce0a71ae05d3d65528d1b7514" + +[update] +[update.modrinth] +mod-id = "8shC1gFX" +version = "maXNB1dn" diff --git a/pkgs/minecraftmon/mods/blueprint.pw.toml b/pkgs/minecraftmon/mods/blueprint.pw.toml new file mode 100644 index 0000000..892a6f8 --- /dev/null +++ b/pkgs/minecraftmon/mods/blueprint.pw.toml @@ -0,0 +1,13 @@ +name = "Blueprint" +filename = "blueprint-1.21.1-8.0.5.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/VsM5EDoI/versions/l2AucG5l/blueprint-1.21.1-8.0.5.jar" +hash-format = "sha512" +hash = "6a0801d078b233e4e909c9f9644236def1b29dd135bdf64a98c2688edebc0eef266a7b419911035726c565eee616090047e59601ece77033e38108a3e1bfd525" + +[update] +[update.modrinth] +mod-id = "VsM5EDoI" +version = "l2AucG5l" diff --git a/pkgs/minecraftmon/mods/bookshelf-lib.pw.toml b/pkgs/minecraftmon/mods/bookshelf-lib.pw.toml new file mode 100644 index 0000000..27ae897 --- /dev/null +++ b/pkgs/minecraftmon/mods/bookshelf-lib.pw.toml @@ -0,0 +1,13 @@ +name = "Bookshelf" +filename = "bookshelf-neoforge-1.21.1-21.1.67.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/uy4Cnpcm/versions/9LiRySL2/bookshelf-neoforge-1.21.1-21.1.67.jar" +hash-format = "sha512" +hash = "98225af4ba0a8e10e30219b9a2bef39d0aa49425f5f09b6b2c7f627992458e39e30b686d03a8b8c4563eae44505ce94a7d21363700d77b21c1c4771409c34c63" + +[update] +[update.modrinth] +mod-id = "uy4Cnpcm" +version = "9LiRySL2" diff --git a/pkgs/minecraftmon/mods/cant-sleep-clowns-will-eat-me.pw.toml b/pkgs/minecraftmon/mods/cant-sleep-clowns-will-eat-me.pw.toml new file mode 100644 index 0000000..15d1e20 --- /dev/null +++ b/pkgs/minecraftmon/mods/cant-sleep-clowns-will-eat-me.pw.toml @@ -0,0 +1,13 @@ +name = "Can't Sleep Clowns Will Eat Me" +filename = "cant_sleep_clowns_will_eat_me-1.21-2.0.0.0.jar" +side = "both" + +[download] +hash-format = "sha1" +hash = "da6f8415bb3be1f1855b1bb2c617db27683d3dab" +mode = "metadata:curseforge" + +[update] +[update.curseforge] +file-id = 5530236 +project-id = 430957 diff --git a/pkgs/minecraftmon/mods/cloth-config.pw.toml b/pkgs/minecraftmon/mods/cloth-config.pw.toml new file mode 100644 index 0000000..2dac164 --- /dev/null +++ b/pkgs/minecraftmon/mods/cloth-config.pw.toml @@ -0,0 +1,13 @@ +name = "Cloth Config API" +filename = "cloth-config-15.0.140-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/9s6osm5g/versions/izKINKFg/cloth-config-15.0.140-neoforge.jar" +hash-format = "sha512" +hash = "aaf9b010955b8cd294e5a92f069985b18729fd5e2cf22d351f1dff9680f15488688803ec41e77e941cbde130ceb535014ca4c868047d80ab69c2d508e216654d" + +[update] +[update.modrinth] +mod-id = "9s6osm5g" +version = "izKINKFg" diff --git a/pkgs/minecraftmon/mods/clumps.pw.toml b/pkgs/minecraftmon/mods/clumps.pw.toml new file mode 100644 index 0000000..3dcba7e --- /dev/null +++ b/pkgs/minecraftmon/mods/clumps.pw.toml @@ -0,0 +1,13 @@ +name = "Clumps" +filename = "Clumps-neoforge-1.21.1-19.0.0.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/Wnxd13zP/versions/jo7lDoK4/Clumps-neoforge-1.21.1-19.0.0.1.jar" +hash-format = "sha512" +hash = "314d8d8e640d73041f27e0f3f2cad7aad8b4c77dbd7fb31700ef7760362261f77085eed5289555c725d99c3f47a114e7290cd608f39c9f0f12ef74958463bdcc" + +[update] +[update.modrinth] +mod-id = "Wnxd13zP" +version = "jo7lDoK4" diff --git a/pkgs/minecraftmon/mods/cobblemon-additions.pw.toml b/pkgs/minecraftmon/mods/cobblemon-additions.pw.toml new file mode 100644 index 0000000..ac7fb3f --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon-additions.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon additions" +filename = "BCA-Datapack-3.8_CE_norm_M1.21.1_C1.6.1.zip" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/W2pr9jyL/versions/J1wqmyOI/BCA-Datapack-3.8_CE_norm_M1.21.1_C1.6.1.zip" +hash-format = "sha512" +hash = "65d97aeb98572b264badf9c19b7994853472910dc2b9da2c962525e6f635deae812b9bf7a7e1886fcdf5e72764271fa0543d9066bb43f71a60028507e6e4e35c" + +[update] +[update.modrinth] +mod-id = "W2pr9jyL" +version = "J1wqmyOI" diff --git a/pkgs/minecraftmon/mods/cobblemon-counter.pw.toml b/pkgs/minecraftmon/mods/cobblemon-counter.pw.toml new file mode 100644 index 0000000..7780742 --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon-counter.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon Counter" +filename = "cobblemon-counter-1.6-neoforge-1.5.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/rj8uLYP4/versions/4NXvB2jm/cobblemon-counter-1.6-neoforge-1.5.1.jar" +hash-format = "sha512" +hash = "ff49a9e9939ef3c84e941c4070ca923dfc439f5ffed0aad3530db5fc5b70b1c4be5751310cc61e7d61853e25ff2c8a039de5e5cf38827e24aadfd659e0d1b511" + +[update] +[update.modrinth] +mod-id = "rj8uLYP4" +version = "4NXvB2jm" diff --git a/pkgs/minecraftmon/mods/cobblemon-fight-or-flight-reborn.pw.toml b/pkgs/minecraftmon/mods/cobblemon-fight-or-flight-reborn.pw.toml new file mode 100644 index 0000000..50def0f --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon-fight-or-flight-reborn.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon Fight or Flight Reborn" +filename = "fightorflight-neoforge-0.8.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/cTdIg5HZ/versions/9JSwVvPR/fightorflight-neoforge-0.8.2.jar" +hash-format = "sha512" +hash = "3024acdc80eb3e07a914d46ecfc85c9addf2775c6469a5f4d88922d9d0f2fe6599aa8b6c4137bad10bc38dc88c0351eb5d7173bdcbf29a5b238610a3fbf2f80c" + +[update] +[update.modrinth] +mod-id = "cTdIg5HZ" +version = "9JSwVvPR" diff --git a/pkgs/minecraftmon/mods/cobblemon-integrations.pw.toml b/pkgs/minecraftmon/mods/cobblemon-integrations.pw.toml new file mode 100644 index 0000000..258fd9c --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon-integrations.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon Integrations" +filename = "cobblemonintegrations-neoforge-1.21.1-1.1.3.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/NPCfuUI4/versions/slzdgomG/cobblemonintegrations-neoforge-1.21.1-1.1.3.jar" +hash-format = "sha512" +hash = "74a30fdd644638d2fc95bccb8b4c20cb6e5dd33309ccca8c155e30e8e77e8bf3670f6a79a86c4f9404b04bc3ce7b78428cf69a3fb15ba46e4a71a4ddd2f1f471" + +[update] +[update.modrinth] +mod-id = "NPCfuUI4" +version = "slzdgomG" diff --git a/pkgs/minecraftmon/mods/cobblemon-pokenav.pw.toml b/pkgs/minecraftmon/mods/cobblemon-pokenav.pw.toml new file mode 100644 index 0000000..e6ae4d5 --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon-pokenav.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon Pokenav" +filename = "cobblenav-neoforge-2.2.3.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/bI8Nt3uA/versions/O4yCDqfr/cobblenav-neoforge-2.2.3.jar" +hash-format = "sha512" +hash = "3d6d97246a4255c172e13542d551de91d4047934711405cf7717d55bce83dd476fb146318c793592c28331d01fd8887e3e67dda4071d6c34ad8576393401ed12" + +[update] +[update.modrinth] +mod-id = "bI8Nt3uA" +version = "O4yCDqfr" diff --git a/pkgs/minecraftmon/mods/cobblemon-unchained.pw.toml b/pkgs/minecraftmon/mods/cobblemon-unchained.pw.toml new file mode 100644 index 0000000..e17fee7 --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon-unchained.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon Unchained" +filename = "cobblemon-unchained-1.6-neoforge-1.2.3.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/wh0wnzrT/versions/SLb2aN0u/cobblemon-unchained-1.6-neoforge-1.2.3.jar" +hash-format = "sha512" +hash = "c30f82a160794f00534ab31eea3f8e340bb76ce4d950b9825eba34d5a924a7355f31e35f3e4ce98c165c6c29897dbf55fdd75d8603b1c3f3ae3a9f28dac54388" + +[update] +[update.modrinth] +mod-id = "wh0wnzrT" +version = "SLb2aN0u" diff --git a/pkgs/minecraftmon/mods/cobblemon.pw.toml b/pkgs/minecraftmon/mods/cobblemon.pw.toml new file mode 100644 index 0000000..fae2ded --- /dev/null +++ b/pkgs/minecraftmon/mods/cobblemon.pw.toml @@ -0,0 +1,13 @@ +name = "Cobblemon" +filename = "Cobblemon-neoforge-1.6.1+1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/MdwFAVRL/versions/eLcb8xod/Cobblemon-neoforge-1.6.1%2B1.21.1.jar" +hash-format = "sha512" +hash = "9d10fb7aec60c775ea050002b7f8f4390a5bed823a91e68ec088160ddf024860c7a7fb8aef3069b7619009a04335466702150eac6e1502f1c1051d88cb5b3897" + +[update] +[update.modrinth] +mod-id = "MdwFAVRL" +version = "eLcb8xod" diff --git a/pkgs/minecraftmon/mods/colorwheel-patcher.pw.toml b/pkgs/minecraftmon/mods/colorwheel-patcher.pw.toml new file mode 100644 index 0000000..f55daf8 --- /dev/null +++ b/pkgs/minecraftmon/mods/colorwheel-patcher.pw.toml @@ -0,0 +1,13 @@ +name = "Colorwheel Patcher" +filename = "colorwheel_patcher-neoforge-0.2.4+mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/KPsw5jDu/versions/TxG8hsQV/colorwheel_patcher-neoforge-0.2.4%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "ee3fa2cee448fa7733a20d1e0cda6ca6868063ef234c78d55798cff7d62181880639a12655401c7e15329add38b8253292471dc5d96b57d666fec68cacd9ff26" + +[update] +[update.modrinth] +mod-id = "KPsw5jDu" +version = "TxG8hsQV" diff --git a/pkgs/minecraftmon/mods/colorwheel.pw.toml b/pkgs/minecraftmon/mods/colorwheel.pw.toml new file mode 100644 index 0000000..f18aaef --- /dev/null +++ b/pkgs/minecraftmon/mods/colorwheel.pw.toml @@ -0,0 +1,13 @@ +name = "Colorwheel" +filename = "colorwheel-neoforge-0.2.3+mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/BzHgFoGz/versions/jF0HWFDB/colorwheel-neoforge-0.2.3%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "297d252f8e5b01116832a6e867c7a3b159bdb984a58f8c07baf2598915e91c3c23369065bcf763c655ea23849de8b791b5ed945f1a70d63292d647dbc704cb94" + +[update] +[update.modrinth] +mod-id = "BzHgFoGz" +version = "jF0HWFDB" diff --git a/pkgs/minecraftmon/mods/comforts.pw.toml b/pkgs/minecraftmon/mods/comforts.pw.toml new file mode 100644 index 0000000..d327a32 --- /dev/null +++ b/pkgs/minecraftmon/mods/comforts.pw.toml @@ -0,0 +1,13 @@ +name = "Comforts" +filename = "comforts-neoforge-9.0.4+1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/SaCpeal4/versions/f0FgfKAZ/comforts-neoforge-9.0.4%2B1.21.1.jar" +hash-format = "sha512" +hash = "c1fcb536f1a311876c09c9b42b43f599115bcd14bbbbc22d56c5ba8ec72f9e32d84661f0f2f1abbfa19d085f3798ce471b3d89e396f1656a2c57edf2ec8cc3dd" + +[update] +[update.modrinth] +mod-id = "SaCpeal4" +version = "f0FgfKAZ" diff --git a/pkgs/minecraftmon/mods/connector.pw.toml b/pkgs/minecraftmon/mods/connector.pw.toml new file mode 100644 index 0000000..b93f699 --- /dev/null +++ b/pkgs/minecraftmon/mods/connector.pw.toml @@ -0,0 +1,13 @@ +name = "Sinytra Connector" +filename = "connector-2.0.0-beta.8+1.21.1-full.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/u58R1TMW/versions/KrmWHpgS/connector-2.0.0-beta.8%2B1.21.1-full.jar" +hash-format = "sha512" +hash = "c734a56142138aeabab116c7e30427d894c8b6c36dc95f498bbcd262916287894326f23a5da84d2605a924a93337f9302b83c2221ead2e013531d350baec796f" + +[update] +[update.modrinth] +mod-id = "u58R1TMW" +version = "KrmWHpgS" diff --git a/pkgs/minecraftmon/mods/controlling.pw.toml b/pkgs/minecraftmon/mods/controlling.pw.toml new file mode 100644 index 0000000..f381798 --- /dev/null +++ b/pkgs/minecraftmon/mods/controlling.pw.toml @@ -0,0 +1,13 @@ +name = "Controlling" +filename = "Controlling-neoforge-1.21.1-19.0.5.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/xv94TkTM/versions/FaNppCJJ/Controlling-neoforge-1.21.1-19.0.5.jar" +hash-format = "sha512" +hash = "bd01b2a38a869ea38e5f2a8fcd601e67ea9b132b9883c6ae752bc35dff6e94f6d47b965e31c1ee5c2f6a1221653549680da779fcb5319d199aec261d221d179e" + +[update] +[update.modrinth] +mod-id = "xv94TkTM" +version = "FaNppCJJ" diff --git a/pkgs/minecraftmon/mods/corn-delight.pw.toml b/pkgs/minecraftmon/mods/corn-delight.pw.toml new file mode 100644 index 0000000..b76be53 --- /dev/null +++ b/pkgs/minecraftmon/mods/corn-delight.pw.toml @@ -0,0 +1,13 @@ +name = "Corn Delight" +filename = "corn_delight-1.1.8-1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/uxLAKWU8/versions/IyuE10ak/corn_delight-1.1.8-1.21.1.jar" +hash-format = "sha512" +hash = "2f3cbf3e9dacbad3184f6f8f898f069008926a0342da3b1e84608523c74a3100eae7ed65c1d2f43cdfe0eb9d84175908974d39722ab342a7b6dbc326d2dc7c64" + +[update] +[update.modrinth] +mod-id = "uxLAKWU8" +version = "IyuE10ak" diff --git a/pkgs/minecraftmon/mods/corpse.pw.toml b/pkgs/minecraftmon/mods/corpse.pw.toml new file mode 100644 index 0000000..49fbae4 --- /dev/null +++ b/pkgs/minecraftmon/mods/corpse.pw.toml @@ -0,0 +1,13 @@ +name = "Corpse" +filename = "corpse-neoforge-1.21.1-1.1.10.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/WrpuIfhw/versions/9KagdOAl/corpse-neoforge-1.21.1-1.1.10.jar" +hash-format = "sha512" +hash = "7a7f4f53497e281678e3e2cf8e3fcbc7369564a32bf3c4b427e775f512745bb56a800e322e3f95aa9a127b25772ca495f4ec312e3049da2c5ce03fac8bff9365" + +[update] +[update.modrinth] +mod-id = "WrpuIfhw" +version = "9KagdOAl" diff --git a/pkgs/minecraftmon/mods/crabbers-delight.pw.toml b/pkgs/minecraftmon/mods/crabbers-delight.pw.toml new file mode 100644 index 0000000..477f873 --- /dev/null +++ b/pkgs/minecraftmon/mods/crabbers-delight.pw.toml @@ -0,0 +1,13 @@ +name = "Crabber's Delight" +filename = "crabbersdelight-1.21.1-1.1.10.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/gBGdVBJy/versions/ptG64SYO/crabbersdelight-1.21.1-1.1.10.jar" +hash-format = "sha512" +hash = "1e7aee54a97a71e6e55cdad6fb45e097f3bb25afbe6c91b62696b8ac5df7e471e3b0f089b4202f9a64efbd485ed2981d5f2ddafcef37d3e69fc3e770e4c2b07f" + +[update] +[update.modrinth] +mod-id = "gBGdVBJy" +version = "ptG64SYO" diff --git a/pkgs/minecraftmon/mods/create-dragons-plus.pw.toml b/pkgs/minecraftmon/mods/create-dragons-plus.pw.toml new file mode 100644 index 0000000..564cd88 --- /dev/null +++ b/pkgs/minecraftmon/mods/create-dragons-plus.pw.toml @@ -0,0 +1,13 @@ +name = "Create: Dragons Plus" +filename = "create-dragons-plus-1.6.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/dzb1a5WV/versions/M71tJKIz/create-dragons-plus-1.6.1.jar" +hash-format = "sha512" +hash = "fa5af12d67974d40e0ce0f37c520b88b2a1ebb292af94634cbd404bed4315000e37169728385cf211ddcd91e3fb2a225039a2d80acb54102eb3775e31d0f6906" + +[update] +[update.modrinth] +mod-id = "dzb1a5WV" +version = "M71tJKIz" diff --git a/pkgs/minecraftmon/mods/create-enchantment-industry.pw.toml b/pkgs/minecraftmon/mods/create-enchantment-industry.pw.toml new file mode 100644 index 0000000..a77e20c --- /dev/null +++ b/pkgs/minecraftmon/mods/create-enchantment-industry.pw.toml @@ -0,0 +1,13 @@ +name = "Create: Enchantment Industry" +filename = "create-enchantment-industry-2.1.7.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/JWGBpFUP/versions/MYRXafDX/create-enchantment-industry-2.1.7.jar" +hash-format = "sha512" +hash = "8d224728c45ed08a676c229c57baadb4a0c3006cd35ea13bf8084d869391411c8bb440c3d1b9dd7ea8c48ce03359852b6d188198e61a9d91ab5cc1844aa861b8" + +[update] +[update.modrinth] +mod-id = "JWGBpFUP" +version = "MYRXafDX" diff --git a/pkgs/minecraftmon/mods/create.pw.toml b/pkgs/minecraftmon/mods/create.pw.toml new file mode 100644 index 0000000..2213297 --- /dev/null +++ b/pkgs/minecraftmon/mods/create.pw.toml @@ -0,0 +1,13 @@ +name = "Create" +filename = "create-1.21.1-6.0.6.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/LNytGWDc/versions/tS7ygzAE/create-1.21.1-6.0.6.jar" +hash-format = "sha512" +hash = "a65723abb0439ab5bb9dfae0b66db33a7c41422d015be7524912033b6cb39a1ef3a247b4b842981131cd541d141cc257d761b6de4e8837960a98b43054049228" + +[update] +[update.modrinth] +mod-id = "LNytGWDc" +version = "tS7ygzAE" diff --git a/pkgs/minecraftmon/mods/creativecore.pw.toml b/pkgs/minecraftmon/mods/creativecore.pw.toml new file mode 100644 index 0000000..7a681f7 --- /dev/null +++ b/pkgs/minecraftmon/mods/creativecore.pw.toml @@ -0,0 +1,13 @@ +name = "CreativeCore" +filename = "CreativeCore_NEOFORGE_v2.13.7_mc1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/OsZiaDHq/versions/jy6rEC2t/CreativeCore_NEOFORGE_v2.13.7_mc1.21.1.jar" +hash-format = "sha512" +hash = "ab0f95c8127ea248592e26120a2aedc15ffb91ba27fce1da318d1cb3cfcea6accdacb334076363955f99d4d12816c3e4546298e0ec8b9bda223062f4e5c8b33b" + +[update] +[update.modrinth] +mod-id = "OsZiaDHq" +version = "jy6rEC2t" diff --git a/pkgs/minecraftmon/mods/curios.pw.toml b/pkgs/minecraftmon/mods/curios.pw.toml new file mode 100644 index 0000000..5e5f3a9 --- /dev/null +++ b/pkgs/minecraftmon/mods/curios.pw.toml @@ -0,0 +1,13 @@ +name = "Curios API" +filename = "curios-neoforge-9.5.1+1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/vvuO3ImH/versions/yohfFbgD/curios-neoforge-9.5.1%2B1.21.1.jar" +hash-format = "sha512" +hash = "5981a267686b744e7e3c227f78cbcd5267c14ac6979a28e814695f4589273998563147207fef4a5cdb7cdbdc39797cd95d9e4abadb55869f18e02a38d0654ae5" + +[update] +[update.modrinth] +mod-id = "vvuO3ImH" +version = "yohfFbgD" diff --git a/pkgs/minecraftmon/mods/cut-through.pw.toml b/pkgs/minecraftmon/mods/cut-through.pw.toml new file mode 100644 index 0000000..9633487 --- /dev/null +++ b/pkgs/minecraftmon/mods/cut-through.pw.toml @@ -0,0 +1,13 @@ +name = "Cut Through" +filename = "CutThrough-v21.1.0-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/Dk6su9JN/versions/5P5tLHSh/CutThrough-v21.1.0-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "e6313fe2c2fb8b5131b39bf8ae105e5120630b78d713db5a573c6830a476868beee3f38aa4da7c29779214b7690af83ca0ce9036d1f757a54c2352e0748cd256" + +[update] +[update.modrinth] +mod-id = "Dk6su9JN" +version = "5P5tLHSh" diff --git a/pkgs/minecraftmon/mods/deep-aether.pw.toml b/pkgs/minecraftmon/mods/deep-aether.pw.toml new file mode 100644 index 0000000..6c4f835 --- /dev/null +++ b/pkgs/minecraftmon/mods/deep-aether.pw.toml @@ -0,0 +1,13 @@ +name = "Deep Aether" +filename = "deep_aether-1.21.1-1.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/gcHIih5B/versions/6zQqREgL/deep_aether-1.21.1-1.1.2.jar" +hash-format = "sha512" +hash = "d0eb647503cf7f806b31c2ae23901c8f886570b2a593d9510a71cc303c647478eb0e2d183c95f6da644d700ccc6f17978471b035c20a968b895b248c5e81c1cf" + +[update] +[update.modrinth] +mod-id = "gcHIih5B" +version = "6zQqREgL" diff --git a/pkgs/minecraftmon/mods/default-options.pw.toml b/pkgs/minecraftmon/mods/default-options.pw.toml new file mode 100644 index 0000000..9ba3127 --- /dev/null +++ b/pkgs/minecraftmon/mods/default-options.pw.toml @@ -0,0 +1,13 @@ +name = "Default Options" +filename = "defaultoptions-neoforge-1.21.1-21.1.4.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/WEg59z5b/versions/zFWJFG9t/defaultoptions-neoforge-1.21.1-21.1.4.jar" +hash-format = "sha512" +hash = "050b9216e082530facd2531cac9f3d9598b4bade37e8b2fbe785da9e9cd2ea189fa7aa41a7b7f8be1a14df12ec1a1be7bc71bf558b80bb123c444d798d940d3d" + +[update] +[update.modrinth] +mod-id = "WEg59z5b" +version = "zFWJFG9t" diff --git a/pkgs/minecraftmon/mods/diagonal-fences.pw.toml b/pkgs/minecraftmon/mods/diagonal-fences.pw.toml new file mode 100644 index 0000000..f849d44 --- /dev/null +++ b/pkgs/minecraftmon/mods/diagonal-fences.pw.toml @@ -0,0 +1,13 @@ +name = "Diagonal Fences" +filename = "DiagonalFences-v21.1.1-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/IKARgflD/versions/bgR1e0O5/DiagonalFences-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "856e035193eb99264321e6d971881bad14baeb7196cb3ae75463457802dfb4d967eaec27a046e1290f074721fc1cd85d59adfd773a287b159a7baac1435c09d1" + +[update] +[update.modrinth] +mod-id = "IKARgflD" +version = "bgR1e0O5" diff --git a/pkgs/minecraftmon/mods/diagonal-walls.pw.toml b/pkgs/minecraftmon/mods/diagonal-walls.pw.toml new file mode 100644 index 0000000..0406087 --- /dev/null +++ b/pkgs/minecraftmon/mods/diagonal-walls.pw.toml @@ -0,0 +1,13 @@ +name = "Diagonal Walls" +filename = "DiagonalWalls-v21.1.2-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/FQgc8dib/versions/2k3GCxEt/DiagonalWalls-v21.1.2-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "69495235948a9786b6c99eac06cf2a406f478b4425f08699b205da667a3a8a7f9cd3e7ac643199a01487d3a7319b275e014d2a81885008845d2ec798664620f0" + +[update] +[update.modrinth] +mod-id = "FQgc8dib" +version = "2k3GCxEt" diff --git a/pkgs/minecraftmon/mods/diagonal-windows.pw.toml b/pkgs/minecraftmon/mods/diagonal-windows.pw.toml new file mode 100644 index 0000000..e2f9d64 --- /dev/null +++ b/pkgs/minecraftmon/mods/diagonal-windows.pw.toml @@ -0,0 +1,13 @@ +name = "Diagonal Windows" +filename = "DiagonalWindows-v21.1.1-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/oOi0CKes/versions/IwUmOLxe/DiagonalWindows-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "fd335b7789321a1d0de9691d855c2bcc51d669f4614bdd2cd6fe17f7881f9dd39e63cb28c39a1a1798e98a6876ad1658ef2e3805e884f13e4650810611227849" + +[update] +[update.modrinth] +mod-id = "oOi0CKes" +version = "IwUmOLxe" diff --git a/pkgs/minecraftmon/mods/distanthorizons.pw.toml b/pkgs/minecraftmon/mods/distanthorizons.pw.toml new file mode 100644 index 0000000..775a0ee --- /dev/null +++ b/pkgs/minecraftmon/mods/distanthorizons.pw.toml @@ -0,0 +1,13 @@ +name = "Distant Horizons" +filename = "DistantHorizons-2.3.4-b-1.21.1-fabric-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/uCdwusMi/versions/P14vqscU/DistantHorizons-2.3.4-b-1.21.1-fabric-neoforge.jar" +hash-format = "sha512" +hash = "5514def7741ae61517c4b678294b2672c767c3bbe15f4beb3dfb60761a3bf367ed480136c9c1f6e6fcd302d0e4f79984215dbd348cfda983dacc714f377392dd" + +[update] +[update.modrinth] +mod-id = "uCdwusMi" +version = "P14vqscU" diff --git a/pkgs/minecraftmon/mods/distinguished-potions.pw.toml b/pkgs/minecraftmon/mods/distinguished-potions.pw.toml new file mode 100644 index 0000000..9db2fc9 --- /dev/null +++ b/pkgs/minecraftmon/mods/distinguished-potions.pw.toml @@ -0,0 +1,13 @@ +name = "Distinguished Potions" +filename = "DistinguishedPotions-v21.1.1-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/lX1xTFBZ/versions/Jya0J2fp/DistinguishedPotions-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "0e64e8aab8048960a09e8af2cd2379fd255c5a7810757bca787ecd2a123a6cf713820ae422b2b385311236b47519f5f04786bf3f23a533292507794b9a41a216" + +[update] +[update.modrinth] +mod-id = "lX1xTFBZ" +version = "Jya0J2fp" diff --git a/pkgs/minecraftmon/mods/dynamic-fps.pw.toml b/pkgs/minecraftmon/mods/dynamic-fps.pw.toml new file mode 100644 index 0000000..82d6dcd --- /dev/null +++ b/pkgs/minecraftmon/mods/dynamic-fps.pw.toml @@ -0,0 +1,13 @@ +name = "Dynamic FPS" +filename = "dynamic-fps-3.9.5+minecraft-1.21.0-neoforge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/LQ3K71Q1/versions/TWvfxJSz/dynamic-fps-3.9.5%2Bminecraft-1.21.0-neoforge.jar" +hash-format = "sha512" +hash = "e6f128e39eee182319d5d0f6f8a602007172906f49b4568e3f4d5c9aa32d0a375bdbd440567318c0d5e31e6fc446294e1919cbbedfb85edd9d7fa6c1853e830a" + +[update] +[update.modrinth] +mod-id = "LQ3K71Q1" +version = "TWvfxJSz" diff --git a/pkgs/minecraftmon/mods/edivadlib.pw.toml b/pkgs/minecraftmon/mods/edivadlib.pw.toml new file mode 100644 index 0000000..ae25305 --- /dev/null +++ b/pkgs/minecraftmon/mods/edivadlib.pw.toml @@ -0,0 +1,13 @@ +name = "EdivadLib" +filename = "EdivadLib-1.21-3.0.0.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/a8Jk9kpK/versions/exl6hgWJ/EdivadLib-1.21-3.0.0.jar" +hash-format = "sha512" +hash = "3cb39fdc7ce4b68bf4681ef7395fb6b81961372b10a68784abedd33e2026d9c3841daa93d29a44f9872ef0287eac276f10ab8640a8543ae67e9ae294f28bd8b6" + +[update] +[update.modrinth] +mod-id = "a8Jk9kpK" +version = "exl6hgWJ" diff --git a/pkgs/minecraftmon/mods/emi-create-schematics.pw.toml b/pkgs/minecraftmon/mods/emi-create-schematics.pw.toml new file mode 100644 index 0000000..e1522dd --- /dev/null +++ b/pkgs/minecraftmon/mods/emi-create-schematics.pw.toml @@ -0,0 +1,13 @@ +name = "EMI: Create Schematics" +filename = "emi_create_schematics-1.0.2.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/5bgqgixq/versions/XhimCTHT/emi_create_schematics-1.0.2.jar" +hash-format = "sha512" +hash = "afdd6fb0e09ce13e3163cb664786e4b2d20143669b35fbf97cce05a12110feefc4e3e9a81a081c9afb69d175f64ce15a1e92decfbbed8c62b552734afa7a1220" + +[update] +[update.modrinth] +mod-id = "5bgqgixq" +version = "XhimCTHT" diff --git a/pkgs/minecraftmon/mods/emi-enchanting.pw.toml b/pkgs/minecraftmon/mods/emi-enchanting.pw.toml new file mode 100644 index 0000000..a8e2ad9 --- /dev/null +++ b/pkgs/minecraftmon/mods/emi-enchanting.pw.toml @@ -0,0 +1,13 @@ +name = "EMI Enchanting" +filename = "emi_enchanting-0.1.2+1.21+neoforge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/wbWoo11W/versions/ZyJ6TKvh/emi_enchanting-0.1.2%2B1.21%2Bneoforge.jar" +hash-format = "sha512" +hash = "90944c8ff897fa98d0323fe94e4053fb89f43cbaf4fd28d6ad58134cea1469c9398e0c0edd4328a5530e1578ad2286ec5822292bf9c587182e5606dbfff218be" + +[update] +[update.modrinth] +mod-id = "wbWoo11W" +version = "ZyJ6TKvh" diff --git a/pkgs/minecraftmon/mods/emi-loot.pw.toml b/pkgs/minecraftmon/mods/emi-loot.pw.toml new file mode 100644 index 0000000..591505a --- /dev/null +++ b/pkgs/minecraftmon/mods/emi-loot.pw.toml @@ -0,0 +1,13 @@ +name = "EMI Loot" +filename = "emi_loot-0.7.6+1.21+neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/qbbO7Jns/versions/ZCSyd1co/emi_loot-0.7.6%2B1.21%2Bneoforge.jar" +hash-format = "sha512" +hash = "273dce3dc8746c664f95cd97f2afc8f32684dd107c69daacd40c514574207d856a9edf6133cb1529cf7c50d6fbc16f30028a9ecb8137162d29f52567cdc4c564" + +[update] +[update.modrinth] +mod-id = "qbbO7Jns" +version = "ZCSyd1co" diff --git a/pkgs/minecraftmon/mods/emi-ores.pw.toml b/pkgs/minecraftmon/mods/emi-ores.pw.toml new file mode 100644 index 0000000..2f1a7ec --- /dev/null +++ b/pkgs/minecraftmon/mods/emi-ores.pw.toml @@ -0,0 +1,13 @@ +name = "EMI Ores" +filename = "emi_ores-1.2+1.21.1+neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/sG4TqDb8/versions/1jY6MIrK/emi_ores-1.2%2B1.21.1%2Bneoforge.jar" +hash-format = "sha512" +hash = "7b01dd29400802a18e3f23bcc2057e12070d28529bf358306758b462d69ab0532aa392a4b683cb0f5cf1a20f09e5f0d965f90923e72fb2fd6476f63a55a210a7" + +[update] +[update.modrinth] +mod-id = "sG4TqDb8" +version = "1jY6MIrK" diff --git a/pkgs/minecraftmon/mods/emi-professions-(emip).pw.toml b/pkgs/minecraftmon/mods/emi-professions-(emip).pw.toml new file mode 100644 index 0000000..613da92 --- /dev/null +++ b/pkgs/minecraftmon/mods/emi-professions-(emip).pw.toml @@ -0,0 +1,13 @@ +name = "EMI professions (EMIP)" +filename = "EMIProfessions-neoforge-1.21.1-1.0.3.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/LGVihYcz/versions/wGOa5uxT/EMIProfessions-neoforge-1.21.1-1.0.3.jar" +hash-format = "sha512" +hash = "f720f58590e3098459c27e3579f36a00b66443b7c089e3fa9ef1399ed17587d51b046c69e2f07f6e21089fc85d58881a5b224d94a1b2f4738a0c6cbb2dd9c798" + +[update] +[update.modrinth] +mod-id = "LGVihYcz" +version = "wGOa5uxT" diff --git a/pkgs/minecraftmon/mods/emi.pw.toml b/pkgs/minecraftmon/mods/emi.pw.toml new file mode 100644 index 0000000..3027eba --- /dev/null +++ b/pkgs/minecraftmon/mods/emi.pw.toml @@ -0,0 +1,13 @@ +name = "EMI" +filename = "emi-1.1.22+1.21.1+neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/fRiHVvU7/versions/ouSj7NfF/emi-1.1.22%2B1.21.1%2Bneoforge.jar" +hash-format = "sha512" +hash = "6b4f2b93ccd40bbbf3d1f368a9d92b43777543c44243a76ed4010bd563a7f9658decdd58a3d79a3cdc04a288bf98e327a1cce93a5a9d2b8840306578fe633bca" + +[update] +[update.modrinth] +mod-id = "fRiHVvU7" +version = "ouSj7NfF" diff --git a/pkgs/minecraftmon/mods/emiffect.pw.toml b/pkgs/minecraftmon/mods/emiffect.pw.toml new file mode 100644 index 0000000..9335560 --- /dev/null +++ b/pkgs/minecraftmon/mods/emiffect.pw.toml @@ -0,0 +1,13 @@ +name = "EMIffect" +filename = "emiffect-neoforge-2.1.5+mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/705gWllI/versions/8t6Kpge9/emiffect-neoforge-2.1.5%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "f5cc9936e0beccb578814cbb5fd343f1e49fd74d9f157a4314bf6643b4d5fd555dc28975daeb9013918a4ba20c1d50d9f0de779d72f26189599fce41f9202bc8" + +[update] +[update.modrinth] +mod-id = "705gWllI" +version = "8t6Kpge9" diff --git a/pkgs/minecraftmon/mods/enchantment-descriptions.pw.toml b/pkgs/minecraftmon/mods/enchantment-descriptions.pw.toml new file mode 100644 index 0000000..c7b2fb0 --- /dev/null +++ b/pkgs/minecraftmon/mods/enchantment-descriptions.pw.toml @@ -0,0 +1,13 @@ +name = "Enchantment Descriptions" +filename = "enchdesc-neoforge-1.21.1-21.1.7.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/UVtY3ZAC/versions/pNpo2TdS/enchdesc-neoforge-1.21.1-21.1.7.jar" +hash-format = "sha512" +hash = "0a7e582189a5946c1f813e66ee54f887e33576868c9752ad0cdc25707599cf00670ae87b7e4d26711d541becc23524bff4c5ffd6cf87afcb690e9131222d664d" + +[update] +[update.modrinth] +mod-id = "UVtY3ZAC" +version = "pNpo2TdS" diff --git a/pkgs/minecraftmon/mods/ends-delight.pw.toml b/pkgs/minecraftmon/mods/ends-delight.pw.toml new file mode 100644 index 0000000..9224f61 --- /dev/null +++ b/pkgs/minecraftmon/mods/ends-delight.pw.toml @@ -0,0 +1,13 @@ +name = "End's Delight" +filename = "ends_delight-2.5.1+neoforge.1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/yHN0njMr/versions/YxSK1qNm/ends_delight-2.5.1%2Bneoforge.1.21.1.jar" +hash-format = "sha512" +hash = "c36b4a7ac0d55bf18506846ae01dbfb3d89b9333d334d309319346b632aac55441240f8b766ab52b1e497d96d47a5ad8d357af7f5a763473f05ce0fe1b861814" + +[update] +[update.modrinth] +mod-id = "yHN0njMr" +version = "YxSK1qNm" diff --git a/pkgs/minecraftmon/mods/entityculling.pw.toml b/pkgs/minecraftmon/mods/entityculling.pw.toml new file mode 100644 index 0000000..7ff13db --- /dev/null +++ b/pkgs/minecraftmon/mods/entityculling.pw.toml @@ -0,0 +1,13 @@ +name = "Entity Culling" +filename = "entityculling-neoforge-1.8.2-mc1.21.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/NNAgCjsB/versions/11PvLmko/entityculling-neoforge-1.8.2-mc1.21.jar" +hash-format = "sha512" +hash = "34f9bbfc1773557b3b1eff0c8bc2e9faea08607d732e0090d260dda9e7738d2864d695596eec2e81f8f3d64d873297b91deb5473e45af466babb718a3ac51d57" + +[update] +[update.modrinth] +mod-id = "NNAgCjsB" +version = "11PvLmko" diff --git a/pkgs/minecraftmon/mods/every-compat.pw.toml b/pkgs/minecraftmon/mods/every-compat.pw.toml new file mode 100644 index 0000000..a4d0d91 --- /dev/null +++ b/pkgs/minecraftmon/mods/every-compat.pw.toml @@ -0,0 +1,13 @@ +name = "Every Compat (Wood Good)" +filename = "everycomp-1.21-2.10.14-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/eiktJyw1/versions/vNXXgNzK/everycomp-1.21-2.10.14-neoforge.jar" +hash-format = "sha512" +hash = "0fa4468075189ceab5045cf342414f068524c7db08b4fd76af6e82b4c23b1a6219fc98f77a4299b03ea7895ec93f0f927ad07f384759733932fe53af5d133e2c" + +[update] +[update.modrinth] +mod-id = "eiktJyw1" +version = "vNXXgNzK" diff --git a/pkgs/minecraftmon/mods/extra-mod-integrations.pw.toml b/pkgs/minecraftmon/mods/extra-mod-integrations.pw.toml new file mode 100644 index 0000000..ef80415 --- /dev/null +++ b/pkgs/minecraftmon/mods/extra-mod-integrations.pw.toml @@ -0,0 +1,13 @@ +name = "EMI Addon: Extra Mod Integrations" +filename = "extra-mod-integrations-all-neoforge-1.0.2+1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/bpRHnWUb/versions/tNXLlCY0/extra-mod-integrations-all-neoforge-1.0.2%2B1.21.1.jar" +hash-format = "sha512" +hash = "6f41a039a208852b2fa3e62347779099f654ff43e5aac93ad71ef3b1129307494492a188411638a75191c5f940e1e84c9772ed4717f877611e0f37aa9aee218b" + +[update] +[update.modrinth] +mod-id = "bpRHnWUb" +version = "tNXLlCY0" diff --git a/pkgs/minecraftmon/mods/extrastorage.pw.toml b/pkgs/minecraftmon/mods/extrastorage.pw.toml new file mode 100644 index 0000000..94c88e1 --- /dev/null +++ b/pkgs/minecraftmon/mods/extrastorage.pw.toml @@ -0,0 +1,13 @@ +name = "ExtraStorage" +filename = "ExtraStorage-1.21.1-5.0.3.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/T34cBZKl/versions/TIwPVmKn/ExtraStorage-1.21.1-5.0.3.jar" +hash-format = "sha512" +hash = "524445461a20a5ed52598b84b543c0a75c5a7c7678b955fc6327ad3de0fdbd89a813162ae4be6588806d776c5414856d9c161a92be297f91c23738c143284b25" + +[update] +[update.modrinth] +mod-id = "T34cBZKl" +version = "TIwPVmKn" diff --git a/pkgs/minecraftmon/mods/farmers-delight.pw.toml b/pkgs/minecraftmon/mods/farmers-delight.pw.toml new file mode 100644 index 0000000..8427ba3 --- /dev/null +++ b/pkgs/minecraftmon/mods/farmers-delight.pw.toml @@ -0,0 +1,13 @@ +name = "Farmer's Delight" +filename = "FarmersDelight-1.21.1-1.2.8.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/R2OftAxM/versions/yCkges3O/FarmersDelight-1.21.1-1.2.8.jar" +hash-format = "sha512" +hash = "ca2d5a21ecd14a25374b26570f1c63c54623b55603108ffe4f83f82b79ff8cf08b35f444078141ec4196dad669699e1beeea41d8d0c34c0602941247b93f4a52" + +[update] +[update.modrinth] +mod-id = "R2OftAxM" +version = "yCkges3O" diff --git a/pkgs/minecraftmon/mods/forgified-fabric-api.pw.toml b/pkgs/minecraftmon/mods/forgified-fabric-api.pw.toml new file mode 100644 index 0000000..061c356 --- /dev/null +++ b/pkgs/minecraftmon/mods/forgified-fabric-api.pw.toml @@ -0,0 +1,13 @@ +name = "Forgified Fabric API" +filename = "forgified-fabric-api-0.115.6+2.1.1+1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/Aqlf1Shp/versions/vQbH2z4u/forgified-fabric-api-0.115.6%2B2.1.1%2B1.21.1.jar" +hash-format = "sha512" +hash = "f3709a29e3289f550f7ffb5a7c2b83d0952321ad3645ccb15eba3c2db8282da491e146d29aac0f6af8a17c2edaa499f5aa9816b471b35e7093abd9dc1eebb209" + +[update] +[update.modrinth] +mod-id = "Aqlf1Shp" +version = "vQbH2z4u" diff --git a/pkgs/minecraftmon/mods/friends-and-foes-beekeeper-hut-forge.pw.toml b/pkgs/minecraftmon/mods/friends-and-foes-beekeeper-hut-forge.pw.toml new file mode 100644 index 0000000..3c628de --- /dev/null +++ b/pkgs/minecraftmon/mods/friends-and-foes-beekeeper-hut-forge.pw.toml @@ -0,0 +1,13 @@ +name = "Friends&Foes - Beekeeper Hut (Forge/NeoForge)" +filename = "beekeeperhut-neoforge-3.0.1+mc1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/K62sN7Sd/versions/iXGvdERT/beekeeperhut-neoforge-3.0.1%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "c963b122a84e3e10f97e546ed96e2a52ac4dd10f48efc443d3aa1f944c14e785ba331fd7788019b0a59e177b1e62f16e65480e6e05687ca3cddb2423419bb4f2" + +[update] +[update.modrinth] +mod-id = "K62sN7Sd" +version = "iXGvdERT" diff --git a/pkgs/minecraftmon/mods/friends-and-foes-flowery-mooblooms-forge.pw.toml b/pkgs/minecraftmon/mods/friends-and-foes-flowery-mooblooms-forge.pw.toml new file mode 100644 index 0000000..46a437a --- /dev/null +++ b/pkgs/minecraftmon/mods/friends-and-foes-flowery-mooblooms-forge.pw.toml @@ -0,0 +1,13 @@ +name = "Friends&Foes - Flowery Mooblooms (Forge/NeoForge)" +filename = "flowerymooblooms-neoforge-3.0.1+mc1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/wYtDgIUZ/versions/qweMeTSH/flowerymooblooms-neoforge-3.0.1%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "27fe08f93a2276fa4dd49d395ebc2013c343922d4c5cca45db81997489588afcc12bee384128ad97bda5bc5bc917a0001040b316def31c5b20da1f8b0208147c" + +[update] +[update.modrinth] +mod-id = "wYtDgIUZ" +version = "qweMeTSH" diff --git a/pkgs/minecraftmon/mods/friends-and-foes-forge.pw.toml b/pkgs/minecraftmon/mods/friends-and-foes-forge.pw.toml new file mode 100644 index 0000000..3bfa1ba --- /dev/null +++ b/pkgs/minecraftmon/mods/friends-and-foes-forge.pw.toml @@ -0,0 +1,13 @@ +name = "Friends&Foes (Forge/NeoForge)" +filename = "friendsandfoes-neoforge-4.0.7+mc1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/BOCJKD49/versions/Jyj699Gz/friendsandfoes-neoforge-4.0.7%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "bc78aa1f59551f4dfa42a968c949456f2fb4b20508b4bb7bc64dcc3b99b18fa850523f922eaabcdd02c3c0df3eb60beaee2cd2f07616032efca72a4cab4348f7" + +[update] +[update.modrinth] +mod-id = "BOCJKD49" +version = "Jyj699Gz" diff --git a/pkgs/minecraftmon/mods/fruits-delight.pw.toml b/pkgs/minecraftmon/mods/fruits-delight.pw.toml new file mode 100644 index 0000000..7b6a2ef --- /dev/null +++ b/pkgs/minecraftmon/mods/fruits-delight.pw.toml @@ -0,0 +1,13 @@ +name = "Fruits Delight" +filename = "fruitsdelight-1.2.8.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/g6sbyCTu/versions/ucAv4AKT/fruitsdelight-1.2.8.jar" +hash-format = "sha512" +hash = "d503cf5270e0c774848c38250ac0d6c72dfd4a06b42add4f417fdff4ec59abe088ea24ae8061d8f260417392a573382aa93e3339c485184da64bb22c5f5d2b47" + +[update] +[update.modrinth] +mod-id = "g6sbyCTu" +version = "ucAv4AKT" diff --git a/pkgs/minecraftmon/mods/fzzy-config.pw.toml b/pkgs/minecraftmon/mods/fzzy-config.pw.toml new file mode 100644 index 0000000..70bcac2 --- /dev/null +++ b/pkgs/minecraftmon/mods/fzzy-config.pw.toml @@ -0,0 +1,13 @@ +name = "Fzzy Config" +filename = "fzzy_config-0.7.1+1.21+neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/hYykXjDp/versions/wFIc6GXf/fzzy_config-0.7.1%2B1.21%2Bneoforge.jar" +hash-format = "sha512" +hash = "8f911352f36bb7bbe293daa292fd44a3baf5510e02363a31c8614e32276d6075b082828c91bfca36f216955d343932da8c879da0184bc9c9b9f14b6f604abefd" + +[update] +[update.modrinth] +mod-id = "hYykXjDp" +version = "wFIc6GXf" diff --git a/pkgs/minecraftmon/mods/geckolib.pw.toml b/pkgs/minecraftmon/mods/geckolib.pw.toml new file mode 100644 index 0000000..d5908ff --- /dev/null +++ b/pkgs/minecraftmon/mods/geckolib.pw.toml @@ -0,0 +1,13 @@ +name = "Geckolib" +filename = "geckolib-neoforge-1.21.1-4.7.6.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/8BmcQJ2H/versions/DTo3uxPN/geckolib-neoforge-1.21.1-4.7.6.jar" +hash-format = "sha512" +hash = "bb493b082e3a871d0b5df3f9eaee08d47d931a38daa37a9debf6d3e7bfdcc490dc98008f631c2282ea405c383c4b05afdb19a898e4419ed7616e4128fe5460d0" + +[update] +[update.modrinth] +mod-id = "8BmcQJ2H" +version = "DTo3uxPN" diff --git a/pkgs/minecraftmon/mods/hardcore-revival.pw.toml b/pkgs/minecraftmon/mods/hardcore-revival.pw.toml new file mode 100644 index 0000000..729bfdf --- /dev/null +++ b/pkgs/minecraftmon/mods/hardcore-revival.pw.toml @@ -0,0 +1,13 @@ +name = "Hardcore Revival" +filename = "hardcorerevival-neoforge-1.21.1-21.1.8.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/HqKoXaXz/versions/5B4eETFU/hardcorerevival-neoforge-1.21.1-21.1.8.jar" +hash-format = "sha512" +hash = "2fc42170c5f4c4b0b487ba468c690655424969259903f64e16b3a601b32a06ea3996c424ad9546aadb4a6ef8e508bbc39118ccfc1ca216f063bf0e1b677b1025" + +[update] +[update.modrinth] +mod-id = "HqKoXaXz" +version = "5B4eETFU" diff --git a/pkgs/minecraftmon/mods/immersiveengineering.pw.toml b/pkgs/minecraftmon/mods/immersiveengineering.pw.toml new file mode 100644 index 0000000..30a132e --- /dev/null +++ b/pkgs/minecraftmon/mods/immersiveengineering.pw.toml @@ -0,0 +1,13 @@ +name = "Immersive Engineering" +filename = "ImmersiveEngineering-1.21.1-12.4.2-194.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/tIm2nV03/versions/uNRARSH2/ImmersiveEngineering-1.21.1-12.4.2-194.jar" +hash-format = "sha512" +hash = "862523e84747a8b7eaa65f9b3c337fa832ef9efd0545c27f68e350e01f482c7a1242d0e4bdc2caff3d7eb033508b43a353fcd7150c9b544d0c05765ca2a551b3" + +[update] +[update.modrinth] +mod-id = "tIm2nV03" +version = "uNRARSH2" diff --git a/pkgs/minecraftmon/mods/immersivemusicmod.pw.toml b/pkgs/minecraftmon/mods/immersivemusicmod.pw.toml new file mode 100644 index 0000000..0cd5f50 --- /dev/null +++ b/pkgs/minecraftmon/mods/immersivemusicmod.pw.toml @@ -0,0 +1,13 @@ +name = "The Immersive Music Mod" +filename = "timm-1.0.6-neoforge-1.21-1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/EgBj3Bnf/versions/aOkaNqxp/timm-1.0.6-neoforge-1.21-1.21.1.jar" +hash-format = "sha512" +hash = "37750151e497e33162f09a736b944549b03f4a8b05e8a2e12f52bd5ee54ff0da896f756741050773e71f5172b605278ea706d8119116c0247ece51e2f2c026f1" + +[update] +[update.modrinth] +mod-id = "EgBj3Bnf" +version = "aOkaNqxp" diff --git a/pkgs/minecraftmon/mods/inventory-hud-forge.pw.toml b/pkgs/minecraftmon/mods/inventory-hud-forge.pw.toml new file mode 100644 index 0000000..dfae5a9 --- /dev/null +++ b/pkgs/minecraftmon/mods/inventory-hud-forge.pw.toml @@ -0,0 +1,13 @@ +name = "Inventory HUD+" +filename = "inventoryhud.neoforged.1.21.1-3.4.28.jar" +side = "both" + +[download] +hash-format = "sha1" +hash = "1bfd8bbb862a8cf55fd83947ded2b0eeda8c6bc8" +mode = "metadata:curseforge" + +[update] +[update.curseforge] +file-id = 6369797 +project-id = 357540 diff --git a/pkgs/minecraftmon/mods/iris.pw.toml b/pkgs/minecraftmon/mods/iris.pw.toml new file mode 100644 index 0000000..cb7be00 --- /dev/null +++ b/pkgs/minecraftmon/mods/iris.pw.toml @@ -0,0 +1,13 @@ +name = "Iris Shaders" +filename = "iris-neoforge-1.8.12+mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/YL57xq9U/versions/t3ruzodq/iris-neoforge-1.8.12%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "57b8026a3c3c433cf6123d63dc6ce7e11f6d480a72926370db1fc7f2b06059bc16a753ecd7e7af659c19e90b592103196b0e89585ce4f0744a4ca433f59bcf1a" + +[update] +[update.modrinth] +mod-id = "YL57xq9U" +version = "t3ruzodq" diff --git a/pkgs/minecraftmon/mods/irons-spells-n-spellbooks.pw.toml b/pkgs/minecraftmon/mods/irons-spells-n-spellbooks.pw.toml new file mode 100644 index 0000000..b66e580 --- /dev/null +++ b/pkgs/minecraftmon/mods/irons-spells-n-spellbooks.pw.toml @@ -0,0 +1,13 @@ +name = "Iron's Spells 'n Spellbooks" +filename = "irons_spellbooks-1.21.1-3.13.0.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/s4OWxYQQ/versions/ffmzJG9V/irons_spellbooks-1.21.1-3.13.0.jar" +hash-format = "sha512" +hash = "6e89d01e385cadb3c57abbc834d3d4cd2f5636a1e2971ff7ed92482e43586ff599fd4e0a200d8f101da0138503830982a1922e616170bdbda53b997ca5982b1c" + +[update] +[update.modrinth] +mod-id = "s4OWxYQQ" +version = "ffmzJG9V" diff --git a/pkgs/minecraftmon/mods/jade.pw.toml b/pkgs/minecraftmon/mods/jade.pw.toml new file mode 100644 index 0000000..4fbfa0d --- /dev/null +++ b/pkgs/minecraftmon/mods/jade.pw.toml @@ -0,0 +1,13 @@ +name = "Jade 🔍" +filename = "Jade-1.21.1-NeoForge-15.10.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/nvQzSEkH/versions/iku9fmp8/Jade-1.21.1-NeoForge-15.10.2.jar" +hash-format = "sha512" +hash = "73c9fefc5f05a3429b6a4e7ac2aa61040e2f3d0bfb6be378b112a78db77e7c2d1e4645f8e422a2913abc2d33c5ac07c1a19975c86c5c029c4ef1be9bfc8c1bb2" + +[update] +[update.modrinth] +mod-id = "nvQzSEkH" +version = "iku9fmp8" diff --git a/pkgs/minecraftmon/mods/jei.pw.toml b/pkgs/minecraftmon/mods/jei.pw.toml new file mode 100644 index 0000000..eceb102 --- /dev/null +++ b/pkgs/minecraftmon/mods/jei.pw.toml @@ -0,0 +1,13 @@ +name = "Just Enough Items" +filename = "jei-1.21.1-neoforge-19.22.0.315.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/u6dRKJwZ/versions/3dgEkJue/jei-1.21.1-neoforge-19.22.0.315.jar" +hash-format = "sha512" +hash = "1380df33e69067a40a52af9a4e5012d743d327e4c058ae8f5b580682c24ec11c38ad478e38cb8e0e8261d29e6e70a90bce00c0dc53a53dd3c5d072d3b00dcc86" + +[update] +[update.modrinth] +mod-id = "u6dRKJwZ" +version = "3dgEkJue" diff --git a/pkgs/minecraftmon/mods/journey-pac.pw.toml b/pkgs/minecraftmon/mods/journey-pac.pw.toml new file mode 100644 index 0000000..cf234a7 --- /dev/null +++ b/pkgs/minecraftmon/mods/journey-pac.pw.toml @@ -0,0 +1,13 @@ +name = "JourneyPAC" +filename = "JourneyPAC-neoforge-1.21-1.1.7.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/UUErFmkX/versions/Q22HXCFT/JourneyPAC-neoforge-1.21-1.1.7.jar" +hash-format = "sha512" +hash = "367930b9fc3eaf78f78bb215524521905617e35d6c705e4b48153ae6eb8d08943f5c6398ebf5fa52025609d7cb0f607722b64deac0c99a55fc7854c67f06d82e" + +[update] +[update.modrinth] +mod-id = "UUErFmkX" +version = "Q22HXCFT" diff --git a/pkgs/minecraftmon/mods/journeymap-integration.pw.toml b/pkgs/minecraftmon/mods/journeymap-integration.pw.toml new file mode 100644 index 0000000..df334f1 --- /dev/null +++ b/pkgs/minecraftmon/mods/journeymap-integration.pw.toml @@ -0,0 +1,13 @@ +name = "JourneyMap Integration" +filename = "jmi-neoforge-1.21.1-1.9.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/M1ZKbfkJ/versions/x1p0RNwd/jmi-neoforge-1.21.1-1.9.jar" +hash-format = "sha512" +hash = "1e2d32012d76be0ac50aa80da07b12a2e4c38710ff15f3db66519cf9c0071c80a5cadf3410d248318a65443e436c7610c241fc48a119761f3fadc8fb1a12f7b2" + +[update] +[update.modrinth] +mod-id = "M1ZKbfkJ" +version = "x1p0RNwd" diff --git a/pkgs/minecraftmon/mods/journeymap.pw.toml b/pkgs/minecraftmon/mods/journeymap.pw.toml new file mode 100644 index 0000000..6ac92ed --- /dev/null +++ b/pkgs/minecraftmon/mods/journeymap.pw.toml @@ -0,0 +1,13 @@ +name = "JourneyMap" +filename = "journeymap-neoforge-1.21.1-6.0.0-beta.52.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/lfHFW1mp/versions/vyOPsWNv/journeymap-neoforge-1.21.1-6.0.0-beta.52.jar" +hash-format = "sha512" +hash = "14cab1df5ef4f650afb7e677e808a6e082aae723171d7a0c4de9c2bbee468af0a06a1fbcbdc89649ff759b044b4653d2295a9fb8c46e250b22d552387a527ae2" + +[update] +[update.modrinth] +mod-id = "lfHFW1mp" +version = "vyOPsWNv" diff --git a/pkgs/minecraftmon/mods/kiwi.pw.toml b/pkgs/minecraftmon/mods/kiwi.pw.toml new file mode 100644 index 0000000..bce1545 --- /dev/null +++ b/pkgs/minecraftmon/mods/kiwi.pw.toml @@ -0,0 +1,13 @@ +name = "Kiwi 🥝" +filename = "Kiwi-1.21.1-NeoForge-15.6.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/ufdDoWPd/versions/EWWtrwik/Kiwi-1.21.1-NeoForge-15.6.1.jar" +hash-format = "sha512" +hash = "1270a11c3732fb8217804000d18080c995508b3cda32a000241645a0eb36ee86827262d82ff3cf0bae1a7f695c2c73cac24a64d752699481875dca3ea91cb8a5" + +[update] +[update.modrinth] +mod-id = "ufdDoWPd" +version = "EWWtrwik" diff --git a/pkgs/minecraftmon/mods/kotlin-for-forge.pw.toml b/pkgs/minecraftmon/mods/kotlin-for-forge.pw.toml new file mode 100644 index 0000000..e4cdad4 --- /dev/null +++ b/pkgs/minecraftmon/mods/kotlin-for-forge.pw.toml @@ -0,0 +1,13 @@ +name = "Kotlin for Forge" +filename = "kotlinforforge-5.9.0-all.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/ordsPcFz/versions/4qCjWixP/kotlinforforge-5.9.0-all.jar" +hash-format = "sha512" +hash = "cfa784389e7d373b23d2c9d9cc0becc4e3b9ffd0c7bf75f23aeee1625f39bde44cbf15b28403c490f716b436a748fa7531c607673b5a85dd116008a6fc43236f" + +[update] +[update.modrinth] +mod-id = "ordsPcFz" +version = "4qCjWixP" diff --git a/pkgs/minecraftmon/mods/l_enders-cataclysm.pw.toml b/pkgs/minecraftmon/mods/l_enders-cataclysm.pw.toml new file mode 100644 index 0000000..db2f8ba --- /dev/null +++ b/pkgs/minecraftmon/mods/l_enders-cataclysm.pw.toml @@ -0,0 +1,13 @@ +name = "L_Ender's Cataclysm" +filename = "L_Ender's Cataclysm 1.21.1-3.10.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/46KJle7n/versions/8tZK6jS2/L_Ender%27s%20Cataclysm%201.21.1-3.10.jar" +hash-format = "sha512" +hash = "b7a1c0ec9cf3bf5f6f5fba60fb348100256af1995b3137d883ad474c4d0b4f3f75cfebd35deba8e2cb45a0edf76413bf6cf67cb59e05ad6c10ec94f70ae183ae" + +[update] +[update.modrinth] +mod-id = "46KJle7n" +version = "8tZK6jS2" diff --git a/pkgs/minecraftmon/mods/leave-my-bars-alone.pw.toml b/pkgs/minecraftmon/mods/leave-my-bars-alone.pw.toml new file mode 100644 index 0000000..940bace --- /dev/null +++ b/pkgs/minecraftmon/mods/leave-my-bars-alone.pw.toml @@ -0,0 +1,13 @@ +name = "Leave My Bars Alone" +filename = "LeaveMyBarsAlone-v21.1.2-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/gK9mebQg/versions/27kYf7JI/LeaveMyBarsAlone-v21.1.2-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "b42b4dc923df1557a475e3528ff7aa21ed8fd031f99dc807ce4c06035bb40008bf7f713b4ba883d97d91d43064a0d7c5b4f73ba22473c72f32e0e0e36cacd8f2" + +[update] +[update.modrinth] +mod-id = "gK9mebQg" +version = "27kYf7JI" diff --git a/pkgs/minecraftmon/mods/leaves-be-gone.pw.toml b/pkgs/minecraftmon/mods/leaves-be-gone.pw.toml new file mode 100644 index 0000000..bda6365 --- /dev/null +++ b/pkgs/minecraftmon/mods/leaves-be-gone.pw.toml @@ -0,0 +1,13 @@ +name = "Leaves Be Gone" +filename = "LeavesBeGone-v21.1.0-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/AVq17PqV/versions/TOHEOE2X/LeavesBeGone-v21.1.0-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "0f6e5131b2be64f3ebc9cc628bace6023c8d4748051092d1490e6523bd708892acfdf353dcec8032076be6fbc2fc6e5f4c7656e0b2a127b277c3676798d1e92a" + +[update] +[update.modrinth] +mod-id = "AVq17PqV" +version = "TOHEOE2X" diff --git a/pkgs/minecraftmon/mods/lionfish-api.pw.toml b/pkgs/minecraftmon/mods/lionfish-api.pw.toml new file mode 100644 index 0000000..2784496 --- /dev/null +++ b/pkgs/minecraftmon/mods/lionfish-api.pw.toml @@ -0,0 +1,13 @@ +name = "Lionfish-API" +filename = "lionfishapi-2.6.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/FoVacERa/versions/RdsxgL41/lionfishapi-2.6.jar" +hash-format = "sha512" +hash = "87167d2c54f6a5539c30ed5ae12cdfe407c608ca32d6b864b27f3d1c994134687b0e4aba42aced0d204fba1d72452906dcc02bb5b17ba9f6e8951834d4758202" + +[update] +[update.modrinth] +mod-id = "FoVacERa" +version = "RdsxgL41" diff --git a/pkgs/minecraftmon/mods/lithostitched.pw.toml b/pkgs/minecraftmon/mods/lithostitched.pw.toml new file mode 100644 index 0000000..893eb20 --- /dev/null +++ b/pkgs/minecraftmon/mods/lithostitched.pw.toml @@ -0,0 +1,13 @@ +name = "Lithostitched" +filename = "lithostitched-neoforge-1.21.1-1.4.11.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/XaDC71GB/versions/r3TO8PWe/lithostitched-neoforge-1.21.1-1.4.11.jar" +hash-format = "sha512" +hash = "43130d892ee5af5481c2911a6afc629ea28b21fc8ca156f654af434a561c2cab209622796d44e92014523c7df2243ee41411bc342173605610975d3c4a0eaa8a" + +[update] +[update.modrinth] +mod-id = "XaDC71GB" +version = "r3TO8PWe" diff --git a/pkgs/minecraftmon/mods/magnum-torch.pw.toml b/pkgs/minecraftmon/mods/magnum-torch.pw.toml new file mode 100644 index 0000000..ebfaf0e --- /dev/null +++ b/pkgs/minecraftmon/mods/magnum-torch.pw.toml @@ -0,0 +1,13 @@ +name = "Magnum Torch" +filename = "MagnumTorch-v21.1.0-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/jorDmSKv/versions/wuc5gqR2/MagnumTorch-v21.1.0-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "ffee695b632c0c5d5ae36b3fe9a4b8f1ae940928ea335f32ef1521c8c861590ba04ca0ecf0f97f55530cee25bd5c0e22508a5965fe74e251e2d5dba216766caf" + +[update] +[update.modrinth] +mod-id = "jorDmSKv" +version = "wuc5gqR2" diff --git a/pkgs/minecraftmon/mods/mmlib.pw.toml b/pkgs/minecraftmon/mods/mmlib.pw.toml new file mode 100644 index 0000000..af23f2f --- /dev/null +++ b/pkgs/minecraftmon/mods/mmlib.pw.toml @@ -0,0 +1,13 @@ +name = "Mysterious Mountain Lib" +filename = "mysterious_mountain_lib-1.1.8-1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/ntMyNH8c/versions/QCo1JpCt/mysterious_mountain_lib-1.1.8-1.21.1.jar" +hash-format = "sha512" +hash = "89563f6c781be68c4f49f199b28e6b5cf50dbbdf46780c38b11097ac2b55ca26335513cf89671b19bab7952982ac4ae61e37bbe125b7a0a78650d2fe935489e7" + +[update] +[update.modrinth] +mod-id = "ntMyNH8c" +version = "QCo1JpCt" diff --git a/pkgs/minecraftmon/mods/modelfix.pw.toml b/pkgs/minecraftmon/mods/modelfix.pw.toml new file mode 100644 index 0000000..cb3470e --- /dev/null +++ b/pkgs/minecraftmon/mods/modelfix.pw.toml @@ -0,0 +1,13 @@ +name = "Model Gap Fix" +filename = "modelfix-1.21-1.10.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/QdG47OkI/versions/X2U8ceG9/modelfix-1.21-1.10.jar" +hash-format = "sha512" +hash = "647cab9a1bed84e10cfe77732a66bdfe116a6371dcceadcf896083654f7ab39542df4152674b5a3a653e3b36f517f5c1bff4c25db37dd789df9eeb1e1d799c07" + +[update] +[update.modrinth] +mod-id = "QdG47OkI" +version = "X2U8ceG9" diff --git a/pkgs/minecraftmon/mods/moderately-enough-effect-descriptions-(meed)-jeed-addon.pw.toml b/pkgs/minecraftmon/mods/moderately-enough-effect-descriptions-(meed)-jeed-addon.pw.toml new file mode 100644 index 0000000..81e639b --- /dev/null +++ b/pkgs/minecraftmon/mods/moderately-enough-effect-descriptions-(meed)-jeed-addon.pw.toml @@ -0,0 +1,13 @@ +name = "Moderately Enough Effect Descriptions (MEED) - A JEED Addon" +filename = "MEED-1.21.1-5.6.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/1dxbxzCg/versions/4VAzmU5r/MEED-1.21.1-5.6.jar" +hash-format = "sha512" +hash = "42672a63125b9cd52fc29de8dc5d514fc288d6139ca88e93e2a0b2119f77b7664595dbd07594a74781b000d0dfdca751e4ee7de9930700f024d5009521cff7c3" + +[update] +[update.modrinth] +mod-id = "1dxbxzCg" +version = "4VAzmU5r" diff --git a/pkgs/minecraftmon/mods/modernfix.pw.toml b/pkgs/minecraftmon/mods/modernfix.pw.toml new file mode 100644 index 0000000..7af05d4 --- /dev/null +++ b/pkgs/minecraftmon/mods/modernfix.pw.toml @@ -0,0 +1,13 @@ +name = "ModernFix" +filename = "modernfix-neoforge-5.24.3+mc1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/nmDcB62a/versions/4SPHwiDB/modernfix-neoforge-5.24.3%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "3105b37c9ddf8652433067ea29567c21f36e179d3a904c0800c90585f94c51560bd45222d82e397939e1be7f57c5144e0994edf6764edccfeb64ac4cec53dded" + +[update] +[update.modrinth] +mod-id = "nmDcB62a" +version = "4SPHwiDB" diff --git a/pkgs/minecraftmon/mods/moonlight.pw.toml b/pkgs/minecraftmon/mods/moonlight.pw.toml new file mode 100644 index 0000000..7c953c3 --- /dev/null +++ b/pkgs/minecraftmon/mods/moonlight.pw.toml @@ -0,0 +1,13 @@ +name = "Moonlight Lib" +filename = "moonlight-1.21-2.20.7-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/twkfQtEc/versions/cMfBtPs2/moonlight-1.21-2.20.7-neoforge.jar" +hash-format = "sha512" +hash = "7d7704aea1b98a017010cb0e15a6aa3048430e99fa136236069bbccd7a743ad23d3eeb15f10d70f75bee0406a5a62945f905a8e5fe9c20cc8c6bb407ecbebd87" + +[update] +[update.modrinth] +mod-id = "twkfQtEc" +version = "cMfBtPs2" diff --git a/pkgs/minecraftmon/mods/more-concrete.pw.toml b/pkgs/minecraftmon/mods/more-concrete.pw.toml new file mode 100644 index 0000000..e42b274 --- /dev/null +++ b/pkgs/minecraftmon/mods/more-concrete.pw.toml @@ -0,0 +1,13 @@ +name = "More Concrete" +filename = "moreconcrete-neoforge-1.6.0-1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/sUSfS0sK/versions/koNg0E1I/moreconcrete-neoforge-1.6.0-1.21.1.jar" +hash-format = "sha512" +hash = "699b067a5b1adbcc0292cb8a3fb63e6d6b566e8e329a9244c3cba05511bd7bac060d54dd2e0809af12bc19631f623fb3ddf2805b0d390f5855763a4e67f457c0" + +[update] +[update.modrinth] +mod-id = "sUSfS0sK" +version = "koNg0E1I" diff --git a/pkgs/minecraftmon/mods/mouse-tweaks.pw.toml b/pkgs/minecraftmon/mods/mouse-tweaks.pw.toml new file mode 100644 index 0000000..c665b4f --- /dev/null +++ b/pkgs/minecraftmon/mods/mouse-tweaks.pw.toml @@ -0,0 +1,13 @@ +name = "Mouse Tweaks" +filename = "MouseTweaks-neoforge-mc1.21-2.26.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/aC3cM3Vq/versions/9I21YYxf/MouseTweaks-neoforge-mc1.21-2.26.1.jar" +hash-format = "sha512" +hash = "f95c0cc881211ee0442434976775e07aae40b4a2ba4e3a85455bc57ca9d3c991e239cd98374a8abd442dc9c378dcd9001e2caa1bf69991d424b5652dd7f3483b" + +[update] +[update.modrinth] +mod-id = "aC3cM3Vq" +version = "9I21YYxf" diff --git a/pkgs/minecraftmon/mods/no-chat-reports.pw.toml b/pkgs/minecraftmon/mods/no-chat-reports.pw.toml new file mode 100644 index 0000000..8042b65 --- /dev/null +++ b/pkgs/minecraftmon/mods/no-chat-reports.pw.toml @@ -0,0 +1,13 @@ +name = "No Chat Reports" +filename = "NoChatReports-NEOFORGE-1.21.1-v2.9.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/qQyHxfxd/versions/ZV8eL55E/NoChatReports-NEOFORGE-1.21.1-v2.9.1.jar" +hash-format = "sha512" +hash = "292a3623b5addb17e9f15681a4f2534562e9882ef809e504f49da4778fafc12e21a71995b5d05554d435201f401ace1e86af50e6e26f6ce9d203a5896a1ece21" + +[update] +[update.modrinth] +mod-id = "qQyHxfxd" +version = "ZV8eL55E" diff --git a/pkgs/minecraftmon/mods/noisium.pw.toml b/pkgs/minecraftmon/mods/noisium.pw.toml new file mode 100644 index 0000000..0f5aaf8 --- /dev/null +++ b/pkgs/minecraftmon/mods/noisium.pw.toml @@ -0,0 +1,13 @@ +name = "Noisium" +filename = "noisium-neoforge-2.3.0+mc1.21-1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/KuNKN7d2/versions/nJBE6tif/noisium-neoforge-2.3.0%2Bmc1.21-1.21.1.jar" +hash-format = "sha512" +hash = "b50c37d2f69d51742d4407d272cea525b428784d2a39338d34b692937320495cd77d47b2d2321b3976713447028f50823e9ba44ca618900eba4ced907985ec84" + +[update] +[update.modrinth] +mod-id = "KuNKN7d2" +version = "nJBE6tif" diff --git a/pkgs/minecraftmon/mods/notenoughrecipebook.pw.toml b/pkgs/minecraftmon/mods/notenoughrecipebook.pw.toml new file mode 100644 index 0000000..4674c6e --- /dev/null +++ b/pkgs/minecraftmon/mods/notenoughrecipebook.pw.toml @@ -0,0 +1,13 @@ +name = "Not Enough Recipe Book [NERB]" +filename = "Not Enough Recipe Book-NEOFORGE-0.4.2+1.21.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/bQh7xzFq/versions/oJLEqcbX/Not%20Enough%20Recipe%20Book-NEOFORGE-0.4.2%2B1.21.jar" +hash-format = "sha512" +hash = "2ef2d508527273acb68c6fd34692b172148760e514fc979f141e16d718bec3ecf94dfeefe1ded6783634d2ca574ec16df2eac7a99f27f8a860f490c8a8fe1d68" + +[update] +[update.modrinth] +mod-id = "bQh7xzFq" +version = "oJLEqcbX" diff --git a/pkgs/minecraftmon/mods/nullscape.pw.toml b/pkgs/minecraftmon/mods/nullscape.pw.toml new file mode 100644 index 0000000..29eb81a --- /dev/null +++ b/pkgs/minecraftmon/mods/nullscape.pw.toml @@ -0,0 +1,13 @@ +name = "Nullscape" +filename = "Nullscape_1.21.x_v1.2.13.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/LPjGiSO4/versions/GdvpapkA/Nullscape_1.21.x_v1.2.13.jar" +hash-format = "sha512" +hash = "869540da8f56885c576c8933f4b737599f6e724b3df7e5112e23d1b0d295f96035aab92090611332b2de46696c40092cee6d13cb9d34bc0c42dcc640d3feda67" + +[update] +[update.modrinth] +mod-id = "LPjGiSO4" +version = "GdvpapkA" diff --git a/pkgs/minecraftmon/mods/oceans-delight.pw.toml b/pkgs/minecraftmon/mods/oceans-delight.pw.toml new file mode 100644 index 0000000..f01e3dc --- /dev/null +++ b/pkgs/minecraftmon/mods/oceans-delight.pw.toml @@ -0,0 +1,13 @@ +name = "Ocean's Delight" +filename = "oceansdelight-neoforge-1.0.3-1.21.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/DGiq4ZSW/versions/uYwpUE9A/oceansdelight-neoforge-1.0.3-1.21.jar" +hash-format = "sha512" +hash = "1e340a7ad3cd026ed2f15daa6308146ebeacbcb642e312dc131d3637a1c24b20ce448688a83476323a52e122b467e74da20cf02dc04d28faa0b9a2c60684467b" + +[update] +[update.modrinth] +mod-id = "DGiq4ZSW" +version = "uYwpUE9A" diff --git a/pkgs/minecraftmon/mods/octo-lib.pw.toml b/pkgs/minecraftmon/mods/octo-lib.pw.toml new file mode 100644 index 0000000..5eeb3c9 --- /dev/null +++ b/pkgs/minecraftmon/mods/octo-lib.pw.toml @@ -0,0 +1,13 @@ +name = "OctoLib" +filename = "OctoLib-NEOFORGE-0.5.0.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/RH2KUdKJ/versions/b1bY4oKd/OctoLib-NEOFORGE-0.5.0.1.jar" +hash-format = "sha512" +hash = "65abdc523833288dc3b14429befe0c68a188572d01049671aa9d186757bce447015852b4898ddd656959d91d903d508767ec07bab070ba2767bb6a66b058c756" + +[update] +[update.modrinth] +mod-id = "RH2KUdKJ" +version = "b1bY4oKd" diff --git a/pkgs/minecraftmon/mods/ominous-phantoms.pw.toml b/pkgs/minecraftmon/mods/ominous-phantoms.pw.toml new file mode 100644 index 0000000..6cbac50 --- /dev/null +++ b/pkgs/minecraftmon/mods/ominous-phantoms.pw.toml @@ -0,0 +1,13 @@ +name = "Ominous Phantoms" +filename = "ominous_phantoms-1.0.6.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/NQKAQdLb/versions/J4R0QrDz/ominous_phantoms-1.0.6.jar" +hash-format = "sha512" +hash = "acc1e8d65899657a9108d2ca4a164d591e28c7dfc51d4127ab90649f1c7658c8230f43df530d9f1b4c5729fab35b65dea9a6ee1ba201a99a10c954439dcdb140" + +[update] +[update.modrinth] +mod-id = "NQKAQdLb" +version = "J4R0QrDz" diff --git a/pkgs/minecraftmon/mods/open-loader.pw.toml b/pkgs/minecraftmon/mods/open-loader.pw.toml new file mode 100644 index 0000000..aa8f2aa --- /dev/null +++ b/pkgs/minecraftmon/mods/open-loader.pw.toml @@ -0,0 +1,13 @@ +name = "Open Loader" +filename = "OpenLoader-neoforge-1.21.1-21.1.5.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/KwWsINvD/versions/Szobbnyh/OpenLoader-neoforge-1.21.1-21.1.5.jar" +hash-format = "sha512" +hash = "3a4b0b6605f30b98a9d26954f8e211e6422f1f6402d400a9f9eb32a5af065da808dd3648a839dd60e47e50c8075b6a71624e142e50fb61273a6ba505bf6b1d09" + +[update] +[update.modrinth] +mod-id = "KwWsINvD" +version = "Szobbnyh" diff --git a/pkgs/minecraftmon/mods/open-parties-and-claims.pw.toml b/pkgs/minecraftmon/mods/open-parties-and-claims.pw.toml new file mode 100644 index 0000000..8794077 --- /dev/null +++ b/pkgs/minecraftmon/mods/open-parties-and-claims.pw.toml @@ -0,0 +1,13 @@ +name = "Open Parties and Claims" +filename = "open-parties-and-claims-neoforge-1.21.1-0.24.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/gF3BGWvG/versions/yCdwske8/open-parties-and-claims-neoforge-1.21.1-0.24.2.jar" +hash-format = "sha512" +hash = "360d6db57810ba10e40882595eeafed108d58398009e63c0f1d11006423b2f76478dc172d09bc0880f14d59b724ac67480c4b1f7c24952b961e95ee4d3ee366e" + +[update] +[update.modrinth] +mod-id = "gF3BGWvG" +version = "yCdwske8" diff --git a/pkgs/minecraftmon/mods/overflowing-bars.pw.toml b/pkgs/minecraftmon/mods/overflowing-bars.pw.toml new file mode 100644 index 0000000..aaee0dd --- /dev/null +++ b/pkgs/minecraftmon/mods/overflowing-bars.pw.toml @@ -0,0 +1,13 @@ +name = "Overflowing Bars" +filename = "OverflowingBars-v21.1.1-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/XD7XOrAF/versions/PYRrjTaY/OverflowingBars-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "2962a12664e24711096d9be98bfda2ae0b86c5050d0860a36b3567870d794767d308328060c6fbe4f4854b569d97ce465b8b250775f3ae7a5d0a563f342a4136" + +[update] +[update.modrinth] +mod-id = "XD7XOrAF" +version = "PYRrjTaY" diff --git a/pkgs/minecraftmon/mods/owo-lib.pw.toml b/pkgs/minecraftmon/mods/owo-lib.pw.toml new file mode 100644 index 0000000..e0124c1 --- /dev/null +++ b/pkgs/minecraftmon/mods/owo-lib.pw.toml @@ -0,0 +1,13 @@ +name = "oωo (owo-lib)" +filename = "owo-lib-neoforge-0.12.15.5-beta.1+1.21.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/ccKDOlHs/versions/NMCHU6DZ/owo-lib-neoforge-0.12.15.5-beta.1%2B1.21.jar" +hash-format = "sha512" +hash = "4de5c5d52139244b8c5260d641087664d992624b822599a32e03c08eb133be854a2f413667dbca1e55772445b04a70210c17b3bc13e3c88e425e7d928104b9fa" + +[update] +[update.modrinth] +mod-id = "ccKDOlHs" +version = "NMCHU6DZ" diff --git a/pkgs/minecraftmon/mods/pick-up-notifier.pw.toml b/pkgs/minecraftmon/mods/pick-up-notifier.pw.toml new file mode 100644 index 0000000..1a80b55 --- /dev/null +++ b/pkgs/minecraftmon/mods/pick-up-notifier.pw.toml @@ -0,0 +1,13 @@ +name = "Pick Up Notifier" +filename = "PickUpNotifier-v21.1.1-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/ZX66K16c/versions/5NZounJc/PickUpNotifier-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "9754f44f3bf084f45b47c88c3830dc37ffc68b4b5d6cf03ca5015177611068e8c1725670d20c0ed4674fb619227b18ccbff39cfc687a46f5258caf91c96db6db" + +[update] +[update.modrinth] +mod-id = "ZX66K16c" +version = "5NZounJc" diff --git a/pkgs/minecraftmon/mods/platter.pw.toml b/pkgs/minecraftmon/mods/platter.pw.toml new file mode 100644 index 0000000..83f577b --- /dev/null +++ b/pkgs/minecraftmon/mods/platter.pw.toml @@ -0,0 +1,13 @@ +name = "Platter" +filename = "platter-1.21-1.0.0.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/BFWLOSg1/versions/Q2lrz2We/platter-1.21-1.0.0.jar" +hash-format = "sha512" +hash = "2052024aed030760339cab25067cc2035e9ff5f2d50788577c75f2a07741a6b86da9a374e779f3fb6c314b6d8d0255a5188126779780559ed94100cfefe81c56" + +[update] +[update.modrinth] +mod-id = "BFWLOSg1" +version = "Q2lrz2We" diff --git a/pkgs/minecraftmon/mods/playeranimator.pw.toml b/pkgs/minecraftmon/mods/playeranimator.pw.toml new file mode 100644 index 0000000..68dd423 --- /dev/null +++ b/pkgs/minecraftmon/mods/playeranimator.pw.toml @@ -0,0 +1,13 @@ +name = "playerAnimator" +filename = "player-animation-lib-forge-2.0.1+1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/gedNE4y2/versions/q60QWuOK/player-animation-lib-forge-2.0.1%2B1.21.1.jar" +hash-format = "sha512" +hash = "1b6fdeec973d36fed687d27af05c1ea8467564b21b8f884a0de8cf97e8a8f91d5e7b0cffaa3a687a7341f2357dae8c47e989e2bba44cd3fbb9d90726207f427b" + +[update] +[update.modrinth] +mod-id = "gedNE4y2" +version = "q60QWuOK" diff --git a/pkgs/minecraftmon/mods/prickle.pw.toml b/pkgs/minecraftmon/mods/prickle.pw.toml new file mode 100644 index 0000000..baf3c41 --- /dev/null +++ b/pkgs/minecraftmon/mods/prickle.pw.toml @@ -0,0 +1,13 @@ +name = "Prickle" +filename = "prickle-neoforge-1.21.1-21.1.8.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/aaRl8GiW/versions/u5HZtlyZ/prickle-neoforge-1.21.1-21.1.8.jar" +hash-format = "sha512" +hash = "40025298c04099ac3f61f6d3095a03f949e46e6508414372662499f51e1161dcf99563f8ca2f3686755fdceba479da1aa653d247da5ec12a883b31741fcb6aa7" + +[update] +[update.modrinth] +mod-id = "aaRl8GiW" +version = "u5HZtlyZ" diff --git a/pkgs/minecraftmon/mods/puzzles-lib.pw.toml b/pkgs/minecraftmon/mods/puzzles-lib.pw.toml new file mode 100644 index 0000000..4be4f10 --- /dev/null +++ b/pkgs/minecraftmon/mods/puzzles-lib.pw.toml @@ -0,0 +1,13 @@ +name = "Puzzles Lib" +filename = "PuzzlesLib-v21.1.36-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/QAGBst4M/versions/AcwAgaYA/PuzzlesLib-v21.1.36-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "83a97eca3da73d713da8e07da62e8c73fd573d4b73d60fe2e714ef73dd8d00fc737b34c8c253d5e0997708349af33e73d64b71b26791a52a5d9700b2c87ab49d" + +[update] +[update.modrinth] +mod-id = "QAGBst4M" +version = "AcwAgaYA" diff --git a/pkgs/minecraftmon/mods/reeses-sodium-options.pw.toml b/pkgs/minecraftmon/mods/reeses-sodium-options.pw.toml new file mode 100644 index 0000000..8d69bd9 --- /dev/null +++ b/pkgs/minecraftmon/mods/reeses-sodium-options.pw.toml @@ -0,0 +1,13 @@ +name = "Reese's Sodium Options" +filename = "reeses-sodium-options-neoforge-1.8.3+mc1.21.4.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/Bh37bMuy/versions/xAiCe6w8/reeses-sodium-options-neoforge-1.8.3%2Bmc1.21.4.jar" +hash-format = "sha512" +hash = "d66b5d30e1bb8316cb75d52ba8485c6c1cfb0d03624288f39c1826b92de9da9c3d79351be9d7303ca3226176255921f35063139da118c755cf9a709186129744" + +[update] +[update.modrinth] +mod-id = "Bh37bMuy" +version = "xAiCe6w8" diff --git a/pkgs/minecraftmon/mods/refined-storage-emi-integration.pw.toml b/pkgs/minecraftmon/mods/refined-storage-emi-integration.pw.toml new file mode 100644 index 0000000..0332f48 --- /dev/null +++ b/pkgs/minecraftmon/mods/refined-storage-emi-integration.pw.toml @@ -0,0 +1,13 @@ +name = "Refined Storage - EMI Integration" +filename = "refinedstorage-emi-integration-neoforge-1.0.0.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/TCSDwmbf/versions/zpz6Pcxn/refinedstorage-emi-integration-neoforge-1.0.0.jar" +hash-format = "sha512" +hash = "9e6f4e487c1a1b50e75074b3128a8d27f8dc94260db435aab0efceb41e5c13ca5d1e177d6b78153fa97253408acde0eff3dcb5427c2d28f5ab5fe2c40529e377" + +[update] +[update.modrinth] +mod-id = "TCSDwmbf" +version = "zpz6Pcxn" diff --git a/pkgs/minecraftmon/mods/refined-storage.pw.toml b/pkgs/minecraftmon/mods/refined-storage.pw.toml new file mode 100644 index 0000000..ca0aba0 --- /dev/null +++ b/pkgs/minecraftmon/mods/refined-storage.pw.toml @@ -0,0 +1,13 @@ +name = "Refined Storage" +filename = "refinedstorage-neoforge-2.0.0-beta.4.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/KDvYkUg3/versions/1yYKIPit/refinedstorage-neoforge-2.0.0-beta.4.jar" +hash-format = "sha512" +hash = "6129b9e14de66475837653048d5c2282945b9de9210efc34c5f6c5af01197336cdc95d0010a81963ec262c21d7d28b3daa0500c19a7db05da24d7ec974c9e9e1" + +[update] +[update.modrinth] +mod-id = "KDvYkUg3" +version = "1yYKIPit" diff --git a/pkgs/minecraftmon/mods/resource-pack-overrides.pw.toml b/pkgs/minecraftmon/mods/resource-pack-overrides.pw.toml new file mode 100644 index 0000000..2db74e5 --- /dev/null +++ b/pkgs/minecraftmon/mods/resource-pack-overrides.pw.toml @@ -0,0 +1,13 @@ +name = "Resource Pack Overrides" +filename = "ResourcePackOverrides-v21.1.0-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/YsFycamt/versions/xf3H2eJV/ResourcePackOverrides-v21.1.0-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "9a15db96ffc86bc93624392c22c2aaea4ad4a7267c20ff528ff2dd61d8d84b9db611fc24673fba5b5d0bac318b4ce1e9d1725085ce2fad68f4231afa6bbb43c4" + +[update] +[update.modrinth] +mod-id = "YsFycamt" +version = "xf3H2eJV" diff --git a/pkgs/minecraftmon/mods/resourceful-lib.pw.toml b/pkgs/minecraftmon/mods/resourceful-lib.pw.toml new file mode 100644 index 0000000..ab5aa95 --- /dev/null +++ b/pkgs/minecraftmon/mods/resourceful-lib.pw.toml @@ -0,0 +1,13 @@ +name = "Resourceful Lib" +filename = "resourcefullib-neoforge-1.21-3.0.12.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/G1hIVOrD/versions/x99nCLTm/resourcefullib-neoforge-1.21-3.0.12.jar" +hash-format = "sha512" +hash = "a9d20e345faa9bcb297bd95ac9524205834804d1bb13518397dd4f7f62b352b08c3339ee7f7870d3669078ceeb33d5c31ea527aecce4b31d62ec1ff7d8b562c8" + +[update] +[update.modrinth] +mod-id = "G1hIVOrD" +version = "x99nCLTm" diff --git a/pkgs/minecraftmon/mods/respawning-animals.pw.toml b/pkgs/minecraftmon/mods/respawning-animals.pw.toml new file mode 100644 index 0000000..bf9c7f8 --- /dev/null +++ b/pkgs/minecraftmon/mods/respawning-animals.pw.toml @@ -0,0 +1,13 @@ +name = "Respawning Animals" +filename = "RespawningAnimals-v21.1.1-1.21.1-NeoForge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/WnwcSeWc/versions/9AQKRTYv/RespawningAnimals-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "5ce56ed8110f4fac4c8e64dedd0f6de2c58ed1d6a35a9dd5e3cb33200362018873dd66203e70b13dd21b0a0e19c35ce3419abe1e3a59eced41d83f74b83a19a2" + +[update] +[update.modrinth] +mod-id = "WnwcSeWc" +version = "9AQKRTYv" diff --git a/pkgs/minecraftmon/mods/rrls.pw.toml b/pkgs/minecraftmon/mods/rrls.pw.toml new file mode 100644 index 0000000..b070bd5 --- /dev/null +++ b/pkgs/minecraftmon/mods/rrls.pw.toml @@ -0,0 +1,13 @@ +name = "Remove Reloading Screen" +filename = "rrls-5.0.10+mc1.21.1-forge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/ZP7xHXtw/versions/CSHa8VOm/rrls-5.0.10%2Bmc1.21.1-forge.jar" +hash-format = "sha512" +hash = "5a1d6776b2b8769f752a8c60b0f816b05385dfc7c0d27d0b8435bb11825531988e216f108ea7b38fb40ec38796036a6a6421572ec86e1ffd22d3963ba67f019b" + +[update] +[update.modrinth] +mod-id = "ZP7xHXtw" +version = "CSHa8VOm" diff --git a/pkgs/minecraftmon/mods/searchables.pw.toml b/pkgs/minecraftmon/mods/searchables.pw.toml new file mode 100644 index 0000000..fded818 --- /dev/null +++ b/pkgs/minecraftmon/mods/searchables.pw.toml @@ -0,0 +1,13 @@ +name = "Searchables" +filename = "Searchables-neoforge-1.21.1-1.0.2.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/fuuu3xnx/versions/iEE85X0w/Searchables-neoforge-1.21.1-1.0.2.jar" +hash-format = "sha512" +hash = "d0824bac1900142ac9a53e68f7ec3b4c0d33d9366bbd3f1d0d93eed860e5eb6b5e6f5a215a69bfffa70bcb48573ff49b5a12bbaa96096ceac6636000d506027a" + +[update] +[update.modrinth] +mod-id = "fuuu3xnx" +version = "iEE85X0w" diff --git a/pkgs/minecraftmon/mods/silent-gear.pw.toml b/pkgs/minecraftmon/mods/silent-gear.pw.toml new file mode 100644 index 0000000..7f74924 --- /dev/null +++ b/pkgs/minecraftmon/mods/silent-gear.pw.toml @@ -0,0 +1,13 @@ +name = "Silent Gear" +filename = "silent-gear-1.21.1-neoforge-4.0.25.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/73mSSnCf/versions/5QBZXkgM/silent-gear-1.21.1-neoforge-4.0.25.jar" +hash-format = "sha512" +hash = "409ee7ba03e2f36598076492693b96992a9ab0221a2f10b62bc1c638850567d56e2d40590f3e65d553b22309b30574ade744021cc8dd88ae672f37334d22cc70" + +[update] +[update.modrinth] +mod-id = "73mSSnCf" +version = "5QBZXkgM" diff --git a/pkgs/minecraftmon/mods/silent-lib.pw.toml b/pkgs/minecraftmon/mods/silent-lib.pw.toml new file mode 100644 index 0000000..12ca647 --- /dev/null +++ b/pkgs/minecraftmon/mods/silent-lib.pw.toml @@ -0,0 +1,13 @@ +name = "Silent Lib" +filename = "silent-lib-1.21.1-neoforge-10.5.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/BQhuHQo4/versions/djmtrwla/silent-lib-1.21.1-neoforge-10.5.1.jar" +hash-format = "sha512" +hash = "c6e2f244940eeef1e251f3bb2e8ce68f749d324848f9b4bf37454a5f5b64d3ea046ccd7b7dc53f781e0b567e9f7149afc4cc6502c3e7bb7cc8513e3cfac24c67" + +[update] +[update.modrinth] +mod-id = "BQhuHQo4" +version = "djmtrwla" diff --git a/pkgs/minecraftmon/mods/simpletms-tms-and-trs-for-cobblemon.pw.toml b/pkgs/minecraftmon/mods/simpletms-tms-and-trs-for-cobblemon.pw.toml new file mode 100644 index 0000000..e40f858 --- /dev/null +++ b/pkgs/minecraftmon/mods/simpletms-tms-and-trs-for-cobblemon.pw.toml @@ -0,0 +1,13 @@ +name = "SimpleTMs: TMs and TRs for Cobblemon" +filename = "SimpleTMs-neoforge-2.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/yFqR0DNc/versions/SiplD8Nd/SimpleTMs-neoforge-2.1.2.jar" +hash-format = "sha512" +hash = "902156fd009d808d11e1b9a2e73fa8891440a17e0b305fdcfdc988ec96c270b82cc79a54b13c2ccf2df8dd43f96e020389668a68b4c324cd5ce1e72b5f2b1ce9" + +[update] +[update.modrinth] +mod-id = "yFqR0DNc" +version = "SiplD8Nd" diff --git a/pkgs/minecraftmon/mods/snow-real-magic.pw.toml b/pkgs/minecraftmon/mods/snow-real-magic.pw.toml new file mode 100644 index 0000000..d00d566 --- /dev/null +++ b/pkgs/minecraftmon/mods/snow-real-magic.pw.toml @@ -0,0 +1,13 @@ +name = "Snow! Real Magic! ⛄" +filename = "SnowRealMagic-1.21.1-NeoForge-12.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/iJNje1E8/versions/bRJ7ymMR/SnowRealMagic-1.21.1-NeoForge-12.1.2.jar" +hash-format = "sha512" +hash = "f575a67758e225ac8cc98fc34ea54b7ee5b98da8e950ca6c9f60ca9da58b1004889de44b534fd7abb1de4facc7cd280a0f101c7f5a424735c78a7b741d370957" + +[update] +[update.modrinth] +mod-id = "iJNje1E8" +version = "bRJ7ymMR" diff --git a/pkgs/minecraftmon/mods/snow-under-trees.pw.toml b/pkgs/minecraftmon/mods/snow-under-trees.pw.toml new file mode 100644 index 0000000..418aa47 --- /dev/null +++ b/pkgs/minecraftmon/mods/snow-under-trees.pw.toml @@ -0,0 +1,13 @@ +name = "Snow Under Trees" +filename = "snowundertrees-1.21.1-1.5.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/Q3vyMuj2/versions/rtNRLZvR/snowundertrees-1.21.1-1.5.jar" +hash-format = "sha512" +hash = "9babd0bbc70f513ad9f00f62c7cdb1c078f251a1b3818ec90160189762672d0c57de5fff6aea235dcf9cc570784f2f0540aac7986917612d0f5d0f968ff54f53" + +[update] +[update.modrinth] +mod-id = "Q3vyMuj2" +version = "rtNRLZvR" diff --git a/pkgs/minecraftmon/mods/sodium-dynamic-lights.pw.toml b/pkgs/minecraftmon/mods/sodium-dynamic-lights.pw.toml new file mode 100644 index 0000000..4a5c7aa --- /dev/null +++ b/pkgs/minecraftmon/mods/sodium-dynamic-lights.pw.toml @@ -0,0 +1,13 @@ +name = "Sodium Dynamic Lights" +filename = "sodiumdynamiclights-neoforge-1.0.10-1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/PxQSWIcD/versions/XI0WLXdn/sodiumdynamiclights-neoforge-1.0.10-1.21.1.jar" +hash-format = "sha512" +hash = "ec19a81cf2dfde255990a457d8f6d7375df53cb94190dce71c4bfe5d5263f4862027ce4aa0af20cb11d56c7c031d5e149b3bdf95bec6343e5bd4552450b14c0a" + +[update] +[update.modrinth] +mod-id = "PxQSWIcD" +version = "XI0WLXdn" diff --git a/pkgs/minecraftmon/mods/sodium-extra.pw.toml b/pkgs/minecraftmon/mods/sodium-extra.pw.toml new file mode 100644 index 0000000..5004f97 --- /dev/null +++ b/pkgs/minecraftmon/mods/sodium-extra.pw.toml @@ -0,0 +1,13 @@ +name = "Sodium Extra" +filename = "sodium-extra-neoforge-0.6.0+mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/PtjYWJkn/versions/pFmw1eci/sodium-extra-neoforge-0.6.0%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "6f7383ef3f4b572c76d3371a7441bc3d625db9d404cf61b249fab018bc3ffd1fa82e735ec21916df3f4072f0927dad3673efbc40bf8d11846c3d6fecc9329bb7" + +[update] +[update.modrinth] +mod-id = "PtjYWJkn" +version = "pFmw1eci" diff --git a/pkgs/minecraftmon/mods/sodium-extras.pw.toml b/pkgs/minecraftmon/mods/sodium-extras.pw.toml new file mode 100644 index 0000000..aaec9e7 --- /dev/null +++ b/pkgs/minecraftmon/mods/sodium-extras.pw.toml @@ -0,0 +1,13 @@ +name = "Sodium Extras" +filename = "sodiumextras-neoforge-1.0.8-1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/vqqx0QiE/versions/qDEGbszS/sodiumextras-neoforge-1.0.8-1.21.1.jar" +hash-format = "sha512" +hash = "1bab2a7651b628a04066ce5221cd2df9bbbd8811da41a1f1c30c367b0a92bd5b42c5c13c9c45b961330d156836f367daf6225c72ba4f6acc7e42e9b44df3f419" + +[update] +[update.modrinth] +mod-id = "vqqx0QiE" +version = "qDEGbszS" diff --git a/pkgs/minecraftmon/mods/sodium-options-api.pw.toml b/pkgs/minecraftmon/mods/sodium-options-api.pw.toml new file mode 100644 index 0000000..b034e9e --- /dev/null +++ b/pkgs/minecraftmon/mods/sodium-options-api.pw.toml @@ -0,0 +1,13 @@ +name = "Sodium Options API" +filename = "sodiumoptionsapi-neoforge-1.0.10-1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/Es5v4eyq/versions/lrsX3TMS/sodiumoptionsapi-neoforge-1.0.10-1.21.1.jar" +hash-format = "sha512" +hash = "f2f022183f300961d7d0503461daa59e3e606c32f189f1cb3307edaf765986c541929205b7bf6f40c4c88319696e9d863c1bf711bd441dc9b7081c198ddb445b" + +[update] +[update.modrinth] +mod-id = "Es5v4eyq" +version = "lrsX3TMS" diff --git a/pkgs/minecraftmon/mods/sodium.pw.toml b/pkgs/minecraftmon/mods/sodium.pw.toml new file mode 100644 index 0000000..b2530b8 --- /dev/null +++ b/pkgs/minecraftmon/mods/sodium.pw.toml @@ -0,0 +1,13 @@ +name = "Sodium" +filename = "sodium-neoforge-0.6.13+mc1.21.1.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/AANobbMI/versions/Pb3OXVqC/sodium-neoforge-0.6.13%2Bmc1.21.1.jar" +hash-format = "sha512" +hash = "ce58f34d05d96c0a109a5cea23c741f6bdb2e6be31fc087c5989274cefca5f10ba0c08c62083cf554a51f2c7667bf46e4164383f675c844e77633aef2659996b" + +[update] +[update.modrinth] +mod-id = "AANobbMI" +version = "Pb3OXVqC" diff --git a/pkgs/minecraftmon/mods/sophisticated-backpacks.pw.toml b/pkgs/minecraftmon/mods/sophisticated-backpacks.pw.toml new file mode 100644 index 0000000..2fc3551 --- /dev/null +++ b/pkgs/minecraftmon/mods/sophisticated-backpacks.pw.toml @@ -0,0 +1,13 @@ +name = "Sophisticated Backpacks" +filename = "sophisticatedbackpacks-1.21.1-3.24.18.1288.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/TyCTlI4b/versions/bZKXst8R/sophisticatedbackpacks-1.21.1-3.24.18.1288.jar" +hash-format = "sha512" +hash = "8865d92cd024f298a33dd42c7aeb3fc8e289b59fe5ec06f68fa42be76b5a6bdc3da11fe60bd2ed7e5b0b045d38cb15cf0dfe421a55d64a68ab2b0ea5f4c94d7f" + +[update] +[update.modrinth] +mod-id = "TyCTlI4b" +version = "bZKXst8R" diff --git a/pkgs/minecraftmon/mods/sophisticated-core.pw.toml b/pkgs/minecraftmon/mods/sophisticated-core.pw.toml new file mode 100644 index 0000000..0e3ff01 --- /dev/null +++ b/pkgs/minecraftmon/mods/sophisticated-core.pw.toml @@ -0,0 +1,13 @@ +name = "Sophisticated Core" +filename = "sophisticatedcore-1.21.1-1.3.58.1058.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/nmoqTijg/versions/Jh9gWjSk/sophisticatedcore-1.21.1-1.3.58.1058.jar" +hash-format = "sha512" +hash = "cb292b099ade8a86f0bd5bd9a403b461b8a5e2e4500fd8ddec8b0bdf3d1c127737a819953b606d503adbabcd9ebf33e072cd81408e84f2a16c83e851663d6d90" + +[update] +[update.modrinth] +mod-id = "nmoqTijg" +version = "Jh9gWjSk" diff --git a/pkgs/minecraftmon/mods/sophisticated-storage-create-integration.pw.toml b/pkgs/minecraftmon/mods/sophisticated-storage-create-integration.pw.toml new file mode 100644 index 0000000..9e10c1d --- /dev/null +++ b/pkgs/minecraftmon/mods/sophisticated-storage-create-integration.pw.toml @@ -0,0 +1,13 @@ +name = "Sophisticated Storage Create Integration" +filename = "sophisticatedstoragecreateintegration-1.21.1-0.1.11.37.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/MJ0hdevs/versions/OYSeWrSs/sophisticatedstoragecreateintegration-1.21.1-0.1.11.37.jar" +hash-format = "sha512" +hash = "457467bd3a0b67ed0aba8027c688278b209748727b0847b49fb119eea7787cea4da4fea3f5686d5580c0b469131302b9d54846e75e2152e0eab09b6ee9f327be" + +[update] +[update.modrinth] +mod-id = "MJ0hdevs" +version = "OYSeWrSs" diff --git a/pkgs/minecraftmon/mods/sophisticated-storage.pw.toml b/pkgs/minecraftmon/mods/sophisticated-storage.pw.toml new file mode 100644 index 0000000..4cfe6c7 --- /dev/null +++ b/pkgs/minecraftmon/mods/sophisticated-storage.pw.toml @@ -0,0 +1,13 @@ +name = "Sophisticated Storage" +filename = "sophisticatedstorage-1.21.1-1.4.46.1216.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/hMlaZH8f/versions/lqwfnUyS/sophisticatedstorage-1.21.1-1.4.46.1216.jar" +hash-format = "sha512" +hash = "20081ca7df31f06781747e72c16e56a9b738a4511d15ed30bb9877d9c7d2cd34bb061ef7258689dac7c5819b89255d81afebecd00f8a0d60f5e6039e6cc0f71f" + +[update] +[update.modrinth] +mod-id = "hMlaZH8f" +version = "lqwfnUyS" diff --git a/pkgs/minecraftmon/mods/spice-of-life-onion.pw.toml b/pkgs/minecraftmon/mods/spice-of-life-onion.pw.toml new file mode 100644 index 0000000..34dd437 --- /dev/null +++ b/pkgs/minecraftmon/mods/spice-of-life-onion.pw.toml @@ -0,0 +1,13 @@ +name = "Spice of Life Onion" +filename = "Spice of Life Onion_NEOFORGE_v1.5.0_mc1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/eHGYGKJz/versions/pe8GOHZh/Spice%20of%20Life%20Onion_NEOFORGE_v1.5.0_mc1.21.1.jar" +hash-format = "sha512" +hash = "d42f489caa0142266839ba5ecece697aa2ba2718a5f6f0bb1533799bcb6b4f33dcce11b358e2ffeef4833f069d013bb5f31d70dbe3cd3fda4893c923a9291505" + +[update] +[update.modrinth] +mod-id = "eHGYGKJz" +version = "pe8GOHZh" diff --git a/pkgs/minecraftmon/mods/storage-delight.pw.toml b/pkgs/minecraftmon/mods/storage-delight.pw.toml new file mode 100644 index 0000000..2e379b6 --- /dev/null +++ b/pkgs/minecraftmon/mods/storage-delight.pw.toml @@ -0,0 +1,13 @@ +name = "Storage Delight" +filename = "storagedelight-25.06.24-1.21-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/LTTvOp5L/versions/FMxmvSzX/storagedelight-25.06.24-1.21-neoforge.jar" +hash-format = "sha512" +hash = "9d533883378f701c8501cb7b0a5fb0269733311e052d2ea2d90d9cd6a21d7bb37aba324094c39f04cfed57f64feb3f7174edea0c73d0b72950ca5fdd82a161f5" + +[update] +[update.modrinth] +mod-id = "LTTvOp5L" +version = "FMxmvSzX" diff --git a/pkgs/minecraftmon/mods/stylish-effects.pw.toml b/pkgs/minecraftmon/mods/stylish-effects.pw.toml new file mode 100644 index 0000000..91de54d --- /dev/null +++ b/pkgs/minecraftmon/mods/stylish-effects.pw.toml @@ -0,0 +1,13 @@ +name = "Stylish Effects" +filename = "StylishEffects-v21.1.1-1.21.1-NeoForge.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/onDuQF5e/versions/35SKbZ6h/StylishEffects-v21.1.1-1.21.1-NeoForge.jar" +hash-format = "sha512" +hash = "d6e7f5104e9635d42ba759ddccb9544d3897be0ddb9354990d0697950dd42cb4dbeb57dcef5c452b6decd977f0a91365d3cf1590d18fefc0cb0092e05b5d6662" + +[update] +[update.modrinth] +mod-id = "onDuQF5e" +version = "35SKbZ6h" diff --git a/pkgs/minecraftmon/mods/subtle-effects.pw.toml b/pkgs/minecraftmon/mods/subtle-effects.pw.toml new file mode 100644 index 0000000..f4c2a39 --- /dev/null +++ b/pkgs/minecraftmon/mods/subtle-effects.pw.toml @@ -0,0 +1,13 @@ +name = "Subtle Effects" +filename = "SubtleEffects-neoforge-1.21.1-1.11.0.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/4q8UOK1d/versions/f9d2scQa/SubtleEffects-neoforge-1.21.1-1.11.0.jar" +hash-format = "sha512" +hash = "55e8517e4498f78c15c410167aa8a37d388e382b031718f734f756f6d73eeb990be4e5e9495305ab225e51c4e8f54fb6af60df3c576062b01f5962ed9c3c4f05" + +[update] +[update.modrinth] +mod-id = "4q8UOK1d" +version = "f9d2scQa" diff --git a/pkgs/minecraftmon/mods/tax-free-levels.pw.toml b/pkgs/minecraftmon/mods/tax-free-levels.pw.toml new file mode 100644 index 0000000..a777775 --- /dev/null +++ b/pkgs/minecraftmon/mods/tax-free-levels.pw.toml @@ -0,0 +1,13 @@ +name = "Tax Free Levels" +filename = "TaxFreeLevels-1.4.7-neoforge-1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/jCBrrLTs/versions/eD8qmM43/TaxFreeLevels-1.4.7-neoforge-1.21.1.jar" +hash-format = "sha512" +hash = "f02e7c8ba0aacca9a04db0861fb61e3940cba767a77fea347f65f86fd9443a52cfee85d96678bdf2cb935970eb98c8573673d03b1263e0b6f6bcdfbd9ecc39b5" + +[update] +[update.modrinth] +mod-id = "jCBrrLTs" +version = "eD8qmM43" diff --git a/pkgs/minecraftmon/mods/tectonic.pw.toml b/pkgs/minecraftmon/mods/tectonic.pw.toml new file mode 100644 index 0000000..6245ad1 --- /dev/null +++ b/pkgs/minecraftmon/mods/tectonic.pw.toml @@ -0,0 +1,13 @@ +name = "Tectonic" +filename = "tectonic-3.0.5-neoforge-1.21.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/lWDHr9jE/versions/fQ85u6Yv/tectonic-3.0.5-neoforge-1.21.1.jar" +hash-format = "sha512" +hash = "2b8d687e53620bae3260f45709b1f1589c485e122005ce623e7a3cf90193d17a5094700095bf5900cc3e65c69b6d84815396d62133b07a6fbd4b835a4bf6e122" + +[update] +[update.modrinth] +mod-id = "lWDHr9jE" +version = "fQ85u6Yv" diff --git a/pkgs/minecraftmon/mods/terralith.pw.toml b/pkgs/minecraftmon/mods/terralith.pw.toml new file mode 100644 index 0000000..b662da4 --- /dev/null +++ b/pkgs/minecraftmon/mods/terralith.pw.toml @@ -0,0 +1,13 @@ +name = "Terralith" +filename = "Terralith_1.21.x_v2.5.8.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/8oi3bsk5/versions/MuJMtPGQ/Terralith_1.21.x_v2.5.8.jar" +hash-format = "sha512" +hash = "f862ed5435ce4c11a97d2ea5c40eee9f817c908f3223b5fd3e3fff0562a55111d7429dc73a2f1ca0b1af7b1ff6fa0470ed6efebb5de13336c40bb70fb357dd60" + +[update] +[update.modrinth] +mod-id = "8oi3bsk5" +version = "MuJMtPGQ" diff --git a/pkgs/minecraftmon/mods/tidal-towns.pw.toml b/pkgs/minecraftmon/mods/tidal-towns.pw.toml new file mode 100644 index 0000000..af8b9a1 --- /dev/null +++ b/pkgs/minecraftmon/mods/tidal-towns.pw.toml @@ -0,0 +1,13 @@ +name = "Tidal Towns" +filename = "tidal-towns-1.3.4.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/EEIwvQVo/versions/xWUN0cml/tidal-towns-1.3.4.jar" +hash-format = "sha512" +hash = "f40954849ed782fe262505c859bfee749eab57a2963d10d5e0b95b5eb1b1835729a98e76e7995f6ecfeba60141448203d3e0f36b1ae9f69db75aceff7175b607" + +[update] +[update.modrinth] +mod-id = "EEIwvQVo" +version = "xWUN0cml" diff --git a/pkgs/minecraftmon/mods/wall-jump-txf.pw.toml b/pkgs/minecraftmon/mods/wall-jump-txf.pw.toml new file mode 100644 index 0000000..36eb2e1 --- /dev/null +++ b/pkgs/minecraftmon/mods/wall-jump-txf.pw.toml @@ -0,0 +1,13 @@ +name = "Wall-Jump TXF" +filename = "walljump-1.21.1-1.3.5-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/oUoetxfR/versions/IiZ17Hgu/walljump-1.21.1-1.3.5-neoforge.jar" +hash-format = "sha512" +hash = "4ff0c15d033d2aeb9a8338adc49349a22fb25f04a0713035851312ee451eed0d14444f7bf4241af721c31b3426738624aa53e4c0b1afa7f92832da3a9e1c94af" + +[update] +[update.modrinth] +mod-id = "oUoetxfR" +version = "IiZ17Hgu" diff --git a/pkgs/minecraftmon/mods/yacl.pw.toml b/pkgs/minecraftmon/mods/yacl.pw.toml new file mode 100644 index 0000000..195ebc5 --- /dev/null +++ b/pkgs/minecraftmon/mods/yacl.pw.toml @@ -0,0 +1,13 @@ +name = "YetAnotherConfigLib (YACL)" +filename = "yet_another_config_lib_v3-3.7.1+1.21.1-neoforge.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/1eAoo2KR/versions/zwRKksBU/yet_another_config_lib_v3-3.7.1%2B1.21.1-neoforge.jar" +hash-format = "sha512" +hash = "bd0bbbc8563117bc817b0d40ee345928713ac93976e34e4947472e57d3c6bad307cb56881e6772c3712cf3afed9577604c100fa9ccf22255896b703f44ec003b" + +[update] +[update.modrinth] +mod-id = "1eAoo2KR" +version = "zwRKksBU" diff --git a/pkgs/minecraftmon/mods/yeetus-experimentus.pw.toml b/pkgs/minecraftmon/mods/yeetus-experimentus.pw.toml new file mode 100644 index 0000000..ef0f5df --- /dev/null +++ b/pkgs/minecraftmon/mods/yeetus-experimentus.pw.toml @@ -0,0 +1,13 @@ +name = "Yeetus Experimentus" +filename = "yeetusexperimentus-neoforge-87.0.0.jar" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/HaaH232J/versions/Pp0TjcvD/yeetusexperimentus-neoforge-87.0.0.jar" +hash-format = "sha512" +hash = "cc2dc46dcaa0424c820cb7931fd2ceb3826669934189c011fd1ebd5692cdf7652c725034abec2828bfea2238c9615d6f9c36e3e01e21fc9eb44551eb51e06fe3" + +[update] +[update.modrinth] +mod-id = "HaaH232J" +version = "Pp0TjcvD" diff --git a/pkgs/minecraftmon/mods/yungs-api.pw.toml b/pkgs/minecraftmon/mods/yungs-api.pw.toml new file mode 100644 index 0000000..113a482 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-api.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's API" +filename = "YungsApi-1.21.1-NeoForge-5.1.6.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/Ua7DFN59/versions/ZB22DE9q/YungsApi-1.21.1-NeoForge-5.1.6.jar" +hash-format = "sha512" +hash = "5f36d5166a67a156df52699071f20219bc2320b3c4fbcd9dac38631f66136f034e3219ac89ff4bfb6e26e4c68513a94c833797f2e5ed5bf58cfa1531eeed162d" + +[update] +[update.modrinth] +mod-id = "Ua7DFN59" +version = "ZB22DE9q" diff --git a/pkgs/minecraftmon/mods/yungs-better-desert-temples.pw.toml b/pkgs/minecraftmon/mods/yungs-better-desert-temples.pw.toml new file mode 100644 index 0000000..56de381 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-desert-temples.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Desert Temples" +filename = "YungsBetterDesertTemples-1.21.1-NeoForge-4.1.5.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/XNlO7sBv/versions/GQ9iNWkI/YungsBetterDesertTemples-1.21.1-NeoForge-4.1.5.jar" +hash-format = "sha512" +hash = "6454c955f75f66104810e967a59ae032ddf1ccc5a854346af6bfba6e44cd456e755cd8feb1e0968be4e9132ea6c5d1cb2126fe5e85d3eb18c8d3ea3c81ffdf9a" + +[update] +[update.modrinth] +mod-id = "XNlO7sBv" +version = "GQ9iNWkI" diff --git a/pkgs/minecraftmon/mods/yungs-better-dungeons.pw.toml b/pkgs/minecraftmon/mods/yungs-better-dungeons.pw.toml new file mode 100644 index 0000000..a649aba --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-dungeons.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Dungeons" +filename = "YungsBetterDungeons-1.21.1-NeoForge-5.1.4.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/o1C1Dkj5/versions/D6aZn0Em/YungsBetterDungeons-1.21.1-NeoForge-5.1.4.jar" +hash-format = "sha512" +hash = "40513bacd13fa9860abcab507b1fc09dc51649af4b615ce466e0ec361557f02d35e6e44bea1cc17cb4120805f862aad01394eb185f46611e7be63dfd97f272df" + +[update] +[update.modrinth] +mod-id = "o1C1Dkj5" +version = "D6aZn0Em" diff --git a/pkgs/minecraftmon/mods/yungs-better-end-island.pw.toml b/pkgs/minecraftmon/mods/yungs-better-end-island.pw.toml new file mode 100644 index 0000000..d795854 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-end-island.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better End Island" +filename = "YungsBetterEndIsland-1.21.1-NeoForge-3.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/2BwBOmBQ/versions/I52NZ1qK/YungsBetterEndIsland-1.21.1-NeoForge-3.1.2.jar" +hash-format = "sha512" +hash = "02923a1a97eb81ec13d69bdc6b7e8b36dfb9e6f1a98adfcf103707ec3afde35831ccd4b210e9b3a9c7662541c38ea593a3d94c12171b4072ea7feafa75c95f96" + +[update] +[update.modrinth] +mod-id = "2BwBOmBQ" +version = "I52NZ1qK" diff --git a/pkgs/minecraftmon/mods/yungs-better-jungle-temples.pw.toml b/pkgs/minecraftmon/mods/yungs-better-jungle-temples.pw.toml new file mode 100644 index 0000000..70743ab --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-jungle-temples.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Jungle Temples" +filename = "YungsBetterJungleTemples-1.21.1-NeoForge-3.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/z9Ve58Ih/versions/P00i2hJn/YungsBetterJungleTemples-1.21.1-NeoForge-3.1.2.jar" +hash-format = "sha512" +hash = "eca4233e874a55886c63d2111b8685d479771d3627bad2922582e65b78c51ba74733dc4624aabf91f2a2178a940a72d9209ae33eef74e34f84f07d62256709d9" + +[update] +[update.modrinth] +mod-id = "z9Ve58Ih" +version = "P00i2hJn" diff --git a/pkgs/minecraftmon/mods/yungs-better-mineshafts.pw.toml b/pkgs/minecraftmon/mods/yungs-better-mineshafts.pw.toml new file mode 100644 index 0000000..59cf262 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-mineshafts.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Mineshafts" +filename = "YungsBetterMineshafts-1.21.1-NeoForge-5.1.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/HjmxVlSr/versions/Go3nbneL/YungsBetterMineshafts-1.21.1-NeoForge-5.1.1.jar" +hash-format = "sha512" +hash = "8b01b386f53feeaa55f0c62697578b82e00501e45e428b2a68df6bda34efb6a4b3b4e3582abf13fe767ebcb61aef9368186f53c03999958bef38f31c41a7f8b2" + +[update] +[update.modrinth] +mod-id = "HjmxVlSr" +version = "Go3nbneL" diff --git a/pkgs/minecraftmon/mods/yungs-better-nether-fortresses.pw.toml b/pkgs/minecraftmon/mods/yungs-better-nether-fortresses.pw.toml new file mode 100644 index 0000000..9daa847 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-nether-fortresses.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Nether Fortresses" +filename = "YungsBetterNetherFortresses-1.21.1-NeoForge-3.1.5.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/Z2mXHnxP/versions/iopJiJQp/YungsBetterNetherFortresses-1.21.1-NeoForge-3.1.5.jar" +hash-format = "sha512" +hash = "18b461298d3df1215fa3b4d2c0cb2ef1c7ed76701d8a0bb140277b21923e31abd939f0fd9b400c5bd676d739f1cda31c43b4dc753f9187251542223f3424d336" + +[update] +[update.modrinth] +mod-id = "Z2mXHnxP" +version = "iopJiJQp" diff --git a/pkgs/minecraftmon/mods/yungs-better-ocean-monuments.pw.toml b/pkgs/minecraftmon/mods/yungs-better-ocean-monuments.pw.toml new file mode 100644 index 0000000..009b0ce --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-ocean-monuments.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Ocean Monuments" +filename = "YungsBetterOceanMonuments-1.21.1-NeoForge-4.1.2.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/3dT9sgt4/versions/yFjEcj2g/YungsBetterOceanMonuments-1.21.1-NeoForge-4.1.2.jar" +hash-format = "sha512" +hash = "77c864da36f1d2173e6460dc335996893a804954b8a5c274173fc95dfdbf437e80d9dce32f6060306a662fc35322566eecf5dfe24e2d3fab79bf7e0ff9fa4db6" + +[update] +[update.modrinth] +mod-id = "3dT9sgt4" +version = "yFjEcj2g" diff --git a/pkgs/minecraftmon/mods/yungs-better-strongholds.pw.toml b/pkgs/minecraftmon/mods/yungs-better-strongholds.pw.toml new file mode 100644 index 0000000..444c38b --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-strongholds.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Strongholds" +filename = "YungsBetterStrongholds-1.21.1-NeoForge-5.1.3.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/kidLKymU/versions/8U0dIfSM/YungsBetterStrongholds-1.21.1-NeoForge-5.1.3.jar" +hash-format = "sha512" +hash = "385d67e07f2c67af5ea387d92d92949d8f671e8f99204457b6396dbe987ac3b14c2bff765df5fcbaa68016604f82a1fc6ec5a69c012ca22ad088d1a7c9bc135d" + +[update] +[update.modrinth] +mod-id = "kidLKymU" +version = "8U0dIfSM" diff --git a/pkgs/minecraftmon/mods/yungs-better-witch-huts.pw.toml b/pkgs/minecraftmon/mods/yungs-better-witch-huts.pw.toml new file mode 100644 index 0000000..707ab19 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-better-witch-huts.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Better Witch Huts" +filename = "YungsBetterWitchHuts-1.21.1-NeoForge-4.1.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/t5FRdP87/versions/AvedwcIe/YungsBetterWitchHuts-1.21.1-NeoForge-4.1.1.jar" +hash-format = "sha512" +hash = "9baa8a1f36a2a36efc3df58ab9347fd9f326b551ad78e3f600ed9d68862c619752ac0770804807efb15a46fcb4d9f6e2baf6a11f622d3ebb6c865662f6c7bcfd" + +[update] +[update.modrinth] +mod-id = "t5FRdP87" +version = "AvedwcIe" diff --git a/pkgs/minecraftmon/mods/yungs-bridges.pw.toml b/pkgs/minecraftmon/mods/yungs-bridges.pw.toml new file mode 100644 index 0000000..55e0414 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-bridges.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Bridges" +filename = "YungsBridges-1.21.1-NeoForge-5.1.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/Ht4BfYp6/versions/urkCzBf6/YungsBridges-1.21.1-NeoForge-5.1.1.jar" +hash-format = "sha512" +hash = "20b07ae4c08974980f976bcae32f18ccb885745d6cd50d4a5d0156eb5c51c29e49f8b2bf7dc2ae160d39b62f2332513bd9850efc5cba13697e36a2ac2848bc3b" + +[update] +[update.modrinth] +mod-id = "Ht4BfYp6" +version = "urkCzBf6" diff --git a/pkgs/minecraftmon/mods/yungs-extras.pw.toml b/pkgs/minecraftmon/mods/yungs-extras.pw.toml new file mode 100644 index 0000000..bc9a150 --- /dev/null +++ b/pkgs/minecraftmon/mods/yungs-extras.pw.toml @@ -0,0 +1,13 @@ +name = "YUNG's Extras" +filename = "YungsExtras-1.21.1-NeoForge-5.1.1.jar" +side = "both" + +[download] +url = "https://cdn.modrinth.com/data/ZYgyPyfq/versions/N2EpMhR7/YungsExtras-1.21.1-NeoForge-5.1.1.jar" +hash-format = "sha512" +hash = "d4ef831a034977abdcaec40a7662adbc37c32cf141c68245250da501f6ada2ce193c5351166fbcf2ffb1c452b60bfca8ac578963332aa4a1b523e43912b8cb8c" + +[update] +[update.modrinth] +mod-id = "ZYgyPyfq" +version = "N2EpMhR7" diff --git a/pkgs/minecraftmon/pack.toml b/pkgs/minecraftmon/pack.toml new file mode 100644 index 0000000..0e723ce --- /dev/null +++ b/pkgs/minecraftmon/pack.toml @@ -0,0 +1,15 @@ +name = "Bidoof and Friends" +version = "2.0.0" +pack-format = "packwiz:1.1.0" + +[index] +file = "index.toml" +hash-format = "sha256" +hash = "3bc83c9a6457affd226a5db19fc7eac0e844fe88ae20272ef869618d13596349" + +[versions] +minecraft = "1.21.1" +neoforge = "21.1.186" + +[options] +datapack-folder = "config/openloader/data" diff --git a/pkgs/minecraftmon/shaderpacks/complementary-reimagined.pw.toml b/pkgs/minecraftmon/shaderpacks/complementary-reimagined.pw.toml new file mode 100644 index 0000000..8ba6ae5 --- /dev/null +++ b/pkgs/minecraftmon/shaderpacks/complementary-reimagined.pw.toml @@ -0,0 +1,13 @@ +name = "Complementary Shaders - Reimagined" +filename = "ComplementaryReimagined_r5.5.1.zip" +side = "client" + +[download] +url = "https://cdn.modrinth.com/data/HVnmMxH1/versions/sAAjYvFB/ComplementaryReimagined_r5.5.1.zip" +hash-format = "sha512" +hash = "e3168c3e8b9a59e70dbc7dd27931d8b245e5b16b093c87f1dccd01edc3a8be0fb14153fe8175e822ea6463ac0d715de377d186455580915c6f9d98c02b39194f" + +[update] +[update.modrinth] +mod-id = "HVnmMxH1" +version = "sAAjYvFB" From b1f6caa28e852206ea2cf77f1787ab08cf200f09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 31 Jul 2025 04:53:34 +0800 Subject: [PATCH 185/196] fix(minecraft): Use newer java version --- configuration/services/minecraft.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/configuration/services/minecraft.nix b/configuration/services/minecraft.nix index 725b638..5e5a2fe 100644 --- a/configuration/services/minecraft.nix +++ b/configuration/services/minecraft.nix @@ -4,6 +4,9 @@ config, ... }: +let + java = pkgs.jdk21_headless; +in { services.minecraft-server = { enable = true; @@ -39,7 +42,7 @@ package = pkgs.writeShellApplication { name = "minecraft-server"; - runtimeInputs = with pkgs; [ jdk17_headless ]; + runtimeInputs = [ java ]; text = '' exec /var/lib/minecraft/run.sh $@ @@ -48,7 +51,7 @@ }; systemd.services.minecraft-server = { - path = with pkgs; [ jdk17_headless ]; + path = [ java ]; # Since we read from our own HTTP server, we need to wait for it # to be up @@ -60,7 +63,7 @@ serviceConfig = { # Use packwiz to install mods ExecStartPre = [ - "${pkgs.jdk17_headless}/bin/java -jar ${config.services.minecraft-server.dataDir}/packwiz-installer-bootstrap.jar -g -s server 'https://minecraft.${config.services.nginx.domain}/cobblemon-pack/pack.toml'" + "${java}/bin/java -jar ${config.services.minecraft-server.dataDir}/packwiz-installer-bootstrap.jar -g -s server 'https://minecraft.${config.services.nginx.domain}/cobblemon-pack/pack.toml'" ]; # Forge requires some bonus JVM options, which they include in a # little `run.sh` script From 895afdce5a81172c148a3f5b8853e334a6d550be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 2 Aug 2025 17:18:03 +0800 Subject: [PATCH 186/196] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'disko': 'github:nix-community/disko/83c4da299c1d7d300f8c6fd3a72ac46cb0d59aae' (2025-06-26) → 'github:nix-community/disko/545aba02960caa78a31bd9a8709a0ad4b6320a5c' (2025-07-21) • Updated input 'foundryvtt': 'github:reckenrode/nix-foundryvtt/d5fe29ab69176aa0c7727fa7c57889a2aa577355' (2025-05-28) → 'github:reckenrode/nix-foundryvtt/924f814523ea8c8792178ec5171ea055abaae0e4' (2025-07-20) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/e410afb41ba16a2ceeaeff85c536d35f10bbbdcf' (2025-06-29) → 'github:nixos/nixpkgs/a41340f34fa59485a7c2017af3506b2ee1b216d8' (2025-08-02) • Updated input 'sops-nix': 'github:Mic92/sops-nix/77c423a03b9b2b79709ea2cb63336312e78b72e2' (2025-06-17) → 'github:Mic92/sops-nix/2c8def626f54708a9c38a5861866660395bb3461' (2025-07-15) --- flake.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index fc55466..907c36d 100644 --- a/flake.lock +++ b/flake.lock @@ -300,11 +300,11 @@ ] }, "locked": { - "lastModified": 1750903843, - "narHash": "sha256-Ng9+f0H5/dW+mq/XOKvB9uwvGbsuiiO6HrPdAcVglCs=", + "lastModified": 1753140376, + "narHash": "sha256-7lrVrE0jSvZHrxEzvnfHFE/Wkk9DDqb+mYCodI5uuB8=", "owner": "nix-community", "repo": "disko", - "rev": "83c4da299c1d7d300f8c6fd3a72ac46cb0d59aae", + "rev": "545aba02960caa78a31bd9a8709a0ad4b6320a5c", "type": "github" }, "original": { @@ -595,11 +595,11 @@ ] }, "locked": { - "lastModified": 1748450994, - "narHash": "sha256-BWdJ+3lPmK99kjWfBlppKSRIH0sBlT1fpUkSvlgmvoA=", + "lastModified": 1752975459, + "narHash": "sha256-nOr9FfazId66oneIeeH6e5eALWcu0/zPn19DqbeFGME=", "owner": "reckenrode", "repo": "nix-foundryvtt", - "rev": "d5fe29ab69176aa0c7727fa7c57889a2aa577355", + "rev": "924f814523ea8c8792178ec5171ea055abaae0e4", "type": "github" }, "original": { @@ -746,11 +746,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1751230698, - "narHash": "sha256-ANWE9dHPeACz3SIbUhbWZforTgfAvOS5Tg1l4yYa/B0=", + "lastModified": 1754108423, + "narHash": "sha256-0AhuEljFdqvY4894RArZH+mzd1Y0Wojmfq8znh0ireg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e410afb41ba16a2ceeaeff85c536d35f10bbbdcf", + "rev": "a41340f34fa59485a7c2017af3506b2ee1b216d8", "type": "github" }, "original": { @@ -1079,11 +1079,11 @@ ] }, "locked": { - "lastModified": 1750119275, - "narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=", + "lastModified": 1752544651, + "narHash": "sha256-GllP7cmQu7zLZTs9z0J2gIL42IZHa9CBEXwBY9szT0U=", "owner": "Mic92", "repo": "sops-nix", - "rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2", + "rev": "2c8def626f54708a9c38a5861866660395bb3461", "type": "github" }, "original": { From f8167209ebae25f81605e19062d02a5e39baa413 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 2 Aug 2025 18:33:06 +0800 Subject: [PATCH 187/196] style: Apply new nixfmt formatting --- configuration/nginx.nix | 29 ++- configuration/services/backups.nix | 212 ++++++++++----------- configuration/services/crowdsec.nix | 11 +- configuration/services/metrics/options.nix | 3 +- 4 files changed, 126 insertions(+), 129 deletions(-) diff --git a/configuration/nginx.nix b/configuration/nginx.nix index 3abef7f..935b5ac 100644 --- a/configuration/nginx.nix +++ b/configuration/nginx.nix @@ -20,22 +20,21 @@ ''; }; - logrotate.settings = - { - # Override the default, just keep fewer logs - nginx.rotate = 6; + logrotate.settings = { + # Override the default, just keep fewer logs + nginx.rotate = 6; + } + // lib.mapAttrs' ( + virtualHost: _: + lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { + frequency = "daily"; + rotate = 2; + compress = true; + delaycompress = true; + su = "${config.services.nginx.user} ${config.services.nginx.group}"; + postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; } - // lib.mapAttrs' ( - virtualHost: _: - lib.nameValuePair "/var/log/nginx/${virtualHost}/access.log" { - frequency = "daily"; - rotate = 2; - compress = true; - delaycompress = true; - su = "${config.services.nginx.user} ${config.services.nginx.group}"; - postrotate = "[ ! -f /var/run/nginx/nginx.pid ] || kill -USR1 `cat /var/run/nginx/nginx.pid`"; - } - ) config.services.nginx.virtualHosts; + ) config.services.nginx.virtualHosts; backups.acme = { user = "acme"; diff --git a/configuration/services/backups.nix b/configuration/services/backups.nix index baa61e3..688f5f9 100644 --- a/configuration/services/backups.nix +++ b/configuration/services/backups.nix @@ -140,123 +140,121 @@ in }; config = lib.mkIf (config.services.backups != { }) { - systemd.services = - { - restic-prune = { - # Doesn't hurt to finish the ongoing prune - restartIfChanged = false; + systemd.services = { + restic-prune = { + # Doesn't hurt to finish the ongoing prune + restartIfChanged = false; - environment = resticEnv; + environment = resticEnv; - path = with pkgs; [ - openssh - rclone - restic + path = with pkgs; [ + openssh + rclone + restic + ]; + + script = '' + # TODO(tlater): In an append-only setup, we should be + # careful with this; an attacker could delete backups by + # simply appending ad infinitum: + # https://restic.readthedocs.io/en/stable/060_forget.html#security-considerations-in-append-only-mode + restic forget --keep-last 3 --prune + restic check + ''; + + serviceConfig = { + DynamicUser = true; + Group = "backup"; + + CacheDirectory = "restic-prune"; + CacheDirectoryMode = "0700"; + }; + }; + } + // lib.mapAttrs' ( + name: backup: + lib.nameValuePair "backup-${name}" { + # Don't want to restart mid-backup + restartIfChanged = false; + + environment = resticEnv // { + RESTIC_CACHE_DIR = "%C/backup-${name}"; + }; + + path = with pkgs; [ + coreutils + openssh + rclone + restic + ]; + + # TODO(tlater): If I ever add more than one repo, service + # shutdown/restarting will potentially break if multiple + # backups for the same service overlap. A more clever + # sentinel file with reference counts would probably solve + # this. + serviceConfig = { + User = backup.user; + Group = "backup"; + RuntimeDirectory = "backup-${name}"; + CacheDirectory = "backup-${name}"; + CacheDirectoryMode = "0700"; + PrivateTmp = true; + + ExecStart = [ + (lib.concatStringsSep " " ( + [ + "${pkgs.restic}/bin/restic" + "backup" + "--tag" + name + ] + ++ backup.paths + )) ]; - script = '' - # TODO(tlater): In an append-only setup, we should be - # careful with this; an attacker could delete backups by - # simply appending ad infinitum: - # https://restic.readthedocs.io/en/stable/060_forget.html#security-considerations-in-append-only-mode - restic forget --keep-last 3 --prune - restic check - ''; + ExecStartPre = + map (service: "+${mkShutdownScript service}") backup.pauseServices + ++ singleton ( + writeScript "backup-${name}-repo-init" [ ] '' + restic snapshots || restic init + '' + ) + ++ optional (backup.preparation.text != null) ( + writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text + ); - serviceConfig = { - DynamicUser = true; - Group = "backup"; - - CacheDirectory = "restic-prune"; - CacheDirectoryMode = "0700"; - }; + # TODO(tlater): Add repo pruning/checking + ExecStopPost = + map (service: "+${mkRestartScript service}") backup.pauseServices + ++ optional (backup.cleanup.text != null) ( + writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text + ); }; } - // lib.mapAttrs' ( - name: backup: - lib.nameValuePair "backup-${name}" { - # Don't want to restart mid-backup - restartIfChanged = false; + ) config.services.backups; - environment = resticEnv // { - RESTIC_CACHE_DIR = "%C/backup-${name}"; - }; - - path = with pkgs; [ - coreutils - openssh - rclone - restic - ]; - - # TODO(tlater): If I ever add more than one repo, service - # shutdown/restarting will potentially break if multiple - # backups for the same service overlap. A more clever - # sentinel file with reference counts would probably solve - # this. - serviceConfig = { - User = backup.user; - Group = "backup"; - RuntimeDirectory = "backup-${name}"; - CacheDirectory = "backup-${name}"; - CacheDirectoryMode = "0700"; - PrivateTmp = true; - - ExecStart = [ - (lib.concatStringsSep " " ( - [ - "${pkgs.restic}/bin/restic" - "backup" - "--tag" - name - ] - ++ backup.paths - )) - ]; - - ExecStartPre = - map (service: "+${mkShutdownScript service}") backup.pauseServices - ++ singleton ( - writeScript "backup-${name}-repo-init" [ ] '' - restic snapshots || restic init - '' - ) - ++ optional (backup.preparation.text != null) ( - writeScript "backup-${name}-prepare" backup.preparation.packages backup.preparation.text - ); - - # TODO(tlater): Add repo pruning/checking - ExecStopPost = - map (service: "+${mkRestartScript service}") backup.pauseServices - ++ optional (backup.cleanup.text != null) ( - writeScript "backup-${name}-cleanup" backup.cleanup.packages backup.cleanup.text - ); - }; - } - ) config.services.backups; - - systemd.timers = - { - restic-prune = { - wantedBy = [ "timers.target" ]; - timerConfig.OnCalendar = "Thursday 03:00:00 UTC"; - # Don't make this persistent, in case the server was offline - # for a while. This job cannot run at the same time as any - # of the backup jobs. + systemd.timers = { + restic-prune = { + wantedBy = [ "timers.target" ]; + timerConfig.OnCalendar = "Thursday 03:00:00 UTC"; + # Don't make this persistent, in case the server was offline + # for a while. This job cannot run at the same time as any + # of the backup jobs. + }; + } + // lib.mapAttrs' ( + name: _: + lib.nameValuePair "backup-${name}" { + wantedBy = [ "timers.target" ]; + timerConfig = { + OnCalendar = "Wednesday 02:30:00 UTC"; + RandomizedDelaySec = "1h"; + FixedRandomDelay = true; + Persistent = true; }; } - // lib.mapAttrs' ( - name: _: - lib.nameValuePair "backup-${name}" { - wantedBy = [ "timers.target" ]; - timerConfig = { - OnCalendar = "Wednesday 02:30:00 UTC"; - RandomizedDelaySec = "1h"; - FixedRandomDelay = true; - Persistent = true; - }; - } - ) config.services.backups; + ) config.services.backups; users = { # This user is only used to own the ssh key, because apparently diff --git a/configuration/services/crowdsec.nix b/configuration/services/crowdsec.nix index b736047..174115b 100644 --- a/configuration/services/crowdsec.nix +++ b/configuration/services/crowdsec.nix @@ -30,11 +30,12 @@ { labels.type = "nginx"; - filenames = - [ "/var/log/nginx/*.log" ] - ++ lib.mapAttrsToList ( - vHost: _: "/var/log/nginx/${vHost}/access.log" - ) config.services.nginx.virtualHosts; + filenames = [ + "/var/log/nginx/*.log" + ] + ++ lib.mapAttrsToList ( + vHost: _: "/var/log/nginx/${vHost}/access.log" + ) config.services.nginx.virtualHosts; } ]; diff --git a/configuration/services/metrics/options.nix b/configuration/services/metrics/options.nix index e1b0761..b24ef7a 100644 --- a/configuration/services/metrics/options.nix +++ b/configuration/services/metrics/options.nix @@ -154,8 +154,7 @@ in lib.recursiveUpdate { inherit (scrape) job_name; static_configs = - scrape.static_configs - ++ lib.optional (scrape.targets != [ ]) { inherit (scrape) targets; }; + scrape.static_configs ++ lib.optional (scrape.targets != [ ]) { inherit (scrape) targets; }; } scrape.extraSettings ) config.services.victoriametrics.scrapeConfigs; }; From 309a775b0f21082ef291d9ba5318b32ff02f068f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 31 Jul 2025 17:28:02 +0800 Subject: [PATCH 188/196] feat(ssh): Enable sftp The old scp protocol was deprecated in favor of this. --- configuration/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/configuration/default.nix b/configuration/default.nix index 1b9531d..924474a 100644 --- a/configuration/default.nix +++ b/configuration/default.nix @@ -100,7 +100,6 @@ services = { openssh = { enable = true; - allowSFTP = false; ports = [ 2222 ]; startWhenNeeded = true; From 4383192ff1f49f72c7586ae9f1c36057c8d84ce5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Thu, 31 Jul 2025 05:16:26 +0800 Subject: [PATCH 189/196] feat(minecraft): Include prismlauncher pack zip --- pkgs/minecraftmon/.packwizignore | 1 + pkgs/minecraftmon/pack.zip | Bin 0 -> 3858918 bytes 2 files changed, 1 insertion(+) create mode 100644 pkgs/minecraftmon/pack.zip diff --git a/pkgs/minecraftmon/.packwizignore b/pkgs/minecraftmon/.packwizignore index f3bf9c3..87324bf 100644 --- a/pkgs/minecraftmon/.packwizignore +++ b/pkgs/minecraftmon/.packwizignore @@ -1,2 +1,3 @@ .direnv .envrc +pack.zip diff --git a/pkgs/minecraftmon/pack.zip b/pkgs/minecraftmon/pack.zip new file mode 100644 index 0000000000000000000000000000000000000000..731e212b52c1cd01bd3943d0492ca10524896dab GIT binary patch literal 3858918 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%0AnZ;oEJX85j!_9cJg^z>X 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

1R_IHdG0@sZ}s$~THF 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 z൝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

-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

IQL;mQ&7nbR76CZz3#nEgM$wzw6{KX-p?4&&mR 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%0AvH-*>(=PN{w4xWg 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%0A>*HSPZU+{Oq+3MLBXo_hio?@ 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

UD$Y_l{g>IP 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

QQ9;oqb^o=T8%_->nXE#?IB8 zoJY@@?v5^=z2W7Vb8)L*OPrt5?k3{Csb!mS@eGxq`=1}Gv7VT7=Dmyevpp@hISzT> zirC?Hq*#P;LS2KsNQE-rIh`r`4wvmeS=mYM+vwtXlwmH{q2)|T4s(CZ*kfvcnD1- zd9R+$W8B}wRQ84CkcsAu?kj33J2q{piab})#5OnQ-J}U^JRXzh3%R{MF>ig;X{LpW zmz4K^iEz6uQiiQ!KQ-Wp{GkP51E#W_NvPzlF!T-VH(t3x-_fE@wVgKT+ z#iu=M!*`p-m&!YKybbzt=a}Y<+wZlrCQTMC>JYj1pmwv==c-MdKl9Ic`?P8CDY(Dr z-z*@}V{p*xq0X{{j!XTLC$6Y{rfTt1F<*B{$K6*3vz@M@6o+KO{0 z1bsfgX@9}`XwTw|NrKyFDBCf6{L5Xm%Ia=of;*39$T7K!#eH&p9P3G~FW9N@ z<@eLrXI#v0-AmqXmEUg2yYTtGCkjs~6ee$(EvRw(=K3=%5;Pax^(I9yF z^W+x~PfTbRnD{5-rSZ3Y9sR}${k(kMX_E{ZuEk96H{LNPP5ARY_JDInT+U%eM>oqb z@LejnzB|)E|Ek#q$rCel(j#X%^?j3)I5um+%NW%~Q@2kvsBY??$*^(DA>A3uhmU-V zGMFPKb>BDRYN^qNaK8y&${8=ECdw65>J`n)nX_8QN!q@C-L^7cJ7VImCa2BdxCEgk!6C zc9q?%Ue=VG!h4&{e+mY~zD=xbFTQ&}dCi)Z$9M8wvzDcEn>4ddZ*fz!Vc2_%z4BO! zxYgqt8)nhF3mCFmPA?Mt_4a^xLS25WTw2D-ot<`$TKmp5-u=(FqDW5Cs&j25+m&B` zbL-t~4xeX!Ulcz@=orlcS=JxBzOlF&Jpu)6vcC?_POb2rnX+|*4@|U-D}IXt!+PNu5ziwu1OxY24?OS*y zZ_32$XB8)Y?&W4MT;0$%_jz4%l6TS}>94kl`43-^j)tc;)Pdr$U991!^wq8kLsb`;~HPjrQxSQ-5At=3Z}+ z`13(5r&?CT#hCw@RWX){i=={=as&!~lg#%&9mD6MS)dmD&_w^j$LBRwOBRP2U9$1W zTM?i4!uTj(&y*Y2`}VGPxPF02VNa7%LY1_lsbZtF?86m5w=i~ZI(=I2+S$~)qxs+B z7w)h6RriAB%TtBa7bP!jVjsi`Y1yZ45_6LgQ!dc0uzw#d(l>GOn;pT@A?aSO8s4D`wq4CC*zt;lAm!xvm;>eBXCOdgOmGu-17W;nyzMY*5)Cn5-$!xN z-gnlqE-v!q)@6b!?}P94DwrB=V9>5US-1N9>l=!1CkQn4FJUoKx9OMNFCKjJM}hIw zcl+y?Dpd8#TzagRbbF0NlD*-*D{Idst+zhDeO}MPx2vBk^==V<`PDC=HT3zZ3JIrQ z6Z9;s&o5u#cQTw`QB1nJ#?-~Bx_hSmBHQq_j-Qg^zNgPT`|Xj3&z1Rl`ja^FbqxKp z_6XiwaqRtcuDw?$et*o89?74j-LRu%!olma&802u|A! zhs_#^k9hoVg^Dfq<#@kXZ-HF;)}MPP^eb4he`tHVrBHPW!}bFmxhv;HOfRX`G5$6w zv1`g9Q-4`Tah^a$*Bw?{Tb35|zJ9Oa`KLEErr zj?doR+Y-|Mh%tXrywZ|Q4EHnnjBnYQ2nFp`nX0j%X&NkZ^Jsi;tt5If zN#bM3w(s$U)lJPickQ|*7W4SsE$7o~joGG#-hIcg-r7ydB<`t5)JtE_`-_}SZ+=^F zz|U9JT;_9ohsIJj`(nAEHI9N|e*Q6U-vp>l%@guw=U!r9!r)?^6!WoCI&AvWse5PY zr!r4EojTF!Rm}PYN6m_EzxS~1bhtM0_4h!f1*+W_B9qb^njZ_jc+3+Lx`}7ef@c|1 z6axa14W~|Z-zv+Pd2;W!tZ$o`<)p6ZxW1fw@h0DcbH}1m?E?PV-V^3L!dX2*>#fOg z%kA-y)gv6$^^VOd+UNUyN*&|{4+SMAaaJ%mFp z^gUj+PJ=b;tL2vxo14pnAHHqvcbAGjJXvm9LCf)vu@XNe-aWf~U-DVY6{ZK@?uG0* z_;XkM3Z8HS>Dyl4B%~)5pHKQEShC8q``td7gb%+SxOMKAX{%$qekz8qC|dM}WSQji z*pg`}U0+;o=O?zE;^ARsd{SnoQR)2A^(_2?gsii9W z9#6Q!=5_U}#uwL)WJ&XykHW?#pAzL)vE>Ka8h8Kv;@x-g`MZLG*DZdzlN;>=H_M#0 z*J)n=WsVi=H=Z4z7tECU+P&C5h}Bx?*Q4T$O`R{Rk}r$yetb!BU*5|#PQQ+YwNK2w z!o816I>AH*31|P5%~|6TlH2>{{JMLg526lSoFf|P_~A#&>E4~irdwy~NCbRt zyVxD>n|~wwdeYI$-Mtr-4}U8wR?nCF6KK0HH9IW&#?7>x((3OrDmUd;J%8h=#T)NE z`b|eZ>IP1>y;BpPT9wV=U-|vzELJvs#m_|y=P$)>xG?LTaiqFh$AMX12YrIJHsvd< zJ|cV7KWwhPCdW@(jlR~xa)}dJN0;k2H2-WWZ2G}{aecz{XLFAxteGKY8le_Zc245E zaRb}Cx4Se8zPjG*lu#_W^6~Y{Kk5^61iSZXtlXV0^(fUy>?>o`nhTs)#4j#C!f?NA zTIZxwztj6YUbbG^JnQ&``!g=hdLOZdllz_I;xnAj!h59Z+bn*+=SVb6e!PCshGny6 zY?o?Tx{;kjcV*a)^_^^Aj~&0oP@Khbm$Bn zf}rI6k!@Ocl6+%@#hTpaW|U^mlhI+D`$zs(+$B#U-8t`oA;G-`kX6;6+%oWc1z2(zM7oQQa91LV%~Af)U!I@ z6fzmJZszP_GMnf>Vfivsli#t43_Q;g&Kv0lS8r(eY$CY+(UKS1FFwBYt=!rEevf|@ zlY7XeiO1i>Z(F9RaZODur?fHZ)ecD+?>3ipl?oZ>_oN%MFE-6&y}o^|a`cM}rz&1D z#*1vE?cDEnfSDapRp=_p^$*gmjLrWwRZfCuPZepd}^7^I==)g*lVQBp}Jk? zrtr}-XBw|ds_ru8dBs{-VpO-kKK;5_#?r{|+-rZi3QnKns1fGK>oJqBVzKy@?Q?J3 zX53hv}x9Vp|#eXXOiP*%Uh?Ja?gvNU9mLYJ|oF`#_v<>pUmcz zyxe!R;l!zzD=u;ToSjspet_o`^RB3O!gtGKkJ!4lim7SJZDclRow3vSy$F{x)Alv9 zHlHl}e2#}9YS%ZtG;Xft8R>m<{``FCV>tiH?1aL+7_*bI1=4wSylNgF`)ap7*RdKi9>itlJZLaZ$y5i_?``K9uoVBsCq+nt$u$nP>Y>ecbC66&Cf_Eb*qwj6-{i zG|O*3TzSIs?X76PcQ1F9D}>x{Zrqy~SX0M!|C5Qs-KKdrwifRFr}g)Y)4i4-n?Jlw z{4zD9B2csRytK{a{ks;||5)?%q)qVtSxYxIt<;#pv+Vw=q7I&C42L(peCxo{vxq-8 zPp;(X_s9(wd_uFA&Dh{E_3WY5Ycws}^BY$!ZxpM3GE;SvRoFAX8#m4Cp6_$F^K{>A zRUcqmm*X0_JHw$WYO_;c^_DvyD{E4pUtK@xwqaGx)(`WpTzzf7tHL1Dd`-~qz>lv4 z6vB3I6<-wX6|ikpQ6b;E9XdZg?y$Ply5r@AE5{5O`FUpxw%?6D(kPP3aztS3iFuL& zQK83cxAtzZGI;HzF_GOaUC>bW`aABtW6o<_3oq4qhjyzzJbi58qmnm46>oO^`1!p5 z=p>s(v(MD7P_o;zqW8fWjgGAwb};-4P1>9&v}7^IKhp(!do}zH1Rbwo6kBBKXE)Ql zxZL^p%5-neU#Am_mETUk=cg|lI>&aAvV7lPu_H^~&G^mw=0{2YpQ+uyXRJ%qmHxea zu5IQljVbr~)@R?neY7pB>p*|`=G8|Z{#a<{w|;S*bLbP+n;e#k_e(B`_K3Y&p2o3! z*WVp?&ICy2x~|rqDQWqyzC{{+Uo80eH`lEb7Y)-ME7kee>|L0*Y146APQTDp zg)i4K-`r+;xytaT`|SGI&?F6B8HdBQzuTO?zLh>)ziHK!qJPhq?Q5HEH*NO$>DxJH zMqXp8_Pz7aZ!fc-OtsQCN4Cv5uZp>U7H^4;CLQzsUS!0`az$Zy{sXQ6O<}1 zn0@;6;6X)p$YRHsHr0zQ`xviE{is$*Azhq`zJh~|C z&5Q}(m+sSY+uJB@FnuSVx9@rRrBe^O2&caGFwgN=R_3!nN4~S?aASnWqtgAcO$&rg zr`?Ng+{sfn)!>wFe0a58kiv|P%?#dwi4&!KSKfCJ>R!6)VTkm>pjjF0+gWy9a07w=~~Rw4CMdZWwg@%7V=-U0?E^GKFzB zGV6Svxj|JX^@(q9HdB+wyBP&$J|aC+a#kKKE|EJBwuLh=yqdFx=gguj#hD$CW=r&` zIL|wf*<_*C)Lqg1Cst;npS$QGex|~84}zKQW;um#)3^Tj;PG<*_Un^R|9yNqyWLOP zy!ZTU@#~tr7uZ<>6fLgktaU6D+!8f)xxx8{($)e8mabhMrjs+KY8Tr5^5J;yW7`tx zeE+*rm9$E;Z&JETZUT29TUkxI@wDWWTXQ$ecD z;_Fv`Oy0*n7tNjz|lAPY; zwl0!VS-EN5|1_WHeWo*v?r&Vq?ovi)8cb|M`vo&S@){}qkDKxzTic?%(^j@QVqRHA*lu>dET*&mPu6sQ^=#7JdPh6feZ|uzd?)Yz5f$ z4vQ|`8mHUAmOJnB4sIwqIMWocPjJf5G`fZ)M)Y>VPKk>W!I-p&_=@ zYXgtW*)89^J@Va5Cxe_w9%JQ}$fG;>|HmAjuh^Ti*y_odCv7X+Ii0_z%#ORZ_OeXQ z)x)YmA)Dm3XD+k4BDqvseBQGK-7TlZKbe(%zH9B$$h9!>e5|BXS!#QTsQ~+S`v{dE zybHHqRGP{f+nV_(>fxlMcPd|+dtMx!7hTpp;n9veAEzGNEz6O|zp#Ac5p9{O6K%;U zTaO7>J-69a##h^3wc@g>sh0BE{FwQyjhR}juQMyJ-p_H!GxmkA#*XzX{>)^NRm%&~ zlj>3s+oN^GvGK0g?%OBq^H1$7y>`=cf8Ke`?~#?~d;fCl`akYbZ7!R+U|Qf3<&dr4 zwYI4ES5Nr0*SNBJChM?Xd(lC^|NqpUHT^GV-R$GGI;C^-osLD)!jAK= zY`-d-c+5*;N9Ad!Cv5RdfzmzaJ6KO$5v~09amfNh!;seF3~d}5hgE{=F0sZ|xJCV0 z|7B~auY6UGM1c1O7M0UnuIt`RlB?@E7uO+Jpj#WBx9ZRiC3eB5FTd__-;yoLvoluv z>XKa#GSWQ~ozG5ezUX|(nq9=!WPYKo${X=ZSFhJGv^->e^km7`4@YJkIXfrzUAg`Z z-HOK9Y7dl*-Wnx+dfYa5LX({DOf8v;I~Vnpy0cWAFSVfZRy(s2l;%v)cJDf_)pQlWV`pZb{@Co# z;q<**qBQW_#Mb1wQA-_nF-@PgGR#Qr#*UiIzxFZrcn{aCd?|AH_q*xwj5_kK{B~_U zQX;Hb*2P+$b)Hu+$2@k$(H#3{i??0byYES#vA-EhTE541&RgnSK_B*37HcxD%r#Y? zasBADKL(!@KHv8=n0fH&1-bZBOQY62ySw4Md+3qFeATIun&oE9s)`$KNc!=6#<+Ms zPgOc>d2*%c&K~bd;SaOKgwxMyvS@binKYlJ&e0}Ot6R*wsDnRmv!2d@;u`TCR z-*qc`ss#4Ro7|bQ=)e@Koy@Ow*1elGOWH#G`NjnCQ%*t2Vgk~4%_Lcy&*^RtvHW!U zQSXAanlrkXH@ygxTBQ?YXgX`jTCt|s{oxPNWP|;>jaRSyT*JRI_|@O7JIa>`o&UBo z{pVHVhvE~hVxJ^Rxy%kT+vquZU#7Nyr* zTRz`1F4g|{v52X`LJLhhmp&*gICbdG-(|0BeD-;tjPN&pg@Alt35b|!%lj|OdP9Is8-c{s}`r!TdXfh(@8S=Yht=n{FOO@v zCOFIT&gCgyN=01DFQ0PgZk>N9PIO_6*)^+s7hf(@o4kL^j@MG#Q>+4BExyeh&3du9 z;Z}l^{MMkD<#nmQZoTw;xiInPNrN8tO|Q2Uy0uUD=eRApMzZ+RXTM82oKEexW|=mr zxwJf(e)-F>Wf{(AN>vW7@~IY0_g$TS`Q%Tx6FX$yY}2ZC7mf(-Uex$VSAo@}&Y0_v z+E?a-x^LX>X(hj5yQrSiu##_Cc(8`|O2_y>zCHcbZOdKMr)jDb&6_@TrN1h3tI5>L z>pv!{`%Ji$?XmM%sN*iSJ3piz%Q7@It0n){+~_d(rdIEPh!dvCYb;bh$Y}Vo8FdS8 z@^`k)KImH5q4TQjMo^^iiB!FZYEdUjYvd-@m(M83oNdH8(SCZ^(G`+f3U2KW z%jY_3StNB*uf1{IXIV~#zVz#szuvuxyj(xM)+niZbA3-r>?%u^oDXSIF&k1G`06Gk zUiZvD5W@3mPu}(RC9gjV{V8~H%-KJ$|L^ANHhu?j)9RCbzrP%?tMHu`?l0{6?D2ux z#;enpS|z-&)2L`(HtEYD#uta)UA~;@^G7D8$SE=@GDUt@;p3CReXSMq60Wf`b?gzf z+{53fadY;&eVbm#ZEsLGIqO}~!9{i+NtgGo^EawEz4iAJn_4Tz;HmHLzTMToX8+Br zJ3hLp`kFj!HE+~h^x9Km@8hcqu5VY~S?m9G`P*&3^*c}IPjI)Xa4I)U=6U$)*Rh2w zjDHqyxj)0HUiM*^$&UNmC3bqZZtIS+`4(yS1SE@Po|q}~ ze3{T{CZ;T(liwAD7j54f;Ht4WJ!VOEn(gJ4D`G3k3lhF61;&kUL_8fEuPReAL8sEu{TsaLXJY}Q^qo+fwp zqNZT&kLC9_Z(0)&<#MYb#3V%Ifyu02d7M*jHrU$l%(|7B>TdS#YX1%0&1Hww--5yqHBZ0(-8)ydN=WX0M}MKM{g+t2p1fygZ_S;sitk`~#hk9BDuEj@ ztU;2h)gGU;SpRSuo|7(HU3GiT3y%z=BXiYUulxv*`s9VlRop>L)(*^W|^r)?%0xNvxf1)=1K|n^A0=3OE}f`uzyo| zc0zJf9T%e zO8cs9lC|!I`~9x7&q!XWd4KH;JD=EIwHuW}rFBu_eO|Wy3`yJnmA%+vT`4aj^5ph* zu8#V{y>T}W|J#4*Ew9Ykm>i#+xpO-tJ0<_Ab{II8`f_^m{^e$u+q&L_!-gvWfjPE=g6%oA2as9-TXO+<^Aiw(_SrKUw;3qt4ySj#Jm%8%fy$ydkK@$V)z4M> zY@@$=x{$J<-6;jdmdRY!D`h@9S7@1h-u%3Rf2y28&!%V3&Lqrwlb>MsL*uUc$%)x~ zI~7%pr>9)5%Pwq|DmMDH;-!z+?eO!TmN(W3|2pty!7}Tn zOJWJHZYNfr-)fyWB`w+U?iZJp%hSIFF(u5Mxk3Hc1jFx+hYeW%XdN(E(^yh`{fBI! za{nBA8=jpUB>|VuGr!ytR_*ZixZXFbKo;XNTTg!59j3|GtTc9rNU*KDIfc8>ab=F| z^(~G!GeqvxC2s1`P@j7ER^PYN_tWdQ-TK0`c>A<`W5vfC`feZDxTY?A>g0g<9B!pc z@f^FFQry|+Yj3L%mkGNfC%akSD^x$6x0$3Im$7*KGu`h= zMT^oMtyhg-Rz2M0#b9fjY?&yM>#0-Mbn4*&>*D@RwZG2Q#d$nF7Z@ry|LqTx&o2v} zX{}^qS>1d5Pe5wlrR|kE2K8)TmhrKl7FV}8rBN-cZu#4C)4zpxr?#gYm{hZLN08&T zr|i~E4D)mre~8?%cipc&GoI&niFgRuu%%blI|k15NqrGps}=Bj!`z=v!W!R~7`?hz z649glMln3)C+j*_#d*d$!Hhq4@6D-YRFXd;$CK~LeP)Z%5BOjajh>m z9J6WfjG24WShCwtdEKA3+*fRWv{FA?S3R=Td9+9)<^P*V`-aPJP8&UE`Rg-ls=jV_ z>msr8+bcdA`AwBN$W^lTk+Mhwdp5h)wRs2Y*X^v2a$X<%>dpD}wrp=dKfUUF(I#qc z$+4G<;?6~$Kd>c7uke<8$!0Aj{-Rf`Q3o%7caURTD7&{e(>p)5)ZwDe#tHe-zxQr< zE3z_0{OY!o0vCDrR8R2Q;NCm)-NL^*_w1TaC)|A;c5M5%i|Oin4=&HC{&w3z`sMVi zp@x?Adly9bM8sA}tefn`-Z9CLaZA}{m(n|JpGtP<9xzyI5HwS=dga>+3B|_F#YY#f zin*aCzMFm5oKIJ>?CjmSRU0>5I(_QlQl1XAY75a7ouBraxHf;9D%-ZdWwRb{+Lgj* z2WCgtYInYpDyv8|4Omkb_ao8~if$w*zvljH{`{uZ zk1y4qGWX73w7!=uMaZT#bJ2{bPJs36f7* zQ-7xB)IRqY4m&@q{%rBDve;e5IpgBBzb3nkr!PGBY}es=J0vEadz#77c={Iiz8oii zxkcM|d|)UM_#DD6#IVJ4;@x<|?m4SuJmxEO>U~;pAwe-IF=v(9$C2{d#+LIsCZzHl}Nr`mq^&_1!%a z5Bw7OX1y|RC-?kYfoc<0T0h!7{ZVK3u{GfhO1qDEF7LT2{KhpRdUJuG&y-{Tc>NBa z75-x!ABuxIV*N2T8jaNH`EYI&vRA%3IXUnamhu=@E-+wjYXX%1vGvD9ex0R{( zx7wfj(B!LUd~;HH-n`Y#IXmay%fhes?J|V?gywZ0HD{g6Ju~I&*kkt z-21s>=f}IN3tsVe%)DkO-TYyWj;oN_0=J3AC$}5TaCe->?GnST&JsQU`+rtFFD}u@ z?HkOc7CEJTw5!TfS~;Psa4**_r5_;;UJ{qJ%!8HrVi&!5oANkhW9I(OOU-s%%O-H_ zkzV{J|3PbvLZ)Z?0p~~d{i3QW<*R(=c$Gf=pyvG7Z@riH_f?MXa(3SP^{lskeT%ip z{q=TdmhgO#doEdUbJL;5i4p>TrWRLKI-Py%XS}@r?3RVe)6Nw33$lGbJgMj$+lD%A z$vdC7waIx`t?jUU&^K8#?&skJ$EVmVN;SE#VCU+)A1megS<5XeU$hn)Ef4=^rmKAT z`1*{aB|jzCDeQ@yxuIdx`@gHScizckH)3dYaZfss^JePSOA6|X)>KaV*Wv5W_WD)P z(wWXnQyuneZhpuuzjcK?ySGZ5k>!f_-@_O~40C%f_V}O8$WNG6wcw*VLyy2i{Tj~Ax^%E)%gfRi)`44(KIdL? zkNHaYl$l?F2Xh1F*@*G6Z^I1brDmS z|4UoJ`fC1Wxy0W20V+<+_kS|%p5{EQVNvDfz1tpbZ?OpI-E=?3a*Fc)9qV6t1iy5& z)49{R?LvOVbW`ny>*;e!*q4Y&&2f0?cHj5C@@nyU6Q<_ht}D#keX05W_secJey2@l zy0xzoKX$R%WMLf_^QWV)O7}RoX=JoNsOt~$Sa1AucI(DTwtEv6Bst4zcCi}ImwLYM z?9+x-N-x(`t$w?3nY8sT$tu+=v;SLPdLOtvFr-@4PTewHhx=u237dE;*TrF-dT-CqAW zp`EoYYZ~mD6ne)UZ z)5Uua1jI0HlzFr4w8!nl67eP65hXG+o}XD7ER!<#@cAv-76l%Gw?tB8Vt=WBUi{E;%b}O}u0@#qhGuF(pp5ZP(M4If@p`9QV*}*)I0#v=^7yy%x(0%o`$S z2)REzV|n&Wp=3eHjD~=xeOqH2etq()o3&}ZvC?Os{12&e&or{_0(DMJ<~zV+Yt}J& zw$AaznWc|cX|Y*!{AhpAQzg^t_QYY{-17fb+jY1~SbV!?Z@)K*^}(AbpROBg>}N4E zJoHJ_J>Zvr*ySzvR|&{R=sEhY>AC6u`t9izXEO_OnU&lW9~ZkN-UvAy8qwnQqhqny zSLOwZ8w|vB*}E;PYHh?Lm3q&MTQ1<`n|60=&Yj6i6?--+-|r4fsMfl4H>3L3lgi)5 z`?`Jp<{hZ|{$t%?28LH0FO0?f4ktxkQXJo9mu+DMhY&p8D zMCVn(a|vtq_YHMh*Eb#a=t=Wm$7v?8q4JROn>lI<3ua}M969|}Xo}J4ImzdrKFd1M z{JbFjf&IIilb>REVIuJTdqwHb3~-f&yisN%$U?97>6_h(LsT$fuQ zw$;(g@Y=emuVYWWo)jIlQ=&MebPl6+r(zbz;d;;QwN2lzpA!1Yw_!r4ufQ_3-8pMd zM%TH>{AQ>v&3(f--PU=otdE-3d2O}>tUK@3uk2NIxajv*?QsA8wn~S%l=IwWS~2@J z@BWo}^>}ZEiqLeG#S`M=BJ|@QJn5OZ@kvCYlj6Il$ItHhb=Z6wgId|zc+czGpMQP4 zi0f+5JI>9QzwVwP{ZVw$?tK<>#J0)h zi!SZ|v&+Tk<7(!~?YG#b8mo(!-LKmIOi-wB8|T-i?-h=QI=$9BF!!nYsas1gl^X~w zJ@eRnZwMM+ zS4*Un^?n|>YvNhZeSg{OeMbBGcAYUj{$@wycF$tQH-5WT>=C=lSCum7-qyVPzA;l~ z*-EUraGuG~A|&wSs>bA;uKWAuPdxSc@2M3#)3%uww$FCm_V&^>=j_kl6Rr3fJ0?Y> zb8_8yaQS=VZiN&k`A_;40XtpmR7*EZu1M~il<)aTLU+%}Y5OO3g*+Ec37c$r^7EB_pOTI=xQQhCL}ZYnkbig%w@X zZ$F#4b{nIuQBU=~yhr;K=0w(4Di}}L{3GGr6+WdyS`|}%?b^}p{xmP?@T%jjCR}HH zKJEPeoaatKKjWRm8JnG1XXm{)bUrOv`#3o3chjPZ_Jcn!@%t!Th!Hq&H%mRuz3SVR z4dLmk!Dny&pM5mNGWq@b_4ZfdK0m&{VaA{M;Oq9ww7G-3|8HDzBH+_zrzD5(Yq!2# zp|M$OmUUs+ET^pOy*aICH>$~8TYg=|wyoa8+csux{>8kDeCjQ=;;m0)9#sE-=3RGr zp}~QV)!_|gPx{JV^=3Wc^k4tFy0CxZ?%9uXe?MQ)d)O!F;n7s%g|@TJoG$b;^~X4= zcICP}U=_ayd*oGETUWEgtq!=}Hi(Npy9 z>|^*{^6bklH7?6Gaqb&3CQ~o6wdcnau&%zHFZ^}8UCaxQj~jQL_b(R}|F!YH(b~oH zv=}yYUbvMyNl;n%>FonDZ$p0W@;{dG=CJZF27v=7*DyTUcc{XjU$K3Y<|k*)rqF}V z;{2}{ub<^}ZmP_ukbbTV!9bZ!`*wdmBk9hTm?8G(P`1iswWqgQ1dmM$HfG?K@{+!@ zsHrF5g+}W>+pYh;asR31D!tFRGILvusPe`gLgMEg&u6|$_^Z4AaPZ#9%{RoqvTV8L5Ljp2pH;ccar+nUP11As zxbAB+IVgK+f7dEaMYrd_=l2Us+}{`YclV-S&u?;+^4C34o}w>*y!c#^N79|yfhQ;2 zJ00iYWx^?cX5}Uol^^1a78jJqt zEx*sL-X=U>ck9*VoG-R*JbkhC_=~AiryuUqUB7mlUjKEmO+E@gH%5Qau$dRO-BMOq z_V^ne!}`hWljEoN6iNM<5h%hUm9^7w>9;e7#jMy_wuHUh)xUU_)=kfZ^}O$1g`|de zI?eF^sG8X+U2W_)bg@zU;Lc> z?3TfGi%E(;x1uY!ohJQF-9G(8!SUI1_piF@)W21^o%78#tLh7H6WUlJzt5a7->vS- zCc*B?ZQHl*ZPQ_9VboahXHE6G)&C6EH7samZVYXG@o9H%jM$mIm%M&^G*9jFdm%jg z=w`WqhH^IBUyDwzF{$~N?;hKj)Nh*M*7PLBE{Zb`fkomd%0nkYHlX?*3&z* z-+bn{zIi+I4_R4}4->CArEBHRJiS0BHFSL}^PQP(zZ&DDJRi;v&%>2DleavGUU_qsvyk$vw#2`uZ47w$QzDk-wY8lpF*Pl_WVKVg zkNM!TpVJ%l=gf(!@>~A!?Y0sIrG2i}MW;gKwOg*8*xU zn+_TKoH*%VUZ}&m?a_gr-4U~wMi>~(TOD+mB=oIajza2djIremSx@N9^`_#Rsf6UFjoMmC zcHBOJiH;v;R%AAPxNq=poy-cCoClt-+1ARK94HNobzB+Jd**n@slUu8D*IN72!84j zy|v4bdH=$)my4a&eV%{Y;vkdAigiiLn=huM?@D=MQj)aST-W-HXh>4hQGC0M2e%{>k6okK9lh3Bm8CID=ct+5qzD(aq`Yi7v|MuC+r}j# zJt78+&m1}R`()A9&MV4a<>Rh*vAmysVN=NW6!&|&x9=$!NzD6vPvqK3;ij*le^U>L zr;2S}%o@qY?mg*EgKFC+p2iIUj)9YFXH>eS%>47KbjsaB+l?=`o_v%qD^S*XebHOT zrPhMeEN5IiKIvqf@Kh#spFKSimS=YL9Xx#C#PzsSDo>9uzQ3*F?$1E0sRef~JNx)5#?!TBqc#V0lieHdD$l9M-XVBT_9C;!SyZ^6ZdAL`=6+hz7zJSyKDQcyhO@sc@5_LnT> zotw=lIEUB#jklaI2)2e~otc26>Jef{>2-vX8m%cNIwTbE?sG?;g7 zy2Z42vscayGF4F$5O#iF_}EA5WSI2P?-xY)-f8c0JH3JR;R(ZQvrU&?b9QO|^jaio zn*65wFQzb*)ZJbzE7=8%hl(&?82gp$70UN zKAkVz<8pH2=!L=%X)sMo-+@vvkEFc^Cd=Z#iyRT zhfc9ITwH9<-EBYNhQz}}sS}D7&fAaly%Sn9vC!t5_x}3{bt@kV7Ejt`v#~0Vcg?M% zTAICrlMcKR5sVdN(du3sb1me;#fuvyik$s*K1?=z?hvx*$AS}Wb_eRt)o9+R3qGds zRfhF}p;GWts}oMHI}ICu22Fk!wnM*Y@x~U%FAb-S6*6;gP6|3LC+S(W?ud5pYp2$R zL`$djAHVwYirjZ@b^P6xc{nN|reb|~Q*VNXayFy?k^Ga#y$8D8AtkiS7876P`>UeOj0dWVX5K-=_zX-0MG!%v66K%h0^y&V(9{a_xJipRLy3KFP#l z>gPWr__OjtEuV7+!VXJ=J7ea5KdEwWZke0Vi7Xk_%-3D!6(I|ME*5gEd^dHmjQf(L z*9?otO zLCd)JtsA)iuHU-wWwZL+dnZosP7b=EEBwUgV4tB}{oPr9)hY7v<_n|}0*<7qCv4Zb z!`P<(X@&X5*LNeA*nJn#{-Qp^R!r$Tzd&O#%d>y8k6L^^J!gU21K(!3E6+^l9yWh8 zN7*T+iLc4R3keOD`euiZH(xG3hPf&ab$ulWw~8NC^?AFtjy`?~i0EyW8_ zhI7887GC(uaV1Jp?{;3(t(QI3`3p>|ZO%ylxFTH?{&RIIZ@$Dm0Sn&1y#ahx+1jtq zS0}91WLj&=e#Y?C)xPRS-r@o~?{?^57v9v_ zTE4L7#oj3uHbRcK{^Y;fr1JC7OEr`C8jV|~D@-jtyKd){Q+JN9Ke5Nma1}@6*^(oh zC)H)EJa##FZ{LNgJC64{m6x-o2c6%_JWGhfWxC4WwcUCPf`4;wsLpgdzivsCfmOn{ zhs^D~r&oAnFS6|{IsKkB+URzI+j*`fr5CqM@m^6{yjs)h`L!1{az_|vxu&}cad{l| zIIp&(pKa|v$Ev8$dYuVbYfEHpu2 zAMCGb{y*1uX!3G}DL$fe^($B_8jXJM`JiRR+O;v9>tp;yt=ynPfB)4ePiSe8zi)q1 zHtl4*>av&jjvb%*?$~kt+WU6=6LwqbE8hB9VSd^wc2Uprlh0%#jW_A9*vT>>@v*S? zp(UP5CcpD1&2(p)eBS-D;9SkVlfPcbMqC#;`Re>{@h?GoMPiqQ=lc36l}Z%)IPv&e zY%CPHv|6+MMo46+_-VDoz{We}+t>^lR!n5bjF3qbC?ND2Ik6mu>nj;K*LRThO z{TAIel~I$m{8K$w$>SA!PCdSEdR{rceiPf9uvdLng0HoBy_Wr3633R+Ia7QR%f2Ox zk3OswTnKl;Z5{ytL@e_Nn=Ee=vP)GUZ`8byRP6^1)1DqgPwCg`Wo$cbod`yPkAD;Qdmc z-V-s^=e1*R*Kq|mWF{#sOyF6zYua+3^`6T$=i9&6*}vX>-F&%g9&_uqAB!`OlD+bH z?YSxIH*QwAzkNBIUC~MzKdv745x4^II-Th*F^B2yW^k)~JaZ5ZV#LOSH zahh=NoowBuGhWEcZ)9LUu-UKC?00z0w8e3IJq(mPZ&ivFHFO@TzP(Lmsq`jgk&GXw z+*tgbR>ZV=6$mVJ(3!ivHM4EchwF}k>s?r@GD|$drR?1nCO$doveRX;$}B~X(1H~g ztOAT|iYr;xB{1gJWF#GzU{rjo@c#oxcAxoe9!?+0Bn^FM+Y;u#vw5@j zZ-Q#IjB?vIjWq|PBQAz%F4^}?bnR@F4U50bS5uE_4gHgHD@=9m@dZk&u1g*?Dq3&2 zs^US+vAwPxN%yk%s!Bw$+ss|mo4nP7iF+1%=3f(yGHbKFteYHH*%aMLT>SF~(^>6J z&gaAxFLu7~o>P7&j`e|uq_{=8>Fc&FOIyC$R|)I&%I+-`k@Ah0d`x#z^{K-;pF%r2 ztCZ}fKdIWlJMD0Y_Mt`dk7!Plnrj!ZK2`bJuiI@WD(@+npFDAW;o&^aGtV|3sr4?a z3*ZlFR)6za4e9xT4$nW9Nq6uaj0x<>w6&TM@eSkJRP8Ea#^G zQAH37sj@Kj7G(&9DAO=vg}*G;Z4;lv4eNFD_qfYm{%}6 z{kXLWzpIYuk~MFccYoJ)T@jnJgJYZ9FUf~fE4!wD`FlM|Dt2pLRv$yUdE|#rmGV;e zkKeuYH>BlB@saBS?Op5VeP4L%3-9ThdSY7zQ=hMJulyVPS>+;c^(OTNPTwNxda51t z?@7G>%Kaq%xD_Yg|LEWI`%@$C?=$>=Jo)eZ#nG~dq$?R8ck55H%VoO!uVK=hSr4{^ z9THXQl>aBb=jnz_{|EkBzB%EWCcgVz=%%*jpFFRqR$Sz)Yoh%%&u=`K$TLp!gg)wb7Tf19L@AmwXb^DCo812nZYTFk$`v=pd2L*nnu_a~& zl37ng9>=Wl6SR&|idD!E5(-Rv6e*>_<>6s6-NQv7(JAu2%O{Pr7anqkL61adab2CV z&^s&Ts}R>Y^%IK826jACXH=-@Za$@&oO!zDmE}i&2URXPpE92^u2X)w>+6knY&UgD z`Ijck{kr|Wju)r4c&T1sx1)*azDLVdbhOXtpLVs0{I+!YM#rK=g_#q-ELy{$Z|3(d z)h6CoiFDTQp7AR*!t+wu zx`lT3Yp>0ytKn@;`*=a>yw!7dP0qk`Gg>dnuxZZ{(yDA~5!yIstwG9>v_DdHoWhG+ zleQj;*vK+bvg<;`r`+2=9ey8eK6EzgKwDa9_k>M5c6KkA7^^si5O%-^=5o#)g6{qhSh-5u@YE1vV3MtVK`dUa=1oA%vX zcf9I~n0y{pJ^Pa`&24tr^~UBR9g$>?ZLE%q%b5@U3bD|;wED&;kGsw5UHyBhO0Z$rNe`JvkDea= z_*15&bm`PvGnD<+B^hOo`K3xKo!GIZZ?U}c%Boco60r^;VOMWt@Eq9w+xn1<=#HnY z>wgDc?+x3$_Sp4Fm+qz=shIWrxK+$1!OmA{8i(InIXrQmY_n6I^ZwI#>dzSff5*OEBo5ar|to>)*4&7bSut4zLjYW3mY75t<`AB&Gk8!eH zE&aQ{QS+A0=H)eyg=VT8`@&;U)u~qTH!WV_o1WXH`$5}PE^pp+x{N8odC%f+Q&SgR zlXxU`K(cL)(M`Qi`~JR|ru=@x!^5UFC$1R2+T9=cwAJkF_j8qMNpD;5-2^6sqemV_@a$Wy zdGLno?i;xWqi;T`OxkrrVOiB*J+>Bs@4RX+RT=MV-&?5Y7;qv+qE67bbZU2Vs@l0v z+sv)|S$^|vmihjYiSIz1XT*bz4~6T3SpPUMpMGQU^2z%RS{v6U-maUUIL&2a)WMDg zY+8Bi4)xBCEWLC@e`8^CZ0Wfl6H{ibIlMN{)=o!~JN#A`Tb0H1Ae&=8kK)z@?Ax|E z{MS$K$_>B7{<{=SerhfA*ot*?$j5(<3+qmKH-0?P^Tq#8p4i*za)&(K;yyKh(@>Ay zDQkS%{nCj~a;{fm<~iu}aZ5hC(6VdghSRF&rS@noeq`LbeA3nT+>@uD>(gE=X^T_uirw!fXIGz3(|>f6OS*Z^P8Ywd$!4=uPk+0-&iAF6^QK3kj zidU9XP^k0D@k@y^56(W(S~BtNvBq`9%Wv;f;p<+r)Q0tNWt?*9lDwuTuNq~3*cO;3 zIF#R9&%9RndBl{J3Wpt)KIJT0=d$TQOm%qJGp2{<#E%?%o?m?a;^P&+zrOvHcD*cC zYm&l^IsbdoD*EcbZ27j}Z@0t7Hq-XlwNnEU;ak*ol>{b!%nZ4zI!W`WIRQmtLKhqG%sskxJ$>QXLa=}x80gi(;AT28rMC0 zZ+VpRwF@rZ)~#7DRo47Bzjay8@wG!DoAB+q6*F{7m=;fnNGd$F%ev@(wXxv)&9+*y zX9cVbmPfWMs;*ilx5&>*@~D~c7r%`9?k9FyF$ScW`1&b6;2mVudSQi_3_U4VZ zDoVcQS607Res}Iw>kZ$ZL`fYwaq==>TeWTMI=Qtq;Jgl3nYg9;yy@!Z{MNqbt#tM=M*CdpJK8qG_g>|u1ILzVPf^L9YF*2! zwQ~M(X1{w=R&L%=ZXLX)yy^*mwp+}abG&7WX8zWp{mY}D-A|G~+roar@MX5>zcs0e zr8?hde7BN!lZadQ^4{ey5A1%w%5$yVANN7Q@1l}@Xr{_Ezl#<(8cQ_qvg(|fv}^L@ zl(H>8OJeE|S}yc>rEXEaYF^j#sIn8QvQ4h3%?S0oYht6XJz48|pxm=1cf5p~rK^{# zXtF$AF|+91^N05;GY%9){(M{__5Io_zJ=SG!`{3$_H5SDv{G}lL|jP2J;ciIatc~`pRUGtjj>XB>PLNxSitdFQ{ z6L|SJ=6ij{zd%F(9Vt_Ic14I(o!VGk+kWgw)J_?#N^Uz_Z~1E`Ct9V?sQI+1`b>IW zQXFE{dqE_nyrt{*@z%QRDvnxtZ@vYdd~Km?cz?xA-cs6WuRf=yDgLf@u# zIkBRf&zsB=cMR)z;S&6ew_4c#Z^4IXh3B?ESN(tG_~04eY|h&^8g6$!th>I=?d8lG zzUd;&?JKxL_zuawQDr(=KJP@Mw*tqy|66B^OwTkaQ4!qQyY089o1R>oVW>%KnX}Lt zg^D)@J0|(J^xpJtQ4+1WeBn>3iGP0Qb$kC0=bX1^Zg0AveL_ZAxbqEP z@qfPWcFQkJV6wi`7&{~WkYwZhN3E_(s}Jd(RIl26b-Iq?t#jvJUwz!^;c4jC>3!~o z=(*J~FQ(`|KH%SSarvE&viB_)!}nEZS#I(Ca9+Cne*eS6oZB1qo~wG~FDVZ0ILN6Xn-Q?Fo=Y&`d4*I@%*Wc)+|Zk~ z(eI|dv9#J5{?6w2Myac-3qs=y*YDiMDgN}q8{;>R-S-Gj_K_Fn2;Oln>&~%1lis&I znsHm8bVHC|mepd34?z?AayrE(abGoX(ItNb-sET<+=Ln~w)X_Uti#Ty=v8hxFMcmb)gLP2R9dZ?ctc z*EWV1;q&YcN(;QYU$(a}YNw>mzdsTA_y70SwAIH1|5@)XR<=#({~m=$FMizr*=4pr zbxEDU0p@M5!o^K@@5(6*tX?FY>CbJF&!Jd6HM^{`r0d$N@Kc@FOIoWpeN)Zb_Hf-% zr{^Z3RSllUZ$EsO!f*dgE@4+>pku+ug3Oh7N?IKXC2pD-Uz}l`bn#cZR+^+}md261 z1R1j=Pk$#ip}G8O2_*{M`e}CV?hX3~4@1DFNxjSMuM-|84()~-`^7Q!1{J(9s z&@t89FOv74@v5^&5?n)%$auxB4ysgr!4Op2yv@Rc_0^`ZomN-V^z18gQkh?I_B{58 zEe)qbV|KajO z7Kf|4`@^4?x}PmzJ;le{<`J(sP2j88uK3>Ru{4G(@8 z9@&z}HeJQU?d{hpT|Mg@FV2@CUrH{TrYT1z)UvNQ8nmEj!ISK>erM11?01&*VsSif zc0(s=Qm;g<%g@hQy!}BD+Jakob3?r!wz4vwPc6E;{85>Qr{^Gp1Z&IePqbu%G@6|?dC_WCgI5oD&{wR&kx+C zG5O^Nw`<=PWPIu9R~DMUz{DtW?90;yw~Hf1FZ4f8o1@77f6j77F3}W`x}+2L+!9a7 zUy!t4^`o6TiEZ0?xwWe~mT*3~q*@lYmS?+#O)39XgGo07Ln5n|hjQN4PiLFC=l#An zD*FOhut&gP~J1E z`Gk$t*Spr+Hpklcxf<$!3g%jM=18*Rx}{p;`EvCM)qnQvVg0(rE8_ddvi8rJ5idE@ zzW)%D4PH2DYwo*lWs$QBd|hWvjXm)6VVd86*7@uk@5!9G@<>TGe~PH(+&+KnT*t-- zUqzqf{NA1PzU(p6|Dy{a$%t?|=&7T|YD>hhD=A1O)KCrP}$)h4k#qGq$Y)v+BB zUruof98)$DnAsh2-#uGxn!o%+{c}|hPDq-bQ>?wwP|`(kJ&itPq_<#BIuGUWBjawR* zw@;e8a`URjul4TFqi!m8Dt=~3nR0zC!Ai%5SDdK0Lu$bjzDlbctwrgm8$7 z?k#1b6rZzNVI`-yG(`6c2&uFlGPM?U`q*UC9+8>yY0BR4pgnxoclK5IezmgGf3VNf zlt1SETVC6hrFKh;^p)p4Gnw0TA!Kfo#Tn-bC%&%q@3_OkX|h-=j@$qJf>W};E-TCt z&OWkx`o#-Mnl^X(lV%1TJvys@L0YDuw&-p#cE9HlN^2JtJQHERx%nJ=3n;hkM!cd%+$+nxN$GX>s5&@b+2YD zQpil(dCl&b@uE#-HPS1ky(9GhbJu^4VtvWFdHsX1Y@1ILu0HzjeB0XX^fld^i?a1^ zZ_BNIn|ga&E(qN@y)F0lvETcGL)X8v{Ju5pYu?t`xoM{-TBgsoFZw2@oYd3t;+A~9 zj&Fov(j*m+42##PVW;eSSG?p`kMWHtT*P;15$6O$nI7KcufLs}coR47zQJ-LZ^tVM zotP5_9uFVrei80c>L@QfcK%nTsL%d|7B`rs`+q;Yki5?Cneg0Y?Pu>U;I~Q7n56J} zf!oCw?Qhq4<@h{)ddggBmMw4Px^DfLTYZl|2Uv@X9G|rz%KUV1jmBH?90NhpI%iv=e<{BV6)}2t*6+}zp1mV>hL-vd*A*3 z>2C)(dJX))zklxH@ZLViG(y**wEHW!j_dAexyrJY;T~Sm?t0%GFQqxXdNEl#^o>A6 zWZl=-R`-Q29Ft-&e!chTJXPbQ>t{r>&WcPq^UQ9F!shO{t>4-#8@Y`S+O}Wj5_Refq!C!j3etC({k;Skk^IWSDRlZt=Hz>(o5i`}M30#a%y^ zXGBHLI}z?_aeqg&cF`7wz2~ETu|Ge(Y`ORO^RIQ?)*G7EUjMa?|8u{?(pbf}OE;U^ z2Oq7Pz`6UB!zDH8zUO-m8=aVK#(09;fFoLZ_D<1?ho&B0n!Q24A17S+XfkgimjLV0 zE64I4H3_CHKe@{xy3=gp+9c_`x~6>2y-CvLx!b46GjCjSM(zSnv~}+8Z%p%qv|Y*=`cw`sEB5&F zbiM_<_luxoUo^DN%;>)L^YKNKW&`0+cJC8?J6#krx&#cbsZCjQWP?*^oy*&tC&pKI z++UU#;g%F1tYYXRaHJz~N#&QQ`g7A5Rl}=I=4_pFclw$6A{)*6gFXeE;^p3c`P|fL zPqJU0KOI_jUu#{QZp-NiPmh=OuFAq6R1BO|8zy{e+vBWr{ad+$QfgxM$=I8!f1Mw7 zW^%HB+Lx4dL_=pw!OQ_1oU)3p{Z!5j1-o@_o zdZtjpyzWx*wixjar!USz+s5VlCLLJv^`*v{^{JX+brPS)qA2R zfA?^eBxL_TC#2K%<=vu;hBPDf6;BRM&=P#Kx=A%8OUP7KUitL8myZulKd@RV&}ed2 z!L;=s^d2yW|2UK$Fm40Ml7@eOo>DCpeg5xUa+9Im zld0#{O4-@_9?y(RT+pVksJV?@DoFil(2=Bik8kHqHm>%b%Jf_Ni@=ZkBiaA0eg7>w zQGZ2o^N}+iJb&8c&8FUq2zh+{s{Lbqv+YGK0`Hivd$zsVmg{TcHAidbmX8h%k9-wg z|BilS6;pWe|J$d{=1<=K{VjTl3{bKEG}8>Iq3TP!Bm0VTK$a2Me27$l?%0I8l>wja^WlK3lgl;zJF8mW^eGW zFN&}Dx7a&Jocp!KWxAG{+r-bV#>qb>ggsnbu~~JI;dZu(!H3fea!!XG6n-*I`s8Bi zRSr4xtvb0M#@K(l;lRF7%R(SSVOrrO`Q!@SwNiq=7BCky8hknaI{5E4fqSn4_AXIk z-D9afbN&7ItIW&3pI`PMb;qCW|CP=@2)j73`qy>))BIoJ+gbn5|NpMO<6Y)I-Cf^( zZ)u%13vUX$y=L>81sfiy{A^X%Y9M z*-zSbC~UZRHSBrioYKQvA79OQ_4)I+-Yci8cpn};yEE_h(^ZD`lTSQ+()9QFsjkcI za&spg6Ht9CGk@+5wJjboDFObWEA?g zec{6Ex1L=5vEj;ziV%kNs->%5uG?^p!{?dz^BEy6;_VkdR$rOcd6aX~3%oE%%1A6TJ=lgbgRJA8Jj=kZaZ7PUczg4%%+)>mESRnPZg57 zA((RUT=j}nldSJg*zpTRR*N42i zWxs5l?h(a}wY&COUX`smvV5nbO>&+uXG&FD%dU;DPwMo^_OZX8eDeME?dDqcJ)TwT zuj;<_@xOd@o9U0&6RP%Z*>C|Li`^g~zWt^0(#eql8O8S;UgqC@6q3(-Y;thcjEOU+&75~+N8mE{wfFMB z1ueN3u)zJ;CB^M|wk?xdQWkC7_Dtz!1LwZNfa?#E{%E)8?i9Vk(srj^Zt=^RlYCy( z%&L!Y-@C}llw^T4Y^t7KE z7S*>G&(W52(mNL>y}I(J?hPrXH;r|3eXj~G5Dxl$F-cO3Gxmq`sq+&nb{R=`$#i7K zzg}jvOM9-0^~D!$0*YJ27Ed{MeA%_*M)e1I(=Pv5?j}EnH`YBoM@Q^YB)>wyy<5{7 zXFdPe3r@Hk;%M?MP+}N_g$LVD=SF(df$H z|0c%{ox1pkEyjFD+Xgp>nFrS`nC5j~Q{v`|o+g{h1$!PI6u>O4t|>;p@iY5FZh^nGcV0S#2D|;5 zdM?)Lk?5U068Dq$^IAo!w>TY^SSXNe_MLg!k)!=uU$%Vuaq}N1C-dSbInFx-jD+@| zkkwf_!S1ThD-NcsWeQ6c{he&?@{QqgRWa8!H7~z?$+Kgu5A@x-n%~^RXzV;^*<#`J zOA{_DXYHuXFFc*d+FSE-PvF@_9D!oWKSj+G73Li0(F@c?{?o6JJ{~c_?cx7QB>`(TE!?Eov}Y;@ zzwE;VJ;&R%6=!1N_>E=QMdy0l`W}5~mY9lS=gnCkHpnHKG-j>ou-vLz-uG@wmR7+0 zqnCEhJoh`~%1_NMt5a1xmtt&<=FPrra{aeuck{{b&l4ZBDLm=RaG2&-ZZ*w((zI7H zlX;8YIqj2-jdIx;n0+oY!|#;Ad9JCoUcs+bl3u-0IK;57$IE;7#!E9!FW&uTN@&=U zD!%kX4wb1nLGE%T{|p7YpU8jh=?FIM6JFvaSs`&l;>M1Pw#)bPJPuIT?s|W8ssDoW z5n|6GI(pu7Et`6BmUT(W8E3W(mgge!^N#$!JY|a8tO)O8ffY;{&Pv55x9>D=U$Fhg z3|867-tdol|1O9&l`0DzTUhOpv#dJ$hU>e|;Kz*1HLWvO>lgni>N&D#PNj`xg{@rP z`UPGqP2$py@yV@WwwuT#{f^P$fElOsr%UWT=}9Js{I)UgTX?-{vaCvp_to_IC3+V& zr5}CbtK*p#%=fRy^Gk3_Q&)*;rbCmTXi1yIv3m8*>m8JLAC+CO!aY3lUcW@alGr1D zdf^%lGSa)&%e?oP;jZZ;W#7NS?5u+8(P`WN@wEkXO0`5vHDB_uO_S4jCRsGoVm((< zlKjTk{=EAo8tV;fg5xa@R*0Lt4+!KhGn~nHUzKa-k+sZ+?#K8$Nhmcs>`oRq5`69Z z^%DJemnJ#S{lw8A_U5<77QxQ%UJI@_6?(2ew5RQ;<{vj375yX44Gi7JT+FKX_U`&@ z(Dna_xJ=3=XLIIzT<(Xq+k5mVX((wfI(}^3llt?THp($(e2QH+m>TTUZ*1}SSXk)) z?w01KG^Q2#-5XriT=dSGdHdak=aTPVh1}}7@l@vU!8QJC-mq+}RpB|aWoeH2Ot%{* z3F1Z1=5C9dwLE6ak&GYfBDqdAL&o#>-Zz4{BGtB#rVfb`)tQoIWFcN^_mg1pS!5JNBvwMorsucSYeb$$qAV zg3Al9t#T4wHYxLO-rf@ZX--XY30H1u?7wc2612`xIX+fRK6+->v^NjkB6q75&zZm5 z>j$^u-v!35u^(GEvpl~Z+RXRXw6^};y;mh?js;wblS{pC@Z7=% z)@EIch0Sx6rW*6?BuK($C^}rd3y^v`%isVvHJHj)J}eIzLI%cEFmG_^NL!=C1LLwe3{q$ z(hQScbbRg&v*3P#7YW7Tc|RNPPYvHQ+wYo(W%w;gjx$?6Oke!Df7hFrvk#~IcHbTn zCmH%HR?&D3`$LnU@CFN)>lfNQrQh7$^!tkHa((s1?<%#QcxBia+a3--+WfioT9CTf z`j%bHzx@n$U2gVB{$~>BZMpr%#f{s~RlLB)Q<>UaIl zTx0DG0hLp=)Oq%ao6MdVVls#6=7rp;3V;9H+3)*^ng6S=kEqx;j&D&G8gU%&K9_sx zeBZzH$iF+bjNdjrGOE~E9J%bxnyGn@9P_U3j{3iGOYB$2eyv;U+sl?QJm)G<_PW)3 z{_<&2)t}DaSDxqbesR-kq0gDDr9bBGZF5%5(VIWJYqrNzm25|WttXNluIY!Ue6*~! zseQBQ+2r4+3%2as|1a;vMwy5U615SBl2q5QU3@My?aKU9Gp$}#+^LGnxu?Tjb|t57 ztNfn@uVr3oD}<#?T%&ldL*|$13gbsg?cSR#&$Y}kW*1+xYwE|JkI&bb`Fd0MZz_EZwl8r1KWUag$O}Z2g@BHr^uzv6Q5usu-E~Tut0u|`7d}nCC(y&GUt(jV7LeGXLz&>K5kYDd{|K;te|!NkNFnYOI@A!TlaK?yF7dUwnjAlN~QPe z{$EF4W!m%|pZ)UJ@%n|&_3f|EowcyLxjOjna*3_6>?d7gqW`UI-2BPLZKm%lDP^_Y zn%a!<+(8%pOxG3GtoC3(ntUp1?K0a4%#+bn(GphPY-amyJlW#MI?HC8RTAoC>LqxOuJyG>a(i>Ghgs(*D?=KFF?PgCis zEO2{pZ2P}#UitS9O=r$EIlH}hcS<08dqfZ4Ve5Gl?q7+pp7?`N{MVD^OWRhR>vi5< zJMCA0)f2`q@0r}9E6bS8=IA`n*ci_v!Yn#d>QS!jndg=+x2|oRX;2WAlZSnO-=*VSaAEQh(|cg>@31 zg4^|WoqqaiBU^cWjCzNb*4pT^H5YniAI90e_yLMe5)a_n_xHC*5-Wx%=LykIv8cbQjfq zzc6>*N8bBQxlyW3b+QGbjP1M6+`Utk*Hz8hbN!=Yed|(T(OhLOL)mBN&h;M*Ir&`I zIYsp1=ZnVb``T=j7WnCxT=RUNW2?s=|NNh^`YWrq*R}pVYWW{OXTqQPg-%}gZyoUX zKVP!(i@0*s#ORDEr5cRNQXywF)``?{PcRl}U|*}n>2&1yw!EAjb3V??j}$jj*>kK) z@V$`X51a0!8F?-T+#g==-)b_;FTKz(b^H4tRkhBq4!SwrK6Gf?l2=o>udiXr)Lx=h z9_~B6R6_5dN>!W0w4mui&C9Ye&z zmKm$noq3ML_hd|By?@*8_Tz}S+y@6s;$~iDt2`)i?SxOk+eh2vs`}qJtb6!-<+EcN zH`QO?*d|!P7PdooS;+TPoyPvF&Mg-_>eBL-MZJG@_oMDf=@?}#0b>Qx0~1px{8H19 z53xV{=;c1!B_7@P*m-{*I-xryO#2GYspZ1HqAxGHYldG)WHXdp{Y`noEY9D|4@EeN zrq#FRKZ!reZ^QK>P)MWd75BI1EBB+{-!3coELw2am*wr<-$%0UoxZNDF)`uUbKzaJ z3yS)eh+Mk6T}!Lg{m0Zr(;YtuPcd5i*_ktG;$3dWpA04&4AQK-azC6s^Emz24%M9B zr(bgah__(O8e^X6gbT^)U9Fersam!ohL)Je; zp4>V)?X$$C((M_`H@2+NsQqRVz!&pME@P!>+VV!-<3CEibBpKS(U_9?+bgExky&1< zscPt{7S*Z=f*yyYSKNNMdhMZ$%ii3zV@~&1S(5p0^OJ2)%5GFuA8eBgxi9@lU;mr@5^U#?oxDA3*^BjLUrSnTHh;N! zN_%s|@6M*fYl4im)7RB?Yzjz=o)9c_;o65rmdUUCFHg(l^3w=Sjj(ylkrTYa&`^5Qfqp?@YXPUg z6V;gx5~qZ{^Z(iH($@+k+tBi+xvP6;b%P8FN99H{53wH zjM+^0w@VoxFW;e6OJhPVmefCJ`>Xq3XuaOQj&;RT`|rsvlAm8*8CaD2vP;8T-!;gv zIeb&xwA%k$3XQkksgwUT;fu=p$5R(fHLQ&L;&8CDnj=2aLvKo0;JnaRbDUO2F0q{| zRwDFvn#HZ8>_yAu5;98eWnG?nMzS(duQbp}>b~G5#;$F)y!T@dzv{}8-MjwU-HwXO zw=JW54*YP|jfg!l*SP=eb0#|L|51&0ygglGp_9tR#m@o*Bvg3r-~5t# zv1w+>H4kPHLvz*aBM*7lrV6kAEHY!k;fl6(rjdM$Pt0~Tn*PW7=e6hSkAK+Iel|!~ z#5FsaDY$Zag|~ru?q%_=Koffp|I3wMmc01nc+R`Z-lB-@NNb&G-gE5<=e4)1tWvPp zp?f+a)cjD&zYMueJ*@Yx&ee)FX!b~vR#92gD|KeIwB6?8bLZ~==jUb7K2J9?tGR9J z-lsEuUlvN3cH~BRr*h62&vFGJXNUK%eYLkr#VPl0y80+9$iZ|UQ{%yk#)YNp+gC(y zc(G>g;gffMvsj;#o#N|lzBnN!b>|g}4XojrkFKtc+xGGIlUw_BG7ha}FHGytisxsQ z%AJ2r+iIPOmWNXC+#~x}l!gx~QsboInzVN5@&la}@N zT^4=5e0fe6zg@#I!B^2df1=O6hz@w*I<0A;)3LB{VMA;4c}CBV9sYE1YqVmF_@1R2 zi3YCba;!U&P4gnR3+(#oF=Ls_8_{F!tKJze>wll-_S*D=AC* z^?%g^rFy?4y}~lb3xbA6^Yfnvx(0-$Jli+j*7f*%)3}PqZNJ<&SV|8D{uU{cymFy_ z+KpodIcq}0&P!eUS~0y}BFE!tACGHiLH#=z~n^?q#lWxC^7ALzYC0O{}TGqAZI=k_Y zl4#3o!uyU?`_%7Z&s(SVY0KQ#Q=^l2H3;w1)?)o_8MQ#=Z^+;EnfA^FPkf6+*Bh_6 z{GdVhe(AYm8Eg4(H!w>lFZstZ$=ftgXl^P0)m1LLMeP`PUi~g~Ty8&IHPr9ei5pR8-IVlLX^K&g6)!xIx7X2Z_wd;FI97) zAwhpi;~qOVetA)$iX-=!q*nOv@pgO>Vdvx}yKP(KgN1LuD!urWsi7A)>ml#6i_6&$ zFfFUoh-j(e_%`)VP_Z7zw|fn5b?Xjl@9Lcq+pnj`d0=wzTJg!tU`?~je;FgYG@P z6--U0yE|6PTkGswpn7`sh4t@UZuoCF@H^;D_?7ZJX`Siu*2}KMWvKn0`({%dW2(lR zq`BwWbT)LhZRBd-_;cZLvF!?R#kJ>NCQd1{IdtPiN%j83(n9tSdzrY<8_`nw8|Saq z`013XrMdhw?}Vj)cYggJp=?`SRC8-(^x;oW@4FgF-(UM+$hH0A z!7=d~E#8fujvH=%iN4(Y-$%iFIcKGj-2;cbT!}2v+isWc>|c2M=$|$B)vl_R%}f6` zYuk^<$6F%yGDcoX-2659_m11XDbL@XKjWLGHUIW*s{=+f^>ooux#O`as2QHrv4Il92cX4)oKdtIaN@mlqc z1uUHPD%@TstIt)26qMT7PjIqn*nK(XXo_|GK@axGidBEMwKQZ!?pw7pBPw&7?d?0W zX8SkuYQ^qc8RvH?^WBTpHeWl=JemJyj!p@`hpUxe;NF~*KPru@z zZ6>sePwc!yxRv(CbM{tuc4e~m-#);re{t?1rcHbgjZzOWKTVI^5M6it-r44vEV7&O za=XP}&FWS2IGN+5ES2^yZ|==RAq9;Lt&Zb!oa_59wJqU^Efgv}lJjCwt@Iz}0ITBK z#S&9Y>~!1A?A0ooCd_=kvMEZUbR~1s?E89!KRM!3a~m!_D^Hv3cFus&f6-^>7{U1>uICQ z;jD&j2bjWb#V38~Sh9Xu`~tasvjbJszI<>?5|Ek1_P8WLX@+^Ybnn8cJ>NQ=E03Fs{3+$*kCWoFUKO@w>BO)Nsz*LOagGegktmBx z>*lCdE&n*hTfTEay;|tz9j-^0S2$QMicdZG&f@CdHCtx+2Av7*mkZC@@#WO)U+bA_ z(wydh)mkF_pg)$SG}x{-`^vP9saK~i{t?G9Gn?(zLk;FFO1tMR(K~&6n7B5-p_vV@$o(TJ+Y>2 zz5Zoa_dlI`bXQkYO3=5P`Zu5SrL>>3c;r2yLGb0zPyCYO>PsB8Aokoml(DLps)d1k4{mpcR%o2$!cxNY2ZDfg%DBl+#ixf;Dr z@0P!4^jq1;+$MH^WwF8Tk|Ue>-_;z`mv(1;`D#gTceabM$gPFPl5VPJ6up`lmd^ib zuAsd8nY;Qq`o~&zzgwFATW$H_@tyn>uji_~e~ioipIi0m+=`etQ>S#lc8=as-mvU6 zkI>|gdee3;ObwTjsuWk^j@Qnfw0~~G%B$CI>pFF;I>g=h@t$5{cu>$0h50Lgn$20$ z*tm6zvsq~45$&RH2SXH;Pif_3_sueG*uLMwHm5u9rs|Hxe=AS!jM#G1xM6}#)ps6& zTLzi|pLgsyuzzZK;OtW0dDRDgi6yH#?^|o%(h~h;%HM}`S+6gV+Vk@PZ|wuc)!iFJ zn!LGk=kK1(+L`<#tcrtGPiUdFj;Tj~kL>hD1Gx*VMGXhKnmcAaEWcuRJ^SqY-E5`b z6HiUv7XdLce#tm*2cNz}#{3;;4el9?q*`LYA6!SMvKjy>g{Bsr=Dbo!2iv z^uDnWpTFYHhGpzWv%gH*==)Skb@Ac7x7@g#ebZ!v@BA$4U*)jg#d~o?jG0lh;_B#2 zGs5Kmhb{JhV}GREczgeo+Q-(KsmI|uKNFPz{W|2O>s|0})o>eKcu<1)YT z#7(DK`udXcB-cl}ah>zF=w(iouui*Cx8wKcv$7IyFLT#by82u)s(N!-o?{i~%^MfJ zzvq8q&R-w*xN^CX=9-9K55sw#R5I%uc$NNJX>)rD&D`bdb@OG#=ULmP6?I##op--( z|D+4W1%iK7=FIzYWZD*;BhfFPa2$SdF5=XRV_aK*?R;C@eMnk(QPKs@o4T3*k_r+( zsjZ{;~VheP5W|lzH}3VfID--Apf&`WMc2uQ)~xH*{xV;EYr@lC>wnITT)O;(;hrhe;xGNY@|xW=bE=*u2>3B$x9Y<5OzE z)*rJTH*Y_gs66peVUoeL<5S&3S#1;dxJRow?0VwyC0+GSak#>{sV}No{s~6cUTbjT zeJ*wN(u|qA7VrI(ZM-1yhJ@RdRPH}L(ZL53t{E^Fv2diPvb^qlP%M~G?ZKnQzj>0Q z?~K^8564zaQ=PKzdW_bL9rn2!9{n;{rSR?p)7x)Nd-A+>mo}LsM@_mnbHY{iHJ-Yx zycRPfLo`iaaOwMnesf(rM|Y0sq^Z|THfb!3(l}*xCw=`zKeNS`)<2K7J{p!^bv8x^GtEh7)(D z&54-Emp)&#zG0KoIXY#?>RYm1We{&pKL>#oLyOS87 zU)=YsAjr&0>%hh-=Mrx@s53mgbH#J+YmV#$;f(pJ)2`om?Z?SGCuYho!N(4Yt=EgB z6({9g;5Pnx@5zyMQ}0~fc4G6|zPFJ}YyUra7;@b1;@;VNHpG@0zdO6LXT_Oy>|(O# zkLDe2)Zc&B-SpD!D2O!I!R-9?+RT-Pkqki%w9j-bvj! zuj!&k9DHoJWOH8z?$mnO^GYy5zxh|&@{hhLeU_`rnqryGxh&joa@5Gy=I;yUe@^U* zr{3vEr>>kF`I|@devJGyF*ZK^TgvsV@e+r(izPp7dCQ|@o2Gb? zYm;2Ic*N348@yPZy;b+-%<1~{FXV;cr2GSg6PCnv@H91RS0`^}+Bjehn184S_Dfd6%aqB(mZC#Z6p`buD@8e0Q zYiuj^MV2;hZ@3XB`!goxg27jL(M$ouwTmnj@8vC&6)s)XcYyzO6!$5|M%l-zZJJg~ zGN*shOBIUZ3Z9h5X!?mMHb;GheuJR$g>tV|r}ha?W-Q$-Zp`g(nB(Omv?bNa#KoSk z=t|7X+q`{$Ki|1yo;TS}|Hr$R_A8nqv-jVc&beY|{oSjlO#dF4-F)#W&zS>TUIc$` zF{z&v&tLL0V`k#lz;BQJ5Azndx$Zm7E41`hFGE~-?U7Wgs@VIfvL&kX+v--$y1@R{ z;NH7Ce?7JrvOhUGCEf3gj_9_p#V!>y()=P5I4$CGwiO#Vmz!BPJyzjfXLNws^!vJd zRdVkRt?WI^ac8GAQ~srb$#cux9dcwNYBwfrzp=Ug3hR$uNlNX{ik&LkZoFRDoLP6} z`5YTvpGR-^3uZ-`n%*yZwC#j~R*%r({MmW+&A}hPt*UA3-!Q+cZR-2gpZ&Em7HzkC zrTpPzk=seOyHkJ5oD)jl$=x7mZ#Qr0%MC_CoEIjF^jRH#XE^ch*37+19bLJ8UGCW@MRU&NZSN`QDUhk?&HuvYvn=j>>Wi2E z4+ng?`f9CP-~E`y`rksuxAqr*C=F&^a_H4^?!_X-8;<^-we5w~hpx1$gZpX~U%cn3 z4W9ovV4q3c61A#oVUw!l`A0jZi8?M$V<`ThzFLa&!)NDZPkZ^*xF$MZ*>lYBjN&05 z^|u9c>bUY2HaI*Ee%&GaG&8??PGgbGyq0G<3XXA)cX$>b@v+I3TCDK1`;S7*&FI_{ z8;oAhwA;DR*h_J5A?Ma7^A=q(6rCWDDQ=x{wL*gWpiBq zH?T0hew#J#(B%(16{l+`XngtF=Aj!^;>(<$aDulwb^6@fyc5N%rklSum%l#SqTGP_ zi(KdF-dDQDr|jC?dj3@1=#;#?K{Ad{lIQN4tH1{}!ny zqIrrj$(wj;zU=ACG@LvotN6rCOYLcCT6?~9&MyrU%D;Zaebbf8hL4jum$fHv_{nE; zE_21%syUv?Jx;l1J{6@aiv@I&H=33-ItLth#-p;Q)JQYu^cQZ$3kD1915f7#{a!ao z)ZU&`VDo#a4}lq(QSyh1{#|)v$a8dw{6)bZVfB}@Ud&W9+q}LoXAfudm4=DFm$u%m zn))F5N5qUrJdFBt*2;DGUpTxrF?7C8^$qhauNq5kuTAcGAitM$`-x}rC#^15HtQvx zw2qkeck1D|=&f^Svq{<&hCggl)yWB7xXADB<>RfZSgYR8P!E1wx=&hr7SpZ`aeNEK zJ0yLNbvVuBu6bYZJYDR@?Bf~rb^KYH3Wv0&Sk_q0v6}I7SH)7Ly1ZX;98BN4H+@qL z({!HsetR8T)}BSPcWszA@xHC`{@?P(VikY4n$>0ZZnJ3d72CF&vv7iV*2xu$*94L) z`q)mS9AUcf<@M}66E@v4zUQChU-$6u=Ub;cf0b<$R$yQd`%r&Z=3RYs^~4gTG86Ny z7t4#ve$=P#?GoMkKd^XH!>vg!ozI)+yW1_)@^mcKc9_R#FQJkisdBCU!I4y1tJ=MD z_Npd%)I9&~b;L*Oz?lQT10|l$n(rXdbZpwbqotD`S8jfp`RMoGe|?uvSMb*gOFv$; zYjR`KVX-wQHz{4sbeesw=u*g*_y2d?EM35}>AJFb!byAHU61a07DO_2C&zBSVwQj5 z`-)%A`7_rmY+;zZI65G=+_3-B{H)2gw~J0E`8-O^$K6+_q=kdWxMtM*1ZQxC&a`zzuMVg@i@%$)6BKY4KErBT6Awy;Oyea zox$6~Cb2Ve-IaIig@ycHdp|A-Rm(nGymXq2iP(0}*?$gcODbH!3m40F6j)O1N?*F;lz5aoZd~@&h0@KTT<^=U8v^h+hdBK9O zBvtD#&oRduDJl*%)0amfMiuUvc(x9{$&HK}6*6 zHTJp_xG?NIorAWi}p1xoW-OauTT@VzRT{#*%+>GDK59d7M=UU=i<3rtB}|E z8c*26GU3D5#7oZP^0Gb7;h(2@F-xSU*TgFF=hV%Yo*w+dmGel}B=BhJk)1OwXIkFW z-zU__lXv#Xnx9#kLSGKd`q;&lpmfIb!L8D_(HmU#{-&8SdS}ICub5^W^P9!o&+*-E zt`};H&AwmT@x*jy?b?W$?V5idG^vV2U0S2F?(5IR+y@^=^xoZGaB$io|If{JqQ^P? zCS6!&A2Qct(y5Fk3LAg9eG*GILWkzDH~LOa_BV8-g3Qjzn|2% z>B3@8H;c<_+1~DwO7B>tyzru($n_hG0yi<57+#xL>3gHRuO(7u%J=HsA1z$Ndaotl zRz78}%iJpOJjJ4Wg>F~!%7VMBvP?djL& z`o+_Kp){aqmsDn7z|DwvD*`Pi=4X`L)n>1nx$)I{e=GC)8&c`7ip4)|-8Z55?qxQ= z1@4E=XfYdg2?t6pUe^&<;NJJX=l5$zlRNU)ZZ2+h&MS-9aDCnBPZ?{^^tiROJ9^(( zRc$%Z>39>5AdZo4X@kx>~C)vyre}5_&VQ zyHHB1Soidv8Gk>YpQEzb;r^6=U$2*ZzCQcQ{s&7oP5xOwh5x9pC(j=@zImBZQ8nQ% zH>XHQ|8LH071+7--4dU*&)%xPn;0=k*YymGpxZw!Cu@;E<+)JD}K6l~OBWEXPugKrEz1}!Z*I>G&MfCCoqxI%}(3n`*-6^-(Wv`kbZSJ}$Vq^_lw=RbJEm2dWER{dpM@Jo#CM z$Ch2&uFY?F%pQ9G&{6-XCR&!sssEPOPZa;b^)=e@PxifZ_FwCJpWNqvvVP^idjD!& zzYSYlpSbhgT*$$8anYhHmhYD>GP(Rc#bJX9i_b-c90px(Pp`%ECTP!GVp{ap+1%xm zZ$hGk-*2`LzPlE$+jIIz^_&NGFRf;NQBke_Ar)!JvLR>o&bzzUPX4Y{I&GWG*>jmE z!@q9}%NMB(6OMLJR@&VA^+b`^)GZ%RbTLHDxWKZh@g?7WqvM~#zI+HO@A-51Yokk` zUF+0u%XBW@^JuqSySIGiiOLY=sNj(9Z9J)(HBWnGT{pDpt`*JXHf{U3!+h2)`{jG* z?yCGR5)sF1S`?J5@o;Zb+5CC0&uy}P`{IP}Dy`ecbt~@8o_g`%oVR;RyR1($9TIpH zvPr+RvS;gZ$raU8`-Cpt^VNK@HNfHGduvYnvNeZK{N1&1seJUFxx963rkfVrzSe(h za@qbp2N%pbZV?eQDOG&+`6)XCe}?XGXkj`!&qgDzW!{wq`#mDhSQ>mNJ}r8Kqfq~( z%io=9;q5#{Np?0>tOsYr%?;n^-!bdPGj-0t3a^zIn-|@xU#R7GZ&hd0CZ!$hS~srb zomk^|Q{}o|-|i!oS8n}3`6_3tP^-sAHFGh2yU=6HbNt)qB;~EO%(<+0Nm$2xy^Vx^ zoBYNt+@B*X^k=&KTd_LtU;taw0f9b~7dGpRooAG@2TA>IPkHRM?26$D!|V5IXYZYV zRAHsB23Mn}#tmJOxjD0!s5mr;+a$y=)fq&Ey=AW1Cohgh82oX}}5lP|pa+O6Pu%Xj^z0f>)zg2UPM1sKTX!-md-5}_O=o7ll--eUxK=Pd$J)&9@`arT zTXiQ_=3VF9xzCjK=abHutPc)9BkW6kg0FjhpYFl^L(vvlfk~{!HWi!75p9{ zAzx-2^2Ry-bUnDB?$V!w%!*H0taiox&6}&vR`&80pXj1@asF5Cx!qcmF28!-X@&Z~ zKc-FFC~uo_;HQw|+Mw>Bn%|4gO>UW|!Nu$K)#d3Soqup-D>b!WS_y@?|E)T(47NT9YAVv^M?-lX|(!tD}uBX^WMZ>p8Qn1)W?yE>6Ad z=JsUqpG$RnCofF@+3>M>a)E5({GbUo#+O6Wcuh{ty~4|2Xv|SNe^0FNms{_rtg}m8 z_Hh}n?yYM*WixBG-Rk+orDbQisVwV!dxy1Q%8)u-g;bz_C42ew)4=odfiWGmb{P3E# z`;oHZS%;2Ej2S%~wn2@8|Bl(DKh#?MNONZ6IX36_M`BA}Kl!$gJHJ577Td!e?&)FduTDBMrD3_2Ps7}s*4O=?`Cz?XOZsS zl}xe*DxX+IdY|Vo^TjRpxKYf&{`qls)y4zDs)B0f+Sg4dJTGC*Y~Hy?C3VuimMfDZ zg5$FPm>Ot(O5QOu_Nes&lfov}14o`@OntrdR$;K(gw_oYRGrwPv&6nlIr6&wM3%|Y z^)JJp=;}ZEbf~ptitEqa*^9bLDrY*ge(x*{{jELWYTd+#%EHFdPAgQdUE7%)IHh3G zg&UW?w;m7VOW5Qr@Zl&sC!2}!X5G^7@}iqNmZ-k^D*okcWaQP8EgIjB9Vrzu&<~OM z-rZ?o<-o{mW#RJQO)U5BgOs>rzH+9={PHif0>p2hxp-o_9^=Nzi$xw^nfP?Ysx-y< zjVB+RQ#*F@gZSlUc`><`hbz-QwBP!&>lkDFZiZK!<~Q9sRxba}J?-ogv%`JcCl!0Y zn3TS#bKR`nyg?L5x$`W)km zn=3>dTpuo+!mzH#c*~Wq?urLC#a@&6YWO{r}H%j!Y4-IC|@x{>_Wg->zRi z@amAmwGD@h*_*vrH1RE8vnXNyW#&&Z3%BUFPLHj>X?F`#5(n+@CshC z_%hG7<)Z5(L19xT$*K?WR(S_o_i0o+HhG>%=vykZaN+@F_wRE|);>=c6*zeOV0lbu zmL>bz?J*K|4%-T2!*@uoRW-ci`G~VI(B<0`!_B;V0~I<1?(etG6N#95d$-oIwisI% zSKh@BysP$j+&!@GB)eJO$!p!(>(5V4%;w$9e(s6Y!?g;1vY%IGHhWm?Z+`UIU{c`< zM<>>M>ukH1%v+(Nb9c>W{f95tGCwF|pK$j>1*_Y|%{7V@oDDnD8!fs1iF}=QFKJKe zo^}cE#eYg=ChiMstGQk0RsB~(MAKvO0gK5SChRM-+aFms`O`19NBSEzLxX3BU-p*{Ac>UM6oXK{u8R^2Jh?h@tn*U6gO z+v=Nl!Or7?9davNWIaRLdBZt>Y`pP;vA=U_=`9E5q|dsdag$@&{xq+5;3;%>m(|l& z5Rg#acXGPsk2MNwQd-wI_MFwP+~Vylk+59tGF$A&AGr-JCmoucCb2AWyP=#J))2I3 zmEx|oW)gc`x@2QkWcbS*)_*2YXM4+aWq7{XnKRkVx&^KR>Q-D1XMB5|%68kuDpsse zTJhyYV@#6e6>Dy>kiH8XXB!NCRNgjfOg_XA(sjP)a^X_}F##2;S!QP9t9MMTmp%Ty zZS4v^Y;Yw zY-Rj%k&|1pc};119&Zb?g?@$P1lNF`4(0D00xvVdg|BAxb0=NS4N1A76SDU2lH(g> zSVE_#tvm@1n+xk^+zNgmrkRw!EbwM>{-QUp zo#))I^JbR%`Lg?7`t+YAlRFZ3Uti(kG50-ZQoPOk=>==_GBTI{SlsF{W%bJ+)(@xe zu&kQFb!Jm@o3VwEgjlB?e~06W)P?F3emznD)h@ql_i~Y2UGXN$Z#iE6-Cg_X-{ZPv zcjc~xZF7|stlYYxW7?0O^1>U7IL#e;e#mWqz9;MZv+HrL!fQ3v!mZ4%EO27K5OdV* z_7*L+=h%7V2!l)QJJ}f;=YCu{#}Srd7Ia7>=g^UW12b>c)*f*U zdUs&!&yaQ%RB-^o0govGi zd5x5#9&-bX#@Op*wBl*yWRXIH`vzR3H6_2(lWytwJp0njWbN=9bc182XyD|<{AHIHneK`EK<@Okz9mh8Y zz3vZw!`one;r){r-@A=G_`7da?%M02Xd9h#H0|B0TN7u=wVtj`vJv{lTByilZzCZ2 z;B~5acD|Od&m#}jrl6lp?B`og_08|gXm)QCaJVd?$8*<^d(YRmy?VwUTu%L*bXj`+ zmd`O8r#+isE9~1=%kwB+$oc8AdxbS-&l9ZEf+zY~-Z!a^!eQ;nU=z0`&L{1z_x z59Ibq_1m{jU*VGe;K1F2`*-Fy&rNb)xo1&@CV%<k2!vRIcX7_QE%v zUthPTzkicxShx5c$5O+>WaYZ&COIz)KRuY9~--Scwi zQR9|7+WATi~QGvd14c{mwevs|mEUd6SVWz*4(zgeT zChr8I=p**GS+u^{dO_y6^S1U{}s=j=rL?)|I z`<7(Ka@L2RQeGH-U6X1b;k8ddlS9~pH>pnX6XSPHqnPUDk|7iLHEzr?oT{_Yc+-O~ zx;pQUNp(xi?eyJwsKoujO~#MvBHkaTy}o?EYjVW=@P+@?*Il}2%&eZF*>T?P`^*>8 z(z3p<%s-}YxZwLySh-n#N|Wt;g$)W<&-^)YQems1@PsG-9GRLpGn=12DhZhq!eafQ ziQTiyp>B26byhb4#>m&t7C7zN!KoZ(Vawli?D>-?D>^bFK6LL04VAvJjwBmC(B#mbi*n?#mg~pAgKOa@h;xN6F=gaI_v9f#F1i6JtWxT?Z zv{o)zuW-56WY2_ViK#xO6TBW>`!}PNqxvteySwD_xUX^_nbM?q}-SESkKM9{?O;+a2IL`Xd>d)HGy^kNS z_6!kt8D+WUldefP4-1d-X@QWZ`fF!fZn$?Ws4li?AWiJG$HGu$Lm+ezD7Bj%t`IsakNJ`t>?*s@Q9{epTen@v)mbi&t2-p0Ma}T^Pd(K{C8xVZTc=r9g^S$Rg z_KETKJzTn5xoJbIt5V+;Njr&O8?COYaAwBNba}PwRM#~tkAG}uKe9@%ei>7p=o+~2 z&eFw^D+?5+pSdUPw)m#TU7eiT_uoR!?N>B=Gb2;^_}Rbb*b-lH>0evI9lG_!;~o{0 zjteETHurtqajfOYZ^>h?6aqhlhs^)$xp$N8oL^6bQd}1JUy(d<`=WeG#uKgnD88tq zye~!8fnW5VP7#U~{dH#L#$)T2R`!NJSl}_$t&Y|6>C#Cz&cwDI_WV78MR2R1+>}LP zvjnTW*m@-2PH3EAXI{`b;hb@YwvXIn?b?g~v<@!4$-v?oWPj<1i%>tmmT1Z>=U->) zLZYTtwf0H>sWwscz1GsL>>BV@&W8KfwM)_;nO@)e&FT?zcEM)NM*<6&=H&cfkkRzM z!|#{8w4}H5qH)vmPueX?{;eu^oUhL=(O+gdJ-wxoUw<3#7tRgMjjemGv`&s@b}A9R z*Pxff^nk0~)HE+nCg;42iM^b=huKBjeby`g@6;1b{5hG=FmY{yfRsjvLH>ON-ImaorQn=EfDdw~g}Q zVe$*^uJzk;`e5q4nR6>o-0K$bo7DP@W%ftojq0N7RyWUc-h6~T{g0eR%MsN(`?UV^ zi#9ztY3^6`{fhao*$=s@s;)fPRv>k&bC>&6wewGXc8bnRfAd*$>a}krJUOdZ6tP`) zGcNh#D<3~EJrvvJ14bm2`YcH;d{^dcL&SM{(p3i zcalE5L3dZl6?K++*>x7S@wMxIU%e~OrF|jbBPW-{o{im3>vzPvtzoVcxw5ig#!BuN zpRQJGNbyX0r1n;^{e-6TB8wHTn6;-KW{do!_Da$7gyzp*Q!iAc2(D)He559!_)%nX zD39)$xD#7bC;n-3Q(F^w=~qw1nLSJI#1(4o&R{;A9JD5IV`{vqUyP&*v*QV7rwwy- zUMTkD$aL#YzSw_Cno}nB<%X+&kDYP*5ft$2L09=P3&G>nO$uL_-G0j*oYp9OH~C~X zM;0INeztE?Ulg-N4K7^Ud_Ui%?Yv3lv+2M7e_D7qbJ>@h2GTt@nv<74tNk>?%1LZ? zw$RQ8-&YAGH}yPX_%rXXUA&xJWa9Im&Qt36Pw1z4ygc@_qx`aU!NZxG(rb<%sOC4c zR&dwte$~+U%2q3Iwato;o^#oP8dgWR?Qi@nY0J55gXr9t)`*9)t9%!JQjBjCc;q|p z_x9cO7qja&?6?;! ziXV<-o|JrcI_~2p{nRab@rxd8yt~?DzhU%>iFI#W4_dGG-kF^6f0l$}J#*ukdFgH< ziBANl_NJGL=G+LLe8-L@Ka)L-M|}P@PgdTlnXN6~Q=ZTM=yh=RKCX#-zi*q({pRmR zoli?YxIBKyeP-p~;QA}mDt?u9ZY@4JZ`S6Aw+na2{=dPx8Gd6E>?P6 zD}3|sijqZlH|t+LoN;T>X_-0BPj~Kq|JC8p?QQ<2s!d8`ZWc|7BUCi|F?ou~r<}-Pmz~%Qb@!j_13(pyFgHONneyKZeNMz=D^!whaM}Z2nmii_<)V5r0>u#Zskl#wCl)BNVsHvcJ+6y<%^Z7OhwP%EKCpd z{L>mbf%}2gjQ5-NpXu6v>gW4+x2v|kR+)QUN3nZzg4Kc5QT(=-p2@Qq-{*Ba6}n>X zhiOY(6^=d2pL4z3*&^xhhG}2aJ~Fu0I&3$n+~qmp$@OrK`A^NaKe>K4+4^x@b4AnX zx}?+Uk}F>`E?v;07x(5wq{N!b57x-e*4g`Nbz{Ne(C6#7Sk7?r5I-znvE!EZfAb0d zBs4tK*Uefz(NlWk%DFGTxQp?eZWrI#84$?o{ixFBu-u*-O>ftS_5SX^S!ern=6f$G z`K%W!;|}QUl@$njrBGdF!d@Nmq{V+SBaii)FTBOdyM=eoO|lMI9KCMy_ml5W&0IC} z=Z#jrzbld~E=Lz{6o~o6rl|RPzUco?D}OWV+uiAItW0|)d}yt_JgeF2wu4hHmj2n2 zCc0qR(+Br|sr{Lu^}bZBp#8)P%frskvhJQj^nc2+nyj*5WL*%UsYi~7}mhF7|D@36EzTAJ8cmJ}O^9)-! z)LXP{^$WcJw$uw2^_riGJ9dTR$+OoRDtaSqYOHQ-zgcZ{wQj|CyQlWD5e%y08{R$K zTlM`@oc`56JEs0B3%GdfwB&`k^D1s|r>*OknOwKOcn62ZqlNk}c|&!Ts&~JBFhz6S z#n~T!2KU5o=PPeoaKf$S;MTM947z{w#1vW9?fURwqFAvDfBMY+EK8~V%oD7BKe#An z|8vpALa#?*b!UTj9k_Gu%iOJhB9oP`RaoA6`Se(rU+g-*>#F;{PP(xE!zJH0{Ldy% zf8AIu_vqceA0qAl#IEg;ld2Xy)YMfzclx?FC&Z6<-`07*?}b#)^y+u=k?hx+Do$=` zt$A2H6p0KFb$&Eh%ANap_Ir?X-Q_t8-Pie0#iY)_37d z-h2NiacKU(Rqfebt=angaht-v+$%qK{a@Pk`rT=fM}Y-d6OTOB?#+8TJFOt8`#{Yp z`*}O6ocjxc*|r)+y_7I(x@CHBvvKfBjV-SxOqYE<>&#sChFpgaVy6$9ZojVT$ey=5 zWX`!gi(5=s++PG3?g|k*ail2p$P?zXli2k1j!ZhXKz*TQTb9WJjfRDc@0YW_y-Rvdring;fQPb`FkquVp!H~p8I!?#*2jwpY-2ryfb-j>&p82q0&0jdHZK*_dU#I zJWT^JEW}tPeab z6Sk9g(WS%1=RWkEzT>j_@NU$#@ClNQbI=QG<7vFapiUsW2@I$o7|ic34*c7a_$V?>s6Ca&AGd%Duk2UFzQBOvHoiPnNRaq-*#Dd{8JC( z*5mQNIQH4NcRq;u5n#y>ux4*un4?@6;}S9Hs+8>e)B5#at)F1|lcD^KRJBMfNmRrNr*N-DsnDAust$f)&q|##IJ8@@|)D^f%3^3GQy3 zEXDfxp7}RTyW<+S8{bW9_;qZ>IX$tPH}~Ig$^5W`CAal=i&x6gL!y>HUo8HqzcMjz z^#NX!*~>DS9&Tiq@hI$Ii{3`#U9M{s9(`w*J@8h`@piY2}9P4>TBn)`vDCxlb)@6q6j*an#{{Q%Xd?BwlC4=$^}oh#7Kbxtod#wdB+ z&TFiBnI@&h9u=21=GGK>ELz*S>x_QtySSWpaV78KD&EJ{?Tw$27gD$4_9j=~e4omS z__k)AUs*3c376Q{ksQ2W&kWA%rwxjf!!x8<_dD*M^5o>5+;pj*9Gqd6yAGyJ@V$0& zb#}DuOH1yHeitjxoh!`!Q~5?T=FhZzBfc|#XR#**%l!N&`$~R;>6Asn9ve>eR|GS7 zZ}j@`N&5886HLqRq&L{KzZDEVBGi6JeS>Vzra2zJnErO~R!gqfILG6*W|qBUn0DUcn>z&;JbX;%T>SLAT~o54vqr&&_tPnzgf7{Q%fk2Z zxs@=8NqeLy{0o?}Q+9pTq3Vg#Y%4<2PS;#vk8TkUo%z6AZH8d|iSz60?=8+1Sn@uK zg@wU_?ce%PhS1)xy8p#LvNJ|+ufM(itKT2@?dK-SJ6id2PBE(SNU8mIIZt-=BoKz z8$|=1=G@s4wD_NaL_w>RV(F{E>lXVD&DjyyG~3Z4tYO_E=6y?;dKWeOXl>%L46m8B zqvYW|A%5El=L0;WW<)nG)$fy9z4XZ(C&8JP^;>OrM>{2*jQStrJ&Aqg>eUD8lIGs? zRp-^S5-k*tntfV(+mxMbzJ}K(YIiQlPns?eapBDYZNUkt2CXtNA5EOrdUUs*^W6N? zb!%*-@_dn6(cl8Huj@U&f4Gr8Lv-2hw=3S+I{WULCjV1y;i5^QwX*Bo8BW&LnAvlm zd3}Z9Zc}CQKZC<+f#yq{cnukL&0ad0_n7ge{&5f<}+oUr9^W z`#Z?4lApKG|4N!mS5$t`|>Pp0{7tn4e);!Asd&LhDuKXRByM7`t&v zSV_J58mDkC`B_~6)AcaPbsKs48u^_Le&o1+c`orm*LF-K(A8}3| zi>Wy?rwjXa-CjI-U{vI_4J^MO{2x)8;Pd#p9JP9-9B*b~)R+d+E$yE_zEY zy6osVRq3hivwxZ&AVZNDQdi$%RIt7X;IJ+5Zi8@uoHE>^d=Ge;L4yq$b4 z#pU`R{VtB{vrcB!3o@BhliDR-fBz642ZO__{iW=6 z($dlDfA>ot;kb3n!phR(|6R$D59@=E@g1qJ_qZ)3`M-LzL~H%&owgNbI?ILLE#(nT zdzv>Xf_Z^6=jn9S#HF%9n`hO}o$6)!zU0xC8oedLj()!i%~uaA$#T?I1lSgtdOj68GkxZzI1BINT9zI6-g$7W)tsuZD{#{7 zpYHQxcHcX|qV^;6mx18_Z@tWJ6>EgvtZh>v(l+cOZLe(fWmtl&!fIoN7`r znOU7GH$`Fo;RP~xAN{y3>imtVs5q%)^33ZdXIoCmr5?5Xl<~yj=c~}^!e7s|8og2d zGN-q7H}Bz#a(S~;Z+@QmqGN4A=9iz{uR7NEr7qrN|I%`knDr^M^`0!NO6@I5B@VBQ zT~(rcVfNp!1<%~r543G@;rJ5!J9!?2Aq^-ss@XV>zbo-{fRf3HsGnS@56ib-&wP63{LvM2} zN(xfmc2sm;C=@jH%o6bWP*HO0xA{p8!)gA-oZ^qYdVA|aHg_ppJyOFWy{)Q>d)nF3 z55fL3e{$@fYu3I?_x*$p&+oIdyEm0S&wjP%P`kpd;>(ZBe0SbvJ6~T^_xp{r`;`CL zk0Y0D;JExdo`GRiy`t}<`W}-=_Tu2;+5ZpRoO9;Bg>=TwoPf>`!ENk6{pU=59eO}O zIsMS%UaO_sJ!Z}Fi@o*2O|bqyb9%+@MH1#(-Rp1PTRqR%M*Z?zpSS@i;yqj~oywYW1=F|(E z8@0~$RbMpysFd{eXtVNj2FCRKNej}SUg26$qjc`cXP?tP-a1nz=S@ho-NvZs-#qt9 zgKhb~6_28HrTkd8SNX>k=-yRi)QWl=;n`F6^iiF8S*(=mPc0Rzi02ufYC>&x6LZ;Y^y?hmp<&yyVU4mrlhxC zFm(R;6*ZQt&-;0*NyZ-clkHZvUgHwB()sB8_>~V6Up#mIoVa9h?ce4DyqU?h_isiY zE7iO6&S&MPD`&4{t>JhVptoV&mz#_SZHFa#@xQA1^b_;@QLlcwpsF`YVJX24;H271f@Ry6AQvF-D}lgli2U3VQ`fzLb`6n zGEoQh-hToWRu(O*P-NU%|El-7v6fggr6l0rq(|v!S@1bw3eutDl z%e`5+;NKpG%_i?UB`^K{)4krI%H*cy_v-<2oD2>h>bus|H(!~wYMJ&Wu2bbbTg^;0 zY!^IG=v4}^I6I?DKB3nnw|>@yDE@+woegSLIcGxS727s<3hv!G;|G(r>vz9>C2E?y z#pVg}`xG85ba|F+7aym3SM=V>wz8#bzi_uzbctSBaqR7$jZeR%?E3!smY??AmpnK8 zw=?_bue`qE?!VWv=cnpO^IWyGzP-n!@5{~^Ns}$OC-2&#^-W|m+hosUPS+lrOf@%jKh$KL^w{H4(U->=TmIPZk~^KA@_v~|_Ke>a zc{1BQ;yusr`L>X`$}d&)es;P~@`Fd49%dLzE_ify>wNx0r=%oP-rV#(VY@7JPT2#O zq}DlGZLOEL$E+;WF$}p}#dGn&+{MX40BEGK-=+pf|yd8Bg3QMH`gkx!ww^qcwDkZG;v zduOjTFo;~e?(*j4i#G(xFW5Hu^M%<}FVc@pD$YsNuu0o#dwY$8|4#O|v9i1S<;1tF z-1SD}`411VN$E4P{Es~R%ati+m*u0>%4a$wF6)%$%Rd1A^Is0~K?sYm>{x|5w{QHae{FGO49EhIEabNnu!?5G> z0wR0r&+-dKF5h-jC(X@HvuECQ_-f;3q7=k3Xx#ofuq#I$ubw*Ulq3|2p%}FV^`ag zqYBq+%*D>@KiaWK_3ELZtfYz!9(?K8+;lz8Zk#gRm}^LCSx)!v?M0`?Ol>6M##~N|B>vh#O%#!Y!mS8+XUE1TU|Ln_~7EPV8c-iJOpBuba z@@1-o&kH6_p7UzL!}|}MnU4p}-T3Kgik4E~DHo~TAAc$CHRAj8^WMZ*;jD=I%M+}c zm%Qvtn7K^w!RkK?x7?O*@bW4x*?o6&%#}R*NAZge%;%prV_&FqV8iVk#u<-VmF)iu zCv)et?`WQr%%&^;_n6j+>bO*ZW3G>|t~6ms(pLWEHWz;9-DYd*_gZOa zzA;hv>07a`%|bRBIZhdx9|M10emLDPUe_wGe5u@_lM}4cc{ddqPGaTv+*Ow|%gb|4 z;De8)7GE4rv(0{WSZw#hjZasb9GIUN-IKjbyJ~Vt;E`p^H#J=e)q0b4)@Mn3ymFS*w{@pe68I9?me%eSetkm2@>$e%sfqkg^_WV&yZr5( zs4vPJo0ZT}%=hWgt#e!Xt4*%w9y>03BKAVAu<6^hbS-7J9{*hZn}-9>hZ(|Kf<%df2N{9s&HXZE}pWT_fIpU^L2D6A`i=X}*7rBm=n`18C)mgpo zeCs~Nu8$(q=O(625z*9FQoCxTBseuk>G8y_r(V0Z?=LJ?@7Q!c-@G|)#cqz2(%G}R z=e_tgWsX8;jJTn4$f;=>Yq_TJT@a}Hqi5K{GUwupw~qS1E#S=QHy|`l%|1woNi{dhDb;&FyPp z(l>?DPX}rha>{#c_dVR07rNE0?3h*!e}>(`4Oc2m!dMU9Jm9={cKJ(FKaUFxwuZYC z6Wmfb*F7))c4#^CweJacl)v^pI>Ax6b=Qk&)rW+G^H&S@|7Q_Ct9v@L-zw=%fXs@M zFIFGfHO=z(qSSj2x1Fi2W_N94zOe3kduNBlp@PP(fvxAXsBh~Dko76A zJO1yqWC#|kn(1_L+P~)Q`dT*6rI+*kC=<+g?>VHK^PbJIebYVnCQeu`UfS|5As zeC=7MxbFG+3(LP9+gbCfvO+T|x>rDd`h!&ayAOVBeD+bHQpawi9|x6o1iyP6Kjq7j-P)Jt{rhxS*O8Io%>U(bla~l@ zT-dyE-{g<=amxR$tNt=;J9Z@PS6^CFJ!{L6p8tBwXQ{mGQ0>wA^n9m~``&*Yv+Knj z4xINeV(n*`%XFu!`NKTVwfcX!4%kE$*KIMdlU;o0ori>g1=EpD2MwmW`SnYLdM0W# zv3NZd7WgV$@!itP+RdlarK)Z5*JGK>mlr(${g#)PVP#L|=HquS{)k!3v%mA$9W|B4 z1yZ(3J3J3ZPS#yfka}tD&Q_(EV!L(rtrd&xk6qevr|RuWCU+*&hw0WU*Z_-rTmZ4WX|{$z6`W7|y#;nGH*B&0XUa+xS;*e#n#s z^%pgCUDK|s_@dAUA{D~{vdwW$YosPY5JtDAMdRDb?oJ+N= z6bDx-pWU9t0@^V<>~24pve;;|^2HX}kGkfYp4Ivnv>#Y$U_M{VaijS)em?67k@I+0 z&ulAt;g@50S!R!6W(i+#(Y^$ulH_}Gx4)R|Jo4eyhKh!Lz4=UR_Amc6SUj&`Xo|MF zG-;^86NI-k7Z!ETSnqJtbIF54 z%eBw&`5(}|b9B$+&|GCzR<72|34eqqO_)@6XWhwLW#=zC3D5S>v^@CohX&huIo9lk zm;&+m!svNvGaOsA_lMt{dFl9}#m zmM33KVP0I-vpVe2u!Goe^*)*zRzVtklMCChnapek9wLC4_u1x_aS#+_}x&f`6H=Wz4M1 zH+b7WK~!-5!Tai)-h8*{URHEepD~M*Q8qE&X1>D$sRy4exlHaDmwx&DSNMYd_80?2 zi5)+5PctzY9L|{aCb(3$|HHEDKWpwYER%dQ({|%l_JWV+lVl%0YgzZu?GER&mPySl ze79ZHXJ)2w{oq~x(Rs<14{!JPwsovnvRkEdDZj8wX5_2X4p%;9m+Tqu>yAEFexrDX zcha%^{g>>lE^c@6db4WBd_R5Nx}RNa9??I&ie}!JyQ%eeLRR;p%{LRb9pmlY;+i|< z?V)og?=AYkw{fr2dzlNrc;@b5dim~DRqOwaj~7la>)Yk>k!N-1s+&?T)-=zp&#XTB zB`&J?RP_(>+mpEt99hrG#31nPy8p8O=DGdN8y9b$dij4e!@5lmJC^kPYi^#wxITex zN=uYDQ@{RP##I-WE4$yGv*%ul*v^(7ozr1e*Cy=@y&l=eV{>Hb=E+yvpItq$Q{L3} zw3S~SgX!724V$B1NPCEH-W;~&0FQ9b!L1W6@A&-n;oMyZzW@EYjH}@5tgYYg<#efY=m6Kj7z_AF8hjXOQz+$O%@ zj;k!aeXsa>wmv(ecBy>*ulFb9l)MjqIc3w-{py#L+sWk?*DS7u-~2h%>dOM_)Q>qD z#aqP~{~5o~Redhd6(q*=)q}e?+fh{dZ}(fxqFmKi4?AVeRvX3LRW!?1v-)b#yE5zV z4PRzKkz5lkw*^U#;(`xm{(U@6Z+&TknWF5oJ;EL{w0$1>cyPBbZk(ZbFQogJy~F#^ zpKlb6`fM(3xwD;9E_3UFpWlSpQa71CiE-VrU{jvvw0D1IUp-`YTkCA|2V;(s54smW z&1&&5@`#m~Ao+96E1{a?5@Q*r1M9s?e$86aZm{g2%`w;Huv;&)UB$9px%z^s|er3u?sNuPv>ZReI{S zui*)M^~|uhPp0}%g8P;&$Dd`r(DO>Zdu;Ybmp43ugo!>LJE${Kd9YrqQTbpC{OZMOXUB}-#$GW*XTJ(7IWL(uL-uE>5l z*V0zQ8TAuPRye*gGFZLaxJzWS*XLP%p;M+D4c0!B9DiifqTeaJJ0A1icjWug{_of3 z$Tzi)-05D+TxLg1Tz)tE=7Bd$d#0V`c&qrDrG3w_(t;xsR;d*;_nFWC9<#94M9M?Z zNOa=;B9%voTjat{|bIr?GflQ)vFh>?!)1GBfgTzU_bd#7$+6&k-sI02xlri4wBKXj>{<7${z+YHb`1KtLU#9V{$GAN zl3}qEjP{Dm42wUu*jGD#?vq89hr@DKO_JQE|K<`;vW>9ip{g%)KL%~z;-9+L{M#Yl z&8e;2w?E1%D=GPLzmGi5c zdTz#lD7>=vd-<9zW!u8d7@p7E+T7z_6_(t4xn}8w^P5BO^?hB{W8Q2>hqs+d3JXh*-m^aN z{qYZv2{O5pU0s~7#y9f6*r>p%5IEau-TXab?DbavSb9Dj*cvxM=-lhV#UA+|?cY2y zn9MZOY3J78E8E1b=rd1p>hqIYh}3*F2k zw+%gJwN>#l?tM`8zT@7`r$67h|IzaliCn_5=Z84+`pM4sj(z>U?QVSh+W+}d73$Hh z>g>hR!AZydPsw=UcWug1Ay>Jdk{kNAxr+!$uQl6#Tgt|c?M2&h^Y_2cHps0~PgI;H zIW_A3+iPzhZE}iB+xSA*W96Q}Bi};a>MrG(s2Vi!Le#|B?cp5HV;?7OI#jo3|DuJ3 z#Xmn+&N-T5W&8JUS@Lgoj#!17^@2Qlt}WkpZqa4V+;O;k$2*#z{QX=p#cb}kp5S=Zr>uGVCd@NzR#+j! z?A)k(!zQlOPDF=A$K{Ff^|j)AwPO-|GBsAQXt}I%d#}XY7#hL6mMOiu)M!d7!`3D5 zSLWTRjq+}iKY|w6tIAlg7+jby z?;>?;%BuI07Jts2R+@dvXTR^c05j33pL;jX*OYwtcG|tQ5Ar_5b<8f*%73x@O94x4 z@(kAx>pf;khD_j!+I9X+4hN6^G39#ky)%|RlbM##;nBXcfT1TZ_Ha#LP2Zyy9er;%)+*|0cqbhu8-?SMrib<1aRjhx%=J(1yZ6}jL zy4-e2TArTqca7&J@BAfmShv=`QG8H-!X=)~W;WBbpj_K$6TX$sy0)nL`agm8X>z;w zMzE^9-NT$*&o@i0r0l*=n(bE9#~>q&1V%oUe-h}GIG-`7zn<-CI@^>$(0qR(rzKUVh&2&riDZMKOhJCr#& zK=H}8$7>|{jGxN5|1hbPIKEPZ&-ks3SkksdcbWd5tdw)HSi5AhOT5d1GeY+9b0VAC zE?#|SJ~ismbnl2lALW?B}HQ{CftQRe^k ziX{finU7T`ym|yNJ`j-RILpYhYM1<{q>~r)USE*wx)dq2!^3~M z(!yZF;Ib=DDtU81URvf=jDv2%WuF=q?&+z)df8AU9&bIo}<{Y}^5shi5@F!x1S?i1Xh z=r {f^dNeVO-+PM=K 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

0@V$;6h6?=ECS*4y(oM$}a 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]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

*b9Qu^k+2Dc@% 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%0DvRmklzQ)x>n;C#X+~9h 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�)PG)B5W#iW?kakRQRLd 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

2^wNYDw4C>pvdFuCPfvoYn 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%0A^6BwD@w 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

!ZY#YC8-V#xyi43 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

?+lfAgCO?47;ay1aQ>^7N%~YPD|{-CuVq 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

+?yM33mgu*f= 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 Y|mqbat7c{n5 za)9B9<MsyK66(qFp`^0LbgF+6TIc%UKta8m0dt-b3HZfx1$R^rn< zIh8}`(@%!byzm>WKkmKG@yiN&a52YcVZsWV&5a&6Wfl4I z{p=&|y9b1h%X9x$_^bLc^Ui)Xy{p@g9u!iqlC^B_`Lt}MY5m9W)-ajprzeRXwBK?^ z*mYu8Tl0+98`+eiJReET&JKMzD}VOv$2u3Z>V6z6yYwu^TByu z{l$DS4#oxhFRl2MTGF3>)!uT;|5;1gs?wXw539$%tBC)p*zff6#Xp9({I+?;ncIW( zUrf5EYF4&YyeI0)vUFZA++0;K@j!j> z&*Qa{A}S>x$R@-Qn}OcmGGl<9Blz zYYt@{S5pq&IdAVW#m_89BwtEvtd^Sh{jJ}GX?y#6xUQ+1HoTdkkl@<=&B!l!MeQek zpD)%ggm)Cb{lZ_k>z>lSzHgt`9h}Q$+S_pEooLG1|3{zNpHlW0k@poYP~H~1q-Y;w zRp#0gT9rbhWn>TDMBTQGZefySx+uT>fwr-|%8b}W10?x4v@ z`e#=y;<)`LQ_150pC^6idJK$?G)bvXsaHsgF<3WmX2B7gHZJ?=HUYVbnITFA$8^HW z40g8NmNDyWleljFZk52HL;Zj5YAjv-FHZjMm+AMq6Uj{sOwO8_VJAh!BhQ|@*q6C^RY|IM!~1e|_YlL`>Fetb zn7({?>f*N^cF|brk2ZU?|EQ{L`7!0pv(TeEb|gk|vq}dZFDtSAV`iXz`QRBj#Rnq$ zIRqMX92}>LTTVHbc2#BT1JTvXgu7Lw3hV^49oHEz?sf{a6|TL$aq7v(2hJ3VwoiH> z=zUr0c(dYJU)`50I=Ye?b_(QA(OQ`hAN^qEI)MlcXYqW;ptz_>C3hvK+&+9qV>c*M8fpvXRFuV_9auHDAs8lOh*mIhk1| z{kD8@)pDo&u1C+-O=8w!6q)<|M4R!l(!9s->>?B^`3m3Px|e(F_Z-`fwuPSyww}Bl zZ+7*{KGz2k5nSA#jrhBl?M KHl@0m!)o}MdUJF$ELJ!j?E{g3SWM++1s*t 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

F7E6 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%0D(r2`j@|tDN+8BKcS3}*`^IlmZDgK2d3SMM;!ks# z|6O7Aldkwb*+1dc_wXQAOty;gox1e&8_b{e7nH4VBfv`e*ffC3u4Hk4w&VV) zZ1TzL)b&e7&n??GPL-9}7J8|5y7v`(S=*ygl{ASAf>|y@W{dGp} ziZ5a>rdqxDnsj=Sh>xa}x3>_B3#TKu+LPrs_^yfxHAwrqMWt5y9lMyap*A;nmvBVR z7wf2;ezm33kHw2>JyU<7HG4PPzaKg;%B8Q(+b(eNj6Ls~OU8N=dOkN@Fj!fp_wDe6 z2}XGnIkFrCn2$>@TB3aNqW#0O?q4si=ZtTXc=~*?G|R>1Tj%_|C^efY+--nz%+XX|9;nW^nM>HKe^UFpp=k%wPSdBXQd;KQLsnY(35v`Y^BAP;Ylx zmc{agDu(}$6?HgV{V?H#xbNiSM{;L2Dcbs|-^=mdF@J&Tyt2wqS9sk12pZ)c`8Kb^ zvFA_59BToEo9}-$pPllDSx>WV^V+Kl%iIc;^7fa^o!z#0$HDohFO+t;H+?&hksq42 zEOM!;b%|7r)!*+`56bUUPpXvhxV7!x?ES^tn`NDZT_a0QUdZ43VC%9M(=WOgT9vHR z-1gFm*=f%$jXX0jOkJb${pYeh7nUUDnXK3`ZFW}oLf>UtAHOmGVHP~&uusY4 z!@TNs*TvsYomk;3d-cRM{qOHWf(zeWoKkl(amRv1WoH>Tm__eik)uE6|?gBd>1OOSG-rd zo0n_z?DN7KOaEsjZmKaaOr3F4(0EDgA~x&WVO~d7<)F!DYzB*6d^Hh?jPU7D?zVF9W(%+X%O}+3wgRSEEJnynj|4aXL zUom`K^7Pat(P!ajWbd9X`y)Q5<-U}*$n6Eq`pn^n>KuGPie@s>O8IT zmASk(`M1uz8O((;AA=q$z7&w=?^NLH=5@jR7Y|LfzHGWpQRI#Dn%uC*Mj^fi<*d88{y$pxSyA#| z;5)~sue!LimN|DVTsis9#x35L+{|8fTtE3@cKNG?hUJTbLs(lGBU%ra{ypP9zqp7!~9sk`z1&t2CKP2{?*m2~>PX>;R>WD8A& zh6av{|Mv!6xp(9QQ^H^UJg&R5vaSA4Sbjsv+;GAct$F+z(sBBd9vPWVzYVwBnaC`$ z3i){3b<(_vf!f-Cr)PbwK7Y3Ed}HoczgK_i_?`3gnsRmicOUb1^i$JW`Cp@5gZI#l zCnDkb$?Jpz7GQDOqRq?N(5)%$dk1 zIx@M3<39=IGNinEb8Xr(vFy+7^Q{67x13+X{m9dN^SR5VVspgOZ~ZOXzVD_`$^Fff zW^YZ|vTez#=&jCLveq|@__(b*e|r^q8%yvw88Oam*lO{v$z0rQ+11`avV6Qh zYK_*W#?HGHYw|e6rqUEnIoJYk}wQH5pGGZ9LC9 z2TeV}lM;6$O}FWS%hxUZ{Sv2**ncWSXutnsS{Qz1jr$3U|1;8fzFUQK2A*XQzQN7& z`jbLV>be}CZLT2`&&>R__nceQD&FiCiHEOND4)Gw`gV_YP^#M;)*ePrrVWh?bMDpr zekuKA73-zLZ99}+rqAX`njpkJC!*e>c*5LJ>4VBIZJxb8dEk=It4UltZR;)_^qz21 zde-Z!u^m63_y|SG?B?^(O1^#Z@{h8|;Xk!`qQe$06rH>=%#CaB_fKA3x~&tHduO+) zq;GMzKfGY;$Jy&5u9#RCvtR7L$ozpxGV6i-F20>jR*CmNr}FPnOL5X#6=^8$dNcRV zj-wj7eOenlRwgeF4{iRx#_yW!mw$e%UE zq`cwS0iHSfZcS^uCaqFqaGi4TiujfFf4XIrPF|i=G4UAdztdHrQqoUWvFjC8P4Bz6 z;m+Bx8IuD~FyEb!l(4VF%}QubTHs>o>ofdWa(njuF#4mzc2WEC?Hxw0$5rMuTy&VR zQ1j6Wk26y?@YWml+?ls*;YPiwZ@doe`K@(Hiic;0>&(F2JzKNhFvgYHnnnD&V{-6{ zt-GT82F50d<%?A2ax z#AI=UU+Y5V6`Xh4dwb)A$EB}UCj`8z+0Ww{ywzgPpU?C3{Mx@f6OFxcan~ZI?*S&d z+c@OJx%~ozH(nBL<(6-mv+Nk-xBT>7jn(%Qzc3yZe8{8OyO`VO=dLF+UfwP-IJ5OZ zdcm9S>oM!q?A~9gl74rr_{DQa1)ZW?Ury%P`wsa0KBghVKH~sy&&8$H($8j1T&?zM z=HiNKu8B#X-m+Q5Z>(4=|2{HM)}mf?{+HP{7f%Qb$ocItoYyG%HXeuaGSKdf~3 zr>j)TktM(8iser?*#1Z-b(I;f;O@G_kb58h<@}I4VeGvw-|5svM#uGwo%cUE@}8@q z>-gH#xSHw90+yJsZC&|5LNtHM6PXCs9M}0*)VAE)rV;nRF@9Bgg$ZYyN#m=Jaz8d~ z>q^WEQqh^v`ZX#`eCGCM{t`Pq=j0E68z$>%eRP>-ur}H4AH&~bf$1`o_bYhS29sh~C z@|%uSw8k54^0T)*s^eBZTg5*$B=z%=%j_E;rJJ6bQo2!3@n+v-)1`|qT>7r>fV37r7q*-y9Li@hi5*$x$Bb4X$s^RfqiKX%zi17zOiFl7uV!_wfp}_we9@vyFvQ&oW<&~cb2}~du!fTtFwiNij97L z{Z{Gl(YssxL(=;@BIox?Y>Z^P8Fym4(9{EQy;pN~UcHjGH791l-o}(WQa;z*in8XP zVoqJs*crC!$)ysfw9~08?yg8OTV->Bp|YmZo+De>XZA{-ofA_o74U9$TyoFAxopw} zkJ6{ilCDz%PN(TQ&7PTLuqrPyS!r*ppIUR|<;$z~tCX{?eXMaf@TJn@wt{>1-yQDn zD%#q|&rzIXZra_^xm)e{>cUf37_yhQq&(Z(F}rq~+oJxqQN(GYeB|LgKfpX*HWpl1|fi zv<|*^EP8``ZAx3M>CA{*M_M=O@G%Q)FX^$_e%mTTcfHG#8r!0iIg3{zR|M5RX~X`As>0Z{u`@&yz}z9qxPAynT~y1#@Qcg?VkKe42Y0 zr&@Ywro4CbIvu>&^v8jtcjDRg>g#vaY@Zw@VN}AWXH|c^GB!OeZALA_ia$rQv<@4F z?7qRtdB!YQ{CE1(%vGC(7EOHQ#r>Pl%9zjh*E73M2U0%vN?q#EN=urxa?ul)k4N5o zD-G~`)$?~%K>EAe)rOCR!}(&~HSCdI_rcnaQ`y4w*o=Z%oGO3+_#OEsymeagmZg`n zp7|R$3!Gkcb8f}?N~v|P__+7n&$z+DeLW<6?z10;T+T~brMSL@+nCldFBZRcZu)}r zzkm6}C+F>4>T_swk8UMvlji$(o0p^?eOWv^Lw^s1>PQ=+l?q|nMuk=<2`%^9f@&)aC%y-`?KltbOKeJ!)EGZfOU&OPm z9RBOh{#>7Wwq9cH>;I2=H9yyza{o_PKjCzFmUiEqveeI$eob33<*Jj(+zq7@lO}CA zx+d{S-XfjqMTLj1NhK>!NwIw>E;z%1<&gM<_(|678o~U}YCc5mzU=e+^f6=6?da@}i?y@CCYeYEGCfb_Rgs%2|$Z|lwZC$RZ{F3JEmQ_s&-2#t~sub}id-W#%;);BB z<57#{FUH&Y33=LVQ?1nIIcUXR-s0JGP$DF)?3SnMlOlhIwDac<9Iu)w_NQ9d%lYSy zmcUgn<-Rg}GS+w4*0#dov)LIgd84FTti{pyYo1$glX`U^NjK(3n(_aDhte-NMDHeM z&*&{Xr|6c?m9U51?n0~Tp82fNUPUiwsMsF5+Po?*z0x7?w99IaOHbr(pIp!Q{mntQ z`3x%q(-#yS-g#niLDaz*m&a!&y%vfv^uAci*UWYG(s7PSMrJp3?@9AX^?J#lSKR0m zpGe_6li!~C`UtIV{xXRX-xr7R?+ zrNwk&Z0gr(Av_+lq$he8dpl~u`{_kC%rB6)azFhQpgZT2vm*Xp#DtkX%zdqS; z=X@_i5tpWkQ(x4(UjNiQ{Wintb}~wVjqx%|hZnk&#)8 z&-$J=jb5{U>xnb7OpY(y5&Zk2`Nbad^7W^0b*jCLnmTv(<;v)j7sER{%oJE_uKX70*& z(Govv=2)FBNz&+I%h|RfIA@#LiUgA{|F^tcCUW|#@~o5tPU&-YpFLA8_sP2_a3=Ga z`K#4S-g9$sIvwEC+Pm|c(X*9%Pi&C-aJPI%gy+T`#rM=+7cSgV_Obt3&F?k&<#!a) zWyNJO-v)Jj*f(>A)AY{65{b?|H$8OSxP)&7om*kq{^sQAGv0i@r);iX`?9#uXs@yU zjk^o(KeLv&B7LrRy2c6-&Wm6ClDPuBHg4eG7o{9AMI(O65r@^Q&$g#0)LvO|#-gk2 z_SGVTZOdKH6(006xE{>0Y{R*@(3`s_GtB6*-7li$=gyLOPs082y}sZ>>rH%G>YH2F z6tdSo*0SV^xZvutt&=Zw|6jr2AGtzK^M0~u{}aq?T)NF<-Ndii>70w}SN{wM%v-uf z_mFI8^TrN~rr7^10!o@s^u7p}J#~0;zEC*retTx)%F|?R}9mC55-WHstx4*n;nd3D(SL9>RkXmVYaSvGU`F6lT2i;Wwj_OKc3nZ|T|`rHhq<@3&+kSLtZ)E?TW`-dTP zflcwJI`=tY{kmsuRx7o4Ad3VM40~Ngr&Sw{;O?Yuol{H5GntGV?r?iLjI^8e3N4NGr z_;JsA2IIVbzV(+&pKN*da{lbvRm;zG$gb%$GUr7(=TpeGe5v*cm5ssuk~mA z)<@UN{m!npWcj^)4ckBU&8c%dd1H0f^#1>P*8Y-7Vt>8owK@N?6Q1t>Y?>td@>}4> z-2&oBnwBmnyIJVc!41}%#UuAh;4WM}Uv9$uqc}_;Rtv1NqcKj+8K10T5@h)keX`xm>KOWK%6e=>|>zy$B@(Qg$Vbhge zXXBl3IjGsMS~E3X%K!HRM+wg`*444DU5SoO+K#sc)TVa{Dt`NuStxxzFw|V0DbQo# zNAu#vFUz-k?F=})+1Ev2QUCq!SwpYmW;_WIAuYRLMUC0t0b zKq)CG^z*TO8C$P}+OPL}#N)_5TlNOi{K@%GCsroQujbBK-g?&9@bwD+T*m`HBEFpE z(^qho*}P_+>LiCLLZ4Zl`s|uL{f7$MfnPtvPc5!1t;}YWc^x<-!6mF;xzXT)yULpK z85bVJ=>9X)aZy+l@4HyYB<9 zF0n*Ly>)k)uP%7~Rh*Br=hMo-TT(06Cd$g})eWBhXu+=^oh1gD@Zuv>~@eQ5zO|oTQjE&_R(oTMSzS5hI zNn__urFqLcrnRwUYir()S*5`Dtn`lJ#_W4DN~di9VcoXbKV-V|E2Cf0*>@J${tJ5% zp7J96*ODc-dF}Vk|L}W-Ti`L>Kk6@+y?nLuPwz#=BOin>&!00#iiNX$1xI>y%e#ve zMPI!(E#H6DlEouw-iG?C7Ihr|!ZIL7?6}x2T z*0{XP%tcbOd?WN0GP~a1GHw3$hc8Mh^s-Ji|GC*N{NP#P>bCd1AO5N4b!E+ZYVbyV z%IjKlmWi(yznFeg#eBcd7w26abC@4E{rdUsZ~euXEqxc| zz4^Usd&&P(>%69{`ZlT1Zrk#U6*Gd_+<$NId~&F6wyE^j#=I(FF{_^m5() zqO+fM$sHk%olQISCe>H$T=hUmqP<(pC$du5N~yb5S7M_<^@=rt2ZR?DO8km0n2>rx ze#&o^JCVtDI%igFOc{JZSx>dk*yn^JU+&$ja3!X(6)wNP{_ zYi9#Gh+Q_2>uk4)1LK@tvdQsYRLu@4N^4h!?oOMvvYmCMNPFOud4YjH(&jAZ zv1(16e_4HvsM1}Hv(MO`d88zqK7Lk9wNZEeylRs&shKiwmNsd{PAXL>+A#O{f|V0C zq%+RyK9%wL9Sig29RUjqJf8fmIdk*PTQx25%uux{%i`u6>GVE((x#N+mvNUxAoAHG zgGS|BhfZuze>`Ddq?O=P)u*}Ny>;3A%>VvXIAJaN!N>I0%@4k3u6=p)&dJfjOitlh zUh0vexVNkxf@ag4j7xuVSUfm6pL>J!6cI+nFUQ&z)kOK;{JAx*#Yc_0J{*r+l_ZX>6|_f3q~}dZ6`XLhR&H%|3=}Z;~%dcw6yZK5Zs*uJdl;m1LXm zNik`Q61SQ$?<m5lw%N@859CX){Wit3 z&CS8yf&JRFze_?qG9tDqrY~I8sS?=`W)W$zOim*Bmez{Hnm0=~{5H&2eIzN9Z~8i5 zck8uUu{)EN$=jMQ+Hq3Zp;uyu(#v(*u8T`q#>a2FUKrlLsfc^)62as1>#EMGtkB=7 z?rm$+x}|a370=e*nw`wGk>(6SM#+6zecxW*KbWjvmYBW8_4GcYBo%e6PX!9WzSU25?{%5xu{`=apsjB7gDmn=(ZBcIs^KPE|Dez)n)N9X^2 z&8xrbEeZPVzU8*D!Ta5H9_#o&m?qV*L?2#i&7(hU#>~a{tNQl@-dw)_=Xds}o->(b zxXyj>SNxu7d)n4oW`T-K)7I%h?9N|%C(Qr+O<}|S#XWHk?BX}=4Cf5k86>xEVd($5 zrJ+_Q5@-Jl|HQ`kE&u1UKgzPgo3=4n{0;WKHZkPLxo7L+|G%w|`ODvLtm?8aDRSa1C|cZU;~))OCIy^mrK)fTAi ze0FoS)tQ1i?;};xu62jEOsG{;eqs?UK5=>0Hml-qZBsa{v>tf#E%CX2=W0pslFfEb zc4ejyFYTDD*eAJtQOncf1BWetFrT~E&GcYK;fqD;d2V_!%1P&d)u_*!#jlGdM?V(qW$&&rPnq-6nge{iyfL z=Kl9L^0pLR&5wCf@#aa1()V*4^4`u$m)j%t@7}WTJ5C{S%-zSgr1UVxxrC?IPG-v3 z`$c?JanF~^@KYVPXT5tO{kHLgl2!30%fF3(W-Bv?@p3I(?c~2`icLv}!E7xNjyHZf zj$iLsI<5}-_fdM*t-0k}4DC}Ec6I3p<%w*o?)VzHNnh`lRM&oKpM@T8HIs5G4K<3@ ztb}wfX-hE(7@4vQh%y}ao%>0Bl}3d?e=F0>einldPp9vd>MIsboy(RzrQ>v}OT6my z1U8O@53(P^L-NB}`z*J+CfrDP_w}{tjT_PHQZm2FDfvHV_@5(kBRfnjEbRS?U%uvX zDd!$CE5}JcYClnv&^CQ;W6-DVN16i<_vO51nEGJjGUKbWKAg2QslMo5)PFp%_Q_M# zl2SjDqPLcNH}G$$Z?*qut<`62Byd6F_!_#ipWY)ESth;Exlp$@^We9SDb+n3TD*b@ zbspQV?c#jOC%wIQ^|apAKi!?@hDvV_lazQY%QsEzlA!J-#kK2q^{+hn{GIgt+0*kD zKh|cg&EH^`biU&E(#2Q8ZoON^Bv@g+wJB%IdXDPe2T@6Py0t|owM}}+wDn!p&j+(7 zJ~2q*3b`LD)YVmImszg;XzQ6x(c3rvSn&6h0o$H8Tc2nImcM1{lzMwH}hK-MDzw_@~ zQ(vsiIT|P8Qpl3yGFx-QsZIB8v5II0o;z)D^r~P=>&<`zW=~eXO7+UJ3YsMqBR1E} za&Phnkp?l%V-Bu|x~gn0xmG78uBZv^b7GF1(PsF12lMe;bs{T*c)vyT{{5{s?-j$z z=fAI?(K)54S#fjX#szhm>~<#69G5(w|0|fn(X6QTbB%$P^R+XJ_XHh(jVS@WXqSsha#PpUw*wwdC|^r#wT`?wyo8N&VHEe{L(R9aqh7j8r2*za+{{9 zZM)4mwe_M@@Qg^;5SzlYFAnovZ$6`6vEj({Mx*aXT&lM)HmiQ@b#i^G{IHkrlg}$w z!*9GlcO2C@D|B`in@|ly>APKQSC}&&8nnB_Xl7N0z1dTi*B6m(86Fg7IB@ZU+qhWSr}m=D1o<@@FVtg?vi({7xJ%<=d9DNJ>sbBU)0-beir3Eb zo$+bssYRVP!jE0%)#kggOSj?B&FD`JoOjR8UpZ+CpVP|L%I@F*E6y zLG=M$#qwgltWy`4M-;Ezkvl;rVCe-@VYTX4?vGP{tryNd!|8D~*5n1xTK2Y20qwSb zlD_@Qig9YL`K|f3fIs?Q>1r|gOFHxJTbs;ne!PwG=&qt3iz{glZ2MHwLd?4!dq3Oz zg(cYV>Vmm1bf)w)W&H?R8Q_29%7nucbWU+8JEodc{e5%$*pWwi3pUN^Sa`VnOWNGR z&Bn<)tdy$O+~DrtAlZ5K>|4bvF=u6;Ts*)f(u$QG&v}o1F|&L0?Z>8K0im=q!2{_Tt*I-stu&k7a!srY~Hog{RNo#iRG_ zW9Nwv)jva>B_CW<=F-q$TYfh8)AqU=2E`w|w~xA>XukQvd;YuXQp12VWs{gL^fh$+ z+qq#+^77m3su@~y|BL*2x`Ay;WJt$}Si$Ww2Yc^j-=0xccvO2?qeXb%zmkuhra6z} zqGP??eSB`$yxmc8=J10~p<9Zs589kpJZf}%+_UCeb&%}VBM+hlCe)|T{#n+m8gEs2 zyVrW#->O6Hd-xA+J-zPjQwfV7OmXb?8->3n6`u4o__S4!dvWmM<*Q|5`QETbb{w!) z+OHe?m|MW^?T6*n63VA1)cYlV40+6WsbpbB_zdaR@S>X^-pHBF37s}|M(VMk3m=sJ zO$cm!vs&HyNTFQa6J_4$9eZx^YB|zuU#B}%Ij`8w?R+PC!E=3l7{SQrmaVsH!E{HY$!nCly{(m~_5g0Oay{|jH0$LbulwTJFZb*|QF`1yB>qi6lSH6701x*mk7 z?4NqzVTaP^eSfMJ`8;^l>iI-3QI}~1;?)xpv8B{@tZkG7rt>7cUZDnj&z{vU=&A${e0aPlS#iW?Ila*CFwl{JWFC zyeb<%1XWo5h_sr%dV%5X4KoXvqW_=#=vr0%^m)eBC?(CGhmzRdcx()MVH|Y-bwib| zfe+(<#%bL#L3ggK(ffbHWv*gYzl7Xm*Wfq&EltP5^rYrY4cn<7tF2%k$HrCjr&8tq zgn+qj-coCAp82hBQ7Mt@S4t78ib>Isx6x9OcQ89=c*jb$`e?D*EXNuh_pqswE&8pt zlJYApEMnfT6gC$Rb?-11DBItW%ku5OJYCsHIhFj1HAO+P+HN_orsZ};&#?{KXMO0_ zjBO{SJk1{JPu-DnPe1k0tQ{&hR(yTkmlCU|;rgoQ?vf=@q5H0UROPQa*D1W?LI1jJ zvv+>2#XZ`o*OVi!FIbzfk~ux<=B%Qh^NnJD{QWimuDH*>`S)zH?uc0$saV)nj`jg zb(+Ubr_^8`kCUmIJxX<9GYr2i30@WO(?{EM`l4WkH#4CRo4Y0@POO!7`C+~N zhEVRhon_}<|LkQCkDH#e_k3Mh+~)23W~^PeXW#5~n)~R~ZiBb|IT_XkD(ibXEceVzzRr5&RK)RI*3(@n=NB#4@V+9r-TK*V-L8Y7 z%dWFd^%I|LsefnAvNPY^;^qkG`^=kq&r&k=w8WXKXP4YLqtcpVeX>?NUWCQ@-OrgW z2c}O_Uc+7=m!hp>+E=pi{e!?=;=Zv~u65X?#>jxZ(f-b zB{IwUd$v^Xle<$LdHAP#*lw6%xn4XVfqB24jH*k#Z{z;P{ikz`KRxr_)+?6xcpAgK zS<|v}as@g>{Eu@;+?n>A(RAy6llgCSCvTqhkY&m#mvwc!73T*3c;30pYHM_2)B9N2 zoE0_xebz7DrN69L*5|5zO(gV@RrAZ(&Z3ix@BTfQwqDL=X`#yMb2ag$ADq25b*nz> z*4=CIwWQwW62}ZzrrOEx9lTHm>aj zu`BZQkC_L#>B;Zpx@A}KSUTr$@yS0cIQE=-%sAQZ@pX^%X>ZCTQocN92#mfT)O2{E z@Vg5io|)OmnQD2So4GfoIH%%y$wa~asrEk=<z}t1RVFuV6aUs#awon%q3r~p((1pPFTDw!b7=Og z_q+N9&ee59a;-nj{4PoPLsGJ&&4I2jyf*ijEo2YtYx$=BYfje4msdpn-_E2FvTuK7RPL$V_7BtlS%wsd|K(b& zsiW{zQb+T*+>aUMEQ&sV0(By;NlG96c#iMY?ZU~CMPaMn=`CGvtZu;jeBaZwC(3!x zCHzacj93kq=y}faa}jEcA*YZ+aImOql`1^(Xo-s0)XzoloHw|qUt7<&2= z+Y-Lq%D*oc%O6NAwVXSA`x=ws*WSDZx%ZAWEttQyJtKIct(SUl&e60Yq4;Z_?cbOGlX_(O?!)+97;XAde(KQwvocF}4j=i~8*gj*F0xp^Hfgq~(E`RIPL_0_Gr6ZcpD7pYWw z75nS($FO4N-SvxCCVa2vVPgLE_U`dAXV1IYt5w$>7ynqj)yvKOlht?Cd(01(Y(BYf z(Fdyml)-^qH`yX#=4hY<^6e`d5LdwW%bq*-Tp~)4;gj$ZTwP^YS7Dg z!c{sV({9d8M$R(ZDKXNE?%8oaevxJHCvC&qrwqR~ndazgw7$%Id2`i`!02Ni8NYo> zDZc&X(d36tJ6E#b*{xY=C0c#Fe4h51Gu~@g#vb99v2NW~pz%JQqv(Kv7u&m|PPLbh z$9qgItP|jybGCcGxI*;nE8E)DvwlzSdvAUB_3In$dmd?sSGpeb=+Si0KI-rIdHdG7 zN2e#2bWWaVVa(k0WaTd#2d8qmb8^$-)os1@)^N$UwAS=-F26P>&Yg!@vjw8`-d<$x#u_cYG8eD6A8Jz9lg=}Y8LOrlGy6KU#?t#lKOw1g!9Xt2eQp_ zZZc+EcU)oIapYJ>ZBEIOXEGNv%$MxyI9_%kcG6er&UVGMw;w)H=U#pI;Ho7Yk$PSV z2eznM{C~XDf6_aNWfOB3pG$u%mj1|8(dSOZqc(p3{7J1xcbwCIp1(I~vFS2J4XuZl zRrF^anZBz*vBmeOvA~ARSCecx(o)VBTk8dPADy1hJ#8{yxa1eHRc0?5AhO6gMb<Zg;fgzqurvQg)graLvb}b>E&g zt8bY8LsC_+D*N)%3l-c`*RYs{GCiB;aewU!LpVTCwM9;{Kz#YEzEKod}V>WXB{i zOZta$LhT*%*y+w`-fd~lH=l6Ky83nRsjC86R|9u#eN`uP@jKh1sh%rBZ`s`}W3tnK zJEu@BZGB$pmYyr2Mn`8&|I5C_$wqp?;w1~i(i%eQUS8i_+Z=50PHlBVV)TXV^&7Xm z+rF;tjX`JKQ;xe$JlB=)FdlvOuFCO_=Yqq_q^3wj%oe-TX0YMZE>?Z@^PdEjwI$zr zb}v|D&GBmCF}2p`$5~gVo}HOAeZ^8XE1&ZDMQ3=*yKkzT!%hLH}`n$^MdMv|NH8@-^uK{J;opM z!rW&Zl#6hVc=EWZZQIJcBPsRwBj<$}l|OrT;(h+4s%a9=cHs&R4m$!I9D@EYe;(;4 zR<^C){`}ma+rN%y+$i6+zITby)wpDa86Gw-A3AuuYzznv{7}Gob&pw2OLF@5DY4II zecY=1U0-OLzRthtr@j6?OIed>e3^d|f9Fv*rJZ6%VyXG;O|Ns;zx;NOeg5kcaq;>U z%rT$#UI=QHu8ilg-ST+SvZ+j>OWk5DKWe^xCUt9XSI?WSr>U1(pDk0W4w^Rgfy=Y0 zkG>gSUkT>SCz z@&yJice%EyX<2JYrX2U#CYl=lv6IcnvhP^cR?SnrPfANl3%7EAO_aYIQhE7{D7U1> zW_8uQp?|zTOIYxHlfL1;MBv-ODS>DINhO!?@}2o;r*I(8-FZ{^10BDVT!El?8$}(B zDS>-8oMEmv@n+U7^GbUf<)iA?d5)=P!`zax65SVfdgb(zjkWfk3wPYI_qW^Q?d!W` z$~$*?d&{#tX4#Y;R?gI@ww7ok# z8O}!ucCgEMx~K$(FPT)(?&HO#-I#m)o52~q`2Ex7D?guT_WgWj?}DWk2Ojtr{L9>O z({kRcwC~RB*FV*STZ#iuGtLn62 z_CFbxNe7-gcrIQM+0%LN^vr@oEz{#w%AZ##NCnvUZ8DCloF!=ze{r+pjl*j@_B5aR zIjLrkW7vWN>9e@^@Za?RWiOdqE-d)7-FxlfZ63wp?DN8M3@snY^Z6=9I^~wf7Te9X zRTBKZ(NtVn!Rxic+^o<^S@k}={=$M^ZddT_m->^r+(<`%`_J-CVF^nF7I$ZS zd$_bhbk2X7!fA#NFZiXt>r_dOn9Xr(v3s_f&HSKiYE^Gi9=k6pkF=U*kjnJmNl$Ih zy~p>Xk9Uf)Ty+0g^>K1FOXtD*SNq;uoK`t<|LRK1_Vw7UkC^l0b}eu+H+q14UJ!? zqIj>PU6}v%4VK3&t2X;iG5R?}<*M#E+aos?H8paUe*VsF{aGFWZ$uPnNy7aL?*t-K(fcTK9Kc zO752l>Q*||$$ckg=C%z1K9fJq*L?0|&h%d@n9GT`;{U=A>@0utOW*xHKjYJRk45X2 zH!W^^$<4o2%-x$|`44CJ*(vvSGwyJ;Y-kW&H8a-G<6h3ccRTd7H7c@Cg)#`|r~GPt zYGbwaw_k)(++Cg1pA}|2?an!(8!B*P3Cqpm{8h(uo-3ZtdA{u8`_B&_v7OkG_p9tx z!jV&+^LrMrZB8kAbs>7^tTUdgBp1vyTpP}7(I=;;_-0x0zh3nzD>qw)tyJFg^nkU3 z>E26avdgUJA6DLVX0`joYZhNNeDJWnnaIVv!RTz>t2gDm-gP-4nIVaVQmb`M8rJ?7 zP72G^*vepLFjY1vGc-wJrsMim8@HWpvwA9%^LT|hyY}LZCmpuC|E#$dm$udODSJVL zhOe8+(HPrzSLSA4zqDi9Mz@drO(KCE-|wk^KQ80n_cFCaAk>iK@*NlbnE^IuyNu1x zyb0elv*<{o{EBMx0r)WvNy}B@Yu2}L@S6lbjPgFNb$#8I5+uVxa zv}RwH79RAwNq6n-{fxT<^!#6Y3Noo$%Y_*Ty_TGK-)sNMHIwJBs@b-vdl$=BY-A{rF5M9H z@Z`=3eny9!SaylMzj{XNmF&jihJOcEX)ar)arNx<>^*)lJRxtn_9o1_!!F-3@0xF- zOrncgXoM8=y_0p1d}p4N(428>@`^1lwoldU`s8popPPMkN0O&(kkPe1C%xuRJ-L3I zU0V(M7dQCo$fo?rnIN~!+4h16@BPnHIQ-WN>&BlE_$or|tKIeEn=MKHa^Y!!4@Q_lNkb z%2Ux>b5bWXXm(8DsFqo+*dgNK6)3P*e&K()?&W@gkHl88oWAt)WOekdYYj_un=We4 z*E74r`@lKrZp7vfE<6@0Hq7G7c$Ch_eilwCT$sD>MI)!?!nkR+QyJbpYj`*Ndx%)1 zOP)~B4$dD1?SUts?0w6bDz}IyZAyW2NdKQT8=74YyfB*5(sE1|{tUe*BA0inCO&D;T%@M1J?R zW655%9=ys4r}qB&;q;5IEMuo8hxs1g6FKL!_3h-Y;Q*%}`Zi0Zmp|% zTlDMu(WMvWNmMSMnGkhfGi2*2x57q6##K&tZt2G-=<_}Ak$++zA++2eO3KX2ap8T- zKZ_#&?tk*)w#`w_$tIQ?nL7-Und&C&u%9NgVY`UJuj9h4U*9wR?gi>1VvP``p+K544`IN*27%bM~~JZ^LObvBV<|hoUS6_OseE5lmBld z`u3o({+b&513sYA%UYUB&HU14Rrv1YGPrr>?Kud1S+W21{AaS+nbucz=A}(k*!H>c`b~(+Z_UR`T+-`U!?h1kTa- zwstya{vbz`ID6E-Jg2ZhHT1KflNRUteVc9_ToEyx*nl zE-t?P+wAq{^ESkr&3dt2{kUp&?x)wO`Nz1A$#_Naew?yW;x$|M<c=$Ka`B=}Q;Xn$Tj{^!KUan?=3ckaeOiym?uC7CbZ#Y?KA$}Ig8Dc6sI?kd zCq-9iWGnmIOHF*(UcQ}w;aR_#8a}DrGiH9jqpBS`f10Gj>N`_UmQ;L}(P?}YLZ7noo}%NIjJBTQ{`7f5NSRmbxk=6s&xLiD?sy0UTOre#yICr`Z4 zyXdo_*pZIO@6Ie1Z#_BZg`G_Dlgf$pRX214?K0T@3T;|=EWm8L#J%mQy7$!Fj=C)M z5BlXLuxjS#bpmZt?u$kE#6DSAOqY3?yfyder(5^dbozCM3%%``cl)OAkF_Neb{j0! zC|2s^txglmFxj=Cu90!cV*MqNQEK**-y8~qzuyZw7j$jE?58*1xl&fn3YR+~{Qci{ zE$J%8mwnIHr~YL5yZxEK|J2M7+5eB0nI5=#ZeqxlBO(uy-u~%tyIcQ?&3EM~%>`VF zzb=@TRb9R(94h9}&At(}Rr2XAzq zww?9oeGMV4v+9$EBw4jr1j;U^j9~dL{CVplWBKfzUFmSXvge(g(fMNWf-H>*4){n zYVC33(PL{qsl7d`&-~lNww-2Y>`HsUVJj}&?ocvqwMKu-8g~}gUAC$j zQC=O^3wCLLxclRr>jkqUH}B9jdiCmutlp_G?bLZa;nkuS1tk;m-d28G^?KLa zaQWj?EXT04WvM9ZO1X;qxF1(<9bMcx`%$#?)g5yVi*LQtd;PcLa+wt& zdl_e2-n*N#)+6ZFq3r7qMB`%~{0LnAyht@@yU+E?&&4Mbq=KKNE#$RX?KAJ!+C3qx zOEh@zE4AG?{$BU~(udKhvoa$enQb>Hj^A~U<$35_6~n&!R-bJiKY8!9{_ZyG{JZN? zl()>6b&8zPX>ejE|00jarB_Uz+A~<{T}_QXEBeYo`-q5;%mKbqt7@PD%5G2+OaSzk*6lTh(SdATZrJ(e-2@(iAB@4~yLV`QbbD1b^R&9c%2b zv>o5PBYYh-&B}qq5ZD1N$vLE*F|$YHqJKqBdRh*@xN~1 z#`;LU<@@E2imuMpcm9P3{$~wJSF4p_|-!q-**Y*mp+;P0BH~6bctT#iMgC56Tuk$B&#%X-L z^zQE-=>P_)b<(^478@8fF4E^(dzvBH^>B}=xTL<;Ew9C91rf{_B)eazP2STOvT?c9 z*7I{TUM;N7saTShcFju1k(WPtXLP=Wue!hd=933?*R7k(r^sz|NoDr_wrL(0X7u;= zcJ)pYep~q^z3SqIc{8P7F*&p^F^@@YQL*kix3DZ_-TF}RgMJH+^7yK1PE8Nkc{NBn zTJ5{ZwU~savkNSZx}I$9_T6l0>{=_f=*$M+v?H@L48>z(qUJF9U7nfAzRA~raocp} zyzd`aBH}mPyOo`=LLueX@-3wYR&Tt)9k>7R%@1mMd0*?CRIZ(t?VQ%GuERY`^p|8} zhtY{(_MZpDZk;uIy8WU{&ZZpKn;NQ5V%GaJ@9zEX-K$eSXVvud^PlIgUEJt;W|oUt zQ{csA&y;UDgyt-XDL(jEvu=&gp4YdG?nLdox=GGx@^Yhm*D3R|Huf5Aew*PoT_Uq{ zYw4|?D1j53Uwm@@tt-6#a?~6x{*1bJuiq_(ld+i!>_Ka`_vC)b%T&~pTsD0} zqFMC$rl&VeoeGyd7Tl&W^`GC%xX@(3JuAf$XUDsQ%6#MAIAfd7f<(z>Zku9nimyFd zXVH1ZZrXNn(d#qo7wo-Qd@0d#fuOy;_S+J!BYGDOzy8+tJM!g^-rH%{8|N08ey|C4 zeflDe!}ol@ooc67WNk?Ct)9R8vI%E=wDI?&2Rx^5d^q?{fK%aBQy<67 zg{78PHu?xM(p4b3)3ENyV3A@szZgD`od!= z*F!v?wXAKFR4Ff(ayIHOoer?^n?^<7`*zVKu zjL5sYM*ME-<9@9<&vNXcka~R6Kvit+1@EV zX_u4YjZ5rXo=%HAcU0rg$F9;I6U}Q`+SBTOUgPFm|0iR|A=XC{yZ?WTT9|AlwKL!0 zM)Q)n*S}s?sNiQ8De7D_x9M}=lNnr3InBl64zMk&;(J!rP;yIQk>>6fULRDx$14X3 zMO=LNAzrlN`Tph0eyDycln z@@zlvR5AS+vk$vVzi;nas95{=TQv6t!S_<<;~mbWp7m{eukpc7(C*8=hwrYfSu%B^ zyTRExGv``GN9SAR%k9ehVIAL}lwYOr>cZEBm9}wt*tt$M^;|Ze`+{vb5huE5obwUR>F!C1F1@}%_Qp%~LUogi-nRp7 zN-Mr}|IE2Qb*J}_WzScfyCrx0eaxC^tG8OslsWyNmGgGQB-w=9+h=wCdLpzkZN~a0 z54Q~6JBMpSjy37*dG&s2%vlD%=@fXw}?Vuy9EHp@-@ zqFj95{9UuAq2jH7DbWi|r8jg{PTk7dbL;Zlr&^8GWrzlS=dT%NPSid*qgHm_K%YP6wFkhSP$ziUOxOrfuM zS49>oIk?{Dix8NdCz<}p_|pw3n@5MZOd?l2^_;VxTmQDfwVdbgelD)}yfjxX~tbQu_L~#w`5g6nJwkWE!L=|m%LwePvfplQ%mD^pU-*oKIhQ3=d0#5I_R3t zlT`0d?_Ri)<*lT(>9wTRy+5Sy|6k!QuyDm|_ak%T+!a|RS+}gKJE*W_hqmca#{F^M zHP7t(quf*MRcXn&QjUH7zE8j9(<@EQUGr{=wiO=9E>w3hcbJpx_0r0HmfO;K7t$6M zicbD#azFTHg#Y~70ztMV$_fu2+MY|YzU6(EE$r$4g>U7Xbzbkv4Ybhiow_ae_Dm2_ zmbNta_O{&H+X7E|{l0eX=5L$$JM!;spLdHICmoyh`FNM*RT@Yi5OclA zBzUG^*8ako3;&C=UC2Mgt9tZJIc$vB!Gf)ib@)&0}wUrt0yhgVj^l30?3P z|3AZi;?eBO2JgJy%1vyM@p&o9Y4BpHlKq*x-XHT;Y&$JhczgY~#X0t?9bc|KwlX{- zNn_!Utf)8V3>Dv1P4E(0s=W5YBaY2XS?gp!h|awnzG?q8H`T>U_IAEn)YBAy@#@zo zjsWv_6$|FRmwu8|yUQ$n<@c9OhU=CrcKdNLbQj0Jl$lquawe}^YvHiJ z8+{cOdNU>GobOrfa$aDbo7^%N=g{A4ZYi$jTVrj1v%HO?jLqXfer6J%LVfx1-Fxcz z3pAVmO?$rPw&J=?5)Xtzy=rzvsei%SI-3o}vi~Y2=M~C` z2A&ctT^YEzdcg^GX)8m;Bl9c2RVvtM$S;`07;^Z`5rxj~HTE(tkS5P(i$w!I%bA#nBcSU{- zUC0(H)o{pYkHa1A%-_ea{jC4=GRlV2Xzp1fjnaeLv$h{Ju3o(_U8C;b;jqB|iY2G` zSU5Odz7OB?KmPLL|5l}|cfIWRvpwMW-76|BmNLItl@!;_n>zjGUHDlI*>-2}HE_nVt}_28@yLO<sp;4D=6%E>Un--==0!d%1b zssEk}m2mtiE_898eDdhDuReE@a=Ev>h-=Q^lnFc{z{A+;xPDiqXsZvBei zrS)d!l2KwNC$;8?KGO`f5a(6C@T`<(kN@i80xzr>Z#*}C%1tPf7A zH>6#*>~F}8mfuttcJavSQ2AfS%c~DdSEt<_n&`J zp)O>O$&$;rWF`J{CA-h~|JF7Am&@iQHWQCm-T!%uH=!s0j@0s{uVojUxh8$iM)Ifc z2NuSE&-calIG?lakXv*?WprtI~JimsTj)@;?Kxo)PCy36&u z%0JE9_PAV{k>6hP*X+;BK8AT(pVa@GT#ys8bBpdP-GlvKA8kIWxlp{a)YQBCt+jYS z=cAn9>7NuMMO4bRnr}7NG|CqK%J_84mkZa*?N|PKd-q$Ds&xqG4wdVlrhnWSG^bVI z_7+pIcas9E<(i_SbXLg}MRyB*3bgvL;n0lb^Wq4f4B(T|qgftg;JiTy`^TAxXK zu}-x1p}{TV_eD3hRdTIQ<}A_SH(^TYG-lUWK4bMhX#@TY~XZ5Dgi1ROB8g>`_J#%fzhNxPLf{U>l$KNP&vb}W@jX2gLzgF;$!SfF? z-z%2qiC2A`og}ND@HXGx@5=7@gv`uWFQUc~5L9P_;W9o@fX+lTyjJu-8)MC42h zElX*O*%LZ$Sw@|_{kJys#Jl&e-<|uv)$Y%H_H5Cm|8g^bXfyNJxTY?D&i>B-`jtSB zTo3Je28VcBbQd)J6@8~V>!AAcBVXpc5d7GDGrF$)khOf<9RJpdJmP}+GI8nKQ@6%G zP0bhG8#mv)!7fDEpf)FGb(Wv{Ys=j~eA82T>t+Y{#yT$C!(t|;U$?7Yk$)zKu%gVp z86WxV9rJ4@9&+T}p`>~GC5LJKE(g|ANlYB+?2AuROG>xT?Bd ziCO70eOT@Lh$Fr&thbl1_1sc3 z-M6rCC$~|xtH;jJ6Fcu*71G~Q=o-3U&Hnuts)GESj+^F-u3M~k#O%Z8?NYid`X9`c zS8ls={&bc4yQP2f9$CB+376=y&9&JfIir1Q;q7Myb9}R!Zpg)^Gk>&swpZ`Lk%t-K z%Djq=UH;iyK3tnC7A<K;riY04KAE{)M^DunH3%Qe@CohCFr8_$-=R$VS%&wN*&BJ3 zX0;hulrr1h`O>vc_?#H;dbyR}H|($IhllJXwzC5hR{K0nrbh+a9 zUaOwu-(R>Y@tKued`D8UnYmZY&aUzfRwKa!hZ2-lJ_+T>a{S^W;#es2d*7*x0HiyY^>qxsvY*?)*|=#eVg{yX#gBT#d6uOQpiJ_W5y&wZzoykz~f3dg!>f7UM z9^cnc{BEwl@{jzV*O$uj)cWd;r*7_kT>nGi^zF!KiNDvMt-I8FXORup`!&7ALIp{A z42_FycJI5YUv*)F{PI9YHK!P!1$yg_Z@5qv&b{u8^CR{;*TTfl&*Z27P>T(>Uuv(U z^DpM}y(fF(w{O2!Q)eSr{Qr^3u^T7PZd&#_Xd&N6iCvFM0~6Nn>Dcrn>zxAY8>=`g z|Ml`_cP+jhKBjf|+g-gme-irN3e633TFSDjVrKL337>MI93g(6P!ZT#gtZxg$Onw+cu%DnfBvaGjr%{^xj`@DFw zpi%hRWywGDWR#SlXID14#J=X1o^aB)EZ6JCM>e>HW*qk}O|3Nvl(d<(E9cGQ z~jcw;f&3WQDXWEGxxhIZwaR-a`v42iIHv7JGLDm1?!Ym%a_daaPu074FFTf?6 zmTAau-Lr@%C&6RY9^KHAs~wRkjniIn zNp`!+p~*d46>bK9VcNATpfu6=*46?^t>^yoY+f9Zwg$Bu6@D0>N&FP_Z$rhuxBnDG zV?Iu{Tpd*xqILCf{w2QZhg*H)FRZp)ej~Y=?curV+b>w0=f3v2+q|w|qlk8i&zs<; zgL}L0nJ>4PY;iB-thvO8V$bO-ZFtZ0FMa<>d$Hn^Wc|QA>nDF-yqi3w<7SuhqQx~o z<1H+BlKG!4WbhO?TPmrtbLR~4#Ae|O>Rnd%G@|#YYy2pPS;!H)pmeGFhlf{k_Ag5o zTN-`RWYd&}_WB#W5`BEXe*EE$+MD3uuVr%E_)`ef|E6-@X{u3Q; ze$UZV^Aytw=1<)mM{R@!na6{E({X7F+ z`Fkz<4_(wekh;oBS^V#J<b|Gj~UI#I?i~${+kD8OX4UvFp3z zf0k3MvlxQ^q$frf?qB}?pTnaXwqupA{W8kAcAX3{VeRR8S$pgHDZ_1x6ys+J+*%=E zt^TKR$DY_@*Jl_@r8Z7V$=mhd*j}eYI)Uw*US5#&K6LYIf7ILa*D9B-I90Jj%k}?T z&Gvk${icrEcarU1Gu-+(@ARRkA+rT`sLogx7;3mAIN-y3G36OG%$q05l@wLq-4oaC z?V9ZQnt5W;iqdb@+x@7)0&xmKXEfVrNEW4AUc^3ZPb${U#IjOCuyt*ed zZT$9nW8eR*jMF+H){Z6)TbdQU8udAEa9lBd)T|@vt?)zfpoOLHfAgQ+OkLYon}70F z)p|R5we8I(HjNPnGJBkA7hLi^77@0kJ$HZD*`L`K?`|zv-G883Iq%x*^~a{|o6=rm z|6_4ehAvyV)H~64(Hf@bZ`p6}c+)#qqBl_B&bjtI8#AmKwf~>Ewr9S(q-1@g{CDvm zUjNM-^|RA|&(Dzm_g$_{Vvo~5&7%`mmF)T&Dv}_*ZT|(<=gm_Vw`jI?EJzYxKda=@ zrd*%9hyFi%<@ImjbR)MTDT(vd4bQ~Q<~Z2sP_pD$;ajNOPf6G9f{MoBse_UhO%9!JR%z~|g@zwIa3v5gM z?>J9Yo9DX7d8USq`h&S=6^lyvjb|kYZB;QivhfgC^5z$2QXUr%?n#)-%W=rj*7odV zp7RM2S8A4v=k_Ll_w{>|G&Qb-XR4=|&Gd$&9d6NA?!NqzIK?!U4QJ-3$SzyIOAFDbrHvm+&6*s$%%R8vD|tNoqs+`RLOzB=7{H@iulbx!|| zcS@1*JF`FL=$@ZoHG5&Me!)tYrb9n_eVOE((-jnZyPtmiko!?q=yHd$uGiWEzU7mj zZs2^kr}R+t!<^OE{4PFyK0WTzzQg=8z4Rq!v~4*g(Dvtlfbt>M!xR7i`tQycuyOnU z`tyulHM*WIf-L)3O+^xB<2y*IE4rjQOG|+?}hI z7#V1pDVaHytxP*8Ak^w>)p+MdGt-P%#btlz1Zynd(mR{i_infFqEI<)yOsh=`_=C_ zPOBZAB*Z&;z2(K47gH{1O5Ze4`M7cQpKT}peXR;?o%B+hiPxC7;Mcl09AUhbAL6dR z3|Rd5YWe!@*WYxoglPYq_jenI=FMBlQYPEq#-3NN7V}gK_t8y=Sh%ZL?@+P8#!iko zR}A`QzY}iZIR7&_X2#d#$v5}Z&rLgcXVr#jdMxX1$vXE+h%T16aC6>|rG?>Qc89h; z*yuLF^UFPf*;UP|J;rHia&oeVosNI_kZD|{q+%@m)cJmr{QUT=f|n5{nKcSQkNpJ9 zjtMMZTGz2x^nCD9N$=dykT-l!6ol7jPVuVO;GCB=f6jhAy-<{GBo z+An*Nr!wu{o^31%dFGqu9!&4O5RvWuZhB?Hw13wYwH6BhxBhYG#FF2_W#&GyHN1A4 z9w$h-^JE*^GkpH(nb=(X*8Z)C<-!##nX)2>MWw1-k~+DhxsB^zo$Oei&(-l<79(Yfce^iFftS4nN%0E&6QwIom(ZVXdjJmEM2aK8=^|3fTGKn1*>^!b;CH(lEH1R~Y z^14VRRiE@_mo5v>PY%D?c+F`8ll%KPshFbe3YPU&sd1AGPi|0*G$8P?|-wFZv}fM)Ad@PDVATJuD+3d;d8^> z5RH~ezeDZkn(w<}*1E(stHo^NhpjJ}V$ZON@a=Yw3Gn6p&ij@gdUD_ z{mZrSr(~*fetySHPu5s@9uv*2JD%x%EY?>!Fu%d>XF1oLhx*5yeE5TtbMo3nw!M8W zH1o5F)$QCM>DgD~cg&jmT-`4}?Eb&_C41&uKV$f~F{r22b+7FD-;?J`@0vaL`|Ix) z@7>LlsQsnC>u*}t)(Po*XRPQdK9xDgBmH6P;U8ijdpVQE6~(7}zK$$aUXwoirDf{I z!;zh-+?JN7i@iRDuq)j;+*MmF?Xo_9Lg#Ls<{c|bo}PUkt(sPpzSQ;g+ckT$`!la^ z==7g|Zu#n7zkl|9Yg7XMxt{Fpmgc%$tYULV?XBWAWizwrV(xA7)7M|R^~UOQj@A*= zG~PwgH;t!ll9yTR_~}q@r>XcfpAZ%An_8Qv@;R+}!rs`L_PC^VQd8@7{%l<}15Hc6 zIimNX#dVh67Miw%DP{}X)axp@qo0W}EEnD}{|~ z??h9_-Cj4 zuiyat^wxDOF&2u}Vo|4L4O8b7=Vq@<5f7}cY&dl(blv03uYCGRYS$toLb3{%i`{#C z*XD5G+_;W1-EBJ2H=Z6#T;8Fc^sy`=L1rW+l6xK}D#**L?el)>}iyWK~$cJx?v?zn$s&!YBf&N(H%3}$>B z4v9C}ew+JH-A+=e2xpPoluzNR~Ijn!`j z-+gbSR{r<&{;*>5%C!036Ru>dUORlT^XE_QH~VY_*8OXnduY+oEzWK~X0>h7k1>7U zv`k&=MQqfKNM6lnJt}E0v|WIy)pOErUdYM4z#s57kEu8!g3BRA`Z+Cv)0ps_F4(~d$ z=YZw$-3Q*sB`&iQsJzU{dY1hvk6%yXq^uIF&>4rUb57>HS!lLOMAD1xl=no{-+|Y5 z7h34l#9ZqS>-=gy*))EFd?i<%lYUO>^*Doxjc4v!O1EfnDJ5&g`dQpB-^iDpuPHJi zDr1YdaD&OB#>)-H;=5K_2WosRezZVqU4GNH^h+_x+qtqmcO7-uENi7va^9@z!aLiX zp1q8p&vpmzWX^8no3zU7ymm~;lh?WnHprAdTQcqUZQJhYa!MYnFU$SoUAfu*?3F)H zqL{-R*K6I~{CMh~wK08jdzVaK^;99xIggiLScTW6`NEA|>ntmBuIsD+SaL!8TILs? z31&;S{aqQor+$OX-Tf>_?shupntzm-a+Igb)3VrYo0rZ7`5^H(`{Oxs&%CL=ziV^- z+I8Z}x6hqimnb{wg=*FPRo2b6t`F{12;NEGW&D5B?aM-(o_yVYd@t2l_Z&WG6yn<=--2R~Vc+yK3Hp&cEB&ME>0TI*Z+0?Uu;L_xDYYMY~BA-#jk)@GRr`Z)-E^ zn0L-l38+_cT4^5qXRGhzu-P1J!kH^({F)c~WOvl91`^D|I zm(KMr+xG3*P3>Klz1X3XeFcZQM9-!*X|YWHto(&Px58lYp>LWG z-(7!ZsdPTdq%A6qJ7cP(a_J{^6TOEa%Xsq>W-f`_;C`|px9ji;wj;O9{`v_47RS^% z1$9p><o_NK#<=7NiyPJzE zOI5`TDiiK?r0O(SFgxbEKYBfJze$&#Q~DLoih>jy_Nf*n;>W%F&X{PA^W-}x`b|3%lG*>)Al&mK6Qbl?%-KR%WD;;E}AA6>hje&F23*uxr< z%a2@I*sizA)~RN4e6);^-oh6jKD8EeFAgu=-TFdNSH6oa&EL{xl9chu$SG1)%KMfX zo8G>;+jL3BymP`5n|}8G4&+JbTfFY1{)?m=#y4+;@Ao_RauYP^ewcbJbVz0=d|DswJQ#S?#wq1F5@5+wfb1I+5C5J!$y|{lJ_tkrc z4<^&T#vSZSAs+QNQ*!xQ0FnSpGTe#fjhPDK2y3d9pq$A4?8$bvV3y+c5{z z-p{3*+Bx4Ysl3Ye-F?Se!#>64w->C`b|_wbS$w*`kG zUpDb${9C0R$B(Ug)b8?NX{e5pn40`9m&aT0`Ny_OgzT_;#_VOkW&xMiEVnPv{1XwPW4Y!jAh}1AaO&hb?4(>yPXSD%L?)BLU4`2E)GJ!AdD@y=;yll(%JCu)Cg&RoZQzUCwQ?+wp-Gmn?uI>7uT z%Vyh2MPcjt^JKr?dMnrcv+1YpbNA=}*Thd3b-ZfRT#e2j#Rn&+?L|imWw>ANd{g{%`|I}J z_g%^oaW($~uh!|E%QFp+NUo}{D`%FQ(IxZofuVGrbIp-V*3v~cHD)dGy=$oQ)w@?r zOLymV!C*Vt2)7^chPH2ZRCK?UO7wZI7q|H7jI*tEKkeRVHbpbENpU*&{M;w>>*&S< zuDaU-jlQ|o*z=ZZH~kgJRsU93D3j_pF-tV3J&1Y6=7ptd5nrc-P3~RcD8$&lbmg)m z#W&6|<-B#bWN~S}wK#Y3eARy6ima`cOuFnYm#1A@AEC;fD=4P;*R)ElI;MI04`Gdc z3wIbDdkxLFvm%%Kio?_m$;MSzLN_uj)CLHLazk z$8t*U9=LES>)`I=ZO@);e^YO0ntp7d3-f{BPr0uZt`eRs)xLSNxPl5-6_x+yCHy`3Yq$0pkbFjEsRy4Gkjy^_~CO zf1edndSydsz_wt=lTA8*Rx+|>jmPraCdU6UC3Nmxx_cO^6Zy6ab@SW*~@?aUf1}Z z@wvf=jEvGvc7_F4rZwJ_VwdCEu*khpPy1T)>f zUwd(5>$A z?FAErA5Y)8Iw0VmWB1d=9WQTXO|x0+>dD{cxxC|$FGHD~zD{tTvd2WG^)KEplnz>& zdF0{+^}mUI2P?KN7Gx_qE#bU#%95%-dGXJiBAV4M`tDd%5apZGB6Q{0zL(Q?>ikx^ zV?E^wTLp*D&1cn?I@>;;WKCVk*etM6YMpCPp5)1OpG;2va5;1^yz-S-#3Q!^p_&rc zJ`UyhId$z5bYpM--s_bfwyO4m9B@s7mx&jQzY*8kmk(tNqzzFAhD*R*QpFMc9pb@SQ+r%gxfSI4YS zxhg289J@5`!%_93uPH4e@r(b7xJI@!>V@RqX$q1`RsHv*`|5kccCRLviz2_OU%%5|b2i>_g<|iPlf_*#OdnO`e-$*BxURF)Bko+!_LTJe zMYlzi)}HnCid?R4_E%uh6t)2NCqJETan^3nw9S9M^K;$u?GNVd>-cVWo3T=yU+!IU zNBW-EZ~ZlHT3%`XePaLlKPjyYySsZQ#>W*_M*aKn??JF(h`Rj+Vdr!Ao@{>jYw4+3 zPb}Y@X8Lo{^3uYh>%T5-{#?>^tX4nkw|1CfJ7@i&!|g`PzY7*zlh_&kNQnQ?dV?~Z zZArT`->=fQpS;iQ!Vjlz-XHFAi93%!N==&4E2;m(e^Hh8cl&on%aZNte||T-H(_dv z?-QY_C*S^m>&Vz1|IFgptGC5!hxhIa-yO@oeXI3>+hwx$KMYr}2-rb?Zy5=P&w}d)#&``WM-wwLV1q$=|gOR}TJ9t?v9kz2Hy$ zxBCBqu^b0)ta19Ucvd?@!$ar|OPl+oFKk9eOFY}o?09-X)6lX!Z|+P_2L-Ceh$pZv5dv)rn-f9ZYJMTT7W{>#YEkI6Ijy`OS-|G6z% z7ZY8k-&~V&Tr%G-C;xrMQu)=KPB)$MKfU;U=9A)%GY8^76|R!gSmr)Cv#$AKgO-x# z=hwxPvYa-?mT^q$zo_(AR{wnX{0GjrW-nNNdYAXDe!*66{rivV6z|0^FS!3?jjpI% z#2q-NpUVZlX zW%2EfOt;lkMHf|U_nvcculres6_3_w9!Zx=+Ob)Avk2_(`bTE`Qp4 zJF(kphr-u9db4(NnQ+jt8ifwkz$F!Cr=&i`eiWW@gDJt{n!90><1)>}_Q!3XFT9f5 zu|CMD=k9|!R;~3Du7@VOd^un(xBPC_rB1chc?;a1IJ+DbzAl&{8#z-^eoa-5w9=iZ zX$vOxS1y@e^^}pzxWY3$uehf>{` zW`y6gEi~>Ev^Y^ElbGlssaB^Ubxc1{qBFy>e`9h<+ehK73p|ERd=Gbd9@O+%qqc4l*?)NHnxe04ZAL7YF|DTh`0min9drvj#}nRCCYUNcha!~U8V@Am)Q^KbS< z#{a1)OBqer|7`E@Ul33{p{L~=&#u_Y&->qfTb0Qs8g1s88`LhKvM2N5&$@%NQ*!yA zZY}fHpSSt@GW)-AwQ{QLRX4a_)NfBczU7}!yGm5iC+p^hmwTHgyzrX%#KV5_*;!rx znfth8U*2iE)Z}wmBCU7n)9Y;pi91fpttj_dB9!>X>*Um1Doxswxp6G+H#HMP^nSj& zy{nq__eHOx4EJ&-PGC$4*Wp;VtYE^HEnC$yHhfR&d=t{w?bS%LHH2NU=3dMBMd@3Q)+eeQ~`rjm^sQ+~DvwJfG9|Iu@b*GiO+cHTNIeYRx!(UscomeOYZy!LxR|Ih@%4 zck%gV?rABuf8(Wenf~c#pZH&WhlO{J&%cLZGm=)b&K2qW7c8l}W8n<8xpqGocoaQr z#r=_?Ddbc{IU^u;^GBw7q9g8dv^D_ zYHE`?kaz zS6tk7Z!35$v-zs-@w%xOMQ)sYe7@@lzxeU8Y~JT9Gv5>(+P-)>2lw*VThueUuYPk@ zSygOU5cpxjk!}wr9>wo9rPtZsPgLtWXngjkTc+;z>1_{>&6&q{*K+3B!xGY8`FOc{ z`<|~-l%4-W`Q9ZnPh*ecEvBcU(-OC4h%XFlnC_9Uwn*bf{{#=i1W}gc6D!V4E0&#n z`{8yGr4vq83=&Bm^JaZpyTNY3u6@TVe=ckHb&0;UcD`k|7XKAyX9m|}tVZ^C?>jB% z>|A3FQ9zYZmzao%f$F2oqz5csoMWPl+(;7%epW~QEP@_o0Nb= zm*9ta$rt%znT4j&ja~4YeU;1KoW}$+e@$$A9*{zE*ng3TfH@H8G%<#DGZnt-b;>|GLC@r{jLwq$5g?qdysF zP46tspYnB;h5C^IO^X*DhswS`y!5RlyKZ+~0{1noKlfrRFE~$`@~C*h9ntk=$Nc^# zD;xQD?|QI&#qW&ox?U1#r;AP$KP{E>)%a+s^v0?8P|Kyc#{sP@5Sao*ie z)NHClJfv@D>38p`RF_n=h~Kp2)TuoYa-U6BUE=P3BEo)Fprt)h^!Aae-{&Q`7QJWp zW%)Jzf#YBKGe`e_YV}PsHI{no+R|RTC>(Lh2M39o1^y^ySKe8POc}?s3mDcm3-QkZwNp>WNWz z@%3D_xtCuiZ{2>4zezDd^@&=0xb|iBS<>mOgfivy5pL# zRONTMn_BB~o~5yGe)sO=V!xM*7B3Qhvu(4r{K}W>tfa#`TVDEb%g=9_qN|;=WOC!K zGl#YwwqyEQsaeTc*}3vkUaMWgz9i|3PqTX)iwmODCyQ>IbfEUbiKScD6;9<+PBq$L zA-twwChxOZcb`e69(5A`%9$s7P-Px3>lC?L@1I+!E)hB^YWQwJ;qD0LHGFREr(W7R zEV!faRx0%K`6-6n8Zx$Sr|e{fPd{3@`h5R|k{c8L{irzd@2psLR{HW~W`gGyo%oW` zWA4Tx=+Qo5{w!0sM~8k^_c3TG9qBF8Q52bPzkes&=Hiwg0j%FPUs`!&W{dKq#r?DS zWqd1~=k-S3$gf_MS7`WNf{kD5Oswg4nc2=6v%8enb$QQ@{S<8}v!;hD{gThk*&=6n zrav<+bf2DSHvQ%;-^ZVojTm1akzmpdzuK+KIClrzdjB6j&UyTM?*0;A)w}(eSH?$1 zt`#9S%dc}Ohs83PGo?P7IzcqiN5ts5@QxL7ysn4&v@{vCS3X?8(eq@&Z3``r1OU_8W`yExLs^A7(eXUsWBj*LCyyS9NPk z>}73Jk4FACbG7eVP(0UnO5|U|s?(Y)8x{pLmB~Nvi2+8Vm;qd^6$@? z^YK9Lg--q8d=byypqKGw8dEO(wZ3@d4_ju81CwrJ%YTCc?^88jrX|X3IvIO2l;yvs zSbahGqZyxdKOXXwSow$lzC%S#^QVG|Dpz<7k4fv)nR@E~T;{aq(0uvxvdV#fl)wLT zex>)rN#%@6yGpN$7Ux^hV>>uQ?bcT=HSDxFuiN;r>GXH|vn-w8?`b}}wJz!PUQHP_ z$EJx>K4?t3Rg&WO?~2iiiE{(gE8Z|3G*O=T>*vGk%@-=(9y0&2)1Ps|-ScODxE?(* z!|?b%rZuxBZra@OWS#rOqi&Dpxt};&*ZSc|<)WGHJp!L?IBT9Ai4eNW_K1J-2V1+@ z(_YKz{#O;AW^?J7z=YF%uOkw)Tz>3rTk?LzZFiv$9VXls+r>?`{}*72Td{fBqd&U$ z?fy+;F8Uw!<7a)Oz39Y=;n#k|yB+KLe=_|~=IqAMd`AafkJks)yaak$79Hk{$kG}+h}a6?L1Tdz+!*HEr>q5L5j_BD&j; zPP~6XEV%Z|i@L2kCT1Qt?yK7_o0vB3ng4||60B3I-xs@VnqhSH=+oaT5?dnb=04Pa z&SxIjA$HrEzav*OV|S|b%dG+8YZu6Gnvt|hY5QS=*1Qw@x#zVnn47RjHg0{Dw&eK+3imdiLIjDR94!AZ`zZ?Vh8ufEPC@^^;dVQ0-fI@Aoo)JJZ=b|l-X~(TYEn>1xA&y(DIVLnUCuxLw#7Om((UYd>9%()8MD|= zM%kDDU+a43$h0!<@E}L4)CHAARW5{dfL{?`0v%u0z_3b8Ie0Irs%%()_>n_RIde z{v0-9tYZ77%kT5#E4unBvFG5z-sQoTXII+>Th4D^zSi7fSYRblLNeW*>uvpL?&KTvznO_=@U}tCvabE<)88yf4|;#?A{F7 zNuKw9&&W&r@=fiTt4_7J9UGBPx_2SRVr(7#;F3VjzZH zKZ8>n^Y!lZNk<-TlU{j{ZTn2sx?7D>PbPMz1&CQG-Emxhb5&c`^rgj{d2Xf2u&o!- zId^~7yqJgfPJc}AuXgcSZ0fsd&PjXW(zCwYD5!xuIhX+1Q%vDEZr`jX~XM_5=36QzVIB)!tDIr*np9_ISO@t}QQlUZ=kJ{N|6t8XdOe%!Ni?nQe=h3s?H&z9?;2d-0lQ*UTMH)E#eZ z(YKIr(5^08=WJkLa$oyrir3_+OuH&=HZAABAnVO^dh4c)DcqlTu4`^x{hsHX;ym-5 zn-1@1SpVlb*6lx=(a%Obt99+%4NKmCdf2ynw(Z{)p9LM~T2DV`dx6JaZt4WLXN}e` zf;^UYM*2$YO%cCTI{ow=!zaftzAVbDy?N!t%ms7qF8r|gmV`_~)%|J;lw zJC?dp@|-V|@h$nSA{vQIPsK~@I&%7^{#{Vm>-Ok3ztBCMZEq(2HGkdZ`1kasJ^$~Q z9!?U~-C3{w+u3Nbtcu>&jh|AKS~pC1x#d%eg7*deM;9hNovJzM{>_r)<-hOTjhLxC zF=Wy7AJ6CQclz0-<{woiYdXnmbUIoDAs*4l7>++myZtS2>A zPPd-P6UlwyyIx4E*Rk|9^Q{ir1eCSfu$|8! z&X0n}WFN9t->Uqmymv}shvROR+lpqK$x4&I>t3HUdy-(l;r*L~&mJh=*7LV(;mkRg zr=0%N5clhjLD>Y}fFlNi>)$SLT668-hPG!soOTP&X&rs&Sa@*prK(4!MV6PZJhrc# zY#-b*)0gc}=4pY0QZh#*ia0ylBz^iF((?PHJJ@;*QaT!hkJ~%@a&WF}ULCV(>bt%O ztq@(CiZ>D&dzCk3UAr~;oZ#EcxP4!z7bpa3zS>{1SUD#>#_Gbh`Og}5bSSoj#Qr@c zp(r^g@9ADXL+$+?MbjGdj;@dtduelT$nnt(%50D z)TX(Yzx_m!wCq>)(iT?_qsJFR?8{w#XxGTg$o=TDk2@BoBHNU^lEJq@^uj6KL*Ey7 zI5)n#bZYZnXUh|1zwSx@o;l(5UaLuaWL{km5>~XU`Y`+MRPN)d9}kvwE1t5%KI#=^H9K zl5%$So>H$dk7hP*?l>b_dcuf@vp-ke#<(?bo8vr_qEG*rB;Ul8&ShJbzADPdEox$J z72}n@8|jPGKC73dupJdmn_GG1j`ZsD8+S$u|KWS@VQBy8xzla2TRDpMv*h+WoOkFs zEP8`4fB!GTV~T&*=3RWFo3k|_cuif{iTB^l&cxi0|8U|*y9CRZ+VtS*mu$Ct9G175 zWx4pP#4?_l=@(Nz<>%jjbj&X;S$%Wi9DSLOR!5WVKHppxvi|ToZwt-sLacmO-u|BO zZ`M=ytSa`2%a@w2_?!GYD0In#&WC@u2MDhamTv79uS_?wE&Gvw|Nn^v^+9TvE&r#T zuU%3<^TYr1mH*>;WtLrCGiSp8vtRMQ7?0J6$kG|%WCDTuxdRYBu z8iSVKzWER4EU#h`d}%#7dY{IDYg*2Af~)m37_%kg0s~DO-zM8*(sdA3I;Jv;*k;{|!-HTtIdyZpk zmVHr3$(PB2pUzjTo44fAHp?a@{RI`lk8HO+Id^Bj^hs%hSw;_7u10Qb?~6$FeJ6ds zE45}>^O8GOx_(ZdmgKv8WoA|^Te!3D%aI*!nO(Q{e->^3qvzD1f5_&?)Bp#zNXa!P zG}JEtXb>eH`XDiUVr<-b_9m(<5`*_IW+W4cFsmS^fz|dNVMu znOpdDR_grr&1+NYO7=R%gN?@r%aKi^@&&xsQn{zyON zJudsBxWaU!x9BOJ#ZOh9Zsd^hyq$Hi#f-72DW~#ijfq5%p72=(?ynKaa!>d9rLH++ znr*6&B;@qmbT$c zQ&*ePr8Pco$-$a;`nx|~{>5aVzIxs>&8j1sCY1&cudJUr;b*tTSu4JEI!uNyCkpU? zonp6Fm1|~~u1;7JSB*;7#G8xdpGUU`*5%sP)Kaw3{-Z3g)|NcH-t3KGE z>%p?E-y)Cov;VW-?(x>idCHCTd5VXoXnc}XzbyAb_SDJ6YG*gD`}5`3RyM`6eqS8S zW++|kvtmvVSd?(l?E2E#Nqgo89tvq)w4Z%<%}S?w_VY_BiY_ZUImR#6+kUS6yQ=iN z6Q`Xz_cXgYe!O%(qo8TeyRh<$E53PjZ#3L&cTC!)x>hlDPw-16>#IcqZ=CawFErGZ ziP`)(=}R`_oezaxFBUl$xzAvBD)W6cOMLfcZIQaI5ho@l&a3z)G$C)%-isVHE6(t` z&q`(vJHPIZ%}ejt?PllS+3ISac%|(#`|fllH&ff~E`{vwr~g%$t*LzE_e&?X{HVn_ zwz-uVk@n|{kLY~QS?6nfp!d`V6`tSEXQujZZtpKMnRU4Nu87n_n{O3!9h*$&{r#xo zyvMXKBcMR7xPp28yWX$m9v@oSBQ1HKxAAPd`@h5VnBF3TV z&Q_Mi9W@`crq`cX6Z<9g(b@&ho(A{!v9+D$Ji2L1Vs1$U`(ge&cRsn_KEEcf)n{RO z_U8}pc)RBWty+B_vCq1&L$tm-D|7zZzq3B5CclX=XjZX|JXX!H)KK^uTiDcP zZyY_J_4_7%d)y``5_x3G5y?dYs@9WAuf5@Wd1tao(bkK91#;8VwiqQGev&HtL(7`G z*H)^k@9gH+b%j+^R1*FxY3xkVS}dCI$-h~*q(E!l=KXv4B;LfE_56>IJbCWp{uR-i zHl4j+Byv!k*LwS0=C0-|X^NiWe3BcEv1=xKD$Lx`;LxG)PH4)NCEJZ=9p1U^Wy#42EWV|urL{eu_x|Ux_1}fF`uX}FK7N?8t5m9f z_S>J98HYt<+wb37#TK6veNV7*2~&QBaRU2HfgDqXj_B&I!sY*;%}ITDYr}ep-l=z) z&NJ!mv30NGLx!Mv$<>0C5bgJr(J9|5SS>-u=&pn4&ANM zbG6^57hYV#bu@3kh10)DSN^ZO?igB=_P+7ctQFUa)2d?XyDcl)b~2m)ydZb>1mldD zx{^nJzVohp$`H2*x_(_cb&j8|#Oj-?JH$GYzLl-aEIT^MB~0ZS*UBv?H<}ffTF!f& znfPM6dg#dpgB}(2kjIk)txZHc5;^ue?6}r{qTE%7>)0NTGXMAwXSHqz8eH<7BrYw| zdbBxK-#oU!~6VrwV6-VV7LVjp%bz)ZRhb`ykEv-H) zbKd9dyLac9BA@r(y(cR>b542w``WALPgeNaW!i?uv~ryYeCT`XdXuEa$$ZC2yC%;t z=M&rXO{iWb$U(3&lyCKf6}L1BKd$#y6P3_xx%NpY&>}lh$W8aAiw$dgyQ+N3zjJ?j zeSg_;bSZ{3yO}keTgxH3=|O{I>^kQ)nm>c~SF#3f4mm%;aV^`qYMY|Ro=<+vPBnED zNu8t|^Ws8O>>SCZi?hShZ=`+}^iE%7dhWpAs?7AHx6eN5v0E-q6}*~wVc(n^Jx^F1 zX5RJYyf3!?Z(Kw1#7PfMZ%%7F7<*LV>}L;6bEEEs7IS!nn*Oc*c;&QHam&dk!Oblv zDmvG(J$IA;ui3bKirHp<-nWXr6D-dpb|v0g`Yl4^<)IH()<&+W4rlz}we(?U&ho}t zsnf1qjLVwH+SbUpVph6JOY5gF`K#@zMR{K@2Hn(J|CINx{GZHZwO4aeE>!f)yijVG z9lFM{bc1u|QJ2Ny>kJm`ef%s;$2v3d%=-Ju8nbE)j_VX!_lNnOQJ!)x&EM;?rbl4? zgaC7c8K>X(e`xczIpppjG{3#N@K0ovxhbI!lLfF@5e2_-#d2`Q*fhc!xSqK5gfuCohf9KT1>mv9rwFq4?mI2b-s!HoN~ZscTE|CjI?d zm!od02ru1eI9JzPbq5Py!Ny4+R5q!Uh0dIsSah=Z0k3XF)UCSuVwt=|lRe9#pDS?| z>n}bVT`+l9+j*TZKHK8b)7#EHi~Ewep(840@rx){CMTsxgPbPz>z@|zRxfFes!LJt zo;T4z_@l&p-sOK6c6^kw>+{7^ew^LWw*A1dca2l}Z7tmDerPvXDb{4w8oN!Ejm z#DwfG`CUfA+1$#{>#P68pS`l?iP%@eikH^2=kSLL9u%0(m9t$duenj;@&Tcy*Md8P z1yYV#{XgJ%J5$$3Npj+yr@Qty1+-31aD85<)iXt^vHp}^$<%qDrktzF`SA7EuiAeX z{woR{ii@(Ey{KC=xtl+E`|5LLGY@5Kz4o|Nq3`(3!*##D$$j_`yeHlxA%Y`6&95I3Y+u^-c zzB$!M%;oef=ZOcU-rL@r*)G{Q?Nd?D@lBhb1hl-^*30@m(jvJ|NYe0d>*`&+!69O< zXQn4sp0A$}u6=U%G?D4ipO~r`KWJVv)iu7y`)G^oO6FyPi|*c86t?h?U+J0|xdAUF z=J@e`$ayaiyjk;Y=GDwO6(wt?nTRZD_tQ;?D!U$YJ>%$#8EZ@VH=mmm!q1e$Ca+_E zR^a%z7gEMko*osF@_Z}yXmfV(ic24Nhg5TL%apcD94NY~!xesP4%g|#4yXF$kl>6X zD%RJI_aDmBefmM6M{9}nY-_vKA+BYI`qunnTxqkt9yy==DT4e>~HFR zoMm~|rQ-DU+UvOTJL{iY>M1-u&Rfo; z)-WhPJO5o-a^m^qb0Kk;s}v+le*4sX=$qhw{@@e&Sna>_7NxAp;oi6U{HrY5*KwQU0igETbMKKNc6+sI|V;7n?G^n^|mqe&39N4^6lnCyXa|qW2W(%uH9CZ zD%%_Vg!5s@^wUe5H*eiL_wv(Um*wiJm+hT?eEO#weA)Xy7FQZ)e@{F9`j+zbm(MQlQX?Du0irdw$$x+wWl7L!Wd@i`AQ#F{GVlih7fpB(cD z{`1d#+U?7yA0Im(v1Kb$(fQ-{`P=Fqt)3?AX5e*X?unlqAG+h@&-$(BGAO&CxMoWR z!|vv=wa>Ole!YI4|J?7(n!2U;%LEdCiy1EY6|d_e!9Br1_YnKfU%4f!dJBE+cjvqh zFSGh$nbpR=?@8&a8ymHh@(=0QmMZMaeX?dc-|xGf9}ZpT^$2`3?~Pn|v;DW!7_FN* z{?}pyC#+H5dgV@>LgJQx9Hs3iv)`@Xbzzd=+2u_;Yx<9@?Rc`YVcD~U-k&Un|1a|B z{B;(2GrvseHpfqci=pdlY^rC72ntSY6SFNz2v&V^T5wH#ZtTIW(m5J$4FsA(ip-au zZ#+0Zv;NXd@$(wiXD+?xGkEc$+_39xtL{7zw_EprM$~R>-gEYlVfK$i;bi@5H?@bpP)$J44Mz&lCwB`;>rF()u@C+TJ|dGk-N#=F0ZaVS>ZVC$cmO}%QGijpE#+1 zul?i@IrHV_8$K*GJ36iP?thzMk8x^Q*2H`EuWU>8`rQ14jv1Cw zeZkE+8}`ngYd0@HeVuKHw6c>?VOG`p$&KP{VHT=*Mk{O8 zc5J*STam_~sSxdU`wM^g@9HZ*cJ)=YWYiajY}fS*;(gN*?zQ6j@qhZ8WG4q^I3795 zrnO~pgM<3~*Q(DaTzlC6bJNt6Nyai_Gwn|5tXACMsdH>PKrXHH+;^$YT*||CX?IdjA`yWow&j*n3!YY*OR) zq_Z81YU8@R^N88r#*&n^%|Ux^U5W0{&rdkmTm53y8=n1%ddH%-w);BhS9;4q@+9}Se{WQ$-hF$*-=)J{ z({g9vl1ia@Yo`1+ocTlWnDRCYX=O=+wO;=uJom+7S4vbjY!26X%&K^8 z*7V1frU^+A6RIxMT5!tz4Skk=q(O+4F?wlR0Mj=Mp%(Gq30j7de{A^HlsTAwzFZzH zb?!mj!pLuNlb3z|DUkAjr)l!v8~gRywPNAo9n7Eq&Dt_|y4jozu1E*FSd;J7VbV8jQ;N1V_D(M{ z*dPi);awiS>mc_rK0qz00|Avdz1b`MXb+ z2&9DZzx;TPrKi#A$$_mQGh*L--P2t6n`8Q~sB+b>VakaiDYGleE7odARA|oQ&)8EK zXCa(?YC?3E^wNetd;5#kD~>(*wkE@@&gg5hXi5Ei-ScvnvO7|5Yls_eNa>gz^`r5K z*N&p@)%TCLNTxn;yr~n3{P1+|7SjYNvVDg|b|%^OW4( z_UT!f_L13gPanRU_$Wj7!^NZn)|)Ft7OSnA?szt*PSW%A(zEhER!;R_R_4MYmGEdX zhjMv<-xJ>b)w8C^`59VDtUEn7xj;2-MRUl8FH?2C@tT~jbf28uwszm1xcmG+J4t!d7q>c}ZKg5~(XKi$Y1q94EioU~ z8APvNxb$AW!t@&bZ>p14-*{BGbZ2+t{86J$I{HT_v?`R%T;QS#|qD1=hry zb30fAtXLzCe?9NEU1t{$mvZ*B4?BCFcfF{H4Oyr*t1v|UtWoZMg+!$z1}Al@nzi!SeFmY-%4?}peuQ}Q|GRrQ^x4GBwbFAG7Yj~(CMhWX zoZ~|8w*^8nmz3<9EuF<@_f9*wH10Z&wam6HQU4@+?k4^fvAF4E5VE5guGlndiolb%8X|8OWNT!+ynS|7Ubpjto^J|Mq+eat_YYwWtTiX& z6;xI!P4*NtvzGA8Pts&BopHD+-SV-i^6W|4si}rryLb+0UD&(bsiHDtw|3>)1(#*Z z5;wm-TRKhk+>#=bjdQaD()3=*aH`(ke$?fd*ZYMH(+=3|Q4_y4we#cV$5ni%7U_4G z%&92+F=5H%4=OAE9(-N*G1=$(Q+vUWIX=*`JVnQ2~NeuTA4lPKe7Eae8@1*ZiR5o6zz+f4s2_-eXsT6e)P}TiCc8I zd-qisY5cQvTk~^*-dF$foh*9`X1dg$3))e(U1EnjW9nXa@6H!fUdI$&IA9gm%flbz zeq?i2;+YL6Z|r8b`L4Ff=Kf2o*4?MR-71vZv-nA3xZ3^sH9x$P{`5^qo2``GIrGah ze%7R@{TkJd7X@ej*)grK=I}{_)g?(!%rDd&I)6T(Xivd+KC!5E7hTu_ z?TQKKk|owiPfMFl3hvo(tEO1M1zVl=V6FZNWQ)#CU0_N{^YbzYVEwKi6# zE}l};77`}s^`dKQ`BJ8jFBH<|_-1fE=1PjQ-+85C^EB;SDbr4+POGX@2#%kg(X#VD z=R@Ir>dNIFC#BXhT8grtohmWzE zf3t@@>-+iE$oH zjpw6;pD!*p-TUmWQP=MV!K`}~N23n4rkm|L(`Ei@iuZ*&XPxwyei;(24+ocPSS8AUIgP4s#8Kb?Mfj_{q<&32dmd528csNd9g#bUw8C&UF2vrkJ#XaaV>T6S1sf5y(3}^8JlsF?TQL ztU$l0+nx<;{7YDBr-B!iDQhj%-t<2KRwiCB*d&qB4t$9UWqiAK3m%h=%d+&qy zF0MCIy~Mz4vAIaghEqRJ@I1@(gl3T)|1K}z!Tfc;Jg3Q%?Yo;Qs%x7pb8dc&=vHTD zzJFlb%T>wUqU%>1@3j_Zv-rcXb2y0^nEm?9q=y36$T~l3m=1p^ZZ87O)(B{uf8o4XCg|&B>l)m4xfL;5xr{tAOpIhcO z@yZw97p;Af*WOpgTs{45$cnr-7Z-9o-t26bcA0H$PTAZqfAqTUrY`qe#g_THu|Mr< zZBCQJJubG&nVaSoImYiav6%3j=fpe5J5m}ia_zDNZ(K^{yRG*1&=&XfB+k!VJ7xcE zIcsxa%{x9<-*0a>^vXVtdEUF|d(f-o1Ib)oJ~RJ3THJMeZSR!*x+g_;I(O+zP%oA~ zEp?S^=jmsQ559_y;j6iM{N~k&iw`$&Z1n6sr7Fw3-}F*J-J{3fH6)&7VW#+FB2Y+lc{mJ@QMBYOD*2KUo0n6l< z+n%`ePB7$C67PJA+NhoLx!U#y?)~gCPq z5AXgv!#-{H^RlCEEpyp2ja~(Q_7OG-;k|k2!<6J{58DJhrQ%nmwYpl@obBoBe>0Nwa{2fT)|?^WBwx1%}I6a->uXlg{5bVyj&@ z@6zuHTT{#5I8`PHH@hx9+bXO3jX_{-;>wdXEX+AdVUCY?i{5bwZ96~7@&M=j?2eRn z;r7EJa$ngtEwVdtXnPj#RC%X62I&>J4jB$rNXzE@X#w&U}*%#)W-9shLAIEMRp%5K(a zmPc#??%qmsl5g?2-e$8bW~zN)vd84DR~crVIv=SWc_Jh!Wc+T%!QiGu zz$+m?Kap8qgr%O!|DNvtDZ_B9we1bRW1AZFza88zW$u~A=f`BL9Ul5c+F)okb9CWQU@^eFEB?VQWnPdav+U4E22IV3^pokCu~GA{=8&Oles z+MwBv+xVtjt(?5=!rXw3#yV4e7NiRv{TqDgw{Lf+K;+4?l?e+9S*AA1U!L%x_td-X ztCq4q(%o~Cdqe8a8!PhbJ??F})|wc1$BOl@%tHIMzFL_=;T5X$v?I4AvDAzIHovK%vd1 ze;FAnIy&CdPi6OgwpC!eG`HeleB8X6S52iXAAi*C{M@d`nCJHTkKlSAHv0zeXWR3i zSDgNI&+s1W=11*inxckE2E z-gfDdz|rhCZ6|HZtOOfxTP|O=>Mrx)c}-Tk1#?U*Wj{S^Is9&cTj%-tiI(@0JuO38 zN?MLB*A;DkmHDb7e|>6Z^dqO%TYoMuR*JlsA5`vpO3B}4PqfFLXtjHrC%zDjd6Hx@ zu_-a&hk3T8bj4P&JFh(EdDm8NIgr2N)5M>N-ugZ2p^JCge6H&`_?fXdQ$T;w##fCt zYYxe-{JCDNdrk43^(?RB&ZPe9s{NuHKTVx)-V^@$Yxg~w@chih)G13?Cur-pCn!`b zvtapa@ZVxVIgf`&Tch1N`HE%LHum#oyiIOUFu0QWE6nf;=dT-vrvkonI0Q8A75>Zb z7=OXRqj9hE-_E)(IhQ=^RD<_aiOAm!ocKvxweozD&Ccvlm*?`2+M*=q?p(h8|K8kR zn^pZw%hboa^#Bs>umsEd- zn_7*x&5iyZV&hR?YX9TrpTB48=6^G5I3G1F>==99yVQ%uA+~9zx9`c$xT4fx|Nmi` zZsZ*?<)061Bd(WRniJl+$<3eZ1hZJ>@z#d)g)uI7st)VK{af|@khQD%?27esCdiAr zIlgDP6_)l*WXjCuh1Wt@+%J$Nf}$|J@QPj!j0#_nEqeE>BK0 zc*|JxUi5Z_}EhMPhG7SrRMrP>7BffOWosU z*X`XU9Tvf=S9=bqB+s4J*see8lkM{vvs@i=Eu$X@CqA$K9D8!wac5q&Bya&*A@J`+ZTF z;e3${54m}F?ULB_z?IumOmqHz-br#{$D|K>Oh}5nXK*0za>n6pmvg^f+Gb?+@67uZ zA5!~gyzx$4V$1MRkmttQ+P|MB)s~-X|M~Yr$yGj&sT2QwtMT9eCHZ)kj(^s^#SK?hlccFTRtI!`?IT=dr_gwi=xIE*Z7&(j@QI*FMVUT=cBH zlvLolRn5Ep%Z(k&Ho0}xT~d7+V&P+cWOB`SjdFEc6?44_ArU_!8&3so5u2|*#Up8R)Ocup|j>VK|X3(wD#D>hiw6n6gntJ_+ubK{i1zVQ;^mHhS6UTf={>oGIG zrgK_4UVUEQV#ieWQ9ADq-(Mx>ao;^E;`H<}_ zeVYsWlGkyrZm_@BS=~oRKC`87yf75l$R>G`{;a*n@8=< z#l)VN{%mUdb@H*1$?Txhj~<&H>TsBR%Hv}0#{(k(O#Jc#$ z%30o`%(vo>@khTcTb35*m!1Ek@k`>mnejHVve)++Fue0*t$1*UNkiZU)3H-2D(9Kg zHGQ01bCn)Ox7bB>UmpbGaSa{!`8vA61dOQLcSrp3=<;7oQ#6Bof24 z|LA0XGh=h(t?RytRZ1LCK6)ZbaDCz-M$4nhK|h@)esxY>*#7XsLH}oKR{s3-vcX?W z@yonNmw&4Ar_MdJq*7nhMRwuZ=kw&VX6P)w$L#c2&%<^`piroNm|>+IyQ3@1zl`*Z zswZEJO{G^v%KBY0?0Z;Rt`h5`mNEPLybYZ>+xBmn>%dzA@9v-Lrja#iyEYOuVm+dT*a?n&@(5 zg>doy<(o@0W*lphXR*%TT=ysQb8O_Q%x~A8Tya{r(3N+$B7vXG&(g<(8gQ^A(c+W|uDi zb2V4Kf0E(a4-|H|*ve<(O7)&Bo6vnUA#g@g6HxmxGMuKB5WeN%H2W4rc$uk-!2 zn>4%Ewk={d{IoX6VYSytz2*&GJS)bn(NCMN7mNfQ8l|5_)^j;(yjcj zrt;E~w5ydLFC<%5N9U+6c4<23*BQ4v;B1+w+2zcw@61nrtLu#r^~|est8(k}%J;H& zW6XTH^A-2|2Z9Pk#>eN-;*8+Nku{-3yW!FM_%`Ww@C zCM}RkkXB`wq@p6hA3Sx@oYgmyLcI!{xUVqO)U=v4xg=&EJX=}ya+UMfehw3!g!q&R zZ<|eyytMh4bV}pN>7Pd!7Z`*HEc0jV<78sWoUkq5cj}uLhA%$6bZWh_)^}Cex}*zN zN_I}_y!I-%=8{?9Tc>~BOl7+x<{Y|sq)I|9eHOhf-gklhaQmH>X+@GMvdjs0Z|Cm4Qt702y*qRH65rQ?Pj4(f zf68*TnwHRm8*2{vm(Or0ZhX!a#LMCLDsl}6yGnAv4UMb!PRT9cxs_dN`7fnVVWpEW z(^d<QAL@;CR*)yN+ z=EU6bwp^20__peM*V+HQ+DZj8le-km7GIoypl}uIh0}(tN8( z*=*<~%`0He@vi>v+g|%Ofko4+f9~?_+B?^Klgj;b&zE04DQFq6{j$l=u9|q= zy(T-RXX>v4vvl!quU?qHpSaoCPP>J}IQ6{clznRQpPJ`v7ILvpZc;hc*E{3P=AG>o z*8d-Bt7|@YXnQI6&|c*o!+!fOQ4Iz%E{$7+J3h5VcKF}(u8I7^ZF;Uo+h4JN;=7k$ zy>~3s3~?+rpC9^dd*`ywXDd<~dW&S=aIREerMi@P<(`lov#;={wN0&?|3)BC`RM82 ze-z7WMZDi6EIE>tyet1fg3_^w6O(JVT5c0P9?35KqiUvt5cZSapxQt?GDQ_wViAvz`iHyqkB}=Eomi?Q(e< z&+ZTP>k_)y8h5{Tedr;3*>3+K0ruPt6Yf@Tt$X_W;7#?}WfSt3%!xXX*RiVI=CjZ@ zkL3sRm-xo5b(n2=_FCm;l@FfH>vBIy&9$1-WG8EoAKQB3&Ff9?kCgRX%gtbnQ1Z@e z+4o;jW06fzf4@5uQ&$oTQ_}DM0`vcU*6390u|8K&+N0`O^4)FI%hk5(+|_=* zIIF@}i3+CN>$?+kOk=+;eRTcW{lC{)Pbc*b@_BXs%)z5Ua3^y^-j zSXHl^o~2U%G533(yG=%CNR{bdtuSZL<$6!PDt%%v%B;zrWl*Wn{GsdI>XRaCy|0$+ z)({NT`7RmfFx6}A(wi$-l#0HeE*8_Z8zi7 zx$pfkuAC>okmna${<>XFZ*ztFc`aC@rHg7eYeok@RX;O1Yx8E`h0SkooZqOmdbim0 zsiLp748Q(d!c<$c_)Vf|(v+#9-}9nozj-lt!uA(AH&)N>ohE2vZM^#B#Gc7Br%8k^ zS))Ds^Qyb7zI%N`Z9n-OKl?6Y_Q#C=hdh&uH=TLPl{PEum5uo$+p7v^>VBS|CC@En zt}fQG>5Guo>kX_kKk0g^9M^d9VrIVmafZ0ZANaprV4Uju^<3wLIfeWG&OJVbBXP!z zh08)&XFcEAe9bxJ!b0aY5mVnJoUPscGVokjN|TRJI9uX-U6)<9w}ZkAZg%W{bGUES z3ystmm5ertXp`oNU;ipD_}&s2xaAwG(5iePI4~nwo2e*+Wuzc z8$QkD?#e&6J9_;#Tp94IGv@tDvrlWC=Y0w|FU{s+IYB9~TJ`tCZPtA^7uV;USh4EH zA1McixRqTwVP9W2gk*_+IseVau5JDM8Q;EmZ>_CXO!0265aIjadT0FsrHek5$&*)A zA6?QCJt5I7EOy`Z&j&uXz1|+E&v1MFq!SubYuge64}EN{_TLn0c;Kwn_xx$%ueSdS zE(|}=b}|3-K9`a!uTr-j+V|$#r8j@JZTz*baqG^Fm4!Z${>ze7oF`0O#=<{ak3Z3E zmgu#^6K-c`>*?4#{E++C!X;L9#65}O(4&j&*1e1V1qKQK+0n+dGwMpI*S3PYsUccZ z`&2)=*NC0Hb3|7==%3x+uWT~%<%e%hF_}GmRi;71F`EFkpmkebzvOsw>D;xIF>+zu zi%&(`X(caCI4zfdV5j5UTWUwmfBT-^F@Mp76`UK5m>qQ2KKY!SW|k1vQDe6}`RknU z$t@3xP8+p2Km0I}L3O5z+3R$n9e$z4|LP{U?Bp|w?Co}nzj()g&dgPh*h6QuE?cY1~M{&nRlMv{r%~ja8$^{8&UTkoX<>P z`;f`;Gx(3G*+sEwbEVYY+_Kk|;h(Xs?$xf$o(G~48D0@0PK)_FGOjqb^Uk-5$Cpc=JD#`J4G~3LE@Uuyk%X-d`ut zka|C(RrvSR^8)|b)HC<*-Q_R#S#8M`*}UWv`)VJ&Kdg|u>yG2f$!i}+wC>oq^>=o$ zZ^HH!n^dxS|UkxOCZeR8lPZY!v>bBgqUmf3k*2@`C7j|6E}aq_AGZy?S-e0 zZso0&-d23oTCl@-*-4{Et}9nhPib44oMBOWEaGtQjGc|y-T&vzFI&5~C1}z4(ht_> z*ZSSoyZ`3Ck=539pBAY5CzuO7a{W2CnwkIS#kvnW3;ADsnz8@o&y>rr>TbNO>}8!4 zcWX)Y6~{e_JC02KKiS|_e;dD(-PI3uYNsE?G~}~~e^Gk+?dGI$w{p)NL+0<_u{%@;mwa%esWrAyQ6A) zblmoF=-<27e{rL_Ad!eCuigsG_Cz~E%VLF{Ey#es$Q9Lx%fHi__etG>Z*lTA4>`8ZX{?{4>KQd(=UXLT{j)ibdsS!X`H0weuVbil zyTekgtKPkEaj)QPgG)P1eYb=)L{xT_*yvthK5x5GP&2Yzb*=Ti>EerBExDhRd^~r* z^Uhh#WhH0JxN1!r_i6q06BT{7=Hd0fvKj3!B6KSkrMQ37tn-toteyJc*eQ3*&CH<_ zL~d$7?7e83_DJQF;+CS7`rD68`Zg^`*6rWj?N9mNpWEkh&#dRl&a6h>`3*8ro2obb zZG3+rUY}1`^p&8R21{vVlY2y+{Z`)g&^Z$}tG+A9Y}DSMeO`!#H*soS)}j4ZT>Tl6 z5}PN#OWVmfSu3;PjE|7}Q~5ZKy6eu}j|;+gmEX9noG)vvDyiPDx5j_txqh?$8;6%_ zt;mwTnf0`~=Sf<{>^ZeMBfoxH z-MRAIbII@AfNAG<+1KyuH++AVRY3Dv&-L}2Q|o3-d&4NItvK)6rXvSVJ7`xK8Ky^m zzsmdN)qVML-OYPkuV4M2S{FC_Ox6BZ9Q$~B*j`u(D)UX*@nhAErX}9zUv_b%DYS5W zn`3b&yYcRd&l*ox|CTwZ6ma>}^Qfl1)?b>KHpITGo6Xm-`fiZsx~mg^+RbiwDYW|7 z?UFV3ZmfGNzPstF*4576_TCZOK0S3T30p3+QDyUvOu6&#@tMB&x1**heK%OX=HiZ9 zhO^DZTDr=&&4~FVa-wm*`S0UOuIdKvKUJsHW|q{4GIJbW`8HzTQ@(te#R(=K=Pho& zb>ZwEy$4F{UaS9Pn0Q1sUC1<2dpDiwxTSz^;QP<(eJ37pRq42NFnpSs$Ci(EpH9}L zl?s%so?oYFlgXp3urI>Pr#$mqMQ6_6%$f+Vh7*rXLd1gCq#DQ>DQ9x|va-GK)HC~e zz$eEh(^vT4ljLcZCY41SmRK!#U|!;o?3@_OqPm%jD6t~RerPVJ_5(GBLAHM1wANz5!ga9KdC@}ZK) ze4bfn=BUjUzrgSCxYgNH?(FR^Oj(_BKUO9-ncm(o<8f_J{?VV#(_>b8Gu%w-o3clF zP0Ie8Qi3<1*!izmx5>c9L;sXqBcJt@c^9nmznD9D)J2OODtNSD?*-e3w^lJJ%j^zb zeeK1+$*yycUzGg1abj)O)`lF$is^=b+}na&CJj5m+<6ro?jF=?c?LR zn8my9eK3f#s8C9u=H`62$NJDG(~1_JS4xLZaIR8v-ms|dYvAdtKb)+mPCmzU{yg8Z zS%vv((Odc}t|xaaE83@UDf*L9eVt<3T#sepPtGjelp=Qctd7<+o{;H{r;VNnv+*ss zA+mi2qvg7u8S%3=X}r7FAXDDrGArVR%A<<~MT^gf-~AR8exi7TdI5ia59{3T1zYpk z9Cm+NuGppLmynhCb-RIM$^U$_-TC7GX0MmHapT_^$4cK#-jlplmTz6PDK6vd%Aa@p z)ZaB8{J6-Xnyyn_JIbCvM+K+F- z)A!wZrhh3Z_1kY(pvHzgHBn(fU~wAi{R(vC&a{BZiU>q2=_IuF>bQ$L#XMOd-S_`+&!}ln?H+v zli<^^dVj^RmS2#U>y+aj59@$CCzjlH%RGJS@lEf`8~++KSFWm1e6gzgXW_r8R_jfV zeCx6e(@5*f)URHZtSa!1%Vt8r$&G9Uug}&?_$}gFb;tVqr7LgNYA)O}H{i?(;Weqt z1Ll9?dMh>a=wjPLFIP;qe_QK(x8TCtscy%fl}}CPW8KLr{_Mg;`)dsrkC_yCZX~q? z{9K}6>99OrW7ap`YfL}>7RFDx^`VH_D&O$-g<{YBKaPI;elfrB$AfJCC3&3Hi(c$G zIOCNfx3j6iutI%=V)PF_BZ>Y;fn^h0mCkIsAb&FQFT>(84fn{!Vc83k zzdHtIFaF#-NyAH(x^XC!a;I@y`H(bi*LW^IDK(hVMtc@Otou(LR$vy$1~piaR&&Df|d zvNp}$(LiQ`m9cxxe-5AZ3<8^F#Z$RYgf>t#3J=dT==T4h$oRrO7ucX{b^msCs7%D5mtao**t zn=Y$9a7h)<+!;2bZa#3Nv$dUbw39|B%jf!+&4Jo-AJLW*@ir zq5DfW`;AvC-kq!v_V2v+=oGufDznz|HCM7G^JafxEt;iie%5a?ce{wG*5^)ptt0yx zp3YvRJBRlS`+^mH3q61FJaO6k;fvk|_Lu`-IvZ-+zprh0H{lA83UVr|@%~Qd=(eeMg7uP<&-IF8CBFtC8xY2pN()R9uw$cB; zuQ7XZb&~Gxy(^u+*?BCmof300Y|g(M`z|>wIepDp%ST_+eUWUj;{k>&0V5B6-S!7| zcjobjpE|7jW=8Y=mdo{zO8W%N_ZRy-c+R&;=gq|X|7ZQ%oEN6OF-mX8&-HrpH$kHQ|vE#S|x>NZi^JCuf5c+t>0&J>A9Xj_FK+b zb1Gz}m(;}To9?(xmJYoy^~~twIT`C)v$|L(t6k*y%WBeoZmUJ9=F+Oe=}J9(?63at z9Ip9p&i3HQvEP0&EB{HV8R5`9%(voJ6-JaG88+*ba7(dGYhH!O1xy&xAY@|1t(l8;i0mlPJw z5<2QD6@BN{n?!3}$t6pdusDWpo0X$@S@E))5C5mTIoJBMTPK`)xTB`FiDA7%F2A84d++knDVDBxlgYBy~lL(h5va~mCdr%>*CDbP7bSDu2Z`1sg&96 zH>vYq7{5@@5{=Yyn&+iGNp_3PPcES<%P&R6D}5{6+crErw^n^7o6>DYw%YQ9+*OJx zp>KN*v`v%dQN7^!G~c>$AM#aTL{v8kBF{p+C%bD!>pVl~-Nhoi|a zmsT9&WOF(8F4*Ap!{FP|?jKneDNf#`uPmK@XGwaCklDBN;3Y{sFKcheH22K@W67f` zQM&B?Lm5Gt-xf^~CpL(PnuIcbJMVvQ+58LrR~O&d@O4JR`QMk`GWJh9_3~F${Nqb< ztCsIkwXW=n-}+?gU3VE{KAZ1v_pi=A-zIx9>0bpy@7>!wzrV7sJa|V@ZAH$_r*40B zyp%ugSha+wI!d6p#rbf{s>u^uTn|e~2fawD+E;6!J4xR2lz^gsQRgp>;`gp|X9wH7 z7QM(E+tB~R#W%vKtk|*)%s~7LLX6dxWRVVo?w=Qms4l;Q8W44*#=cw}h)i>SJdBTiAYAk#)k~-7ntrJIXgVoNZC9(FcXUJqK-`^WN=> z`E)y9KT=ndJM#$}N|!_1$8;}J1oulq*G^gMhUZ^1odr5#WD zf2}L$_8Xo1TCab9RoOegHa@;(YX2`Up1E2jyZ=nbgzTLWLYq!Jd#sb8qQCRarb%i! zjSH4o$?Vct^LA_fsf!}3BcJEJlI2|>(P`hJJ^fT6|DR^tB56 z<}LnlFZRpaBV7%m^H=>~4|;K3Xno?ZH}juvUSdCGiR&h<(Y zXOFW{pB1mN>n&Yyk#9rmwyB?;y0@;++8FeypvB((e(j&c>ieq-VtuEVEcH=(dvc;? z!P_Tps?)M}tWa6yDrWdyv_GsYJ84#fz`@P&6(+yAndIJ_6VblidH-qS!<7$r{`o0i z@o`J@^qOc3O=-dFeL|u2Oq;GdzuNdp&}w0k$JKaiHs-i@jhBACQ{;c+)>3tU_FBcVQBdJUrzP^yaoUK8#HcfC9hue<6`cFl-Ulu9fEI|l{B4VyV4vgc-EU& z+`{PX<_!kti+#`UVQ}1Bp8AW=;!%P8UmK3;QcsHtf9~zrU3GU7=h9zSf3K~+U$w8` zTxDKu{9f~q%s%p-?GGP+EGyglblseDYWE&zdM-Dec|POl+t?Dd&g=J<7X23#`=X$6 zQ(wn}{rSR&Z1PW9tR`( z#471Ka(Dh|RlRGJ_TBKm;7)%*XgkwynSTA9w>V<_<$CtWS#|CH=+*LI;pW_EuhQyG zq5Os2Y|E>Udh*Doevs&Yzu;}g=J?ln{$jk!A@?^2?2TS~>{^?r?ACRQlHGP5dH0An z=O9riq z&Ly18a{Ka=g*pKO&r}jaL@QS8J(kC7wm98edd)S5l=SU9TI-bEO71L-I{aE%c=AEV zNkL(ne?#Y=T6HppjqG&0&eFU{BlV1R@;8Ib;Kh9WGfsP+N)B6a z{cg4Yf(y2{YvN?nnd7&69e$N0H~GC>8SyN8-FF3t%)d?Ltx(pTfNzEgCi3Rt-pPha4-rrgjxx%_(n z!Jo5>N>=TeyH@M^iH@V@T)QoTcm5WX6nuP1)lX1(veyEU^(QPw5R=!nsv&k z`-6GqF?Nm3`!8}YP7nQ`@AFwhRHS&G`@5sM6_(9K+jBl~b$iQpT5n5X(G<`4qy8|? z=;wvE_8VO;e>k<=HFasFoA`w53bR&Uj*bdrX$qO(_hj4FRGlqN8Fk7}Kk=;FEzII2 zJk9IJNnz2|-)H^NR;oSd?_c~@Ki@><7MCI$=)egCT!L;l|v+1m9co|)%x|C)n8I!;d#4Cv0kaCXxriOzp> z4}Hy$TeU??gBhI7y^`M#Z(@p%TGV)>Nill&WyR(b|rg$N#L%-mM%816k*}t89!hLu=e&Dmis_@9Y?4wdgQ5bJ<>u+fOx4Vu zAM+sprP9SGox3isccn3c{2M#%fk%0RfoGQuCQEu6(~1j$us$@28-shAG0os zahm1K<#K<=-sFRaCyPkET6*O7^W^T=-+z?n^1kesW)n8)zU<6@ZfAw(Cgs(OS7r0hJfV8?K>SMP47Mfn ze=S*Mm@JlHr1k2z$i7Ku6Fyi+)E<8qSQ+R$L0Ik9Pn9Ry3++oDRX^VJy5iUThTZYU z7;d)Rh}2qewClUUkv~hD&3hy4^1dB(!>&%bpZ;mbg^3D&9P{Lf#zd;516{r|aM_+R^(XsQ3vFE{=# z^tgHS!qG4HmnU1VD*xoorLpHz%v|G^V?2E<0xQ&>C%tcNG&`(lv{AsIS#V;$`2JnV z(%D?x zJK4K;WBscyojam(edE?8GZt=XnX%Gum5!|L)pfpBQk`=+O%|K0tymwnzS?v{=#kDv&7GOW7fdyNM&69LY0+8xu36f7 zPSD0a#S5oBj7u)Bm^LG?Ovrhu;gm1iUaUKn<=i`W+0CV)%P;N>=Uo>g*eWvn@}072 zrX9XM+(8q|7dU9Q@+rNM%X_(H>ubH`_F4SX#g~emvuuz!SGB}!%f8wgnRz?pcE1ep zOLG!^=extC(_#0vep6YufSuc~7pxG@Skz?o)%)1%r6Q&eqS_ATW-NKc-S$^d?(J!d zty8xIt6g_g<=K28G)FZn>EI9R)+;U^1}ZOOw@>&hplI#w5~;OLIFG+p@rH|m_3~eO zXXGX2fv<(5Ts~>;vZS3OeQ8JzTLGh!+b*~DAp1{uI^Any% z{n3^Q=D#j{i2vo|BnBI$BMN^UnB;kqS(m9hFmu-m%?{fdneq9C@hztrN5fX^K6jv} z;DaLHy`Zk?tamd`aZY?3Y^S&APVACP!f(#)U9P^$LwM%*1$TD}EbeKVcIEaR9*Y9@ zlKTa6)jz&}O4_$K`qTC)y<9(o8s{#2e~If?_P-A0vnv#*oWIT@>2*(TPx(Ie$M*#^ z6nhq({@9UxB5?7vr%Oxjs=xUk=ppv1udL31k>OJl1H+bo_M9j8x3mA>e{{k67Y@G{ ztXcD6_U5a{4>zdXRiAO3flE=5kX4$aiSr50b z$;!;Wubssiwtb1%LANlL6?eI#wnzNU+PdlQ*VE<2XZNK3%(E^|PIlhAk-Kv7f4@IZ zzgaz>{6FV*<+{f?(|;EJVn5H%#&C9_)W&U}zc0zovdYqa@^<~AY%kfh#nx3)S<}y- z^Sfl#!ZQE<-IAY=RKx4IuLJ}N{mBcMZ1e8v^WC8ev6{_G%^hEL1P9z-*?K4XVAU7v zRK0-y<=(HlwsWd=`CsyTu*=&6|On!0Al3RFygIT-%g1oic&f_aOR)0Ic z;I5|?`-^B>*E?LiOP^kK@;u=BE9348uUEObE}x^fgsccT;acmu_=-s2@v2WRZpE!+ ze7(y3Xl(9-z$`&?r_VP;pLi%2%o1>4E3n6D;VaHNA*;`BYu#(k6VY-?p6(L;Q5Ly6*yxZDnF z?cfHl9^NL;{fZMp{WjMyo!pRgmhDBXQfvo%F`v6`L8wvo?AK3stnz!?$D7%An>Qh; z#k9!FK&0^+=SB7_6?Y~+e0c2np$a1=35|_wY(?v;J4>pRc;{J9&TzV@5$?vKFX`eq znRjK2N@u`D%Nn+qM?X){J`>#c`07^k@639kLgHnq{>f6WEFZ~8T#Ws&!p1 z-u$VGs1{aLNm!k+`;@P{Wc8!e`+s^>rxY$K5P0&^;aWpo{z;dD9y>MFZ(ia8TEUlE z7)-Bhe|0xmWZ(bSM`f3Iw*)WDZohVRR{Ob}f;zUJADr0Bw|Q=tQ|ZmHVr})@>-eKH zwrfe6{Wd}MCsP8-rp@a*Zx{FYz!?<|_eQQaX@c)`G}GJHPtxzV0_eBFwaway8O3#Xi1^Vx1L=Tx6rsm`jaOib1?UA<7#aJcu9 zSCj*Dj{cga*c-hRG0XM8sBFPJfdMO%LHwiedP=DFKf?K&%ws5Cj5^GwfZTdM$I|Jx@hGEr}gh6H#h0WGfn4Iuc#@~&cAx^ z0Ndk9#rNC z?dw`H@$Of#+6gNE8*k5ZDm*H`L~nbw;V#uPvqO~EYqQ*(kQw(z*4t~3x81JlpE@Rx&miNEA88!aF|olIb+J&D=g0U6HKDo_?O?E@F1i1 z`s4KaoBUkz)(tw`2i4CQy3c75b}#8ZdPCAMa`Ub2O)Vd)r(~x4@O=*wk;`m#)J|Qx zcjxlP>G@e%cDu~yolI>1)cxmchk&?u(~25*4<^Cg-`NiC^SZF%lX1nG**hC}?9Ewp z7oXF&;d`s3`t+q<5c_k+%!sdX7v4O(yKMa?z8^Yf4Y5pC=GT>M*3VlaFXbm?>c5lq zZMT<2+2l96m(q9E#R%C=HV}RK?5Eo=Q_d*!0@jDyUdXihlwIx0kvl78wdabDh53}) z{%cdVnV)|kwazSJ#=(6NtR+8l66@^^kHpG%-~O?9yXcW5E*E*{&AUZjiXAiZQrPcv z&F6=6o~Fp&qv!VO*BkB)`uO~rob3_2zGbN_ms*1-o?du=_f22jjORBlWVcqXY>%+j zd35nwPS>epV-F(t%UdjV&_Xk;~?T`3&o$`N`DHRp2>akk(#^ZwwwQ)Cudna2rlnQCYE#AABNtE4%%~_nU1wQZ z8LYTk|MIybHt#~dMciD}lhwM$`SZpdFItYr>h80RsV%)?wTJO&lHua+*)iKD2sE-; z`kmG+&hUL*USM;h?X0W5_+O2p#U5rqd*A;nX|7aVXBLxcGi5r@kBjXdHpL5rzuT?* zcQtDJ#_x`YzD?I%u;d$)=TvV-mU{}dPba#?dTG6zC_gPZLg6OMdKb$zI`4cswZt@U zs4WtEc3s!GZj#kHPUI<0=sesw#q@J*O> zh-bO+jj!AbU;GY>Tspn&)>D;tN@CR|*IvvsTYdIx*1Edo;&lNp=N`7+R`K+U&8B;% zyU$K$@!rGwcf;Gx{Q)mSFYV0mu6b?n<&n;|EiLwk&wIX&zA~}n3dbzTRfWy|MR6A2+>J3`pY@&MoweX7pPRz6jE~PJGv4kJN?0zH6nbBB>6N;z zFFnoMt%W}aYnpvk+vM#TZ~A1_%pj}8SIhc-|Cq!dCTmuHB;aY+f!mg1Z5hGuc7`0D z-L+zinB2l6d8?Ot8}iL%PkC(d!$?vnuSn0?@B5w{JB7@tTRQa*zuRZscT2%LZ=IOb zm-b%=XI$0aJZqxH&qD&|j(u38dNI$Uh=0|pk7;wK1Xo3T@lNL|zr050?E3PeqSvZb z3)l5%{^;dBxi4{&?#$}6n-P)C{6b;n=dRsm*!=B?044r>m+d787lq`1qL%PwkF-HntAY27;>=H=&^ zHQ7>+pW(O=@Ww2DO2Krk4tb7SdtKt=g_qvyTXTA?nNQJ<(1mv_&+TYv@4YC0_Cl%i zH%>>Vs`h}Xe>Zkt-F{v&;1Ef03IZ-@MCa)t%pWjPk9XBu!d=tfSR@T7126aT=pV z<;fhUU2$wdN(USs95w6PUQj-{ipRa0XYy>Jb8d>!KE9@1m3(J|> z_H)*KKK5quOMaO{o#~hEdHHqc&3LS&q-b(WDI#qB*7eV_wP)x$dar6I=(jreeCGE? z8K3(9=WK6^37)v7{-9c}f9|y0;M2vG`voK1OX{VTwmpxZ8CD{m9^%m=w9$KpuyeG4M`YBb$ZEWoQ6PnhkZ#y6H zkk9dH%(U-YBI_Jvc?b%RgW| zyLh#?iE#Ltqf;(_U)86&D5-8u(*Ndtcg%n4{}VVoyLZR@Lld7}n|#I7pz++N3S+BI ztsm`nyYv|b*zqNw6#TIjrjIhzkRs2%E1oLqe|VdgBQ0CVdp z2StnO%>!TFiaR`G*}8A7a~{Zv3*NKYnsNF@s{C_LOWwzl{E0VbPiN>_R`l?2Tyu-& zM)TDgZ=z2!@YW}(RJ<>9+qGkJ;O5_bbDOyqc7(T_w*1(1u^>^+X7xAr*_G<2o=sbN z`q#zHMU8W3r`$`k`nL6?ot^T+wHuf7JPga5|K-7(j_REkH?Du&5&8UkuCVcgqRVCW zaXV)(u9~-ue{JB0`|c+TA12FAGy9%;?UPPoU6p%wfq>82TOP+^oqaUFEVC2&Qy?o> zmhvv<#$hMLi96YIU(Kx25k9vlN^j@V$^^-e59G=U^-uB2d$t{|_@`oeqJ2eR-x8}S z$8rtYJT>e$nb^GAI#H`>(m{>5Yb%P4v$vLT_2=c8ym+6IRe9%9cwA>t>Wi-Z+b1Sv zPddi_-cIZ7Lv72z+c&1R?a9?Tcq?dC@03r?vT}-Y`s=O5`j<97k)C?>i~sN9;~{r` z8l>Kndi9F^-S)XDw<8pH-7i0-xNeF{W=xvY`6rjwygu^ici-zJ{#JJEd(!9g{dgWW zXI1I8rH@iLRvpe`J+2$N_5~e-Ch;Sz>zjDeNN|&K!(qFVa-0I9x9l>boZpxzS8MFlHT|5qWV7kyN(1L_izepYYcmVI*Rmin z^3XP|^|sE8y9J$3T}iH&Q(3(B3yanU{-&ItS{}D1y>3WR7T=f{#?ra!fVf+0%?B=9 z<%mq}&bUh&@(xaoVb}VbbRq5S z&fMwk`+7WoE6uP9o_`?lxrD7Z(}J1GUh`E-#TT7yvv>LWUe@e>{;Yy50Xrk9|1hA>XIB?{1jWpDo_CnRSKY1pV*Fl2_W7?7Y=r zy7*z{rESw9oIX9Xaw$l(wkar<`DDqsQ@w1TSxcYE?xx)uG<$$n!Chha$nkOFCMhbVUlHmI`=0jex94k3I9w5 zC%JdLky~(~o=fS_pFcIsZ=Ao2R_~B7_|!WgWA07YR)M>FeXrcHPWZd4=AgCf8@>ev zTjz&wI*`Bi1ZRIiq|B$8fhWRUwzS&^JyvxnnQ8H)d9gtMi}%&)d*Yc6ZB}^mnL)mt z@sY8sqTI(%0UhC8hn6pF_;Gg8qpLpatIw_6ZvLb05a)|p;SPPjn^iIO$M09?bS#m* zqrHef_Ox0}ndyF(ZTgbw$J3Ynu$F)MdSc>>R%h2r?n&S4EDuI$tk8YLymCYMv%~r? zUP`Z=z+cvvGE4VdRq_|c54xAGZ1G>U*Kgz3#)?V4{UyJB4)KK59xT*7Jn_z|x${>1 z+)^&R@4d~OxoofaB_7*Ko~nvFdGxYyB)LjS~4=92Ui0{9Nwg|3mn5rOTmv zFIlS-tHnRp?3l}ZH|Vmq&)q*P1`k)-Z~R+*aN63ZQ=;W>G}c}+75i;FcjY&pgP+d) zU32G~@%=MX?Rnz0T?^`6a`$aGyX_Ox-ZeY;3wlq8+*a@5Khbt{P5yT!#>MA93fdhC zeDldmR*sRozTtmLQ%%jG8s_-9kNGniI6j`9`#5~tKM}Qk5p&Ns)Ve$~ayfVU@R#oP zC#}T~dX8oD@dp&V*&~t7ach!wq(OPXMc#E!&b@x)!t`j0mE@MI3_im9e_HJP)E*UC zsLvv{DT2+wayIMwRQVMDqoHYT-+a;!Ob(tQwCd{P{;35Iug?hB{q%sMb<@cn#=tE# zhf_ko`0QbL$+7Nf(E`ie2K!<{*3AsI^XIdj;PGH?+qIYvCl1Ys&iZt^Ftu#O!G((Z z%p@DmwsGcqYJ1$@vSpDl*Pp+4j_p`wxX$sO<^kmy%-0l>`X2J^P)u24ubN)}tFcdX zd$MFgf8CFDi4nThj89J}JX4i8^roij{0zraXXmTzpCgvC*nJ>8K zzD#%Ohxl2C`&~r;Du0!D`Pa`>F(dlQ=R?^$-*VQUSR%LCbkiTh3tNk4EK{gHEVlm& zuV8f1ZD#|8v}>6)vh2Az+H2RGcgZmkDh}P+{ERKg*J72fTlLWycRko&+&r4I>ZRNg zIprkZ&ghR<=l4!_ovQ0;b*0^B+Y9c+W=~5d1-{$4?$=sH+XBY=MNHQw$SgQ1<#PD* zYs+OD73a5Zc~tcvX!_lrRl?zgV%_qYXP23Ize&t%K5^q&eQ0prnfZY)va%P}Rvh&3 zJo^X#g0y?yZD1wq|UJhye*n!CTb2>)EPN7L2w(KMAG zws+mcE#9o}&}lI{r90*H@(6u*IjzawJH1u5=N!vCQuuQI@6Y=?4$ScKa+vH@HfPd} zqt<7)=pHO#W%hllb))9dCXE`d++53mSG)AL-7Gt_ME~1~mXkt3-`_todZOFDyygA; z4ZdBA^}Sw{E6iVJw*6J-nyWW&Bz*}lKJ)wL#4USE&n(w>YrdbH7+>tZM)lCwulsqE z#J9HHyPVomDW0%T?c!J04avFd_P(8dI*|L(hIA&|3wk;KK4|`0@NH@2ns@8hX0W}! z-&=V3Oxi^MH^+6aRkY1MtI}RE@west=7euE^*G8;hyM}K+wWxao2zznY(%6^^>rT~ zE2AZ*igBOBRdP?&9uUHjpyfI$1+ zCC1C|a?J{UJXf^g!^?B8?6u5T>mC~{UwdrcD@Lch>*5A6M?)rTQ+>|;B>fSmar zxf2^N2j?iH-p+bv{N-r>_r7lx?Q`dyU~&z=G0Q-Eo^1EiL;k0F(%G)xJHUGObzEdq z$4ce8)slfTvHb>DPKS!}WMz4hyECSK`3;lJUU zjjoQa$<4Vxth4uf*T>6lRd%!%&pye0AoBF=&$31;Z=~C1hMriqY*o{qxIC}56P%Y` zxK-ilmKm@%%C<*r*E3y_>;83ub0@8AEYSMU-zUSV@gZ~bo6m2*C5oK)S3XrHzgxlb z=qBr>k4t#=-^mgDzp|h2)R8I5Q)g}L^I9h?71t!;;e2zovGGI|zN^1{<}xw~eNIgB z(vkeIZ1H~Kw6vayx%?tQhK&)4ZdEoH%b9sTUwp(<*E7+PU!?fP#i`ExBAFW$`SSJ% zE>-5z+cA;vcy_>^W|K>sx^{eElW&u_!an<0C`XYy*RGDB#;GEGzuwntZc_^GX`98u z!?59Z`SoA>FTQ>9XMae1U|Fd_>96C@Mc(A<^xFR4YZuUctMBgqqZdy}_UCR0i3-wk z=-I}9`r(b|%Oqr#Jl`}N3B8F(Mi9rWiu=NuEj*P zzYE^719%Hlx4 zjhj|`vjY-mPhZo+l~yya@%)4!9hP|cX`+W7?f9B>*{CYNdiURB-t+%nmEv%6d&kki z=Y1&R)jgKW6AmArq2Mag-WRwnN%9bv$&!pBP5*NzmaN(>_uX#eeU5MQnB*2&9Gw4F zUB_1DpgBv_OV39WvMRWXTKf-bt>3YHLSmQm`8Ca)m&&8hUfuMr`}qPpeW`Eza>eSO z?_7iFq@$S+=#E{O**PD*1M9_;wHN6R|rjG~b^s;!*2! ztz@2;trEZRnt!EzQjMvQMD>gX++TLcgzY&v;Q)U*vx<*riQ9^HX0Br~TTZg&7q5<7 zlr$-D^QCQV`}b5W%{`PCs^9K$@bJ0`qC%Nc%WSt_d$uF@lHbFZzJW$>`p^9|a8XDy zKlW#0M6QjD;EK17ayOS{TswDCMK0Fo``5aEGh-aLsl5L!y{XNUz53bi=hf~GkD{|* zhx9R}&F)}+-{lJaeq zzdKi%-SLxhv2N#XHCcV|WAnVm-rZJn;u@^N`nPS+yI{n)&$7Db@QTW5ZK~E$^Biv~ zd+f^pUvATRG1^70X!9M9=fULyyJ}9cd*o_~mb^HzsidN<v*jLH|C(htYd!yChA-5w6;AHH_M; zS@$Zbzf4{9u!!@gT=X{O$xoi&nxU%+7Qy+RAi9da4dJ%Vw*V6j3^z!t#JMNnt zaOW1Ap&e+e5irx{hs0Nv!mUXG3qCwPC94^AWVQ7IpJJ_N&nLw4JY>4LZe?C^z>(?e z(~FMZTC2OqZ>_8oyPNS7TkTsP552MPoxF-Y;^2Xcvo+VaON$k`K6PR(X5Y17sgJ(a zq;Crgxm`2g^ZJRNCx{*kwuD&?1#+F2A&@4pgUyvO9=%-`3xO-*_B=u@V~ zZ{DQce@YL2TG>&x?C{dX%O*sMd$Meo(EccKZ;H@)5x$hTXBz(+glC>|6y15R?2}DM zACG`(nCqN_0gOxEI`Gfl$hqxoMVj-?%PiNI9^bKRfv7-^>P{XTO&OVI$0z1=-FiBW z=~(hD2iJV*{p*wKGFR-iRxRFtNPk1ADkXt zUYEM%^3+_?_JUvK)n0qPa=vob9sfj|1WrGAe|t*Y)D08#p3UQ#ol@v^C`843QKs09 z$Frt+>|BvDA=uH*ugTG>yQll!{wLQgP3>4rPM)2=>)px_0maBub2%n<=37{Nd}75D zu(|QkOv~q2PBY7?=)<<#^J@2PTKmw9z3J*Y%R`%*Gc*JLefyl3xLt>1 zb=lUN`oa-*6V%toTRw_EYc5{)%esH@2PwM+vr1TNr#@rcm|f-OutjWxu6tL>wvVP) z?zW#kzf5zUjrG&ipPC2OFONL%%r3h=tv+h?)x?!Qn11%}I8f%g+LVozVM9A3gTVju zkDWfrKcDkI?&tM;KiDn))mH?}4s;K5|M_rg%LL6JC&yX_wSTT0%T#7{EMd^lk=9_y z488Mc(nVjUIXWkg>R8B!?h3yxD!R9GwJf{rqN~>{&;In?yYtC!&b&f)VNK7&-g#}u z{#4xldTaOf;^*K07FD?MDU^Gdf2l6Kn9}#nv@Pk_#IIkjh2Gkj+qW%5GFVt}+UM!f zCzTe@@z&XT&S<&r%#8jGQzkFH6Em}W_ujs)(`z@I>c3diJ}aqZO^t}&&Z9@XJbHuQ zwuA;8U3_km%2y}xaPjGXym$YNQc!kT)E)IHy0+IjBEh}*Va3#c6O&hz%-An|-*Z>i zhSJcZw>!ITFqfI6y;aw3I+y&zBww%n3G*pm9=1DHY}0ObJa>w1xvF3`81ZZ!e)Ix z3!9fte)Bj|r}F*B3$onm%3s9WvRAoTbg%jLt#jWGr)w3yny*e8m0g!_ZMU7Sy??{J ziP9b1e@u7%{>BqJ!{GjI#)7jjY-> zRbT8vfMeQ@y>C7<%{uRIDZ<&PWcTbg``ysTHCOo;$)~dkzPK0f(0J)`h@|Jzt2;K_ z`EXYALVRVIBl~nlreuk=&)@b()ikVa)Xm(~)mR;HR!{uot|?rH9Ew}^$DMKG*EqPN zfqUTuiK8bXbA%L6PdhHD<9^7v$7;g?;U{0zWaGsqglbxz+z?)Mzn8v2~c7Ph+i_S;)m#z5m48|Hmm%;6pUVZpN_4K33-Wo2V*WMbaP%kP)9U%5jd zQDR=WzHwIggu}16+cO%j9m6#S$%DuN&82olO6I!%9}-^@8``Cm){i{*ljw zGNl03XU4J1H(W@pUHGZBbm1iaRa0N)i5^`UdhGZUmPs594SsnWZf8tmU3uH@s)mJC zWZ;98B*z2IN#|C%$NsQa+%`$3dZK~P)$gV9TYI)#j`C&RGYo z3=52HTedH$?B1m{CoV0z5N|vwB)oEUni$8T`^jMo>`Lub_(Ws(bTrLRdS#>FoA~4E z8g|8vE8JETY}<03y@P3!wMw<=Nk^%wuQ%Mn*NAWYeKdFG%Gc6`FLcU6k4@~HAeCB? zb(!VW`S;4NdejAuY>$asaO3;|@7Lc~&GhU~TmAEbRKh#WBacOMRb-`>clcUt*vPjv z!0PkW$868Sj_xr|5RBD2@&0b4$qAdx+6|TB$ItC5+s^XsfX*7rca;?u|zOQ|D`Cjt5i*iz#4Y!%4?-Xgwz47+<-`z1b z%1!=Hekch%Z*@=j$(p=2V|r+suUk#2L+tOe2eJnwuSYF9=WVv^2aEHb+r}wrYuHU5 zWZltQ|L=SL&m}i@^c=mrSbgor_*LaG+c~_aA2E4!qt^9gMSJwq%;3FG*DurQyl_jr z;$PF9ic_`woc8A#WKCbfba7|O&!y)*Z|!;4So^+f;o3-%O0VX>$LH*4`YL~6uiS%! zM#cV?RyV_#JG`q7&3fCK{_Edjx&0HIO4@!~@4No@?w5a`t73lL*ZUuzRO|U~ZEpVa zH;rU=5U+A^w z^^Bd@I^P#e`YJ9xdFszg8o5ckD-47g*O)AulodGjgA~X85KWciiuad4%G6WlELnLb zrgg6_(#r-Yb^xo!DENo2T$&nz-$<)6X{*Tvb{>+j@o1l0_Z4T)vAJ zzdIp*M)XMbX(@#hH~((@G1KbbtIvA<_TShWws6LAus^#IHe3H4+xvz8`)vj9F#R?D zv0Z%Gzo@9B|Gc&z-}4;%Z*V8D=!p4FmBvi}Su8BlmL5~4tj_mXE6^}y1=rytT}+L) zqwI=vq`n^b>&W5i@pl4;%=h09zaQoN+{C=(Vc;IKb2oN=z7e1H*Y5wE0QL)c!eyU7 z|6E%YTN{vQ^3iH%zVMDUZv~D_%nduyvo)!&<8lR0+e$yPqE!(_$rgquY=d^};-0DX za;N(GOS4lGgw1z{q@?PbJ&N*q8d0FU!^bNql=bHA+c$1+$=N+yNu(-qj_0@Pd?Oj2 zf-}dqyy6v;6R_#h?bY8X%Nr~k8zE5|f4)WI_H0(g+rPW-IEx!JbTs3xld%SIKf92!%fxi|UnZBsrs541>YN6^!R?W5A zKQ%kP&-*+jYyH6^eEMZ=)Wy=u z@wVuQ&9cyad?|B(rLMX*;XKQP!b5Y*6JIw^XgOK4%w6HslSeyUj6Y0$ymFdA25VN; zEa#s}A#pc%eq(kzs&6S-!?Hc;xMx_!Jh}e{78RFU940*wSCM$evbkm6>+}zw=82zs zusV84k=$k$YmZ9`DH~2aP|SO9pX>3V1cNx=Wx;P(KGcv%P-}U4)NE%{@1_gSxUP5C z-D|z0wCDGsiCjzb5^E%x%MPcSEi9Ph(K|`IVo_4hy0eVhxsq=ey^BdK73$UhWZlxH zw8hS8dR>F^yVrsWohlvkQ~uBTF89==zWmd6|C9gE-MjjK_OGiC@6THH-@@zAkMs9J zH%|NSJ~98nM-$a68P)UaGy|CVT=%;o6<@fqh&Q#?P8Wj%wKOr{=Bb#t5jOWoJ=d(Q6|ggjV_Bs7gL@O%!V^QiCx3p!s-5iVDn31Q;g34rnYs(j zrm9*CJ%6Af+^IL&>1(a-lQf=33v7FhGCS1w{Z1>fQ|T-5J+;zr`jph5&+%N#JzqSj znqXOM6RyYU$z;}Q2oH&a$TK&sIRDT>)mzFN!{S*96A(Mki zhts%4ZKBu4zbZ>bk6B%rWvzUy2i{F@ZHi;FlIrdcI)%hPB=YMkd^faD3 z5V-Z08&5~Y?6U38o-J~+4o>rKZkrzv8*;+<-9~Xep?iEnIBmxC|aE3vO5Lb9t#+E8VymnpzVYo;#?OmWH<@oW-Kzbv z#$R_{_@#eMucG(q^*Fd^i59hOnYP^0w$^ujO||sBAN#%+zpFm*^~XOpx#jWiPj2}b z`|$K@i8t-rv)-A#Hb0l_CET~^)wV6m@=s2cdD?d}+)7twQ;Jsbk4xWQORg-6+P=DN zRqos3ZEH1D9(vC$a?5f$|Hk{un!cJl;3; z>Ok6a4*dAR-JCojQBUDaV8Cd=r_NTY_`6C2b?zjyNyQGyZ)2h{1{t8xIy~wVgDW;B#olG>O%G zla2JBy4rb(`lv)SFDa3JQYrg6?3&4;hpn>B|mOAc*3wmRvY4vWqQ8;9973G;kS{JT3M@_?w)_=gb8FtVq_i0%!Yv&Y6FAdxJ$}jMI@C+a(&h$IDb153Wh7^k}|Y@3@uwZ*9pMC%NTO zJT`2;jZBkR*U#ws}C>b)bz*XV~ zlS?UsQ^eB~OF!_Ou9KYm%W%E??4Cr1jh8JZzY{3^Fn7tHsL;hNN_PsQ-o z7kV6Lr$0zICLLSm`%&kB-wBPZ=A<)6ita6Jy2F#{lPJCRl1cTADCN*LRl%7`FK;fp zc4dYT<5`+gGI+JV|hQpZf5{CT)Y($7=dhDk|BE>hNP&O|HL z!+Dclo(WM4%5?12c+4z*aqo=x_I+ZuVwq|$rJDaeI<`7{orOcV`8oNYC#GCqzov=x z(Vv*h|Gcj)@$R(AZ+QP;1?MueHLkaM)~U&dX8O&%`%1ha@mPDyJL{V11?%)zg*(TF>Vf*QO7v=8e&T78dE^=zgy$gR@V`2;M z+6DQZNZzRUR#8Q^?V_pvnaLuNoxfAlUKsP3th8v~ukI?cQ6u|dyH4l#Rd@V9ZC>`x z=_~IQx94&<+CEjZM8vFQOL{nIe~L@UrsfYn{=RTKJ}344OW)m{e|uyu%zq!uawN1u z_mP)N=_02YvGdMPjVL~TXY+osS!d5QTn}-w)o;A|;jF@YvB2L?{T|fCZ~FMF{Q16( zzXYX~@BQ6n($V$VeXZ)&fiqu_pa;?_<1({mfrM~2*ym_ZAN812mWbF zz1*a`yTxPb}vjJJ!q!$N6y?P)_1mZ zY!`&R;{Cbj%eD7BzjU7Rxw+qxxX|iYUeMxqB6C~(L_@2tm6s$6-LL-YG_#LW2#Ve^ zQ|`q4Db@K#@0qjDF^6iNI}>>EOzX3V?JG(jZn61!;-K)qPCI?B+Xf|z6elEh99=uR z>c+%6hE&!>Mv0!c38kyv|Mw~O*zx0*>r~5{s(AaU78?|!1eg9>V9c>_XPj`+G>g6K zSD2nGuX+FQ_i^u-FURyW^`Fl?c7ZEf@8X|U)&2#0be@{MVrBE6nXzHXA-fQPz(3?3Qa`^|vi8^Ahii5ndcp8{mVkYH<%b=nvMB{0p3T$v@cGTW;MY}4{)Kk?W?kod znZ5DY->1xa$2jI(-)54O%Xw~@%r2f;d*meNS#*8Oy#M*7z?IehhfdZ_%)Q33_hIWh zZKL<Fwjk)?8GNbIiH(%)X=la&Ga9U`(ha&&M`6?c% zA4|Q~f4TPSW3K4QRXQJ^mV5~J`1Mz%TlDAJ8ADej_6$lJp76LZ-s;I^;$1~x!CYXO}R_8*WpFBm0lA|jK8#7EGwvu z-TP2x>9&?e;dAS!-#;&^(;6vuJJ49{sH8>GkwVV4s`R|W+ApgN*pZJUf7#g@<{11xz z`rpK5iqBb{w?6+<@0l(7=D$t&_Zt-^9`Bd&i*CAZQ0ToYw#aeYG=|oNj0%0c{9skF^X&?f(^QAKpLvuNn`V?fFI;Wt^j1RE_j=r^ zgS+o;nRC&&jJapkqNLC?W=o}YZ@w@t

+Bu<@peSDD}YcYU+p)m*&SdZ>EMk`-dA z`BC>~>^1+uviD3$>kgK_FTN00mSdH$d;8h=$%5riYZjWma9W!6W8?Bm z2UU7jOcvGu;%0W}*~Fc*RQ}w^WwttDXaC?s@D|3$hb-o>*&1C|d?H>^U~n_s%iipK z)m6FY^W#pOzCBm#K;4eR69O2r^14ryYr6HZSiUJ}-12$OigPBhUrzieTez*LPV%5@ z^jx<`HwqVg^V6HWB{<{Ek0U(F-&nTYtXO(ya+VM8nm$Kyz4k+w)jzC0=(nj#py*EH z?&TNd!dI`Ui@tvInvH#Ko~ub$_94G_lQj=iEw^38J2_`s+1mNi$EKHRdKr{*E!^0&PE))>hS4v`tZb@^yu+h}`3Et2xUahloFXg#hF~@WHyLA>@)>(DV3STyr?W0`Em08nI20pi{lxVYG zpZV8tdF3I-4&A5T9N|CCt=lwh*7+5&le}kLNHf#*Um4Xe)VL%%OJnistv{|$4m~X0rO& z3H#(7uYLM5hMPZO+jhIZ=dNuMe*DF$eB#WwPoWFyiupr#t|%~Ri+}%bgIj9ZD^L41 zb}gE7XZ*gXKgD8g?2`|02v^SfT*bn72lV{OAGXEsr3&*&g z*qa{-ZXw# zuhm(wdXGrz%cxe%5{27)H;E;^Qh7_ zJ)7h0qU^0aHb$Cn3R_=I6m8}I!!3JX!?u=v)27cFeoq{%o$fFTXi67V)g^|1;d7sK zDC@wCxdrXkf;<%+34(kl1&aG_vd>v8vG(NhGe$YSo91?}J(BmQZ_S;|NxNHo?s-g* zm+*etapt_BMcSt$+dW+GzZB^Eu>RALiql8-8$S{>iGB8yX+`&TBiRk=ZZa=cCcY5W z+1C2-vYp>?>1d@LhCc5%sO@|7Y=d-;;fZyDH`3VOeqs|3U9H<<|NY-$w?l7#JrrhR zVkltz`+vuiAO5{x>`ek!cI~m@Qtq-}#n!aw&wcKQQ@^Iyky&KpsAGZ6k*WlT_(;b;PJ09Hp6O|u7|M}fn_wD!WVlZ{y zlklUcNPl{{Yr%_T(UYPb6Lq2{Dhm5eefu)0G%cm6`JaVK za`0L5;ww{+U7YH~?tZi`LL2y&gu0rH0IRJxcxyW_u&-n-jh6=S-X0I z(~{=}FZ?mFv`2JLXO#R?gTr@Q8vNu zoNQP;Pp>dr8Dm@RWA21A2b}|iJoK6;-@Xyvp4q;6+x;vK&Lg|i``DKT-bz|ILyXHg z>d>o%AH}n-U0B$j^L?6X`}>AqE!RCK4>G$nUUJ-aO3M9q;iP~?V&~e=gtY|kmJE}$C6bK0RJDr+*e&*@nhGcOnUvEnN4jboO#H}*vuKd3Lh*igZAyRp*gcI#yc^Vh5< zf4HS@m`_`~(9VG2fRO}4!;yMspZ|An#;nTH?bq!))ZMfBmV)-2<_#V}Ru{7}4<`tp zaCc;@SGiz0iE*LB*M$dGiPsDN2snL9HEfmFpPYX!|5AF_xAcToR(@0e=3moUJ^O}e zhu6{k;P0DX#=PGt^ZwTRt;_bxGqfdK+hAQ2xAxEZt5WX8AIrj@$BOH0W}Kd9UZ`c$ zxidyOKm1^si6;Bs%FQp%r&wn4~#BoKqgVMB>mi=IdgQwgjon$jIB zmt?&Rd*``AeBD7aB^AZotfS^ehgT~doTjeH+{D=SPV#%-rEhDWg|1#ZrL&GH(LDZi zZ`7{%f2&INh-{g?;@-K7>_zIYBiFItiOO^MG=FvItMZVpFlcJ_${#3{*%tT?1cs|{2onUOW$r# z>J}XM2?g;jvQn3kxc*{wdD|kx-N_qu zcRSyGD7E|bTh3!V&m=?KuDQ(Nyi}jjB%A6bbd*{7mS8O($DQ9<2B~Zd`pSHbe{enR z{bOjvbK8D(+>Cc0lS*^99QxM&IpJXGeD6}fO>2ZK>f=gP7d?2-yYOAl<5`Pc9w+qj zd}{Nbx6>kC@zCL}7vHaLa1o6=y1Bz*&90@^6J+h4Gd$-|nt4`s!y?}z$D{MtA1(QN zTy|a1+zqB@EbeHtsMhWi3${Nhlkmw~=EKVV*)t-V`E#7oLwDtEdbXMS_=M|9t66{7 z9iP$~qO+Fqh?ip|*UHFs9W06>A51npdsxM4o2O9qv1iWuI6mtbr*~CHVrsYfYox5} zpU87?`|E@$=Of!b8rLO#&h2}uwcoaP?$5=)U42)@q)eN}vH#(U`^|OVe|X&b7Zmkk zQAOV+?Nt3Tdl!GpAU?Mo(UhIWYh1qb$no3G55ISB_MM*a8h6{1?Z-`H4oo$^bNv7G zNo6~xZ+`HAfr0l01B254O2ui$rQ&8K1%;)*;%6T9yR!9v@2#zC%1hikYa+xX_mUtp}f-g5YJ!H@Gf zKLm?Jt_QqnY2W3S7xHtV==@)MPM>&{ZT$Jn7r(2i*A;v}P6@lcyffnT%)f7+N}OJEXR^^nscHM<;@|tyeqOq| z;Eq_|BwFrd8`l--#il1pPj=+*toV66Me_MG{-FEJ5@%OBwJJSU?O2qv z+1ypkZ?<{CR}*KMcQ&luN^39mw5#*XY1nY~_S9KNmhBhm?)YVpzMb#u;crjV zo~{3Q=*QNVZdUbN5?9Yw1#DeYyK6qLfxzLkto;+L7@C<6d1+r&xF*q7m{&4AN%PdC zJ_ny$(jId|jY54(Bv1R*Ok{5_5147nIJ)!%m!u;D)lO|2ru%zpz+tz^(eB8ZXt$keAI!OjKSEXu}N@+S6*j+s}XRh6%Hwp`n-QTgUJ@xw(e|Pn^ zbNmWV=I;7=UFw1K_U%)4wQX8@&OJ+bJ^Llul-1pR-*+0;T4vQn&Of1f>gGe<$)!`$ zGFkKZ7ri<<=bPQH;wOrM&t@E!TD*KxiQ>bKi~L_dFD?|CmXLKn*Jp9Q3Hyn~hi2)k z?JO7l@0Bk9CbIlK$C7t>5BMMLc2mAqV|{ROk^R5gz%IG2^6=IFBcBTFiofj3{W$aA zlST6r1T{X}S=LXy{d;4C{IrLzwcM*0nP~mJTKwve1>0=jGSQvxnu@FTmIx(pbKF!I z6J7Xf*6q^SF5>)k%?fUn4`yhH3keF@=sjb2FpuxB(VLzUU9iq|D(Cj zZ1vT=Yv+Z$czsY_Z;qq$@@J=2_9!g8{%o@9AEt*)tCf}nX)m96Svb(g^8AkZIxBwI zzFmBoO?9L1K10z7Pk4-ZKi_xUDtfnD+JD)StAQTwvzG4P-Ez;0{hXR7&vMmcyefUn z#kVGwdmObnylSp`;+Ng~O+zh+bK#56r|l-BrmF?52sT=1>0C@Jr>B!=&`Gg?pW| zvgPdmRoY#@*rmAf!2%_#PhXf8s>dxcx+KYy#vr?}gr{a&@D(jf}XNx-J7&Wa+ zo^fqz^3qeDGAGodjW3^2>#^2Ym7%3}C@w@zY{K-VyP5)|bSqVbAG}RGefIX*Nt2gP z*VQlAk4}32fpuQQ2fiCIyEmLO5{%n7xuf&w(U&o`?w(eAPONlUs;T>g`MS?i zdY5ml-Lj!(ma<#RJTQ(HO+Bo$xQufBX=dEVdvlQ z?SdYrPLf%#6*uoR(Z8#HV1wDUs#!;aqmPHR>viuwr2Oc(#tqkZ=PGS(usthV=Hq!x z=9lluW(T$DE&2ueFQ1?FXeX@22H`#W*^F;b z?fD#RI9aP8%yq_mmHJSngoZt?Ieci{p0^<6eq>n5R@e zLwT3_hVySquf29YFn8k_>6(8Yi$Wj8rmj2{c%?K^xF<+{b(-vVNiH^{xhdN7{1_IW z&{{Un;o*cm)1*0qQdfKO_+OZ=xYU$sf76#^GhX&S_~5Leo2f4vem%s_DfcwPE?uEH zht@a$NLAHo=QF;0Yo5^8WA-gxp05)Hx5zR+d^oYsG}wNMt8kLNLs7}^nU|vlz8bk1 zuAZT%^&*C|eWIkjTI^@6D-~Ux}>Ypy{d&QsM{dC={KI>D}x7oU7Yd+jh z;@a?O4)9bXGa|{fUmCerlUd?mhKL3OF_iZ!ElC?Drj4kdz zwV0omUiA6*@Ba+%k~5gsu3UXR^&$VUqaCwL!~SuZ}r{tuS zfj0_npV*O?Co<#s?4F*)RngNQd{GbnpxO0Pmw#8)*U4vc<6Q&qNVx3kT@`rPUfe_U zh|1E!Nj93BJ5Id+yn6c2b*BYyo%)oVm}Ta8+cUSNJNMHq+yBwow`~Kot52&>6xnXL zccX++jN04HP{xzf(Kk=__dbujf=h`TB~4@;`178vzD}yZ^&B zys-XXEj97;{&a!ALGvcNiyiqOs@I|y%d@D1E2}1Ofl=;-gGmb7%`G}I0-YS*=eB6? z&wQ6PYv#7jRG+Ho&k>UMnC)kAeDlB2dox+OlVSRO!$RZNdv~AA+x^?-@0!_{*#iO% zK79D{YsLQ?+e%+3hezHj{Nwl9>PJ9~KYLDckX7P_rmjtHEgP5>pWgHP*|+<1w=Z8@T=Qm$zVv|vq3|^y za~0U-cI3O?7g#WeLA`=?t!N8 z!ceKbG5Ow09w(Muu~&Z+R**7d#dF0+;@7Q=b>!#dCq%wPM#z5+Cp_o0B%hvD#P6p}PIx%s8!(Cf!4? zUxZ#*SzOQmAU3W>f|v``W5!*LE|=Sk@-{Wug?C^c6@`G@PMfr!9&<*WX?cc1)rmgPde z!jJif&!0Nsw)tE2Y@3)XRa&j9`2K}0m>S7xd6{Ru;Kq~XPY>Ets%%0kXuuRZveE2mO0?L!Xx$FGYl-LA2fKJI(B z`RQE27OwB#ZVR8Tb;{o~ji)`(e1W|864mUdI(82|il>CVIk&O&*<_P-TipK!#}^(d z&$)8v$c*ip_EP5=S>69G-Tt6lrRYKW_mw~QzBXR^MYh*v{=)4KRE$gGPi*^J-!dt3 z3xmF-0YiiQjrz{@pa1hune#6xLZ{&!0GQqUHFk^I|d=HEyjx()M|c?aF;W&Gvlr2-fnwZd6kmoO5JlbfeckTi>0V zg5R!f;@T1A({UYr&m+3qT0Nc@b3UAS zzvE!0cgdN`0xg!kLD!$WF0H!wS7Xryi8yV;CX03MuP1HT`Q-bvq7;3$GhYQc`u=*9SXwuaUx7woxyeIN})jz-F z+~yMYum>e>sRefPzt8SG7Pd_8knrj`=))C{a=Ur__by+&u+f8*nRi&?k~J5^B5ez z+uXCfwP(JTz}^q1zxKqOnB~wScIueIYe_*K-6FoO*$waC%1^qwN$yS9^{2-F4Gu^i zds^?mJjCJoE|rbKetS;Y9=XPMxa0ZNj?cW4>~nmCOpb=#&N}(5PS-sBZ2jNvY?1r} zFDjqrZ{~lze@g1N|9W%($EaWW5pq26_}`0>=Be|AB-9UkcoiwiEcByFZ(5fBbcGW_|h6<rb#uoS+hT0vh|u_rqrGisYK;XE@uvBm)S`Dp6IsXx$1U}Ia>?1gUk@}@6XbkzQRP{L2+4}xotGb~&09~SrT zoJJMX;_RN4Yi`XklwLRKcv?(P%@K`LcLJ>wRhuotkG?o#B04*fYg5{p->Hj@XCIx( z{eP3nvEZJ_Y3g%(cQW_r?Fl;QY_V)nr)+z7zoS&g^g};FqE(C3)TZsee<3EAwT$`o zjO^Ub>!H5x^Sxto<(Q7TnwXdz>{3@MT$!Dc9Ch&7lE~F_-@Z_>n*FJRMW$CIDriRX zwuZY2e~NfBzT`X;;+n8d%52To7HYlYI%!7N>SIQSj4Se=O}HJ$y^Y)K#-SbOCVj6i zSW|cUgQ;d?-ZGU|&80sR4(M_vuTs)abFO&&rf%c)1rr~8OHaQQo-wDF4(r@UqlTs#P#!U=h0N(YsGTvwDeJ0LNC-q{ZByugzS1EdI%x?T&Wm zKb&ca6*ZCLc(!D_&Ac_YPh3k6zoUJ4>y^BM^{WJqG_Gm&IB}3^&1N5i&#$__|M^gJ zd1Z6hhkMEP@Any;;W?EcV-R`Nw6D=wwR58eZd}D$+OxcRf;S#? z?bp!rbZV9BpRnTlMd3!Z57H8E9|(RbOn7pgnQPrcsZhr0Gn%K#AMCg~+5M3-W9*D8 z3v|6;J}?N>__sSr`Sn+>@oXN_UX~Nz?jG4j_2Qg@X7ODBf4wF zf^$AxTryHG9*Z8#eCM#O;Y+t(8>jEAx!yiX2e0Vey_0FS<@ln)mR7O1g5LW3t1SZA zEtcLo+OXlr*4Kx#d%w<@eEQ|X58FKyHqK}&V&^{fYPZvtQ`w8Ro{X5UAG}<;bK872 zmPdSYNvkieune7@KKn;e%h8`r3wBJLpt2}p7t0%|WYsgFLEEJ+yj<>jbocSs%8$>c zs|b5e_;JGK1%Kb2k{4ln7j(^WJNJF7TkwJQh0Jd?0$3tkr?E|2A*9Ic{P@>%>q`=M z;x64kpmF5L&wW>$_t&K*{B`RlS2g-e4 z7#!g%WO{;Q?bGmGn$1be?@y>Iee{Cg@Nk;b^(B)y=kcwKT{O4cbH{TZeFM)gIaf56 z+~4wV$=;o9Yd6I$`Z}@uQQY>4%Vodvs$^J&Tc!VbQT#6Ymrv_$d84%rl2ca)^BLYQ zf4k^tft25w^^&@|l{0Q91+9MDza#lVse1durMnz2y{{IY`Ssk{_wFg5TzCo&->{W! zJ6w~zn*D#@p;JyMc%{`n%RB4_8%SX1S){MW-z?57PxZwub} z$$G(RR7p+`-2WrF?=Wce)&V6UCCYct6MN z8xMm6o2NuqaXdF;dRZ%Zd|uAg{GDEoRr@tr-^|#%Zeg6(+T>fS?1Q(PE!^v*l-|GP z`3Hkfd%b758=7?HRA(gKPJQ>QVxjRQ59yOPe*BKB6GD{uWSKhYhF?N5u| zOs<@MZD(@rb%COznE{*K{uMlW(&6jN+ka^+)&ewk=q;K%uN|Og`T!_*M5#$;->r45uwoNt;sE zn#aBLf;{j1LvJQmJJ`rt-kxS>mS&Q5Z)@dlc_W|Sd)6DPl{`FDJKrU*dD&^U-n|cJ zP2#z_M`8{CiJ<8pnXHe9o-+L1>G6swPN|TWrQwKlfPXD_>h3FLXCF@C%#&OhW|Wtvku$Gw;b2fk%Gpq_wlxIJb7FS1}#jtgm3P|H1ctbw>m4 zH_b7e@b}Og>y>A^A6cfDRu^&YEK*r<{N-M*iCvubn||IlnDj|MUi1s=t|Eaa&ig!m z_D%^g3qHwx<=-NGF}tVlHs12h|G9XX_}-psm;BtsXWR87=B;eG|8HGEu`&C5H*cko zu5M|=IZ-P*R<8(Jc)xmy*~C9~2mXjOg+|*S@nmAzouqA3Wz_Zga{H50S@~AUyS4lp z?Ov*i*EnkL3{-MfoOG*c=VOU4C%K$Mo-gv6n6f;%W$lV>rj{agfj^~FB-I#sTK{O& zO(@G=`L)`5-wpNSy}$IOX1j3DvAS1jw{M9?(fiWkHvNp-liHltJAR*g$5Y@=t)~-b z@|p!N7rO0^403uL9QO64xymKQN1~r+XDA6zU80kfUcBx`jaSW|1s`@ifAcEvd+g6T z@fB{qHDbw!%-xRLy10B~Qf0gvX31PGGCgotg=pAQLHYYT=J6cN-Yzu5WnaU;vy;9W+eJ9OusA-}S6d zCh^wQXg$FQ&(<6L%ck4i{FYy{{)Om|fBHvi(o;5ddp+}P`}cOvddq&h;(nX-dGB}c zjW18HeDJlQw8w_;`fH~2u5Vg}oBXz&zVUtW;=9{+OSx2PX-R8&MBTILnLMp3J>=zv zqKgmIj_%20OitNwrA+R?vEH!nIin1!we~=PR$d2QHS~D(0?pk25@> zwL3nkI;lFbsQl~+L*_M-U;QP@yRU&wNR~Ta9`1l8LQW<-=e?it5_Nrqv3<>k8gP$vSq(o zoHtmLxc}CK#D4Rl2aEUL>Gr8hSbI3u!g%@Dunn%H>nuuhjH;_< zwRCkbu3AyDYFn+A%beDQZ3$2Hj_7O_p32E7s{SBS|CU6N=_KBw)n9j?e_{1Da#H^( z4?De8JFj`I&)1uF*P^_(uqtk|=>5}23e8kmba{Gyde4er@hs4OiWkL zZhosO+U2^RJ4@u-yp38nyC3TRxN<=zSN9Hg;LiiM6pC6qA|hT0@4VC9vVHl11xn6q zCziE39T$1z^Gc%6{p7aN!@HlUztWz0OGVMA&*E!v!i{L|u7@nSUK>k9xpr_b7+`U&2;|Nb9)}zyH(wtxh?eY9s7Ch?Yp^~ z6R#~e-*Cymt}p-ga;j;I6W7gv4|*FEVw?|a%Y?}8 ztFXP38PE6SP(*Lqg_W*MFO7fKoXqb|bkAFJjn6ABku~tBPZ;0ZW9C-^e00@x1(zQ? zBocVyuuffHeW;+f=1P;VVf=#I_4AbjjoK_16(2Cn(awm`-BlHox>)(}hQ-ShrX0u- zx$nDN=xWAaJ3ooz?xj3y!b0wAZt8f|A-d|3%Fhk1yNXR+oH9$Es{AwIW%b%~ozqJ# zb>^M+z5`Um%d-iwtT~~4~$DK1a}BrS;k@e&!tZLfrXHr+Pqz| zvCF1&U5|Qy|D!`gzfFxJ&*rWD7pGM%wh(++e4_TS#G~ok9#6_U@nhlk>z6J}a$2Ca zg!9&fAAF5!^%HoEJJxhrtd`f;xbtp)?6h#cnG&K&M`QdhU3E${to2aV%CEohWhU?3 z+wN-){qo%?G+nDV!DvDDGlip*yw4ZJ27YE(z0_iflJnYHwe>y^SN$=Znfm&YUds}e z%O}P3^NvX$yYtDdCH-EUS>F}yMV&jZBrXgyG4b(N|efiDso0zUFDoBeA|zN|#$PW~TvZatjluIN8)8MneDIZumg`Mif!6t-_# z;;Xvt_^Dai@jq<8H?K2yco=@|_a%Xvr5QWVTF+Z+@#9Kw){0-#x617GyPNU$_m6hB zjDLo+ zU0eQ}EnVz`^DpsPhib2g?lsM@KmNE?k0Woz{kSNvx3)_>n|IhwF|D569e3es>9cA1 zF9Oem)m~Mu{npzaT-0s0<9^8#{*5!t(pZ^y%-~qHwz}fbnmbQcyTtxFtUu#)?y}FD zWH$)+JiH^mMCtz7JqLM=cfG%}Awi;~P2}La9?Rrr@0g-*sa*``^k<78}A20$kJ`LNkYR<(wwxvB;8@?L8D?jRe{ZZ|$bMjNn zCN?}eANzamt-VH{^WL17INRlJ*QjKy{?_r4@74W%tn&V|vKjN|UA_B}`HGCoxB0TNUwOLBC*BpXK6rkI-qke!sdu*&99LzPD=pcw z%lpQfsU9^v=cn0P?pBQ#{+_${j7|Bf4;RzQ?=@%N3+y%c5@;1(K6#7mmhK#@q}z8? z_N6Slw`X~sZx(OO!WLzZJ5{f5>3Mdme><X)6&aFQ2$`{?EyTHn@BFNq816#3wA*N8WD$1fhsXYbOvCY0D-Y+ZC?qNEgu;1{W| z??LWK6Es}~)ZgV_U|S{Zf9vh>ukn%UFOBYMJXdrn#Dm(N zGF@x^n-|?=V;8-)-ONjP`3h71&DjzbsheNNZHby5Vm{3=<^HFhx_f07{D;pP?QqMToBE-U=ZTAp(dQ36 z5{VO3WPUiGkWwvv#Q#9S=kR{f$=NlQjZR&E`&u`MS^k@DmGG)5s5r8LfuZEU|D|s( z{TEjF&v|%>rDcv=OJLo%${Q{BpE6y#XQj^I<+#Agg=vM@EfuAkLQJwZjm_E*hi|;T zDKyk!>PLm!GT#|&G^VSFvWD)_n0Ro{?qdCKd(KpwTc6*+xbE(Y{CRbCQu8}1L*HIn zJEJVI&m*f@=F+{{qE^q=My73Yv+itBpZF$v@+)Q=iVKLWfr~`))yNVE2P~CV^!^1yX3~x9Z3u1 zrhM&JivRO^QR76xYpN#cE}!$`4Zf88VaQbojP5C)9)FOjZJxT)?_l40j^B~jc9oXB z{!sWntoy0w^4>KKGmKa8&b_tq*skBLi|V`kg(u~8Prh$mH7{h}e?eOZ%hNYZA3VEZ zxbfS}Ovjl22lCao7(7NJQZQy*Bo&*C4q?X&l< ze7!2UGx^8FP=TC;o*x^IWO;7q_%!v0sd3cShNE0cM}k)5PJ3x}X8jDIGFR_YCqGZw zUfW#X{Jp0;P5bz{j$hnAR-bs!*v0XoW7<5^#pS%d-|yM_)fe$S{r$a$>AUe0!@8^A zzZ&lSVjw(eclnmM2RkNfp1x|B?)9%<^;K|YvDvx!a4Yp*W^wnmX8E4cHnP`_cPE~+ zS#mXDeav~@W5QZRt0rB3ow@Ijj{59O*S@V+W@qfrlP%{6+48}#(4g?coN8%i$?M(5 z#h>~f2L{bt{{Bo#i1@x8PqZs_?C->j{r#8QxXUa4Qq0!(b2GWF-RF;d9{T5PpyPQ9 zQ(lXb7KNbV#EN~>f8-tVFWvgp+e*lM#Y&AS1#%2sx7gUWul~Yf+V640ROiouof><( zCh{ECV{iD^)&6Uh;p7jyly6z=mp|xk-LqnXm9*;A&`3ey_uV_|%*>V*zloOG%9S#8 zI9y`>+Y;1GNh3(OkX)hP;*}Un5 zv)oocJ@HMNTa^+Pui%(;H&IG&_hGS!CkGTKed#?eC-Ze}$lr;grPr9&K2UglShU~@ zuhedvXF7*P!>Yflck;Vbu4A7cxck3D(>12Q;S)a}`xqM1o_BbPRZffYy6Ct?yqDfK zyu2aN)_C|-*~6(_8h3u}OWbXCFOq$inxK;&Yow|A-G-_oj*c9&`F1^YKXLGNzlijY zfYbT?TRuIO(KcA7bNDo$kjJi*{kN)jOB_mVxEr@9AtY%=81p1Qy_6G~Zc^J0awWH~ z`21%9HO(7aKpshtEV~n+YUOJv7B8kA0~M-uz%TscZNsS zcowOOHv~>T?^619>p>O!`(;g>U+($*scLTKDgOWRt<=qn3#Xp53MrXV;>vR%VYeaU z;(D!!kCC??>=NZ!D>LVM%+V>&x!!G*-t=zA_x(BFer(m2*e>hUIyp0qajJvamopb8 zsX9*gK48x|GfU>-7QU~uryWyNn*GK4mgS+_SJtaYS$(@6oHu9D^qsD&dxWII&gbgn z+`V?OTij2k@O$L$g4o-Z(+|ij5dYI;eIonD1oIR82{YtZrqAGw6Ha+ov~8~90_!FL zt6O3(+L<5q{rJVxJ)8UYUH%iIWjwj+@AIVD>J$D7PMLPZ_!>jAvUcv&+n08<_TKi7 zn78kW;@jVxE3W^n5q-GKOgHS}%*|)GnDRtt<#k$4v+G(>RU)UBS!ey*!nS6`zMHKt zbXndlO!|F9;rv_fS4AdntYT&@ax9!IlC2CzxlX{FzmKP3 zu+&}X`(>8QlLL!lKlVQ5YW>5y)>r((mHkiDDofiw$Nk^>WyOL2-Ym^U>&(pB+@}3s zFz;9Y;aB#1K6i1{KggKh;U65q#R(e}~zbkpxG7sikO>tajpO;h_-#?pHYxh6Kf!$zI!n<3yKBxZ{kuTqJ z=_rfg-%SFhS0iRj3-Y}mH$gQlrG?MR&zs{GmzUvI<@~%k@p~^y1!{L+yJ>PML!od!dd4k=IXIbhyohQ?de~FCfZg3M?VUiBMVN2anN)Z0y|o=$5^TbIJ}kL8)5UL5XWXPmOm}6ko__H3 z$Lq%YXIIMJ7`)y%E5F@Y=C;1w&D6#0r2%EPeVR|l>|GhQtYwMrB$L{!X~%tAu9#%< z@rF&Sf3aQt=gFA1xaGSyFggFOh^~IE#umxFm--COoPA_=YSo42BQu)jwhLM12OBJY`zey)woK&&#ghpwg(nVj zu24VrBkSseeDPPCo=)R$(Ih`?I z#MoNAYoWjTp_8#ClYAEC7RAiiX?*D3TmOdbUj)}4TlZzgfByXc5~`6~*76>T%)GrV zH+^aD?QL@-S9;vumU}yFY3}T)Z>+-K?_FN~<@?^{?&W_v_9`d!O9)n6&h+_a ztMk*-b^pwAo}cVrDS6)2z)E0Izvj_^P4@4zifT&Ber=9_xc+}lN!!I(?$b&!Z>8#N zE>3=5(SBOzS8`1R$1&yLrw>`5xr*F9I^E&xpI~OTEuHo5>^cGyHh$Yb#Y*%4W82IB ztEWCtmDP}s3EuKP&i3TdD6V~bl6ECLcy~qYPSP%cuxQQh9;KVCihf;ZOecTc`en7I z^ve0dDHDzyxbkDwf<-GbJP&P)S>WORVu453io*(r6*%^6x3{mpq<>bZ_W7GTH>_7y ziTn7myxD%gI)6|3z3uU5isJKk2{xE4DQQ-|yZ+j4J3F--FReBdF@x)F z1@C2}GvU*@Z*9v`OaHj7Zu83JNgp=s)Hc&ReruA8BYb?cpLRo z>~%--hsb%S46aSPm}D62RT*^V$RZoIMK;?OY+Dq+)bDARO0D-5V`IGy&(GSNK5afv z&UV(zyd7Z~Y>Mnnxm$xS&b*=JDfTQXW#LOUP4;^QoO1J%H8m%NO|!glW%`wD&xrc= zh_BwfQ&uwh*lI0g^G`GD;FOGR@HNydvR<+FUeHR(iTn;LCC|>X)0xP-_*>Sr7iMDD z1HJYA)@46cQ#$LiqJtxE&yyMFucsYZ_IPjBrm!VC4-U`Xv1b0IporaDZIrh%K0SC% z|JLGtkEiCbqKG_JUwsTg_b>CXI32F7FgRh$LixgrR)3O=KZ$S6*~FpP#yD|#awra zxbFP;yj&)1N76ch>HJHjm9(x-PF%V&|7BZ`&smoj%NeEHQ>6FLH+#7(S)gt9q-RHY z76h$Wl6-Qx-t5_Kccythlq$WucGcx|{#Qc`EN<36>Q273?la5PlUpZtd54;?FW+Tj z_nCXsn*iI{SAsA7O=6Za)l>WCWPD|%_4943yBpUuxyL&{KRl6ELo?~ms2|GXwP_3@QGmltxrwTknr z&R+iQ=+z&l>+V^Gb}3$Hztt|wusv#9l(XR0EjRZ}ZR%_AS~l5nli1g;ZnLKkCl`iF z8NP8dX-zRqQF}FS#o?3B?%g;v>ARUi#H~W3{F#momk<6rq&ACvS+7}))kEj$dWBZa zXOnN%G@UPAFDJTBL#mTKOnq8=nqQ>RY?aUJW}4r=vi+KU)u&(0(_7P$xU*KZRI9Jn z^6C5Z{{Ggj0ox~*Y00v$k_>H}^zg-=4O88n+2iUzo_FceTybdIpHr$Ue!TF#!g4Ix zM=8@$>)XWq^p43|G-+bkIjo{Z;Em^f?*RDTN z5wVSNQyU4l7H4=dHdm|un&_rTrXe~f4SkraM`ECnX{I`e8HuKGk^RQ zHi_HdT4j3j|8vp!de-i~*U|3FJ#R0WbZ6bP^Zv`M9UJpjS6>TKn{+m7&%UbaMyb$~ z?Zu1dXl^zZVz>LpG+Uqh*iy0X88yB~zxq=su z^WICFkF3AIxcX;t*x@rw-FYW}nrkgAxl=a5tL5-)Zq+=;SNqH7J!Xjga`4ZI9?O4m z^M7$}l3BatsbKV3mYbc+)cL>NUeUKNWlCMX(?YKLoZ8d!5}NI8dDRVpS=Z0HPd+Js z=tA3{#+f<1mCvp}>DeNyD_i&Lq2k{Dj6Zv`tb2-;u3U@dc*K)ZX7hilQ?`(8^ZM|E zpY{HI@Yz1uK66D+NxLlbG|@dT|CpEwyIi^99{MX5+8H>S^i63FV{ZiqPyMT@@<3L@$QHFgHCU-KF8B# zUSQJ6^q=+FqVy-5`6A@@%ntnLzwOH;>GgBXqz|ZTeX}~z{#*S&V`EGqlk9E56fL*9 zV85LT=2P1xpPn)bQ^`2@f&0}_9j=`f6Q-4I`KZw?dW*X$cJ-v1`nNxl!ULa`Ti2TC zhUr8pxiB2dJ@}XTkop#%PnV|stTbQcV}5YS13kw%+S_JXINpEKfA`Y*vzjq47tFP9 zHapDFF3j@yh25;{0*k+g*z?|Qk?YJeSDEI}5Ytd4aB@f8)2#+G&k5UEw>)?C{Jp&B z6#MaQidJnKX5G=d-9G2>-14e58uQ*APG+m$s>)RLTx|2d;+_6CJnqI=E@GdzKj^&p zX}Jksywg)yJr-rfUE9A?jH@*|A(al!;S^acj>H4ce9yx|WS2Be(M0Q-On;kj-z@9d{6^r#VHxzwX6uWeS ztiE9KiN#{c(~az=zCP#s{qvE|dl%Tc&-pIoG2*_J@l~_(kj7W}zlj!>pS{^nPOAHn zB#=C-JLKI}&1LtZ_(WeO%Um&kpLc1Z_(#bK|L-hJuCq^_>6-H@I$_h#X@bcL0p0hE zBe~sMZ_i%Iw@7GFcE^VamL*pui)N@RthxCit12^OVQ<{iNrDD>KN{2C+t}}HmTbL$ zM!Hxg=E{20$eS0o%rL$+H`nvK+;J9;6oThJ~ejQJT>XSFxx*){hK}@3aJ*?$~4R z%jI)7u_vW7{mSCcvI@VH4mfw!%{u%}YqxY#{mlcech*1pr=XpI5u6Pc<`HP;qE+h~dh~wI?m#_%W6R-R#eKt?Ci}Be+ODe(v3v zX}f0IU;cdkQ1x4B$JL)h)Hi6Hvgonj$z2vBoF?-$ajuzgcUG^FUWj>8iOY zPT7<5wb)@vR_&b)-hwU8>yvLUI5qj?hCR!^HJdf>e{v%6mRRooMLTEQotOD*p>~vg zZM7iByauriwcDTQJmNU_e$#UG6Y;;Bu5Mgz(xL71Gd-=ydD07+56f<+JUlmJ#mQOg zRo1^sS$VnVX{_&y!kd%!fBBK-(Y8=gY9UMT_UUhG#2;{;y14b(q!1ZRXSo=ez9}D* zZ|bMbZv3k3-kBiUDD#fxZ{5Xzi5JiRXj$%9QJ>L2Nk8?j`M2YLjoAU-FNwT=M=-U2^gA z(6d`Ioo7im?+S3XWHB#0@Z|gYHhY5)w zSuo%9gY{;%kI5Gc<~t@InqI-KDKl5=^$Fv{PJ3RjzsZ<*BUF9CPUeuW_A!OgOl&uM z1DtaEU%v=r=XuKiYL(??_To0)^#0cyopW0!v$ox6dc#zHm!D;op|8urS-yNyF_C(h7&D^UsjNe`_{--eWVDgU1zc|9~nIElBZ>(?sHrw!v{IXvQ)HFUz z%Y1KrZM*98ecLykf*AroITUZU|4wLrDB5=ad-;v0J0?%>{!@1071z(SYYK7?kBLb? z*|kJuvH!keq4Kgtk$b0d%k*fL9Vu1TlU0c=OY`-A!l_w!>m0Y&XOYM)EXzMQ=*w;@ zyc}`jypvzqL7u1FK3~-K8l03cwTWbDd+#GH@_C0#+k2m^y_;ra8rofL`2K8Z0sCsZ zHLIWO;`x6=_kQ_Bfw)y(Tl_AI?6ff6c>7fI;oR=T{2QXp@43SB`NQ-4<+t8mefeMU z^Y7&|`ud7~@uu^?K07yjuI-0wmbsIHwC9E!8e31%wD3s0?#{!%sYEH*xSW4|x%XzZ z_RyOSjBV@h|5uT$ycLm}$MMJ9mFf5NDYK@;&e7?O{TKZ6*MFPM|NAvL9Ixm%m^FJ@ zt8SQgh>IsSI8@%}Ux0!3GNq>;juq2$UN4%xF#2>)?;^pMcfV^J?iAF%d{?MZbN#1W zzJ;&47v3zs)_eY>V*lrlk2GXM^j_UME&b8ziz^c) znA^U%KKa1#DWU9BxzXV_F^~0n9ghEq`NgxIC-8^a%84zH7-rOT_buV}+$4}^k?}41 z=lS+GH(7KT7QatptCMtPV=rqIJlSmT_GwllWBwVXHH8{07$j_Yw=!Mh;|`vtxa{go zrW{4X+tUBI^p#d{E~|OVzV)@Z%aT=ZF71sn3KFpl4oME;e)nQNbNT!#NnLlgcTLR6 z(btYgh@bBb%G8*v7<^z-bZ$j)#RJ6!D>kl>;8(Tb56tx1sq7+KT)FqS_nnogi>#OW zhaUfP_3@i@;At1@~`cDb%8 zxS4cv`bo2mZL&u8GbOA9E}u{;$Se7CvnTb>r99Jb;Sx8>YZkn?Yj3q=LjH@;)ms$i z`=pyyo=N|4XZ`x<{4doF;fx{MuP+zd>#w{+=$_N-4b$Evk7I#rSDP>4B=OO+nJ*+rN8fy zrDh~+^YYq*EtfgF@3$E|;5}e+ET&Ua)AHEe9f7kB+dt(n&UZ9kw;7DO((XU zeRiOB=_2hDsc&8uMYb6O*6v{UVcFS9mmWAcq{z8GvyxkQ<;Ejv^WUy>oj)jV z^Nl)w<^Q60u~Y9p$vc0-_`=N^-smb#U1hy>H><@oqF?E%=dJr~+WNu%EZ1#4@kTxt z4vm-jJt4pEo3H*aCMr7TO|P$S%v_&V-rSrXp5C={|6gZ{*w(eqw#!0m{)UTZjaImL zdz_4WsIq&h@8P?JigQ(R{zWtfZCIkp7HFJr(!R0sQPi6=OCw5IKVI(Yn($tdXW=20 z&Pn@s{P(Xv_;797u1$O8%lY;lzkT=I_1QY_*R{OGTf%XTls|)>s&NNbW^av)O$U;b$6l zM*6B3O3K+o{15ABm^|Ms;QH#_=^)YWsCx;mxqE(pU7&tDB|w?&Ytzf5TRp7vRH~a< z4sVZV>HG9O*L+`eO-q%+Du%bxYfqG(f44=x^JiR2V6)lGHrCs@Hi|b4wb|GN+tTXl zsvfTC%KkD*$@oIE+P7he9igaja9y#mUk;> z8oW02yP4g`nZ2uRv8R|@{YOUD+Jc(>=a;T@2+6GFa9V1iGq?DIS-P90{GVB78vh^e z(!V>yc=zr(+)q{3T&}VYC{9{4(?-DkK>+*R6HKhkr{65lm_6x?YVwKQnTO*)b1Y^0 zIc@4P8QEYyu}{v0{vsDL=9Iebnqw#EvRY%)=Utn>x=;2LvT;3>)L12-ePPXP)%11A ztgFAfy?wB+9h zmTBju?w$M1*Zu8X^;LKFammc$+quxAPSEcBPL>&0u1$~%R*H2Kv7RsHAbEcEhRdJL zZ(087z0!Zi$KTo^6!T0=geh%3pB5|8ZdsUGGM&KQ^Xf3 zX1RV3>!$lpbE=b0iMFk(%Ft+@D(@Y`K4)fZae!j#J=$V<=|I7 zMNL*QCr@pD_;E*hx!no-4=5_SB2Ogz9OF3I5&t#M~ z=Zo^z(mQ1=(mB_^SwFod+;d{V&Nama?=BX<2%6CGmPPw+S;NiKYz|Jwj)Dg@#24x= z-MU2e>xIxGi;J`mE=&LQB;iGj|KiEP#Q{r?tYBQVy+W}$)GIM zUvYV_rt6cpm8;!W98Z|-@yOuUne1v#Daq^0#dlaWUT`jW!*@-zye!L|L4r+Ion?iS z;nZE+ido%{+|LAT_}X*HO!tga$&;K%*4Zn9c_-<``WkF~va=|l=#0*}5Ob68wLJ+@ zGwkNE_~^Tq7H^SM_rLc1Ko?K1llr@-46XM+8oL+wIr@lRj(&1yl>@tH_>+)usi(VH zFD;wOp21)fs^X_QHS*g@vpdypFKTC)oOF`#6?tF9W+4!LThY7m;AS`VZ(I^>D^ur} z*iCyKc$p=-{bTn5qu>_zfDShMUA!VU(l40mUr9I{+2Xe4$MTIk=W`sg=CybmTt97I z)Rd;j@)PenChQdmt@l3kaMqed8(wLvI?a6b(NpZk^QTg~q-(=u|1#VNTX)4`j^&wY zJ&la(*7!)e2gs$E)EIH^Va$i{i?^F_X@ zso8vey6o`Gi5gSG7Wn!){hYX=NB0hM`x&k?Wt}%?C{;|+I&HpOd2(j5$l6E=*89q4 z6YflpYJ0c+Mv8QS_KnrtsY%A?y3<-1+3z0pe;~5;#x>}_CFuGIn%Bxv83#) zNs0eI(MkWJ;i{$FPrnDBynI|Z|x+Tr2Hq$rnbL+uHC}gy0d4| zYVG?AZmBN*aqOP;k-UAaPL)pguO56M%idz6>F8U`6Tq6%6cxaKFmA_|y@@r~9H%!i z`NT!s>TG%cP(a0Ot?&OAH|iI^R#;KSQe`$d@|N$>*t-+o#r)8#mns%Iw|xqVBh%yRjYN^_DH@;TJ2IBv2K@lw&`Tqmr1(=CQY2SZ9|X8 z!oD>s(%(MMdu7>Rq%B#iY{9{#ed_MlM{j4=CpzBoT)$%a)*qk!msGMIdM@`>KQr(D zM}6ICf8*KC|6gSO-!b>e%qPsOiR%w7oO#=Nd)ES)2^W|>pQ$#BXh!k-DJs~lf4wWY z-9XiT%ftN*epq$m5KE){uo zY2A|>cZ_%X6!E!jRLK7N`Blc8(uPu%)gtq?q`a<)R_!y(TGdf;YSH$J=NX5sgca7c zR&^EjsIJ)bVg8}Y+GoFSvT2_Ehr$x~ptUp4 z+br(AbK>!`*7fc&o1dD`jj_-+bPqnYZ;8>Xta4i&%W01v%!$18Qd&3Q!NpA`6Zm5P zt;kr{&M(+@d5MraQ*mj%=&{%NZguz1KQN!x9KrE0F#pC^?N?lr=6s0!@n`a+vkY0s z9zDO$*zwcbxcA>y#~g1wDiZbev*o;*w{rc7{mYVq$ebwKl`%l^U;pgkk zhVw7Q|3CTTpU>g~2L@)wzs?(@|NrNGJbCi}_tVVR{&^pI{8ZSjYZ*$lJWjz3f-h7; z`A-|EskuyH(e(&EHZZU4nK6nS?+K9 z+r(QQtDV;`-t~fOM^3e7bf^Eb3$@Z4_h)bPF`qq8P_V~bRnXMOq_9XhE<;5=;&R00 zkXiRm9O4%ImSl7D-xPl}ev6xnV&+x&o;<-3v$s+7lE44zuJ~~CDfRnQ}nr}+o%p8b8}+do6FauB^Bv16XcRq z`Qk&ObABGbU3l>BmP^eW&I!je@}J$Q;&aW*Yn>b?ck*HVhlYDS-B;akeyILO{$88e zqaDh{t9OMxknZ8)kzPG_-Lkf+hYl|CTDiMv>iV~zJLVe~Po4AjV{>lp?0GkNU%cO~ zwVOBhOHWPksfi67^IAK1n0U44fA1EPv9a81-yQ6H(;`#&*op1~=J6Jvt|V9;KD*~j zwWj^vrhOBc->qORS;cwd_%z?vzz>p}U1qx5^vP~$xNCby@SNE3Z{n-s7PB4Mo@my8 zgRMN`XTJJ5&v}7!r+VujKP-7^hl-Z*WW%byS^N&sFPo;+WZ4UH_?xTkMUZ&#k#PapS};7tQu9 zLJ{TsK68XqXH*uPx$(U7V(mN)zvAZx7dY(dY69=woGKY1bm#rI+_dfcbE?jNGX3_e zcE6M4feQ@xPn@2szWr5ZGq>^MoBfAMa+nQVzNzSJ)H*(i?R1NNbhpaR@4R2E=REV` z^>hCuf5&P{#kKt0J_)IcX~sO+5^Bl+J*G}MbZqsso;>HwzE$hKmTfQJzWQFSykOHk z_vjl96<0SnnKFv3p7j1j%*_L@ST8kI&zNcAIV+p}(R_Zs2|NBQWm;XvXZ~lx-Ni{c zub#eH#pmGFVYWmo{&tw|4{b{+)r5lmdDs3YR(-1X^|ySGk@h8>m>3A|LATDst&Wvp_4zkBTdFXxb&gM$neEpGn?SDr8DCxDbDr?`UG@e)#@FM>7 z;U#FFmX9zy9{@Rdcq? z*|Y0T{i(*k)hCoSmud5oeXLfUl#`|hZJS`U2fi!ZsE8=v=CKDkTj zZDn$Y(B=51gva%)KLcc5wj6GIwD+y@^M{4|^6F21RQq4P!8BQEU+rzvg1=f}es7lB zFE)PPZZ+T2NirxUFtN?(*lbj`z^yZY8&_uQB5pYI?4*(UI)_^H*-`BQ&NYO8SRysuLb+H`K& zqCT%G+r{M^57e}D%A|C(@0+}w8ndle#b!n2h9zCs%%n|=J-1C%dpy4!dv*p<*|;MtT?Rj*R-nA$>>mZ_#oaK5pT) z6Sf8SWKNs9aAWP|1Ac*r?k!a56a97YDO2%}SxKqEcc-5$nXIzr*At&fn!EKvy=3Q} zuKOCT&-um9xqnKRW|%%h`=k3C#MtN9ng~fed37&;a-3?MPmYI*!|&P4T{DyQm;Yec zzr@A;#Q%1EwMQ%WHcjr)3VKzO)IK}o-tL6o?y-ljhpY|vyZ=+F|BygZ@9N~mi48ux z>_Zyja^CLPt0Dc_)tNKp^`D9l%GX!e?px=$lHFZFXZxhiiIdy79X`N#y~X{Q)9M|+qYfl6{;xbCp&i$>cIBPw?uNHs z?Tb908ang^>`H&iYX7~h{eMgP)8CJ4L*z4_m{qL*k|Nf8h+pV!CgYw^Uk$_f&Ti4E zQB&1~1MX>VYl&UF=v?I9jg>bHGhXVv=9{qXUDmDNzPjlb1EzBNGwf|snpZR>apr`3 z5lsTS9WJe66MwlUaCzEGshy1PBmb0$*Nex?+limvxc$F*ru3J#xt$>&CJ(F-1okkaP6IP@nX*{7q{J< zGt>3+fo;|@kJe2)dN%(s_mvQh6ceQtyEe>Pzhav2`p(08_XMiD=UfuhFAH6G!X%>b z>Wf8Rj_yjE$2YN}?T5yyJF9zc|7dzqtTv9%X*RGB!O@94)P6T&nz4{=MA%^CoW<)n$V+9V8UY zD~{jV!Jz$VMZe9$o@M?aei8|s8sXoR(wp_lOWwHzyI8tpiB(`Jhbu4`+d6MhO7s;N_GkgzC56j9>=Z#qZRJZqghFy#3zVB;obS9Z;Dc|anym}&9 zrZ6E-?}NhSsh0x|*8SY}f3Zui+O>gsv@lv8*iPvf%I86?T7b z-FM#Z`FVPT;q2(iGqOU==1=J343od{r(GegrtfZp1)JiW8RmRXrq3~I$T55MhyA>A zS>nYjNs(eN7E;u+XTK}c=Wb!%JUDKY$sGmzbH07AF8gu z;9*s<;DxXMzWQf6{My}r%>D_x^M9vB&;NgJNd7th`TrjWBJW;0dg$KOr~CCbZ27<4 zOd%*(UAl%97E2EwpXY}4oliDsBd~M-J zmOD1{_=C2v-peTE^)C9DLbyMdcnrqpMEd>)ZeCwDh8z*LCgIYyRF*7 zkbS{-<&g_wJSQqk1ERAo@6mpB?91Gr7d*C0`O~A>Qq~9>$; zHbKh8Ig#bt8LrD;FPdxbditpQ--0kVWyV!ncNo~r{+;YOs`TSl)2FCC?J)tFhI`+$ z?=1R$(Oz+$+Qh5hZ_nNs9yC*a-mQ*Z_rLO_ahb1vzfvasO5?NN?3OBmQv{3;Nw`LT zk-7YEo8q!N{p)X}t4>W;Dp@Nr<0bRzoj>@OtEDt{?j$X{(e7t_{f7*TYFlzM3$^P`7}O!PWGIi zS07HBGNX`-bwSDm*VxMPwCP4?Zm)Zmx64IqN!^EUSG7K;a%60t-?hrzEHe4&%`2{& zr+e?2zdW~jerELE_;~hD4(C#JV)yZ9%&2ruYJ}!k~lxSOnPP87QN(?Jkk~J zi?`lkUjKB$&-u^#`mB zYwmr$`bo*z-{%@m2y{8doZYsOkDZ-i`N^y;(URG^XP#)h?GY+j{CrYO?8mH^D-~8f zI;!w(L5pSeg&zx485bov{9GaN!^8eM%kQf_B3W-`)ZYiXY2V=2vEEU%Fy`{wmSwH( zZFieaw3|(4Hhp&e^oE)D-+IOVRQmPIv`5W%!olgU6W{*bZ&J&&##{E{mzkOSt90ke zZu&k$uz@%A%LZ-MLt#S6&+ZhkS@+)6Kir_9Q?9bJ`cZrMF{^ypCZ4&U>>j?IVNser z;q~>|E!H!0j!0>6^KsV&GUhC4*OR*N&hmNaAvvdSyhR%~INr#}IBMPZM)~%qoew6J zsrgDC=l`W#up!QKbA9+(MXj5S3LBS*wh4cod-{3$az^jERn1Eux&N8tez)LSudIh~ z)3v8Jm#^8iNmY+~lYY4O#hA={YvWx5gYO?<(WuS#x?%SHd!_y5ur0E0K3_0eRkPnY z?kiW*=|gJAA02jjGsAk(;tQwWKIG3zd42crtmQ$q>f*VI`<8zGxxhqj*H_Dw50~Y3 zY}wEDJVrmS&{dLk_0(Mvb9evVb1~+YzJ@LHR-;bEcTrP6tNF*hwT`vkzxVLV-~S#3 z+?AVm&G(bKkOYs{sawsaMqbhrJMT8H>x-Iqe~*buh><~S$%n&xQr}ztet2g4Ys1Zo zR=G!>%s9QP_$&LejH_Dh1+x~c^L6?A=EU#Aif2tdosF56|Nk;yr2SsL@w27>tgQdV zr}O{)f9vLd->u;n-u*xHa(C$3{~Ogg;*%ym^O9bz%(z}`%h^YpqNn*@(_OqcU2s8z zQQS>C~%I^_+w=OUjY&!0aJS#x2To`24Ce6%ND*kejR6cGZBTKgD-Ch+w(cH?X#*W-s8n47e3Qn)z z|KjzeQ*(|j|IO2SWMX2UyY7QW0s)%Qzoa)Y)Fj(4U+E|zwzYRHi<^a=^$rc|qw-o? zH|nl2JvftX^=rk%Kjj~boOdo|-E5^%+|?iS{o#e z$x-hMtZP2&Uaa1AM=kSS_}Yh8H!{!LoE9xDsLXFH?xLL$b}nD-cG{DBt0iQrD=sc! z^J2C=G*yWETDFYUF3pP~ycYHSr>y{p!`peEZ` z$D+*ggXsCDb)ou`TM9~gBOAXiv)*Pexl41;JO5fGqfff$PfRV-m+{&E+ui(e)AeaD zj~%|(aegbqo?7nGSKU(E`ghmuS@@~z@^1~hCtUO2O=MxJZgpW4zV^xbZ}<-5V^1dP z>|PnHb@P|<0d<+T@kz6%ao*jzXNS(E$h;Ol&HE0j^+xT5yY4CFz2Kb?SQE4KO#feY z<7&?TJ`>d&zjQ8_bhI*A{p8HNBlmXIzO4J}sQiHU>BaBNDP6&J{*`Pd>M!3sdbF8` zX|eNxRr`bX7cGBXe7Msg-1YB*e%6&My&tBFFif((skBn*`ixbp?Bmq0m`m{4AB*~T z;Oy4@xwU^%K7Kq?;Cn%&_rx3PKg;XRY+4m-$tR((fd5YY%APm#@BFndztHw;Wo^s% zx8B>tC*2CUb48^)fnznVZe~nm?>4{KHBBrxZJw8v?ezTgT--$`^L%%}5{vfL^Io0Y zq;ve4T=1uxX;(E1BA!m|j!QfKn`vH5=5p_}XIq(1eec^6Fk6hnE}rS|x!wQ2_x?YA zz3cnGFV=_ndowe9etix5-P_lGq9=u!qvb+J=LrX^i*uNom8Nm6?kL*W_*SxW!_j$? z+oaCu{1MY)IR45*U|z&kCDpBam9i(4A6cw@)x|4{Gw4@MXZx=`Hv8tjO1Rb<8oenx zeYWhPU%MI}2U_%2>G~eO(=X`6XQ;g1qS|%a%w1JN%G#^1USj`}!4X-T|23#`hmS1F zES{gMHMIY^&Ewn=V{}0@{^oHn!?-?!cT6v>mK_$8y30}dwDFbPfsMDTvhIAzyD7`Q z`&D!*>$I4q+bdUdE%sddE5WteCUEIV1DiI^^9ya|` z?dGkmd>jx`b#&v`g*OXYd^$u|nbt>@$~z4Go#)NiSt{!74K*!d(C8H zF$}X>v|+E;%Ba_yqvyAJI@M}?RJpYHm?m$c>Z!~eu0fYn`{T3t+qNlJW93dBWS{Z<$(+C6m;DSpV7LF%{o2RcuG4j#oVC*y zuQYO5*>#Vz_3ts)HJT2UUysZPnqd)mW_4@g{%6;_OSV343>K(9dEx23KTGD$+Sy-s zzxP$ZH|OM?s)qilZk()bTw1R4&rex<^WO&V)`d5Vv!%Ds(@k$(d(m&I*C&OL z+T{-;g0`9)3w(5sv%4d@(&*_PKjTx1CP!X}w-t*&Z97vrL5bh+(V}yYSau(9(m&aI z^U88(6%(DFAim11mn*-OZ57U3G(FiVak}E>gU{~24qF|msjjwcYdEj@_eH(mmmVux zwSZ@V*_)1=yK{PN7hei~B6}ilm7K+~t&C>5m-gO#WYYZKe@adcPyg$9=v7I}@#kv~z$`h-a~JaeObNFxoa}TyjPcCW=PS6T&fweVrZ(HJ_`SIGZU>$vEY<(M zwm1b$GP^35+kGxCXV(0y0Y|$fuI_x1viZZFz>8P+s(f*Y+!j%PRA{r+tCKD_)-Rmt zbIR?)0fC9H_S}&+yBnOM!^m(y|NMhj8M}WZB>S<2^GixBvQ6Nsy7KkwGs8bp^P<(( zPGmazYu)A5U3S_lLXK(86Z=!7s&~F&+x>^1cAsHbxA~G!l8QF_it^H9+jvA6Zyot& z#Z;&BwKglu?%iyS=|5A=*k7pEc}9so42|N}U9(W_$RiQq7e>HjRg}o~N`#Cr-A~I{*B-i|fA)pLUd*&Hv*2|6Xrj zxs~tlM1IyVDPLINg|#8q~^JUc}e?Xr-7=m;6sv5tq5$ ze!0amLJK`358ZrmAtvg0YFpe#3-6bkyyb5wZE0sb|3uMOkF)X8qy_6vyyAW&x0CU_ zk9X*~qj@vDZ%mC!)o<%D`1Q!3ZsBLIeeyRJ`D@Kub>YP2 zm5i4Q)~`3P_!8LsDA`*7+jn0Nr9Hy41()-$tBLp@njZ9f$NH#E{gaNVi!!W!wB~(l z>QU9ACrgv0wET8|6kt5<6TNwN%NtFt`_roLT;zV6`^D6zD`CCJw!Kapzlrou-{R2r zDJ>x^G9df=1A%%Q`D+{htTz4=9-*HcCUo)iRk`@%GjjHIc&wkW*5dJ@C{YHlUvpDa z7$@7+UYNA&k?=YD&`puCmUFcC)*0+*X5CtFtNX2^+-kF$7oVmzoBmF4_y3!+KwR?g z`P1)Z^Ica(EoCy6{JHh>} zb-Nk=hFf_j8JEfLWUOA`aW$Q-b%)4>7;V{3R+;6G6HZ=N%b(kFtRN|&+*I=M>&MfU zD7S?V(FzP|Obnvbgc9X}LI>{}c^`S10DjK7N;pGqm2e3<-FU3J@p z zA-Kfv<&kO& z=kM_c-;3?|>B#IbeNMhr(i64`$A0Kt(S5RK4QF`m58v+fZ#mSf)2#OY*xGj}`m#!4 zf$H^gq%E5;9-w=C6?-{9BZy#L1|sXgB`Zp{~U)R}8O zp_yG$DU?}K^iAA0#$`X&MvLpJ?~BZJ-(|#dyUEIO(dMmz>|wv%#1%`XK3ku7_1XG6 zvg}a}Z})n=bj{jQ@t5J{$4enfO;?;0zV3*wblx#X&^kx4t?sH)g+-cY_$!OR{|yHo zWOyo7-kBXr0UXceWl~jhD!?Y4Dm zJ+u{j__|FtUh!_+FBzqNj*q;)LUZ#MXkE8soBX*Qp6q+`4#vej`uW#xMyI8~RjFrpE0vCDLohdEJQ{#Um1x8eVn8B4I z;&N@v|K+aHAEo*(Rck0H$mJ*~-1}dfwC+_>=Hoy6ztknxZ1KIg@9)~{#@i1>`}_{d zS)Qf$_^0@)J;Ku$XRqm;m9Wj~%6Z;xo|fxM-oBOE^H%+wFVp9;LXL`^7Y{fo9a^@+ zL_Lu4x0dtTDOaxiHuzY7p*+LSN>{u~&niNCUA)!p_rK0Q`(MeEdCSEhGPu2z$oB^5QJF!^La=*-Et`wq8z&RDH4wPGow(aajo>Hz)Z z>ME58oh$pgCgrrh4%)Yi;Tex;Xp)$IP^H~{&b8N?KDJ49uU%H!#a(dx(ejk=S=?J! zomwaPL(pmaL>GNt>(Hqs&XK=;MYp^><>?ywg0E|O%I{bKPj_l3)8+KRQhND_bdq_2`gS4ZEp@3c_jbxw#O>Mgh*NgI$M)$Dc4TbYta7(? z`UAx@x5SBlJSW*>J@{fOH+gK|T*v+Kg7lWJl1s%MtI~J9nD>6dJr93|%hG{St2gky zKBM(UUR#!bg5*JYMQBGdJ7$NZltI!4?nabIPk!s zaNfXpe%*s@$-$_cHC1Ph-x?ew_St!m6SL@%bACblH8*@xClO{+-(|)h=%K z37yk#;{93I`{wNAeb1H0zWBOFJ zfqcyZCR^n>)nt~;o#U&Yw*Eo$(#Fclw&@}2OK0DzdcJRo`0*8nyQl76{rl+iP2brL zO}_YP8fQ+@gYGTk=j|tBOlP|K(&2CyVnc8MRd`t+hp36$?HbY5BKH zBl&n>(Zt=OHD_ze=U)}|0WhH4Gw^Y6poMXMgbWTx4at+Us z42diCk8^8$3nYzNA#}(puSu?v*jMY+oDqOlZ|G+1V2j8DiM9a{Hvu zck6CMZ{dD)%%WF4)g`Rg<;caXd!}i^itC;>JPJ3-Uw^V{`a6L*@$=ouJh$S)Jbxa@ zv^YAcWrd6HoaLJ|b&E{i8lNn>cjArqSJkw61%HaSM?ds*{V)+O$O-%X)Xf%mzn`$}s6))G zqz`L9Hi>&hzjXa_xc|1kiKx-dAdUsxWf@VRZ6Sr#~FPZ%{{MSNTBDSckJrVeeyRthYNcTgwp3Gk@;kXc^3rXH_A^!JEb1O@CMsqbKb{X&9 z-{-QXP>L&u`{0N6LTUB1nKO4hnz!WPU7oC?ZBv6J&tI5wZT7n4X|xDA}u36!A?7+kY|85=BZF2Nl%DZfr5L3)P&ZMWStz3*J zzHHazkIlJ$p-)VSGgZeDM*o#QLN3Vp1#%K zlmK5x4&RQw$&1!Gesq=)n_L#~?+kma;In*}&Fy&>0$y_-yi;;N@<`0EMO452Fz4Ek z;Lzs#Qxd;O%e%zh-|jQ}#U6%v4u!`rv9o5B`!_HjQeWN>^XBKD)4x|fYE4;p=AO8g zUH*}ToZTTAdjy|#D1E+E=)6(q{$!>(^_zR&S)LW#Uu{(JEg>*YJ>S!+Zt@K}a z;#Gz&w~|cRA8Qz6{REht@9}s2+z{fviosjpc~ikIyP~ZHUy>c?c@@s;-Qejv!@q!i z1Mk9n=WL6goS(Sqj+x1xErD~Yuj#RCobjK~Svcv&qv#7IWt-=}Jo~ou1J|=Ral4mP zpSv;tkJaUUmv+z9VQ1Hvy*0${Vx*ML!Ee)pL;soFjla91uBT4?W&i2k5c$U2XXZAq z&pC9vA-{G^Wwvenukj=#0{r(>~|7Ra@}?@W?xc#dceXLzpv+P zDN0!Xvr?ve>XNVGqVE>|7oWc8n%}h_-tvtNjsN~Se*bSj{m=F)R<;TCtFCIT3+Qoc zWnemV=*Rt_55K?b3;#X-dH>4Z&KXwH){$0!wtFUfzvmUr*%#)i{nn(6e{FEWCbL@~ zniXSt6_-xA-?xx$@#EFg{w@m;^y^Ihn4LfS=xov1a(H{@p6#_9 zyPs`8Bqz6Zg@~^B8qJXPj%vHC?_Hl8`QG+Xe7X9!e-5P_zjXG@d#;tXTTL!1>qYJ# zjUO9KdaK2xe7+~F>fGjC{QkT0hNXR-*Q|8s%%8(^YoG9*S1&@{ZeQRq7M48R+IFt; z%sJiEX=^S^u6%!*l#r-s)m{A7{S!$-O>4e*XOT512Q;|2xAqv};X9osjpO z=IxDb*F=Bl)UR^8P;n<`2FH|GV`J-8ZS}u7+|~s;_~0D+H;egn#_Btv7pG=lyRnJ+8|U>4Ov=~% znYJ0b*6!pgK53@3YK9f7qdwLdM;?3L^Xzkl!w(t3&+wTiLx}9h2pVF!{0Cplr2tO(1udJ~ ze9Sf-Y|grNc!jgYg3^Rrw$1OZUYt6A^9T0i!uQkP-&`W`E%nhwfmuDK+b{mVm38{$ z_G3b6NxT9}It*8ToE-nWJdyG13&RsrHT-9~=@dNVSr%qxZq&u3Wa&GPdy&kU#Ts{F z&dmCJVrNE>=my_o=jV1P&S(@lwAuJKUg9+P`tZa16XHG3qJ>(M>o=b;?oo&I8%9ggjDaB6KYX3(`-mh8i} zcC)l8^WK`~s*Or(9J{QpEsC6+e>XF{znhPVu)~U z)3J|T+GHBG^6Tz3o0kWxSDemEj=A7o;di#gvS+v?z zw^UQ-8R?RrHad%3Jj8C!s9m@|SK5BE@6U*JqVjPDdo~Ez&6v~`6X<$F$@#7{?-Q~4 z@pEEU&guv|s&unwD%Ulh)sL8JWByo|-B^CB|6^8QT+;M*YvU{2{)b$y-930HvzxJD z>pR>39nC6pGM71Ze0A7U@^URlz#GQb2|hA~)V}B`=WPzN+-#a;xU?!ZN34mlJk0+ecn-r z|7+KN<+$B_mvQfDX?yq7s6%ndM}40CXW=d&@d$;4T) z>~iA2*>{$S8_6H)>3-b4UAO-Aea6YpSpINs|0UgOPF|Oj&g_b3+0GZHL;EEU+-O0cz3SB=5RyF zQhE8nW49k#R~a7b-_sJD`CV#4_OTOc;n%mY-#9h#tw~Fn$%1?0C(U+-Z?C+tZjJf2 z{SO{YmU*?v>iYfQM`?ZQo<3ha;iUTQxT0szPF9FAiNE_{!5jQa)Q#=->&GtaxzBU= zoW4}Te&}_+%nZX7-;R|^Ejk(eE+@oHeB!j};kOpoHXEqL$xlc>;-&a~k>s&fhOLo% z>m1eIXZ5!koM*GRd-1w+lhveeayC7J;X>?TD~c75nEvh7W11)~mU8%6wsnbE^8?xU zDtCXrOO`%YWHjUUVJ6LIvp4mHY1k~fcj&%r#Ls^=O;6YBWQ4FYF}JEMKUCed+v*Gq}e4ZK(LlQWq4iNx-1tL5jSe$8cY{weHs_WQ%%Jh78cS(!h6 z&=h@nweJpRiS%1*<8^=iXW6s6*N8!O!hUxH1%-e0oE5HbWB#p{*cEX!zV0y3#r)qE zp+aI`QbTfgCTexq%8NKIp1Mt=Ynt%!FfT?+KV{p#lXeE54lGgCSmaU~ThsfvBzD`Z zyVDLd9LUC)0#a2c(r>vo5v0 z=45*Iu$&_At$jB-tQT8Xiv6E-r89p1gZx(+uWrPBag{s}vPDoNzxICOE1n36_t{H@ z%fH1~>aBeGc>g9p%YwMXO*8G>H_R0~P&mnc#lymc%TsUcTKsz%??V|GBfB5A>Bbdl zHxCxYNu?W=MXkN|VpYQ0O^MtERzHrdpIoI9^wo5IOx)&;r_1uT&f9iYtYyBujod_G zu^D%_1+R&Y(iRaGGoP-0_5P~N$~E%@bH408I&Di)c5M7y{r`Ja>K2!5>{4m?edMp8 z-R$FD^?N?p?3pN@WAw)5wY=|?*XJ*NUA|;f-ld19w%NFdd*5x;lPa|~tp6@2yt8-S z?C!ThFIhkT;&_&(CnR>t;=@9fQ%4U?pTy$YonYhly|H06;;+T(4fPv*Hdwt>jJN+?GUboq2h|@l2bqGptsA`RT08Rv#tZ_3I~0ERbbB+n(evr6qXH za_8Z~1CbRUG}OL3d3G5ZXIq6YK4LKafvqLiLB}8E>VlpsSNFu0dH;QpUZN5g&Ez~? z_l#Y%yL66HjQh&6hvE~h&wKp);*}+_Qp3^Z@8#Bu>=$Nw3wqaZamxRT+|goFQf5|V zoFuR@Y5{lNs|kMlo!`m4m0P}a`Tes#C9B-uYx{NDU%c{Ge=>`BOo}_}=Sq>#cXxiw z^SOEc!@{@g*XuuDsrcjT%^w~!iatHiiOleqG7`2;QLlR`RqVp3@!jgkPk%{^7k#ty zot`E6JY5#TyS|}B;n&5K$_XYj?yh}M?Y}^E!4wwFb@9FSB`GW88f-J_BGpYEeE-Q1 zx=vK{;GMb)bBylTbuQcVhBf+Cq}hf5y^aeT{G2!R-R}R~a^rfUYPGsqV39%Xl`K$kP?TpoT_h0q;tAEZXEB%#T&ieHbgX@Re`wj!d;I%jU&pE83qZyyE7({@OXYd3T-` z?YFwO{LA0{?=>1y*e)lX-81}o>$pBYeYx$*8jDF!(;xWRbR1}tHF_kn{p8~lD+5EmTv|PMv1d}& z^qn_m-k2F#wC}ouOJVSP#_y|7NCeh8?y{cnW!GWd1pdIey|4P-t}&W)#j5J*1??SL zFY{h{+4@Oro4Z12bJE;e-=%Wi>%+Ks=Li0($>hkLawcca$NdQod++#vj6FE%q{WtS z*7uIF6HINq*}hNAy6aKnRB-ZF$1@%E5`m-ulP!ySUrHahNm}}L+sRj(lAPYJziQ#} zS-&Ipmrvt*o%`D#?ow6#b)g~o%n57BOP%@acN8#o_tx%d%BTr9&EY&Aqim>eM z{D9e^Iy>2{G#_LveY;eH@1p(R)Yp1dCP!u8^4MHBqsPC#`^wYIo*VV*+a`%+Uw!fS zkVnaZ%gXb(Gq2ZlgcKJ1+Zo-tZ%0SxQ{8E*Q}>EZ;96?zaN|}P&$IT*GmhceB_GbJ z)Oxyn6uR8@T=0{yg-8B+$E0$R+JdOY6HXiYe0#eD&z^jAM&ny;!@kDbj7eguS*3dq zE^gCm6PZ%0SpFjG+YOO^pQ`fy*YhM^`ka3Jc;Qp?8j(+#^*8n|Q0S92@GrQ3inCs; z+BPP~?F+?+qiU)%JT_r$lG9)U%C@$bcw53Zb{P%<@Sg$C1Mk@+c) zOMB7;ikH}SlwY0{de4=A(_w{IGcKO~d~nZWjzDYoshTG@`>g%*V3M@1ESvtlP>UrG z<>vZ_W!ZK-wJMP6Rk8BSo!%2>cdKpYOaAgjn&ycm-&lIDCbtWJzU_2jw%1ku0^gQZ zYJIObogZXsII*j6{*K!9VE2OHH|zUspQP{p8+S!5QRbgZB2!C#!oIkJvOmKc?2fLw zU8md?u~)z5?5DZETHANJ-ab2j?q0zu@i*!m%92{j6g$>_)}H0eHlh4V>r1OE=Elz@@$1^GEIKsyVM#Ys_9|GNF|_R&6@d>N#0zYnjemx&2mPdB=tqpv-EA&@1#s| zS=EKDr|0a-N|_kGLT1UXFE1s(RL*p{{UXGAHQWA^Q>Pt|`o8@6th$$s+cKqA80SZ% z9Oz9d^HkC?D6Ct^QJl~?`P8OPrqu^DUTbuggj*zkI5h3nom0;?hIqJbnAM|vZszT6 zaZ2la3g`WNvLmtJ;>?1imW!@oQke?6oQ21-CtEK(u_@r7$X}M)Vuq#%pBa8XnfW~{ zMQ6nZBky%ir*7sr-#0B4kpC>|x$l_OIXi9U)vtIT%;8r(SYnaT^Du4m^=&^5yOuJi zsh1V)S;4u3dGC`xwm0Di;e6O^atdYxKxvimJOLzvbkIz9%Ni9Fn@3 zu#r<>{Uqy-Ln~!v<_d>T+J8B--@0xhGEwk?%rXdv3y$`873#6 z%Jop0lHsw!Y2t%5CUQ!5j&R?R>V56f*W7+(%cJrcTB~_=9%ubyyjXeb>(rfcRau%{ zDO3OY`dB?U(5;$1uR#3Kqht3E-tcWLyV|}ex5daSa??~Z0j}Sc-i$w+SAIKc*~Ds{b)B^nQ1CnDeY#YQnjJ85QR$ueVlQ^UHjESNqSTIN$h}s^U?b zco&_`6yEx7Th1oU`swrjbi{>TZi)?kXEIqmET{OrvQzNcFE-k-%PvGJ-;V5^wKmKw zc`twRQl5or`5F0Fm%KXua7En}#^#);?qwoelc#(;bnwZ%|G`BobPhUhI1-Y{ncBEe z{^`t{&np#=^ey+yGExt6TY2(|YJAh_wUGs)I#q1K=* zW{6nqo&EW|_3^{WIws1?B+GxEZgc%vlxHNLyf>t5mG8wC@9sy;Yw{fa9ZT%@KE$$& z^QVp0G>=UEOIe+44xoF)TeN6WGQFF5%n@IobzZU=Tg*LuZU+u&v*B)US z%Km!GKDYjtQ+LN{v*dm?thYH};bxr~=ex^k<`#pE`XBXemDAqZFD*-CeP%OBPl$0y#m#Rj&9t9XxZ4A!xoa-qqj)yyjW z*~_Je1AhHp|NPJ{)!B?*`|j=QmM9M2^sIQ%tNr)xUcOcqX;v%Fb8Ty_Aosfu)Ajom z{LGEEh0RlX7{e)`clPM(r2Q(h*|$5(zr6bAx<`#qwqNny!FsiU zyzYd3Inf1$*KMVZk`?Q2%-wQfdH#PD&mBk37TJ6eclsdE(4g{9m1E*o^TMr$f72OO zhHVdX7d-w&n42$8S?}YEzoBt^uPeSeaO1Nilb*giU32Yf-`zQUxSH+tXT5u~D=+_CX|lXAr z;BJoXk)G!sI4T9SCtO&usn5?uahe3DhjXpe{TybW*=Ge;9DI6ORl!oN^TU@fpT3-P zd1{?I&lGe}ZK>-y7?iW?$i;PDeY+;9X9@SuU63cZ^Yi>QUlz6Te#&Y4`R3y#_WMnj zy^mgfSzeoU_|>x?CeK~nl)@+X2E8u`nEG}`q|9H<7t8LQQF>M7w zFJNo^uQg(9r!>9`t>ak7wpzr;8jY8M2>U9kF0$s2#MdVp4HOH-_HIad&a`)yH5QwjL5sZ@8hzSM@;ux3v9`7x%>Iy z<5Y2tS-U5&bbhKmwCA$yvZph)TyLB|I!P+8`Q0VydUS=T z*du|D3KQ)Wf_Tz4K0sX{v<5$H?hF{H`aR4_TS_ z;-=1u+G$_E7QN~_zmVDG&)@bI-kT*k*Y7lSNSM8mJwEI6am$4vuO3EZa73LETllWy zM|;gF(cW2nt7Zn;trcb2`2NU=?FrlG3hj3^oyjt{bVhBiet6&(vBleD551S@JL4L4 zb7NNqgB(ZZ+;a>^WKTXYTlPAEd-Lp5Ut$&%I_5nzFZX%! z>uZnKjj-QgX*=E7xo6fNbDR4^`M}e&f6kho^Eq>~avJM*;r#iIN}kn^Q{P?SYmEQ% zu$eWyzGRMX%inLkf8JIIs9ZiQsXuk@O2uWLZXFgo`eV^rxdM*7ZHHVMJD*OkKOWKN z{l-I4lGn4<$Bpfsz#F%xhqFBorvHlBynRE3ecwAh?~}5#*O%U?F=gw|trrlk`Y9oP zVB1c{EzJFWhQ4d`&R*_vU%Ke`>lq#CI)|)x+{+HInp_xKd6ZR*XR5!7XPWDgo6+~{ zriLVKRZ;Ltot4IK5|zihrR32vJBB3BhdUOT2AGO##GkPKGn>0!ZAwGFz~Ok)+ovXK zm52XwQ=NRsq0TJTss5$a&Toxtm+$#~ZSIy|Jy=!i zFJGE1C?YVy=;HoaIT{u>t!G&6toS#760fhnY)rAvez}0&P|1XoM@+(Qt}-a$WWLF& zo1(n7ZHLH%b7n4&cH13JmzcTb&Dxck%G{ExPc41wr@gOhxz=~pg0~J=xvw6|D&2QV zb#iLluk-v zzOh$s`qS3%-D_iSXeXb(xbx+PhvG7_=}8@esY`UHn_cEI6s)|w!eH7D+wBRtTfcHl z-!M1N^qr&C=cYHkJxQO}sF^70JbWp?&g$X}(U=ntIapduJFd+5a;M~>D?{^GN;9{|_1u-L46At~_Neb@j}8Al z^Gy7bP-S-JC2gBRK5~g^d9Udk4ksNjoFr9P70daxHo#b%(hvv@SGq(>a8=um?)j_}Ki`@-m?=ZVxxrUzax&37IMU?aE_reso;9CLwZ8qNrlt7Z2eccJCv`CzhRV z^NgQty;AvzrLlPb*~cq7H0>?c9Af#@zK2QrKyGpO{N~y<+t$8Wb$cRTc8B4N4>HLQ z*Tn|hJ+1UTnK%E{$}Js>DwE?3TQ2Dq3jR2EdRtY&^izH>7us@0O`P`M{FtB8qLu9y z$}=l#_5@|ssg``p^mLtj$b>bcIj>{p;;CED)*OnK3lR)EDp(bjkih?Vawy-7oBXf# z$vG{VXW?A_>F2M=_zm7$F7aqyIsVu9@WLN9DMEAZElhv?A9Hic0ZBvzEw+PQOQnL*O@DB{tH-6NUVcd5?xqMHb zf1y6tzGwMd`$U*L8z=Wk3CaCgXCESN%djFQw_}%mz5Xwgh2>YI;*PV6ZR4DJmoeGc zZ1)V-YxT9ek5}I=Aw)* z-rXnMWfGXzSiM>@-R;zrb<=J?4xAfXe=h#FncTMpMhk3=W@LNVYwg?fIOqDbswrM> zN^AF8YX+_LR_a7v3>P3 z!97K5IK*Gw-_fjIb+T=*gkG`yZS9Q`1>1s)Jb1o7?6}6|_EpBIW#tU3?3J}Qzl%y$ z>o50mxFT{OhtWBB=Ucg!f}A^lJG67XZy!1};oj^ywar&s9iLu~J{r2u^_GjA;#2$Q zoA1O3lm~9RIq(1FPpdMo^Df^rU+#5mpPS{4^M-Nt^Y+| zul?_NZQ6}JCzsyzH{|g&=(>K-eu;M1OSXMq$~eAn`XOZ+X7F0Iod4hP&zlZg8eRKS zHf@>j%uDzwDYXdw8y`THngGqs7a1*lcI=>K5-}&x4B77a!6OUtV&U&*kF6>whC9oEJ@8zbEDU@w0C= z)+~Ii8TxbGgR|K$w<^1DI$^`B^e*3@V}*-iT&={^gzM(Nu)nteGsch1Cr&70;d z?D{9QYSo*C&6jQ~dCp$5FxgY~+=SHAYB&G3WS=~KT*cz{*=3>eH=TZ4xo5n;WIcQP z)I^_n*53--HBNjvd9Oi{E$Ogwkg=I|>j`DQrju3{vwnVXtQE3i&8Z>l9rtM=iZr&F?C-D&jLWKqCfe_T}a!pnW@4N5sLyqvOr zL;apjf4Lq{kZF>x`_dtD^U8$I+^H;c!~Sy>PnVe_>$az}{Yc*r2c?eYBV~W8JsOWZ z`{9r^m8rMwFV|+C^QYe{?`Y;afBSd!0 zgZ1yU>vFcO@VlREALi#1H07k7*KNJYzZb^aoJ!nP9phKM)ai$^+uUalZdsnz^*Ffi zXFn zD6=0^(V{?xX;C*MUg!N1y_4b)cEx8a%gWGMGhS@6)0;eXozq$s3zyBg`TMi;wN~a@ z@qOw#DR1_2w!+Q@!RbG5*4NE5o_g=@?rBxUH!Ff(|9{H3+xunum19Z@8{VBg6cKl9 zlP2Rowj5X6_GJdTi??;CofE2+omzJz<@pTX!*NopWHyHCK7V0llw9>QI6muMne^Io z+D40QR;w8{ufNf%5Py4Jhwh2US*Z&j+y2eV?mkIt?lG~`D)w!AwpF3~gR5}y z(}?!Kix=d6mWrG9@r0G_0mExsSc=0+&eptMa`M}o zbzlDOI451QT6bp7pXh}z7xvvB9mFQsW=IU;f z4GnF5(_&R$^WSZrT15FD%LnXI6HU)e zb(Hr~pBu-~9etp;V&_W%$Cg`5+deM{Fbi%ls16XXX^L>o*fPE6eN%>G3tP0*l{5QQ zB1#{2UUYmGB#@QyxA|Ylu}i*pt*@;3p~ctS_%SGW{c?Ht%?nDe{#8(V-cbMd?Rlnm z&h;54A7xpW&Awz-$eFnRHk*PlTZYJxlIkpW3J_m!O zex#ococZ)jV)LR;ChT@w)@R6Nu3q&;rM&ayl1z=3kksHbw~mc*({8@CtYvl+-Y0ke z&0gEo3EQ2$_Wc%47FaOhwB-KmHRmoIJbLtStAu3U7lv!stG-J06vnd%JD+Bh&%9eE z(N}n6-eh?(E9LSK5dmYN%3J!p-RF&0YFYQ2ZgxuHEpmBkBQWdL3d@EF2J2P3cim=q zqU!YL>gShtTo?YlVH$OZiKR6pkEc5R;ljdG9!)lz+u06y*BuF8KGpaCUAwmh&Y|~r zzTC9Ga@qcf_w!;x*RAw^)?%C7Wh`xD!DhpQ{=Y^&I8?D%<=?U4*c{fp$M}FmO%f5#u zt?|z;Z3uhDd{H(bmF=pZ{r>$6l&Tw;LlbuU?vk1|h3k-wx8&mWL2}n-NxVCtyFWFc zsV{f&T)$s8pH8f_#%_Dk&AcL;%-efczfi?gKbH(Rry1{bl0~q{cx1LkW_G^TdhIxj`}t8!xt!spw~=^joR0hoMe(g!F%4&a8c);L zfAm1#b>jiOU5+o0PO)Apc8h0TT}{i2jyL@(`>Ug7O#gEI?7t|r$9r!~G;#WL%zPJP zTeN4Uul1? zNNiGgeZa?ax<~h&X)&zd_7+sNeE9G;aeZ5{@0q11&g^cljeV=6TPg9keTT|X2iF~% z^Gxqe)tC_1;ugSM(Xhhq#@9`(IWuNT8OXo= zw14~3j_-V5UL3P}$@nv%a^v^HRO-h9?;-~5;N z4(N(M*|C0>z_UC4+Obx5uJ&;LS2z>3<9GFb>$0ld^?TpHsbT(aR4e-1b%OGNfY;Nb z+KPLgbjaS5*`wy{t#x_VjU3|}tDHAJ?O^`Z5-+dE;d-BG`oVpMN1_!Zy!OpuoFFSM zb>ZKg%mY!W=V#=1UKgHp!pqX>&h;tHnR2pPM_j5GbuQ_gvxaBCpeqaS?hUtn%_Va= z*mnu6-*|nRwBp3GKA)}k<$A9k+SN<7Vo`RCMh$z z|59ud$n{C;QFaeLq3Xf7?nm>#B?qlQ~!;^vFV#%efoTOR!ILTMeBkqk)M7V zUHjd(;+#m7v-`PoI}CHn+pTLILqDYyCbxbS`uHpKlgp;ftN%^?+57yi#D|b;URu%H zy>8Zi3q1VcYJ0TzgVNex%YExy|0M{p9!tHKe`xuhn{le>)N{9;yPgp#!d&dH|Jz`9bbDwOT#Is9dmn4&zQ1Af( z%ajVecBeTsIX%qvCa3eLxY`Q;9LtlvPutn_3d6B`l z4%~aga7n1>XwGD173<9tSUR0~sy{q_;PsM+z42;A?|BZ%Hik#DG8RmUV2XGq$nt!p zvrXH(?k#%)RcG*do=H3;{!HePXaD}CT5}AOT940`YQ4{uZ>i@$>-xK;r_An_tz7Wv z!CIvU-;d^Xy>Yvjuf0}rimliZ!3*1F-6`GGd*0`k-y_3>naf25IvmUIMz-{xe8urd zL&EL9+;SO@9rvGUT4xn(&Cp9^@6Nf-uQ)-_;oZGIOO>bHC~6LyQ8$CRbX!@~$K5Yx zr>XqasEaTyJ@$RZ&W|t3*KVG@)#UMh>$fHz&TlQR8RngSc~Czwbg@;+&0xu=3Hvj< zmMy%KRd=M9>+@r)K-ozGf(QOyl(6pV=Dlio<)qH#{lcj~Ixl`(>mkxNQ9$b8r6T((m%ohGERTOJYB+lQsqDRpdC7qhSL6#g z=fw+)>=ryaN%q*8V+SV9z2e!IzkRaJJcrLZ+AmqF+-@>grq0>rUcqPdx46w<>ifg9 z!ml!Cgq3s1)^HV{lHJmx-mvuCk-3Fl-OHXe?JvwZ99;HzN?}cCz|P}y3+r-^hqfNm zefmjR*4IhyXji3S;F6+uQmdA`F9_-l{LYTFWynWAp{T2K94%*W;Ovx`P{3iTna_{-;GOlcws%_U?d0$eaTbuj# zNcrvB>Y`T$+peD%H{(xkPYsUWUVU(W^X@M`m-C`z79HrWmd$^;(DuTGRciZ87yfPD ze#O{0`1s7r;puv-S1fwmB;(`MGJN=N?mfQV3z9YG*xzMGp%`B z=Uu(DR^_e2(pKa5Db#6Y&W=5jJ9su}gWqX54%*>)pDj z%Uz7MHiw_^U)UR$Qx!ky=;ZXK!#t(isXU9(cT{C&(XGiLN;bF7*pfA~`zn*&fj0^#`A^+nbw=j>qKi8}`8amozPzHVBJPHY-*YS7 zsRBzX`1ZQC$v4Y{8)QmxC#T3tWgXoywaKM#VbARUvOFTryqPz;EPK2%8{=+>b<}l+ zWU!~*5HWnu(N@wKwxj9h$Bk=lBnVt%GK($npYAtvzE;Qlxl<@vlDVdTfs$$D ztxs_uik|!opK@DXGK+so(UF;Z`HN1cXs&P+T+1cYQ1n;yxBM}4-Tm?shi3e}<>{0n zEA>?T&yJOn`q;G8`S3% zX9Z^8TN;#m{@UzX&fJ3aiWcq4E}tgE%B)w)no_j3%rEbd@+sawEKhIbn}2ru@s<{j>xOcxf4aWDQa&?D zVyo8lwXJoINfVd(uxGhdA5@vAw4~;9IE$)ix^<^QNN_Y~tNEf0Q!OplEuWCESLUQr z29HFEy?4_Rx4@DhaqW*yB@80*25W_LOs$=xj`=*DX1V{>o>}Q@W7k^k{qb;aq)PLy zmd^7Lvd$}C&QFeBq%66`Y`2ny<-gY_US>}`;c(XXh_b3E`;^%qezrNV2&!$cN^)kq z?Iie7oU>uO_Th7EHPxj(%bova9$E45ly3!_Zfo`AnO|plihh3h-Fcp0aaZovL+_e1 z-%M0`RAzm+a%cQYFXrXUH=b~=srFmB?`uhPMvlQWJK?nrHr%BL>zL=C*#1w`da_L3 zqKv%@VxF{1Fp2&AV;*U-cZqjxmx@aBMs}X{I=7- zknsAk@kx`Aejfd6yiZQBorvv`*mhgv)ZI(a=7mELCe*?BShj8*EdJ`;u6 zTRznO37GJ+S4?~A4ug^!(@RWktv?NSEB;T3Sys3CgO{iC`_IR1D|ne+H~gr7XI-VADIp^Zxss>RkRCBr`TLbi6Y*UcbrxzRlfd zmS5V$@1On6P_(+{{pFh5iXAiaCT@taLNCzabdY<(`Dtgsb%XQ@452l0%z-H z`M`BjxBhNFb5K}zL)jsPm=lHU4-+^2l@McG%2}e4^!T#ftAx4Y&a1D>5ij zvri}fyLxY5{cWX__s-osdh%;M=b_Nmk=lz_B>y`2{NbBw!MEb?+ox<{5HQzXHCOCn z>*@eUV~&^CroRmmdj0BJO8VP^%h73ZfA6zwUV16LPWX(V&Ro+pCdK>0k}dC2W6RD} z1)af#xzVqTMy=JN|SuuV6@r1R{KCHO2bb_pB zp}x(em)Don9yJvX-~4seT~)D3y7y*In$8^cxXYMNpg;R^OL&~-cByqsPUS|Wo||&I zR%*&0zH^JU!<~ey+c_P-AI$R3uuZ?)^{dUuz#@8$rs>?S3kKRxGa14kc)e9Uw)&*# zu?6C*(k;9~K1ICc+f~^j{G4tqSZG6YI(^yP4f*|Fyt*Qr6#w z{<|v<-gc4FzAJauX?}x)IbZX|jVpJXohlLP+jRXMqYBe>v4Z8ctXXoOtvnTittM>L zeN=a4wd;-)-Z_O;mXn%aKijy#^~Bp(50dupKjh|>`Tv|`Eg}rrJQkceJE_T|(xoUHmA zc<}kfgIwIbyElLM^m(njajUdK32$`r_9xEa?ddu$Pv_+RoOUJW$<8lV=3V&y`A=T8 z2irQ%k22zo$@_T?ULRYwrIr1-;>x25G6Mgj&&SW+sG8Ljn6qEkWuvRXY`L{rSJ%57 z*tW=#p>V_7=YHzZUE629N@nXixu<*T>E$uoCzW!AE!Urd>`mvkF;sq|%p{*xQ^D%KN+g$;|KuwKtqkk4avdm$aL0kItH; zM^4$3-c4jV6=Cdk?xHBiYboJt?o4-uZ0=n8wyR#`V3YJO&J70ov$wfL-6~<8Xi*ar z8WB+xJfrrx?4xs+7^BKvroMfo5`X>Ayz1-ktxw!&zQ4Vu*{I;%HC+v(x9u$77Ve$F z920XfeZt#yl7B6x-JkBd#ZTW1?$c*V}XT{`LH%2wC=SAQyopZ9U#+qLkuf(GBy z-3*IFpHA8^W2qy%)!D;OW?PaK$5zQq`kxE5AiFaBQ8g`sDbpVv{tJD$8vu zSFG(DlOt=pOHNAqGhCUvY-?o7|AQ+Eyw+7*GxNT5#b|4WcTC7mUGuH$oFjv|8V}+ z?!phOvGs|$Z_dVloE10s;pWz58pkemKa`%io>ynr@~{c4>N2_S1$_@(@yc%UuUS6v z^p+732&r3J?#O8nlXINGdc((||faOjauVDuvGYVofk>Nuldb@wG*4V)u*?v zTm16+CX;Cao=KWZ*SfBhW8h({J;FbEiAw7NRo7CM0wKNvr^O*BZrA*DzC8Qf#hV2l zS|7ft$30*^fBmnevbF8)>z}v&nal9ydMMw|eo@=_@aZ>?@oa4Q5sWuq}t!V$`94rE`>2qy1B*kiNU7-?79CLQn@GRb{@)n z?isC~ds{vC_O`cYCU48V4MK0r_w6dpFTeWs-~H9E_8&hnai^g2w-Y;`$8 z1;_oN^PXSWIK%K&x%$e(3sjC*tvM~wTynGPZsyC3Dan^lI{sa;q+_@3(LFNaj}?vF z+tmF(nI1V~CcWtT%cGp3oLqOm-*H^Iki%2!oN3EKmzvtXZ~BZ(IX4)a?%az%y=~qy z`}$YE=G1)l`@}G9_JIwBZ(H{7WxW3{sOO#D!}mvbOJA|S*ICE-`If@vt;~1bejY6l z(NV9bpyXBtisjpvJHLKY*+N~FL?EbT1_M-{!Uwbv|JmL}k^U$6~;a`Va zx16`m-oNO?^(!CLYgA;GXx0ABPz%3x)?lH`g4X})1$lh>R&wXRpZi#pHSOZQ^GwGs zzh1sRi{+$RO^3n5HIYf847!p`ITPB~URN(z^VUB{aHhb9{(xXDvoDfDm$@c&oKac% zQ!m=gMf}yPZ&USa?rC|O{ks47MYy0#ZIm|KzGG|?^vVu2u)pfqy-PRZwByka<^6i+ z)+?XdZd;bkxo7|9job1!Y2AFjchVH^D3t=amOs0fJuseaGfg2@>G|X;q4$fb^J?oq zXW8H7mfl`{EBE%U2{*mZ&0qdWC-GpztX;Av`+lXCO}()G3g@y34_rELOiRDE>r!g# z67#iLTerOa81y8$eR7e^*^~oTYLx^RD$&;^F_ch)&GH3Yx z;@>x+oqA7Q(hir#-0Mv`5vMzIpF!SpnUz=H7GyqjwXc`^^TuWhZ>3Vz?4y^;b1%#? zm)jM7ypfaT(Yq#l@lUso?wulb;qu3so!{(=US3Id-Zyo!3{w&7sk@wSJAd?=eg4`Y zb4F4oC4E(8?6TQTt56>V=6D*WCT_w!PBZtD(rn+JRKuO)ae=r$B6 zYy3Z2zgc`iPZ#U$E*?vfXV17>y0+Vd%jee|n|iOI_v_M(*ttozPJXKmN>7GNkS$$y zs)uvRD)Wa1FYLq)IJf8}adCR_Tdmt%{_6QsqiKDZ146G1OE?IYA#b{KhHF% zRuWLSmwk2%hf>tpIwhg!>7lQrruRQla+XhOye#&&M02iYrsshrH9?!JIhI@O6>gq3 zHzR(oF^}!h-McL13~gd&?7Ogq>E)u>b0^Fz@8l>r=>OWfr?o0d)%t_$OAE#QQ)V|x zeKNbWlT*l7S#7H)%k=*D=l5oxPc~)lQ~R5sxJF%zUF_wY89P+o8ok*e%*(cKx5hs$7N;{$#@$tqjMo+W@b2lU*Go(|M3?;C%(XUg6N6j(OP=mSi`#_b_G;wc-MC!K zdiC$QZzkM2y6dJz>B*&$%Z)O;TGee|i(9Q>;lKUI>_yA3Qt7`}o%=6r7u#E?!k+kW zZTZGE8B-V&v}GrYJqVbwD0)sw^qCWZYWBT{CD=~+XLd|_`)1{$f`VTs+t&Cxg^Mk> z(XMD+7E!JkqdRV15XRpd%Uo)`nS_*fyO=0qWy|4s#k=6FWljD^5&bu zD;vUpZkqBj{ZjR%GyL;(!jH>e;z?R@r&E|yvTi@C*4ll-OIIYnxHNfBu%m2adsRl8OOw>>vl(Emz)#R9|7+s7K%p1)cdTK!Baa3zm_bYS?39n1f=Ox{vj%{gfc zZ}r#7TXd@hCvQ1h{dDq{-fGE7TfSDkoxJ62)xt?z)>a*zyoI+)bJCjGB{Nl5%`Qz; z&5^1)_WaVy(BscdR``DP*ALX@@iPw8_VL>qF!Pms!NSNaxh)H?hTh%msJ+r^``?I3 z6(!ZJlh?f}nW!=^G&_jfc18HFXH6@8eEoh0%4W+6ESUXD?#Y7LS@JIy&VD7YuyAg+ z+=+#mCH|6u`aJ%!0s3G3-v{dV_#Y0`|KfK%(A51|$cpe|&!?>nZ+jlGGHluNSu1Z; zJ)5=irrWca6*t+Q&0Bd>?b(ABd0Fxt3oWnQ%W~X1dC%FO7gQ=<*MB>6F=(#De6_`P zS8O62cCX$W+Vn}a^7a=cmD-t~9(w*T`71Ny@yi@P_g_ij63anj-6F9!3YqLQaL`lgypfAd}I;irahg=s$h zH`b~;&&yf&^N7yzUF|GUIl;5oHbxoNH6CYso#Q;|4D;sFB1>hfofo{0wA^=Bcw=laP_oMb&E3DV<(=RTeNEb;b8BbQ;&CveDMYEP|T|FVTA-$jSB@;jP2_-J>Y z-Y3M6?zvd$rHRK~1LgV7F}HZvKlPbAN%z<`sbbZllYvGms|pf%@|H&~@DON|Dp?a+ zvLv9hdwyqyD(@r#)zmw?ny)QWU3it*PiXyBbK?^GPHu;_9l6~tlMTC+%@sY470goT ztl#UZ^XdBa)p6%+wzRLQaXf!fc-!11W=B_D2&-3^)i+!5Vr<`mndj$*3UV&<+Ms_+ zW9qb@FHZ~GPrS%w;`idvI;D+5MZUGArAM4nos}=|i@Ty7E7P~-t3%l}llU$B_Ia*x zUDV$xnRe){x~5d)R8dI%|0|PP{VwH_tOkyiIM_ zq4mMX8xosxOXWnZ_o&USos^Z?|6(bZx~bgu=X{l%Px`hCtW!wa_}x!>sA-B!Bm+NpzDb=rJ8>yo>7L`~nLUuJOS zAV>JGv~1b%$tRN+&Nw7K&9CO-W#+;=N{?2*^bz%(VOGc9?eW?B`SFE&58V<8>I#^e04zQVka=>l9*zAREFnH=7( zSR(RWzwdUv-SQn$F<&ozxpkCH?)GnnXP$?8Wz>`ze@4!EJH78=cl^pMgHM}TX0Mv& z!OU~f)^ere-3=UqW%o=UXRO>85cf#VE@i{r*j0w(?fh=5 z&+V$}ygh}%Njby1IkfrE^cxKG%%3zbGn*PV%~x_!gQR;^ds*wgNn(tfx8`gVzV&vF z^XCO+aYZ$rb019QaxeYKUs@+Hd;7G|&5pNSJ{8cBdw zy}Y5Fhj$Bew_f8my0EPxYo+mTo%CrM?^TqK`1(mcvgtp@&-sr>uFYlQo?@rCzTXF< zr9C{%AF7T62Rg{Gf`!U~X$#)!8mA$STE9I#C z5IV#B=2cJ9w=FEuZ$4bG-uGlzh2c7bo!Ko$5?$3M$p@1zy6k*YzP0g7VV|Yj)O|DV zGkIm0zEu8l#JJ}$>js<8LTZ9pmr5hocU;;v^Wn*EZMQ1v#vQDpNkUQf<(&6SrgF0; zC<|tGE$Z!k|Hk9+*48wAb+;MMU$Ot$pjs|@{FVA2pDKxbVgKs$QH=AaPmvSU%97SM z-CUiYaCm{Xe1GfHu8+dYEXtnqIXzk|%JyMfQx4x%h8+DoiF*tVb(=fiWV@;H?o5=6 zjyN~P;NqDrC!U30JM~uBrOo*AnQa>Hj9vPS!_RIx@jlpPnsNBqc{u1hChA2; z=xzNV*}|{s9+kLhR=&uMtNek<>x`{u=S{h}ls`6U*Nn11x2E^yr0TOq{i&N z#Rey<6nK6vMXycjb8u($k-p+CQ$3w!Z8x(q{i&^nmb_;5qP zWNtZjEGB!$Ww-m=+O-{`?=Y!7{To{t{O}3mMgi{9PjUrU*O;BzKL7f)usq=})0SQB zI2yGxF#OXJ+eLrY?09rQ&g09U1FheB`1OPTDNRbwt=bg+r%u;)6OVC?=mP)0C)cVx za*mF@v({+h^|ea>o?Xm{&zfj(PWMvPgOqcZs`q!iZ4bM~waG_vpL0&%ZSL%Im#x>a z+>zGoyP)Xzce88HtP@)|@dfRc5H8YY7hUMwGwXlS`R^&|W%!%wWgW7e_WNkL#{P`1GFl9&ZAj2{W9+S!*cZ-`H|se2>Rv}@_T zy7eNHEV~$Y?VMrnE9$Bcc=}}3)4&aj%oycU4)uJwX~}KYIo<5VL859}t7fww?8)@$>Y23SdQjBgAm!%)mxH4p2d!Lq zYp$4>lP%lqTjggwXKCu+srk72>znT1%WfscZ}gn!9X2~m$L(COSyzA9x4Osa{_-CT z^%t`p-uG#8MekMCyyH5?>%`>NK3jYI!mF#DK4#o!k8HTKlhbIufJC2)@wzbe0AZHW zBYjL}-xi$WENSgswqkZ0`-9srZl7LfwlT6_$9RKyLe$Npk6!c0^UOLPls>a}!=;Vk z3)Tt$sdP9$Z~B%+`vsC0o2#oQy5`$n@;N_m_Lg1h`WK$sOXc75@@0C>CcFOHjrLUn zPfkkBkC}DDrLAtck5Jw`58d9v<4#J!`)(XbGuSlm*1`Bl>lqSP9@{MM+O_6P^KL0#-?3@A$P-DURYB|4Tr?DEPA|G1Vb&RSw!&f7tD8I1q|S9!n(NX6(fnoi>sH1ZtJY_t)DRG(!wWOHXT=bAZzg} zChF#sTfO&fOB#~r`PCjRanRTqdSlDJcI^kU_FUm@m#-Mf3ZMPZ_5O+X*<{Ni-|xSw z&+5p`sa;!L;g~Yf?Qrpxx@ClFZ5D0 z%ksPrlFz12Ub6ew@n3Qk7uXAI)+_b1P5;WF|9ADlMUfR|&t%uC_`h?%?5+Lp`vu0e zNk&_@-|XPOtF7vFb^-4hZQV})%Gp=fwlkc6z&J0-WT+H~Ck&YWa`HT6(dKizBw^{M*%ZkYo3gpqbxyHT7ovSRvKAwB2x; zt^c0pM+YWnO<43~3R6LFVLngEsz;G0m(F_GVbCe+rCe^|lYQ!iLhD9%p=EzphF@FQ zJ-aB#()Q2;iATQ4vU~WB?tFiJH}kuoyR~b#r~1z>$$!ippuL3e-q(ar8xEYl$sHjc zeeJ-ffbDUsG7lumttnbj-}|c}FNMpYl>17M#I(5O+ET$5JJ$W@c6H{+?7PH%NlIL# zyLwjK9?slm_Je2i+!9j7lFu$--te@Ty>IjHsr$pka_4{jQg`;l-cwy&j_<>x7U%XE zN|ha5xu2o-i?`i{#Z?A+%#Q8{pxJ{vg-vm zuh=$xlDg?Ew)J5C^-JZU`ue%n^Cr9yxqs5g%WkHrXn*bD^OLJ`%zLA`mK|`v{o{hS zrK0z3of7GFV&!6H3wh>zV9LMkQu2A-g`C&xPPmI*dwFHs!m#@d$)^_o7O}r+GPSmY z|6C~p^L>*dr)6&p0%ND%opSziOyDGe5ZC%#zO9d|J2eyouJWv8>hN7|IVGhuCP=fA z?cGJIZFSB69y_gCx_`R!+xhLRGydnfzP}$e>;G}BS4&pSWWQw8wVhY=v9N5%QX_+X z3X=mW9!R9|J~_}4-(A$g=w@i}bE?+6UG<7>-G(0AmKQT+CWqYiX$)ECB6Zd$A$a{( zQ6{N0sqULLpVi(Me>j|(UH9hAiJA6ScOUSzpL%-A?UL1=zdw3DE1zy2biTj;!`;ij zll#@@#o9#v{9`mvc=qi_3;Iv4Z;9ynxpRXTPq`BFj7@B>jf|H@9W~!(bM;2+1d}tz zta?7?wly)mIu<%xJL{&r+vhZvuZK95&%N{NuL{!g;`)3rt)KVVE5=99=bW7`?aOxc z{w#|Z|1^C{k3G60+Un)_;LwISQ^l)2@U~F#jT&(<*tYGR>(XaEC>XlemLt3AbP05xLj7zselr7K-ealJJxf zyZGW?R_O7)b6Pf}o=WC+p7xiwGSAn4wMMOnh3u+VTSFXIX(YZ8-Jv`&`1CE7m}#05 z{=Rr_{BiY{?!HwL=T3>Re*W=0MTCf%8K;d-BsQsXDrxYmb#0?*tR zy;zxYBSY=+gHK1qJYRL(pSktb!xv%>fA$DWb^^wU66P3eo}$ti`iCP=cq)V*|8<6Gyu zy{}iCwb&!;{Nduw7okU7v(!E@X(>9zRQ^rSIDS#Je(4)FwtesRJt_R~Sy@nE#&x%6 zQknnXsOW6s=6aCA{OD!p#Xk%M7s~nhcE$t-CzbicEWg$+9C+2wq4MsBRfo=`*k8Bj z3b>#Ub>i)*N3-6pj+7NSYS8^in$My0&X;{!6W*UXcXeJ*#NGBeYqYPjeH51ZvexYe z;}N%ge>-O{Ul&zwedbA^L8oo%njMi#-enzM?$dVZ;-WKh4RW?`d5(q8XJl7)GQ51p z=t4-`sgM&VSLsgY=#E~qfAM)k85w~bafaG;r>`Y&a~x^h$P)d|#xPlw?B*VSucy~Gm?w`#qIj5%IqIODenty|@-o}6$_9Mos z`gMu_w;VS+zOQ(Vf!%@I!37RIZ{}5rh)YknQ@4AY)~Z$i&9qNnJ-ob%`T4I~kN#Yl zVyyW5)U(~^11H8A&f<4-Tr$=C;!a+>?z>GzCe3@73YdN09&>4d zdXE>H+}d{=uR(A4i@B17^Tb9?CBbq15hAo&@HZfttp$)I%!(NI?#fv=e=6-dWDTVLy z>J$m)bv~I!cW?V#+~Tl9C5%_u`{dFi5<5kD8w2^Kt=yph{if|ycAvZ*zcMdGr0^%L zG0WP2_uRXPm_>URE8G9P=GS-ebAZV0>yq!3k6&bw|8_{QbH%r*ajG*a*!V&|b4=f~ zb6UZ=a>ZcbyeE~9cCYx7F+XqP-K)RMLYLpje8l(u>ojv&v9jFPA-|`+-%&Ctn9I-iu6$-`tW~pEtq(~F8m7C|?EalD(!HT5|MyvzU2UnlUXeMEW()hV|LvT3h*=|k zm(#KM8fKwTc1QaYC1Ho3PdfVECbdms0^jQfFALH3Q>Tx~v>mru5WO$E}=|zd}-5y(G*}}dXf8E}`{%P65jXj0y<`?I_ z67kNSZ2!h`Z^O6!MwcmH3$~(m^QZ{1Zn@1JGj{6JJ)AjGW*ByVCx41$?w_=yf zQ)`{BH0|e$SGmkdU6yzvPpRUv^3!-1XaAM9GZk*Uxp=6c{c+X*9~TN=*Qc{yp6L)? zv-GOh>LRl$)sGdqANHDDVL$V8+NUXcT6JGyHtsHZ^Pu2i!l|0}s%dJzg&N=ZcQxg5 z{(r{E{V8#C=Z{}|%?@u_!usc}&~3Z#HyL#WoAx&GndZeOrGI#w{i5>Qg&*#EuX~== zY&*dG`Sz7wA8FrryZ6@UEL@P*aAF<9n`fJ+YMzZN?+|{>#jE*0Mb@Nv$uzHC>lyCu z7BLRbc~gCV`DxC7yY86Ax-|W-dIy>l<;V!E}G_WB6~4I zW1Y_P;*)8ee)T0PnUc- zS^nvXTT9U;&!6*JIlmn#iZ|GEQz);O^VzVG+TP$##~ zKHLlsQogh;n0@e`;`#?)Gfg}@C7Z7sE{JgDdDy4)c!kj~t?zXgnezUAy7w~j+NIXF z6Ik}CUX=Whu5I6Z(@SB>BTnx-(@vl4P!FjPobV};Zy3a+5p4HDgR%D zzW(-F^tajf&#o2Ux2w<4yJDt%{aTv(d)v9U8aD-bKWuy|!>YOXM#axXp&zO*7hWlH zzjHqC$qLzzGi`;Y{$09gmQmNFOU$Q3{0a|S{9fds^+AJi*RhLRpEn#X=`DR$nXX^6cD2a! zQ>&-wXX+ZUUJN#5*Jdq`W7&Rhw=t7F>x`%Qt^Iq{Y@@>(({Fq|cD`hW!%_YDyL)f> z{#3VnUm)H7GxoLPs_EOzy}zG{J?at?;m9-V0r%>zkE;~AN-J9!zi5W3zrD>rWheWc zCwxL3g1aof2dqCPwlGxroVN+%4$Xtn^K56_vI^?voo!{5a6%#6tx0U z9LT_BJNa0rL}uQ$b%npp>W?Yxklf<9o&8vkcVxJL3G*)L+!PjxUF=gE-c%nybWm=~ zp`L$7c70Tv)t#|q!fJ~Z$}6sPf4-&0ZD_efYo`2c?nt4_$-;8C&Zr*0^K^CfYX0X7 zAN|QH4t*cl{<%z1(tAWQOIBm-g=_-RjFP2xQu{b8^|! z@+*c%4Yv4}-q8PW<@(N_^PZes79QCBOr|BcIsa~dnp}t8k1ZCr%&uM2>3kVJIcJ%S z+>+Y~2EWA`1siYPoqkn%`-L-GQs1vI)UKDyTT;BD{F8{y2NO%f2b-Tneb`p;Aur(}#C9DB8P;zKR;L9;r{OUq=oAj*S|h4dd$o4>e3C} za{^f7j(OdDZ|g_CZXgoZaYcy zEjRU-7q{=2=XlAM^Wn0rbM;SN#H)#3JNVr~&O$Nh@R#HD!Tbm3UhH?|%T<4*F8p@_ zbDdc4jlMU@d+k^I>+SzP$1?Ez zZ+cr;YO<-!VDrYZANk@;6WBlJd}C%}aQQzo?A!fWAJ+>>+PS+|8`rA4E4xgQkWzsRV zzrxctG1uK+R8ut1{DJ;Y=9eG7be~+ycUe*{d~MJ7@2AgKFa&N>vi{rL{Mi3(iRWTP z;kxlRv<%AO@o zi<=*i<6+SxbujDB?Rp!Z}TGwqR0T(vinQGX+Ugn(U2?g<{x11a+ zmm2I`+^ik)^Gb>Me(smulAM8C{JlRJR|KA@NNtU8ZoH&k`ygh^)F%N^5s`P@%SC=g zhE4gcwtAtC`s!1c?q`-9TX?poMRj6y#l_b`=dI}?hMD%2@OhX&Q6_kiz7r@!N?=r$X9UE{m;i%=^ATp z-*@jqrLBv^Mr)1R;=adA&ew;vnm-H^vfARIq;hl9xyEO+_s+ii@N4#eIbMaB(C)Tq+STRiGHcU(o&nuBWIQycE$+p

^9f^>v48^NATwt;g2UbmqyK3{L65+dxa(2dc$8Hn>zV^cgRH>h<=l> za%#AGb6w>1yG6|JUcPH}4Oo%>uwKf*Vg36QZ#-Ba{3>m8P4p`X&XnFukAJ;bYTQ0= zb3khCwC|}Mt1SCg7#vq`H2AFfJpN9(>&D807a^1Uw#9p785D>bu_aF3HTfFbO<(Q3 z>Qy(-eU7x=>bp(U;>x|h`burZ2OF!k1S@uzU;n=9Dgx|z(HF)zP#GFx6T`X&A7 zmvPO^+C?)`+O#kgMkAL|b3$PIG7g{r2WBJD&Rk2o&v>wWy zDBknGWbXaJ?TDa$0yv@^f`P;qL zSx;f$QP2L&%#!-DQBD71s6cOg_hvI?ujE(h96T{wR~?_+)gk*qbH`8HYNm4Kro>4t zJ5yV#uU766e4B9SgZhczY*$?;Ha__|Iac@cGFJT!(ltj{T}(CGI;-eG$o$*M+aCSs znU{R|dy~6ClF^Z(r|*tgeo4J@+4kf0^CE?kZPM3kLa#rxxX|-eajU7opFRE8POW=e z*~1oV{yC?8N%|*qx{%Cw?H{UbmSlVV8yPgvpW4UrIuQO~Zun>wdn!WD&ldIpS zX4;lq-z0V@dvTV=fn2`q15zw&)Q`wqVLtq3uHybF+~Ggs7FMkFedhi9=9++eH6M4% zyu6?Je#)BY`tQCCtdsKB-&_^9@kh?T3e7vKe0uhU?%H!zA@6gI+aA5SMu{&k#4QhI zUwQZ9yp?b5{_m)Cx?}yIvf{}bpCyl{+&4VzBEG@(^}{1emRBFXs5UA2@WqRB&s?mlY_Y3|O;^sKBZ&iPW))em@ zp>7{kPyG4foU5j8ad?%{k-!_lce*BpaTIL7*FF7Bv5I1IgVV$}>)xevb*YJEb{ra!|J!_`ETi(n+%T3HyHlbvz z+5Dvwg%>XP-|4@FIm*;ECq3SKhny6{{1;xlZNIH&?00owIWz0+me+qj7SA@1W?!JD z@u9rrf8NUMJ;#~Ot=dzXc(rlQPoo$C+hr&Jh9x<1YjXNHiRDaC%XYNBD?H!y=|TO@ z%LT1gXF^!DmQ8uvRN<|?D&m@2raRLfi)XhzKUbA*v0g9#$F_R)#9N7UfYRP_wKTkIU=4_zSb!nuY8rSb2Iom zaa$L$yKi{^`r^mx?fm}c4SE|`6yiSaIV|j1!WkC(x^2cak4H_{tgcPabFZ2_twd+J z-TpIcqt^9I4!FJcz|X|1>zB7#NcmkVi2tT|{y?zyx{FH`UCNpZ0|l$)N)NqV^{iNP zQtp=d3Lyovt$psiP-)N$%FtfbuDYwZrkm}l;0E@PQl7BOBC`JM-Q0)Mcf2pjNw#8< zYdUQxw9CZW)tN)%=aufyTLUu{LKVdCx7ti%j8DwiTsC2XfUaYjf^c>0{_y`Rx6h8= z`1Rsvd7Z8Q614uVPtwXr$w|w7mXY#OE%&j;+my_o`&qXepGj>hhl?h)DNqKaud6 zX5DtS-Z><3$<&pvC%w9|A$ak_*WXzT9z}9&Gh**eNeEmael77L&nDU41J`%oYJR}3 zm70E9Z_+f$zB=EjitTwFO9Q8ug%<5hn=T^na%!o%+?i=?_6jjedJ@&9Xw^g=j9hm~ z$groRX6{rDR=)I>pR5am3l<1-+xZ#yhrX^(*w4YIb|!ww+Nv{-hQXTJ-)6mOTF7|! zhn9JQ>z@T@R^4V#YS_+tx7}ms!;kWRmoL+HyDDe;y?#OHFXoL8_Va9;HynFs6H zzrBC9Krv14%9FHYMSt!0?Sl8!Y##9n+$xrlwocDkwjimaf?dlXrk~-To1T(tcH84` z&u?EZ{bur3KEbrQEk9n!%6;QpmNl7?PcOdtI9JEwclf30T(iwY`8EZ;NU@!I@#)s2 zwZBXLnon@A34HF;$NTbSTd4O7D`n5<=QlWVObq>8D_L~;&hg)kKF)V9k*RLKRlzQ= z!f(Pa*O?b2ixw~R*tXJUmfEet-K^m*F{|v@+lPO0zx80w2ht9tXd^532 zWr;wTru4fGuV2o$de494V=hnoRyo&Qt5mAS;XrD%&w(FeQFpCh)U%XoKDhql?EY-- z7Tw;MvtM+3|Jh$Gb!eV;;61O#zeyQaH}GwWedDhdQhS5DZnAa4vGU?J-m)q4YXAQI z_Lb?AbSl%%$G;@sZK=shdwJlf?fq4+D%N_wlDM1v(>LRv*Ojm8o-7wl9@WK9dT1#< zc~0-&#ud!x?rc-!pUV;&Gj+1zuaK6`t?xB2dv|Polksz!%+%xm0(PG|a96HSYg?1>lwJ@RGiDQce+JiSIhJE zqQh@Z&m4{tDvIwoUhA9{dfxs}ij44Fr>fhBo(Zz>X!c(g@0HHvyS9Ug|%qc)95d7n_vj?TH&j<5kOfHf_q4OBJ7Q%|0o; zq+BDwcf~aA=zj-=&$!kM_{}GFL2;W& z1#=u1%oR+XEAp+%(^la3oSF~Lo1>1j)L3{;H4T)>Rnxo@Vq~v5CB`-W^UtN#eo zB{M2EnEFgAo+5F7lCr^aUV*M9#&;hxJu|crd6(rqnKSt~^QR}8aaQL1+bi7v_pEu* zm$p7wMQGUuzgyMps~7@|rhMIgQO&lz`dH>xYhR%)FV@FR;dvN$QoV=sef_D=_1o79 z%>B<8`0u{r;zRN4|Ll*txM;s+ZF$Rn){sl}+$%0Qviv{&+_~Z3+2{NB{k!}8`{(cb z{y&{{ZpZaYc0Y2Y)a9REpY6Aiciq*^k$Sbv2fqGxdB5UC_pA<+wqobImpNUpoKG@( z99O*}EA;DKPS5z?cRrQbe3a#Wz^-ZY`nuM%puLy>KFto3V$G8251wE?ZOyXfm+Chj zkM}a%%(FM`XXl2Hx$A5$JmN64ySC1YHHEe4<+KUHH^bg;`Kox}*=4^s<%(U5s`ZO= z>e*}CW#4c8!{&JHO=^?Ty4lxinf|%!9IaXJ*Z(h};|sg@#(L4y`*pAV^?$AQUn76t z{x!=k7!*ZGbe;5#UKvoGF}oq-==vk~FHD-9RNXdB$=74T&QsN|Lh1uWVl$ooKm4(I z*7y3Bf1j7HeRooh`_9^b(vPAZw{l0@H@z@icl7*2p*#O7mbQ3?Gzaxs>gTL(DLrG) z!fW+7w0mBH`_%=Tc8afF)UV_mZ}wyYcV_Co|Jq-|cV;slxL+yV^KAC_|Jq;v$G?*9 zUbE)*a;M$U*Bu5aOkf!-@kgc&;La|>`qU$j})2Ek&_c_()vum0;vpbyjXejBqs0bbT<#=?f z%ITa*Z`$<|U$!m1Wj<4N$uGvA9}XYmN%7e-!REz@nIV5Ip5FcD`TEzX_RBkYuHvrX>p<3_9ZaZhVkxhizZu1Zht=X-}|xBoB}#c)m0lI&7@UcNo% z>`D%}Yrr%6^mo?0yf7Z{DlfA$BS(4T5-}ZaVRvBHXugKjqQ~im? z_pH^Yo^F-D*C)7o!%qIc8yS^;)i!;b_NCMJ$m^qvm(0Do(POHgX#C`NzgAr7U3Kg6 zqn%~@QgV$2W#pWxwG z70uV$1`G`bU+nk&zJD;_;Ms#0PrTw+mFzuJ#^fnV=FT;De3 z+N(uLe}A^OZra(z$Q!h9|KjIA?g}+YuXJ1}_Fd+ZIhRVr<>*@{SNigQJp65gh-O`z z;D(>Zej7AbEI+ldTcP^&?3x`3{`q;6)=bv;blBX$FDg2IZ`{rjOP|tNHvBJh>X~08 zmAqV=lV2V#6&|kbU}sdQYiLXJWSzD{LGtthT@W3ixX~~ zRPWOhljPyL#{c5+1K*uB8GCXydcE9ax0~F&AvTRuxIgQhX@W^OSEKZkW1HN=6!!d> ze77_9!ztdw7P)1tv!|;5^K16dI-{4nBrSDz_RDF>5hk(K? zjr)u{@u_*W4i~Go^oF_gUd$+&w0!f)S5*ROO<5-jmGs>Y@%Bj1h(1!875MP+s{fbs zrK4j!dqbDZSMc07Lnq?o+iQvP1}9GTZZ5T(lgQMYA>(Y5@4PieW8OZl%|^cEZ_?tr z)wtDkCdu~Lt9JSND?E9)zU|+-PiMYqne^mE%w45;kn!8Y7l{_hUv3Cz$lJ&1F?|g9 zv!&yAV#n@Fy64>A~{Q7WdBQc zKbP=wW77bAyIJZzA(>G-eqN7$A6xv~^O!g1vZS{Bs2eP2PAWZiVx2tW9aodJ_p9=d zXEmPZ&)*k4>DhGAQ-x#xRN*%(lkJ3ZS8jUzW#)8+RXPSe6GIA;r-qdu*{to%COcc^ zb?G8AzD7?CW#NqT*+1i6C4HR|ddoxWSL;;X&&vf*$-+sSJs;(K7gT(=cG9ZI>2hbT zq%S>?cvIw=!4k!&?t*7Zens({=Lly0j+|F;T$=Hv^Q_hnMz+hv9nEA zP(SW?tgc|Ux=N$as&rioamgz|DaU&kT|NQjfRR3_%^GDAGOJk(fO8g_T=t5XSX|kt~nwsDRwP!TXRij9Gsg}t$H`) z?kQhEN8aPB_?Sg~n%fq&xPk(ot_I5Gf z=M}=PFI2)WJmq9REvxx3Eq~(ry$vfw*A{nPU|Rpb=k&>g4c`K^d~NODFI%#JQF-0; zul%waioC^<_O5Z;EcRoIg3d?#aV7uFQ|)zI@v-AiPP?H zcDr}9$^8bq+6DI6{q48gVgzQpbMIRn<9GjP%0=l*UXGW$4V+U z4Yo0GzRP44Z27s3>6Botm$t4>laL%;Nf0yuh@BhQu)P7rGJBxnb z`mdQSv-(}!dY5$EvQuJR%e}!gENuDmj!n)N&atH)72sRXx8cO5XXpH9CV%`~6#Z}A zFM-V-k~%N8EqQAF;nb>VF@|09C2%Y4f<^fWTAU23-#J}Naa*lAkT(M|P*Yu|@P zG;T2CnKJXf6yu3op6i`HOI%XfTQ9Il^N!D4VU>UGYwQd!SX$p&w0ZLvvqx9 z(xs)mZ57*!BEv0=rREPUYT_>|eyg&wd{FUArX~E8hKtm#=Z0OI1E=O{gjT=vx>T)s zh9M-Twrz((^~z77W&hnGcWU(Ld8&Mrh~m~`>C^cAN)93>fIvl_o?^S%bokP zcUt}_b((%s&CE}}LHwM9=KSTxOU}7_$<->nlD~PHH}vfF{fC}eHoRP8xvSmfrdUqb z%q5+?!M>IXr;mDHePz@Za#`-n`%QilrO%hwetP=3d4XeX6*gn`*Id&B~cO?l^o}Q8-5> z-Fn)_jcxNg6t@39?7jYsxZ4+ldwySJXSa73@0EP@WmV#mbF&wAp4>Y94d^%VB{Fm&klAzyfem>yx*=_!M zV$Tj;=2R!o+!i~PE1mL_jz=z#Qwx2D3kE}D+|6&qS z_$;aQyn4@}ck@=HnmxZ3usg2T%|`SL8(Ykszh{CvcUolEO6-jL^dZL0Lho(XNwr1g zx;@M1-(6iQSUat;h1)>)=arsQF>|C;m+DB0C9aWJCStm7_MgjEk@1IA9M{QvdI;sO z3GjLUfTd1GEsFW#_3$g_udA<^IYDT#-No&F5jjE^RFAJ}F>QErFXE3uU3OpM&96IF z2nsk^$n4Ju-_|C`;5D07#goq=dPBx+?&NFh9WvWeJKyxo7qpzo#kp%*sG`~Ond%b? z$^#0V)6AR7()2hln=IN|Jl$uPyZv4!#iI*z+2Xe?oAq6)Wb0>9XT?izx$h`#{JZA= zMb$~k{U00U`ioX5DIDGQWZEa20K>OZl3~jO-&{Xt^usMF?Z=}hRc!h(+(mJFn@?`F zy1!=b&vpKCyVq_zku>G;Znm;0eLklfO|owtrf)l0f8aD*#<7o7Ku%vyYY`=1x(lUucwZW`OjOD>tk z=~cg4;jDzZLRQ2}vv5Xdrrq!3N=yabv^aa;)T$P<`labQA*PDc_Eb_;z`WXxg>I3# zr!+Y)RbDUV^_=ueb9SAp%k1m(CQXbFy%WAay<*MW^^&=|Z(kJfxNJIQI_!PnvTuWnl1zARO*ZJ8vR9`(`h$nAxCK@&J^9^CeJ zkv)~ysO#+WqBGu_D_Z1*O54QGeJLxY)C+xMZ7yE4IwAS{XUa)MnTCS($I6a)TsvWy zq~grMy?e#I0M|cZVGJ3Wmz}&?dM|S>)e0v-s8{w_ZHsX zt^dm{fxDXVkl2G?j$G@7C-4Y=;VeD8LH(K4iL0{Tnr0p>i0oM)e1^+@?kAUXV(X+1 zbQ#=zZN^aBylZ>i=j8RZ8M_yLuWV1~zajcwY=`P2*89c{ygTe#EL;~bzp!&j6%UqQ z+*R<}{Dp(n4BoahhK&bJPs=qc?KyR>-?oc)VgJ&-Y!90)?e;%MN6%yK z{CjDU3-_i<+}v=c=~?7+HPzQW(n-_opyekvND`^Z&Vdo zSLM9wn0my4+s*Dey_!d&mwlcxE30VAtX)5UezElX7oBzZz}4fMosYkk`R+IUOku_4 zoBLP&)!b1W5e$B_F}}Jbt`VaSfjD)?3^Cy(%4-boK142ag47sY7V-yzh%~oOYtns?Ge1$ zKV77M!{;@rW^ZOpa>!}C)c5J1_XAeH2zhFjBx*ZbYhAfPpsp$V+@>45_n)~QHS1h?p9p{8-{-N@@BIli z7Kq)z|KvnTU?$6~mWLu&Iom$3Yd^GL;+n65*Mc}!KAOFF!_~UIMwe15%wLrhe3d)3 z3QqdyG+)mX|*5Wd-3CD$&!y# z&T!?`pW@wG-L{8Q>XBtU|8lFCV&iL{tE%@my=*c(6k~6j>RWcHKR;*Tw3q%%t@Ztu zn8*^lUB244$kLr{r{+jJGJq;b>#iU+tRMbtjXBpyw{aK zu_EI1sl&Al)oNjhfk7I+DKU>ix~HEklQQ9c7nde*#5%j#G1u9^F7MGp|Dn0pbDfnRE^P1m&Nu0B`ZB%c z+rqS6ZaDIYZMRnO`*UOa>97xN%9alDtvPD$ZcfkDUd*x)_Xvp4e<^A~S_ttwC z4Hxfn(NfB8OtfK-@AKf^H9Prcz3G8@-yi22m+n*kpc5>Xqm9{Idj{QSxYYM zb-ecM39rva%d3}CUMe_V?LO(b=IQwb3Y`U!=dvZ;?@qrQl=#y5NIu(xx{vQS-uoiK z!|?fYv8hXUTSGN-4fD;JG5ynC^J-BYR7SEpCA*-k4Ie7;d}`oh?wiFV6NE3UGoIv!k? zc-%BXf7-5pA%YWBlXCaXxTPq!H;{MgTZey+3yx;EDq)4DMGI@OX+((dO5m z=ff>{_QlP{Y^~3iN*aXj?pwAuZqu#pYkrEQ3a#50`F@K1)Qr;S-=2J3mh5Mi$$0Co z`=2#Wa~D3?5Np82w`pI%t7W;z^_$rO`OJ)SSKIH*%C@YH{#Rn&=Gk*mS$xa+`WZLB zHP0~H%i^Xkwf67iTZ&R=`|iy<`fk=)yW%}x9a)aeuL4yh+!uByk9k)5{fAG^w|_ifxIgjQ!41Jz^6r@VOY)umD$qPV zSbo}X(~q-e>??dI=B4C&^;MdO@E_mfQ)Kcdv7WCJ|Ge**#OhUT6%x#cou|aUIO+GW zs69mDO825nF9~7eV^(u+g_UN^oUE|$%NIdqA&r-^s>RG#w4R;Hs*-5^l>Wx)`=OU< zESIM3yh>x!=jZ-F&Bb^6X8j zjcOT<#ms+A-(S^oFx!*#V0rtWE3*!7Xqg|BS^HPbcta3l9^|0}E%8T}BHg&CPu2&9sr+Y0gUf_83-M{sHd;f3< zIqJHxm>9+O*`IutH}|BrR_@(x8w2lWd^b#}vTJ$i(th~I3#*ir6Y}2_&9t4>n?C}>WS4p4By(d|>N|Fwu-Wj< z!G-t9x7V-!skdu-SE>B?cKm|Gf6hHq{_9K3*?&Ct|5jb)Dyd^HcI}+7U2{d~;qRNp zGQxI0Utc>jYEI}&))oKnOuxDG7UPTy>AURb)m^`N>@?d7&I2Fn=h^F)*gnw-&HwPi zO3S)n#VLzaDczHEdSc9HJa&`$UAxLkF1T-H%hSFum!>u3SU)YT_Io-po#U=WqOtfj zlXk1@g^q8&aPv?6xuxd9o@uXAWhL*{m%a$BzCQoRhqT4MCA?a*EX;NIm6O_3*IVi} zu&Q7A+N9TFSJjYebXVbs$aO7|?VH}mI!q|eSp4;%C5v+N#-qO;sIQpema#FchPzG8 z`SkLWLi3_;`EQYMsQ3EvA#RcTu_^uax32Vg>@sls-(2#0e{j!F`wP=HmYQrfD!yL) zCw&fgYW2~^p9yNA($b#!6Z^Q*^h#|{$anrZ@N~hnN3;EB-ZEa>J2yCZ<<#u*oI809 z_9tFw#xs1ae+`Snc99OoC@HCdZ~DntIma^<>H-r{|7|GcE5eTvq2&$*T( zV)JYDrd;RGCaR*Uy^XDDXV!Gpybr(dV(UY(KWkS#d+FMC#Q8z8$NSm$wQ??WxM|7V zDfqu8;reC$j>#{Jgue7GV^DZ)*mc95D>n18Md|DwE4jV1x3H)`yVU0OYm@q&pbrbH zwNDBsFW;p(@BP$uMptLIY?Hbrd)+JS>y70HOkOSRi+Yiu@RHkQz171?Wur5R+pPUE zXXm@0*KHI1I_>8j#@o>|uZKGMox5+s`$Jo*G?s z3(Kx_$KjpzK#|uqOd~%V?j&uI#S=;dLj)&03WRah8M^u~jwoKEp zJliB}$CF=k$ge%LML*N%ZPm5_KmCq_3-|O)-124WJE^Yw0jt9vJh@`Ypg*xCI`^ov zZ~287-H2@`N}oDpNlk6L|8&l6PJ5wlhe_9Z4zJA8iSh_u<0Nh4?o#fZeJgANcY3?i z|AfLr>CRpklz7jnXqKP3obUf|>WeceRgY_mpxeh z{ zjn1wJKWg!0xxxBH3nyxbyzrQL)oSC_GG8{HfAjuICcWSxd58}o%M_V1|9KVZJE$)cU#O;%1uE#|f0#lw4k@|g^Q%zVCl@ z;cxx&fARbOXC41|-|un3@<$Wz|DQQQoQJ{T`TZIGAK&xK{9E#xtzKv5yqQ}M-_KIf zIr~NCUv~Db#*TmXORlZR__*E0hapN?^GyFYwJAa6cODspTk`x>5R024+3{q_k1LU~ zYgW`1t;*zxebs!k+OYLZ%>Ty>chnzV+a;t_=1?(z$=%15-4|1`nr85xf0ugQ6Jwv+y?>ed z=ZWdTu(C(jt|cbqhAi9Kp3y6CjAygt9+|a=o&Do^gPW(#%6iLHe9PE=cZv^-wNlBE zkJpYJzt+p&^zYBne4%R}CB+W8NeJ`&y~O@NA-wq8`S}Z7WWrYEJo+Nf?s%Z~odlytrk=}A-ZD+;CGVi5V_ZmkibWBVRwM+D0 zySdf*@Eh;Ym!khT+^?SPJ-1fVH^6UFh+R@%7Prv37xcKMQn zt9M;szsUbmOsQewl(gL);t?(GPW;l{g|@W=5|%%WcBke<-^;JRdvbN!v}Nf#-Wyjhc zCoTD}xM;4z)uj&gW`EVSlz-@LefnPKmwE9%?sN55q{U-&wQkJ+GvRIjy)FOwzozA< zJWol>|6>0|?Mc?^@7r&@tv~U0{o%qF^(TF0rmQzrS);o?(Rt>vJr_bIuw4?L8Bns| zXMRz3xzWW0F}F{gznHEhs&RTdf8X`?sPV6is7dTi!grM)*6c4yEVuCb|JvnQq3MAM zv47qrTHGqW^M%EyxH!S4c%#blll@=Rc#S?ft`FvO3J5zjG27#jSjdxJ=I@QVPnN4m zO=0_Xr1oRM-pbDPCp(X{*ep92IB}t{sM+@5j#$H>nQM1RFS}zQU+Z4$u4g>&#r-c$ zTC)q)9xhm_@b_QXX|3X|F&nvR{ija-wzn{FOU%J3LMsxJ%Wtk|3>7>dw^Xz@b>~U> zdqy!LNk;0nYks<%{%({gJ;7bPqNn~&Z0bGJ`PTv$qzFx0`OmZR$Hoc~KH>RnTY@ZP z8GYV7IDB)~lHJAE-o3lKy>8dO%&4F%&Ahb-;#LGtSgT&EyN4>=i&1z+*tPB#C3N{f8YF+jaBwr4_ZGC<6Poxx$G?C zqZEhJJO93ZYSi-aSNMnN*&;_51eTWXVA0tU|4O=PcgU+fllnIu@~B_q&L|SHalw!F zw$qva9=**!bKNDU45f(FAoqrXjGsk?^Ww6)SB=DZ)v$9s1WlG)++kh!=1$B(VKmKwL4Oa}A zAi2!#;<8izhzVr-rZ0Q2o3;G%L%uj7wUB zW7Eb9k_()T7Iw9WaNKWT3vr6tptt(f*X5J_)TXEUFfWQe_D*iD>{Jhrij^I2{C6%4 z`x+%MZ_e!GvAFcJ1pSZ-xFnv%aT)`GQK<}muFcb8OTv35%ww5a`Cm0 zsOS^kGiqL`|2?_0pHp|aUlGehkw1MmzM8(b;MHxO+POaUN9ByuAGbO6XYlO5DJsRd z$*kq;iTQOV5*@jV*Owmi`4C&4DX7EmWdHf~U+xVurnAq_VP2mx!RoB9<#d&%&{Lnw znkFymc@SfK`rxdi=MSwB(OP*}qsZoq*^ZhWz9t(dxwOogqbB@PEp3~>ld&GZ_r7J( zzn1>^mtwu_LjSS&{a=sH_ML6>_{sHU^8?l%zgT^e<=defyoN6;7!_j;ZXNk;!u9*k zlBMr--&;*o-YREl^LWxLf5i#rk6t#vY2qtsdYs>>^3vt@t^ON(IuC`eI`;9AjBe%M z6JI1fUa+Uz6#W$Jb$2n^I3xQi&qe2TB~#iJdWw%b@htlC?a>$Zj8hi^_j4WY?BKXq zU9@fU123mgzn>-k%bxAqd^-4UneKb*4=-JM6cY<(G}(D{wVh=7Yj}C)gCply>V%(G z1X}z`b-iD5d8dE;5ARBu#ilW7@Agczt6{d?7rXSiz|p3ekCx=Eou6FDlO~n(<3{V; zT}M8|D?6kL-udNsU_!of=qpS8JM0cJOPeJu@+Qn%vZR)kRVpBrwRydQ&!@GGhw2^v zEl&9MZM~tF03(A>#Q&wcE&qo%{j4^&D9!LcdicouHy1m5FLp8rHq8}?<=7OsZo>UT z2KoX&Hg9aJV?3>T<&w&p#f^(6$@Uy*3h2)g3!B>8&yn~_>`b>`RNL7f8$^OsBf^!OWp%HAkSc9-q4m`(d+m&LqOzn8j0p;U0k z&*(Y*%f(b@h0J04b&22CcgmhAQKycZ1T2!9ercOBt>=--jCbIx zdi!Wo`G)jZmsL8uScGn@%@VoPQMg{sjbq=HU8j0Xj{oR68zmgvGhH!GZfmxLk$>jC zy0?vOivw4lHviTvxMq!Xhhgx>Af+YOEUW?)Pdqi9mb>7{xAt|OnLDCYW_{9r{=6&f z+}g!cy=-mzZ^c?gd~DYXxp?_appv2=%Y@~hvp<+0J7u=TJXA{I>hTvso43mH-4Rvj z+WX}8$M7wp-y$?;ySEpq>sD^^WL^KERjl_!@FNDVvZ(JO>$Mx- zwsuaQ==JKjG5^!MY)cMKcvZfm!jf^)nH7$cR+xIEY;rsoKjn+Xr|g@Bf~g*>wAvkb z?*CNWnDXXtTUv_>Z^{{mVwdTW3%Qpk$LyaRRUe$P{A2MorEc#NDU-9z)ZfJ(jatlQ z{_wcshHn$5iT0j3dOm@j#mxWc_0vv4UK=IsQa?{WyQnOiNAma)t>&Kmn*7_B9Gkf7imiaAi8(sPn`{&C3Q}btC;cUC) z+v0BJU7K^xXorPewQ{+^Ahb>RG0XJHb}wuac_&+=;&JaL&2An9~<&Vom+J-&NXRW=tX-2E&2(OBV}Oyb4p;`QkPr6DiX zkEKOkkZxfK`4FSLEaIEn%3B^Qj64oBgfcY88F4J!&cR%__g09SRexv3tICC1rQX7q zL@FZ`BB!%1VR*5@O^jpSVV5Uw%mZ9EGxBl&5jiTLt7KIjD9C)*B69)vGHFIGzImtk zCT&ie(qpT+>C-};{bdg)BvkQBIJQeSu3tQDh0y;uy$T9}8?#$A);@93Vl!-eaAbb{ zWZ}7wbKga_CWT3LH^*xE{Qn~%62zTpaHXNgB>YK~Ph;zZuC~+3b|)g`J6nyPtJixz zJ0CS+MM9-~?Ap3w`NsQGKG(ANUjOUWs#v43A+*D*L;&S=Gk8gk8&wlwa)a3Z*lW(O`zgkweuQj@ry>3S!l_eO^KTmg>Jm%?t9F|5PqX5K=Gr~C7n}qU;oP1K3T?}C^p;rkh{3z z`OEXS$W{JiO0>L^ejs7})pn-cw-w`4e^g0);y$s@=J`5>uQtDnRPVU2pJI6C#^eC~ zBa7XqiTqi7@ZE_@vDfVf8`e)>y>DOO3Xgr-`y~RCZ(q1>-rY0L;KG-kPhP95uh_q$ z=*Gj1Id9T-@NWy<@q>G1tpAkr3i99IZK^HX=fH94Th2Sb-)&2HtWtL|Fn+M!nEvgf zw`eHu!8W%;N}XHwEbiy-II~K27tgHn&_An!Z_oU2-Sy&fRu?1Qd5c%KU9~=XZk2h(ES^89(tTb$C)OMP zejKt(ev9l6`)hl;7wx|~YtFY_ty4nsDn9>_QOfpwemK(Z&ypIm8Kx|ISJiabA1XUC zd*PjWN!8SSCdcLk)wA5?@{*f&si)QKcI)EsA3VjUPn3$W)x0-%-DNuUU98KkUDh8t z_VWiX|MBGkXJqYf4*x{??p>=4DzmNXSwC3K3FonJ5Lf!CAh3T@ZLj1~Tm4rz84qS@ zsBgH~FZrj#$;Ci^laNHw&tHxUw_8~Sit{XXFit)b*sf8_SJ`noZ0Z&LV=<|cs|{Xl z(p$7c{9LW2DR0_c!@eD_HX0dio&6x;pu5nv^GWhyUv}5pW!Rt6nDS)Koeu}+$IlGO z3V7u%^d4f&PK|}`yG+~{6>5~dQc?MP<-N>qmUG9_LR?hYK5j_; z9%VGy^53aR*L_?S+r5`PP*#qT`fbS*ezJGXOY8IEH>WOAE55K~_VNqzo_(KRin&GK zRrE-eed&SvRC$-&5a$%;KB(I_SH;JE4Zx|+b zbmqZq$iDFWF*Bajk8vSO8xL!4kQSO0=Dm3t zhq2H{rsMbJneD=7KI9Vio+`Ngm=Kq)MogGrL!Rccm!BexScOw|-ea%Zm2`WFY&E0I zZb#wO{;9T&>vfGA6P7uvES~wh?G}&P%FmvndL4ex)^1mwcuF#Lf|H*TFV8JsV-BJF zr(1lsbp-rcWn~qpdbDT5&l$P~+Rt)VxjG-8w5!fAMl$-Dmh;A`EbAP1E>(Y>U|1-n ze%{+bZ2BF|PEJ)Lw#fCm3tM>&r*BGf4|n%p#if_@O_FzU$79}%c5w?)GZkG+nX4-_ z`rqennv|4m*_J-%o5Q-#(*)Jtyxb(Fy(N|B^v`~N)}2{e_I9`J9O5#UGau~BUZQ!p z-6Mu``&HEs9Z&TX)a~q)-(74fkg$zh>yiGded<}$khn88Q(bKMj~w;uof&j;?W5H_ zZ*{Y(McuYJYMkE7&QYoNu3mv>X$H^7haeJ#sQaw-me~^?`Q?T2B)QfZEaZNiQ(<%P(Nu=`wcKA1 zO1RfEI>o*_k@HmP^y^SD<#TS#;;(Yz&h9-Dl9|i9|8n4iRpC>!6$`E2cPJ~fzy6(V ztK0E&^~&@N4b2xPXOb{(A`~WjU?#cacV;e{;*G zi>Yd2G2313dTQTttO{q$b(e)Cl&@M=HzT@ZU1>}3U0qM(nKIR9j;5Yb+PqKY@0Yx3 z3+|u(@?g8Fa*UqM4SS6DG;u`TN^jAo;mI+ZNBYcUp4pDy(I`H0@aRg>5@)q!Yd#lGUDBc`G#Q zXr96q>8osohjmSL&+8sEO}uaQTjJ0*fry@G+AEzTLY-r#skv*hw3V10b3ax!Z%a?X z1$Q1haV0(L63J+eZ9x)@D`N_3vLCK{xJA9}`d{x^-#K@$a9_J&e!}JTj(IB2t9icK zPu!z1$^DQ=uZ*3S z>=;Ybo4VxqpW832H(*)vJA74e<P3Be|M%;x%8!3< z9$K08StXQv`~Ig_A2C0Y|8Sd4MXD=!Y3ZTOrZ>dm_FV4x&gr9l@^vcbBh9_XZhvds zSrsEBTC5RXDYdVAN=8bt^1i)aXM8w6e{0{t!hO;wKhD3lt)lkp0o};S+r?j0d@ zr$O!G`JevoQo1U)!`P)M{ith><4)$AJJg@fadNO{Twml9wcpCw!@pzauk)4V^4s(8 ze|Y0`%&+HEk=@Kkn?J?Nb8KPBe7ox|Gtb?_vz|SdO{|o?P$BzZ$MV?ul1%UKY>!daDnYyt>#J)AT-O6rzEFF6o)_hx( z#rJZX8I$`)!KNub&BxUH4664pykKXP^=!?B_j_l3J$AUrhbJyGTz<<(l@~YewPenl zeK5r{#(GLl0khC~waj;4RRTBKO;TZcv*_ra)vq(XUvtk1*OR=}eN`=F+7%_^#s5-% z6ovB`eKq)PaV65{*~7=*UVM&|W#`K}WFEON?Z~ldCaW8TqKXBgGo*7~om#g(W2L~8 zhJ%YsFI?bRv*E(Bg3Be>9!y#Et34+3+-Ffg&%K+Cf2Z}F{*w72((S`M`+%6u&+MB_ zFK(^oiWS_DC%MM=-N!HMt(!ygHtw@|xazs>TxXRHn++?hCYyg1%;WF3Vh)+1D>G+m zis3q2#d`-|utolS%xv(~y?$Ngrp=r8m|l!?+9=W&zC)5l!egGy1Cd0A@FkMg&z^}t zjY$7}j!FJthS$sq(fb<2&KBP~w|)D9a_**TV{t8|{;;0ECTEt&ukUt05nwJBU91`Z z{`jmp5^tJbafC`V=s12*T)N!+z~yb)c56Hj&gPl$L$psy=B>Yvxe{lM;rR)@Uf

ZQ z(l6fNg)Z;p&iU?*N)DezyIZnW?wxrdXNHwIr&Qr%#Xob;w>|sJ{X>}fb<6G}m%A_Q zKYm)&rYe4Q*PV3#Z7ln5TABA1Pd)B2IpX%qz0N;2K1%-@{Ca))x=N!S_bXn>>+bHF zU}GsQvb5%{;e)~;-JkNWY}^ZZwq=<;-XH6AeDa@QxyVWCuD}1Ki0N0^y3V{~U3$^@ z*QFg*cYpQ={#D(!a{aB)&BxxZ+uQEhz2AwJh#u9-Bf$%R9*L? z21YZXiIIBHp6)#=vVN}i^Ly(xawq4_37WDj(naw8eS@L{S7w;0McQTURO__*pK)T3<}su9 z|37-#>RY~7Y7KI^VaOLdW!6Og>a4$Plh;p8e39|GaMtqc$HL}Do6NUTncQ>k3y0d& z6Vv-QRc7ffPisrMzH)Nr|8Di@zZw6yFC1pO`y|RkXk~&-+QNy7mrSl6FM5`;@xuBn zH6E4yKenDdvG@u@!o-O)%c?@vHec`daQ!BE@06t9Il~mik8}5gci-!(PS+Ce&9CgA zw?E6sK47uh#2~({E(@jK6yfc$^X568|lxso_sl7Yez@Fsot*XYS&Lm za%DVKZ27oRb$80Qx}RTcxpFsaGoRa{x{fhW+UC}pT4$@XeKCGHdnGmAecaZgbLki3 z7Rl$6{%+l3HBHzm^Y!ODOP5ZVB3<_?tF2Y%OYU*~xtdH;zXT#CTh8g4^L_s8FHL$^ zFQ2!3V#|D>x#Q}u>Zr8pBMD_kJPw|zo_!$XeogkBrt=#%uL;y>dfR*Ncg?@YA)(gJ zCzhU%XyOv}ne^}CGcJ>~4XzW8*d6%)dv17NeXiu0#`D*%-8**m%&UA>`Tx26*Ul^W z{d;u&O5guqU0>|a{^39WBX`ak-v4pR5-UH*vuYBM&z>+DaXD*#p zGA)`C?d)?o%bS*8buhH* zS>tP@-^`i5R#CA{!t>zflTJmlW}Ej-cNKJtjL>;I%UH6m!}v-1x*6HJZMilt@>rY? zU2wJ7YSwjcc69Xx?v2k*EZTMaQSyfJZ}W<>_auJ!wp1abfT3bsxn!VYU zus_p~N}eDPF@uGhbETh)_X6dq%?_u^wDqSNEVo{1EB$AMwq*Guhwl@$_Zd0a``&VT z8?NI%sqjwb;=;TbhO8JRi=`?r)k^#O#7k{I zQx>9i^sB-<#{NH=0rQHRW|!U4&i4uKvxaFQ6rGpxHoRa`trP zX-+}j;ub5pFZSoLX&IX*zOp%!T(Bu$eO2=p=9d%WkM2>K=M<>2D@0*4&x+hs!Q*w# zMGOA~>~0Xa^|WE~6BmPh-$i=Zb_uNEno`i^{NYb{^Lp(M8NvZc$%#Ck3VBjOjIKu8 z?-wY`%(-j$p+Q){Oh7Dic6PEpVfAnkq z?>&DHTmR2j7d>)kx>p|e?s>{-Kc1gI{PBn8PsM;gm+BG)Pkr8~;(fI@FZb%M1q-jd zJ8|Ws@{u~mA1WI<744VpmrPy0OEP`wD%rW_{^HCgH`U(PojX@0A9n72Ugx}!tM7Lg z&Gxy+^ii#a*Z7RY$9WE|iBFqcnvXC&RxA5;kK^>)P9IPA>D^%)#P1qjQ=iN^^Xxyr zG+Eco#knowc8>+6-U;gn?B83nr)CY$?&XbgT@PCw?(p+YYv-Az#O)cg!s&t9yNH9G zpMordUFZ8O`70{pC>{(pPSsSNw2A^^yHACXIx=D;7IH zmqsL|`fiyMy7+X4#S%}S1@|w-JpcEpsr^xo>(=znY^BxKn>tD>pWWS==9T|b)aLmz zOCfFf)#ba_DDS+IBYlfob){1M>m9emJXcz6J0Eb=VQYhHwovB7gF&WiGkmujMaJxu zU375AbrH|h^L7{4tM95&k~6DY@ajc;;NdOaO{?0uWgTjc3pMlmKD&C|%Kvwjk92A| z_a+$Yk*V+F5ziH9Szt@Ww z|F4|UJY(aQiH#GRo9FGlUH{I8Pby2t+2~wTJ*=v1^z2v$6EfIV*Da6Ajn;4f}1~FM7u%geAom1Q)H;P|n}_ut09J`1j4Bf^VNblUCZJRikhw z^reTj&Q=ERb6$ZrW435a>h3qb>oj5Eys7bqv)tb%?@KvRdaKmlV~;0~506bq)srTv zrucHB^@}nmskqNy)Ujylr2>v4{ChS@lub(5aw#*>)6Y0q%jQ%VU(B~HfjaApE`;}+ zNtz)CjSbsf6X|>b?v<@hhGLuE;t|Net3#zp_DaeeCT77Z1;wP4>!eD z-r8FKgwspgD(H#Q($}vFWJ@}3Cfxax9RF>aqKD5UxwO+Zm(TO85innPx{I&v%ki%> zdCgQNI(q4c{%1b7{6?6-u5aIe=(fI4sC9XxA9g0lt1*p%alX!b^M9UP8q+hj9Fl7a z5!ux)S#pC_G3+LT!KW1xk4z$J9FNKHi~SC`pV^^fWH6iCDXTwQ++F7E-dGd8*A@o< zrC(VtvvYi~eX+dbp{wTd0arsy&M*9MC}YQ)qhSIO_Q1PMONml%-nyTURr5=%Qk&8d-nfg z+PTIT>mx<~6|d<1TYpOX^ZVx=93K~OD}HkFD$1C0MD@yomp{*_7N@z^voXE6&*Now z-g>^3xxZ&p>oL9$?+VJkudr!2$2aFl`=`F0X4PtwqBg8smR99cZ12Cd=-z&R{di`P zi{I~8?A{S!8@f!+s(a@qYai1)@}e{L%D26}9ltN*d8|zH8nIhVtA3<%geqE{UMrv- z7;JUHCtGl`$HwX(zAG|RUr*~*=v?U>`hLf!Zoc4SCX+-2G_L!4`+0f!E|1;*b;0NP z)!J*{PJQRhdQkB77WbJQM|ZJ=g~hE}f2%l9oF}_?^6Ct)7;UzK1i9cvbINY_+P(@m z3Y|Yiar>cL>Gy)?woQ>#x3bo1?DcFYZ{rQam|3Va|*N;X6LOnSa<~r>a-R;wFhj?w4=eNjA%lTNt7e z^(|%Q^^gW(R;_C?Oj-YKxUN~W`p2s4>i#?8xD1LS!mK3P)t+BEv7z8YJHzUvijHo> zO7jBO?Ll6PS6|9z6wjEs>!e~EQ`*sr!V2f} z5tkY7tGZhcrcVg(ozQ038O;6X!Ay4bJwA4ek7X5c&Hmq0H|=`oZ^x@gZ9en7I`4g7 zV9r-2cIUUM9P0$X%}hW3TBeCr_|Bzx;XT>S`~HaucBMSn&iz5g_kY|TF0oC&v|n{! znEux9Yq-wztBe2rx^7>({}+>=i~JAe&29EZpa1VyGj^Z7f2-OreOJMY!je*!5;tbw z{1-TR&%~_@C+?m2_kTgu`udfxv`-vjwx4l8f6ZF2vR4Ia4q@}Lla^gWg(+1m3@I*&_6#;+q+k9@xNJM8t}zn|iZcJbc0`{u3f z?gOvhtmN6uTYq|kU(JI1droU)7yLf?c2lABvvlvAo3D>vKmNfcCNkXlp>5^w8(lZv zxW zeS697ptrBQ*De*1a*w^ZdE+aUO0Hw~cO48`alv9`wC~4_|IgfyxVF(IoGUNz$*~wG zz2%-(-G){7nJ+S~SKayR@|Qd=oe6n=MD0M?3C%9!2?>>H z9p}PgcCWeGnO@y=vXa43|Hy}Xk7Ry*W!zX_d)U3Jrl74gjJx^tiI89Iyw1#lwe?mi z6Ln1`bof5GwqGuHK-mxYSI5yk1)JeU5I#-!Ov`_ANJ!vfX312z^qG$(yx(TH17pl@n)O zd*1$VV&g2Gk5R9rft#ve+kRhF&jUBXw7n+y;>wHRVN-Bqo5$SU;uF6xM>I?`-t_qOyfxyo&p~M==?%s28-IKJT{YoO z4okuQ=4o1-ru&^Y@o=qv@vP~IpgQ*fnZ;}7&fD8&#d@Li#WSXq$K`KbQcDsZ8!zOY zc|A+Q%|q&lveLe)G7sesU+&u(9`Zc4XkUoMjN24woh&ykYrzW z$IdSBqxW~V3X5Myvu>R0DAhQX(0DZRQ$V2Y)TJIii*M@eJ7JaEr#Z_xYwvbmKc zlbT~xWOW``>b+5oNL(%Qi zt@Y8Rp|ex@m-v5XJ^QO`<^^lj&_+>rYqi^QhSA1}oLa?~7X-dy*nF(;`L?-soJ!edxS2n)F8HpR(a7HN)73fo>tDONqb|%2AuSrdF1I#a5$1a4@hp~I zwb(uO*PYI{H;)~=_UDkx?d)5!nI?8JiOHX|RwW)0dvUvHzvS~dCXu`2d*16DzH;%0 z^vs1bR(@T=(c8x}L#H)-#)XBB7uUVn@-yLdPT85zBO%Jp-%dW^Fa5F8skZu7FQbH5 zuj;YTvoUdRFYH)1b5%mcPBA_o9(DVkFV)(u_l1326K^}-joI;s+k%_L-2AkY#F-$@ z2bWKNla29EoxfT_?A=D8SYxqHF|mUlXWEZdE_!YCiO+YU`P7#WENKn7H>Hh< z<GsV%*EO}~ zysh7KrD<7iM9+1Vi>>PN?($b-53q&#xVCQg@X+Ev9?tK5Rdvbkx7SsKW7skrCdQ<# znWR(2yqdd8rc^0y`{5!Q7uuZYdss-ySSH-1Z{`Tqac@;_eSH_dI_c&N^J-ifXS z*=6&BGf#-mc;U5nVYL7GyJ6S5)~Vi|=I3cQy-q7jrpRuo;?otrYZ8@glQ`-{EJe7S zuBzXdSEZaCo&ET%XiLPjq#LTMuDyN5_Ds3-n(Ect@_QaK?>BmL`Dos<9OZ@LfuY%q zdJN0UOD;}kEWNk=*?V`k=W}K*sd!kkY0J*4i1{}Hco{BfTeh6wU1$0EbAI~#iCIE2 z)@r+w+M^bJc-3GcE;e(=iu)E4r%rpU%WY7h^40m3Aco4Dd`x8|W@pE2_>yD0G+P5oDpZDIsIX3*|wM9}f&WF4O`rX%L_P7dr?z;W5e2$>-%DIZ6 zi>lXKI`z-nOcts4Zk1L|5ic+fkND5TBv5C~SeNZCwYB^F{}_v| z*PjBcUfV34_{mz8t$h3DH6503pH!`HNK^c|#wAy)wtbnj)$ZdDE{Iz0iaUIQRq9}> zdrrqnjU5}GG?^V<_bu^Wsm7KcZL7kcU!QQ2fpJ5n$QIG$#VfvuXO;vs<(4sL^8{-= z3f-;ImZE!k$|vbf+uqKbt-Dv;t@6@5X7xI){oidqZnkvYF3qH?@`T;_-7S`!hqtdb z9j*NLs_4+VK>4ms7esWWnkCJ5b!I%g5;j%gkz~f__T)P^j_FP*Q~GM2+}b|pduabj ztyz1bSxr{1Wm@sgAoiV8^P}ZK^V^s%zk2P#*kT+yOGiKRg;j3-umo`+==9}ME$blxMz`c1~yDq+5T%h=EV5|pX5zjbG6Y`bqu=;r)57^^)PfX(9O|1^?pa| z;ygvO-vKME?U&8k7(M-C^ghi{b-^wmW4Wf5{D*g+ z8=pk?H+;PMqbm9IPa9j4{JFbkKaKvtkhFyB&C7~abvC~}*yVgVEJCKbiOgQtmlW~S z>V${9$lQu$volV3o2VCmSl@8!p!n(!4-YNYj4EI~+`aFOt%z zwIJ%jrqy&aUFlcl9^xcDucaI;D74)YJIL zj`vqTo2IWRdr|Xj_Gt&{^jOxO{*J6!0`gkxT)L!VU-K%~+W%$WK5yIC{u@_Q&Wa2A zU7G%A-w$ogmg93&S0}kWU8~M)&w6a9=dAt$*Rp%}@?4S^GEVk?7cBQL_mT5|zIC79 z&VIc|alVw#i3=;ad}j4`uKu1?_qqRqv3F(N={UO&>%V;3tdnEK5w)eyEN5jwN#(Bj zuPYz)y~#B=TC(0sUV7pEy{rG&$Gu*xv0LoyX6_@k?GYZ|9b692_qyHFFZW>U%8RwO z;+b5bDvUMVPrM!<^}So&-TSEH@t>=cj_X;}{XDC$@V1d%z3z-c;bUDpIZG?rz&n&*sLwry1GlRzo_>TFMGM(!1XpwLOq3-uxot(?5nAij2?f&Gu!C+^3HhCLHV z;O{-9&~tamjtdiSqEAj4&-SCL}U}x>bw^#P)dQ6k>bemm# zFY{1hr^x@4bB@W+>9lxvul$DC>cbv8-gg~;ab0oOo5b3lsX}okvA@~^n^Wa8&4f2T zXVQ$jv*k{s%fl;%Z__=m?UU!*eEn>~s$GKZ{VGRT9y~ecnls61-&=GHXUdjwYRooMj-OaZrEcC$m|j!$-NGc#|^TEELIbm^4^HtlkA)11ZBmTI1R z#;{^t(Xx%xxMqZ=MWr#{kKH-p(}F zZtalow_IL%spda__J4`FmD|_;J``%Gy)E~)=t9mmdcpWCzf zJI9pWJJvkY-c~kGQG317e(%C-(Q9n#=5Bv{WYcWNU7Ts=wqo@X5;K`sI>fg>nk_&3 zx5;-2o~5%_bIZthYS_-0u{-E~$m7lGlG3()_QA_mE)0LVhWV0*Ky8U`b)ecFe}**feGla_qiJ69vuyr9O*m;DN^WilLOS@DrAu=mD4&GoIvcf!%FUM4uA9Q;tBI?o33uYD4Zbr zTFE+>^XwYVD>r@f4UayXwB=%O_KiJHI$zx9{(FsWri_BP?!h(37hIB^u)=Jo%dMT3 z`?jPV-~8(h^WLqdj}C0Eb#q4r`=g42Z@=D_eBN?pg0r}( zi<4^Ut@}&?46zq^`c&mr?buoVYYMc?B8;&|5c7?-fYv3ix!&y4#cN*ys>r)&MID1erM(y z8)lzt&w4_)Nx7PSo_a2=<5K4IE2kZkq2jeYv~UH-n}8pYJPwJTX}Ptu05!?Dc2zHYR*# zn{-8Q{;!keE_-GlDu3c@(O)dGJHhI`doAlbd9}Rf?5l4@KVClLr}@Xo+fRfIjx6O9 z2%g8-mu6PDLeka#ttp4%fi+H7&i=h|G*sGTx$iCAiXBsq3B-Eoq;c$iT)INrUg@;MMUTST{)rldxhZVo9VkkcbU7?#HlN3 zP1Zl~^Vgm%mYtKXr_ZXDUb(_GOTE?f#HVHHPtN??HT}a{7yrgv(eHogL@_CEk^Z+K z;QlI4x#%US8ao*zE*`)6`k%}~{!2>Q>34s;ow4%B4E;+2Uk^^W-gztEW&Ts{d)spj z9%cD_2NyphITpK##1R=@FVXV7}L6K1ksdF?GH?MsN-mbK)nr&EpR&Dj>l zYPa3a%Q8L7nB8zOu%RSIWl2R4%eEsQjwHmt4u0&bV-dCQoLQ-F`v2B{lG8LC>;L`S z-qm>c>-W`W3-sf+9N1Sg@t6H6{XgOMzw1rc|K03*TVU2PiG?=m@7=euRW97Pd!~cA z6_cTo+P)?eyOo}^uSA&VM`@kq+4VzOUQ_?!*HZp_WhRfGu`RT0TKHh{;ios-9;dKR zU)+8E_-Xb6^G~d`*8IDrAFpMLy`{7+`|{pjY)?CX9rJaI*t%ui?6Xfwm5(!d277B( zAGd1$^yJmKq-*|uojJ3v9E&Y|d(!;hlKH)tzVNoSFHzr^d(4_|i{mWU{S}iBPw}d( ztgGMfq`Z~QKw$H>|7+^IRzG_&`>a*e>r};M(UJQ*?|hJJT0ci?OAPCcK(luxf42nl z?f2!`eYsKTaGc6?bAc>Bx7rmlvnSt{S6udZLZ>6h=4 zQ>(p~mEC-^lIQZ2cmq!3W#9fvBm`=15Ip9c()8rl(idxA$T8K3%E?c8cT_w|Y4iDy z?m4SgX$v?l{+!g*anj>#qxhSSZ)pY_{feI7 zlZB&7&c6En{axSP;LneqPu{ra&1{2pqQ(NpqQ%bc^PJw`wp+tS+BSZx>B7fG!4GZ~ zs9Jk3j#624{?HYk4zGKs?lmzrsi(xHR$C+(DoK5rc$HCa=NfzVx+^Or4tSgI&)91! z{wle7_qwJtdP%bR^w zIjn*IfIvq;HD|s1mPf{3xzoPLT;wzl*&i|2vBJms2WR(TzE0L6fVAXZDmqli4=Ec#UA(d5upw{-GhIoMy3c(;B|ac`+G;t?Ww!} zI7_EJ|8(ub1P0T{9Jj?wHRptDXI49NODMIc>}TaUl9BwU#%RVg^SckL8J7h-+GqTE z`Ld(Ib&6hJgn2SlW?Z>5!K12M!gklQ!+te~>=@^lum8e!cLvwLh?!k4tEz7Zrv&{z zb4p^5dYBv6)+xts{7e3HD%U~flS0I7HJ`=O{XrKyindMa|9x)zlbK>upQS!x5P5z` z^ht4&Fi*Gt&$Ds44!$D06^@;MeorrKy~)vCb8}@ij*DCt(!I4bE}_-sj7(p1@cn0> zJn}TSUd>6Yxcldc<}WG99ep$1eHm}xRymT*cjWAzoUs4awuh=bcQ~^t8sACdoPMM1 z;=d0wO}e@_x7^&D(^h?AY9!li&zwc>_6ib@Z`msPBp%3__;c>ADRvQ)*Qgk=YAaX! z)z&OmSkV)EUD$~`=up}>#+i}MJc43j%70$p&si97?%t<+`|5rkV*hhL=hmP5$-l3^ zk!>}cz4QGEo8q(Qk`7$Dz?pL`YQ-b&zb&0bpMS6h)SWQqS}K}#_2ru!gSd;+A&JrpeU(V(}lZ zT{m6!O72^#-F9fptLqV!|K1q6y0sXwzu)GU8~yBzYB|ULxXLoN7`dq?0=+fAT)nJs zRHuEHTGun(OM}^M|Ibsi7hXM6*ST$*PtmoT1=mm9u*&C)GjEw8ReOS^fqAK!ufy`^ zCT_V2Dl6h2U1Q4r;US_qZTI}v({1lAUCuf3>HPHr3l{$5y?Mvu|GT*SDU;Oqzn{u= zPs@qJ{le96f2vG3#l96dGlg5$r~UBcuL_=7yYtq#Htk=rZ=<5=?paGd`Cip{IU(VV zuk)1aT}wX7m|Urx(yE~5xSZ$jpMU=%_uX1^(SMQa?%qhwy*@8D%I{tN&&jIwp@d_J z{PGQcyHD@xsJQX#vE4D_3m*@~O|t&X*RrvzdLH5&53r@cfD=O}u(qp}6 z!B@#3q4R%V&v2>ys4J2yXq5fujL_uv^SYZ>_57795Y<>cd)kcGFDlYksJTVQ^s3zd z$}R*np<5& zPKj@r>RiPm!)BiGO8S=Sfy>YSf8FjB_a!yO%CG9K-wr=J`#&=ut+6jo; zvnpY^_Ps9ejU5-}&7AEy&$5bpVwiEf_EKxvBiCP+J{H+g`y*NRj9>8-o_$)Mt0Vlr zoI8CzwQa_p<{PuU(mslO<4dc#dyLO*iZEBWxufMFyX|{+t1V7nq?5X*X^ng8nmpSS zld2TQ8H@is&J%LDCbzJ%SieT+M1@A!eG_Ikiy!UcJ*#S2!{Rsh=&B!^6l+tzk2BO_ zR$t6r!NY~0om8Ayk`r9b`(r!Go2-3=4<8lev|60$!?l^kxxR6kWVX`g-v^#1Tv$G5 zrK6aAwuJG@h%7#djD?QH4d=v;du+YEkjIKw^`yS;9N()-yxk&~%$dudbM4fLRW@JF zz9HNs%i|n_|J!FD!XKHx^Wby5ePPkHQtqV(b~$H=+=-d{GB=*7>VBH>`}etaTLr@w z?eB=%9{1MpX@T7&anDQ{DZ|LrSy=WlMvlLKaN3lHW` z-1`5oiNXKx^IP^G`8xkiw6@1>CBp;Nr_V$>Hk{+?(QW-SK|^`!+{pn>4vPdrX0URK z=B4?~;ce4PT$|JNSL5aMyS#6{AAa2@Ho@!A^QE6pR+-!^+5D-tzM}1)=jXpsn%5{rgc&xx~DVF^j^*{ zK7J%bY~$fG%ViXP*Kh`p+g$9)7=oR?Kz zR2X)zMdsSViMtkD)OU`2GQDx1pjYjikhVo{pD-a+e3#x;-6?{60U7!x+@2FcBmdpCDv?<~@4nVo%M$ln zR$O+gGnR{=4x4q{?W^(A?N74!ExYczFMht~mwCsGw+YkdHNL*v_G({#y=ZLrhwbHm zTsD2Y*Pi>;e#eGVgC!edlkQagOxyf~?cTAXjmg44Gp6@`*>dk(RBi9)_pAMSuT`D? zUVZiR{(tVjzF%MU-!M;AY|GYdm$(0{{r5|q`P9W|A*MecnwPy__xNeLhUb&@wQ%PCNPItU$EA{nWwJz&+x#dO!W=V zuRJNc^*ul^`NEkat9R?SoV9J8vT8%X)+=+Ku%syw6=7JpL$_#-Ohb#b*nO@g^cHRPrH>r>&dBktJf}? z&n>O>rXTO|J(epUibH}U|W6u^UZ9mu@=(bnhnnE3}Ji~ z({%8Cx9f=n#wA>V^#{KmxV5u%_Qv$fUCYz>WftW}JfAE&VaD}uJUj9orWY*Rn)=^x zOW+^3?w1cMj(NR${WDvUzx@ywOCNM?Q<00?a;Y>bJKL!>8xDZ zXYr?W%cDmHG3b!J-A)GNnyb zLi&lN9(N0~Cg0k4c1Z27YO zw#U=Hezjn*yLHZM_lnx*6N^K#ROB;VEbg8BCGyTwp)|Nfpe^mgy%%c7FD1AOu>E@R zrouMFZRPYH=Hc`PIP%uKT_)J6N`{8?VK-Z*2IuWs{X zzRB(Wg)5eCOpLDoaL0G`&y|6Ts}pN`YYw~F%lHZFbczJ=yo&ulYx-G(*FTco#99(- z`n*rENrcOB&lFxT?N5lxPQAjs6E)Mr=elUNX7rmotF*qpt^4h=z?(-on$_9|#Ck8Q z-+Cv$M@i0EC)JH3)un#RUELbZ`-cKFbt0D76|WK4vLt%N^4S|^@{`0YP7Fs>kZ2BkX&@~gya=5=LKU~fzw9O=0@nf`V z`l^Mm1GaZ^&)Q)4@vLRsu^%p1zs{TIDBF|u{LW$Pg3W>6!WB9-U6J|Lr*@s)^TaBu ze(tMJM_HBbJHMDb_3X2&6-p7eYdcrvt>F!Se`1MYVP167^qOX$?Qzpe9FElP2uQdMC$d{+lezT%-&+V1`tUEfb{8>eco*sXwlb++|M{Qws5E~SRHXAZKJ)>uNI*#d>?#n&Ak!5Jl@LZ z&FYSIGb5E%3#?t^x{{|Gx?M<8eH(HidnHHKR9kQ6M>b3N9G#}7^I7{(S$pi=#!~sU zUFyb#Wh?k^Ji5rL`Xe#NvuOL?hK^anEdm$6<^JLPq;l=K{~U=eNy!%j@@y`BU3x`J z-+6(atob@QCn?hcwnYA05=$OEG}qHx``R$CjDV+@rd;a^A{G z42}B}>O=*@au+*^9+_M8>uvG3EU{HG`wnQ_Kdf<0K|EEUWZLr2@~ZWIQ+b{QEIH!t zCMdWjb5@Ij4DYM2)6N)3E3Mdd@JRF>YvF5Y!dtI;-3aEtyiJ>jZT3yUFkD8IuBYmUY`KSxk-Re6W;IDL8#l`s8eG)x=3z2@y_8d%K>fDeRfA zBr-45?eI+@JJv0AQ3dl8O?&G@;iIgLnlujymR2@$sh7jALA!6wx0UGWln#3xcsHMn~FvG~0@f_OXV$Eg{umK+lySO{+QHt+rf2UCu5y~Df6n>O z(If1s`=2N+Y}^(fw0r)|N0wjD{j;cB_WF0F@3&?Z#>JOEpX_@h8~<{Fs4@1*qXYn^Cy)#vc#|7#}7T@hW9{MSQm{ls%h5zF4H1U$XIYqG%hz>PZJSALZ- zoSkVl^X!^a1`P@;q{>+Tn{1O(_j&X%;r_u!rsq%nlO?C_DwTf8nl>?R^J2-PF+8o$ z_H5aclR;IZi}lw1}haQOUzl&IpKDbO?If} zJMMM5Iuk?|-!3k%FE#FW{2G49?w1(1p<{B-61(7l!0CP3ZdsrK4P~KptvP?3jkh!W zRWh^x@3i6{d;aX(N;QED*UnjP@ZYbLS+pdm_jq~nvZO2_vyBW#CO?yZxJS}irQ!9f zZO7+ES)5TyH)ors;4xv+0?9L}o86W!X3B_&KC&Ra@lx5`#OzHfc4Gk}?qK{|zuFfy+_>*jQq@dA0-1v-&oQ$V=oBN~UQ+!2J z?0@e1^0U|a%9mxSkF`6d`RZRf7H085;@$qQTN&-Ml=uEa%+nK_db zRA*!}MZ9KS$^Gq$ELWg-;raRf-4FMd2eNG2davM%UBD?X%{QN|kEF^RkP@6Fy==uI zi+?BmlM?6Y%vmLSiS=RQU-vJk_(M%aa5S_{5FW#({kW=?^AuJ)pJhYHq$EOVZ0l1 zzs9;&`sbUik*=G_WaGsP}F4 zMC0vjUpuxh-*mgCIVhcH>Ye>xRNv|ObNUo_>|4AouaWmM|15cdU*9Sv`)lnKSfBCk zw0-qX_;bheWjs}8pX=sVY5HvSaPcx0fY!clZ7;*naPA-^WvX6E#bIl*K*bF6n4m zT$#J`PveJGMotbBHeB9V|F8Is@~;Qa?;F{$Tg&D=-tTXIX1{3j_x)?d{-1d9XaAYy z9w8UD{V85360f3{y25gMMCwIlpZ|Jo)8^US-KXR(=dq6I)2UsX^n7Q{;yiujnO|d7 z`Y)DurS_jcsc)8jCAA<%zu=y2-GrkbE3&@#?{@wmew9Rjh)}^$cfl?b6FR5 zzF3dC7dne;d{?fhHLD74w0Qn5WZmVx^CHd{CBAvvoS=DbXY}G~{+=Y)SBeY1DLc*< zykW6qj$p)+8yv^4?AV)@TY31>;V>b&7YY4)A8PY0HM!7I+ctCK^prfoe_LPN*`TG_ zn0m0;=yQ+1)KANKg8bWim3AhnnH`S2VPI1FW#6T4w^{eot#7{*RumCfQFyV`t0sJE zaca(TWAARA+^w!L{~r|>XsSFulNJ7T(aDM0_a{_LY)Ii-#+Nur=GCXkzbZ|ZYG`gz ze)`Q=b%N^U%GrO{6fRpQAv)19u6)n2i%&b!HZ9FfUn5u?!)By84D`vUAS!oA2l@{x}D>i=LhK*6_qlk9z?^ThgOo3Yf4^-1{*Upfj^d~9zw>_n zUZMSS{@(9g$NKiq4@fH1)=mzt)fP;jUB4yc#EakOl* z_1fC~3r>lL-TZdy`j^&V-j645->seHF1A3yc8+V0sFl=qg_ch-r%qMexm~eYdd0IW zm1i4wul_cvMRNYPBR?#ZoTMW6TzKCzePtfs=5Ncc?U*Ilo~*YszCZY}qS47I74`QE z?kgO=7No>+@Q-fIw4_o-hDT0XKKr9Yj%s*BUNEg(yyaVMkkY^Fw`&?dn!MbpC0xcc z_e=0@O`nv5T)s#B8QvAN9kg(%EpwS+6LeDb&Gr{=8_H$uZ(rAR%e*<~*rl%gT?;DN zJKO3en+Go{-*@=h;v-G^j^AxNr<@Sa_4DA9?W|rhBW=xxYL$y;mp+%tz4_hH8}Z0)@k?H3eNL}uQ%S9!Sphjr)1adHum=83o4deHIFRar1-{Rcge=H zwyCL0&uyGOBbGz%_1Ey={JL2o+w*rlmOpFza@yO}8DDs{ejl$7PTTfm`GHmUSMxFa z%I}N)e}C<+MLSpa{+oZUsXp_I{pJZ~o5N-}I9@hCcl#<+<=0EA9+iBO`u0O$DVKoi zpQN(B-qMH^t8K^T^(~cJTC?zg!}q%dw->Q22{F9?zN+_p(A`|~yKLKQw(eyyuVm}h6N@#L z&)2uyAH^_LGV*pq)|aJOyxpG1x+Tiy*4CXb)a=|blPNX#*Mw)EuZUi~w{O|)7rVNp z-0uWiF-MtydhlZ6eu1a!GG@v4I;ij8HG9=o)zn=Tcb}b6jop&}`Erihta}xS`O|kQ zDs~=Dmh9V;%ky#D#i>t}F3&ld75Dp}@}w`*XQjzMWnCgvVZHypE#us&lLUj_KHVoE zlzwdc@`c(fmpq>BxX$i|+m5HEf+AY$kGbvJ{LAF-%=wBXr(d5JTz^w2y{VVC(0JLb zU)vUR-u%zkI&ka=CQ=`rGL_e3c7`@w8DY)T`>C`1TOKxjO z6y7Y&IjPI)%&HQre9w30q1RO{+qx^iCZwzC(78J#^!(;y=DH%~MTY&#Cf)m`4^NPEQ~r9$ zWok!l$P$r&bCvgd8xlTN-@I6yoocei*wV|Tz{seB-P2OtpxpLO12Wu}~ zz0H~VNO8SuM&OeKo|IgrUmHGJ2h6Z=J2?5G^^?G*S_|1v?f!q$rlf0mMbnO>kDN#{_%a&MmXyQ_v!B-Lr#LZ6pB+xw36mAtSyay}vBh!E?J z?fP~n*m@hA3i$J8zwK8$BmdrAJj0%&L}8Crl*NZVlSQ~Ef7kw={ml9LV@uW5N>iiV zu6K;vr987=xwXnY{O40 z^Zslx{BiB)wU3LwP4;BoZ+&#pi!)QN3EU3tw~ok~8+b+J&aSH-67MYUoLHkHuCwuy zmBhQ7#a{|pzRDds*IeLau5m@<_JUu_F09h6zkbf}o#?q#&O^u5S$CyN`_!)f5qEIg zrN)>~51h7(8OfU7-Ftji+O>eU>Tj3lzrHYI>wRXYX%2M<4Og1JnOkjrZ|Mu=e}(6# z>vtJk`)08t?qpR2N8;4dzq!J1RUZ0IS?YMQcmczi>;J1KU-b}GO-+niliBt|MYZgo z`$o0zr;1-ZS^T^?`MIW<=7b1|A9~R zj-m-Gma{Y;TfRS5w>A9r%7FiIFT@`Ff0Ffb{`6Hxdj4x^T-@gR$M~xOqsf}Wgu<`s zt>1bYo)rb9pIIZBw%20Peh(?l_uDt>A1Ez#TW8ID`fs%L&C8luKNnutt~mB~7Dsj( zo8ZgG;xqe#-)H))|DNp}9ItZ4=k6TaxKsD5*2>&^G3VH|ndhXVd&0G6CLKDEF7D92 zMzOlG$WhMG^47JN)3$zdUy;(iBe4CETKhgL!Z)@qaV(n#xUd`*c^d49W zZce$XxIIHJK(#l&w^4~h>`l|=jD4a?hj>boCQiR};+lFG^Yo3D0n?e@&j=5ie?Vo! z0g)^JY#td-Vli%zyzM@IU#nSA?gKNc$DxBGZH|za(lsOp_xnw!}ioG$vr#3!VziNV#gH&gXNWRI! z8#ew|RIHCbdl0>~@kXWHq5W?!ran4$$NA?PLD{=8H)nYbxmumP1>E<%? zD6dnT$z7~|BVX*a%nm;nQHF*8?slJG-EfIzB5#q$FT;Sxznem)Ox?TrlgQiDZ}jVqQull*ewvWI|HaH#H9;e~rom>y(xT=6=; zT*EtPY3TptUo-ys#Vc+qt#EDLlolNqu=w(=-UgR_KTR|ZJyeW8%KsAa^>Np$I-KoP z`+IwlM3&2hZ?FEDoDx3wZ~YhBD_>&%T3HA0=Zm^oKGD{%=z8?lvY6G^^_Dp|YHRH7 zjdJGsBGRy@p{yYDWM0mh)CJy^}A7 z^8fIQd}gW~v83HT;;h8AOYsi__H5$b#vR=D<>QCi+~aF5&)ofuu}wnOFz|8hewU-^ zd!jz?@96P7Qi&XGU`X+5UqyB~T#9zMiPsD$DyLRz|BOayKs+ofi zwk!_RTl>7@#OZB34?l1-DxGh!JE100f7Rgk+3$ksS{wFXUUT}*q*VzqH9`~YioV9j zeq`Mon*P-)n7y%DReIuiQK_XNXC6&CoF)=`a)+kVyrXMtUnZ}!n7~}EXs|;3u*i-M zUlGnF$KD@#AQg3;XA0{s(?4@$pY3i9nKNsX{c*>yy_RowE6!r=QoV9N>|+I6T#R4; z!gA5B2TD>koQW?ocK&ysf8c-qFR_$HgMY`r82-1eZF-jRWOc!;X{lQEFILy>|Ku$& z^Ylcq<^v|;pAY%{;`*ll>jzuSfB9b*1kTKqWLxShryku`qZV{O{@iz;{d@GJcUtbY z38?=z&3ap)<<~;v`Qlq8)`gur`v0QcSH3{*YdN^PbKB3#u*J`t)Xef8FSA?A*h0*KxM5pQG{V zo*?;{qb1S4jC;!cylcO;EaLG$BcVED`2!~HmW?)-8m{H#?47dqCO>ll|I6s`(!Aq) zj&?45_cK}|TZGHjW{XCJ@3c%i(}xa>D_!beTwZ=gCskmU_LN1Os>@U_U+!LYGPRp7br+F!jV)?YJA=hmOB8{&=LWtDNK0f=S0B zmWXILiYT+}_^tHASLvTDiyzm?#5Qg`X41EEE&wJ*bjP80J_o0*_Z{nfvz)3nu(cL! zT`KqY_M?f;qK7Z1&8gfUaC1(}VQ)Wyj7L&aGSYH+lDB>Jx*+Nzyr@I4ep$d$*JICiolrTM+V?+6_t*mukN6qdvqJsTc;;yJSFNcuxA+towl;t< zrJQBuQr@lm8$%haUfi~>Wnc>p-Nmq`!)x-YRk|KV2RRqGm6yH^dl)c#{xo3)}yztPa^VcF&js(rsw^khE$c{cZmX;4ajpYpbd%W5wcFW|B` zah_8`x9p1Y?d_4TranzRdGLvgpyCCVbkD1w{x19Y@U8UWGWUJudaKs$saY4!TFCuW zZ#S=C*z3hFY!Z1MZ-|lI>-hQN%ncp|NKBzD1$tc}lE~b!$(0Q)$`i zzP-=ZOLWY>lM?pa$Cx>sz1X|_^Uupqc8XSc=d7N(t)%vkpMbY-fOiF3(!1@ew(|DR zeH{LMUuF8z2UQmve=gX+|IwclNhL~)ST+SS-%R7z@ZYSa&kJ#0JGU(L)o z*W1Df>uDzqjFiQ*^(MBr+&R8nVui*{1)euAL>8Rsh;UjUwdu(8 z$&xqD*{tHu-V!ix(swPha}ozm{l00s>Fw(a4Ldr2WY?sg^`C#z|M<}oiNC+CG&EFh zOli&!2>2Vy=5tjfMf;%t7T;DMXC(u(hcAw58J9*m?`Ah(P`K5|0Qy z51RW}p8pT?@oM+dsEd8s$Itj>oN*I)H}`;x^_`U&!N)zBa-K-feD_x5ujbXozkY;h zE)ZWcF{);5f`nGmemU7k>V**{e;Xo>&faf-?O%@>V}Q)bkcM}~@#U=^ayuH|A8c^m zJZt76PGQkmmC+t6rcM7`ykl3l@Zx(DZ)I4%cL=={!*W;SqT{B8|943yTyiaP*x_^M za^8Ebl_$cM-4bNc`R4aWO8SoXjC{rKueP7wd1F*`sN8uj_l?*8 zf-})Oe;-m4z9#j?k<+2Z+`C6pPg29@YD!+6fc5$ZfdyN7=EctqWsZ0@m-(ygUCU;X zd$ox_BjQ#D$GG{tjK8Cn$D_3Nr9>)+?{7(UyZ?%fyo;^hcBY3B zP5+bj%r^G)xi;lQ-`PDsc&tr{x#jVnTmE17YE`T|VlFU2UhvDZ9W|?;ISa0= zd@3taoUgF>Q?rDT(p;hRZS!@XDNT1d7 z_Vlbz>2Eh~+P3(>qa9C~ugbV5h~59YBCGCLU`A=>v*mm4`@9q@VHEp$qPp|i#QoA= z-z+$26Sp>pW4aehvW`i6Q4!bvF5B1ZzdKcNCVx-joLs-)@9%E{yS=g?v#d^jobmP4qu(DtvaMo2#k9cM zYFEsY+P0&moLed_zeetJte!8nD)5n?NTkv%XTB?ESSPY}Zap{aeRj(OA$QfEA2{@d z7u6M7zBgJH#3S9Gymry-U^_D%-c?}-oTFS5RRi9I`i6OiMb^xATF74g#w^Ko-LG0V z@8g}zby$~On!sVQeReO4R_K-Vz^~l~4u)ExuL>RY%&x}lS$X+btkS+`X_+}Tm%T6E z=PfBcpZVP)4*4n%Er2LZk-Q~JL0-L^_l~_IZNo4O$(>**Emfw93 zDqU?ed?@gCwuZBWxNaE>^Y0p~{#vP5J2V{PqhCMQHJSd(*zDP@$1tv zE=8s1Z2D^o+FqymJ65a=TRe3`;Om-K6SY+51>bS-^<8=M=mhJd`~DvJdwpMgyj*YD z*~hjG4_Eb^_I1n^R}S?lJu}7ZY}V=RoWGvkms;~6ZLiFRNpmY>C77--Dn~51wI;9a z#HrVPJPsEF_8r<*_bcw8QtZh?8-7J^XK*pSbXBfmw(PaOJeJvU0~xy^Q%Q*xC25l$4LJFh1j?kZx7w zuKNDxz8|GADrcLPS4FGoZFK&i^WKc<;-8wQfv*3A_tdis%{s%mCH8+a+hQ=inj`7g%`WL}xpA(WGu0o*-s?D!b70MnpsoLTQs1=8&A4l_ zal6m`nKQqnUNhubc_qhY!_smq&97`JKYGrbtY4+M^Wpx>Jhl}ZFIMyC%G~fUkDj(q zSh;KBq3;Km&CFA|P_Sr@=d%X(j_>E!c)t2}@XDV(lVY~a*%)y0;?&xvlix4cb0uag zW?W3GJYacs^0aw#Z>P6xk2m-F86nIZtDRTiZ6&#Z`?`L9#EIL^#{4s~Moc|qLv4lhT+bVbXIy?X1|P1z4G`SoW01oJGLqANS!B+IZ>T$EYh|Na=8@bmCx z4)YuJo+@`9bZC7mw~*z==N|KwCmi3fuCs9!zm#$J!aL~|p0(k;9RAHm7*MH;a z?!F@}pzgeoC!EVNe)Ep0Dvj>b+;6sSf6}>jMh^S-2hOwjQoTN$Sy*!L;1QcP=Z`_V z?ReAg)XPrz{k*VYflq5;1`@jV1Oy+?8+n zTyVk6Z~tdR?Y=&VuRlWR#_68&M5C|PE%uKrq6+ss`TggI!tcg~E%#nlCm$)wjg2q3 zw9QYmYRYrRL!BE7@(dl%ZwiSG{1yEB!ilYwElZEzaTNCa*jjqh)I&6Nnd%vqF7d;X zh8EnZU6n4kP6cgzX%QGKY;YlI#j?yT8^xyvCrz0bpQ?91+8Z`sNI3EKJEPOC#aomXoe|HUVYlw; znnhc-v^m{M5jTFWf55*cmv7D$|CXcdr?<9RNVlM{>hV8eP0xMK`g!)1^Cc(FepbTLY15)` zD_pVUR{GA_$4WLG;>r=;FDsaJ{oC}36{?H3)R>=~S5k8Lnd+1)ER#)oC)Qq+N!b1% zac6$cnd0h8U;YUmd{@rB(WmjH0ZT)6)7STs=Ck)?+&%KlzU-m(6`y+@$q&1W_P=!A zn7CjYW3J28#d{8X$<^ReEBbC3xaZ%d8yuT5L=w*gXUH%1KRNki==&|sQ(dM1$Q;E71rWUFPOpZEFhQjd`5YJ2oo&aI$- zMZ@=_J9}4c?N^=I>%AtO@pnqbZP!1nDW7j&e!>2+=BMgPZBLPVeTpld82sIleYM-G zSCef*kbL^9DBsw1zx&NA*taT$m9PA=^Y>YCu7kJs<+WR1Sax)|?a8k9TSLWi-?Efx zUwhFTbNKy)uglub25wj|&0o-{r0K-lLcdq85C45zA+YR^tOOIs%Z}O%zdJL!BV{K^ zWbK>aJo#ZDuTw@2qv@H@v`BTe!$HrdbJP}CSk94({xfIo(GPo@(gNlxE!+F}0nQFdYZvBZ(+pPSfm*!paJKi0=ukgY? zM_Xs%b?GigucbbyW7y9xv-5891-8(_@2z(vbB*g~hrRhJwlXU|@bl^B6FJ_7k8-~W z6uq7neEeE(IK%rt-i(e1nkc=~gc zmh66z_3H^k==M0wEK7e*V2u5W~|pdD>&uVj@_xvYCqjhzTEIPg@32-f#r37 z+Dc@&r0WP^d z3$6%=xmobeUTVVjj(^JM^c4zxIY*ADmw9j3w3{Dy)4iW==n#;%&pRU9DKKn=H?`7fmR&X zcZ+%y#+W(?={CM_XUlG1sq6p9y>0gDh2mbSnffk|13S+x;@-%nz})0NNBHaN?JSH! z^3$KKanx(l{+YD;)q7@LzNaA?Ry}UBmX(XVuF}l!N|AM|@%+XsIr5-kM_tTWJn2EDA-SYURx-E_pnO(Fy=h+3Bh6`?0Q-aQa zedcpRR-@3_zdlqfw(M@_N%gXyWfH4P*U05+vOU^Z#W!iSGV>k?MlghVPn34G3LQp z^LXCuA8TclDj)t}uTl7NE-fYIUWeYEs=bWct`=_F81y!VJ(_9aWQ9iulJXV)_vu** z-z>W@|IC~GlBNIoFHS8LC@VJlcYMdIdP)92ri&dmy)-}SbSQpuAQ!(*<8Mcew4eat zD~I-R{kVN@?)Aq7MQeNG6_f;9%NQ?|C_ixWsMIZ6EU6y&^XQU9w#mWPKI+D{`fcar zK5nw!zvPSH_ceR>yR+%8WGVETJWcnR?3wAoJ+bQ-FEY$ePu)=xaL!cv$LaL>UmEX< zr#D$H`zfz^+=?8@hPcWyT=*G%*opH;gjJ7Cm`~i_X*uOaQ#OeS zhef=o!s{Il}?ngdW;@VR!-~C8&E9YEPsylhg zohQM^`#*`LJ4`k{x9wGKSaxV_de+V4?DI znLj)smG>-sd+sft_`xJ_c3YXZ?fgGe7?$1O>*i3IrRR8xzia-f|FTzi&6fC^9((SC zwN}nCg&E4fg641U&~mMseT(He>+U3Li=nk2@G5f_j;*Z{5aV=kPGm#Y(JHa!$+r=|@sbx}}`WA5RQY{r)i2e0J0XnM{F4x~4>2{8of{@bQGdP8T-4+5g$ErCIauTl4n{`zxRSn*ZtFb&YTJbJwXX zP;EB(vA$6_;o-gFHB7-Xp3hHX3#zmL7=eAeE2^!0C)>=C96C1vLPh$7E?;WJOGI;_eq+hcdX?+AV5 z_hQYL4}z`RIbEK#x!dhN`}3>75msl9@VB>Cv1VO3e(OQTp=APT$L6o?5_f;9lIqPxc!d^G>&rZ(ZQK$*x!Mpz<$ozFMV; zE0nJ(`uAN5xqddv-n-`Tp8CTY*HR?jX|`&=F?ns)ubw`CmY~{3o=H z)O=Y>rSFaWHiu;;o6VlS&R@u#vO@KJt)%zIS{s!&hj-uqb!)|(ImxB=A6?qN8p^G_ z&c1*p`sebXuf?sabJq5Ro{>Gv zduHvKxp$8CtgVwz=xAN~bjp?gK_RV@GwU^0E#r1=X5ebNRFkq|gIf0XB?@9eiZ#E= zo0iOYYbvhy`q3Gm?8$D^95>$GweIeR*Xw^Sthl{@rT3&6?uR#b-+xdvN5(Vu}T_fv(=N$s5jUSXJe0d~l)XR#9WuA!cT^7XsXWI^{f+FV{#s=X8kLIepg7 zk{6p;f7~=*mu9#CH@vMl=&2;lSZyVWla_hQ!c0{uo zh$Or{vA1evmv7wE$DJAzR^Kyw_xp`~$B#hGujY3|0)GCsWIcW?=7&zQ*N*`A8IFNZ zbbYrb+}`_oW?h`@ckUxE!{uCyR#*MGb2#OZ_x;?(7^^Y;s@liWvb=t$sd>MjefBzAt#T~;;XHwE-q==?Q`2i5JvFB7o6dW+ zZK4&Er=;He%^x(_q$AuI1peH)7`o;gWA;7&SuZ!lHZI1iSAW(TRqMw zOul@?Uw%X64Vjidj6qvYcRdk!TeP}mqrv?1OTNl|3OW4Xl)w1#xRhJ2FWxXzOv^1> zXqwT-#bxUK)GcTgw^WwojI6%=$!G5I^DQ;i?5g~Ao8`TQynxr0`!%M2++|n)e_!+0 zHO!}%$AFoKfqm7zO!4N6`SVQuqt#YCdtR=1E;hem?aQl*ZoVsg5zB)<@buF$tGu2G-+>vDmc|*Q@ zyC^uPN@&Zu7nv%Vr_z@HINI87-{AjhlY4e=YR^~i=93yNw>}*1ch3;q`uX9J$aU^# zBn*A?y$-VOtJgEj$xC0*oEDNHd9_cfZ^qNVF*yoHW?h`a@tZZ^7+0*vl1ma#n!Fr> zz9flnomqA@{OvXUm`f`%TguLbh@Nk+;|`2{%VR$G=k~M28&@y(ey)Bj(f-5V=%~@Q z`p^rXZ%eFvVg15-#=q;E_OLyz-}d67Q`FM0o87K?XBhEBG1TX>=z1Smt~fQ=M8lGU zZTI!~$bL?*`x5u3Y?E4*_~_2z**_WH)tst4aW=8*(bF5J|MUEOvOi8;QDesW-i+4l z-^Sevk3W4~^z_B!s{Ik)y^qKVFL;%-y8C71jl|}CDc?@zFuZCS1On){^B>rY=duCPvimKyT-!pY4`3eT_UUwU&bcj~W* zvok8_?lbH2Po8(8P~zar<1fM&Zwa26yJ~{Cg!cg_rWqB&pS}fn_2f zuqmUy=XJ2x8-dpc-fqm0H2oc5yo%dNA}hYuxOuDVkr`Wq`Er|uJ6Eqfas4R!)Gr>Y z;ST(_-B=Qiur@D>-o@kig8ki|kJqhs&AX)be^H&?N#}UwQ?s*6$_$R3%%b5vRO!!yWGYp4xat;ADzo(5!^KXVTG3>(R}evnPazK>)Wlp##IT7mX{imPJd!c{rT;|r`d*Wg)-h}ud(e*>x-6{r?TZ< z_>6R=gFAj{Y?giy6Z#}*t*T{|R z{O#4aMV8%Vjq&Ycb+)<2R@#RTP4H!}iCtke^ND8M(vRO{1Ye#od3buRVSS>>v5%cI z9{)b)eBpn@njP_RDJQ1iFKPEXetY&W6-nRuhkFl3zvy~?*WK=Wm+j3Zi*nhxehWS- zzjt~io-EMq-J|Kq^sDMv)NAH4em=SE&FQ>sdhA=W8zi@J zFn^ulxv6mRYl|OA9@qEzb#D5ntApMf#SHoxhJN2$`)$OlS>%^7%M4#sI z7p3`HyktJSr}WzV$T#doj?d4@zD|05F1ft%HNT)-hxv{DtfI4pvSaoqhZj%y?@>2r z?V2yVYkK~di-p$9UQ7}OJS5uDk^U*shC6yMvbYH9BB^&Z3gjetJ;nodH zT>CfeG+Pj~fo)mh2@avmO+8)=%sVm{y_K=Dv3kG6++Sk)>#!z{h-T7xKr`&M)^{mD2NRaFZkDSM4atsfr5ldDPCtJKeY92$PN>|Zx$H9m;g?#TL5QszkOk@~fkg^}w1 zudb*yOA5r#wtHCV+bnRLD|hc{{%fL(?j2=YzV43SjxsB`v@4}Qf7I1ob!K=i{pxkJ zSIw6WpY8W%?l-@;!Ky6BHu9`ep?UVi$U@7n+b@g0W_;$q?4a)qk45p1&6(;8IV67D z)jcY92ya)=i<@t3z?RDrnsZL^!xR(u82>NdoH>Kc-+p)hX?Smq+?n+nYo05a*M6M$ z%2nL4n2$krnUh!E*&yCG5-As!&fOWM9H~-S>v*=Z!?^XT--9XTX7i>p&((FxC`jG5 zE~e+;hofK3&62KfaTI_3f+97Yfh`noXT%jZri4` zz=d^s>26hxqQyS@`J786e5Xp>fB35Gx9EpYGXf89oOLfrB67u(lrC;z>l=2CU)~3@ zyi$CAMd{R&7s)>uQ?CneNN|+XRpGDQaxl`6Z*6nh&a>C|sXyUed~ExtFU*E!iDf5~ zlibQOK28z8&%0dRHk(hc#phIClvVD+7X?2Zq7R=@e)4tim)ivfi-Yr@n_K?;epfrS za+-Wu=%Y4==?4;3_HKREpk&(huJRS*@@aE#f8V-I{jn zn}xwK{Y;gZKkj8qrDobRAD+}YcHVyG9u%h#E)sEsbJ2_Z1bJ&?o+#Tt_m^3*E|TEA%d6jcUa|9k-u+D3ceDPaUlG-LQGY4^=l)Co-+$j$ z>|io&!BTq;#jMaXD%YjfeQD6;dGOeC?*-k<@80|`%)h-ui1(P#ca_(r)(m>SJ$iN9 z8`JNs>xi1m{XIL!c=BtF!=E#1Y=hFK&FZfme^xT>_yN(~-xqCKbu>*qQ7~NN@#Xv>{_7Sii^Q^}rvt9@HSir<`gPHfi#Lsq zZk5{{*Lig7gSp|R!6`M8Y&^@7THYmYoAhPIqVq5M7Aj7iA%Dn%udR5w%kHk#`_=}w zTy?&uzU4~syelfXhl{_Q731od_$%?*T#vxU5BnTDnGakzzv$|7o)1MUF3W11lm242 zGGkLz(U)19pInGBZ`Y9Pz9cTd(wQ!h^q}uSeE);@&O6I_)h{?)uAJAu+w9j&Uq;pQ zwf>V7MNhXVObpm}h5zEU)f{b3<*O5TGB~$Snm)mP)!psWw;u94x%$9WrovqB+X{P4 z#4mr2F423^v9xZ3>>1^vCubHOIh5~vt!XD`$p1S+zA5gL?y5^Id;YAX_N*R@Rnd_( zOWoO{O|CnOCmKJ`tuYTwTV5RAcFW#TCFPvri+GFq*RI}bkZo|-ziw9QWZlE}Ub?Ey z_Ld3#aBI0#OyY)x$1ZNSXqj=^jDKDyqnJyYqMf9~{j!%~eN&H5`}B6E{xMa1QG?V7 zrsp;L-F$A$d{UtFkCDN7nxe%i*6%H4hhi0@)Gw%nV$DM57Z^!|&tZKEJv|!W4{#%y$<>z9eA5OWZ zw@+bx$3@|OJ)aPjs4HJ?m)v{^$ntoCQae7YWYU{H$=5pZ?R_0{&D6u8hU^jUvi#EIji*Iix)__Ri$`?xroO zm-iSqPS2eCZ^oZ4(S29@VssYGR^6Rq@HXSxqM8uao@t)OHYEIB z$*=w|Cqkp@q;jr*`k{Tz_hak|uU3;tk=}@tg5Ioe6ei~>8=5_Q#+e+LQ~&ed$KQWe z1gci6ni@7W9Cxga_`1Pw-KQCO=?tL`IZ4Y|cN{pGv?R3fOy)b4;I8jA%Ce`|Px@hS z(VE|QuYsQ~yNL9J&=ALK?$OVl?-k{&-C$L?(vJC)kJqw&vOAnFuZUT1!?ogPN-o>p z*>?_#`7Q5=?UlI`l;O+XD%ue^_k&~J(oK8h)TV80~P`P88k#eYc-O-eN%Q*B~Qy;~sgy#It zzF%u}W?9PX%)fKG!*#4GABt+e)qh;w)>UhgZ?>&xVB^0v z*+np3u9|-{XG@Z%s*lpb^*=vePto+BpnvkNZtePq@7G_C{-)+WVYdH*3^^wEuj}U; z-dFxrf9K5UJ!d}UeJa_1s9XqEjEma%#*q;yi$2XxjNXYWx zr|Y%{PtI>PnDHyxd-YD)%Q^?&8(d(1^#9Mz|EoW)bo#k|7q5qQ$IK;(o+sHDs;p-D zJ^tPmVW|~isZ`=+*&V-Jt*`FFOX;(@%3rHbOYBQ{e|yzj|DF5K{O~o7W3#YdVE5Oq z_)bpN@~_|KoKZXGtG8K3-(uMw_2c*Q)0gdPxX|90P_jMhm5`l;>9hA4Ig>s;db&5$ zVxzd0Ov}Z~D^|#IuMxWGz9#pLS{c{1<;DVgnEgysrOvgSm^R~g*{>%%_k4{CiAa!; zjeMOf8TXAp`laQprl^!O!`TISDtS)nPU-9BzB{#V0r#!7e`21Vabq&hU1y%hctLx4 zcw)v*J)evfi$!`PwT(1ShA)cNS-=o=wM>fNG)8K%hgiKr^2)r~i{djA*Kc{I(l*)S zbMyDL6ZU26oRRN%Y~i2f7UXcD*}_I%WnRTjmA7}kSbgfhWbNswWp>-hRw6>*`rUY3bt+boYu}VdZJMvme>^Y2>%;YN)(#)6Ezkd3wC?7G?)#OACys~ydbdMXB{ndG%V4FB^y(#M zQ!KcAGnG#SNZUVg37+*^OQd(#0{KafA5Z8x9Lr?5TsYrsP3GjQyZR#|?CgY`C#154 zF5l)CGs%n1X4)~qH*E2)SCY3cmRoi}e%t2LTOMdEIN3+*>Ar}ekVeAJu#`_{eW@FR}F*IiD&+BJXCMgd38?Z%8{ z1x)w5CYT)9^=Wai&Q{MITkPjf*z9nq*Y#t^Jt5|a$LDs$ZJfCyUF!D^$HTvFoAD`l ztIE21$Lme-+`MV$%PR%~ml@XhRo_tPdayR~=t6t9)}1%+Zw;|4@a=IZ;CAeF4pU3t ze4hKPWAEQnjw`t0uig9e;l<20-3yZnr%y0vKdAD~-8^&7nl9cWGosd<4$^qzcZL0j zskGIN8J_}{%)T~N;(JQ?$((>WHy+3}?dzB++%ZS)caU8Fv4kb_WL|De%rAPF$+3L% zeBW*1&DZ`p&j`G*DYx*=jV(W>Sh8O>TpC*VL9xXmf1%N?Qd@!LhmLFiHa@rS?e|4z zcW&CfWO{$)?Z={m*W=@DVQM)C+Og1-`3bEV98}{4W zQ2q7Le&>bdYrpM1bmv~Cz`B~8tIrE$Yv+D>@^oue)V)74ue*9q)hNFGwS@JS=lbi_ zf7r~|R(oCi=VN(gHf^al6*cB>%2&S^TvEi{P`*iZRd(&y zf7|O8r+kw=*mwV8`}6vj%Pd+dlQyOwMhY+HFUamAx<8F3OBj^xVJmiGI=# zW4})&PyTKEU3*SPIqz`inF|}_h4Kyj54_zfkZI3!*Xz))h3lIh_J^gGwF@5=S#g*D z_|@Hd*Jt|J&+F?e+3zOt<86=V=|vMidac@GGGWdA_tIzosc`mrM;S%`WlJ|TJ$UWi znfD7%ztcZye`4mFIJaoO=7U*J0<1fn89RQzIB&GH@K9Mt`ME=}N0FcAle~mqtoZtzgYAvqn@RF2$8T%6hE0C)mI^|GGOXZYAKDJcB z{GVAzF62*N<}Te3q`wod#PO?6~#$EFc#&4a@GaAIMI}0viv9A;{FjL-``&4U& zmastj-{oDh(?VU_6n6(tD!8=M=p6U-$%nXV=PIswHc91pfavy!xa(ElHd;U5bl}AN z@RQtY_FD8zt9oHM{}}IH^{$B48qsr`?<^6i+f!(7x8|LJ+TMfj50~Gwy3gBIF@Hg- zR>d!!pW9fk`Q6go{w97ya%fnptd8^X9d~3d=FB`LT_pWAU-!+)VS79`;hETHuG)rwyR9rf)~;LX zQ1|mt)90t$&;JL={?p_V&br`t2$A$I$U@@loRMd6fWFh06kN&1YblTV0&`kBwG)x}b#)X%o%_MFk|VdJyx^1G5K$=tI(SDIg% zB%O8B+Ou9YfOd*5tZi5ad_(V`i|u&JA_Nm6PYp_!2U=p(Nck zyJXL6@pbnDrr&t1Y|A=x`^*mE!y(x&OI+5gBpEDn>E}AS#Pqe_%fRysrfgct|1hOl ziAgAa*^U<~i#>zGZqJ-@dtH8f>vQ9}yTS>KKV&7>PCQc+czzy7R#UfppP~tO$(A?L zfyX)$(-fM!k6)Fj&Ro7HGB2Wdi{2kEA02u3gnHv5sNo?CJVaL^R zdx=tc`=@o+_sb>D6u2I6u;Xe%+Ji-A>1p>GzqPMSdwQ9(C_K&GC^cZx(&YzluAH9X zfBWO4Icop97R2amO%So(-OO9iGevsM*NzTvV}TRJ^%o^$SWXVLGFz>HM} z%CaX}ql-^l+QgLbR4V{h>Q&$QY-wywFxjIbm zkGS4uo9I<@S6t+;+a%g`}!gsA6tol`_m7}uGD4==K3jcP`SDU|x ziUm!W(C+(sUgM#ejmx=qsUN#jc~VAV!RigucU3jV2c2Mdxg_}ZB3GERs`P^|nVcdD zizZ|yF5#Dn*Rf1GAm;P`}Ft<-*@&HE<@539}Dazi^N=10Sg-v@3+d2d}E5cus>b-P&2 zlq!Gj*%MeF&ty57GQ~P2X3UH~ zPf$@^7S43)f~9fBi`eLs`n7w`SX(R-$?bdWws>K|)+O+TB;Eezi$ z-&g*9s6g*&#Ok_`{qp?-YLM7cFyye4~ZG@6}yF8Dq01LLvw(;j`B zf~4Q^3tCx=GkwvW)-^ROl9A)9WQMnW+%I+e&!tOU`J+C$_HAVe5SzB)+&P8#Y_mDj z_AyGSIkIJk-uPQzyWBcpyjY=dUvUZ8JG;)VEMcrGhOv2EFV<8!VkpPu&WG2_0%dtD`aHJ{y#Il8&8kTFo?lZxJX{+RXI zDhV0ckWhmkPwd3q#FP7;+8=sdpmj=j}0y?)1fuYdPu|KT{~YIr?U zX>;K(6-%?escd-``DvFN+9J0US~^ruOO;tyedBY=(x1mPX1rWmY{u~B3!m|YYf=oB z;_FT?dwVH%@{yDrrH~bWn@n#W_$xZ0dV&AC{$94XeRIV$*FY^-jao=D0|3ND|;bHDzvHC}7^?1E$69#PSoQcEjeF+Mm}Y0v#CZR4}M>nb$L zY&Bm0J`%n*Lh|;p{&ve6KZa=S7`|Awy!+*spYN!ZUmW??>-WP`N{?=5Rex&s_*kIk z%`UlH?4?)RW83XNHahq3TKG0pQ~U6`9e%E@r+j&dUJiY}fW^0qo9W+ZW@t<-CWc_%k+Gpl9 z-{2VxHthFU58IjBSuS3(kB_NtcQ`+?WxK!LXFSbmd zQ;zYHhd3AT>*^dnmS*_qN!*wEqjHbxz5gGp&lbP5!F|7)z??~W@;d}4$RB+5hhY-u zq}YOx=huAxI+uhT-nUmq+v??lUA<9dufBNYrXF7VmnW(HBk#5CnrF5ZJG!2}@HQpb zM$l$K-d&$x58gkUUYZiX7q|cMUfm=APiB7T@1D0{ZEyF+v-19X_cQHx3N0}A4Hb#I zdW-9F`lVy1cU2UvyC^Nn99%YCg?W`*_w|W0fAor+ad6sa+R0>e)h@j#V%DxtSr_jV z9<$40&@BEdDX^j?e(kG>X@yFC$5i~@x_!DDzNh_o-)+zP{pU;HpKa}X;ak2<|EtHx zyO)+tc8Uq@znOGo(<}bQ*yNj%<-YzOwI2sfnfZiutKPIFF~3+MOE+t^Z2MIueNNha#XD+iBqqIH+?5vix1l?`d5+uux6}Kts0THl@R`LBxaFnn9L~aHJ$>Q~ z{2T#~T6$J*`LKJBAdb+9>S&#Czf!>_#xkyP1|?$mnp6Wh<1`y`qUWEA9vIX$29(V0DXk$Nwe zO1@#E>Wt&8HbLwiX5ZG{JiB0>?U&~NQ7aC3amYT)+uf&Iu&Qi1`@=I2BJ(P%FGj8S z^;4Zm(8|x^s)cBOflI&!hhs+99(ou&ED{t~OMBm%(cocbChpaE+oX8Dxx~xw-Fq4= z5&6%ZdZtZepd~;#L#GfbDT4rC^ar)wR z)0&klSV}l+?E+?aY3cwWpB|9X}^*fn5v(SxO-v35%=Lqwj>%an`c z=`=QJV)OQz7dL&D%wAE2Ij!;U*68nkS$_5G-c)`z;jHECFP-zIOItKm>iA#sUFm&N zzfSF;V4CNVCu-3NS(b~_zN}d|Rk2a&JKLw?X*z${OkDLB&$p^`U9+@wm)8yr=Gm%K zlY_Ok&wlv&{%eCtch@Fwm|S_WIr3WYg!wTX8&#G@OqwG0e%lK_rQPxCmI)nrGhIWI z$2TC-+faWS!{r$U`=nTuE^{7J)cW~*{=}2dRn=B3_UK*ilk#;t-^S0$H~W7yH9WfC z#k;}l@9EQq#&2FfJ^V&ZY2sY3yOx_9uH7`)`FMZ0gwaj;Yk_CF<^6d2t>x||^>3Fh z{U`9k;FQz>6SFgOZp$%5hAj|zTA||-Cb(Ooxn%R{rl;Rk51Ps|IZfZOtznVYozz5m z(SV%~8n+hqt#G~P866a&oVfAr@~fdg4;H5et$TMh@U&OgyxeU&d^gKDOx4u(-&HBG zWm|3Eo6xy#&wSOCugx~yyH=L~Ivy9=%_Cz|cgomq3&`P;l^o%J=e=rSFxQs&dcg43q3PkeZyvnvzpiUqwPXI?$FJNL z-kbZ8k9Vo(r&YUn&WWz8JS%pz+kVci&~tFEUaTYxO$U@p0GyvlrP^@G;4XcDZB`Ow#dT!$IslkXS_{M zuHb!swIlJu&B=@6iki)tSGL7(x}K)dEOqJO18tGMCTo`$=Tj$H70*AD8}2>7HP9j@ z?~#D7ho|@iJ#pVNr>2=dSo`>y&d*54{=QlckDsX*%*r$JpR_+z`?a7?`n5dM(YT1p ztDELp%Wf6icYnU|!y4@i?8g*WUQjVUVsdjQ-<`gOEiNB-`IKE+Tw2J)?Vc$b88;8~oqin1zg%HtbNEiAF}({+cKEZ@yUAx?{@Ck9>C)NSdteYy0D36|C~5W8Wj$ z-3~WhxJ!;^UoO4udV|HzS~Mb1?#+@PiP7bn6DL1h`VHt) zsvoOXFzG(;?g_g-PU{r#?x_jfT^hd4V_WZJ$8}yQ`-HWMZ{2QJnIpo%p)qmk-;C#H zT(4+!*)#mIWR|plJHe7aQ%q&CQrsfPFt(`mPGw#~Kg2joinB!IG9Jcg|COC~*@myq z&*snZRl#c)IIKRSm9bZ4ruxR9!aZlgp9?QucOd>8U(x+$T}}Nz%coDDKkIsk@1%L| z>N1t)qWlJav@t$U7)2dhcawGkz)6>NZ?!RtqO;lOB z?B=!=+V7^QuKhkCMCXC|!fgk(6j;qUmT_q&^B1MtmyT!qzPi==_xHVh$_jik4|n{n znRdM+M6YqlBE7x$v{AD%+l8 zP1Z>vMNzA2qa0iXPX9SRT{J<@aM!PjmgGM_UKQwm*fz2A)q~OnXKLRVD{Z;+$>H#H5}gvGBhH?_H3aIc%RpQR-6 zTlT&qPZvZgX_YFL%zb`w*W;tho?m>T99Jej;TA*k{nz*I9h;r@FTwRv$%lm1|D2W- z%s(8t_)=BTl_#fC^!{0Owam@&x$EJ6jA_#;i7i*BL`{9{xT4^Gi{9Ut@|$;?yi;R5 z8>7SeLbj9lPnFWz7dA)E9s70cm&vxXjdCR}sYcebq!zi@esar+Eqr}#*=C4qCc zwuEjub@(ES_}LKqT}Q-LZGXoq%ceQ0*HpVNzjbMG2#=G5t6bgG1yA~N^$xeasLIP@ z-c|5bqkH+v7@LP|eRj=|<9jWcyGK9~?x&C(>lYxzWLp4ze|f7w2P<-hVg z&o5u&)ild5+pw`NWy0eh!e6}BYm@}OYM8uVm|&?CuT)*sye zY8T7V>+CHz_O}^N=G^}3kbva&Qz~WQPP^RnRZEPwNxWJpz9GTKDR0i?%S#?|sPK9} zaSML^@?%xYSr_M&&HR`4DSxc-TYUFn>KnTWt|`a)zvbC>t>kX)(E0u;`pyBD(=m4+ zZr;H(@1cW4@Rz-DY!8)l9<3=ld5QDM$&E%O^BGop{GM98{=?-MrrbSFb`Jl~?et@- zynkVS9{&UVc$feCAN*P0d?r5ZU)$!eLZ#I2Kf5oUR4EWWb8F4L370s;!u}|}OB1q9 zSsAqK<1@8o$?0KMfB)4yy7%OX|AG8ZyJs4%h~vC^b>4JccS)JYv!nOf8GUkG@zvutCu^*-5i zDeLZhF8x)(czO@>lCv8wxlI1l!7??ZEk>=_on1&jI{fxBUJtvga$n+WpI&9!5n>{7 zzbp8;TWg4i>4FPej;9|rIH6T$A?nAqctO|PIUHNRE;Y}8difCl(#cPjPAEFI+`i`W z{sjzmTffHKz3E#lDRW=l{jAjVgvrm>M>C~~%Nqn`o)1@Qn0ayWq?GAOw-TnlSciP9r^};&m$i={nQ~AO9Ym{fL3}?#S@oA<> zV{-aDv!k2!e1m7GR{yeyFHE=kpir^v#6vCd>_3T{wL?DXJ}SQc`91FyzvmH&hv#&h z*ZgqCIhbvKn88=knOautkF6fOFShVjpTd+FR{E}H&z_E5E_^TL_Aa~|>Zktvk^GTt zzJ|Fa5_cxA{E+o_?vA4SOcw)v=6L`5_x8Z=T&-^hKW|rS`*+Rd;eX|@Be`?_z5lej zp4ZrIt6?<~*|Bre_bpM{U%t$Fk#J0f>#vA0i;&YT zq(nly}1#* zKGx^6|7U;ynvUZRM@qNUYO~u#Z(GnSeNb`R()g(JY_{bA?vLeEPZ;Mf2`(wtI^Iyp zXwGWZQQWce(WC=fx4dq7J^6Ut{@Hx)4K}mFCaJuL^!;!0e+|!(K<;Bd_n);lz54Z| zuyn_t<zYhHO3iaMNZwc8)hEw{Fy zt(AAra```c=P_fdW*Q3zU$LgcX7^s38$rG?QpeT#TUXA1^t}1+-=DiadYC1yt#(md zcw26>je79!bNBA|x4qaGv0d5Ta>wrT_R8)eOOAeY*v+uGA?ugt8>eV-oz^J+z6669 zp5q>^Y|2YF>9L$M_J3of?=IFcJNRa5(oB_vFITMvmtDTm<6=6&VvSp3$}z8XDsk!a z(&z1-V4L~#;PeB>`hyGnm>o(|Cg!|OENo%qEC^oqO;t2yS?h#zaliIHp60P*W3c3< zdG9!z&-JCkzKYteIrw-K{_ZghmGtQn@=lkA~&2NFwywzg!l`OBCzT3<2B3+F4 zapeVelas8*&o58Pl@+-@>z>?~`M2xr!}>QL4@y*e{ryc}{$_D23ymKfZl~R6b0j>} zIxY4y@4AED$;UzKE4yqaX>OYRFm0*(oSP~2Q{TKeELHrzDo<UQ++!OAOJ-%8zLJ+kD`?L{$hhgW<3y=iala`dlU>aC{vJvBcBu6%vp^WkFqtjfP( z2Tt7Q()d(=q+?U>&-#fDr|Zp5J6slV(p0Rus_TC7#KJzmL_de`zwLIfQIU|Auub3N zHG5{}Uxo8JO+O^9IfR_7EWSGKo4%4ku|?$Iu20AR?l>C!{hK_~jF7v3-5GY;se8+u z(s*W_&2uG!M}76yu3pu`>Dum=dR8B=PZW7mlKiUbp0U`2&}R<{wq5ah>wn1d*Rf4A zb&7>s@;2_6eZ-}>-c;$^HO+KC^SH`ZPn)}Y?(Wgd+4Zndx=VAd|Mjox7aP9a6-(^Q zT$VPq<8`y#r}c&riycnfn!Wy%$Fi5NJ*~2uo`~%~nC7*mYFFr-hvf^n)n05*mTlSk zE&bo4-gCY8UMhZE8tAnsHYGdDRhA?16~Dd2+$#mKSRc4C?M#|LQp`oR z8KO&bJcQepIe)v{ottSU!TS7Lg5y0wH7-WR{nEJ;wuP*@b)@*+><~ZE#C1kt)5R7% zl-c%ak=iT1*B1`vnSI-SgC)AR=y=`XoHJpGamo8HSl;K!(qlZdX7klAjW?SWPc2!P z@z_6fRo1_D;ZL1cPWCSo>zX$IWl8D-PABUQF5^G@9nAlEB$#vP{r#7ISj|e0`OKaI zzXHD>`MfoDM?+UFfA~c3_1k;QioLpzIBs3oJUwZ`rBx++rph_Ly0honGSMDUD;@TL z?`I$Xo%QF3TN3}g_a7fb_%}Qa>ETm*DPl5fb;qWkYrPKfUrAh19aW~4D!i}M>)zor zLP}G6v^chZb5DO|sM0X~f3f)9&sw*h%0`qgJ9{^4;`O|F~C zBwn8Ha{LkNOiunw9rtdYPCn7MH*QJU(o0%?9?28?Uy7>NWkl@$P-y+E`NT`{|Nrir zT-eNWzv97mHlx4p^IHE~@B9D1y-7su>yN*8&hXy;801>2e5SPYnBJN_iVOA?>K7G- zKk)zgH)f}a|C3+8`e*kA%k*i=#?H_8Utl@$sKKtu!38ll_i|)(Ju})XU3A1+>&e#g zpl9MoA zw5N?}+2;1&LjIHaC+p>U*iHS%^ZDSbUygT*qfQci7HGE+6UU1$Q<}o#OsA;RJuzn`}e(Wf}*bq@O+7 z^vm6au{M9IfL`CUQ>ORdYWhqK)c>-xeL}IaP43)W?`21Bv2FMD3z==~v3W%{`^~$v z`O7z76L_>Je5>0N|MV3{Yx0@5PTna#!@g1BkUjIk;$8c$-ET}dFyCRq!}*O5LY|*H zygvScUfufr%#NGv8z1lqvd$B`y6A@LDT(;Aci9DEuE*)jn!RIZ@4M6Y)A%|f&zOn* zTY0GchySyVf8jp=t}a=V*{#y`$57**-3f;YN}3BbH`wgXy{R#8n}lazymDS9gUcW0 z%3{O2`@Y@E&HUr^`1$!g$JQn7;8NTu!+QVyz7zWmY-E2=T2g2C;Z#9(Vp9o2NGlJeFVdd1>>!MlVZRaCz=cJt?E|nBBW0 zQ*sYonYnMbbjH#L=Vlq-`x)2HeK3FH%^9;|Js#c45Pg$zZmDO^+lnR!%c7L3j4F<= zN~az8E3%FXaW9YloGz7q@ltG`Qo;3Y(#geXPrQ(GDx*;RB)s4emJowh*lS9ZG34*iUHWGI)iVe7o}JAOG!*uN55zoP2T z6_)?J8^5$}yyaaw`K(35UDg?*+kb>H9t$X*%jaL_vPPo8FzVN8>8|7*6SRI=FrKS; z(AQ~nQ+by3fxGEP%sZ7%6>ggpa%b^%oB7edUoXv>C+rvXC(eYYO}A==OL194_}mHS zr!eN8Fgd#A=EO@Oi#YDN{OZaO6BexvTDa@$pM8-Zg{%@!uK%gdy*)9p?xMxdt$A{_ z5_d(r78LrOt`ocZO1g^urvEO(O-p<=rnSXyX;Bq34t=wuHuz}Jua&d@Rpy(mc)0c@?f&<)-H?uAj9|SfDqjh(UFp z(uB@WJDfYhyJRyz-oCeEC0o_K8`d^K)-iFW>8yXv*=wHk+i{kbJ>;3^BEC8xF;(Gd z!@PIvMP1fc&)@y;;dZeb{oC)i?>)3ivRO9t*6k2xpG9hJr-KG_4YvPk<*4t z!q14LmMx3bmM&mzSzPeUwnf{cMfF0^^0j;t;p&B%`rn>qdfKy1UR1Fs=>EKbuGjCa ze=pv$)SmScBetINd`4l-=ab_qQg zz?o3_!}5TZ`S#sm4?LZ}$TB@xuew3<$#mO^`)wD<@3&R>_kZIH?cKK}wWVgyvbM6^ zAv{~k+Ee21YTnQOdg>D{)*V%<+4JE;)m34mj15cP^ROH_5@@hE=~CRxdVxu~>t@Z^ z=3sQh{-}Yrz~@EJ_h|E!i!5|5a88Nw@!w{fw#_mw{qIBN)3t&xuT&QmWxe@vGdwTc zY2ltF7pKgeccp1>uI5A`qxEcN!OU0rH*tsZwlywoohF$x{oK#Z8$FZvOI@AoHTUtl zpe0eKmhI)YS|qr0jv41Y|C^Boa|^Zwe9HWnd+&7Ji`KuVH{83r`HvbZ-NeKDtTXY|P5)i9 zKlXAxHM5`pAow_Y@1ZlxuWVi0omqJJePvD9qe!W$S6g<~yws_-{W$5Msf5+hZ7mz$ zY2H8liN)+!Vbkup8V3ZAUVizK^}NXJd!F4IwW{})H>uAmQ4@N2$LLz-)j8HJ#?xGW zh}QMqs=eu+ylbIznTCRiy(zON!<+QPTXydk>D|3}VC$sbV=pgPovtde_>dlw&S@)g zq*A87GR5HD;lHx?uRdY;-}nB&`Wvk0#n0u;6Ir4<>%#nHk8BNm-OA=2JN)OTcY6P) zb*gS9>ll~iPO|2?xpL)UhJ}meia+GIH3U7b+}XBB$L_oTVqwW(PmgzvrwpDbmjvEg zn)vU5ow2*wkELSKf2%kt#MnwHKEIL^$|^YqADjI>rtH_K zXCogt_d3_nZN|@zOw^e9<}7dMhBL2zeKl!J9>A$7U?OSEBk~g1c)$QO3 zvR-=fLeTwHKmI)bqhvfI>z7RSg02r&e)K1G@;@l6jy^gqV~(%4>C=EtbDMkb&zwx0 zRL>K9>$1}7pfjN@>-JaN-Tm0^Ucs4fe=2rm-((9~C%fzBe2+9I55ntp=Pb*J{UlQw$q?Rh#kS}4{vC^se+idgZz?(S z=&bHeZn4LeKNf}>ivHtq`khvCo9CzW@e3J!W>t@ybuOtD);2FV{4KJwY z&y*+6$#oR+wPp9pUD(37?g8J-Pub_)md{LicKRG!`nS!8A7oW$+uMD(#)Bcnf@&Ep`MrS?ReCxD@z=y~=UNSwCHkc_N+Zp06 zu{~m&twj2@3{T}xi}IKK4Vm+HM~%w7t$F*4mqpbCZp}WbxY6s`wAEL1DmAA$e|;?e zGxOn}=**v$alO_liIXnB*j=S*npgMpYv;>Fli&P0@~2PJVp>rHlgfE-)5yqOAJ#5d zHj(Mti+#z}D?dj{Ip`)&yij^xO=+v3LCw+?tp8rOWPO=3ZNK8?>V};=&Uv2kN__=SR5kFJVdW1F8L@4Csa@tSur&z+tJ zO_DW_Y~2^U>J(L5zD)Q>UzC=v-$A+JmhIC`3eU9*SNPpO^~h~zRq{83w4DKF66qdW zyld*F`A;#9JZ=1A{k#d~Gu9bBYS}bz{}(@N0ojQ2|F(sE->*CM%m0YF(64Lf^gjJ6 z`(!e(cY1O zym{Ho&igWNjpVwczh9KTmzujp?LvUYnl-C$oSXbzx6FErNy=`HRX=tuJE{lF=Is1ce z>SwDP<#HTv%)ImkIui;n_4yvAcvY&suwDxxC9L4KpJU)`!+Sepj?>}esO`PY)M17~I zd9t^CzN=mQ+Hq@!rqdkG%DjoypRM*5B*<+#mG|RZai1r@!mN4nE&bDunB^>DobY1p z%Oeicr>8NWJ9u_g9na)rllB=|KmBy}`k95N?!Wt^;~cUhX8+!#sU`o3jq?Rmre;i?8)|S-xZmqEA+fG-Y#o8#_h0KapCug{63$S23iEz zv@3t^OjtPCaOIPOYeNKXeOwu8d7;QdOZ2wHv*s-q`fvW-bMo8cAUUaW^$Q$X{i1A9 z2Rz?i|JJ{w|47F4J=m!RGZIR|9{u6y4+-f^L?2EwhYxy%&*VZvj|r@&60mEb%^hQ-ov@>M{53g z&y%0+CA|6R_9thW|IO{(_gJQQ&a7-dD%L*DqU_pmbNG?syOKDstyP3z=wXN??k4& zZd$>y>y(%4?OEY7rp(&X`sQNq#R#XG5^1lpvckZ(6^5P*7Pf6v2-{y9ap`Q<&8*0% zC(Nn|691yP&vV#>8X6@yxdtaC%DF4p$D*QWeZ@JTjoOu1O-CAtwtG=`pu`I~Ha7fYNzE0EHsoQ*0 zD^)eqxzp7GQ_KbKNi zd3!7SYs147^*dZUQ{F{!_SqSkP39N>tsb-OpC`+0>F@v6Gd}eFmDzS+$vS@v#rw8p zDy=8x`dPMpjL>6z+6Y*MCuZ){d4M_n&U+AQ}fn&V(tiQtztI-3P2 zJ!pTV^d;rU^Lg!FMQa(`iXUz^UX}A$Judg$zh8!iPhVHEz4Q3}U}ww0EMECbS)U_5 zS1@$&w5D!m6O@dbz5n0sQwL4GHt)FRoUpOUJ}672PT=!_rR!B*dR%0bX!W;PL##QOD!iru}CWVW>_%sz9A^6nPd9J#d* zbl={G?&E?1Qfh*jWz0=1I#)(K9~4cld(KYG(V*5i4Yj(`DPHg#TB{Gd89IT%R>#Xg<8pQrAS@@EGdCi9QTozjogzjHm&YVlNa zx9XQRzaD+qIZ^d(hFkdeTmG|{uTOvMr8oV+RTH)A<;M?7323;?F#q1>BGJ4}`2T{e za~vgtnzo^D{T;pCyuDN@sf*q(Epr^OBf9Vw}+UN%Ig1Bk=nFDcPr;@Z()| zA#3t{ZBwCyB5ko``?ajcB7fa)IJj0gXt9k!=WF9;M`^Wp%fc%Xq%Nd?J$yY`z}SFm zS_V_guC|$L`0R}BAEo7<*!k{p>@3dhi@nZ#7hD;TVEAhBiaP?ahF!Hmzh-^(^6FZ0 z&)WUPb|I0(C6oK~ULR)ksmWqL_I_ov=hf3sF6%oi@mgyra&Xx`&r6vh&d(?1f4Ihy zlzhhVysPU1_Y21j`wv#O_=+5>`u%N&;g{eq+1Gi^J8M76aX(*~6)W;)@(;tN89pnI zy|}_%(Dp)fv*Oc5R<|1Gm2SAw)ptd|m_g{_)x!T)gq)4o%~onUiN(sp{T; zTN_e5=aJ6jEj7|>e`Qy$_Kdv$@TMJ?^!zyUoF5Z-FD3JRe&&ARhR(Xc$n^&q)$(e; zF}`W+d&fD;)p%yawD-;RijuzG7F$by^1lCY|HHp;_5As&#nQprkL&CI_%FL%zj31Z zB9pfE$@+^$8he|!AM(B=-p#EQc4Z~|mN`aI%YEWE7MXsSA$b4OT{&LYJ9Xx_58pm$ z{OuJ(?i=Zr`{rghtL~htcysCQx35)f*AI6v+&FYFExdGdT274P&2t%sv1;32t}R_} z{qNhNb(6Q$Jbh63U*V3%o(;h(pTF9#H9yqyQpW@($GKO2n@032X(k5QDX6;ggciS4 ze;$8EcGTbE?tXvuO~mp*=A>bLH8seYh=rT@k+ullyP z{wVYfjppgmYnO{&Khvq%dSmVR;7{3cSAX*{$5Ddr2M)~7N4taQu1WKd+tmZugf72;(R zeR1*$srs@#mL})SWKsmas2y^Eu+rMk@7pwFb4rgEpgg)J=V zP;a8YHS^@;^OtjO=T4riz0J}#zV6FJzBTXP%bTw~(N-b!wA3g4{r^)-Bpd5i2j7!; z9$tNZX;Xr5%aPWmrqba5toQmwMcR+QJQ=JTQ9ff=+rsbWIN*j#^!`4t zg0w61q>Umz#Js-#!r+|HF~M~zXI0-f9DUmpdsAeuQ0e5yE9_iZ6mAw?IUu)UVQG!o zRYiNvi@NJK{&*5r6KWEEVp0LypN_^}kN-XT8;^M$GV|EqbM95%(RkfGD|%eI*n_70 zG)c{foPMV9>U#4JUJEvO?|mz|(#g;5pJ_{SwBFs|8+u#&)oz$B{qpAQ>$}?x%NRbN zIwAL3rhw~Ss$@;asm=ak+j|RG%6#Rvht5d96@5CMalh}+xMOQ7Uh}@6a7gx2=bo&u zdt5&Hi>2T3c2`#Y=DEx^cBQ(3<7C^fX6+xAhOB9uRU7CMyQ%Zy%anaF*6fWR?%qiC zk-l_PBT0<&{lAABvx`4VsI-22{r||FscDmb<P{P(F}e%^n>XFOluo|*e)?HSvi z*53c0XYoDJPkdiOtQbcb*-Untzr(VwY);4%aq4TmF_^ zYl62g?RfdSXkW~-{t0WJ=9uXmTz*UKSBvkw$LEsYNgjWB_5119GV%*4{GSwM#aj|$!r$-jVw(jM!wSKJ^n#+j`Ha}JR`ev<)o9ZC8x~! z(b-7rr>L>zn95JMrh*ZPQaZf)b^YO)p*I zIwtvf?Zu5h0>bAxH$ADd`Dt~O#YthA?5}r1Uw_W#-L~21bdOV5>i!^<77i6sTL%buHN*kW|&?5pDE625n* z6Iwf3&m4Yr{y1e@^WcgW_rZqpOO3In zP7^o1+FSC2S;-|)>bA|pW45yT4Ia9?UiRzB`#w<(SsKw|QQflT;DPlw8g)Gz{7>lw zSzD@Z{q*du;lidYrB(A^G|N7Hrm@P3-C}Fbs%3L~ZIWj`U1-qieDa{;!AIwI@v&-( zWqg@c5Yaa+`_y{f?j?zmO?9)rAI^JMA-eJ4OgE0Ye^Tcsi0B^cOFI(69_v4u>-t5P zxM!K+6FkE`3cn@2U7UWX@yYb#Ctj#tw_v_}+R34MGuL0whcAhcrp1=C69Oj|62-cPt*^>o)tL#=Ps zDaRV0zYyBaP|K2i%r||R)6$udOC5cku6~=gd~do7_t#I>Jk6JP&-*j2DM0n;qwLGS zCmk-f+`Uz`_n_JGx!+#vi8z?X(M`#=Z({syh~_m7=d6nDSbY=7~(siAwp=08|J2aKO8w~M6_s_{S8mtcu*JuFsziz8W8)WmvG$@j^aRhfZd!10o5^CI z^}q8fIWi=-3+GziR^Gy~c7lC~p2Ly;FVb=S3*Yq3-Mjx&Z-C}&&ILK$!atextal$3 zYBc*|d1S-p=6(Naew=ssH@=b$xzE#Q*2p4qbcIfBe}tGp+smt^VnYY1~vvozM2<^z`5j z`;C`8Sf3wiv}LRDzkctP`&D8)n^tu-eEwYDDAD~SvoF|AbIQwApHENbf8SYY{b$0} z>*bz1H*iXu-OhgTvv2ux*F(`+X$AUCQyzc4A^fUKtb4_QJ31FXTFiZFG5KZ2t;bJ) zcb(=J@0ob^^}7Ql>hnqsVj{IuCnita;j%j={N%zX8{U>&teC-3wZfO-8;6(jYmanY z-rOBA3+L@!R%X(_BzE4%wM|iLH%z!_w%5gP;-97@#;x<8PD-kgs%rJ9{B!Z?_v0Cb zE{%2(d)Kcqm6*HHWBt^Re=_%7jMUxOaqsl)ler#YFZeS7R8l<|}QPuYY zck-k&VI_Iweh{~orMM5ULFVhl@hmp$+4T8 zsW&}P>Y1kVm#ll~9UJU6DgD{$&;2Cud`BODQ4!F7!W_s`CfH80wF(QH{l zL{d-5{Y6QC6f34R1YW%I>(eS^LwPsUdHK))YHF7L2dmu=@{7 z#f|m{uQgbBR(%S2*s{_0ZG^Y_i{7Xm#Vd9kUAAzq>x8{auL}Q447rl#o@W1XU(7RB z2VZpsA=~fVzdvp2J+^MWX~@I*ZHsQsF24BAU>WC|?#(k*QWSjNEt2`M{Nba1%RBpD z%ohE%(9XLq-QB_6P<)Xi+u4n2--0*%vSQHx)G>j*W2(bRi~HBC-D(n+oD01g^F%ix zSL>^o8AH>>9juNz!O7)DdyhKGoT@*tWtq|rlf0>K7GC5J+$->?>z-r({{1{ccSDX{ z+n2(7z~=X=tpawYLA%a9ZHc)od`G5(MMFdRWQ(u9<=vxVoAxuTl&?}w*1K}{{}T_H zR{sy-b-zE|=eD}}KSbq!_(?Y5 z_p6kC%W5z>|KV+ucDGts-}!BSilx`j^B-A+c>Q=y5+;d?gkED$dL+QH^kHLH$a~Kv z3$6$pT_t?1k2A`CjfC|EF3Z?9L%YKjbK5VL?D2ZJCVOT@d|63(>F3RfO7mFfsI{)s zyVV!JJa&0y-+jBjmsJhHe}CoOllFPow>vRMcJI}o`T2XUykt7bX4AE0(t+6CHl^Sd zcUWVVT=;waZ{||7Mdv*~t-C(!RpF+WZ`cBazv!;7GdW?*C?mCGM`dc!ua&A(6_#9b zeYIXe-6QmMddl*Y|>@$#mafc%E!>FP0-UwE^EuBKfVj%<9tSa|MRE1}GHrN&=o zB%g`wI`mlApm64!p0{%ok69V@ELbt~V{gX1%ATn03w$RCWo~G93!1%ZCl7kqj4 z<;i#P`>)o`{9f_=Z9v$cyZc@>e_wOy`3KpXKAQXv9a-NESn3y4Y4bmO{N7O^=C=5R zRZgMXwS!q@xs$bdw7g#*eebp2IBB}uBkHoa_mc$Djzc;ozM=P$`5e0F-v>1)L5b>GbPT>6>doORcZ9Phc- zbCWCjRodY96~|g5E9DI{{nTPaQmVU`^2#nMpSd#IHKe z`o}Z2?T7G!U73Jxj7q@3lqO&Z|zc z2hCOY>0R8j!LNE<`!V*kl|5G+1?J6D{K?%My7Q93!KbgMtgOB+_q1ru;+3X;JeK{s z7f*_uN{Tko3szhDgJq?4;2fPsvunDd+Yjk_ZoX;I)7(76apAM3;5|S4A7~%i#CemW zUA0(wBGa48w!Hr=)1_JyS00n^pD&fk>SQ}z5{tz|^p=f=f$ zvGIwqM{@p7>6bjhQ{P%$dw{8`^T(-NbE(!9+Wo?B3hJg*@H1MSY!;MR{ob9!uHJJ4 zhrwIF58*jXf0$IyH}sfQ%B+<7?VhajAZ%v9`LOsSx8oK%>9x3b?ASM7sQIDdtLcZX za5uSrEC1lJ<7dqYe~wAk@j53izLJrt;_*KG3LthxK&rPf1-q+(t#&o4ZburM|8cHOJ;+~4nCsXH-L zU;49Ms`~fa7=wT3ul8?Pamjvl@1!Z$Qm_AfSZU6Lsk z@LR*5DGvq9&+2O*KIXG%T5QQF&e=83Yy4YQ1lZj1jyFp>W!ap*QfJz}s#!DSQa>3y z{AIWQj#4fA?34%39v7^yk1ENEZPzzn=)2m?cUqe9;o4sD&nIQ)pHfv_&*${a&2P<~ z)q5lOqS|km8!j%r&UMb*N_y6WCEk7V@1HN39T}h@da3oy=Q6SR-t$yf1iwiM@xC0A zey;FavPHqi@b?Bcd_JC!Zc(sVdZ}evbJFVmixVQlyJz!GkJ^58>Z7i2ha$Qo3sr5i zB$lqP`JJ_a#nWVKrr5@eVY%GIy1&LDmX~%#GIdV$yV_=$6?XjE z=e$J|E}!Q~oN>`X#$B>m_ho*EhLjlm0hiTnT=rZTDvB zwCrm7*tC~>S>Vnme{&rtFfN#=c+E1!cH5NerJZXH3=cl}Qne}8cqhAG;d-Z3wfC!+ zh<$H6n8AMcQD(adL&fve{U87TQ%E>-Vg2zwu|v+;8UDAEH#%FtX|OwTx$d=s#0Hzs zX}o=zH|Bg<+NwTd!69eWGyYDqj$|=1Y?|X@aY!J%psVR%M&T#lnvZeI_XMPPV`4V#arX`JLhf#cfCDY)vRJ|MG9&suG3JqDRt?j<@AF?7J{A zf%V+2uTv8R_i!~v99jCA^J}H(I@5*sO^kM**XFT)k*b(`IWTk0<+tHsnLPDN&NECf zs(o^uS=A)_V2kjV(2V8I^G;2b_6MSM|}%+S{eS zW>r-^shIoPdznMX{kg|~uldd>#5gOm@Oj6_j5e{CYZv`o*VWi&yZD5^6n9EQ*9nKy zh8>6hE!y>0uX3}1Ewmk}W&<4t@^soIlC;v&{2!RhBOe zl|`Ma4(|DR@s8X_ztBrjCEYIfuFSHn>zR?tF(+vIrUutl-v2+}ovhxy*Kf+tw>!0U z{wDckFQ{_ZnJl|Veii4dwmTCISnJE~8{g0HU%~NX^OV9zrk7tRU9(GG6vwL}VHup6 zq2to zVYBb*OQt*KGYBdM7-h^VsEnP&^dx|P!kX7YUz6Q*#h1h`OxPvNSYYjx$j#Vt`Pa(x z$Jft4pD#B*eqXXnQ`w^f=hnFSn9V#NCC{~t`;^$dIKSiZp}S_y-`-R8f&0;sqbjb` zr=B&sep4(%ak=m*soq~b&n8O-tS%~(U6e8VvBZ@yY0KjR76J3_&#fx-lbLgvy>7mA z-J9Ez?k!nczX(O^{pOoizUofu>?b|UaY`FsDTUSf>OQ)&dD+qF{=pjsC*6wvw%6(L zuFelZpTZxVYCY2zw!ZL&n(R!u?dP6*7|qUqc)j20c%9H$$r^iSkBB}06szkOxT}<` z-#?}Ml+TyXkN?MAkXW$aFy;4o*T342niu^}X=G(M81wV~Np|L4)$EQPD<^VDI3yc< z|8<7r@V;ASCK)MT%sa@T9y?Jw8<(5BRKE8U#^s@Ci%eBl% z`JJM&af|0E7b;9ySTonXPOg9X)_Z5)i}aWFaXvZHo_t8r=frO@AI|3j`HWwck3RQZ zA;EfZLP8?nnx{`PW*&I_XT_$fciG>6bW7T*B|J$NT%xdl>8elH&OLg+^{SKV&#*(W zG7)QJ9>&CanjTj*u5($sBFQgsR$uB*&C=JmY4+E>53??RTlQz7)poC!4=s-f2mTYBJ4s0A^3luUms)>Y|8V_hAb(nK zkGKEjbDr$$0@x%sxIRmMcR2om&h%A<-@a8Jz1jHB?dK!=uz&rYd49*->YFTo#V5ph zA9(-nuJ8$K(+>@QTy^x?FFpT%wXC+Q;_8aH%dKnQ#ur?h(_P?V{|1KOuk?Y# z9-A973fa?4rfb@LST*y9YPrs$#~)Jt4+$?1t5M%}e$ET+){0#!+e3eKe(}q?|H{YL zyD;19>u&+KWqDtZGtIum!!+Oi#o-AD`F6cw4qC!^|NGAU8HLS4&5u{zf5-mzJx9m; z{~4}V&&)kDrRV=l+wfb{q9^>9WlFSEy%*N;{A|TUfs?L=OZ-3my)6H4XUWmr={Egw$77D$9shpZwB&X? z-4)3=mcY zKCL^@R{HnY4>gASdsdt}s+9Eg)=D;a4ZYgShp?K2KFV+u*sbYr)Z!Ir5cH zYR)oG|0kf)Eb%}uk5TfYtX4VGGevN5he{qbK(@@P5yk#{MVL^p>P&9Q%qd=OmvfPWh)~8__sfWZ~r5JGNI|dLF*_ z^5w+O%ceZy4-{&9;G!|1_CUeh)jdlNCGP$9`B`DnN{-;pxIO=b?`3_d-IX*aV?&*$ zyTH`5#_tzrpPpr^eu(R>=8_AhPc%5NCh!r)zU3^6b+H*PEOC;`lvoeT&Q5zvs@^srnk@?qa?` zt=X};%Y^0HE8ygBNVRHtA2dZ{o|>HBNIM9SXKjnCb7EwDw@qECKo63f`W$8Fi0#{G4`v zx0#fL#HT?aSzF>dN!vE2eKJdTLU-@tG`}QxhHKUCuDB2ay+oSks zUaDG2;Osq1c2vkQzY!>^Qh4?0aKG+iJ@4tFEF4od86SSTRYW$X{GYLE`Jp3gb-kvR zD^2xZSh}ou+Lefd45?Gq#NyO~C+8i{G`swAxyZhEAMO>(Ct0{XTx6~=o zXSX8?(sB}XFMpMXD@vwkEK>Ih}$FqA^oKNYgRo7IM zON!~&xuwlEYobZ=lF~lrV+W=4xc~E1U5u@~Jdx+`(O+@Z5?`cu=RoFCr^18tvZa zVelh0?#1?u1GgL+ydM_jhOMwmmnq<>T3jO^o}{|NY}Yaev!#x6>*j2Xh5b0l!pW+Ca&1i86v zp0PnD%=UMymVeyjTpG5wKIUXtzWT*!Y;4QS+$%~qF7ntmH8XMcyyFi)pYRi%!sufi z=c?KK!D`L@sS{63QY$XIy}dc!-KWj0`Zn{kCGrL}={vQPUaH)d&^xx=l<6v0NZIp` zZ@QL$nf*Yb`nQwr69!vr?&Ezc)X(D$Kg*?IFYPd6T4CcdSfO-;b+&uU40}1$+~6`^(Si7Pb0g z&P=6Z)f3wu{*b7M<=y_?uf?}+vWI=fi0z_COmn!*Oo#3>&tkTOOGGhSWfkragaezP@46p&zE1K%b(tPzH;N|RXZ=M z3eVG+Z_MoBfYL*&NLae0SMBbx@tBAg3P|8I%5O zsZ$xS+#M` zu_P|bqpb731!lFGoI80t{+8bL$V?s4dTWJNh5E&L2PXO*IeX#8yLfi(|7Q-cY37|$ z;#}}q!YO;+f0akl{Rh{pxSu<$6d=%(#LfFTSZogSUaffr@@|<2#rryT){n=sp%Kd!DuW__H@)=ESuIZ5JRVN#N~ zY>VToOX26^>SzB@Jh))-r1dq2?l-j(6+;TEVsNjk)9d zsXB)R?Iv0@oI2L4lQX62=FcmaR{RJJR7wui^60&mtmn$}jx~8l!Q?>3{Xy09ji;}_ zHr*`dKf}Z`!W$$v%iqy>-jHXoOXX7Jom(s%1!t1xzU=KkkmbwG>A>;sTk6rykQ270 z>(v%9u9UOqxMnYSCbP^TdttwHqWaMTbN@GO`e18VcPc^9aPQF-=PdTmZOF@L`aL1; z$YS1yd)QX~Vty?xcGUHDuWaO$(1N%VjafBDdk;ju54iqFZ8xXeUe)5hiOz=#V$&9M z?K@qQ|Mw8*!`Ca7BM!dMQ?;71iKkIO)GnHT`d!seUgvXm)qT76Y_IX&1FQlIDns-B zG96~%dnvkw;dS4dsqOcy_b}({buPbg=ve9hnrBwI|NXX|&fLQv!9A1FCcVr^w`$Tm zecMAJykgq>llx^K?01~{z(f62&gb)!nUWYYO&jyQc5TwSbm{*huOFLd+AIuEs=e_% z(($s8zNCFmX!Ty}4VGK{=FSmwlzMHFc8GY;8 z>8pK?uiiFc&G+Y@OLyqU6w25Ah3s zT`CtCCKNjD$ce2qKm2V*^XZ$$T36PDE4K8=nzkC z$6Z-pSzqq2dpc`hOqu;9@Xog*o>h5!Hh8G`T1?nAp`;LzhX5M<< z&}3w}^o7i(uqm<`Ka_4stqe*F~tLku6Ee=mC69Q5FW#0!zH<_BVv z=3Wlzy?DFrb;`1D_n2=Tv!2NI*zU5-ch%#w9=kfpz54awnU8i)<6))=G20Jb;eGI@ zYbj;>qv8-yt}lC$@RyoTMN%l zy8q`z!UJB;q=&|r(ifHqUouO*e%9Cbctw2Mk?%k1j&=UuJV)x*`JDIK(NSX83%5Nl zx#r>1m&f1ni{sIOZ0ExVWP%N zHf*2naP)52Sd?ii&2x9kV&7B$4jQ*a2U{+$2>Q!@euB0N-xZ#jUiP!KX20?}TEK3+ zE8ufxf!SGSL8S)1J8Ih}OilM&C|~v|dD=n_vkgmnH=fv7Gs&)O&fCBfQ9aLE^&SK~ z-g`CmUUuW<)vK2pM_!1J-+yW0s#>Y#NnW0F1b04b;Py3A-D_~pMW)|!uh-!Vrf&P6 zEOx&=t8vFtjh*KWZ>&9&Z7@wn-SAjq$#s^gPF8ulcY1x{U$#&&K)5}S*=?bv)G3jE z;Tw}3?o2Vxzt{X|Z`tX0zos9Ryqdn^*xxesvn6k=@4pv0u~59$3Bg9=|yU<^b%*^yQf%Hy6mg1vf;C&B>^gT4c^Vmc|3K#CWE7r z6jxQ_QHIi#Ngu8?tXS;wJ*|DRuEdYp{f2WMJk}T6@+*7B?UVT_dl~=pvaPOnpSEGn zx;1k)?PytZqn^q8@+W@pSpj#<7G2)4ChBURPU6lBC7P*XeG&V%2>-X$>M+kNJ=InC z=1^9sSNetj#UfFE<-dq+Ym=Iy@BUZWZrGsrt6r?kxg8*bg4P_+{ehDbZXVik9EH|N3d1$k*OAq1`>u?C5>1 zlXAx!-^J~bU_ZDftVVx!i{dhg5|x0Nt~noERzBQ&Ci~tI*Xe<+VGDn*6;Phpb7lIj zoma11l@(RC=v;L<`2NWlrs>KNs}KHcuYByxCtUng-Qj4-7pJCW4Ll2`TyYV36LRI* zA{~yMOr}`^HZ>;`12ylxX4o>pYx?)Q3cF=j2fo(nTmRu*^hzs^_xJKcW}3w_@lKt{ zdbpOY_K?a=Mc0*o5=u@J*ws)FDoZvAbHZzZ^8|BK|Uhdty=zQ_3 zJd>Hh9h;qwPu0|j?DpNzVt)DQL#LzO_v5%;T(M`e{U}iQYsTa48t44f+|PN}{JW%b z^~c<;Z(o^D@%YDAc(0yaHTKy5MN9u3KA>B$`PANf8X0DDHD|4zn3ev+;gkZ0SrU^% z{fheOsY@&28PP>(%1zPa98B(`~1U6eeU;}`b*iRSMo z8?F94x?aci+NtPjm(t(KJh{8p?3+KoXtwZ$md|hF#NX7U^{zSf^u~?{*W(h?x2ygu z(N({C_Z0KWZ0mmBe-UfFFKo?Avfj#;y{6HkyDegx+fnzld)H>KUFP+n@xIdH+ZHxc zMfEN#lw7%Dx6L_w&iwhiTW80)N-BPkWh=~GB=AFPb76PnaivMCw`4AEiu@A1AnnJ_ z`<<;(DzQeZs`l`!G9B&{%D>KQY86iVrT%9{_}8W#o2waq z1-4zTy!u8n zn|LDZ=}IT@dQXF@J2@?}|J$ZK`L91A>6iX5&v*QPS%S92Exg(pAH~JXzHDWcQm9Ep z#I*e(I>8dZRbuw!ohz+$+^e-z+VhX2i@4jIf9%4KH>|Z~+?BV4_wlQI`TE;Cf6rQf zn|q0vT4H%|&YC2d)rpTbBmVMlp5AoV=^OuMb)MVHqUA63|DLsd z{=uiQZVFIyfp-e;M=mqW?pTD`mD&T5OVpHHNo&}P0-@MV$m zd6TB)JRv83F~wX;Vmdkd$s+M!w&+(q_jTubbrq+`a4k7=dQ#p+SIhsC1Me2kyS}J1 zn{D-}kT)AT*;tHzOsKu|&Fk5zlf}*UasLGhXY-$vTzHYIUgO%LkBzH6zs_}9@w)PM z1gr8s=fb4+!~>rHZKpXLTqE>eqfCL5VMfTC>(|aKQdn~SCG!HSo=52u<|S|Q{CK0^ zK)i!hw)NCjv8|6*#mBWeO|3tmFsb7HwUXalMLA!jG~|`IHm03tP`&wX0axj6=V_f$ z`5tdJubLKD6z0eqp}IkAK|$7gtKBOdi^RK{7oWFQeQrMcw1VYKMfN;_NG455#$H$1 z0GW@E_G>Kr_GW?Pr+teIuAaF0-)Yr9mpMY-Qs=%O@;et)kaBXnWZV)L2aj7Nlb3&! z`=`0>VXu4Qd3DX7oLYsSUbmROFnNC8F!lV|ZPR~B2iJdD{kK2z?LXOIp+icWP6?g5 z|F2cOmD6+4eJ!ob2^AKfer=3z@zALMv5@amPffo}2uF>?{;fefZ5%i4S+t^w+xwxK z+DB=Yi%+h58qQdIaJ|bGleN;bj?bJI?wWqx_V&K`HDCUg$@lg7%s+ni?XyW;{`xn5 z%TC`YI4?-${gH!R{QFLM?3idSyFzK5oT>17O{>WGj9Gne*7t6n5coZyY-RMZ^_wn5 zo?pF0-B^pQ-`pvt@9eSQx9jGwpPwxyU+lzxyvXtW$$ll#i9B0w9GESgf1*00r9bXo z^~$B4?CjC2Y?rTb6%-AvR7yJg@?2`SpGs`MNu|ioE2YagTVCJidz%@pw%2Xqxd;AN z?>&w!Ut5}Vq+3-uV_K^2!N{&&hJAV`LrwjTy97w=bG zu3q^#?UU#+#p8#kSv9yFXcahG`9Ep#q2TPcpnn;S|E)#D{%`wP|E}WEu18HaMIY3C zg_2h6w-3=^5hzkhYKzWPyBhwu+kvG%Vyn)x?v#HeZhf-fUYu0FxK;Oi>;(0n8Cu1C z!4oGgPSWzfylPf%+~V)kzt?WkPY`8@wY-^jY>rZWZ47(x&M!+&)}+navSfbYv531` z-@4i#?@)cG`C8iiO{{dz+|FF%V5gEN^FD_aZ?)NDlAFmrnXT$|r~CAX)H4RTUSDrq zz9lSDEY7pe=I7_Rb677wkysuSf3dYM*5ggeuG}zVRtv59v-sUJUtTkN$Itxj^;(OH z*h02RtLu(kta)qp?a#}NlV?r;zeC6UhWYCi?Y*J-XZ;@COE^AX<>HAaDWQ?M|Ag+? zI?CruYNr(3{vkATLT-go-I44kw~D@Rvf2AhXP;e}#=8e+LXvCKPT$(Wbffy%`b4pX zMLr9oblet(6dtM(xb3g;l3^E5`m=~h*F@ErS%YTJo^kcwZ;L0JnA^L#c7@o@sW<+5XxA_@#a;`f^u_@f4yto>^wT*-`Q73=G@~7 zet5`f2j4*(zl8>~_w%tWxvH;h?!2c#!RC^J{hr%mH)VJfJy}?nm}dOF{N$l=x3h?t zN?`f1>{OG@R~88D(XnZH8rSMr?I3lODQ%g}R9>`ZyT>&eR%)O_vy}@+rP`duD@dWZ!fdIYIZHVdS>zQ`i+L0T)0l~T{zs`qtLCt z(BW|1a=&RSwa#h$T_rA}q2vDE$ILA!B4~ap>-;NST)ekuv(M+b-;lTOY4!ETr*D5& zy}tj1ecGc9C(|9*2tKh)JYDp6$;zD#s~z+6^^UehKRls7Ax?0b_NEs_BG>LYK9tf9 zyd(7d%yvcJ9dc8#~+tu_$X@FUwk#r^cR>+`V3$ z?PnV=*VWkV`S0~p>i0x%lG?F!FiA38#~!_F zd|rFo&of##bL<0m&H3%>SN1ry#`l!z-5_7(36B5GxJ+M`9JsGnIqlCZ`{n&iXCH3w z(h1(j`F2tB`sl4J)A#;y;MDmZQ2b?K-~CPbJ8KzJm#kW)o!qb^Y3aPK8ChcCW#63t zT(V1c3*GvxhgFE1Q|FSw&Ckczeww-T@e6~hQw``Z`X4tBqxwz`{-mjNS0$sc! zFRXtzHLFPDW6wv6je5!vS+C?@U25#(NZ5UUd_T-e)a*-^Z%H!nkOn&&Arkhc}kIjFlA47m_oMid+$FsG8hU z**&{4`i*b!%7nJMS*xV4ipC0ie%tZA;#Ng_ru5Dk>igPlyxz0={c}xNe(OxV_qXZ# z91rRj`#;$K=)L^hqkh}W>JKjXWG}I_IeL=qf`;9kIu%;8nq|7YK9+9?kW!u2qWn0? zZO+1lwz132CZDO>z1w5oza?D@kLb^?I5zVd$DzOp`t9y|dN-Hd%#579zjvDX4x9QL zz1uCE8wGseasx_sHS*9do#MZa%BfayX>rZcx2& z+Nw2sye1rEuxaeyaA;@8+^E&(E^ZL6T>Z~ZV9|!uqSKO!1x0@zm%S@nxBtUTk!ceo zzMf51zp|GnG)Z$&rJ7qu#B`1bUxqM zQZW0Jo#69Gh6dpue=6scN#s{Jb-Z0Q`$(_i!jqpTdo6kH#ZvPAaAZqY;4cBA7t8CK zc_z1OJYHG)fBo;fcef-LxP1Gm5t*Zu`6h>H+EeCVH+kv~a6I|U@c6--o|T&6CPxk| zvU;EH6QHE9xtvGjPTm~(>dkv6cdW7Z z5!0@>=lyxUfdJ_ zo__LDtoVwn|J+O;Oy`$=oe&#vI_J&e-zS5v8e5-N@7A07N$_rP?P)f{H%o3rX4)(1 z2u<{}@wn3bsqkH0b6s`#_?@9);^pIoo%k;XKW^|tbh z=ihf7`!d%#K*vwqJwT6FKljMZP^OY+O)Vr(}N%Q?yFZ^ zv%(^%ck!RKFaN(d^;14r@o&A?tOffPf1IDH(IxseuSo3Q-7 zFw0AdC#A5P4g;AIS}7_Zri1cGpz5vboxE}`Sa86E15+% zT}W0DTH86c ztCRC4w@qr}3tbn!pXF0{veoXTDY=lSCY$<8J~0GzD!&GbB#P>t?9$pe@@wauJ#b_U-eiW|cxhMlX}kEQ=AJ){Eh;;{w`hpO%lvkA3wRM>FE>@Q=I*nE z3E@lzMn$I#A01yGUvlnc(u@l_j#FK%?&(dsCzIx^tP_%8c0TJ|x#_2Snj1d|X4yT? za#h={uGm~Quk!DPt+j9NPQLKD@Q(y@$^PG5XVP{beD`CC;iVb(0y{p+%oX3OsC&(G ziJN8bvn?*OB{XBE@3@qeeKBrLBWL*A4~{(X;9uaZ`}hO(TB67l4hPrS>rqH zSdbG}c6{4K2DL2)FV7onh2D1%1x?83QY`H$ucQ4;I%}k-Vyf~)0H80&Gs;A$dciPj;EZy$l zt|ecyH@$wLbm@^pR)(MVwnnLS!auUkFSwz1(kbOn^pl-!Om%CzcU=xz)w5mWeeX&gDiwMFF%{P zCMjKcSHtswh}Y_q>*mcq?Q=1$L+$625B?P!3jfdWboH3kKEH!u<{4Yz%)rm@jeP{C z2432yKIIJiwy-@t_M$gCERt5H=dkJi(@LCV)VpTUPG!G4Q`dgKBC@o8qgI`TQ^Efn z_Wyi6!GTT-_a-g6)OxGL`)K0Y&2#>gvaOm}8Wx&xbfWl%@Y}mth0ou}Nqm_j@TPU% z9F5Bp{G5Y&GB5 z_cI?k)|)DP%q~yUS_ux5m6&C3{ zewM4dHS*@>!mq7K6E@9@SoqIE*;>^7{85H2IteFFyGLJTx^#W!G0v%OlTR%!pS(;a zWb>?@?lJwj?z5h@KanW(FFAXeH|@KHR+puHVT(`fv#SZ87~Z|BkS%GuW`1m^uSB_z zc$Dg@l#pkelKQouF+NqRDy&}Lwnpi=Us?37)Fkt&O}CavYxX?R^64u&)AY&T@)L`D zi->;FzvE0Y{`wE48u#@)Dfyf9Tr;YtYjNiN%!}SnA6;f#b8CBm^VPNb$Lb!naw(>5 zO*+&wDaFtG>np`+AC`xGJ|6Pwd!iA`uy%Nz(jPv;I@#lv{#|!b3 zil-7x44T`La>}n)n*WM*o8daX}XJ516665Zf4RiYbRIDq|`!Xe?{hI0H z_~Mt0M*A}-G<^&UJ;V5wGw9kQ_fM_<+1Et>6g*@4CB)zpqxXE*$zF!QNt>8ohj_4F zDBCyRIyxY+JJbJU?%yAFdmBoBZFM?VcDcKb`)A4=EBzA&8x)QPygTvzoauxx&wRh@X zxi6DB4wQxmsJACSNMH`iBKyY7|PbR^?=L0LG9)pC zPRHjs-ZuVb9k41UJJKNDaqUt!RlUz%OGP7Ac11;OaX$<-_t$3xtnz@}zleIOTiJe~got5?U;oi^T;T9TGi@q?O75bjq z8z|JWLh{dyh3jW3fAi35Q)9bs_%1)8l1cXF->ZJlwC<&R3Dlg+_l4(RuB^vB<5S=7 z>??EoeQM$QryAT<`(|#-yYwhztCWe}nVWY{_^q`v)K@-#rbw1cOu5ava@Df8XB(Z; z6m(Ap3%_vqepJaVZsoieNAem~r*g7H{@7ieGu?dK_C+Tf-YsvG+I+`G+-If*W5zpg zcje1B_Zy$vTCcv$_199j_xV4M-4wg~fUP%ExIWExuW0+^FLkZ2F7N)+!95`)<;Iz% z9c#9wk+e7*7KlDo!3D{l7#OA2k7Qcs11?-XXL==OYjtT<(|@e-FUJ4Nr6p0-O3 zpDy{ZP|7(^B(K9pZ*mAr-Y-T!_Fr1oM@-b2A90%-${$TNTXJ^?_oE{Ib_0Xvz_r}x z>*ppU27URcsNHFH=&HrK&})~?q}L_wTYc`5+`mQJWp`hfOSBd5u=sf*aFe!weDMW? zN5XMUDmo4waqpJfiWz1)Hw6ctS>An3=kqR;iMQ&qe}3wI{ZyR!3-`g@$2KgEUcj>b z-_7SQ9=XrZo19;8p-ks$XwrkfvgX2q*FJs!yVr7^{N0Ic{N1~(StbP)uVmQR4E;aFQO@7Y36YD0|zHYKJI(L%u%JaG`K5aSMNSCrleTkJ-zI}%L zwrqKvmQkXt+Sh7xYkwp~yI=R*y8hthuJnt-hc+*{t~538&C+e#(qr59DR?tx$3{+D z%5a*I`!Tm-xMp%nz{NL4>NAC{9NIYq{r0`$$q!-umPVB*f!wtHa&r$@CMFs^ zUjKZrRZ8Ej%tCG|nN5;7X+ zuFCFvsanFSSDd!Ks#R9prewph-#)6FL)#+d-}Ce`{dC(IJmF7`=p!j3)qP(3Z~3o! z?mV?t@qq`U6~Dye4U;NE81C%sn|Ys4jPKQ*Egl3eN&T_m?;FV+ zp~+Qx@%N(D)4sRopRte)|9IGftFxrZREzn0SU%TM$JY&W4sSn&Vx}SSF zspM{rKAYAdv;NY>^7oJVrsxz@-d`r#bzzRrIfJUw@7K;e{hqyN=Kr25uG5llAM)0{ z>u8GPN#uSy(|AI5RL$D^>-O4Pe=O$+N)^6n_w$E$#qy==e0#o1KTTDrUv2m>UPFA- z)@_%!8*cwwToyfT(Kg*j?>qcDYs6aJA|J-+tn}QnjU!t|>S{rpzm=@~9v} zie_zHxKP;kvF5Wnj^Jm!FPdxWgpdJP>?$%It9L&BnkTr}dhq?2$iv zt~{sjg^*Bh+2m>GdK_oGn3@7TApv0M{o5K-HiCxOHait3(Ix3p2>4Wut{1kx`|_2!+Ot6J0O%tI53N;dU~ zIcJ;xe(5N>c2lnW#I3heB6HVI`z+bIrJ|u-N%`yfsWG?buXTLAV$CPDN4m?m^GwxK z4?X8%Tk<_9TJylUY^@dBH4k^qJ@-YLMf6b$Yu|bK3779p+rdV3mzN)&EN4``uWxWhwj!--oLr;f4|e(2XFUGS)ityWx}XXEts8= zJS8v9yz|1ogMpKFeQ@1wsJ?E|*O!^I+kZxsbei|{udjJ@;N_#1+wZv!^ZNeVS)r$P zeCE2F<(D(hZ!dqnE?&t^a!=iw>a2&1#Swyg=Xk1dvv zJ*wmPKdvlA)sLT^N8h~&$@jcobS9Aeoau(CAyvaY)QCyh1o88h_v zyT>JMlUBJjd;5Hg^%hZl|D->@H1(S2=fpJoleX{G@L#@yGcDgRxwdU?-I%7n>EvZ5 zrRz$|m@hqHzq2pq(9{_-gA}|sFF1NNtG_HGa?8894?D__Grtx;vL^A-ez8vnuG{*i zHrDu}KR+T6qhixrYf%`Pwg%axz`@G6U-d>mh&*}sbmpZ}^l zef8VppM`C2xu5HvZCD*swnRIAN1(R$-6f%lk^dAInjX4hF)P@?eRtvK!cf&ZYu*L? z?g^i6hb~TSPH4;CVSTgaP@Ta=sfFFI&D~7X7#1z=-2MD|`IE&S(i(q1D>pDjJxE>S zwNKmAI_X;4ofG=D4snaTl)LwGNUxZ1cpCGWWnZKgY95(##^kJ{({IfyzZzFO;)z;v z@s1ErX6fN72mhQ|<63PaK7py$iY@J|^%kLX zN^LO)tyxModefUsHhhW7JAUQFnbfpq`42C@Ev$5ry2$#s`B>p^C1#7Qm;QZSntRgb z@AP-S`VSv%I^p2jbz4=!>ST|t%jayK2geqz6)AY|IPQ_-!`VI7{fWOjWop$wg+2U! zj?X#yi<3uPDOYS|M{L$pMOR&J4R4FB4JOAH*?ziU(PXjfT8GP`#ykzhxXD_^8BH0} zANY!78E}g1nalXWr*Xa0{7nuc@$9M}J<&D`jaZ|AX7FWPDK;eRRf zT0&H2KV1ARILULp&n-mde+zhs!6&S+{~G__mUXUhARQTv;Id+{%Re6&eCL|}WX zs*0K6gF{c#KK^o_C-l|+eQd#jpdQ_+zVl?T;am{HS@mQ*dHor`roQuK-5Xz?YZKKd9U=kHU`F&Ut!4!{QF1b z^QCD5jZRK`rgFTyRMWO;VZKjF414IT?MJMRwdlyKHt<|6$D?>*MN-_YDR;wL6LyD2 zu6?Ba=w-t$skO$=jS7bXUcZ+#%sUwm7fE? z@4ly*SaI??o8ZquM_ywOm+ze_H(_uP>(OOXX~~A3VQI zaLs$Q3+&4k65mNr%Zo4Xn*1-g;Jf8_e^$4HpN$@UlY8`O`-29~Z|48A+MnM{9bUa#0(vGC6Aj!!f9oO<|C{hPh# z{poEcr5qxLdlsEovZJdbzVgpz?Z8sk_nLBAocV^E8MIH9-TL^?xU9-x88Y@Qz25~yqWLuvP475)&C(B^@>O)DOLWiVh@dy0-QT?pV*egmc=+#> znK`v#)24*aGD}^2b$^7J!Or?X@y{lb!Ofcj^|(^M-g2#uDYSo*-c$YiY~1&WciuZ) zlsa;I%N(x{B3btvQ$9-8yu6uw<>q3WyH~dQMrb6N^6MVta5}L3uvSx`14E*pW2cKr zUcbt=Q}X{M|0?;tbZ7FI_I*|79p@)gCZz{HR{wZ;f%O^j$3jw%b>Ht^?0JaqV4V75 z@reJjOQx@yw@$J+f34}oJI=c1tuLNXMbjzqg2Hv8~+LXM7|!~M%D4d11YZZXidyj{Pxz(Y)IlhIqV!cQ75tekpW zZjNc98^pYJ-QBt?e@5Y%4VRj?-&`{5;Y~KK=IJIE)Va4Mb}8=re_|F}ptfuNt=aB^ z3injp=H|D0i#s>eUR5$}w*9Ym?t}7c^>*#fSq~R;*Iv}zD!A)niNGUW36IumFAL*8 zh-?!)=#l@W!8iT!hPd8qZ{0iI%S=A}Y31)}51;?p`K{_L!@kWOYRWsK7aK{cRJ{CZ zY@euBZ&lcp$?*2K_~HjePRW6M@2ewxZ*vtCe3!T4j@P}e5m<6%%3~g%1A0@XLT#r# z{8zi%;m^ak#(xSmjK8H1bNt&Cdn%1@+qz$DVaNXO_`7`Z%%w~Ix=U;MAL?JL$z1qr z&rO$0owgP6R-B$X9~F2-YnpnG6|w$2I>~BT+O{oc)r5nW9xD1+F7$4(+DEs>JI`h; zncnni?Jk{w|JQ%6Uw>JqFFbO+@4orv`UUYi^)GB~*PF#`{&i=4so906+414)=TvRD zqR`6n!TJG@)(4keO?SPzzAJJrsYur^syx5;)Y;4T<92TGFYKWo1g}ksXR$U!$r&=oq%_7Tl_7aedoP zg?k^Lv$}4HW4V!Bd&=?ByeAVrGBk&;(M)~x&~W_}`8r+K7sZd84*oJTtSH-M@7-T3 zzK!ckfGmTL{wv|K+;>xCCX^;`Tz_ZbfqRC##h(5AIXAeh^wpIqJPSRef4-a`&9=C6 z$4TAt#lPn=UfJ^Hk|u-rugCZPDdw#{dGe;_q=aZA!`c0_=4a(38PD`Fw%c2FJ;*!A ziQ}1WL`c72Xx>WJ80&|M|NiBM2q!;`SU0=9wRGm%UoX>g9{RpsVRon~B1>XQiW&Q7 z!*#}Do|{u29@bBYID1X*=Jg5px&i~0A}+@;raj}mu;Qv0r-<&xX$NDr>9QTMzqjjd z>>VRM`OrJ&Kc4?_>N&Xnz5FMk&+dG0C$9UU=lplyOs8PO`;OOKwyxfJf}8E-{Ibr= zKBhYZJ^eXzCS6zQtG~u+;@*8VQN~lzaMm`X?`OYeKiGC<-phwi&Jpt*aL8>9M^RRg^@Pqz#%T2}!LpYumQ*%;gU}r#c#Eyc9Fg z|9MRD2lv03Yen+ZUg<2KzR%@J=KQFsbNsF>{i*&)Hr(f>qsr0ZuGNb)H@9`NP49N* z*d`Zta@*bP)ZIGsh15>}i)V|Q>i%%gtbbu$^&wlc|IGKgHUIt-*&NW5uLmg}kZA3O^x z>;E}y_7{;q)m5U#DXw(yoamO$Zt+bEjW|pVq9kfNAB8&iehfR+SslLY#r}@a$)e|v zi}o97AL)H6WU8~cCU4VyKR78Dh_q?-jTDA)O zTQouQ%k(QT+JUv<0W*IZ=I|fvVcLGaq~_zDw-r+aKmIJN+4EPmh&}m0sam_W)`W2~Pdz)>i9-r@92Tn@*`S+%{oLQpOIw zPaCF$b_i|Rx{Y(C^DBWfJ&OMggDelGUg3GxyDOS#KW_B{Rb} z)9RJnZqEtdziwKje(if~TGpGH*%P>K-it2(FQ6Ey+`}z9Nz1O~z;gknn7I{^C%+o!8J4X zL}+Mo*~Rw_k3>b>_J!OK%<6dCcX9uRrDyNo(%J58y;8>MyZ`sPy0$B;wjXJ#>fEi^ z!N%pc$f&+6Z-G)lc|Bjf)C1NR>|9rN%NkvBFWc{SX~}_(z|#DQn)eQWTI96d_rYn| z`|EGs?v{vRiph?#=v;dE;K@Bfzh|=FGt_#LDa)q7pSt4R%eA4IQ@y!ObskOFH}zUi zjN@|K)5kyjG2r1ek83}o;TC1Bz~Nvr?fLGfJxAj0qw22BI=}T$Min<>%I7n#E~geQ zPdAz`hxY>&?=(SUfptQpiNF&wJwPb$#@1HO_gi zyGFM4du92x$U^amS&C-=3uBp1I0diUP$3`=(lb?`?qZQ`rIpdRax4`;~zu);C`9z_5WKQ-Q2+PEOt5%b8=l_Q@~@knP<;jU+nj( zd2UJ6qxR9ZsU`f8`0^do&uZPfE#*3af8wfb7x`V(_sI4}9)G`N zK4Uk_T=~pS0g;v??+SMBZ=P`3fa5twJIu7kc=A>YkA7tq$EE`%fh0QyY z=3AYNbD8Dad3ohzZQ;wm$5A?S<7rRl3Bj_GFqY&aMH%l-1q+~d(c^(9$X zbC^S)@!pep`^MvsSCsvSK<*`lcmHgy3$53?c2sURjVk7YA8C*i*%O zF?iyHx0^PtOARa!tea;1(#a#Jgv)#T+<4Z9QVRTyLN^3|2$-y&Q(~-_nG;ibt(Q9~ zqI>Ct_od$QulH-8K6ZlRp!23>KTP)2{kze5UPofd)4+D~wiuTk+vZhg*$e#MGHYE! z6u-xZH*+3JN?+KvHba>E_gghK#-+l+n3QF$v? ztdN+n>QO>}W18-^{>%E|`v142)}=)>`>MR<^5SS*dvD{3e;bWn`CQ8IpTFU0%SkgW zw?_*nOn$q$yZrB3lSW%B!G){3?#>SU7?&@7cHiD<_bv&DdEPWSz@F}4(OrHu<(|;1 zaHZ(LcX0<9X9j%Ru!HsKZ{bo=zqF0J=bw&E=&4bjrM-UPVND^Cc|SY$l*HcGy6Cv} z$P4pKncoE|JqtG~Dn5BPx6=1(==H$KYyBT97w|~x@X7BL+HQYInsa>LjpqyIw#qntTabDCKi{#X&$Gnt-#=y{ z@#(a9-+yC+f0xCgwKP{MX1B8lu{$d$t2{dYe3Qd5j?dh8&Ul`a6j^b7?aKAl7FJA) zZ{9ky|C!$Dw7KVI?7e2VSO3u3l}2HPe?NT*)wATEa;SfHS<;k!Mf-Ciu6^8-S5bHN z;cu2@{h!{K&OLe0=eJ7ejJ@(Rm#etCep!&vF?*?%&h_mp!d58H^*Ck!V%bE^#~u6! zz0$Qdi`K8d?SD#2WJbv+&~=e5UEW_L#k@NMhYpqw7BY+Sbm2yIf>s z7Vj(lGDmCIWp>uj3E7Jl8g7aBW{|mRs>T9wmT%wQEMS`3ti>iEcy3$eUE7?pZ`(2x zD_u)o8AbI@_z|M6+Rl+N&HRZ}k+|SBPOG}rdDmO#sRV9vlV}r$u2_B$*1zqx_Snmc3eLY=`+j|Fd!?)u_-)BTe&Z*)X{#=zX__bexLWyt zlbfYaz|4!wF0LyIp8NaRWc$E8h8x$N?9wEBHSKcCPlZHn&8q8PdsfA%IPU_dO#40N zc)e8)`vTs6Z%pjCv)Qbyv_2&Zv$(xX z=P_n^*01f@`)&S_D8s*h(-!#ov}%clg&p8r-zMAF$Fsj}@m~=Txnp^`H6~eqmyGLi(y>!Q43~jqXpHZ2iJ( zO^L%XySsPv89FPbzP#zdtQ6I?d;ZLbps>#eY-IS^XIbU`m@fO2rA7GnmjxSG7P5Fh z^Dp?BrBkSHzok_EwA`=!m#epZQz;j?!nWa{TUnN0&2rHn-)~OYzR|@=CuKMP#@Ex< zJ(^?pCDEki908+v3ytV z#wD{0)GyT>cgu^5Sbd#ix8I@Aq{GuzUOwI}zU-L&!cFsT?>}f#agW3D_u+~er}8JR zn~=6*iRR*|S@g?Sua7Fnmd@K=eqv7K!ulNcTk|%lY`E2W z;vVx`yY5SeT|Y~?ev*9d61jNtNA}y?S5J3mCloA*TA+H8U+&htzh~41b^b3}_g(PG z8Fh(=Pj)>!754OfC5Joj*}K7q-^!No{hC#6dnU{HN|E*PQ_*{8Z(wSEF#pK6*oNQk zrzG}pwz9tA*qOK?*?iCSNT)B8{XWME{8MJkM6Wne4VNMLqTM zt51?Y{nzOhPOY;PeYR#&kyYu2mFx@T_rEw3Fz?@`z(X6Ij_vpmy}I@PzN6pDx6InH zZ}H4MJ^Sv?cb%&>E6XG6#cahRM-F!eO*!2n)-WxiqQ2%!^jt@u2>}JK|7zW=^YF+F zs-FC>Qg$uZ>GVzFt~T$Z8GQ{xbF=firyB2?ym`hZU!%l{CmWosj=wzf{N?e}>*U_Q z+#Y|u#Ma?Oor?MU_vEwuRmpRL>FDzeDXUuVQ7SlRC@9gTlH?}+T^A5Ng88e!) z-aG#K*~R~b;d5@VOjx@k@gWEES!vUVw`z;skDB}z;%u+}$jp(;TXOdDVdr1cxwn|V zUbx6&TOy#;G3)!;eTuOS+=pJT-S4zkW=e^I+KC?Vf|55C*3;6L-`yt^_q^ZeUw3@1 zqG5Mfg{OAygbLFIM=NufLFEY$v z`u;h=AYO*Mq}(mmX4YY$hZz_0IhbGenog1zZ2xO*{K7GFEtiH-UD?T-kF+DSxi(33 zu5LL$bNkQP+6R7r+Hl~NbgisFZs8o=+zmS(CQ66(Kl+w*ety5oBwdNeP8S)c{duxy zW!RCSo;{rAv@jyK<sk@F(2{OC=-8{+4d{0(akJ<0D0s_>~m6#Pj>mTqkDe*zi0g08C3ZWKK#xYzOc=yz<1M&^Yi0* z1&kzW3q<`&gcB&-u47$;(vaWX&BB&)0D)YZM{jBt7%dIBI;WfI&95yoPF8|>&#o#?dlh%*7hjU~+`nAY{4-L$pYHSC z5ptMUy-$bv)aFIot;F4W51SnPH1%AZv}#+h*@wyV_ZZiRpSLUH*_QsHlhb-tQNF;r zb2Fc3*u7O~`0_2K(_bxZ_lN5ZEmqP;bXT6%(|RMPeaiU2M$SHXOxoitv%BW3 zqpzDYb&sp5H(c*QUY?+HE$R7L2>Y23k*t#Vw&zWaEig=+k>2Gb$#1p->yEfRL z+i5WGTpx>jy24WSl$AxnHBXmMJbLUy!^FLcKHfEozrx<}ziqmbQ@*frnfie!rl&m- zXW3WfUbg&bk(u(Rao=RQ2VbAC?R(Z!qhBNvzxmO`w5+;I|4!|EeXpzHPE!4?$}ju2 zKAN(in6Io==<1dRzqyk)n(pvmy=gLW@15&Owe3YVpMTxzyViGE`|$m!BZ@UMwNI&T zKJQ*+?8UUf-?wGWu^%6&&-pf+P5sHqeA}J;KliV%{cmoonfQ3gn}k2<&yP;nH07ikLfPUk4+QQg>T+&i4FGXU&gl5U3m49wsh~@fY8%Rt<;vj5viKEYMQq@ z_n{d#=4dvng)P5-c$LbUU%YSqkDPq=hsm@~@Hpr6jEK`uoo}13J<7Rz+q{Kai+0cb znwzlD^sW-8Y_s3G5TD-dL43czYH}v_o;Y9sRK?usbLrJ-UtPjH(wO$O{Z(*2Vr%oQ z_Jw0*uthcN*|0yY%DE25G732iHLM;QzpkF9*vvLJ@!YmN{pj@zN|v4OJ}+?W^I|8l z3lm(v$B5o}&Ean9VzOP3nd$2!?;l|+1YPZqZD?iQ(|N_ybCu-AfcKl{d~`^vYwEpq zT7I(q-jqX5kIN%CZ~1(^9IA6Oki}a=c`hr{&!6JvOfOV(IE}r7H+<6W2|e$%3b{*b*JfyC}XJ>|ICf}Q2-~Q^5!$M9gUpb$);@R5$S3_W% z=0Qow;pN+kO zrySZPdFtLWk7HtKre`{>S=n~(-NaicBX?%fr`7-%?X_?_`mN&o z*Pp5BS2X@L)pZ=m*s$I0yvvnk7ryZS*pyX&wLCfCX#9HD^ukkGW!cRZxslKLxD!{+ z*>d4lrTrX^*7XY>t#h6|qh0Khp>Ckse&tV%+VXSEX3gIIuv{l`j^^xr0bbmFGl1bAP$c zTfzGKrIb_CUfW_#aHzsPo|am-#F8)F~JK1cP|m(nm6TGP7!bR zB?a~Dofm{Tb9Q|Q@~&0jKbmZk@3N3tqc7&eCf%56_Y$YiJlP?AJ7ekEv=4hHIQ%v>9Y0;Lq3k@C4^T`PvD2V^O_UDB2H`WHF z2fun@?YNb5jo^WR2!V|a6C=2z4BHqlM1J4)?DOF*+D{jBPt_ITp13%att?V%;mV`A zCq0~IaSGJjx%uJMQrkT4@3ggPOQf8a+dQ7k!R_qEp?2wrN0s|lvxm`tqnGe4oZ!mxZdy+3p^0Z@EK9a@ zw7vP`(qosr+Q?XK$yxE*eVWQ^*E`)*<8GX|_40#!vw%vd z-$lvQrY~yFGi(0!mG~Uo@lo~>tIH0tMZDP=6ZbVWJ&#NJ*=eKfrW$l7Y2^}8FSqYM ztM2sjoOrZ}$LXi>qe#EZnLFoS>3qa`D8Y4Sbhon4lWk?UeD|Zktvu7hAJu&;Lii{G5F6@7(+L_TS*CY?oCsYX7deqf}{l zsi|0VF3X0u1&Ld?REgYJm}vYO~ z@$TxqUvz$6Dr_|kXy zcewk#{&hU|Q;tY`#GkC!iczpxxZCKM&>xpe5!0ALa~1Bc$(E4XUH2m^W$H(n=lot- zCC4J4r0$w<$;N+Dz%%Jnp6hZe4&GgJ+33V8s|iwh4Uz#C5xYt*9ZYdq{^Y^+4f7VK zu-|nuVqtiB;MMI1AJ%{S@1mvhP5Yjrs;S?V_JV~+=R`E@*1oc^u!5)Ra=`KU_t&ij zo4ECKcGR~_ePG<~e5Z@?l7*eF%A@w?_y#T~CXu5CM~XZ4IdZ!kd(Kt2czS8mmJ<-D5sbn-6|J4c}}!iy@|PgXk%v>sZtQ-7hs<@$e2O^pXneP}$erEP<_$)wb) zl1K8+G+n&2VK?)W_vQz-Gz8{+n|#w@p3}C8sb9X#*{OZRRqf$B^B z+%M@!V2e}B5uU>J%R5Uo^%hph9&6*gE+qHj%Jv7r|J#iNxX|#`9cwwwa zUF4#Bp6ZjBe`~)`xR8{Py||~eOKJ93rVa8T?s9Dbul7cGGFnYYdC;h$e0la1&BZ=^ zg|}XwIWBpLk!kUE`}g8IZ?0>-`rgZU=H1z{`|qB5_qDC&)0di}hlcW(wzEvA{q9mA z-|<|dMq{4)XW9K}S8^I(apqSY&i*yKtgE?HNBT#=^GXFdb<4b}>8!!axw7RD5#Fmq-3!*;7PAR$8eN+G5+q=wem9B}qk3FkP{Ivg@ zzVfBUy|?F2iRsq8+^O@M_w|}PSD)H7C478b7x~uZ-miac_g^mFUp_J0_@(F!u}7cp z}s3-j+H&t}DzdRZsuFslI#$m;QvR&%L5~+qmtXSNe3ERj+#c zaRc|#gMGOYQF9tU%;ItPTIGucA;)=_A76)uQ@om{N zhOGBhF86$2s(c<9Y=_`l&SGG4@GAdIv^Lg1^Zf)zh<@v3~e{S;)XTOgQ zlv`GnH}_n}Vx{Fgt0o!FX3uk(vo~7$aO{~tx8uttf6ZTDe|=}1?q^i0XG!vG=OyS`J2?FuAGsW0CF8a(_OT#Yx=kH+Sz({B~8~!ruD~yJU;%P@a=qHUBSz38Zp~) zZ@Zn^mV3MG)VAEEIm>gjQ*Up}zjt@{`JHp$mCvux9+zpjdK*v6M-`JvaRubHndwYfSad|m$1sh7*nUFyDl`BKu~-HdSVh z&Y>^M^3NY(W}C1m)cMS*MbXNazvo@_i@ueWx;kWQoXFxVtvfT_SpE4|gwMQS>bCWZ zWK@B=hSZ7p8Ooi}*RO@#e6gYB^1qkjH52TV=ET3QU2gOB?Jg1ZYey$dVzl>pb^nNb zXzRCYUdI;c%9S#0pU|f8%|D_qLwAvMg!--*8_Ei{XQfAOx^u5sS4wA}=EF%A+WW(c zcO3T?Z3uncS#de*$iDoK(LbXNr}GE>?ATGga_b^r?fst)H1hA>HO)Q3o&VVH8peOM zV!|Kmqn*`-*~NvUl_%Gq4-2Z439|hEkN3cRwJGoH{~n6(R7iJc=8hIl-g*Ciz_0iJ ze>~5dSpR}~@y#^NfLUwhKdm}=*7)k5O9B!nnsi!peu?y`SD%Z^E_oijd%DSH38D8% zlJ<2I=BOR24|;R+1`G2CyX(7V`lc4z<(lpIS-0=rqHh8V8*?5#h`Uf?9C{{q(rSa% zp5-_EQqAHY7KQxpTG@E&qOu%Q*%S^*j;RM-tkt6{jc@SVO}Ub(KIhDvQlG0GSN*mc z1UNYtPuIG?P~$~lgJ|pWmJ1&HH1CC$6hwSH_suy$;&(qA|8+e}y@aBuJQP>%9JLX|(&9OjU$))CpFV1W!sM&aWX^-E; zEnTATSK0oX(ZkKJs(XDbJIZY}%`(a_pzn{p33}_Ge=+rm>0mO+Vak ze}3zIO_R4XLJsL~+@dxAB4_7m(bOaB?`IWH47$9@CghYz`|%YE&M*6#`}&8-<_y`B zhw8Xe`I?W)MR2S*cS~!#{+apCB40jiE|`?OLf2R8q4B@vt#$$3N{4-(HFRxBX1#N1 z#j#Ysg|w=Daoc-eJ{jmXW^%9`%WImS%;#)0YF60pKF`K2EucK1 zPekDR)bhFu-&ejX&~-7LwD;=Nw~h;PSPG^a?mYLnV}9<{>-U?^7i5@M{&?6~eP{QK zApQMKWj%{FedT^-d3VvZxCfVQ+MOHcS!`Ug^y_06Cxf!29TV0Z%3E-0*{=4<^A7LX z_DFlJ{ohCX7n%HtKH(nnEaS>O`Kzb0YkVf1;aT)eBdbU67|-tiFIF8e>}SsXarSm` zL;cKSU+bT}ujgix7EWhQW=?0Gr{T7Pp-$xCdfmBmt)3UnIcPAD{3n(p_^rhrmAcMU?!-Bl`>!P-6$?~SoIp%&{Of-6}%Zuq>-mQA?nz!is!&pW2ERpzP9-@nf2 zSFJeZ-FN%q+}`f`aGT{7kH#ju!;>y$Pcr)=CK`#AUK z9A2BR{B?idw^ru(vHSqZfBp~t>F!{F%S0lJp9$mFnC~E32Q+&HOAo$$=dGn6VWH`e3BYN_uhtK;iIZ29KzJLE*yZK4k zyBz!ya`94}zc2hg@p`{iifqvpZK-`b;;ZIcq)s(ozIS5z-PRjDKdmye{l8~@Upyh) zDRFv+;=%3=3y++%!v{k$Lmkf=Emf&s6c(MAU8lCyZBZm&$D<`4_qnFux)vdK=k>i! zd)}VgcJJSd4ZAmMkytcEGU0phh6SWP7YezuoWTJJa4z zT>JOxdvR8_FZppIiSE|F>mRu!eY~IZCw*!4hDlRoHZh%AuA{Ky31ep5JWI9GWCP&< z##cORmM*Z)bd1{lc>B48|C2fSelQ$sNq_b=Y`U#u%85N6PV;~87noiX{k*32Wqj8s zh2nG5ZA`=O&$sHUtJ`yD(=Wy>;lk|KCC^GO&R%)LV@YAv3jKRl*Fv%yvNmd;-s+?A zz0c9E=&RzC;NmUMwg%tgnBg7z`lkGwKU;Ei1B&Nf_WFJ!>A{RE6T^RPXe+vu%D=6= z?9@w{_r(W%{&9Ta{KB}cLNI~X`9$U?G3U4xRln4|Bs7L@31)cFj}rCMeYvs z0;{T&YjVB^97L_xzBPSNq@zN z;MYsPmrRvTV0zl8rnC8kH2WO^BY7qrgSdBg{t`}a9%oCmeQT+E@-BLby;Js^HK)y6 zK778bsw`1ww)eKfM45L7n&!o2^VKzOWHI2piZ(I3-1R%Wu@ zJk)sg-hbzJ)z78NZW(TR#%cV|y&!$5zRK|zwin8FZ`9P=Aa?vq#AHXG7lx*vZVTM| zzV_VaEhj7QU)EdB`@?;P$S=#YWgpY82&hSZaXnUUz!fSgGV#=N`$cB^4;Yw;HZU@< z9AIGR`0pS7d_MQO{}-btoLXpjXVrRMme&H;Iurl*&EQCqW6M$2t21L$>Y1?NYi_WW zciP6oQ}{VLy)K5AEPTDrzr$+h)k#lEh2;ZmX1;Rt+gY41IxWRx$-OJjwYooNY(D(v z#md{)*@NVL_&1(@{D)+z1n$%LpFO=?SFMsUDfXy zX=(DNZqM#~N_OygxkdI!#iHYG-y{XCFYHK+;#R$4)0fizc2!b!=ediOJ;wbn5B~nS z{&T!=>@v zFV387oV;>&^3*Au^Tf6@X&jMRu~#TE#o*W}i@(nlB7zTfG$;L)IOHPeCUbTE%_Wh0 zl=;r^gzBkJd$g#qc1F`%>9VgK@9w`oDRk55cW_LMd$QVzwSS8Dde%uL%j`@RT_aJf z=(O~)=wq*4DxO*?yv>t#9XsBuvX^o4Vxy2Bp0z)!8!p9E+ot^9I==h*gtd1|6Ti-?=&$_t^6~EZTke;? z=-TY;^!d-8+_(<`|0>Fj&y-GlaYRJ(_agPPDY-FQ1L^wXBu$bJcZ=OgEP=O76L0XcY12*6q1=ZSKpTUAbs=eS4m{qR+)m z3NLcMZ|=WnJZo{V!XsmyD)HA7R@c6t>*D(CqRy+=m8<&OV1z+7>eEP6<&5c&awd&&6lkQ(MX`0p0!6JG5$}y3BpVA*qI`QkLPvI;R z)jv}mqub8HN?xEYlE$wstCkszw z_`|@^`1s8E=1)JGuFWjy+`F&BE-Sy`^U6K<>{A88FX%-?&s}4+W8TWw?>?N`|FEP* z@>EAm)Pc+vv-a{_-g9q658RwHSC{?fr}8IPT<>PD6x#XoEUSpyC5ys#Eg6wWt=pSR zy~Wi{%X;3O*f)7jJ>Lb1^t&k^Q%m0z`H7un7msu@^?Y$>(t|}))paeT){6g$N>Kk^ z*L}4+&F|Zj$q8Bh2LJXs)o9N&FP*b7pz{f1WQW}c9nH-@|FxUM-~3hgNxZCS|3>Bi z)^DcpuKD*tGxkxHY9nic(}b;NCY5*OJ1kB#=U%*iOfKH~LhOj{F4K)m zSLMAZiDPOyID6@1Uy~_IV%2URHeYedROLqA(dPR{O=85AGsGsBxVx>InPg#jMZx^d zVWAa!_CGx`VSD8xMuCGerH<)WTxPSJ<=?8a?b017-qTjTA?zu-K<^t!praC#2;5L{pQ-Xk&X4*fl94i zPi-ClX=g?JEepT7|DqK859^gb)wAk1z1yyS`FMlU7ghBc3pp1Da2Rtdl;)UOL3azg zmBWh@3-_j*PB|tLU=_dIdP>t1L(cCOD>pO<%sPMNkUV$AG>uR9%IoXh{0`JdZuz%< ze(2ddhkm`kyDekh{asRu6*JcB?PhKDagA8ClELe_NazK7N0kO%t)<(_rk9wsvZ^mQ zIM45zzMxsx({-m0uj`oL;b7sl?FZWj#SKBX{q9UijUK_n*wi z3)3%dFJZB}@Y=1t`-}Sd$H(?f)Xzy*NzN{Q;j8pbOZCnsV`Y!ib{~(lsaj=guiO#P z#jtE;yUUXqCtj@V>T%!wAnTIbB;&;ClV5Y{WQBa%{q)L#)Kr<`L_?us6j*M>IUH?+uQ~gzo+;1f>ooTi<_mXj7n$xOf-_yfB?VM-z{E>N7(f&}T zll4w-_NS@-f8EOEcVVMbm;=X6uQd~A8i!|X+R|wk*`uR$al=O8D_lWK*aTS|*%nSu z_BJ_}^P=EE^RMjd$II;l0^;rMPU_5jrghdz|5)GdbuUZQFRwiRd^)?HeN>)EdHnI) zP2yLzHPsJl{#$$VWX;{mnM-ASJvU6*9B-EQXKI}5qxH<~uh#4NU213kU{)19V-mZU zk-ucxZ=O?vJ^M`3H_lm-c5KceOZLE5HYu0gpH3}%bM{7*k-Sw#6HBz7(`DB*O_zVg z%o{w}CHBlMSlqMtO@X-Bb=4b7Bf1=#kI0#9SaS2DxqWS`?`MwAY*}4CHg2uzIM4g1 z`cn4FuwJ}c%6ZLi?%sQwm|OqI-rsj7EWrJoX;Q#W!K0z4UoMPJX4@GVa7(S|luzhK zoqz?J+f0*p<-YE5`0idU=a6&tl)lLd-Y=Tmf#YSL{z#;;b@JjQQtO$@KivwfYd zkThNV@sEcKwqHNwTK%KMIN;-imHTIU?p=Izd$o(m@wTTIZltZ*5u)x`r)>%Mp zy3||dN&-hs>n}{1!Fr8h>5WBS6ApY>oZD-{KS^f)%t;4Z+83K=XE882{F|pIasSrY z1y7gF`FQV~-nq45^*g=qKAX+&^z5hfWN*d%+x$0e) zJpX?~vAy!%yxJe(@AWMh7(UlGd0sj6Yy14H#O!a|>#{d(>J{3?b*emCrIbT^WyL{{ zE4DhCDjeN%R~H$~Kfp0T-YDpa{8{bSg-d42@>TihS;SOdKCT;V|E+EZkFRQDuj|#E zz3(q;`@QCPcJi{Hq`6G&6PZ-mrzSu4+0U8Gtg!uCJb&GujnhA!bKjyZBO-D#qBASu z{Na)nn=a=W+&&V%e!{6;ZCRPS3yXrbr*8^e`#20(a=SHIie?A)17{OyPaJl=TY^=;kZE3#_H~uwv#$j^j2kV*NV}=oI0!g*qt!`>*|e)d+smYZT7P>QF%fUn|k$6zwPJTF5A@KW?!>%>xNGzsZmF7 zukSl_<>3-`r5rtJuD$>IBBpIP#~yO_NS5c%I`bFl)7Z6C(=FZ=%Oq}&zP#hLn)OuS zsNTcpp0I7+-Ix8eOp*20!JgOK=P!F>f9{d>#hiuHv!>;=eearldvn6RtFf}iU!~VS zG|XRewQSXX&hV&W!?t;%=9j`wNw(g|D0scyakIR?t!1j6;?U--hR&Lucy zt(a7{Q+8@x(3IpA{AC=B&rd96l4KU#)xwfoZcxycrdGorp_zNOX;N9!|6eK3-XH1? z*WX>nB^-3@eLiQ^an{`r7v6T$*~z% zD&U(tkA=O=wuO$TC4NT8A5y3`$-7Z7eNF=J`DJfE3)XIltev!TE^GEieNAER^fEUE z@sc~o#ol$FHSD?*C|!Nn?#GFH`e~P$zP0mjHr1L}S>%vs_-v=?vy9vw|CBG4erm~k z!vE!VC_5{|f*=1=%>KCeshTIP$PYVU0QW10xlQ{}OfAg66Eb`Yoo~eCE;3Uz2Vft@&;yyP7@Wlto?c z>u*~=^~IVRdd~LWDwVM6mPo=bsodm;3fr|ZxA$mW@bbC5TKPcvwtWUS&s|t_cW*N1 z+N9fI6OLD=C-1u86nx=XP;Z{&N*!m{j^H%O5>7*(RhPwu3TAkKwy#Gua4C& z%Bn{b)?Lj}OT4t}w#$5%m9iP}!D{)M4H7M#Q(nq;^)5TMEB)cZDa*JwF*@gj$#myld_XoMEYB$5?d6Ga4bGAxKLW@{Im8eUD_-`FANgybFOO^^p+8GU={&Bx7=Nd!^ZBuleV+aATK=7S;CE@~4IhKWzfYDIhJRiA&ND;i zM{?4`e@B95T&dr?Fvm3`_3nXl?s|?LX4;P|uCA)+eR)J6B`$Yz{k$paEGI-3`@fRo z`5gMSV#_PjUH9ysubUS#Pi3-(zc!cRLHn=&j4#?32F(foxaR?P(cTwr+qG1A_O~d< zp5GqPXH$5(aaQmK`GOTsIwx+lG+W92uPKT#S!B*hg+$km{L387^A(lMWC~*!%$?$F zCU@mYS@*+d4*r*UD<}U5N&nkZ|8O?b=Z@?+&iuTSF{=Wmdz3jc|5!gKrt6e)#b2FN zgL{!ZOyxKJ*f-sN{4}+peE-YUpUSoV+|T@zzq0xN+C!!bCWy97o+239C;Il)f=PcI zawg5H`t^!4|Hh<_ zNO1XGG1nPa_vdB%9{ng{XAo)Mxx3aj@+033hcmb4_SZ=4xppV*>+T)%D#N$GeG)z= zTbZ{i<-_I~b9ZpxD*eXAa*FYG!=_Tv*5?y__@$VFwD|a6%~nb2m!9wBqeW5g7;R%U(ByH=bMiB=`*D zX0Em0d@SCl37k$#)mfX;^MB#y0=5J4%j&p0!VMT0rv2wwxV3Tf=FYeO*C?3%3lfOm z;qkSFIfv!Ps-wM=mw+a@=F#~n(Qf3r{~_tdvj^W;o$RWw`Uf` zUavf(R=G}9yfgTGQmT7Niw4t!AM3*By1x$&zxUd2`j36{*E`s1RCvVh+y2{HSaV9n1r-KPU-W^!K!e3S<@#878nVBLhMWQ%T zbfat6{(5_2me0W+yDBMmss9!)cO7M!>{VBOG5354X9TO`>7S`)E7F`+KWJr_WH!(_ zyukNosKl(kTVL%~8>F~L{WxQK^IprT9|E$~61z`0W#yH+>D<_5rD78%)FGX;dBHl% zZbQF=EJrlmb3$HRo^r=5kY`s;(wAp9Jl9%kL@)Uzs^0ro?_;cz>)gkUXA}yr=B%F? zvtQuAz7+M!;_oNe++H5N{)MOGYJxP&?U-j9e#)OMd8li?$zkR766@l-wK}&_437Dw ztyuF=rC9pihj3Bp8zJ0R?zJ|pH!3pODe}fWUd`i00aMn52;FB=cM3R_*<5c}DW72F zTo7sgk=J|HL92^wx2#h(dHz=Z7qVD7Udn@8id$8OTcGEw@62Oa-aM(xeUv2btm9Wc z<65O>leAS=OI(L zx%y10$$^Sn(LQz?bk|P)oBKtU>1A4^@jlI(>C7AXV*YLXwy z$oMgn^{0>V)=XQ@X{$4zSme#*T{}-$e@@l9R_l5HPQNmU|?=|FGGLS{K@wYuR^sz0y`MOifp9oF~GUeCyYGgL0n3#o02? zO)r>t_L^O|^vzbcZ+oo2i=)+P%lHWWC-w)rMRZ@rU335XV68%N{%ZHW2PFsJbHyL) z`xqxLdH3(9vuO%@-R}Kf@$1aJrxF<{hI5}wZg{UJrMORewdf3w}5 zOJ_l;O6Jx0tj<{(E@97O{$JwS^Ng{j<(Xq;D^S zYnEs_taPt`Ua;j|$<(7Y<=?(c;V!6{yv=z3=3+CBe5oDJR5NC4hHg6O6kGK0tC+E# z$(&V2dt2L>PtFN}w4 z;^MdzF^P$XHvEXZpf-Q)?LXGu{BBI&%BQ3rc4WWs@3+jKZ!?aml-GE0XH3?r{PoA; z;jWtnK`h2SXPG~g9yiP8t$NdEXYnL?^F$dtKs;b{N&sEf=6$%PyOqQ4Z8NKY5sEi_w7G~Iqn|d zJL=CWGu>n|r|PQ0Egp|~403kN(sw@pZTX6iZ=N>AnM$+G-siHVa$H*MkDXHEYl5E1gF%yaEcWA_bkTLPN7p?&UpDQtF++k$-jhA| zljF`-oY^$@Tj4WaqXV0=u5f*OJ|o3$MOLK5WxF{^{YJZO6sNpOKQjA(YRF@eH=kH` zHnSaBlXCfh<`T}OlIC6$I^!+3xX)f*V5Yv^AUC{zVcD6#T9p>b67D5z-Cv)~zcM%S zLZj9x-ep0op>ZxwD#Fo+WpfrhjG8UI;q^ZCgV(=b4u8Bq z=)tSU#xd$Erx-d_-ZL+I@MGTHPq{l}CF~?>%jX~S*uybhpltE{sQz$9L76-@Imz~{ z8n0Lz$2|pJYh7Xv)#UL>rXF9)_kHm$<=Ho%e{Hd@^IWjdb<2Gb7NdP9Z&aI1ZMe0x zI5a1_-o9u*r~71?30IB@OZ84z+w67ML#s^3b7juFApPt*sadjFSBz!mMas6xU%8&c zy&;kB;D1lE>?oD5Gv)mci7oe2igI`pqFCj;JfdmtTicB0uOE(2`5;}zw|nb-t;P@U z5Ah_aZTo+LrCwWT)s*d1rW^^dlRx>U^+;smXN6T}?HU3{SU>*|sJpS^%M9leTsPLV zZQCCCoi)8|UP)5-G_9F?XIV}^P=5DJYh5tY`jomEzW+le%;QT`d?dm1H1_=q3# zMXw*d{IK^|mE-rtG3FI@J8!Nw{H?e4)-BIn?_ZusTR5#lXJgpGzR6y;b7tJT=VV^Q zxwh=A{BseGzL%<7)~H@+a8C-`$Y-r!GyV6Yv}+}o?s@FqGxwaYbj-<>92-T?N9A*$ zbzcyppB{E=!4aET-b?t6R|geuO0#&)pp{~^F2wiElmB!4BVD97%oDg?Zc?^feaYUd+!Y@tt(qpX$;m^4%SP*g{t2t{X^}DuZyc9e^~yjmi|sjAL{XvSvPB$4 zrUz&D?v{8Suci2LbKV3A*%wY0;r^8ugSYX8wmeMxA0`uI{~Q%iii2YW!TRG~nCCYf^5v4VHal z3HHc2KQ|j;jly01S_3#y4wcx5L-1@9iFYfOS-X}ES_;I1uX{usR&Fh!G zy|eCQe%SeGWp>R^jM#RX@EC?9O?NOq(BZ*yF~w_cK$yVH#ep7`OGHX@ET?rIlnTjw zp;vR+f7b$!$C?+}cdkx)EPA)oIM6b9OVH<_z-ngRnhIV2pF0CCMQ)e9D3`u-vVZs0 zb^UA9A2DRNX}*2QzJ1oipG!-*)_-4p`I(7XUFYW_o&2MB_Hw`MkqT3jWAtm77I^Ee z4Qu4yzky~RPY+hh+?}27|48%Rk=3)JHaqytJABdbN>I{m(bm{Tl|5;38AtZT{_)!G zvzYCWd6e(%`O=rR^~>KA-l!m_t#jPL!@rp!U(+->@cFzFHXD}ANjwW#%Hz#SYw~9; zG~4w3=VZyYc9GrkuND`~w~f-~307Hj;iOy7^*;;;w!K*Ge(yK;r>k>Tntj=xEU)sK zS&pObS;Nti1IlO3WuESTJr_~;;PCk=# zbH@7gfJet7qHfK-E<5M<$?DHd>P|%fbOf+03b;S7cs6gv=lq=ts(-HwJ^L>jej}i#d&T3rvOTlB%6FZ5 zW@0ThZ{1C%B`4K)-rKo9UgGhp1*g>JF~{rJ{|KE~@W3v!#NgQbi~H*M#h*=BJy+n- zJqL}=NrKN)?t}*|&oVu}D(3$@om8*aYl0`qIXTzQey}FlaY^~7wG(ROe;2*^`R(tw zTD?b&;!_OrK06j@%YRcics^BrOVv8d`ExHQnXC#{IxKzp?`5&*O%6W)qwL&kba&qU z<|SDtV&o{Jl=b=eaz7!VWBf~RB~9J4i0@PHjzr1XVp$eDdBShSZ#rk@R@Qqrqg%n} z)~TPmd&NUCa$U?XnHRb{r0Z`JmtAw^`O(6ROncX<`vhNj>gJwfbc$A$RNXSk_|Gog zd#tXtcl7p|d-^O+IC1A!$f}G@QXBtqrz}^!E!$pg)DyibXSYMl zeCPG0Z8B_2lWH|$Urw5SDz|lwYHotv)19rs{;yJ6kDBoPjd;8wwc&kFuYPpVPNRq3 z!J*6fHH_3dp2+J zET6A$yw9NYC)RRd%i4{dzyGT&OWCpD*AKx>_C0rJm?oZL>Y98tS0^VRGqmNr=Zgsm z8zKd?E1S;bZ7HsbI-L5x;{Bb6j1CMEeW~9K#Bb>w|JAd_`j~qBHSr@0Yv<1YRU~fR zyq1~&<1wSwcPm(@MCjR`J-yP{W!Xff%?w?Py!8hJo^yO! zzWdg{MUxg}`QC69yz82~IdR{S-E(8UPCqv} z#`FlAX_)E>(Hrl&54^r$9QPx6JIfcPPv2hWYy6YqIr(9}!bHPDli%_Jf}Im5$~%jb(n|8P*lvbw?+J$G-N?-UcRvWCwfw_@#C!S>kbhx888i>pCT7 z`_28@QrDfjIh*+lj!$&s^*JmlT734W4~MF2(@l}q!!{-BC89H39#YBp>+~|zKkoQ1yFWvD=YwAo0xfr^#aS$oQt|C#ovLUwNk>N@?U%#T-tI$g7Y=Dg z3!d4wbu$B3ukj^YBL+qXMg<{R^SLqeKdmpgz+Jmz^%_05xSdDa7HDtU`$~_wV0HDw z`dPno)^4=S=X+DW&NTw7xfwc`da?6x1YbDyLIcv&d2vfn?E1% zwK`|KfMxcYB{C_W6rb(v@fQy{5O6s7vhcbsSr*6DRVVPB^(uA_&^I<+=lfOQefAFK z{I*42q0y6{U-8}TTe@wvBxjqaqeX{(V@x~KUQw4|Pp62zAxHnSO>=(Vd6;jNX5~W7 zxT9AjOS;UomYrPsi<5JWZ|J8DDaTm8{S|kK-nu!EB}h}JYWD`!%Tg!OGHjU-)!kYl zzF}eW)^C3^-X56B>eRjVtlhi?Q=)gNo-DqcA#x(v`gB>Z*e%`sRpIOlC-Gf+rh1kA zW3(!#hkI&xtaHNcMN3vzKgoT(G9&Gii?NMEQEJ-RwG$h&`FTw@e091xeNTn(i|OI+ zd8bpCC;2}~KWKA_zbThpN#<{f4jw_Ak;fXRwy5EsV zUCXzf3qPEh!@pecs6k23{Ky`Ig7CM$SEQJxb-H~GSfG-ZdUwt{(LV;Cf0fHDk~n&= z{Bf+k<5?=!LJ-(+R8!pnxA zc{rTS4hyAp_OAKYboO=ssZx)C$7-hUqkNmbRVwXHXj#+M`*E&ou;4C#sdtPvEh@VN zPb5V;AGFBfv`wo5+nLaBc zrAzz*k4={U2D@dmU%ZgqcT=}!--3?7&H7XSd%3RqEt;zxTrdfPheVc;0 z<*)D;HJws9z~Qh&PipyBhr>6zt!G@)@_RhVZq@9*f}aA;T>;OoR+h~-jyL23uGmw}oStR6 zIv|bpTKtWQohkmxGE6@N@_rmhmYNjlF6K3bgpvD)%M>fVn&Yg=DdF5f4w{zFh(rs$qso0W0>(^-Pf z`p<4u{))`sK36b#d#{t%+9zkD^@9JV1aY4flVorRceu}b@^md*MCG5you?+>xxbK! zjiKWIU)78MOBDQq{>S*u{uBT6$%M5P$3Jm}3WPMOTv>MCE`Ghh3tkV$4GX%y)bgC2 z@6#JSx0%^1^j58TI&IUM$VH!f&qbeme(!JUx7B&M&3YS8OikZ4+kQ^ZwFMiC z_GRi`I3}mLUEst@rhajWm#=(IpH*A4@tpj+&2b5_F}L&uSFd@tZ28jV7ylmk{_3EI z#pJukKFQ@id9gq5-es+opDM1u+{pPQDz`rWUa9iC-tK3sRX$>MdeacSuoG>FwXg#*e16zhH0sp(h|ad2^SKO2B#3 z+fUUdon`f2ywt9&(Qv!(&Guf^yJ=HJ*e2=fe6IB<|NPK+O2&P*um65NQx(%%C7`&z zn^|6air0*Fg6(Xp&zaP^*G+uAOSN_GT4(#pkCEDmlXNF|9f_?xd9K{9T$0DCtJr_4BLl?B8}+BH*E`{PN9B%O4rdjP}f*Yh;}EyyDbrE1n4p5(^R^SBFXb zsWdCTum%pem4ElEWoR4C+=bp46ULn5gbIOBRuVpXo;LhmsUKG-@ z?|JuO0mbFAYaRqU?sRTjxV^yhWap`qagLM!_RTnIV9EBd_C-tVue*Fzwjw{}*6fYz zFw_1xVQJyi>PFvn6C0a^%w#JH`@^h{&Q@{Ox9s-Gd63Yt0EYGd@+WBw!#rt44k>&ov{e{!!d*@f%DhuIa}(|D?* zChp*W5N7|QRKE1xiTCwumz})Ek+dni;@+n9JGNO^>rHtc+43xsYtqM!`;$MPw&gco zH2qP?A@2vBjB}UuOMZUMr9y?HZqABySuFv^nduWPeH@N6#+_KONnz(=i34X8 zX7le8eELECnBQG5ohcjKzV7edp|8YT|DN@E|HtQSi>FB~T2ud^O*C=xyxFENpCx`! zc_sJa#my3xFS}%;A2>K{V}B{9xpY(dEGG99fvMb$PHS?@!7nA7>$HcFheAc?MlKX>!n+1D#OX@@a!$#>WTl?RJ zGlcF*{K>mjp5e)L2C0-uQcS6zR}}PUrnY83l{$9J=+#}VLsB{yMO^Q#oV@38IVMfS6Pcf3^CG>bzW1M^+|9}PY0v8K&(LqEznS_?KEH3?z5UuJ|9`WU zOl_1DbZPT^bV#X#b6VIHPqmdEj;RYgWd5Eh-)tTeBc6Ibc0-HjD%UDT%K#ovsojQl z`}of9ySM*0!*>T+r;pckw%&R5;QWqv!R6=7^qp>V{Iqgobt;$T?))NXEG1BBvfOd4 zYK%slTHZe?PWRu_lCBt-F4S=CR%_0q>J9Me zvU5B1f64lEt>7OXRlyTiCSOzg^4R*!m#*dx=IbqWKfn1&Sb2wtC;Mt_blZ1(PeiuC zv)v)Bka zY)Uzw$N6PaZuyE^k8TBDsxPfHTy4iw`e%=`Yt#Cv{kyiiS!R9T{YwjKiO1`0T zj>-AFO}15Trion3jiTh2HO6S9Cly+iJ~nfi=qJ`Q?H$mhKB&y=vv> z50=%xMf`5PxH#wKK9)5HZl=tt_g}kmPUsK8#X2w6yal{`5T+Br>b;v zDL&s2_A+4CrtYZ>hu3_oQ(V9B!R4#RV!Rc_99IM#{dc2ims|hL&0jQCkYGbLo64a z%=mml#JOf|(8iwI^On!;))9Cb)co$ zr8Fek%Q!y0f05kg;l-7oVefW5VoxGhr1319{>Y~2WyZ6sXUMMoV(2v~*?0+a@n@Gs zC%cb?K9qR<_Zx3{U{8@?jmF|Haoz{*)E^`k6qo6rU9wrIo$LI8ZVUE92Nz`&@aKQc zo41kQuwr6WmLZ>4$uINi7n{@{u=;9pE-)zF8s8lLLUPsf-f7&mn^Pp&|Gilkp&vWR z>vwJB)rNodsVblAje{KBxqh1~3$w3TeCo@p9KDtg7c~xVjM~ujNks4zN5Vy;j(7Fe zXJr?w@ba!pd-LTeW4vn^psaiY)8Y?7B*oI#N&kHrevq-@vl)af;*jRL1`^JR<3tWH**dHBs= zqvOvi&US_0Rr^4|fPfVwkti5$oeTUhVCkF&R<}XtTJ$ph~cS`8zB@Mq` z&J~}vZqxT`+uq7uJTsX^$uq7>P&!I0js4ZCuTKS@Ki>cP{-3k$7VFXqxmdCk3qzSj zN|j2FABg8^Z@Q_N6>=uUX}@m6%L^it(~nA^h^%Lcs~=d=;dX|7dJSG`@x{mZUDC-J zZ+5ct8uuSN#rV|o>zsmrbNo65L~__KU%Phdn%B`&qQ*=Yx-^|MWc5mQJa}dtuzSkd zre3t@wZ`!!M{Q4<&wKM_$v34_DlU?|-KvhBwbSoP{<%KG@<@WOf8^ZjtDYURF!}1! zySgznCg}7U+fGIspa0WaCQZAka^lp|_2x_2E1BjmI>uphqO{6(lkfKu!!2fhZ{tMk zpNc0>h~^4rX8!+1#m3;ltAh^5{eE58IeXFR{GuqkzSh4N_kH}+q%^}M{^shP`=88V zm%DL1;$nznP@Dc52N9;Na!Z__ow&GQNBt}FgmVvdku?yRZ1 zx4GMF`E6bxmc2ag2cLGw)A~CnBY0~1-#D+gchI?hteLIIN#f4mg|Bm)|J0qZ`1|^T zOv#kOE6cLKntFW@k?KAFVcxQD$$k-*>N-ln+C?j?zfY7|nytQ^{Z7eTw)}s4IbU|n z&WY$g^1c7W>iK7`d;Q5bn#lO~zpvV||M&c5_J6(Ip}GcDT zMTHIzn(?Elk-2C` z#yQ>>4L6QG4GrJ_;pn-~zTBcy+wAN)WHUY#NVrEXT(*3ER`x+r?{%fW9)9?^+ED1e zE!zrC{cndjbuCU>Th9NmN0I%`e3LVik6(X(`rdussZq0PD}5`}=PXM-^|g9oR`!3b zH@U$stE%)?`O2=^8Z!0T`uC+rt_xo7GkkGB-}KJ&jQfuNzaBWL5V%mjKALaI{rijl z@3;I=&o}>i;2|UDpX;Jsl4Z}`$T8H9a-Fr2*QKQ;#%{}u32m(_B90$RDh|58wKgjL zilC)_>@2%i)o*OR@MRodb6RPx-Kj;>YK5w+;=S2Dq#EvQ+k5cyw9+HBDPOmI{rZw~ zW&cybAg$@ap1)+pj^0rDqI0?asK1~ZN5rNdu{8%HR=u*gcTvT#Fj-nV)J<&P(HT1r z+&Y-D!zgvr@u_oVRHZ9@aDlBqyDG4d9B-`w4bR&_hv0EzuvkcUTxv_C&lSsoIElz z7_;lF0{4H~+PL&uT2Z1~YL;V_{OqXI=pXApD5*=_Et>dc^OVUC1lwZ&iES@rojUE> zpF-dCUNJ6ZRng1??-eJm+grTiicxd!mm7UAPZV0u+InW)%q7_@Qzjc-JHL5jxl1rx z9h?1@T@42emgnVlo|k!cT%zDyaMH*1-?$FVTgUj@_kj15$VJjmz191;dEAn6{gzJI zzc!-2dT-(vwMTEQ16r@{DUVidJ)ohvTsPOE+vetR-kDRMitN_2a_p;0<(P1oM`@C# zLKoV=WYFF7I)kgzDMOwu5;rM;!B^eQlI$5 z&d*S9dt^_*O^cbH1x~h?SsuRT<}POUZ@GDRZK+_?921!(Gu~%Lr3!1tcz?3U>?zQ=Sy6YoYUiF)9 zo-n&_hVG45+#IKC&P9cs*Y{Oi^Fij)-OJ*)&D`E49`6fY`&!G(E`NF9*=S|26U7G? z7MwV?uKvV{;$rQuHs`NczY3ea(pA3wV|(?z7ylchBHoDRe5j27+PiM?x+P7n>o#Y; zJ>s+DgyQr9)|=b+uGWf~^C4$O2FK}Ff?+QLmObmdSyi-j&df6D50Cg}vwr{L9VWpi zR~-Auw9nEzFKqXYM+_ac9~BZZ78_`u%=cKw{{H#a|9lnI?e_Vv4gK~cKe)Q+?>R=} zBTM~X-+o+n)Nen3i_)44CQA;?ydZwh{K5(sJNfcC5{L3<+?;+u!O*4QVQfzpPdkfg zSFfV)PFAa<&mIVHbJzsOF8c9gp7fkO7hK9kZNLX&ejiecOwm!{qdQ;$h&Er?fnI{Xw0`~pr{Bn92^93njb0Go5?z`u$_}=H2`LeQ4OQS~{q`ZZ_YR{o1Sl zhzo!E|4AS=_g|)4&7!J@RX+ut&IANL<=88vDH7D)VEN`dgYm3Q{@&M0VoWb`=9@hH zP}OoMwaMbr@7~>S>@K&zk2(0)z$S53@bUeH_dL6X&I;sn8u=NhLyys@-eai{RsL;4~jVO^%>vdTZw9_{Khm;PV+EAecv zEzimCPmWjQr0;ciny$jNEFm$}RItQ$vbg>{i_B#^6DEGVduVacRn|jnYyNl7;dk87 zdYoVH#Vo!v|GUJTzQ-pP{`xn0(Q9)R)BW>8x8M49>)hwXDY~kKCm2p=1YT%5wDOSSCX=%-#aOlo{g^&oK!b%hU|rFL z{z-Fp&M~v()OdgF6SH7Z40F}uHd~@ zR-9Wc@7m8-jo*Lu9F(6Gdfd-0Hclr;_Pz4XqtNRLb?y1OS zt?zMHT$cR*gNRbZ>#TVk`QHo`&OfqPSoMF;pFLORe!t4>(4$c9!C5u^nA+jan}5CM ze)iLApTn-QPe*gjt!)>cyIZscO`0yfRqNcUQ&w9nzHKVFtkBE3QR|1c$>aYv?GL9s zyV<_wQ*7pKkx$c~Cmo-z``~)iN@?cK=_0O=p8Z(1>-Y%-4Iac*1k{Ay5g^``e6m!iVtm9pD9rdU@vgvs4@WX?XZ0&n1*L+o8$|+;L z;Xvl&HnoN|>O~j3y3Zy(*#9z?`|9di*VO0DDpCIDJW_kthVRRq@A)L`m%-{k_xf*} zzp0ilDXGplb^F`#I_>VThOh_wjb`kZPx|-Ydew}7;o+0l%-y`Ed+XQ#+EYG+ueag< z-SyJOd-9n>i?T{~uj=_)bGda&#e$lY4>2(esw?N|Q3PvvG$So$z=XVI^W9n%CHr@!E7p1QDz zx!+rTXE;nEGA}u{JOj6 zfZv-^dzWAi>uGBWb8p`LFrz-PKG%0K=hT>>3Dx~aE~*|+GCB8hU%-)~%Wt1cwyMls zRv^urV|`e0d9QH$G|wxSHMfX&SE!C3x+ObwW)82>0@8jzCE2<7uysI`5>T+TE z{PFRs#5>B%jul@?lJoMdU$%r_IaK~yTjaqVwNICSsP>T%jN8|6(u8~O%%zcMwxl0h zuUID(*ZI47vCcOmj~Rx~TxvhL96ssMd*Pb=F+s=vHToxw_8h#c()DIVrEuHnpFF&0 zl(Vak_kH$cS^Zfk?@4i|&E5W$vg?y(&p)!QZW%*^VEE%*Ur)^18X&e@bYXzdt|=vV zm^S^Eo2nCBcJ96S@!Efhix?;6UE{46?vZ&Cf9$~jdZig#8#nhf{4TvRtu_`f)wmUGS2T5SMyKSewd(!sGJ|SjEdtcFb72P`JImQ(Ew)(p%FH zy*n2>244G{BRh3omE{wo*F{z~`ybu@#2O^;@```%{QDIJ#%JRuE4Iwn*^n?_U}pUr zpPRqW>P)_8U2#FSzB*tl!;TwftDZizyZ!0eCC#ZYAPhUK{tQ&d-}QYfj@g^OSnURZ>Z7Zi_2^o^{q@UjnBs-^QBFb9>vGZB89O zF5oXSX_5ckM|Tcx%@vZ$le)apRPDv|`5w#WUs~3^c8TxOFiTb)^B-T&X`frE?kaMQ zwX!Er;$+_6CAoY;&W9dcS9CmdKzGlH;Ctfzw{;7zPPlNfE#i)AYi2|$)0`bkzW#N* z!1CEeaoMSvw?&$@w_7pAU$sg6eCxcn0?)CPy6m3io_ZYLCr(;bQ=%Zaq$P1u;^y0K zi#jH1b3GL}{AF#%C+=Ba*ckS0NNK8EaP*J(G9~fTUPYUws`TT0*#nn<`C#57P(1n2 z(ManpK@+)!9{=!?+7PI4@$lY~)L=1n-F5%ciyp@OFL)IyaCq@C*_xhIyM^x0y!ToJ zCWXwkl$gfU`szV{=b>3!rVGreGgRPN;b!-xYq(oN{Gg%l%M~r+jOsrVr|k`n%YO1y@pfS6w_QD&zZGW&`g9r} znbLPS`1b8KpVOT0KmS~P^2;Z2{^c%g-DiHpWr*&3^DOrI)$76A=jr@?e(|SG!!y$= zk9v(cy{_p;%M&}ew=h@B>&kN-UCmW-YFC&@h*;+jez%}mJKr}23NnTiTW40TcXDfc zrYjkk%5T=u@>DQ({h_e-Whyf+7O&B}bp6d|QIU<4zKW!%$a${wPn>Y_lh{6^Uq+Qj zedkxM2;7@v?=gW>RwyvQaHn-Z=1RBJQ+LmbOm5){i@anacjou+-_Ol6C1%X;-&6Cx z$l%23FWE=CnocEp#;Jxl*G2#HYUzG)u1`VEQT3_CMjwN~>jj5az4^nW_~uBw-m23Q zSACx4i9cK;^fe{rSj+1D8Ed;k0aO0-EE;~c6BwS`!DE-=(-L_~6G8e1#OiAMmg|3fIE={63EJca-eX~CY zx2w9eDEr-xvYK4B$ICO;L&Mp!Zk<`*s?FP$91`u_$$iK}kV_#val)BdYx6~VKL^Wl zy*qJWj;E)I)X8Jk@i$E+0?gH&A~sBWYpgL_XKsaF=C*vb^P#tD%(e<1i{dnGxHa+U zF582LciQYadcSbytc?>Eck&qSSoQ9Z8IQ=(S!qqH-kr)SS=Ig~TunDxpJ9cS}b zRj04JwPfzGiE|j)7ytX>^wQw{QEhXPCl{ve@3DImJ^P_;zTu+w$;UTMS|fR&@6*xQ zSB#`rcrFP%Im7#}sL2217TI=XjR~{gZgRPrV!c9cWzN2gdoNlP_eAZ}ieaj0*v7!9 zzwSfsy$|8+TaG>X=GuRaSNhx22T_tIA6_v}@nHP0D>v?q_eP(D6Y@Ep)m8=xlS#`0$IpFN?5?SA z;G8;rUTe@@g%5r=_@f=y?P0kuyt%MlaIuH+EwSjCa$0J(Ew_k^d{=Ke_+&+%KwWKD}MUdzp~Y%aSF_ zs^@zd%f;TAxq$7wdUI+Or*==^+bvID7507RnH;>^`B1j0gUTc}o#z@;Y#k&wy-bW` znm<+KRY}gNsHS}aj`HO)6Aoskyj$fyopp_QL!~5}r|XSIrN-qQj^<0Z=)O+2d9Jv( ztg*GnB*QxQ>f5DK2RP-zA4shCveDAhS$j_7lS0ET@dLlTPb;b&o1+%)>Qo3kKF7Jh zy{2Wcx>&ZjPTTWc!EEPag}rkQn6CXEb>gDwyOqtZt0GTKxit6l@9WPVbnUmEG_(Dx zvBE1~<-1SMZ`<0Nyxi~iOWVUw7jHa1L9y;KXL#9J>AZ!#)gF&+?{Tb1xvyeL z{!h?{mOI&fCYM)Dh~hcI!g_pV+j`Zj##UE3gL_*3a2nPe%&WD(@{TFer9<*lp!J;e zJ?ma}o3A@(nS7EXw)?R9FNW+ZOeccXd?!noE_4ujlEQO);^~=>zsKgvZ`9Vme@yn$ z_X6LSAu5|{zPPJI#;chrZ4&6)Av%$#ci#FbdswDOP5AfmcbbinuS1qxW6->WtWCQ# z4y8UT$T~BlY0aDHm$BZSU%u_j){rY~}A*n6Xnn{0rflkw&!rcn1 z=g+;XP@|jIye4h)bB-Cg2~oFii}55y#V_N&b=IPhQF*&v#dC$IbzhvXbjiB!6H=0O z)t7EN%e`EtYnA*dmv;|Ecov&9f1DB5$Wq|7^4t}cPaZr4vRo0to%@0n&n=f!+H>&5 zMMJ+INrJ&#>^@f)?vT^W)GKc{PMwkPJ99?qh9_YU?k9=%y2bx-42HcIV$+V`V&p8Z#^TFE;b zAI!I@D|38w;Tl_10P~}iyq1U`ojVii^*=@bkxV!@Juv5RTArw3cu}o##cr{GeQ)d> zFW6dKa#TxMd?oSs%IM?|l?!%%+?8f|QnbR*=l;wK+qX|&75&ng<-W!Db8qDrFNxGT zkUCH5M3{=xQE{sqv&~QCoRj`F)BM!bYvm>v|IfQu&Z3)pG}L#Fuewdzza>3pXH{k0 zB2%;i;?64vsY}_O{qMWV^yj~``4Qfp2VZ>b)%3|X-}WVy|HO6cx$C_J{&g?$X1d6; zIO8enn~hPnHcvL7use64kT&DYTQdHe<^r6v6q-m&qzk1f>b6Q{Kg>1?23)uYfRlaYS$;`})>CemV=WelBU9!h`cE}y?yqeF|)8zEo zzRjD*Ts?QzqrVF)T^e@*r&&C{n0O>8U-9ZY|A|56t} zy#M|7AMOvIm-v{uYXxZXv@R@UX}XXQG<)HX?P)Qk3uB#5*Zzw=$(bjRk=OCkG3D>= zOQpZpF7MYYs$nQ^ko#N2V0Y&F!a;RWm)cnZXA3N)8Lp z+Z~?q-BBap(T*t+<%)|}_)O+*Jk?_x>nHT&io*4~+c~W5coy<3zw>*YowwP^B!~D@ zZz_*;pXXT-wLhws~NOn2ey|8Si*uHE{P#I$1}6)=zjgr zch+%#+_@`s@!~#%o0u_~!PlefPsN zGdealEpn3xY)m$B4GW54n4Mg_cA@+GWoC>kZkYLosTAq5OE0=~ zZBASYJutQPQ1s^R?w#hurcUbF|?hs?_{x>h8!_BW=!rhK9>FJ9SN$#nhy~)~( zrY@6KGXHc72KZev21mF{n?xl6jvuiZKC-p-l5+$-nF zxK&s>H_csr$A8J9U(Y?g1BLGH6P)-v-81s7eYKqFs)=l74U7!i4*pY<`6XWR--z#1 ze*21)$ybz2)FquRu5ydKI6=Wg`9q+{Z1+>gnN6ndJhRnDuI<8_IsCaNrW}!&xz~92 zecwfo=R0e-JvmfA-E6n`&w|4<+f?TSZaFDud*DxS@LpxRSp{E**~{stO$-BSzsE!v zP376yQ8MGqlfBC#H=MjvvA+NO&Gnn&mxwmcD2urg;e29d*o70m@)M^`+jy$Ys z(rQrp&!fPVD8qkGx#pQtk9R{KV}_RcQ_GCK3yXU$OT_E_YS!NHuVD@!W9HJ5&R2(f z$|PP1H0>z3HSvJ6SBw609}yXzB=?27W$sd}SzIeOhWPxORejRv>@T^WJtu17rbpaf zEUDVI`ed8e_TzF-U(CvQzGwH`OSW?w6%R{i_Iv$&Ze^gOl3Es1(03~*Ws%aflgoYV zXGcj}czoEzZntnFV1d&BGbm-2}DL-|l$d>G*l!om>8gHv8mG=1gq< zZ`$Kq*!*$9k8gSy%_3)zxPW)?Jf#PvO|NrX|C7=Z_a>J%p?XACEXJMb#$TGQ`Dy?=G)BP%F9l zKv_kQPrCcZs#{a`yZ>C5xaRx0A3QtmI!Go6KfgU8=4$F~_PR>Nu1&ui)XZ37bZHUEbEj{NeklI<-~4xcaPrXnOwHaRxjW7POQ}0>%d?V6p3oRR+d!98X26koQ8z%Q2!<4)aWHx1Xm8*5Yfe@W(t`6nkc zo%i$=RbXg%vH$gif9BaA@2e?&T%Tpw^WbHnp{{p;l}-0T zv7xRvk~QO2_Al2kbzJ&pqn&CXv+Nv+bL)?W?>npdz4Lj9leXpjbCFA~Muo^tx$S;= zMZH#9SX)T{@~N&;ZLdYcgD;6)w{X}0F(+a7tREINT^ z|7){*>eRPk?Tb1sc1;#}eNAoloLFx`cl8&+%lqy{y|s9}c+Whm*$QljAJo13;>QxS zVF6cV#>S`=8;y4N_miA>T%xvRmONhU!oH1j=9L#UiGiAb(q`_ASQ-{kTM~Rx= z?AA5qGcO*j+QM41ZCdQ&;5YtTS3Aqg$1mxqborm?5n;SMFTvx%!Ch(TmpjCEr*xYp zd$Q-rtu(*CPJ7l>QK8EgLC?><^*ETk)^@#>joGW6x+)=Cn;1_$jEmoszjn)OhFDj1 zk^3L5uB>Pl}gSi z`subNzfeY5Uv_`t**$+Q-uLEhzP$gh{aMq08*B`fjlmulut%{$Pdn@#v!1GWo>E zc7ER%dK>F6hIUx_-ezgtD2;yAy=TwuU)i4+WbdEWn%{9D zb-mjLn-!lDmaN)R|Lz#y+>B2@`WmM!cB~6;ztU>=?B4>mQt`%p-qV@pp19;wSTo~~ za)@Q?vi#rIS*(`cuPFTQzDI^PXRgm%nOvQmv;S6`-#YRmf8yk)6MyUaSW6dNzct1E zSU}q1(>%(TX3Y59^h&SFq}y9bA?e80YIU|3+oRW6&vUf=z~5yx&&+zK83W@1#wLrv z8V>j1wS~Yw&ByoV%O=N%KNlEdtDUApYZCR)faPgc_Kw5Jrt`#n%PB{ zq_lC}xMck^V41Ye(uWh)M&x9)yr}A3bg<4N!}9i8Cbg-bPN#gn;lVWDpJl(1>W9+{ zYSp<;?y-G+ks(BieH*)6#uno&ueh2?%*9v_yUd*w*@PVd|M-!3wJv0vx!zw-(I z_?^5S@Bg;pf}qCQAXV{pNBw7?gUz_6dNyV$tFrg1IHcsPpIPD6dMeJCZozWzxdfvb3NavZ0EOiInueq zL(gOGwrSZb*BEY@xzbqE)RpDUaf60kjX{0u{pDsqS)Exvf138hTic|wb~`lotK3L! zu;?vT7ZW=+w{^i6!*}(QH@qt5@V{5T@!8W$6RvZ=J@`V}f2WmMObWwWak)KH#Wt-e zyWgnS9Co=VqjZ{AppvfzN8-kU_qR`4Dik(F9W^-e&+^DDi+4%MiOMB&gda!+-Tn8P z(@pbomb58{v&ikUzrrio7P1sZ&-9ut^f3If!I!Gd9nSyCQ(1yJV%{#4OuMghyyp*Z zR!;PB2Ij~9PrVC_o(W8wFKeK_UnAG0*j47irb0`mmri0+-zI-Lndo4h*y7bGl6HjU z&F1&HvZZ&__l74vc&g_nvt{Z9*B>vOWEg@C-uz)m8P~&eM{b)I8BKV*WN3hg6Zg?vL+wYpdOivCLm<(81bsT0_V{ z=~IKQ)1TU{8irn?8(;f|)@^Cg;!Xc7_$=Vcd4b*^iJs4zx34&y?p#~s9k=n}`s(!6 zkF`u9`D%(q_J`%Y-*mA{v428Q@8sQgXX-ArzOH}AP59NKDTgz2g!mKhfX0~kV<+ZosO-!PHhcDT3D(p`Of&$6Fp=_Q*2(jV8jUJ$i>chxFH z`tI+Llp9*lrY!S+;cHXoI_dpMra=FsYZfN`_Ln7BF5vuj#2`d^74P1YRU6Y1Kj{dZ z*b=q6=-8IsC-2>>{>$-Sul=Z<^?hTT+j74}ucYt%!u{@&^aqi(T}xHpH~#I<)b5_S zxjt07=l?$AEC1u)pQ*oIsQEv6Mt1#1zf%z#lWSacPi^dHP2O`qmr+qssC&T|?Le!$ zHMP0l63le>YFrApkqi}Qr0mtP?2{)kTfgw@v+amti1dCvV^`SyRfn8d zE-$>Yi)mu-Zs9eVH#OTgOuF`d_9AzSdp(z~Crq+CyxDoB$E&l)rdnF|RvtaX@XR>! z>C8oO{kKnF*!Eq@S=)KnN|`$nN46YsUT*Zu!8K^T*0ub+f<09)w!XXLHQ7>j=e6?N z{0BJ}_a0and?bT!c4|VMLM4~Vm5riqXJv!fpFImro)KinUb?Pe#f!-y9JBPV-T9#? zWc1_At>bl0i?R)yHLYxuYngPPTdbLT=yYV7uBeT*<>RLv0fBdQBQNdk4QD>Mz2@1Q z+Jy8rGuMQt`t$fylKRhmUi+Ye@!$a)wivlTpI8ocFmQZ7bgU*oj-^mGXo^Hz`rZRk zJ10Gh4cX$SzQp9}jq0U+)0XUd`F#4O^T*ehH_eN-`*7{L&NQF5cl9)HwmYVTE&il8 z^SEpK-Of_2v!`mNd`viYamRfAlA=J%?w*4(H{Bj?oB8F~)U)rL^k*7c9eZbSxAfK3 zQm?-Xf0+;JADuPTFK^1<>+APT>u;AVC|;v?tmm)sc1Ozq#o!h5W~>rD$$Gt8ZgYn+ z*TaK*jTKX#3O(I3PnDHPoGW_Ly9f7AsXgD`(v-Hu{>kg7N4>dAiqbFYd+`f0oo-0< zdMFw9*xSJOw3y1OiS1L*Z?ih^=3{TnBSC*tj!pNQ%O2GBf1Wu1a@`xl3r~-~cy@N< z@73w`laIFjOH`ib=E@|0UXlHuEr0Z)7hmSxP6_HeGj z;puPfL*=e-{+?ZM*#4CI54kh3iuLxp-Zj);KK@z0@_)X5-ufJSW}jfC?jvjqIkGa2 z%+txroZl+h`G+gTByaU9FOI1yS6^9L9Or#u%@Du-Ht&j$oU^YizP>ozn1_Ln;n2cA zwFW1}ZcK|lbLYkP&swXwA70sN)m|Chqq}Z-c)mDoflHL`)Enj!-Jx^D6fn8avnv4893-=X02UK)2uXir`8<3cJNTGG2l$B#i z&x-}O%%e3{*4T3#&6p<7^6fLXz+I)Sh9-GWLoaF16?)m^>zvcYs`;3C&k_0W9IhTs54uk@-0Vo&rJ%Ly?m?}d ze}4vNjwGRZ(64Y@t>k2#9+?(L>T;kV{(+f^7NlkAJb^O4)UXtC1JDr;`>RZiA{$$h}!#U?BF$Y z2}yfAm(gX3{H@cc`$HzU3m3LLmUYcIYs=R7W^c%{twx`+9X7^ivM5{Ro(|wYBI=S> zuXSOHy5ssyiCod%SEn;%uW)s6nQyqI=Cr$cut3@r#dVG~zwb;qGUY*6d7Hq>9*q+r zLb`lRpPbfmX=KF7E$loHY^)rfcq&X_g_6Hf$is{B^2dA`+7)*Sn3hK?+;Z75n|H&N zGb`K#4vUJe&@Bwk*9bguD#M6-`qnkPC!d+A{})wc{Je)HTsOs8J*a!ptMKN(4G@V$`aC)i2j%IJYms49z9@j`eHIer7G)<3MarVxwOuxpon$aVGH>;L~ zZjTbaQ)0t+l)))PX@~BC#R6IZ)oyd1@%aj9BpAi9ZEUo^zd`-U6sHU8>*c!J7M(vP zHNna`{GN|pu-e~t(^9rjmRI_xlFqvAsEGKzOFgyIIg)##V3NpYTRu01mAhQjI}WOA zg>YE0buTh~%ODgK$f~!qfK^ZXi1XpYVbQ)ColmoEl;7TIFj~Sc#ir8iHcucZ@4$}y zcOKzuRqjgBte;Y<{*vLhAXSwNI8jRyR%BpUd(1Xpo5Y zq=MBNmsMn*-h7<6^ykkOw!nF-Pl~LX-1m4%zKHtK1uC^uR)@$+zy7*vip0X(Ap$Yy zca&LVgdV@KsJ?ivxyQ5(&1H|?FgK^(V2-$EtJHHYWWmYRx*NS1538E`d=jsmwf5$I zXNQaPr*)J$9?)MiU2>}S8^IZZYCQWsEL3an+c&Q_V1a0o(BlW`-P)}SkBZox{4vkv zlV6v!+5+{bye=`>$2ihsPqmgdY%DZ5tYM<>n5NC3F_rhlQq#0WPWHjlLW^Ux_Guh& zRd<=9At|Wq-Fxb)YlhvbEnLh~xvc$<#Q#=~oL|~@RH0r?q${aIXYItS1#FD+5iKW` zJF9o-8um2Yempls#(n3VW4F1*a!Z;GMN({ZEVYB%*dDpbiur5{+rj$NAojo?ao0bN zHmfdFdHi_Q^1-qHvqC#dhoqzJV{?wfDvRTJJ~H^Xp1a*Ep!Cdtk=(MI3Pr+)Zs$ZX zr~VCl@aO64kUz2V%t^=TScIh&YxX38<9!i1wWoIw>O=VBOAd|DWL zL-gde4|L0Kjni|!!N{{pn6LJY@|=ko6{3B=Hb{PMcluJ~;80M)+9y?-c&B_*@bRim zT8^yiemy$%$5rF;{8e2363hu}52%MaRg^tBy7L=L?MIoV;%S!a-hOJ);3@wm{g87h z%fU;9jCTS{xh!;2B2U_$)E0<||I#wOF+Gepc!zukhfLkd^~=9mdQ`<**y&I0M#Z|+pS)mJmv+PfasxtddL?qqKo-mKkP%~p**#^%a zzyDS&Wmq<`TFYUbFXP^yj75P}UXJT48SWot{4t?A%VFI{#{0nxtoM#G+;?TDnOMDx z@rZd{kRD6+-nR0ZXUqp??%BT7r|fF#JMF_g?w-y96Dl0Lx13^TsV(j>dUW;vqML{I zNtWug=O-?Cq!!yg`SA3w-u)BR9L-H#Z!gwvO?Z(o@2KG%k8Qduo78t*^W$n?vaVo; z@==D@XBBmvb)AfF$C{s)+WL25gpSq){o|WvwLawypKGNt)zCXflrwhnB8j(AdJV;< zHzh3QvAH>#^@Pk<k4{VE!N7=# z!P5`+Y&&4HRe0)SOP2(<;M}w`nJEX8T`sZ&UpB~pGgWQyc~S?pPd<&^6;sD?qrV?=XlR7Pf@>kyL+OZ zD;ON#o!?h9>*j0aUE5BZWci&*Yu@Ca^fG87hgt6Ayh&4TY+h!}KIe&)+^z#0dCXBf zyXWrRcjUvJJXJfh&Fk#67DfHPu;uvYz#}}~aeL~lGTYX4l(zo5o!uDBq`I{0eWi8I zT+YfWuBB6cw($u@EPMU7-Nfi4cV7BU(KXwx4Sqf5`^EjnYW^CJk2}k3liay} zU;8j~b=&5(?pe`^xg{uwVhz6SFy%*e`a-Lk(Z%{BZ?{{h(~^*-e=?Y`BU*6H=KJ9^t) zeRKKPo7USB>)I@n!tWjyDt&k6);7IvpN(Hm@|OGG^HH3+HNLX?a@e+;%I16SO)aTC zd`9eD#+ko5CsGq<|515z=l`p*kW(u$4cnWxyM8_bdpJk^%7AajeHy1;K2f!Q()WhpDR8HXqD3X~2gxR|XT zbg%VDm7Bq~yU(Y$9MYP;RbJL~iTMSUa1mznEw#1`Yraj)W(ZfZIe)M?lJ&<@Y1apL zpOu6?P}{Qii{^TpdDWYecQAiRb)TozyoqZ?TJ_4eDce0}w>Yl6y;5$|O?I!l_Lomf z%{ui(Vtw6P&RxzW+Dfu-FK%T%zu^5*RmHA;!3i=U6WAoa8Z7?drk>eUcUv^3$0+^1 z#tfCb_BVOkeBWC zPf7$b1_0YPFRNKZv5<|pV$$f-2axlu5aIwrdz4gJ^oLS+$B=u zKhu1EUgqp5=n4VBp+`TMQ> zi-fN`FNXBROj5D#)a;zVnI3ed*z-tv-2s<5kHva(wtW>So#VM+{R@Z7*UA@UO6~qQ zSD>`wY4;90PPcilXJ|^te-slcolz@PIz{S8{+a82Ic71!l^27rRi_4ByS=YGv#r<(|!&BPsti@v20f7UP$1z0Z+*wU)0>Sa)i_$b@Y( zXE?0c=OlQz+~eBwjlBw!{7+wBv8nj<-e8@C7aXUP{;RKk@l~+w_V)*i&wRSD_(1xL z7k8P3AE|}Jvo~+Ptt0;G{LXzxgSjtB)I87Qd6yiy+TXb)@yE7V`aiZEe9r#IwrXAI z7x4}83-9_Y-Q4-2bfR_f^Ao1_Up75;_?9IWrpNXr>)evc_~g8V{M*mnOt-F@R6B(y z^WKx}SG(9u1=uY zXEWdR_b2b|m%r2;BX`|gd-hY)`TGwP%)gxz+*)bf`0#DR!L0|g)XP#5c5+AEv$?-& z)>~cGj@Sbg>sDFlZMT6=&Fbe|l)g zE4kHpJtEUT&a-r@+|$*Mjh`~kFS0Y8{H9sMFF5gszXSeVO}O){@iq#B`?H z3)52!;~a9@rue;xa4`GYZr`9DiV4e2&!vZ63fjY| zzw_VTlTuH2o#FE+P&$=5uhu2rtSgUc)m7IO|Lm5tAJh-{M#@zCzhzQ-6IQ5`sPZ-`P*>w-`_;rf${KtO; zH|u`ha9!=ewZ-RdCaJ$YXxb1dw>9#?x7^T~-xRjaG&6BsA$K-==GWTUObJ2^p}k(M zFS=&e^w&9hT)!SLoo(Cv!Xs9wolRBGN8GsEU2@sv zhxc~A#Et34?f1={{_PfLQLm?9gM_5tiNwnDH{X~UBmmG`DBG=etD14mdVAZ8;BiHQZ`0C@y zm!F0D0wf#-&KikXiSss=?hzNRZB&_Pf6$i#{*V`o3YtSKA2X$OT7Hm zx+d1S_n#;qxb`r)a^vLWeY5MXehsqj?3$(WZn5x>ioH+1+-uG1VcQ!wspj{ACgHaU zQ(Rb2T@KfZsdTkbGARz2xv%`~=YyB71}3L`%Tj3ZeiUoTd3A4=<{PPVargJf-&@c8 zs6B&G>kj`_HSIS`ZyH*>-P;g%!{LsD?uKc7^6`fGNe%Z~8u#+=&z{-;ONPz$>QO_} z{^+?8^ERA&dH2)mO7rO#e|04v+vcURXxf&%a$`ma|}9O8wc_E1L?g+!xPh z-x}2^!YQKIb@s;kTi4&5;L0~@@T++A_|N`q1HG-2uGY)5G6)>7|99Ze`{F{g!t!P8 z{}#s`ZgQBH`r-TehW}T;{W*S~>&ETbH>CbwE&H1PaFNHn{b{pUW=CGvDeUeMX<3=o zImMJ)+dSxiS8Cc9$;*@adf)O0pOM{Az;%+3p@?DDI)gKnf4AzsSns;@+)Rt0E&Ij*!URQKbi8+sLe88+=Z@)*{BF{?aie<#jt_x62ZIdgySxc~LS*4rUmZ;u|^ z*hfepvYhI+`|9b0IUQ%PEN0)_s+e=rAe*a_UuR9))+21!tj@EZ zyU_OU^x~!u%U`k1YD^5>{r~6AM_wP&e;-C2Pg;phD&M@Clc+}xE`>*igJvdcJdPtex>^n})_MkdVGM`uQRsy|5c zU15BzH_ys8Y~JOF>e(BR zONiV`o{yfFe+!7St%%?FQ2w#b$&L5FPP1xJJ21I=&(*{B%T4ZGP4U3n|v*)Y1O-%7ial%Jz2Ua^w8BslDGOTRw=nC+BgLKK3d-;|9|3+HH;gaj{dBD z(Rkp0-3O;0G%sr>yO}^3ZpIm-cW1quB>mRG*bf(M-sQq+An#(T0_~+jv z{#^S4P6lQl63(j@c|@kE zIOsX2#_CM3@xTA1@WRWMEzdQ!w`~wqF8+BsV9^)jDBHw43xm#2?#tL8E~Ui0CCWqL*&bt-dBHszXjv1Z=hswv{a&B^V0=ao-R>7Au}*3H^<(pb+nWvXtp1ex_)nw zwEo#}^?8rqb$=62(oF9SeX=Zk_r#JN-pgm0mc-5~+wh<;qAO|D$AscTw~lQvFVs7B zK>N_yLNnKc&sk)ZSNsm?+mLJcyyZ=y-EW56hp(Hq9my+{z002=u`uCu#jbQ?X5NES zS^E8_NvFOu^t;S!vD7ZUUPpm{&ZIEQKW7bOKGe@-`?+7@+j}?F$imZ^ee#ZB0!pH0 zoIBUtNOHU!p6IYisd~BI(=8uOdVV~*F2wTFiu>f*)VH;wHD}tVeRq8nzUZ#{iggMi zx(0JzK74yL_4Msl%~}^m&aMupqWmO>bu9aPB4R#o$0Yt!`&Y`sButk?e1+p+G_ ztI2vY3-v`$IrZLJudnu}WpQMN_yOi=KMN|f_4;Go-~K8zwK>dQxZ2!qrA&p2-R2g9 zy0bPrKT7_ckm(uD`DK4c=26udlmA5U-CJaO;z`co< zy7d!Mx{n!^UEZZw#~hw_*Z)Ba=Yt8I2g-js9>|>^c)xS+3B4=ne2TYDrpZjo*L$|} z?~Sg@(_b9E+_wAAmi1a2AF5pMP7?V2SlXD|!usIvHHB+MCS=@?R{F=4DK?$=LPbW{ z(rr__wuRZr{c3OxeX!uiH;IHd{mJ{=XLlTF>XqBf@L-4D)8?D3mmezpeZN1?fA`}G z*-IyW&QNM$Zko3pqQbSXuncDvh!=k&@CjH$#eNcO<>mat{zs zY0#bLE1KnZ{gn0LcO3egi%<7#5Hc!CH8)DhT*=aW2Nq_Y3Jn!-sJN8_&DyqZ3 z{jzRw{w7^n-tg|4N%>0mUizvp|F$PBR+#zW8(tmvR~OeayMNgI(K7#+X1V;@duLlG zKQ$F)KWuV5lUsE4U#-nMkAF*?vRp^tegx0-mQ9xaAEoqD%2d%D}pz52Rl zv-8%@Q(8HV|LGmB8jJc@5Blpx*F9Ugp+e#AB#sOJcdQNSd~CNQ{8#aUe;Z!Uc>3o3 zZAPXa`oF*byRK_!P-IppvdMVc22;>B|Cs%&U6y961?difF-=`hQn4ZGBcm1y;vw8O#?wzCj zeElE3$+|kbZzu-L{rOm4zU3_U+w|ks{k;=pS8t1+6=g5V{l|exY0jflT}?-x?)_|V z>7V?$dyJeGx5f)ZZOgq~w(r-kvitwbO27ZTU;X&a-1Pq9 zVuUg!Ha+ z`bU*~a$h0Twqe(ipStr}?wjA*FL<&3`(I1flO7*FEAsg~6<;^Sa2LbptDW(O=g7R% zXbxPrNa@<~8C&-^@z}ogH~7&lxBqVaY0*O`+Z=B-M8|I271+zFx zydJFIvZJZ(oAaO6GUtu6f7TtGG+|M3UhCy&E&Q)HZ4Lf^d;fz~R;ohYT$(&bHqBIh zp<6b$_4Fz8MI!!dvp?oDcAM<-{hnF(N;T3Te&O_MD;nQlZm{`LvcBZ$oV}STfen*h zg|=2RGXA=8@JJ6&@KNFXvmqZFHheoSqiDE)U;m!XjuXD6rS_DGKfKvDy-zD9cv*E` ze!c}yQr@p=i9MI)GhO!oWn@xbsa-wocldwH3-%v3{`X(`>cyY0AM73eGCk4##}=+W zL3I6=$fvhsBx4l)?HIZ=B8(@$mwtWs@M`-vClXn2?MQngt)9cQf3qGmu zIB@>si><=mJNz^~HD~JYU)U_w61sZU@sNyuzbme>s|$SB^q-EY>+)?Zk2K%(@j}Al z#EZ*59jJE8F0DH@Eiit$T3F$O7pf^T=ftWv2^GIzyP^Mc{rZVtcurS-(iP6JV^sgh z&$lF2)#97noMX2OiiGSEE^WDWw&7Ifa*^$sFWPv`R_$FF!+7%UQW=Nx`I=e(5=0CX zHa}QW8Dz!y@kAPzs04?Hbo^bPy-(du*%pgkE#P0Q)!3%y(0hP)Ys010m%m?#*&1dr z^+mCjTKUJk#THK8+_lYHm$hHo7xyIVhe4u|b;ON)r>|=a z-$gc0J|g-qL3isTuID%Q8~fj25jl{*CEWPIKbE=uXCoHze(d+X?5?ZvM<`pLYhJTZ z#n&A+rE)X0SM1m{*`h{5N4L*=Vnf=Rs)vowrsTF7e!i&ZVQ9nmyWn&FI`6QEbdevo zq_%7^Irw?&W1S}w^W==}uASkm$`75#V&60`==EBq4{dYja~0KjyxsThylRMW*|Jjp zr6*=h)Us)QtN7u&$j-WMCFvb~|GzX}`+u=qN2j=~cURS%O#A|=W z0q-Xcn#&s;C#dG1UH*wpvBr^KSbkdf?)N_hdS^tkeOu+~+!7bNzhw~wR#}AA^FCKrVC9w&Yp{8osoC@*wl5NpTFJC<3F>N zFG>7;Wy@;ij_S6eaVNzI&b&nTr0Vmdvh5#Yro#U#KeT>4oNE- z_~Kvm8u|Y)`m>|PyCVLf?LIe2lbI7H%~F=g>e?*Iul6(I;-w!UTRPUMh@MDGEPt?K zLibM28im@lfQoFh@OQqk;sJ;D%e|O!^>Szl@8oZKO==2$JXfCZ9OqQxEauE$7I2I+ zDw(@Cu(YK2#`YiA`qeEyZaBYWSIKu>&H^ztpKp_uB`>TiNN;%|&iv(F{N;}5p1V5^ zC$Mdv#2#=e&1(PG|9_O#^Ev#UPW&;qSB8n1VZs01Cyk0qepvH#EowVF$KX-=qBP4a zABp{%e^f0EJX`iHWmp?g{C~kswyX;aW>f{+Zi}*H3Vgd`MXf^A!ymP$*E?xR+~Qub z>f>vhD<{1lr z=VI1Tg|c;>g){6c6cruYpY<_cnkas9-Zq7~I*Wo$UTpW+)o*IUQT+dxftoQ?dWa((;lKclX~27Ont#cS@Si&+?% zD(&>uoUofA?$w-UbCebzsh!_1rNQ|*%jgq&#jraW(ncG+n z_sn0em9wok*<$CKTPIcs9?Q#VyK(&LXN5-({m)nUrur=I-?`_(ucv>_bC%EfV|Vi@ zXU@~=)#g!8+qowm@c+Yi`G5q+y4=spdjHNl)LR|)>)(x>S&26e{o_`WF7%8nUFRlL z%Xen$jHezSO26M4Tpt9!cgb%o1~w?7|D3tyOc zCCA!7f%GloxgSD#6$aO_uVuycPMBm)_EC6thK5-Jy}=n zm2>Uvz3uV5bMslG=RJr$%3jv;RdVNg|H5VN25Na9j`7xIRs3(ezshoscdygEoX)_W z`&-_k2Tvbdd;Zt!kAI4b^p@>2 zIdreFOe|APpq?o&>C1({11B@j6uI2hubn@0>CY?EYWGA~=@h1KwaDwTT_%)&@Y>ad z|BY%Hi$$21wD7K7sL-^#b*+tV?b@lnMbpmBIvoGUtjMtFV_}iS(RpSCx2zX-t_*H! z4SlfY2g6>|qu-WV=I&&lwR+9j%iB)>X>aZi&6CEoBVe#pr%J_J@sYRbB4{Ddn;^yc0GhnJwb6 zo$xPDy2FQIO#++9ESLWrl?uTU3`^{S=kK@_^Lbvvh3@rx7C1}rXi7Tn;M}im74uSa z`L8!W8n11yS}bvI(scLPD<2&%onLUtwWD19NVlE({RB&+7k4IYnH^NOuTk=-K;p3- zGy6Ms_j@ZnXREYdX27!9;?dNFHzxjhRr=m7qT=$BSwB}Tw)%Bs`ZneN48_6ge@rMS z@|tpQ@oGc9MYlFMJ0CY+I$2^Tch9=)xJy<(9JO4HopD7kp52Wy-+3-E#^Y@36lUY~ z#XH%4%w7G?^M)I<2&2*B+LpgeH{9eyW%=ePzdjw{RjxX9W5P4;+|wpczHXcIZPJAN z>XvgJdg7m_$}Up;E2lc8yz0}^d8=MC+ec^ecqRAQv4|`VdHZ$Sp(B6uU&uGFO5Eo> z^ZSAI!X%~zDmchY$lsq>GInm9RnKYV)G^spMg@q1wh&77Ib zxq&Qw@K&O!l~0mW^H|AAeQ=uH7hXU zoY$L#trIK?=GEs{JYBouv2DWE->QWgKFMs^ElZz1$d-=TU1^?u>CsdBn7@_6g~dgh zSC3ep$ggHrdhqM>H_x}br9&bz|Ny zoaJf}arXRK#eF*`D*tv_`Q`M=2@3TQDfjvsGp&SX7-xpMPWG(vJ1n|)i;?{*m(3*_ z-7dDbHQqCaNs3N8p6y#4ZBx%4E|~b_&?Eo;pPRaW|BLM15i_NA@xpwcux($B%Qm$?#HkET(V$lZTY_Sad%v+<;~73tvVv! zb=LcNsnj87=IOI1zOM7QdU~3RlJ9eiQ!k`*1dQ?@RIwhKQ?l^z=kr{FY6bi^<{x-{ zewKhxjh+1T<-Yaj>x(Mcx8{7+&uu$yn!>k|rT+QqSk{z(q9^xdi3)ojOb!1a9C!Hh zu@y3bJB-EB89WQ}MOIDhDTtjqIplliM?o?31$TJ_j$ZbA?j|UHv26Aa_7%D-JpTMS z7JlJV*1jj_jKk^zx4S2P={@~o;cNFyKQKF_q=y$)TE&R(*=yFys} z*}@LGJNe1s zpm&;OW}Vk;Id)p8Fce+g_4|POw#!fL2|8HRz;jw4dtKV~7+Wr_@|M)Lv@J~)vOB;Hipky!c6`2dIdKb9Y&^~r0~q#R4^ zx6M0LIOW|#1Jj>BE4Q~l%H5Lp;MK#3`yW^NrM^~Oto1}?t3u(exLqN?#4Lgo!p(Ot z&{N;t8M8xnrY+k;qt|*RZvsCl2RsDrzj6&Y;VX7A2@XZw2HsZtRNY3{cSuAGjL>aa*iohu;F z9<+32c@w|LgyhLB$<`D3D-)M3FYc$f6sWD%S4H_glYeDoI`-Kre#DxLR9@jlzCkd5o_opRFNRQBG;ZO4Nx zp}b#(_8u;u{d%5Jo=d#@WoaMjdpCGh88>c=o)O_JvC-qX$D@A6r|h{&=chO|Ov;?T zjOh>W*@#-5*X^$Cfp;c9SfP}uaj$BJUe5e`wzdIl$~66i8E42PYD6qGcKpDTnfLkO z(S&=3x7|AL)V{kSC76}4dCPomo8+s%xm6EIU+GAETs~b@c=Kcal^q3>MJC37u8{v_ zCe>AX!<#GOT6^!Sfc~kyZ$j3odu}+gQrJ!K@rp<5FRb0XV}bmfsuORHa;_;(n!gh&SZ7f$2O$hsTaL?z_KiO`w^28uVlpqI=Sy=Z>v`S@ zGp2>jkt)*J&};tFqh6#ldVzD1HPf$#EBhxZ>^?Dh#l8i9EF4z+IJWNS_P@u~LL1WT z)_si6RC{1w+VFqfIN)rx+$h zvA^NU%IBQ7fB$dK{lUUk;nSvwY_UzPi}5ph{8jkJ>07HG?LFO`x!Pos@y%(bO8!yW znt|R^B+qC1Y1Tf;H|k#O@MPV!1>bKQUT|yp-o1|Z&>x-1Lk)Xo9!M8FI3qo+@SM3} z`;oBs8x5a54JqUcKTvpK!I9j%R_}b5d|=uyuz8>E3R&Lv&vu`?c)Aw|=Rf||n!k9yT6mb2NAK^1TLshpi?Ltn;XZ#@+uG=Lx%O+Z(}fet zv!D2$^KN;0`}z&>o8dRFub(nC+wNO%&8Ej%5x0ZavB$+6v}}$r{!pzTy(@cDTZl?V zKf}uQQ|C(OOkt4fi5K!wQA~SVZv3L}z2b}QOs;pgGVF6Oi7fkF(RlCLk#j{;b`e$X_eN8-hFv@ds{e{Mw{|}NM{I$&uX!yU2`&;<#d0QXv zmkZW7+4HxwCBA>F%2kfdb-LYOgr~Di{OUN>JX%s<4@*hVNrjLXA(kynPD?(?ev^${ zUcEhXTG7(J=0stUeu3-pVRqd+=02=YV$}8(KD)Si=0Y9LCG~k?l~cFh^O)s-X;TW* z<@=F0OAc;5^^kWByJ_mCkco$0Y!kh?KOyvPica{pAgLd*5v-NraWB_||Jt`^>z0`4 zO^3p7ccs6|>+Ze0@~QCRL;hM{Tt2m0x#e}u{=C;?b8T!@&)cG?*<0r(9n2R_ke2+k zIz6FyK~m|=uhxc<1zTPyo$P-f*kH(V=w#W0J2H#zq;2l}{ZMG;#`_zxI36qSOFYoN z{n{?U&+DNnqa#1OR5}eOR}YWO;A1O z$qH%5hkW1uY!X}6{4h7~-!;9*i)L5~tG@cl{%c3)BmSrN?qAx^!o+akPcqw*FEYG7 zu5WVZx{6as{q^I(ulftmk8$VgrSW)A{PbS03~qn|-hRyYhMM6T1zf zjDt^4>v|k-ySy-aeT3Xnx7wb&&B`ffoxPt*b@81vstF6ctp2I}ZFkbEwm2Ce}t73G_NjLYJudeA@6Yi@$ z4O{5#p9^7V@f50YCK$@)ue~;_G}u}npLV0+DEnj1 z+}hnaqPNc`mb%q8Gk#xW^!d%N+y3eVP0#&F{5h6K++kh@DflahrW@*u-6h)@J2< z?h5vI%=#hCVfu-GLjIvEXY5<{3pO`D@Ox0^EV@E);WPE!H!e-?zj1wXSXnx+iEtk24_cH0R?oumVVGv`h2+$<|>=k5)<1 zE01p8{L^Fhua|Ff`57Hx4FDU*nFJg{eV_bk$YmJ$j?JA{b`h2RNY^B*^ zR~*(%zkTC$MUuc&u8dNX9m$IleD;4@&9f%F*J#I$r+I3RyL!lJnFw5E)!D>aX}qBK z2dl+*_dg#SHaTki(A|;QP~Wuc&v~XlpI_+5a4niHcCp?&X`7vp&T`3~DDFE}Qyz8x z`YU~Q+m@eu_RUl{xHloKzgap#a)Yq(;jrHVIXsGW3yowyn{b}XSf}suwEyucHJf>! zv;3c*nI7eC9(11J^?A;zZ?)g+_WhMha9qg7zU*%lhp~XILD8OlnFTzyy%8B3ZA!i` zo4HW%kjsSIGv~@)o4Tm*X;FFN%pU@RwI4T_g;#SZZ`<(3GTDgr#+3Q>3*rwPI3ig7 zSMJqsd*gz?^A){cM@mZmi$Atj^dRfS)4!|l%s-o#H~*?b;<7Y1muD6ICl>Auy0oKA z(e|w2*@d?b-w(aJB6Sn%&z#`gNnZmP6Bu`G=Uk-qd2aNvC#q?|hdznD)i2XOV;ynn zOwy*hBZYmQ^Ukk3eSK=Z){zBWccyo)vs2Z6*M3e|+wDa15?-0FMN8hUa%(F2a8W4i zm%uNn=kBu;KX>1i5EYme=jre?AhCFU>*c1!zpAtJZ%#IwbMMm9T$|&DtoDrkF7`5O zG-Lm@gnhDOYh6F_NAlYj93|{Ze{MJF)!%>e-%sh28=v2_zLqApV^#a_A6=89`+uXb zp0?`8xqN2Hm0y)SXP$nXa?QUc_d#Hs>^gb*HwXLgl%JUNH}}|%a~gf8!oNx#=Vko( z_qO^<+0+f+wALH`6}`Uf$-}!hkCroheYG#wJWnP)XY~?;50_^2wlPdr)wY;u8Cl(O zFlYxOlat>*0pF$>`Q8@_Zk{~ev-zBN^(QvzOK)NynQ(4wdvjZm=}D2k<)2A^*g4+R zHWi9kiyzC?UVhprZ&$!VowAh)b0)ZaIU4kfg^7K|ye*Rt==@l*^Af8nzj5`);7Zlc zC)zTm3F<$T*(egN`^|aD!vi@A9u`3syh)#`HajQv@a+e$r-V2v*8ls!e8+y~ zSuM?{{8!jG3KZ`i$b4>Za41^S=UPLoQ%Xntp}o!jp5J`1+VjwwKdU#3eE4rB&DZzM zkFC$|n_FA`d|pf4?)|D;3!k48JQF0!+q?d1$7}n~s@EnhbIx=s{QUIF!??)sYq~Ro zjf8^2QW6#IIU8E@stUF(evtd6aiZUGE16}NZ1pZ%ZmX-TYk2W!4r5$ku=n~~U(&qz zp6!48Le=?e+J#AX^_Ct93bqKku;-ikW6raOUjNb9pd=(9pChxqD79B^?o_kbw_YD7 zt82%c+_-0haPs_w9?3!(+i(2lK~gP+ZH0AFw=W)ecszBfQ2*?ClY3subKcauLIS6jb-Ow&)|gpcwpoy8=VVt6yE%uyMb2<}B+i(_ z;WaZx{X?aNSiH@W125nFlc=7p*pswF!c6z3Y2;c(59O#g&EG5|9_I5}tgdyODeLF2 zw)dEAZT;)>k2~jS3(9`A4t=WnV%nk>3GrFU@29ahWLoWA_PA4Nds~fK_RY&TW6sR| zk)`+8W=&J5?LNC4<69~_CfB=M=`MQor{ue3h|iSBs$+N3P1!zc?e}w2r>tD1F2NAIuVtQT`MSs7UeCyAuWUZc{QI8q z*@Fg)YyKPj<-J-QF1ithPMA1FB#5-@EPYc*#ILyNvhuU6wzEnG5$`IrGRa zuqou?g1@ISuLggdpR0YX_sx4=hKDs}E96+r&wM(3d)f^d5B0m&r4w%aD=fZ$Wwpu1 z?1d*JvmVqwxVdnHtHh)4`jQ@h`yIbMjk`TpeBYUphwTpY?uedSGt0Bc;%(P2{W}Y{ zz9@Xy@j+kp{Nxio7e!`YicM08OP<3b>=gC$+@Z;8h6a*d`d0Q9^Z0U-s;@3#_;YBV zz>X^?9qzg;RTf^kd%s}c!Z#Q61U7h?GstQL-S{N@%Q3gYWq-q;%`X~-;C&d zf5WH$u3zexC0-P|_Ib~SJ^Ai4&uKr1;JNo8=|t(CDJm9suU4~IEAClzXyMkw$9mKQ zPQ5(W=3DvO;q?xs!}mk7zqr@%HNM*U>C;*-k@ZriytcL+eDWu;^|%kiz60ytrwK+o z^gNfY*>?Te@p`H0QO-5@4FkQjeLXd&=s$XDd2GkBxLT$ayYH@@EAD^!*0YH|7RlV# zjs#d4{&ur|Jm+_mWE*3fubs-?X*a)rV{ZRiTiX8AeY)`KyT;Sj9y-t2ZJAr@Qv5jj z=hAoA_PqYdyC_9encdt?t7Pf>@SlxUzWJV~?nwLBX$A4my1(wp!mq_k#f)P@*H~n% z-De`h$ojFA@#q4R(xYE^C6itqcgdc*;rH!>i13y?!dQ^AhWqFL+PgWEcN^HF>h=o5Lk*%wofHlMXH|+&XEx<)q9~|4ey1 zBNn^DcR>$c2_Lbx;0xOPS=TG1=)>m-qrHsEzceLp?^AvE>)wlkH5o2?Ca2tbEvvll z-7W64-#hKZrUK!8fsXO#-IwH~*c}!+duf04{K-H3Ppp3YbKRSd_dnle|Kq>I>3@1( z@0yB;SwXKeE z0iVJ**4!MHJ;fm})aI{Ut;=I{RaDyWY_87rXs#9EMpxd4+-k2{BhQw1JUHnEf3THB zhHdhPVT^H%%zJQQdtjZ*YD=KdrhXsgDRB)_8Gi6<@FDt}ms+vvyZ$Is4MKa)|4 zC3tJutUGe5ehaS73%wTHsZyCW=aNI`%WQd*QuZ4?ntc{EJ_28Dw{^%pne|HUzk}|U zi0JSfo(Ew~b5kdz7&E#He>#3x-dm)1!Cv`z2hU@+=j{XbvWo9`C3fqbW`ghBIDYYW z?yvvm^<52bn3bI+Fz3da$o-Ytc``GCzh&w!UzvVNNs?W%xn8R2hPn7P!??y}f)$#E z+fFRqyZf6}QfKAGo;%B*c)Z^6!}rFy{@8s_w*BjAwhNjSa9C{NONomHBA<_2OsIM6 z_h)Z_=jxV;u9aWj8O8^{pBDG+&E8Mv1eYAOx%f8bfaj7?KkorK+4S}GTGJn8h)7jEJjt8;_ef9M?M~jL&zH4c7FAgX zubE*k_$Tub&(crbR_`bG8&>H@bgrT@jD$q6A zp?Bc-qP2V$@~);8-*i~tbTJCg*paKn7{|IcVps9~8NqQ(Ws7_k>TyX_ytuVE=~dH{ z3(;X0d8H)Y2I^c}&Gp0V6!(iODu48L-@H)HqvRoW;k~`@#2@qjpJ3c1eq8BY{crnC z?->}@{MXNYygl;I>yxYhTzmhN{f+wO8O<}QU+p>Pv~ZJqTGqaZsWbX4TJ(zoqtl(Y?6mU4|Ib7BjvT?cVXaJ~wZ^S7psReEDg} zOD`MKqP^b=gw7tmm>R))Pw>%$6Q>q^TAsGXvZ^cP+pX_OPnbBvO;%0b>(%&t(+Y{y zv!C|*%u+k6l|E7bquj!DOaHezC+6lHjdWb`WPg^=k!6BOOea`tdTgtw{#e?hE5~6F zQTM;T?Df=VUtF)oC9NyA(n@F)+0O%p+2}nRm=w>g+E5 zQjMo~ZPvSe+*`irvsHO}P7XDkFm+A+wI$veH$BS~7#gHD)HA*Nu|M;YJ>R>v|Ckj1 zdj93L6uc-B6q2N{RX}c^_&=+L`>U9GI3w?=i|o3*GViW^0@IVs%N}JJpJqOl`x4jm z++xoDS&E;Q|5Z5G_&Rm1qsI)EkH zL;dvB3jLWqos*I#zrDT6daqvF+uvUABMO3-Ept12W1r~4>TN?6g|bWL+}bU7 zsIq6F)|R7e44x|*S2Fkn6jeV`a`_&W!JK+LeXmCV*PY&zCgF$8_RZ_gcr#5ohU?Uv zM!TlU{AufKq|A)iRMKS&{0~>n%K7~z{o3h|`-Ruuk#p7I{BXeSoTZkvt@GMxcYH6Y ziQT$mTUK#c@W`g}?loplSoBy*s}0g!j?R-+=c`fZ*yHr?P(+{+EAxsS>vznOE;Vu4 zuDIo(=V#XTPSGa6lgYO-_NG-A`|j&G^vGMeeSz%W7(;<&GhJVcUJB2?db=T8i~XVd zY*}rc*|BRJIv2$q`aFRVyd~HG6BK@B# z7q|qM9J#diN3BInX`9U?&K1^%pT8J+o^E*>ys`CK>8EoKEliH;S-zAFEbt3uR67?Z z@MYnA0sSpeJvVnQ{&H~djfu&pEcSeeSx_kPs?mPR#@9+KLb(y%IeYZd6bgzdi7akgE$$6rLG9 zwc2&J_>EOF%mrs^7+F2Nqr9{%r)aqmUm0&r$D$0kO)}mGxa7T~wlW4U5f;96d*b^^ zr%K`uW(L^A?#fG?8NU0}QAri?Q*X@vSqFHT*VvyeDA4<6m)f-R*PET80vpO6Pxzi` zbCo@S$07E8;~I_0T9?;x9nIw5Zm7w#CtAW%WcxDpj9x9T=f>%Riq@r*}?RUUIHcl}E<^(c6U2ds4ezuSo5BoB8)| zGS_qQgre=-BK+Ikm47#jCr`9I{;O)m7LR6iXOC(94}s%hL8Ra8G+@=k1P=1R|1yr(jjtMI0oFEV$o zt}?Sy(Jv8besT2TsV3?EYjRs0o?kpM$7It2?QKGfT4nCKOyl}(x~wFkEadw#R$aBl zNy&TI?=0h77L~rMr0Y-fti(Mw`~A8TGW(-jn}OqunX&pwE4MNgQi^_l~_MautA zkNMmsEtDmu_VR^SylOgE8lxNgp|depL!@{FcE+$*d_Deh^Cj78{{0El{+)d6*7Uve z@}bkEf1i0NRCv_3MZIx2s^Z__BEgIasvbDBh#uUs_P(J;9d8bxJ0`d|TG} zPFkucT$RdFmG&lX@qvwjmS!{Lgg@uoT-;FWks*D&psJ&BdV}7JZ2_Ji4Z9z$pSUQ% ztN3h~^Gdzh^UXduzw0b;KHBtkV?fonxsN`4N;23`5gqC>rFYRp-$S!5=^UEnaV4CK z`O+r!^DUw)3nlLJpeQ8nGT&X}qiJLbxf=gZUT@U?hdzMsJpzron_*=q7?$cuDtEXDl z*f@w4zhxBtv~>Q*BnOqNEHq6IDrHEI|2nNo#(b*a z!%nuO&^8-krCGms|9x`vVUq62oqKZUvuH54R5%t0#n~c^*(EnoocdU zPrl5m)&+YuIQkdw-r>AjDYkH;(W}(Gnx~FjI=fkO?-H$=W#yU69hYr;lb6P~;xN}$ z$Is1gSfri>eO%d~xB7hl<@nFb)cGeKJd-Z`c|qDW4)3~S?=C5yTY1QH?ulhqGQyAM z@+J#KDImm?4w4*=!E2}LX}N7 zaW1!Juy=U(wwJRYVK3k@(;p+pe6G_7l&p`?fjFEr98T3ELZU zmsw5K^=ajQC(M-m)mi^-@1LEQXZAGIdp=nflfu6K{T_9$y)A5S)#EoGR5kd0OOT^? z=|)b;|F$M(hpRJ;-iS`FeQ#TJ;O81W^*d)cFYKLmf%Aj={Mpi)O;;_Y|LpY4HPZC+ z5q1f5`rW!M>hE>=Ta zj?ZjQKDqj@$&>{S2C|DD6*H~QynL$Q#~;flUE=b`WRlKkmnxm}|F>_&_mX*zv%fFB z&1i6&Ns+H-x!_q1na7XKj?L$Zp1VIzp(Jr$!_JkHy8g_|bMd|z_HJI`)bBB#Q?AA> zHM}6xYkOwSQo~pt*SqE4MdOWwlY{SD$mdmsTuimdGPu{-9`)i-yw^GTunvnfq4u*D zWqq}m`?UU%wXtY^Lg@}8z1MlC@(Bp=6At4w8cBbks&rr=hXxq&1=(U z-IWuVwY4vlJL1BM>@AB<9ADPus?}AnsOWgj*|lX8XHK2|d%_fRCGGST`Hb@wHmx~g z!O!e>U4H$q^t0v0B?575_b0EC|8Ftd@9%_iIR-|Ch#!m$4WHhp{e1tY;*`FggqFwr zThsD7vL^5B4w{i2^|{B;MSE%WSD&&E%cTDam?ViGsj<8`(K)#PZ>8ZIo-Y-w*MyQ! z^)|SrCBIl^$+~Cl%{9MY-mS`s*>+y!Jkz~!!6Osf(gGYUdU)Q2&kmoRFU>9+8=vm) zecxdBeTL;)TIz>)3SWAz)N^K;M?!}Z6VJ@EkDPm-rR{vhlQ=>3UDA1_*Pr!|u3hP` zw>g_bxo6fB*~d*2WRDAleUiMx`lk5HRRP&a@2bDp3Ck6qRq>l7|1mV=)At9$=Qvn6 zSR7g(r?`A*`0|>|iMQ=LS7*cAm6I)wzmhe&y`8`3d-3hf#al|+@9b$=b|uPslI4q- zEfwjd_Xk0zIT(lwo!sR(uD(4O>>2CI)WVK9}Y44;Z7wtlCxing@bFk!2Jy(2k z!}0i~cU}jk%#uwIN_8-swC<+vb?;cw&#xwE&&sz}y7hBSt-f^-XX@w#theQAGi-! zDny@Wy?pMX7srXiQ!*T5TBj#<8XJYXhr3P@{cCi4Lz9W+YWGM}_l@`YRHxe(N>KNd0bi}TgK%#e@7x2nondTUYl<#z&1e?)Z=WdNbKFRMrfCmL z)Gwa3=iG#D?|Ra)WtPlD$FfPBwPmf#uT~w1$$2~7j43!~R-)S5w%nOqC2u$Ku*xKF z&Pe4Kx@9b1(!H)I>*5uz8Ow|BX4xG~^Ax$&QJnr{+G)dWoUQ+YxIeC7PMWjy!Qa-wy|h(j%~EiILn&i z%JH%_^2fAIXP=Z5zwS8s?8Y~pm%)zC5;J*KZaQzXmtior;%(DeF7uuLJab6O$Mv)K z&Ahx`zJ~WLWAG$*Rn_PYm7v^|_9sts*xdN`2{k_Wpd{+E;rcG7CWk{S_FunP@lEd% z&x@x|k7r3Mvk26t_?BL}Xr)x3HB*H@XZ`c(oPk!MS59AZFb-U|{(erhiM3=_L8nPB z%Mq=X=ZE+?7p%(IJIiwViYZO^eZ0+E1*-@Kft zcR%*viU5Y%DY7fKSLdrH{UY?wzTSskVi8-XU;B3?BlY7M zpW{{!qRY<~ay{$Y=F0N!p3}~PyMB*fR?SfRcGxuiX%@d{#tI!JO}WV2kH4z54!a)8 zdAlp;l%(Tw$w-xR=K_uy-#Z^Y?<3<4{j5#v=QnFM*)IxvcjwxwlPgs%l&9-FvaY%o zZok-n=^C-!yMJ9iF*WCeh4|FT77;R^1w?gfOHRcdlQUD=Ad>keScv_uPkQi?Exp|u zY&ZNYxYq^;_P*6A3FlF```o-H^4y>3*!&HBH!@e)SRb!jc~!eX=Xikhp<lE)w z|Kqt;lBu@u*ttc!MHWte5%9v~+DX60loHJZju-o9Tz_->jp&v8PV6&7JM$RlzbkZP zxt4fX;poYan?K#@nr)KuqU0KXU(v?RnLM@8n@U@cEmS+A7UDJ|{n;B64ePsX2G2hp z{Jv#pm)83)qOskDI%~LkFKwG9{q;WmWK}n*9ugEpoG$SCqe;uyM|MZOKIfC(<5@yDxgtQNaJA zgkxeSudF-2{9%R#ZP$-3V^3(kYd(kRk&FJAqYd7tSH@ns333sb%~)lX-&`h4oZ!#(pegI9GaG^Ee| zw)y{GW!JZ|pPtNg+Fkux>OR9e5eA-mUf04!6DO`o*{-=@zVj&|oo4}x%Or2SI{)|A zTHz~)_a`j%Z~S-o*RyyA$0sHt&ng7fJFoM|J_+xv(2ikU_b@jkcDHga)4tlt#)0NL z)4f=ho%i?NcI4BY&o6&&<=t$2sF>mA)xC)kOmEyyPbho3^XRk0+(xO47A_}ytEZb= z_sEC{`FwERI_p6+)7M#@C(2YO%0J#0lYjo@*Qt52)_#gtDxVqDsrQ(uRU|RYO-WMO zdL-_vh=;|KugPl@OYgOtShdWIEuE9Jaq+f0+ZrNv{i!%F*?ISec3|&rm3;SUx^oPk z>rc6Ge%_G+-IX_Lg8?5>`ZPR#3UXFHP^WX~2U&i9X5bZS}dq2^`Gze}V~Z8XsKTIF~Dx>A&^T%qX` zq4~`}eD8de&+0wlm}f8XP0M(?@}~?ViKj1L?7tECWX@9+@mQ%3=Wbk$V##ftkZ+sm z=CEz;!aG?)9qY2QH-yXxYsxmAd$~JrC&M}x=iliS$#;wQsI{k|H`^k!Z+5L z=`CAnVdlG9COA}L$9C5GTdn@*-W}#0^|CPvC$%Tc(~i<=tJ}I|j_bz zhQg48Z&VcmVj1r~x-OsUv*6ho+y4oh{}g(E8;OMYOAShKQTo$pHIzVj8% ze@uHd`M-H`U;5BsmUz4Mn@4uS)`!o^ZEX)*Zp2Ee8OHT%~-^2$$vLq*$XpPusCw5iS%AcSh~|lmt8ab zxxh5#V3qc|BMnm}i$C(kRnKy|Gx^@E6;pk$rpQ@bNLqU8$i9u&H3DAUIC<;nEK{?# z#p}6Cg99^)zQrv{mzUTan9(?|qU!Zhr_%O)OCL`v&rzt#do?jDZ=KH5rF%9Vo~PKe zYWkfoKd{qf^%BS347Py*Z|5xjrL`zF?PJHE*C+fQX)JKvr_0=SEU_bz zd4s>`vc?keQ>)E2124YY#K<9&%D;8C#)g(zr*~z#Sh$(*kg+Xnza8+^Wbw@uX;!-l ze03btW-)dNzOa45Fn8wa(r?!b*bc9+oU&M+X^l(c+l6H%za5xjgZ{LgeOxr+vzTSFtkxZU_hSSNcTvPQqd(Rd9JwNHW!x37o*wf{Icmv; zjXMJ#e|a%gL;m>3uXP>Clb$ZVE9ZMQ^Nsyu`_HnR7qvL=O=o2Pg=-?WW6_ zY|kHhIDGvW8vCbfIq%Zh7tQ*<lpA`lcZd3DEL$M*%MQ_k0JnzK0|=idb# z@4W4tF;lsxH9Ea$ZEiBm=34gk)5-p)Z|=LjjIRrA{PkwOUUzS8=MsxTs{MdE1p-img$NmbKTPOeIPsc-e~m@vcYBd5<_uS%P*k4$`q_Qu6t3}zKd*3=IiF#GsUaaA-rPg59 z@`dH6*y`!OKYnHjl|T7lUK7{Ey<#P|j81McV+dLOO?{2drRVZH_ipmPu5`Sdfg$HX zy)Ns|*`H3|_%}bwP2W{}rfKSt`PVp{kF401@s)AoRKKjue|sKfJZz9s{TRG+?Yi7Y@ znW-`tc6jU-l|8tpw9M+|=EBP|`Erx)Ny%+il1p3JKUMOUdE}O*)h6o%ZQH5~v<3fe zG1_GHL+8&IW|^LCZCqFQ9<4k&YfEkd!g|#!&*K_yU z6!1A0Mf!DJbWc4PXI1N6kT+9*nXLao$$Lg_x`+Lyy-GH5SMd~HxBBWr`<>st_intj zqK!@S!kVCE847xVA1Vy;g3bNkXr;!e&T^hJW&MS10WWp-$Op(hY;oOv`_~MvnZA|{ zM#`qkRBOEN7zyl+Sa;;pn~h61y*Q)M!tJ){5J%6(1(!=sFN&D7oLk#iI#2J4`|-{P zuXFi*1+QKxt^Lm^Ee(D`O=96WPfbKWX*gZq zZ(Nja`EYuX`=%GamsESju6bD;sCZd#%fZ(V6e3w!XD{xS(UMDPy=}}B&X7~Ed2xuB zTV2!bsXT4V`3`=%J8{Kc(Q(*NR@>_?h=3oSm`_x*ik>AO0*Xm-hO& zKhs&yRblV9J>&RuR7zejJb(79_Ywvv&pb~Q1YNA?;8>)ub#{KbOfH)xPffQ=%l!H` zTQj(YMOgoA+s4sQzn1CO{IKu)MV-C>1oG6*w5_-2|M*ne`rS;~+=aPry_Z6+O#7;R zYti0w3uZAbJ+Ul8ZHLAxjnz6*f~tHEthrQH$TKiC(T%OY?p-{*ycK?~_i*_Gc+8o;*vf&o6%Q#Qxg3s!yv=sqb%IZu(-s*-=f4 zTeBl)f3ThzDJ6CDzvVO@R^FMFaYwvYZ=Edq;9%fl#$HB`B{PbGH)x%T@Cy7F_qlp` z>Y6!odQNeB#Y@&-`JR8|{f3#7-fPWo2<|QY8`RxqsjM0PQd57j-_o>|s%a~ydPLr@ zT(K%q-~tnaru(9QuksxD{}!Zk#y@2Vvn|dsTl<Zr?jBm>YRdTa@xkq>Ueo1SSx)%noD|#b z@bcZprk7Q3WS8CU@8<1sQ;AtFaq|4(t%B9|DZc{#W*u;QsgiIfYGby>U#~jXrPq>J zD7uT;rr4`_ho`LF(f6jd`G-d8wjW#SGj1+Qt9~RjLtFUXfw{$x^q+8fvxpc> zJ{M;sIc<%P=O(^{qsMNCeP*{>u^~Bs%bcAj*O{l!no_xMdA#*f{SR-)Ejy|c`I7{USlM`aB9#xl+TxzFtbURD_m_ulLe9@p z5X$^*JC(iK=;@MJcCXvasa700a;IOo%ICUmzH{4AR!3&P`GgIBPDwX9>;KadJf~D} z({cZ%uD33=ZbdaG7Hb`q=`Xx+a8H`T_Kz=*q(ohMw7lWoZ0Q2a?pG`#^90sR6je{< z`@3vS2&?(}&J*5cM;6}snPK~v{r#JB%bb;Ozpsd9_~kF+_CHJie_M`A;Gr~MiEjqE zI>$G?S`wK#FCfx7Db{7qVJY##2#2b&i@XY3q?@|D)k@*20bFCqJ{RQR-7k%viPZ zEGK^$(~Vw}(g&Mg2&wq=TD~e}>rX1u$*673FB*oyyfc>T-? zd$234c(lyQyzYZAci^j@NAu_2`>RpjAMxUVzO`}P-bc?jgx~r8VKMt()m;H$Gg>a{ zu9>(p2e_{;a!% z{_eeY>g8n%=3BcCCI3xY`mcBOsb`NR4=3|CT$}Nv-TU?8yL;@G##J_D|2Uke;wUh` zb3)+p5aDC~jMwALEK>UCN9(3 zu9n75yFXXZ&bOn-X2;HcuK0U~nX!MmZroPVKO}U1)g;Y_cQ-A%FI9geMRSYBR~u!8 z=Qodc>|cEA!NtE9RoNKVp53tL-t2`XZjT!$$^Exfm7k*F{808n{;|OQcKJu|vfjQo z!|;agt^B`bkD{|v1yW8phFwwcQVe%K;`f#D`8W02k7`?Xn>~wfJ>T&E)})W|Vj6E# zmi`y#o4a-M#J}}tnzR39b@S|bG2L(agZm3~4z6El{A78MKp0Cni<0<>GtcIVpG#l% z-!bp<=|JD|#V3FI{<^ZO@c-N5yu++K{OsrJpQ$~ta_ax{)micUu7s=4?407}y`Oa_ zlandO^PksVwhGfNp3x51npWDW6#Aq!Z@!Xwy3<_XRG#ve7X`*5>WA(wV|Xw zf5lz8`6lwsJoQ(5S%9^QqJZ{a4f8-}qAhZ=-|8 z?ZuDo{FoafaDbU1;ZJnofAb}=ZJTCsFA{j9?xK?;;Gti$xO{v0mcaZi<~FkuWai}R zu2IoZoKqJl_|daYu>G;HfYN-KM+_etu3rnf|NUI&Y`N+DmO0XzGnrbP$|lRJJF0$` zU!E(*EgL`I-#eP&jroFF-c&8ewO5>-{n%D!YoE6~YnZ6AyRk5`Bt%*#A~zJuMrn96$A( zIdjI~l=CLn;Kvtb0-Q7RUB73=q^b8eWkhpr5uKvPRq3&@OQ_{!mEOPh18Xerv|8RU z_EFIJui=F3()o@r*Jm(&_4HOI$HZ`-_u687G^PvxGOx%t>c9oBEvsv9&{ z-FUjP>%yGY>4Fax|6Y(h{o6ZmD(`~dM}B85Ft6Zi$YGXO`{Z|Iw@BJI{+@My`#zRt zecx!z7gm4RA-OGF@!VzC6Z076yr2KfwJy)}bH?hYI!+6DWZ%|I6rOCkcgfpHck|u^ zT69h{F$xuT%U!bZ+=8uM+-nM!^6rV)Hu>PN#8xE)5?l|7US^D0`yk2AHl;bCKOm6suY-HBHZ+-Ro4yQ|V zLW9F^92T{x)G6S;=(A(BZ~h0h1^Q18zqA%vpy-@^%YTdZtDknWy>m`f^m~h*G!3%t z`f+FR%2(~Cho|VM%Y2a8d3n!U!CApms-$l-sBd*C{1X)ut(VWn+H(A2@Lq}2vL|v5 zc9s3{-WwC6(!n#ms%!B(+xjz&5*76o*VlBXSesnsUc&K1uk~#~yS>p&O?^?a{jPD;lIpwUD?JHhM%YL8(#c1OH7?Zb3;brDfKT`-`==xTYEfM)8V;;=e8UX zr_6nkH>WCoROz@Km~ug3p7E0j&vqI-oYShEJ+o!nn(LF~yjHARvPbLV@?Trplv$_u zoj(5d_MAPJOllcl6et|57K^!=bH}XK@`uOzzs>gp3b$=3W$v1&utsc=b!o??&S}*= zRkOHWP5u$Mn%SJQ>9^?Ns~Tz3?Oos3-n8L8rCD*uO>}2gL(`;BOs>X;$NbjeK%DxOgi29QGy2VLc?mCJ#%A(%qM*tN$}$h|1H|`JpN^ihm8ZY=nuu0#dHvH9Khf*Y?$vO@^uAGSoz=IG&{A(hd5@~BS5%9rBe6Z2bDMLW(g z2l;dy?ap$(q#LNfsJ>Z1j?36D^MJL%g8QEA?Pu&$zO8S+HLs36f8CFjCuOtiv&3eV z&1P!7*C6|$=i#(ha;N^kYq$8mca_C6!T;*4^E3>XZp%M-U7oYx;ekJw&b~h$oWj7c z=)Z*MzZizqF&S%gl}uZMy>z~2B{jL$@q50WV$*2L1t6TO&>~X2$*>!F9ub!U@71`|%D}+`pJyH=RxktM0)SarE1v8#hc`fe{ z)R&l|-`Riv@6xh*R=N8V;&wEg*6qLhDEX*bm2xIi@{28u_bQqyoIZx#P-%E8WYn%5 zrG9krt4X`~r9bjk95UVAwz;fb_HY5$sz1AHF0b13{on2W@?`HvZw^eAIVHJQ2LgvUi6IZylB`+Fya^FDGcU2y7Z z;J56O3Nc=psT$`K44Jm1=Xa*xTz`+%)h*TQ%+p=7x2I3%*e!bUPRUd&llu=tYZsKK zM62i?{PSgH;)Kn zs7RAY66u=|QYyB<;^aAvM|q;@TQof0Jxl!fcJ*`zrKc%}D^|6d^EodxS$OK`U7p34 zOU(@r>BaueI}&xAZ^Gg2I4*2y6E9ga&fW;u<=?c}DP}pOIC%+;Mxa zQgIpgrORJMrCBE)5PhZ~7`MgK&*}6d=V?>l1pPeySG!U);fu&Bk0UbQuU~G7^_srn zT*SrpFF%i_I4r7abT#`RFk@nM-1K`M5d!@o`(KIW9o_Txbn~Chwx9GjB$|IsWGs|1 z;1394`#vwAEyngqfl2LM|0;6_U$54rO{crher{YnJvVC0?U0VyDay=JOKrM~`&Jeo zEM7W!_4DFh?&}jwE7iBoE?pF0p#0eHbaG?1>h6g}RctKm%fIiLaJ4DAzT`?%eZ)3N z1J$anY~8#N=1$2ujC+?hs%o&oEK5j|8wu3oNr)5 z$&zQW9ZItV65l(uymOjp*2C-|_I+v2AKuO1k9_Vktqsy`U$=9@D&b1&Sj`m-Q{MN9 zY`*Dno6|nzgWJ=+bGchRZwX5Iw3gkuz@7DncP7&_m!};TQ&p=cRc8lIeBt%=xbu?$ zjtSo%1*(3z&B!Tr#qmg6#sU8eu6OTcZ@+z#{ce%g9?{*i8{)RU&|00nXT5@$ql;vW z=%z}6(;Huy1%6w`Hm_OvhBWiFiBsx7OnN_&M`K=!s^F$GBS4wc?d#`UEAtHTREAS5mgR>ZWb&tE_JSZJEflh3w}&x2<0G z&FF>Mj4r3PWqfL_&MVazN(z`#zg(&GU)1?qI@;T0!HlOY=UHF0PYPYMx-sFIVL+(I z@$h%67GyDMhb8<~ns;&;Yn2D9b!-RQizt8D)X1rlw>Q7EKmR+3pL!pRCslexlc77!X)`e}C)La#!^^o4LCxqCP&_`lgYq!t%_@o7Vix9Zbrz-p@YxeVe#`=G4H~eQ|$V zJ>J_-eD&tkjf3A8+&0&kXTA02vsG75_WSSL^Zs_0_tX`v`~Egl^!m z?CFUICLHN`DC;wSPvUG9`6sRKt#lPPwfX4DPSR~ITdyxax2|r}B8#$|8`y8Y$=H0= zpu%mwYU{HLZ#ipKo}H}od!4c&nC*^a*_2n4v+Z}Ey}xe#*S@ul`8N#&HIF}?J2mR~ z+SHHzA9guDJoniw^?dy4^#`+`>~>WY`WoTo%ylcOV+SEDu>?$SE3WZsGS(d97oxbS&Q({uE(6S5X&z!PwPM$GqR?UQ(9iQIbNpg?7 z#p0`Y zUv`x1WES_maPheR=*fHa+)efGHj366tvi?A=p}Xc#g1d1-G`Yj>%t@Z#tQym*U!S7DnI2|IUaj6Ssj&< zX3Kx|<&FMD^#Fxw_G`-+H1>s5-L>1eK9l96P5Ii+AG5l>oZA@%)!)Z*&F25&lNsI0 zU2^8f!Dzds`)+I8;mkAt7jXR95$>s==5z|fHI@IQ0)-+Y1d|Bs}6 zE?4<%n#p46q8m`e+BuEoKy1R^myuojnw#eQt2-8PC8YM?yk*Yr*P3>o{4!6>Eh+Jb z?bPgqbLM~ZF4)YvlD^YXZ`C0#w{JV9eA#t8w7+}T$@9}UTZ=I8gbH7ef46>4{3+3I zvMIj}*Rn46@kw3Y>-X#AYo2MErO#Pv&azChjjFMIqsR9y>Ufa1?<~L6<{+&$FO_)5 ztn#43W!EI#yVFE|n^rJx3&@+aOlZv&FPC|Ietdo`p>rqHl{EE-MH@3utP*HsZxz>U z{5;3Jxwv0;N3k^j6HaFpmCr1pD}Q-&ZTNL^+VvCOldc5v%06Q{{%_)zhvsL(6;q~E z#578`sV1j)FZnos@|BNM|4D=hrRsk&m>m90Mk|&7&+>a!ZP}?3(<`_92$&EvkLlfB z!`Gi@F22d;eL3ntQKM$Bms_?-VMy@V+K`&2M$X?1@>e$JoJl!UGEp(1d5d7Mz5b)%xY28lC#VkEPh+=%l>)VJhMtv z%hY#I0Uou%U0G3Cqa&uMaZgCZyQyqx4wxyf{f?S~s%9;+nA zFOf`m6#88-$@$cQ6a`j~&#zPEqg7LL5B{i|=8*P##UH1YevOJB1kY*vF5R0~aJcbA z*?q;D<_oTqb~-A}Da=sKOmXMp{S+`MUO8H3rmR!c2OIW#oqCC7>kQeCC3+Ogcm(H6 zs{AE#^SOXZ;%r&wSjH85tA49+T%Q+vQ?^E|ZjNNe4!4?1KW9s2zh-XM<9`&IaawTJ ztH!UTe>a|Q{(7^e?@zS#*L}(P8Z%*WX*nEMXO^)?~^(GU+3LlxGvv$o6Xes3bm|jr&cW!pS>)} zFK@>r1qPnt))NyinC}vci=Msclvm*&&mOZ2g?#Kw3U7LDb{G3yc|~*og80K7nu<&S9D*AUg9`tMj=l zCe14B!8#WuKglfEnY2ur}!?2nHFp=akSqNSlYeJ_+a->-rWi=drTJIy?B*hD(U8q zkdU(U;JZG15C4w-;`cdoVc*?+e}{sM&MV2X)A$)hm&Px-_e$3>KkYU1Ud|7dCwKcD ztdR3Dv||pq#&*g#{@|?XvRp5{U_t z_gR@4tvMFI8wqYpHrPybU?B>hHsTX77!gmVEl1S|{Psp_Q<&fUHa&VS;UdE2;{Md{-L zSrhJ8c@4W)YBpiC-yd)CFXYRgG|xG4+PQk0B$vuX+Z&ZKoz0l|+Nr*zeTie) zuLV<50yi=U{S-~f<_+NrTUmQgwD>@{0{6836L!VsZ~KpQI;?3@{jq0;`UAMmd`;v0AHbns;loHLhFLTGC|BaX-NL z0Eh3=&5!rA2y!=lO+N6$IsZv~z!c_C>jMQWO?JhvUjDLY{2yuDxpC`-YYq$yH4Fbw z@9q7+c;^2bKg@~`MmYSAj5IXPNjM_Tl%UeE#O(!}`nBFu*WQS%Yw%FK+j~5{ty^v3 zrW^Cy-Hs>pM@Gx`^DH~q6mvYKMIg5Kq_4;Mu#$!Yq9#{)H}e+vAHMOh$|_h1i7O6w7T9xoOq-){1ke`!p|xOXmo zIOE5Ry$)@cA7mt_wUSBMhbIotO zky>kEKV6~qWwD*i5r>TBix(a;_`rEPZE;e0&Ef}L$BwWqPB)2v-Qnmt`NL(YnQfJS z7IA3whBT(~?Jk(ilWKD&o7pTi=;{HM73X7m^xth*%w{6vup--b+4QV%!>PNSrC;2}8BEw$$#>UONV&1h~ z$G4m}fA#LpKhJA&^6t~`+p=8eSdi7bp5wX50-a0yl7qzcH~rI+?_Y3)^Vlv^g#@+i zV_wd$|3l@y-Lqvf(N_E zhXkKJcYi0Y6uEm=rh-A!^pec=46}1@Hp`t@ z_|Ris#@p=sk(s_l9J!$zYLBYdub;0wJvgrD+P#+-Y8Ef7Si|cfD6l-|=%jwJ6(-4r zZR-EeeKGbI4_i@5PgA?h)2c^`t(hu5jWcAk_B+X5Gx~BsxL)X5|E->^W`~Tjt)+{U z4^CLnAd$QGkJ@9=3l`PIZ{EzGb1Jj(^K1KC7GH1O^LTmU>8T>VO`4vP>WdP2El!0W zzV!R<>M-Z1nK_md-q%#zmI|NOrs`fM9VuNevU|CR{m!7H#~ly-P?~@I#?p1u7Mzt; zvXZoH>CHLVeLAP#WBGTDALb1mNgT)SRxpSy?Q6Z0y&>nYjr4?+Z&w^mGqaYYOL+R; z{JQU+VdeHSyFY(jv9D)GmkC(oZy7R1&;FDW(|1U^!`gy6)Se)B} zTi@P0ebTAQy^59Lv-d4cd~&EHfR$D-8LsO&EbV-yxitk zmqWr`Cwu(em;5ZXUn$5KzjvkdnHd6~PlXj}ZOFKx)b$|G!$$4mhZ~y9vX0eWHV>!{ z)DFr$Ge2)%bKcvBPhVY}tfart=my(IPhO6@9siPSzf9fid(|%F@4(=g-XG&CKoZzjZaudi?uxyv&r{^((qfu5`_dJ{eYBFTK{FcZvQK!R$j162w=$ zG<^6ShQ~HH0CFrw+p-Lj$O1!-F^Nrr}j;^#cw)}sQiDoYEjcZp_jHRijCP1U!8ht zZpqD0>t)(xW#I!e@g`0zDZkR--QY#6fRBOC;Z1_a>UPE$0bVtZmL~1RrzB#Q%&CC&-8T+ z%4SZBnqQQ!I>O**vt2%z*Lv4wZxyep(;nnqsh)OB*yU}M*BItm35ey=c66>l}qlW?UC74tnz$Hz>bAi zDbeqi5Q8*G^L==9QsQN8b0KOJ9s5=C*C`dlU3CCd)#& z>GLALZJVd7@ON&~{-byFqwKs}hDid4qr*&C^u3z>a!y%pvwME{$^6BSMbjCd{CU5E z<0CIa!#jKTaU9uJg`0&v57C*_t_T9PRYm^W#Iq1C1C~)pptDtA7o);x9D4@X6A5b>}>Y9;wQ(vtn6hLe&`>Z`$|wgx}dDp}lmD@siK(55LHYcE;5v zi|CYH=Ie=8lfNeLxHkNQOnRC2yRPlt2g^5VHP~F)z~h>~RJnb}l5oYt_{fx)7a-dRR7Ab`%}qd`HP4Cr?73xIc@WYTS55YZF@t#|M4zg_W0IlV^?Eaf0QgRTXk$n)AHjv;hW{UCrn;vw%5vV8npC zzsD*c>&RsjSFv0}>1h6<>oa}U2rqgjslsw= z$Co1sDRNKdU)$A@yy@H=y^4i(5|w@RHH(GHZ5F?)bl?(Cb1C`rsB*VuMq^~VQsES( zildKy?^}83#~=5;oAdOSZ2S|gR zCr!A!^2NP%Yo_ad3_hjV+*o?-&%Z2}Fm6%HMSoXEWc|r}#lhNls^?F|`O?1^o`t<- zSz>f+kxP?q-qy~v4Oh0*`oyw-XJaUG*y4Y8-GxUM8+1P|2sNCj$M?QFF{jA%{<=kF zx%Rcy2De#ZNku77<0p!O@(q9op*Yezrri?{KMu$V!Wpe^^TqiTfas2-yyl9H z<+NKzl#k^1Gy3N5+i}9dWc~${eYfT)t~+jU-TVB6&q-dJo-s$Al-6(0w9eEFwz3hw z-(6m_`>>UjgS=0j7fapp?Z37%9R4WTZET^OUA8DAQfs@PO^1QEM{2ll($NyV<59V3 zKQ;)5xAWJVteCW7QpUqCPrvolFR{cSCdhz1cr2%YCMJ4LL zcsJfWy|T}(rLOAQ#r|}QCKV2QrG^BT&)dHCtns}$`^dK?8eb=iDBaVO+j^w`utlu@ z$uE5(PD1H>gx2;}obqX!Ava&b>9cG0GiS^0`j?hEX3X(c<@M|yQZYt0@w<-f-c~Kc z_o#2G!?f(bO~>cjT;I*NdqSVWu3Q(U&MU9JxzD;;^RBLM>CF|_6fWp$_4S{!IR9Yk z?Z-)Hp4eO zNLzLJ?ut-$+Fv}~-eUiIP4|DBM7HGr&u;o7|7z~P_OlhO-)AuYOEvaNJ>TK7z-a0x z|E=q~u5U7CIuI&!Mkc*c_=rp4$3I2K#rSXEe_#BoSzk&ffPX*V{(YN{&AY(RlUcfc z?hWgn&9@S>e~RSYoHU_8=FGJSE~XGMPVE&h-ZWom{Awd!`|#=~9naUl`-PVM<<-ls z^qKHVd8T)3o?&Ou-xtkGgIPYU@AH&yHC~$TuJOHX-^HdcsSe)nyJkze8S6($h$emB zV=Z^HW99zBvedP{%JS-Z`?SyZ{9RN1#cG-R-vbv|v?dg!>@=!iDxc3+wb=IEe})qa zelSb^=R30YyEQ|@qxWZefBxURKL|*E zeEfW7EjM=&lhb1lljO@hUtbx-L@bavIskt@p>yi7C|G#MGPwBb5_1dJHNl|(sw&U{f^hqSm1l*&YaSn{Q4I& z9?Yw#U*`O^iyjSc}yYEUZ z^2a=n91}CxykqCK)P$VRb9+|XoDlozVK`S`^1QE&W zQrYOf+w)b~%$9MAPW0Ou+VCWXX=mt)qUEKPRzKx3mCjH7rjqq4o#k3*^lvAYFK2c9 zg)8zTwSwonak{KdpJZwyHEE`bY)JaL{p)A`ICX}_h)dGzj`+VzvsRyA2+7?)Z*u3y z4&$oq%ZA#;#||Bu^dw;Q)J2+$(;qY~y}i9~S3%B$4GYDeZ!Ft%S|y%$h04ntzS<_q zipO|Z*psgwSYlkH*_i$A^rL4TW*UqSHn=k%z03D-FY7C7Uw^NBi6BksXTpVTHFI}b zbE+81EBOa;oUgm}<)i+z*FFut!Uo~#vl65Ch!=C%&dIry#pRxn*}Z6+mSEA7tit^} zlq5dv6I&eqy4tP3Xm-fi6P6)d5po6lt{BIJys=o$;r(#4h^x`BmvXUJyWhsyn1#GM zv}ld%owIhz)=R=S=`}ih+-%@_thICU+d!e!b(|;G?pr9&^+`fYNcVcz0%g}l2FY@J zB??Qwt&w%S_%iXKTHJzz%zJeXfBa_naZB)4rW6tXr-ucfS}lIE(njL)Z|k@@kJ7%B z9g;blwOAoi;7yQmL;l&F2YTXfC@61t68_XVOF*W>c$sXI!<~@x>h^^jPV)-q@XTF5 zJt1pd#^#e7ZrSeH%pLpw?d$Ci9-Q1``7`u)qVUTj<(Iq4O?AF|*!;Y4Jo)0z4R1dG zU8H~a*VY^s(TI&gVtN^*g7z%NQgVe_wm)!i>3mH}4$h-(5fd?yvOq z0>{MGm2vYiIQ0M6FSp~*-;ebcXL&^V!(Bv|tnV#uGs*a$H{nKag?6~J`12jVG7}38 z(!5!>Ml;A)JgYjigV*raD-licWX6aSU5#pgjZ$9xaI1NC)al74UWLj{>2*6d9ld@@ z`)k*A@%88TuDv^L*N%k_dtOhAe=e!(|B^3QUy{#$zMAkpqumT83+>(4wU__8Hf@8K z|HE(hIy#<6S)DXDouK91?cl)osoVVoS5KkvBHx`W>*}W_L@i#NvGKR!`>&J+Y`SEu7X3=Z!sBD;?CAV!y!ja6qn>Nfiy)64m&eFS|EzU`c z%Fpc2P?(&sv8l}Nb$i+DCid)Ij-Ql|c>26+Nt9b`^qA$;OuIUp!#k@JtdDwKPwJYz zW)f#d^5JdYo8|XPv8VZ4I2(qGTGk^L~JLq55`_U{>$YKhF(kFYUSMS~GR(KC84X z871em6g8cucz4IBuy`e%pP^H*gf?|Stq?~R_K^26VUye2DpIPBT@C@5X+s>8k_ zol{jl(Q8*$sn2pgYnvRbl6xqZ{^KNjPeG^VsLJJTgl-H-7M( zaa3e)*z2h=mx_a4UGmx8+W0D2Yx)jPHH{-$-N_qmuD^Jy!p&e*dFx5~taTdGcczqW zyZGv&t;QDH&D%70gxyt`zKf-fONjkMMyJCh>-`aW{Mkzz>Qa||$VyUrch&0hDz6y( zx5CTcZp;5^s-aQO{_E-b>B5sIGQ=%1^7GinSG%I+SPEOw^i{iFbJs3SzZJxEC_^!f zJxTk2kVjhnk{9q-NWYatoe?|f*kbE$rozRx0ru`ZDr^z4XaaA-_6pVUMP}b zF8krGsQbz8sA;c%zRZ(W|L#}1aR0swl@_tjoHi_dyiJO6+1b7eu6IsH&*^=Yn07%c zd`Ipzp1E;nlI~5|^Cd6%obj(05e%yu9Fv{GHsv#AACl-?zanu(9q((&uPd{y6tegq zURZMG%)zJIrupT%^KV|>A!@9ps%PHntGH72c*5Q+u4{gIUaz93ZrpvjEaZ0YgZ}3$ zt@{{kq7p>r{QY%f8<=!tDkHTJz>v}c99o0$GIc=BaUa~ zO`N&0T(gsDTk^x*laK6iJl9=*?%;*&C1p{{O0#+8MU3ZO+vC=HyEpyIT4}GhSHxO6 zy_GnGA8PmfS(H(+^4g5%WeZexoqYAQ)@ypMk3DZ{-*rJ<^_%OAwoZQP6ftRbz=_4u zEARaH;X12{=Q>Nffbpc-FS0*YZdSW;@x5gEqBuvPIL~MMCbA`cZofQleofV*S8nZ^ zeYY1hm;B_oYY=sIpM|l@?-%M}>Rpj#{NHZ-G%nq9`62hQnx(GGU9Y@%uwh#zV2D?GO%k^J;(f3%tzUb$j^#Lz7?wvpLVY|&9e=U{ycf*(Ita%v!S9reWrj=gq z4xb`VPJ86KD!k{FV`Wyhe78_`#yMG2gT;*r^ z+OW3uQ*}=E>#I7yE)-o^ezSW%kM^v^qx+Ftfxnx>)K zjIiE!hb~$uvCVQ#IB}-i+G`(kvCvQMEh*jEHm?(ESOT7v3u@f1IB5JnfN$cVX{IYD z?qIqz|GL0eBP+hSNfQs8eQLQodDr>>9I>Vq5prig@Sa+eeNHJSIp6m1sqL=E-%@BX~o<;4);`V~=$KLImEPJ}Yyk*V#T{7Yf9hYbStx0&iV*}@l zQY)VKU&WPbQ|7q@T)g^vYkht#ySmphu?qs3Cw-?*a|5$Tga?{%{ zyB?hs+EujOzQaI0x?js$U$x+JlbaR~+s2n0<fg3jUR9L6wG{GeWhOIEFXRW*Qm?c9rkm?lr$bxw$%1d=XpOt*^XNs4FBVb zKWQmVNKBHCZ~3@Gjp5d$UnMhzHrBe=T+ZgMX4r7NA#t-YXIja%>kgqWr9{tj=Vogi z6}S|l^to>3+_U{GRbrdj|8VjA_O#6|VB4I;5UcY0>kehsM)Tg*RNuBqW-U$Y&ah5S zFZ#Z4$&R*=NxEMxZhug|{@~x1)!S?Roc~M@U@c!!F!h~Jf2L{j@_k1q&-RJ?yrApu zH6De353YY*6zO?R?U=)xH(`HE3*H)swQRON^yKZa3ukZZ@c)^TJvTeDPAS`|a`KaR ztXV?O1lXCE?rGtQxOOn#aN0~WU7hHu9OiTi}3) z*^;%V)Gr8#dOkAW=W^u2g%uSoj0vHCX`%xVg$KLbXJ0#XE zYf_)88YlltIC5?aZ`y>G366(ZwQ_pwUDA&9E(&?472X%O<9DQt^oDH{bDWMYK6wB3 z?k$?x+(+J@cy=yi&Q9mTNEsjD%${4EOBr6in&wz(c%r*jaB;86omsPm8xvUn-eA44 z^!4`CwfrteTe0w?_Kjaxl7hEb^k6uaiJ~t31yzI&OcTS?NHY@%$NFj zAxD+#%g6g(SB~9p3=rsD%Gq1ZU8x>2{q)1LDNma8oVvF(8NS}>Xn3?XOK$U{$GmG^ zepnD0!)4)FRZ<$Zgsqg$*x_@3<{Nb({ z)!%qd?JRqFb=I$)i3V%b?O8%Pq<&5PBr5jp*GXUnBRvFnP;l1g1(U+{D?-zF~m)m@L%%tu6VJzw>f z$8GI5n;XmZPIFkze<;;-W>RGrx7M;~0Y;7O?~F^HxKF=S+0xy8{r*(nT-T{Q*E=+)?w{HpacY-9^cv$uj&7$~-*bg@ z#8k;=~-C%wABhN`wuV+d&^DjtI^<86;z%0=aMR)*oQ!iTk_S4j%*W--Ykz? zDq7rk^jvR)W%9AVe=C-q>9E=tn&S4ltg$>{-_yPgCk6T&%+B4EV!N{90K=k(bv|8Z zuc+EH+-YxmaMWtLcf+)rOumy2LQ1t~JnQCO+cQO^a>mY=4rYdaQ~5%dh+H_bZ_5e& zTXT$#R7=`LhI-a6;9T(`FJlcS6I=GotBiX!Ze>=_UfDNSt*XWK)09mYytY*drs+udA=V$qz+2O?^=2M6XS$~^YetkX%bce~&Fx6kokfDt)yyus- zJ@HDOwu{S&JKpPO{Nm@hboHT))9n!MX^9@k7tSlUb(a^+d-*kP`SFR$x@*)Q9NgV- zz;5o%TO12ZZ#=oa=}W8A8)+Z02cPCtvsC%dn$^t7qUaZxFlTCd1ef>ai?RD|KV9@* z{nUZx-FtTFM@uHLIP>c=8cmz`FuQ>>UVHzC-?ICxR3@Btl{nk^N2>hZNu6c)^ooo0 zwn=_U*|5nXW@FB@+w*sAvo87etj2vtd`{%~yM@}!(WB$2D8VZP{`W?qoeMh}^pHn;2+ zi0Y-i{W9ye?LE8X{JhM6pFD3awX0FvZ?wVrpyl~Y-mC+aVKto(8Q$Hg|LnhT$KrhH zn6ioX&s7dgoE9y6E92v=@|lrx6?0dvk(~a*CwnRPe_^rSWP78=m*pa}f18K!{=cRo zo1=SHMl|=Imk3*NQzDxN#IxG_}D<{uh{qy7G_eLwFcPYJ9{P)f2n)V-?+Afo8vFS3OG76qd&+(b= zE%AEqj@ri=`z4;Ny>2{r=G}>BIWDrjQ}^Dj;~N&85_)aMU+&c9mN`H4 zSeiAV_&`c{a8$*D*L&^cuNHQ2%*pPHax_^cyXdd#HX{MH+uv(G zbmio4yI0*PkvKy$Mmu*>%kl}+uXlZU#8O^)+p9=+PhU(=Q0~c|-t7~Qy|uf3CjC_~ z-#)LTF4wz`f4kRz;C7zD{(kv}f81s_#TqC6ICzHl;4k+bPq=R^?$FPAVH@_3Y1fLv zX@9oN|7McrU_amC;98#N)h~9>-o0=8*Cn#DKmHz)bvup-@&9uE#F5SYEAsM+8*^r=uIBZ5BXl$SRTzio(dP@%42-T;0-AT-*W{ zb{}r|eN`-wRn=U3R_w{6?EH+*tY(`X8=6mxaxXi`!w@k!-jr`c#&R?Bw3AZ|(q{T> zzdOTRu&~N@?~40#N_U^DIr~Ge+HUUaX9b6tT<&nOXSpS>-D-bp@5duMz9q~Fx*D)= zhssK|O16^9&tE3Ib8eE^-%y~Hd|=v79mQ31ULK!N^fpJNVoys=1)q#%_TwL`LIV#3 zxtFfhy}L&z;@!hDHEgz8&epYm^p5Xf&oi(8)66(=LCeC`SFgS@G_UX1{LB7kN96hP zEsK7=^tIgZZ?%32`&N@RB2y;Zl(Lhqm45feq=daWUd8m~;#Zl@k9{RB#B*)n)@gED z{EP2(*~h83-&^gKaNicPYjvdft=yNjceup(vYHxp-(JU1Bh>Rza7SBh*k^{IjKFo@ z7aWs$cFobg{VEs7rFhA8jdHoZJttmSPFUT&NP9}(wZDG97Dw&Vez#XZ?$*WM9jrmG z{AX}RDmW%Y&a&BMcle%dQm71HKxEzDTlq)hcpDUVsmN^Kyj11K&u@RW{n~h+yY}!V zp@N5;`D}InlIHw#UUB<2yWrAl8^cxZiI+U*gp@R>y{z5ebFkt2zP+#89_UY8zU<0D z=^r=Lzt8s(I$}NTh)l7#-xT&+$HLw;`#m=BVTpRT@o~jWc>&I;Szq_oy%an2`E@aG znnKphDQrP!+85lo!@BFX{X@Yy=g**_BXw3HA9(8E4OJxMBm>_FKWO~n=D;ZA?h0NNbG{d!3aHr>U zvkmX<_O?_s&s)Vlp=H5D?>z>BVUI2zf0-IGU!~1?YtVJ4CH~ixR;bu)ni#GV_PRCf zmjwUZMc#{(H!42Td;MaQ=hhI7?^l-81PPj6`aX5eDgMP9zf^yDFJ%`oe|i4Yojdl| z^S=8QE;lxihPxKrUUr9OztmE!j<8@I*-v6fYf-kEKqJC~<5la6j_54=y zhm{`pHRJDn+hHkYo2@XT#_e5Lpx!!h`?d4fgLq-d7s-%sBIQDQArndzYcA)`#i`CO&D;*x%~!zmk5apj@&be(Uds z;*X*lwhE?gz5){-9^B69c}cJ3)`>)m_?S7~TbIvTyQ;YT-p)(wzfN3Xu5b55Nb5(~ z;|UeH4B!0uzq5G<_}mozACkRPabD;AZpRRT103u=HG&&9?EQQBT-=LKZe@pSYJ74z zWoB+P@%Eas?X{xOs^-nLvL8LJyxj4WZR*hpw%gaGq<&@(w(T*Pyd?2O!YM5`;d6`X zPF%QQxp|4f_JDPhtD>SVo2Qmb@U>1|V#>`ZaKq{j!_rX01A<>)7?j0I)jziJ>C;j< z{5iQK;;P5a=D$i0B&<6(PhsqsAlcQ%sNSaew`05P`=k6tmTY^Or^=XoPCdgR8msx;{OH9E zPq-a62<4Z)`C=-ndFut&RN2?h807m7J~(mPw5E8P^l^o|7gjw?=;~X-#liFMNy-lE zmqLF`EiRSD*>_4e+jYKu<9qV5M3KGmQiXp!`)Ufeb?P|2OjBkxN_TrbkKJQ?-G)bN zO#&Rtf0i}QX;SYxku@Wyr**4<_Pzi!`Szm+x$&j;=}En7ll=}>y$P8Y z*WKr}B({ug153=dh&9K))b5y_8kAzj`T1z?oG9@F_vioE9n3M$?TyZ}ty@ww*^AFt z+^heq{c3|jedmjv>>u3u4v24Sdr{k;W%p`Y5?5Ln=i-gumtOtq`(iP?|qAIebcE@KdaMsu~z%-3WMxB z+^5rDtY6opUhbV=GtvCW)AsxGr=(xiuhdwdsdIkY>#SK$;k7JZeROUjxQ{d-_-cf zE$Htz{roP`%Bxe9{r6>78*X3nwR(R}+09knU4dFHBK1D;g}Gw&LD#NsaJ8*1E>X^_ zXK`0fQeLrqcZYKHienS5lyUY*#%uDf_#%>Q_>}j_q!rvemw7f$u2Vm@lkZ>CeBIwa zCP(F5doP+--jN$EJJ;|lGt1NuVdASBR({NK-cX{H`B8aGhTa~*84d4b?#pF>YEEIVj@5ztm&k5c&N^y6 zc?MHTRsZB;^LWGdOFdnk=k;kxOu*mG&BsEb?`SNX#=bgg&S4W#)%(HWIo!ObyjC_# z*VXQOc`bSFadqa1=-e0Q3q7YjU$D>8Xkz~f`Lv~H1o{FHC`7Kv`Cn4&J+U)vOQ&ut62G5)4 z%+YHv_WI|G7Zt^}wNtL|+JE%g9P#hQZv^D8g}bah`OALctuOMvKT3s@*Zy8*b=ByG z)bah_rrLjxyjRYj^p0Cybpp2;U&+Pu>+`2DKAz#YTc_xRgugb*nHIOLHv^*%L{YxhprY<;~+RQwsl*QC!4zULa+ob;ja#D)aa6 z2>;Dgs=9J__5Uk%S}~~$N=ox)bggdpmK9K5>u@%B{jr8ccP-_MQg4UeIy5tCovr8G zo6;V~nGe6Sjr=RgAkAegXTukpc%$FQOZZoWP-C3_JX?QLJ+r-Ua^~7k5WD>6(cR_y zwuG8J{FJ}5`rA?YA8A$ITA2w;>RdjEykXg+$1}ZKnP#-j=INxWBelP2yjE zf%98}UEu4RN?IS9gxzWrt({r7JCyxTyZt0Ye#v9W)&HD~_K9u|US=Ko^xsvP(^CF5 zh0MoK{|IsX#Cd4WG}+s7I@#8LcDh# z%JSvG9-$TI&o{&zP}qHpdF{k)Qrk7|KNJ1CPH^%j4ol%$W2e&WpIm1v&Oc3OeJFI_ z^%75b^UsGrgQh)aI(${^WRm`-+m8*ox_-E>n4Eq4k-94Pfr*v2Y&!G3T+VXtP*6*i z+OQ(+A@{U1oK5#HuW0&gy})Kaxb91yBe7swQ!WQUtx}SQOP{twdEwTFV)Wg$7 zyZ%?NGjZ->(B{4Uf&0UwynOKPB?` zA@1dq;@m~LbS2;XaINl14pRCOoOj@Pt9SP$%gd4uA5Xry)YT-ZGt*@8LB_q!Czv9+ zl_vZS?we}News^CRx`$Fx1xd8@fC6H--7#3+$&LKaM>NOc$LEQZ>QANx^^xr{kn*w z`;i1|As3si%Cv1$7VFsl|KQVVyx|z1Z_sUy|9o73ST#3(urAs(aZ*Qh?FDbm))U&x zcG~EaG%Va&ylT~lf7z;553V~kuw9(vR(he$@$2HBJ5OuWwQs(0j=6quBdewT&-m1y zDK0DiJQq^*VcPhXeSVnt5AWm0m%Zh_C1M`BqweO%ixDxg41L=V?e8~W_S$!@C^IR1 zj@zB9Cp7K+!}Cj8_`as5DEzp6ma*&R z7S1f!^3XUwZYF*q$%*dV)?2@-nJtm5*cg26l=_yS$=kPb(WeeDiaQgoeDUzZ1&!- zd++(%$j%kHc*AO&_?>U-nsk+a759C(`>OEA><`~>RiA&HBbpEwD*ScnmE^5+nU_W*j-l5 z56bl?uXWrRawf3j-9oN}a+wXLc_F>|?9W|q$SvIPoMZKtyk)|yGG-+j;5pf=mo;aP)X`f6*!>+Y>kPV-Cn3R}B$OnW5ohq?p2??{Brm!(Dwv zP~RHAEg5pHFaF0>bOx*ad{%hsk-Er61==(B9aYnQ^1E}!D^ufss}0>V|4FUhT+G~ePiw<$5&2illQ$Xp za7_5N>+~vSiJm`>%8eTinJp9j=5f>hLEh9)Csyuf-m7YFy>WHbl$6E4nmUfUyW#QCn>n=ATZTK9&v$-dIPK1ChJPi*&| zskpx_%p!Q&O9dYHkPL&*ug@&0Sft<`IMsRMxn@C+7ks9NY_1x3R3&Zl=(?rfXYDSd zJiX$TPO-*=WYzoIJlV7A!<83G+?#&ra$Vc`CjwrVTF!j-cqw(n-EH3MZQmEnklii5 za_)sQp*PfiJvRK4UD)AYbZ@<6Vp*$M){M}Ub3WUS%qv}IdNe2a!5b5C}% zsNL&4vgL#M*jNnZ(R-ey?3s0%)ek; z_iwR#<{I6bKTbs5W_`Y;x&wJ&#jl0zNbCRb6mBB?P22w z_oUkbE%~_30+NPrHS%RO>`LqXUyUuL>c{I^4Qr>6Db{(c8 zb9xr?ywp}bob%M++qIgr6N{E?IaXogo%H7eCu`W7Hs=@)%NO6GgxMyvdem!*$Xu(=PnR}M z{;~YNms0upp7ohAt8M(s<6Cb{k9y5xRCM(7+zmMhL!9Qic?D=D+&F|vR$>)i!Dq0-6$?(CMqZ6xwy3Ysi3p^#uHRI>i);9rc zJGugN7HmlW8m743Az^KZZquRoMIr4O-da(~tXc(${_-`hI{jjE+>hpm2#JX}Kb?H? zQwc}1$phyV%Puam^m?D9dw$u+dF@xN*cKzIN4_gG#Oarb5fk%y|4ue5po; z(X(UAO7zy|G*rFXoaCd^bJK|BM4 z$p7D$PyTyP6*yPNc-%oa{ zTCZZ6W8K03rf}(8R_@S-1OEGUxH}IWJ^LnCS`Stl zpU4q7u&vdduVBvMCFCn-XjZ@Li2cYA8F{we$zK$l+o*7mSroxVowh1K`*s_**(lV ze&?BSa0wJ&_UVy~zN0^#eEL|hm%w!asi}PHm`nxk3Hytg`5m2nX_X7><$gQ0?4C9a~71y509_2Co63}@;*)yOp%Zzgye{XWAkW81mkyYIF2a{It zmIpAGN`4hv+qb{rLgt+8$Y`Cj?2mrGj=H?eR3U8U+_0nvY)4d>Cz`H)%9aq#uJc#$ zLVMzC^UPd@Ez1j?q_vF}WjVcI68>RaeX{xawz>Bobl+b3=xNA>y|3;>Fnv{C_-&@k znV;Tbch75AOkV86dP7M@w{Hj2w7>FPU%Nx~t-V76mp&1kyfy53%hsjSlN1*EOq|pg z8#R+{TFa`8sv`|=kDUH;waJ(}f@il<*oy$R*49JY_*J((+9aRHKco3+i~Gio-qnx7 z@0ZboJ^n{bWWD}Q#mWUha>iofaeW#1zjg=fvzF8$d3 zN_3sp-BZc}vYoNlZP^%uKQ2wYb@r?Gx`QEWh3Dqla4;FK@wQ@RwOqQ#TtfZvTf4ha zeM!@M`eiKZamm>iMpU!4zvTF&Fz571bC)e* z6Jm`s<_h(H;T2Nf>US%1fxlRo@k)7Bd-0o*mTQXH|7X@5*v4o0MDJA>W2?mx@tT;; z5otnvrz$2$J~G+$t3^hAdL@!YFY z>umU+QP^H;qO7ot`)i}Wp5D*Ra%->U{`h&~z}aJ8LlkVP8qc|2;pv;k>zD9+LD<_X z6Vf-oG2#B+$hJrH57WlOzpnPNT}j=e-m$w>Ki5BHCVOiJx^Zb~wDg_*(s$K+7fCF5^Y`Il?`q+ z%dg}9$Krd$GHcC8gXg|-`EBoae}2uqOuPLq7;@Umil+EmXBrAoZ|R!-cLUn z!O7eDOE=BTo1yx~&2DL0Z9Y?VfAQn2b*X*p`TCZf);KzQYTj+rZiPK8+iriCKenJZ zPC)Bo{Z38?Mh1a@&WAMq)(ZbVf1)w))T};kC6ANWUY)!c>DI>47I0vNR7n+6Qsue2 zv$<;y7Boeexn60R8W@`R^U^ADm$|Mzk>{2BuWX34Ilsn#MSq&_$y;T6Z)V3|zA2yG zr*+!rit95eCPBLw>xKXQ{mj(oe(oM??$_d}+q^A9=bD9?n1=l;Wo}e|&oC)$o$>Lr zRS^@9?!IcRFzI`oX8y)&Z|wwaCi?ZrcP{v`=G-(jgU_KCgB!e*vUbn5o3J%VKj&KZ zKbei$u79d@pG4V7Z04KV!_8(R5>}exx=Ueo|*j6 zUn_sOkI~?q#`&nlIcCx)0Pnb6`S#ne<9AGaob&Sm-Fj0O2Nf-z^Ghc4XT@VeY3ZTq(N?+e9e?`E(o zSZOn>n&Ea%h4{bc&- zA8&$`r%qe{Lr%Q?<{JKg1=pF)nP;7{$bELmxqC&<^@0T(uj(v1@@?0%&ILw3R#KWq z9}14MwWZE7TQBlbFyNWBM}@xZ&yzc+1^1kB4Bqx5KK(G*C9MHd_e0bN!;~%tk6!f=lk1{H8wqcfz3*nFcAYZK*^;F_RL6-J}JdO=V zXS82;PI{Jgo>%e5#J{rsU$l4Vob#|#G_{+$V(wy=Nam*c^;`FEw%`Asu_^rL*0uA6 z7PT!hem_ms{+Fna*+GvBa?>w$9a{ZE%%o%bA|>}r=2o7~9XnYzD(<^;=aP80#V)PQ zZ(OPpzbuNVrn@#c{+Yo+mSr9uO(x4u-LLttH_@AI z{>)uI3U5x+2@rnro3+H z{Art}b?qScUppt?(84EbZcf~{T0Zw#Ey}e0#dLntkDg^GZ<5_}+f-3X}h*im&JV zeGiD-zO#Dv)s&_!EZJ27iypZ&Y`_0(Qt`TtMpNDkuQb_cy7{fjtoU=Q#rowu_|4ho zuFKaq+HAYV%U&YaaOSr5lwD7=*6x#@Azl~98u1|C;0XU$`w!|duWBy;oOrfzo-tFG z@1pO=UYt9&+wA>!Z^PB5cAM`e-CdOYdgH7;J0|t7c=I%-HZA4EMwl8pSoyv z!HxIisc&^*-h5x;dv!Fpji<4HiDxnj>dY6sy==+JyHhVUf7TR|`7mjhcT&hb*Va3i z4}9nRoyK1>z3t4>o%@1*{caO*Tlm+R*Gcrnv_$3P75nBNwQZTdrgZqg+q^5UcZjpxaNM%8&pg8X*&B}Y&k zLB<6JE-G6326LsD7D`S(-LLI`>fR~qsmESj5&jxB?R@&)6&86rJVY+>m3d~JVi2Bo z?8B+K6Sa4q3)#hJv5A-IDf1`9xamWP*QmG(UXn`SC@+Jw>-k9DCMw>&0?x} zMgRFbSC6#ancWlTd!F?`IQL(Hxqtsk3W-}9^9jDyjR^5$d3v17{qvl=a~d3EF4w*8 zR99R2>gWV(!w1608A`V$PBcnU+NxQ&@|C|-KNnkNlX`*X)ke#-_LI9$w%iU)e(52! z--@x+Q)SZgmVF8e+_$_ArU(YQd2}#eX-yYBx-nq*KUM2m(x+ZvxF+i1 zzD2pYttk>O=FfXul9C|C$GP3OLR@{<1{p(^+bZ5uXK4Q5l@GqgzU#&f)x~~+=Yn?g zyRNM8jNDb+6WJ7hb-LYzW|x0Q}|M&&IZ#$Ox!OZk>{+|%XI}`53$Q_yX z?G*oOj>x_^zg6#kUFf}7_IGdNK|#jH7I$hV-`(-~@t3rPtA0J*+RFSo^zeGsEw(b8 z#@}{{pI=+NTJFM$J^kk1ccL%*F`A#XDG;09!Fjo6+5so2aCx=sx>9w_+|M>NuycOd z)^_~x`_GHbHY%6C6Yltz{pM;+^d;MXHER=2vdxd#dhOMfX}kA4EqnX#gxYe>0txo0 z>>rZ1Op4V%pS$yYvG%9zB84KCtcs}qE0ej`)>X@=O3rzGGh_R-bn72CR9n-Yd@H^9 z`^0H+vv*}(Gpb$M6I%|oc+WcMp1rg&+~8ZE*(%v7WSUyZyd4E@n$i8CEyGHd{Chm8c_wiP~s(W?e zrjtqB-2ak=ky*DE7Jq-Av-kh*;zPfV=Y;-iH%eQ(BYF42mM^)*1`=gK;g&7AHw9Ch zG{8tA4GITbADG|xtbO^?mO@3_l+TYIHWWY4-PQa3^+PT}hk&z7u6}*GtKLM#w=&^# zK-&z%xpl1vrE3?SirOm~x7KRmGTz8zs%goer_J4~WYNAgsrd89rkT?>-c6bMJnc|# zL0iJpJ&{rO(=$cN=3ObBX?3LVSYqXx+AeGNyq@&Q<&&pt{_Ewbv6#NRqInONctk9E`6qC3@Vx!XpX^Q?l3bd~@n%Vj=Jkne?7q>-ErI8bL+p0gO9wy|FqNQ7Q)xoi+dd9%#&N;w35TEG;+cp*^mXE?i+c8 zCwTD6mDI1YlD_o*N8=6=Z~d^0t#3e%<+*>DU3GYkw5R#5_dRXS zxd)eWZdCX3PkQ9*^XOHr_YN2JeHWuAJ}eg$Sx_*&C!Ia9JA3Qm{l1<%&tEv=y7Hn{ zv(LsmeKwK8Y=$AX`E_00(gfuHsIV^I_(o=tmdUxB9F<-AHn;O^kt zF|3Bl+_t*ROBb(p=)YOkB*uShqQ%|0zkTj{u5^>;R(rFN(KV~cOE2r?mW9`@Y}2q6 z=zi}!U$e=ALufuVJmN|BZ}w7ydEzUrSy_ulLGL3bwXK5hYuV~GMCpjhvUW;?P^e8WFTh*B@fgB$W&e&ad zsLL$KiE~esSO1)3_HS)5yDY@s-7q*aC#L%M>!rJ=Nj=|~bFlFTUsR_z%a&*nmuqqp z%^lY+FJH0DH08P2o%AJ7LbcNm=|rR6b8k7gy&j~>doNVw%i(RAtZ|L?f@{`VvCR4N4(!>x@PeI6U2g5X`$lVD ztxV0M1ilI~ zoy4}}P3Fw?@|&j?eB1Z?%+U+R-*Y@phV42uXa44}Z7jt}c|}{x15Q44WUModJlv_t zce|>NW!FviUl#XvzRf%BxPRGdsb>!uMW^mgZJ(d!q1|I~x!(V%Ib-UZ{U$T~jFmhC zFVEgLb$Jo|HMovef=V*DKCX-?zxW$v&elBX{CAW9bjZHNPL; zUN=SgL&yHU*u&4tf*x}>&(7b-{`w|4QeUKRqUL^l!MfK$~0jipZ*S?*Aslt}yyE(Z!o_nvIpoaSux z#avkwX@_s zsV^ucCNUvi<$*#;a6s#;`WZ?>%oCj$m>QTFxEE`&!9PJx^}R_3 z*`L?<**kriU$gS}et)3_-=1|_H0>!`CF+{u+1lL}=gps_ve~VvouTZ`o#p8X7PDMU z_wVa1Kf1AR&Ml3-7c}PH%h-1ybKi%Hy)Og5Ji43oZe#Hz=WOr!SVe{XUwtX$B|7|MVQb z_cyzRf7wL-oUmbzyn}xJjD{Q&pRgN~`5q|yHR+y9TevniAVtlBOYqRj9ZMy}dJHUT zY(%%1WN#F7IbxzP$9<_()ZglNWrD0C#;Q#VZ>$r1IsJsu_d`)rU-}+feem0#nvV~@ zyg9vnWpbtaey$AxGq-$yYTUc(hSVFS=@K7qhLpXzRPkc(;h&!rrYMA%YtFeXeNtk* zuE3ATV~1kDpK>^udVA&>jtR4WKlEwtigscN@jc}me5$|q^wvKI%GrH-uJ*S~U3q6? z$0ZRKfxo;Ty*JAD$~#}>j(EhA{xp*5#*T}=3oU%#JhJji={c$5wZS>uWdg$yAG41K zFS#85-gfWzmF92XQjRz;YUV#*=9zZm@s6UvV0GaYy;rNGS#9S?YHWXS6fph=cL&7OyzXZZ8_1sQuIM*rthg)jT5}A@4Dn%iyxiqp3=i03KHSNDa z_-mbM?N3+(bLBMr*NR^K{pRhp!xv069S*NiekgT5tat@Or{$Bv&W*iWGAlmG?(WbjPYNoQ zeSbxS^+@G{c{^7cHl$s0ocrtEq>2BW?jJZ@v9?GywLJ%)Ihu7R@9~pGPsT8#PfhgW#*PCnlNk=oZw$XEz|*Sq^dj4fw!cab zRz!8adGVMx=-?5>wLxW}inW`{A`jMFQ8H!B||zT$Vc@lwq}TzL59eedEi_1NRwt_uNo^d9i@?&)o@~oIiFj{d@BvS6KP}5#Bn1 zx6VpemsXw(PEqGsCvZ2gyZ)2nhhzMwgzjpd;^@65aKEyvUa37!Not*8qdQyY=7m8F z6VJ#Ad2R5JP+{T>KlNPk>+`l_+zjqatnsXc7em?=4>6{R+&>~2ZA>mm z{3|dwc+94JWy-zw1l@Zrok#l&rR`;1ui3oQ_?f;exze^iU5b%If%%PT*uv>Y^Q)F! zEY{oOexP!1&96ko_a4s=-7lm=53b0H{5iENNc&l!baR#O_ORl%&Xrr=Gd%4*?bV|`?dGFtZD)CRncUWX-Q-ml z_ieJ1{yfnWlD_Uv+7Gt;PM@SK5?X$lrM;``9M?y)%&t~v=^bZ#cz=dUC2$=%?NYyL zTO@m+(#M^;6*~=D*P7{d%~WpXbT41~#-Mk-+4_e0+fHp?Q{~?~r?cncpTJE;)}asP z{4?IQxxe^^(lRsCTNi%(x@^w=UNW%oq5I=SR#6#|2VSeZH+5V&BV6!P_My(@J+_lJ znXb$ZSDUYWoMp94E$eGtZjLNfAlu`9`z$QylbQONq)XSnZ*}*PW1CC zN~%cc29ycP+V`|apPTI`=49){@-0+qdCl(NzME^EYnAw|80Q+aPvBjG-`jL|;q`f6rRzE0R!$6dS7uX(4l!{p<2`ZF9K-k$#;W#e4yB)6lx zj5v4f<38~zeOKS+-W`cYWwuorRyXe1Y4iByvwyQ>SDbm4FZ|xnjr&en`rhq(*Y22X zXr`k1%H`|gBJ~wAH77D+H>~fS{L@QrzGK0Mr=}|uRc-f7l3>lX)$wWRYMsjQ`{Xf| zqrKB3=eyni?sas^yN<_i)%9-59QExA?|iI!GV4gH_`}Y)*ol7b6m0qZR#!f=2MpDW)&X4 z`|R|^27rnXh0ebEI`zt4)>%)M8syM?^zOMBq&8uapA^L@dplIUiMnHi1$XZ{P_ zlzi^%x5v?sET8SVsCL9ZKH?&&BnRH#a zr+!qI|BoZX28*Y{i9X-{J`}dteB1fMQ+B4C$0{y}<*lCmUYPY}Yu){=SNMd_{gwM- z^Xj(e1oQvaA}{((1V4Q}zEp79t2@u{?UCD@T;X=-@4u9v=T3*$%ZePWdhsy3FXqW@ z`9oX7JBo9jZ~5I_Y_mT8c4tMxT2B7P?bqdQTs#>Te~SIPwv&PKWj2jhDUQE7cTalC zK6!UlIREnV;_s>%&R)4c`@iV7fC;{j&UkBn@@KpF_MF6Ap;JdV%qMqWZIpW|xIg}0 zZKjTf6@S3@-LfwfZ5Sq+pKz97=l4i=;aT$Sjm!sTvrzA?;zu+uzhU?bz-Z>gN^Zy zHNAOTgw=QGFOYwjcIwK%BP(X5UzXAmE(~WsV6vg_(;*X6^J{bW?Gh@F``oZ%9k=}( zulxf>_a53P9{Ks=iUf?+YOxe|Kt6emV zu1|@wUYi^(DCJvP`K&_Bfa6<*_K%SJgGOe|4Zd(MoV92`sX~|sLbYT@t@U?C;xkU;7k9uKWu$| ze81ZKoVJ}~3p?gjzgi@Bt}IXQ|CN!Rr@c<+eK?qVb&cEu@98%_unTj2neMR0TQ8~2 zYeB=oGhR0=-*R7nzy4S$Yx?2uKOTOY{&&jOlF8y4QfSA&~u;luc!= z(79BN@P03&i%&A#+$Ot(>P#t|wzm8A?^}1LM8{0wJsUZ%AarI^OYrQ!gO3lYXbCS~JY%|# ziIeZeR6VP1fjnad0R9(Ymkv)}HAj#maInQ{C(3np$=UUsPB$YERN(m6H-EfdE3slt{*0Pd3H@XhrtP`;CB_$fPqX#)u6r%I?>|Ey3yWv<2Fvu> z8P#@nJN|xIC?WlP^SUiZ4yLf1zuxL2RNre{%*pk?jqP?juR@elCr`bLvftwN9orAY zrChe#aI0zSn<&?r70>&Ys_0GS&cAo9r72BK;`IU5`^V;A4?V!ddE{8$!U+jkMtZLH z-F#PF&z(H-eEph})8syFljuoze-b+Jk>a`N<(He5Nm@Nx=Cdxhq+wf#UTpv88I~)2 zgb#ldIOLY+Xq~v(dy`q@Ud^n1*_Vw2?!I7|#wPsZvl+JnOXlnEzlERNzj*jmkVNFa zZmCP_>-$gtihm&)X<=<8DgBq*GP9Qbbp4}ax>psAPq1HoaZ0L;!HJV+;tH1jIrsaR zmI!c|h=}C|rm*@ud-t5QSFP$^|D?6c=Z@hccN^i#R=ywXED8nbHCH#vUan?6b}GBs zc;}-VvAZt|r5`x?jiq{F`@!fHH-o>hr5szCShe%%g71@>C-1r?>sub0wR&#f&FNdu zT4xs*TYSjcpK5Q+$?(~HKhKVWptUQ%ze`>pR)6#Rle?)iCeM%g>FQXYAvtf}A-U}R zW@n{N9A%vO;pLtg=j2Z8)HXWZ7GmRGZM^RigO(Gk%C{=@pAI{C`kOyUyxD)5-Mq>& zoKuEDVS)fd!wdN@f<}~7ndAMuuuYeg! zr?)n$E}4)dF7XiZy$@j zo%)bhL_S7Y-lDO`xaaoCvRTi0U-MnrDi?I*Lfu@cD*f6!P}c{Q7@B>TrdByI`~DYEARHipU8PyukYh3V+%XryJ_a-?v<4ubbCRedt{pPFL zIVH&Zl9AiAx$U2rp6x93V3-u}I4gxO_gaVa|Ik&f33r7&*V$}+GV9LWx@y5Lp5M$@ z=Tz{yzUQAnSh%Z( zuh;4F^u-r9T{V??_u^ZyvruDtQe4rG+O@meZT);Fa)=AZ%sek}_3d88+eO=b6$M*Y zv%8c{{nK>i$%mG%v=2fLGJmNtf60>jb!pZWwb@+@T2B^p9pIB{d7>}=R)X{T)a6It zzv?)$b{con!hN2?U8mavm%d*2F|YSm;cL##cCyo5b^Nvk8y*yhTyn;&!~OHqM_i)fK11VA_tQLrCl@8iafF?wco7zzunO-+N3avO~oYk zfo9j0VxPB~OXJ;(@0VFG@k-49tC?uR%l`e$4hFRciZxcROwBh`XO%c8zfkwNm%T6M znN7<5i)9N>PT}|W^mfkoeEs+SUL%Eu84Ig-^G6CWu77{ySNW}6uEdGPD;fknEW1u_ zyHL}1cI#3x@o9qc4KiN>HnLyjeQCw-`S-#O3(GqZM_;>2Eq9#x;IR9KKkuZ@ean9* zbtmEI*1Ut;+kZWhzkP0Ix$U~Vm@0AkiFX56&WL&z60Y`o2Djv!Z^qene_n2n47oQY z``DvdXMg=Ymw4;#_gm|4ZJw$SHP`1>okdKgkL1+$SHiFF`Mz4!e_?N9_@!XJqPDQr zl24O2|0=B&Q+=zp+o6X&uS@#x1JTNwGne*1R#C`hl6CwNGIzxqjcNVX&$;5C=p1F{ zd%Hti`>?&wuj{O4ht$+#tv}A3%NSqIvren2`&G=J*I&Qv7XMS;u%r3Qgtcr&TFuW4 zQZyF$PqP-Eeno%BveG7*vXC{F3ejiZS?-&6uT(#>)IT!)%jc*IFH_DkGdb>x@cMDr zE$4Y;*h*6wzG};&1e3QacP>5Os(5YX9nb9A+=(o^H+SrHE1X_fFD`%j!_2A9;hu|~ zc3bi1zMA2nD5iVDUiSF>n^R3MowYf9i|>c4iOckZt z0U5L9M4}U}ypmX_;QPa_caEuaj<)|^Rp}L*Yxl2CaMKAjwLjx9=VOzl5bN&8-3LxO zwA|9Ya6GBiaFK9X5Z}z%N{s>C=fjQVdxBM4k}PFjuK&TK)|;{a0AHvRCew zTlzu#^Us8Bu6J#c-ozM`zmKSUwr-D8wD8k=nM`{R-!FgB^Q0o_w^(9-&)W|lmHxD} z%u4ZgJRqmg;@v-I!_UwM6O`udFkB)3Zr8Ns|880upO`PBeYnqgPPiY_&U zZFQEXO&(|3@%~+}AMly`VCr>cuC5P`o$Kt|U6<;6zhzjotu^Z{r#Z%v0SDgR;DI1FOj8f@w1FV)`?T+ z))xCEwq{hjNYc%uG{COHAi*!{EP9>nV3aAa2$w@=PGcJbc5brt%F`ib=i9=_^x;`DJ({wrh_#?^lJuGF749)f-Kio^AH*`ksG#AODn=En6b|_lDg) zv84HTUske@*6q4UFAO6BR_zvAb(AAK>uYtA@W&-B)fcS03-lk{x2r$3^PbL)t4kke z|JlSKZ{j>tkZ>i`UDG%=@!f};YhFDm-Ya`shr>?k<5``qT}O*K4eX-sEK2n} zcI%mBNO12Vw#Fph-~Sc6&i&ncPFAYJPo(7>i@&?t3*~1orFT@{75|WnnCFePDD$;kcSh8*ALJ-)#?id^M{a`sS*fZ`3${(C=K(3X#1Z4~ys& zvw!~ad7<{{>;C%r(o^2boz!}K^z-?Wi|>A~RuP!E=G38uuU;IqzAA0}t@-)O_tpUy z&s+Y8HTzH-Y0&llsG=iV=#`C2e^;z&QsN4fJDay@;;ea^M9^hZ{57o zccM)ca^`VOl{KEaw9u{3?SP8(x5dE|J-^7;1irp?;H$vq*ZpMBcA9ws%V(D939{d-@xl z-_Bd}^KaP7rMg$5b%Jz^-}ug4aksgD&IKvO{(sMOmR_8HF5YH=x6VtC-jA9aQa@%N zj#+FbF;&S_*0t6Ali(cD#0k!mYEBwRb^pCK`Sgra%jR^Z3I9A3t+!sXv+tha-_IJV zT|FkZii=-n{#>AQ%%Ipyn5U5W?jGN1nZc)diZlOA=eX8o;BLk2kdxt_*%HflqVMJ+=u4x6IfrvT)WMC6Vd~^*24Mu20DQ z#eDTz)o%6o8y>o+2!By+z8brD+Wg&rmu!4v60N7GCC1?X)kq}L*wsN&ZB3}m#f<-3 zwqMJ*<+|<8jg#i37v|*(xry&oyY@HhzwL&DjJMwiXV>mqlk0f)k%%qZr2sP)aUR19 zipN%!9k|RByXJQ7J5{4sd;Dc9_Zv^+ZeKS+Z%T%~ooC+eoaIUULMui7o6J7RCB4kg zMndt{OS_qlx1QQfIQYB3=JL{io3c9D)_>Ua%O=J|&CAQkXqWz+DIARlCNmYTpBn$u zQ*Wk0Ld!dG=7kMjZW`?WW()ane=BE=Sh{(BO>Ig3l=>e&J~HiA{NYM9*QM7*Zkc*~ zaZ^?N%bhmAWo}6^rT@uZzDee|a`oTP{pW0YJoqL}oZjDd``;z6x5(P= zvi-t3Zo68q>_Q{G2e#j@BrcwO&gsjd&8XG4?@m|e>tVpU0ED@ z>3Ey_j5}$&pXDrIJ^rU;+ZWq7x5Ny$jXE)sS4F3F|*3!{4 zJZh(7^Wwqz*WXX}^+)d$NwT@h!k8}j@kJbWj$yG4uWGu-nMabxZ>W@VDZNg*c4DWp zv5C6pyrgC}kJ$A5FP@&4?<}_{WskkNKIMF!SLms8_S@K5mi?_vW?TO=Vb}Ll?Mp?r zD1R#a`E+JPkh|yo2uXoc@4Q!K8gwO2U!9sGQg~y|ot2NL#lO*0@j7;R)sx0lC%x(Z z|3lBuw7U1L_h@HyoqWtXTT-x!PH<-`s|2L`Y zi#OC-MqbsD4Zmi4YLT~8@4G`He}BK_E%~^&KYxpP%+K1mUgod+t!(~eFG$;E|JeNd zyCSvHU8i|{>wNAMp82W1 zN_Kb3zqQMpQFkrBzUWZq_j5;F&#OqDV+d@>(N$p)&&)n~n9KOosa3Lv_x@Y6$nURH z(;3?p0wZQbMu@K7<(G2nsiD6B^R|n&m7L55 zu8O(L5~Zj5)-U};If5j`@GHAXm*%;(jvck9Y#~0C`yT8BuZaZ;C{aL;LN~*ng zW;|ZSZ(5-eah$&*vDV%Hi(BRQ#^f8F7mf3x*2U=Mb;X?fb+Mvyv82D0Y@X}d=7ZaU zqTlnFFDT34YreKK!TR8zw_6<+sdX*!?+}$J>P)%UOcC9@vyVrUSpH}w4fcYb@? zp}ewVeD(4Dx^vGQI2i&fJjn_A01 z8=5@{N+^oIx%X~QCCl4op?*n%hQ7|Xn*{!Td}=#Ym8VW6Q~l0g-$t3A0r5ADCpvCs zEf9Mo(qwVQWTKux{0n(MwY8J3KA&OR+ozRj?%Ofx@^LlgjzDK;xni$Wr|V%A&*Mwy z>|pS05?eIiYtlAp#p5NLek=4`s99M4-n#r;Z^l~hX#K}&2l7sd@Jfh$}1OenyYUjztq0Ims}UBqPWLympG4oT^{=RFu z)~)9~xA*1OGv~5j`2Fn^P9r$c1fNWx;`iTb9cw>g%8u~x%ZyG{?}el zY(}J={+oZS(NE+v_x)r2wg239(XVs=nacL|F8Mn5%)er@EO*ano(l(AJFi6tT>H?* zHDhk}SHB}#+Ziq^HRRedO;pJ~+|9Q7Z=tlZzfdvToAH=n@YQSCc*S@?HP*NTtebBfn!%CavP*rK-kcBWI>(*l3x zQyIIt7N=f&;HMz-Vb`36T;^L6ZvVIuJKedbbarJ$(b@Ry*qvu1oo6shdUT&?Xsu@` zp7p+2{OTOtb6HC#7EbGDjy!grF-U&e6RSwudk>_G-kkkdm)6MQ^XJlD=LPytczMpT ze4qJvxxnXt4?C~_bzhU2ddy(m{uZu(f8Tq0{d3jHOs;iLZ~t%f@{fK?n924x@kXrC z{T=@67kG%CZ@z5(d7@}zp#j5`&z^ztk9M~%TR++Ju;rpUXNyU{7AP?>`L%N}D)XG3 zU--NxPl~IBtLdrerw=9C5x$z{lMD^K<(*5G_Udv7p7TjaTeM1jQkO`@vn9J(-(Np} zYjg9_w{wJhb%f7e-5UP*e}}aD9dpA?iBHRS{nS{RDQ+_%RP}zyvWGFx%}=#P6{YL0 zZ<%;~_0z4F*2{NIxV8PR!B(yb6RaN`ecq^5m?5pwv9;rR$9Io_E4@2aGPHi@#~sg~ z9Oods@%{1rYg*l2y<cWb@0X8mPa^Y7;Kvg6&8H5KF; z7($FP71y2!nY(#IZ^Y{GeLGjjP5JyOkx@O@!?-o$m*%?Mqp7h~v(rNVs!fl1JmXP2 zU(uvKfecHrB;3=l^Sa@eI{u_vQbYJ5&F$cgo(H zB!2jzhSJha4+>PnLq4=L9||}$L%RF5p^@gBlQNFA3je#WbEX zi?Hf{9~SKO&6&04__cl9r;RnmQwt6HLnTD!&)TcCRybvCX--h>{*TYkZr|vjWYhSn zetP@-fR}1JF0NJf2^TOa+`zW(OUvpN+J}8KE@Z7NJRQ@z(ZH(w%z-?%>+$v%e8RhP z%fmF^-gWmfFWB(t!151&pXHzL5WdfM;M)_H$ju4Hzt`wKo^o&3EADE?_3;X93;7Qm ze4D-W&!i*kcQ=;3e(%_?qxHo0gI(p?=hvife?BJs?s(!{XJ3gq583X{F5QuOSLFFE zzGHcg`wu&F{xv#WBJrpFNNOCTLgPR0(9iMzGpm2zzqw?};@v51FD5i))jT#gceI&Q zr`X+~({$fdBl6+VXTkvjJO6fFXh<&8Q|DT>zkT%^5tXxj9L@QSVgZkTe4Dk>nu(=> zfnigS;GwVY#p9i`l=u1>rwI5Sf(-1qT=hf43R&DdhK zC`Z<9)dCA=arT+)yVsn!9?d-EYPQzBvuCwD#P%0_U8DQZaLw(Trb|w!@-E!}LAv!N zTbob|W9p3^(kXt{4s)VhSbbj2ifFQ%_sw?V5@}@{tyjN%f4hBReLpMd{d)O(vr-Iy z{5>@u?x(z}XWg>O=WF}4^WGs>v$oz#;4agdb3=4>Yqyv6^Toee zxaub;1g!fv_jT#6>D4za=B_Dg(qL@(Hm&^M!R}T0>6yJ=sy?p$(NCAch~nr zM%giE*C#B>G3vM0VhWh8u6Ag#fliNj-H|nWn?x2)ioR*zc*BWZL4EVGlUsCrCe1!{ zv2e53ywkHy8|OM+v=COV5bM3sq_v!Dd3^Df%^?}fUo$Q!Qe}Eo+@Ihas9Sh_MvhDN zlRw$!AIy~|Oyv2k=)X`jE#ut-*jo^PDGW9z-P)7&ou`TU}uwyl*twCew9&9yEC-{%Kp z^d-LDkeqk+)bi7TJwBz5SC8#9-c!JlS6##|5Ujq*u`m6#`&Q=}c~)+p4lb5&dlRfE zBNoG7f8#RO5&mP!u|;nyXZ_k8x$TRDz+QpnywIu3Ge2$@V_4+-#Ir*4TcjTN zL?=v}ypBugQrVCB`#g9qPbd?d^f~OuP8Ere+f7bMuWQAozf+rQ`u^e!&pmvPwRd&e z3A=^+7iQEPZ0x(Xe)?9PCrj#|s4)8$?bY~c?HynLfBClW|2JH#U-!*M)11;(7JTg@2p2I?wY=aZocm zqj+Tg?6tG!@A;Bc^C7KgP4`myxN5ykheZP-O*Ic)yC|@E<(h>ocf5BuS8G3S_qKep zwSaX^b(H1P)8B&5E6*vtTqhWpt3CD8?o3UK!xyfF+%M1m#VBa>?2*QXKZi9k&K&*a za@RY)w{=q_N%CC)w~bRlM);+g0zDN&g#_sI9FW#;r% ztFH5qy_KP<|Gq-_*m)h3@O$qc#f1HB31pKB<&PBJ6m~^nZ?J9NMKu+zEZapJFMg{& zY<(r@w7{=>_bmSP^1aVHbGlu9$yT4Nqx0YHnz{M<)%3ny#fmSUE6w}=DP8;C_4(%= zc{CR4PmJ%_H$hA6-i>IjiYpz?N7u)_u=;dGAm0Q zuD1x=N7`(QRj&Esn^3Xf?_$YS*XuKuT)Ai<*j9gV-=DAhrzyK>{R%txf9H*(C4amP z*sI+wthVSe9d#05nzs04rdqhtQLZ(NS31Kug@0vhZ+Q~zbWf*6vDyCM?t>FMQj`P& z_g4PBvvuj=ug#Cu>(UOtozUML*OLG2)?U$$61$x{mMUnw*)G~Mb*bc~%xxD_)t38) zeBAt3W7E}R5>aNi(tmDqmw3@@p|)@Ka%E+wO1;Ge28&j1JSY5pa;l48{3*e21_!^a zO|5(D`G&RS`R`0IF8_%UG5ex1nJbkil_rsVomuF?K)bQo0mTrB{^rU{)zl9NM zr^L9N^_n+)d26I;5jHbx?!66t-~YMIul$9-*?s=EUics3B--<}_e`$O|NigUOa4D^o%Q6$Nnh1j zJ8m63^V8L059>86BR`|GswB5tYdTDSNwIGH!12+(PSBC@PyHjMMNCircl`b@l+3bt z@)F_2`)`^C-Lf~F+-z*nb+uYv=B>QZtH1T}>whl)E%D+0r|IQ z%$NWDzJmYvuAIAX;nLMRkN@Au{q6s*?w!4lpFZ%qeQRU;^L}yT z|KxPVWbw?};@SUaUJY}ME_38N>(2Ifl~Cc2^O1&)LI!~;U*tYSJ()98{$}fQ;glDH{BxnR z-jio#|C{>mN$Gp<2*WkIE1SaRwKG}l`60AWSh8`8&5v`xURA9WUH*2D+?CDz(Hht1 zUf8|=UzFF+-XlRFtCxoagy)=n!SuJ=ye9h0gxIbW;YG_N_6DBG&SCG@`riGseMWSG zl}Pdw{#i}uEcGe#x&C(SVObUi#n#{AorD9(q+G}zt? zg-lN>mhrB*@HBE|`$+o`cA1XxNx}6=fisSHynn)=dS8H{N~AfVXa;FUPn#Xs^Em7<1$aCo8=E-Wg`Q=`qt>p) zs==pu4X*`Uc_bPBr~8HW3-1?|ljpuO466BmurxSEHQ;~)1A|z?|Js%B{+}t`w$3bU z+b=h-UwzYDnzmgl`(^gODCw8J*qfkhf5Q)~p0E2dQ0in%jh)9<%ZV-)8#v=qK2)|w zh-Gh3vD&6m5>LEiRmL|1a{dXI)s3JKe2VHcMeo%sGeqhONGOO+Rcc&B~_M8F=3}+t6UaaWUzt z;)h#nJd3W?dcX1evu($&9aS1z`#B|Ux<5U3$9Ywj_D-laVnoQZQ|_`OZ{nA)+OH~(3)(RbEF zVe8K3%<{)oFHTihf4pz%WUwyPG$vl>wAAHw?XSvPA}g}+rQ0@-tQ2>b z@9XBrEW1`b{pe-`2bte)!41_L<}^n)%sIRI$9d7r9p{p7y^-}0pIlw@;F@@=nbD1N zfhEF$n}3T~aFzd^`!wKvbJl9TJ^h`x8vk{>Pv*WU7xUCJgh8N7c_?553#@f(Q za^*&Qe~bF%PwmQIz$J76A>AfrBe`c+#)z=^^q7(Lvldtw%?9ThyoXcDHbFuDc zNfSTG^=FsL7LTWwx1T+-@%#Hs)dF7bS~($89dF0;x&m8%n|4k)=gcSFeD)>-; zEh()gb^nrGGtEBF3b-!2@Pig-H^*u|j?L#1YrY;RdNiB43LP1hF!sNmBjw#mH=C1v7bnA~b0#6UW_|x$q*zd9bWdGAr z0iBsg&s5!s3m6z`{?AYCp89b=k4Tr_FTZnr|8x>c7eH1omZ8j&gf>kXCH7OSet-uGXcYB@_LeV^@>7ylUUFeNy>E%{xt(Z(Wr z<)ueScCRBguE;s=!rQCg>#cVteumCTjj7d5Ya-dC=jT1+<4l{_*WR&b>87B9jU`ty z@)o)3%)C&rKS7QAcFn1iUWx{>OnMt!md$>A%#L^3t#)sl`FH2uow{`GCZh$MU7;Hy zB;;FWE_OCmnf-W@SM@iM$*<0Rf4Su4q4(DLSKYG=G^(VtwW@Dt&F^8EQ9MPe-73nW zJoo*-BIouBn3%kFSpJt;;l>gqFbcC!a;v0`W->6y>W_T%e!>NNW%G4G|#$JCR zvNyVQb=R`Fs;Y;=6ptvLIC*b|rF%77qKK#X%Q}xv73cpU&oY+o%PER{W~sD!=dV=( zAJ1%&e{OwrwqfS6h=+$9YBYblxNcR{_4aa`^h;&Mn}mNC7kHgryZ1rILPND$9hqC- zLaq1yTHHA`(Cu`E5Z_vXSzG0j9Uh!XeZiO2B6?G^UzlU=yd=vrZIW5PuJxW>o+S3D zDxSUXcy>|P-q@$5|E>J?Rk6*;E1Dh@Z0YP?arE70c6O&0K4*s0AFii4riC$m;@)-Y z+@TY%ul{(u_IO6}MCJ3|=G%SEjoR&;oc7I4vfFr8@KW-+M-QjV)cdxU+ud90%IBJ) zeN22=v9Q60@~@kv>it~>g+f-lS=F1ZeP&YfNk*x0(G(Bgl-!hzluQ-=U*gOhLA!pR zp5Po4@3!&h1lg5u9B$^kRCSxYdHbpmzjd7FvKBdCdA#D7Ln+&)hldn7OE-qLw`ChP zu5;y-b-sRhUDE`?gf~mS?wGsC!|HI=qU~R9`6(@M*ty46CDJCRX7xn{{guL6e6tr% z41COQdVcpWl_J$Y-iH>;Ngb19>KBM{Sgmt!c9Ipx~y zh^;vtZxzcvo|(7!x~5dl*MAS+{L>D7`S=4XQjq-hb6DpR-Jp->@Tmi z!2azF`&?I(O2teA49w^ULFw zeM+$2xV~B7g43b-g4b?Z zZQQVN(}pb@w{6(5ao2_~ix0X8b0={X@%)!z`SQnkexOjBkgGc*!-Ujd??1o!zyIll z`tG@!ydLIDmo9rRy7&i+rqJICI~%>j&OfSccI@YG;&9oxKxHnA$c>L3JSCZleJU}% zQoW(R=YND6>SPJBT@w=wZRM#c{@2asyG``0uC|TYylJ!Kzv`bpFH}5xpJksK&%1<2 z@9*i$?ppaueR}Nq*V95{Pure;!#u$}E?k^JWAP>j-DtUK%)cf1_3|XwiPxQ+`*rT| z({q2$Jzh0W(b)Wg{J*;2=c@!Smv6kT9eeO{vX1Ge*|U$XG1rli4xIZ{%hYTD~Ix&6E@@^1Yq=RJQmZP>=;v_PdV&iyC?@Z)P}Jur9x6 zSX2_IKHt8s+@tEJ?(uCRY%TG&xx7U}adx#fCp)EY-~9H-&MewCsl;G2V|sRealZ1G z4cE*>e)U`^*%iEJz9UbK38YstqiPadv5e#*RHk?i~9*#`nd z#Q%!@J;C;ALX?kU=iNh5_JJj(CGklUj#iy~H1BTtgiYROGZ}b~b(?*9sHM$P|IP0S z!_q>fR}#L{E!7V$Q&O(m{e{`Q)pp6k(s@2f5WYa^1We2AiNCZsMz5e32gHYJoTirW?NbQ+{xcZgv~!&Z_by+Mo;Vx%vf%gbMoB{t!67Rp&YfZXZjT+cAmUnJMmWN zr-DT@JPh`vZQOsjL2;VA+AK?+wpkm#f73724%?Bc_358Y`=qtUIM&b7QgZXJ`w?;N zrnGg$a+bBn_Ib=c=iHyL^=aAL$O{i+6M9zEa0i&Tnl3oDyI@l9?kK^4o>{9LxGq|# z39eOMI?wa5RA9-DHj(8a+q~NvHt?LA)LzBsWqIsjLEh5L+mjq$2m3iTnlIC8&b0X( zFl&0~Ro@=#P?ay`>Mrkcce&l{5WCnqMgPuR^%wW&O?`OnRC#vwy?=9zpBp9ct&H3= z=U49BY2rc)qj=L9tlxZV-M=;P{b~!NHQ`6JT2ELkJDTj?{{Hu!C;m1YB6jvv-Y(HQ z^o@79>C(;bB^hmU_C-1ryiNXB`||Yvi2drj{&O@o-4D(U@T}*28^!ni084jUhRZ)z zq0qatX3p8?slN5cuB;5{3(O8r+jD32 z{MtH`n{pNzDuFj+@_)u!J0HKi_`%!bYcC5IKVXzJ$XLa;;rA1Xxctl=*B+Pch%eYK zu6DTQ)T>W=362@Jb{pQ^bwO*+({pq7{1=RMi9g90x#aNn&4Eh#MyEF=vwb$x^bD5x zbgED($&8`DUj4{PXd|^Dx)ghfBizH}3Z_Q*Np`7#XxeNaoF)nCS_3 z{tMoGrzTxnrrDmMdEt2zN0pV+vmHk!GspjN%2iRzx0|u@)Mpk|W45I`H_VTk<8)R= zVE+t_WC@OGmn=G~q?gS4wLDch8d6(liE^sp~%+utm35hFRI# z_U_eRl~H-}a_?FN7N%LBw>;lt`=?fRR;1+Sq|0mag*rViTs7Dkn-s8Y{oCW;J1k<> zKi+BBxWVX1?o^ADix;IjPJ68pckaqW-nD-;Z?s-)=L)-)suwK%>YjvG&LiEU%M@GM z`G2kY^lfbd-}?{-hTCZy8}|1;EwIQ82@IVt>a=dlubJzDR5bV=?_A4wqN2uxdBtPK zEeS^7Jo^1UpY%DkneEeIJEr1=o33fQuRnjrA>}|+>bk1@`#E~EzZ%QW)@(iX^TF${ z{3)j$8~)qbe7&T*kI`Oa`wFHW(H~Bsmmb}7cTwE1|I?GxRLUm5?HEr{K+eS@U5@opKLDW9}&uuI+l zC&YJLkKf3BUI~Nm?93RqEQk4_tuj-z4OBQqk1u6do%Hh6k|McK(fZe0gOzNSH3-Lk zY`*PQyuM2RP}(Nd|1*6y7oSha{(k%2%_T3Ur&hAKJr!=-8g7=AtRfZ8#q)ZdbdTvq zR>gCMO3{VScRdVXV4GIKDD-xw#k5u30uz!v_TT?0-`->EJ?XE{q7Z(^{-rC{d^-B_ zgTNZ@w-0~XIdRQ+_keZQnL1bPpPb%3p9)X)q=mlLntk@_wRL~|n6sZM`P`lMG4ji^ zii7qi4=(F`7;xW_S#Ymibo2D!-7$`eZMl_>)ie-uEH5Je{b9M_1L-P(?d6<&6sALq7i3ezq~mt&vt4nM@ZKx<(-v6i=)=M zgo(T>eDBdIpZ-VN#e;MYaN zeVHdNd|tDlUgma5-nI$P-u}7pJkZB{RXvl2fNXoK^=g@O8-HKhs}ZReeDT$hKTB6$ zI{RS%$=~bMCtOL-SSonI%3^7WVt1nXTDNTB)+4fqL}n^n`|g#n=BIqi(_PEUjx0Dn zi6f(J(lOgp+kQ^6yHfpJp6`lJmW=9UZtrh}l0IRpk9}mDaqP&XC6fvS9H-n`-Zx|V zq&|bI`n_8J#dOkt{ZTt_XMN+C)N-~xf!j^?9Zk`h7u91K7W>R@@~owtv*fQt=zf%0 z)Uw3=)05+QBDt?;r+j|;)@+s5bY{EQsn;7Gyk5I^>QsSehHkL})_YgXSaeY?*3$S2 z@AjAB-F;SBOMJa&d|E$=bA^a*kz2vE^cg+jYlI5t_22mX?coaL^c1a};ptIq z5>%MY)orS|@WE*}Bfoz_UfTL+UhwGi<-hp6ZMs{a$g{0!vp;jaO;g|9kfrmGNn_6b zs1-@g$Jj$oMz+t)oE!IWhq6o<@0H()EyuNOP5cxzfBe<=w>(*qHc48v=FqNR5?4}> z1WkCF%+^0ypvhA!sB^{b;zc5JwC~+xf2fpRpc-Jd+=b~4Kb4qx3|2@9YQFdiEpQb~n zTEHKf>!gQsd+Q(pOgq0Y!wtqx}sAtUw>lRGqkUnrcz50-QM*2mNevP5Cv4xUT&t+P zdTN40VRTlhoPWp{o$7$3_)}5WT&B$VeD++{#5{qozJ6=RR^>vkls$b<8$L=cSPG3YX~HQCuvE(!se~9V!kd8oX+McC}c@<>b}MimyG= zty^UJ0>qEIUom0(q5FJgDeEPJ9oOo29Ixfjj@EhK`;#?Ga--e0L;J2*_3nKy$Fx!9 zan_NPt-BWSr1Kw*{INl|s_?A}bGOQ3^#k>%S=YYFnYZ#&p4z#@=^HdnuCnY2ugP#t z7b~9NG366W)s%W~^(hSM5lshrN?Lb_z3>t5TPG9x>TS8r4C@mGpUrl9FS-_gI%bW) z0fiGn&s1)1lTWgG!QzjOm>K;wEtM7L<-$+|CSAx6#jD9W8mg?uX_Lx@p za`>0}&*7&)#)UvL%il6N(Z#Wpfx)Kxd_DSo8DXUw~ zEI;L68c~*LUwxWm)}z>{bsOp&9yawc|9ZJLO4C{L;lbny)k;DySV(CT?uOoj!6`K%6n|`s3Y%!{ofVxQrbgw*H!;0e#%Q-E{b)ANKQA_(Rh?%3*ZaUn=9uaNHpN2U0~f2b=UM5q z{}x&NVzG^=(xI%QD{Rcy{7n$?yZrd>E?wi}3pZJIc>d5THSCCcoi6g<>NX$u6s>%= z{W{DBjR)Qa`kvxpX}PrxihL%;`f5D zQ}*5c%XedAT2YGRSHT<0Vh%o!*^#N1D!jWvpXzOSy#UQ^NMbXuzT9)P&rfh=dx*wRMz*#845GAp8oSgU~RP z6Xr>$7Uv(C8aeOpq}xWPO?4;p{Clvi{{NEPZx5V{B__{PU&ZFKYii=lg|CII7N2u< z>}*o^bKW7{8p7Hea(Bs$PxszU?Qoa-%=};j!@inZl1cGAjkjm*Ru_0LxtPx?e2cN1 z)M9DQLrv;dLKVqf-LBe6+6`K|_P;mUFNv_I;;p&dA-7sySKhi~X+>6ic}I(@J#D; zIX61uLpdidnRjBvR__OkCA=FGqJKY$R%6wDGuL54)t5uxy}B0&bhe!j?c5pgvG`t! zwpiu~{ur6m>Ny9a)tIA>hCN;UVdM9?6|;&{S7uarXSVhRs_M>O6!e~Dv6{r1G!xqZ z=DA8IcZ4^cWSQQO9P#iDf6CpYhb?>l)m&E9ycCuqelm0V2%{)c}UW*@Xs zj22k^yY}Hn@yg{_YtGqyE}!-&={f&bv&%R8{>CU~-I~R+t{~D!BXH;53LD|gy-dYs zyyxcLea4_(T>A2lUxjkUoli%WO9(#@HU7dsZ}*c6T>821rMXYme({=qE9RV_U7Yn5 z8JnV{h;Wt8m6w&KIlcB=V7#Wd>E5=vJuU2?s@@osWEM5NVrIR(i?c&|X`12WaHXBh zuiXM0E~ihATJq*jTpy=x{{)Tq@?z_stT3$YB#!)h zcVdq12Y;D&C&L3jCp(+_#Hs{H?wrZ6@!Ou4Ukn$j#zt%`Fp^TAwsei)TgA!W z_%>!N-?Hqm^1NUnZk^x5-0l9LMhr}NBgi~RpI`PA<+=V_T`tZ%kvtp2$zkF!7Uub?XkWS!~JhHx| z_MnWgob}hBOYHpyk-s}H1Qj@hm^q)gBwOwD&T)nly?O=TQnWy}p zf=c#qa7oOTIlJo2#Pf|@4^~uvxghoIx?@g#Ox(N&IpQU&*7q_#?v**>DdsAqIwO%) zaxqIybtsd9l-&Z)`3GkHw4c#F)nL=dvlYsx;yepZE|;FQXY*Qr#kEzt*bDmZn71C; zC0O};@7+TW_HoYG+mvN5`deQ6jzU%0;Zj+?x%Q4V-{XsJg&92l|D|Vht=D7&x%>Bb zP2y)-&Hk&;`;7k1&UvdFvlg{(&Y~`4Z~&UNe1S3_9|TE7`2K zNSduZr~eqE`)p&MBNM%nIJM_2n{=v2pu;*^al6DbkxlXH7v1?8OuK}5@3=}8mP}sd zzWm15yN*$BE+uyT@;TD+pTR~lOHgCWgXf7c(IWQ}=gp1wGA!<0*K}dOT$-t4xPz7;^dOtan}vdJg`VF6w>>V%*m_BVp3Z z&>7GAK3)B}vDw4H*XZ)u4^w~cZCtQm<;=H13~mmA8yPNNI6d>l)Sr^gD#@!}z7~CI zIC1l}b)Q*(da8u(ni>4Z#p7|{AdlSRDnoIwFYZ^Np?}<=Q zU}%uwU|@Lve|>P8W^KB(vvD$es(P`u`=b9JU*7MHjov1)sK7qF{F}1p>iP`}R~aXK z?<~8>!|U1EZ0XSuHR<4y4_6O)Gbio|^Ign&d#AVf>Bn}@D!EhluHA6@kjX5T8nwcy zbLYR^;<8+1@AKv1%j{!)V*Ix4-)C3C81cj>?)x+?pWAr?YgUVit=h-t`$>GsN)Jn> zeX8tY8+pEV*)i?etT#LNoMG4*`6qnmmVMrK{@s^ik4URa$LIAiZMMn3w&Akpt#>Rd zce|X*-EeWzYV)SKKc_v;kzwtyzjyq;YD7?6X`SS$Se7TbXLmYj&e}CIam59xRhij- zC1QMKm&=9S3zyBFzgy(Fb8vCa?G3E`3*SXpbz8Azvo3!#Q@%5C)?#h50|pY&>n>^4 zZhrM6;M@hq*RL^e z|0-3^2ioo3)5ZJx<{u5%_`xUmz-_Kfm6dB`|0tgLWmmKCL|?67@Q18FIVP7R>}UV{ z_c?t|MU74 zc)gr&AuRFyT!C)^H?4NqZ+LJp^SGl`_v=M+%E`i6ZrjgIt~+GPr<3{KbWy>& zvQ^I4T#khlIh(Qhnly#CgkHM!^nv~smXkq&{PUGBuHRnD^-q7J#01^y7^1A?$3&+AJbp{dvoB+f$|EiZ(S=bzT{2vSs%cC z;wAs{t=6Z*)umK4vnr6J93k27i(!xuv-24 zyGBX;*1kVlYwm67j1Mr&dZS+^!qMokginDb$n|2(@ozUZ>biIPWpXXSO)&PchEZ z|1P|x@z6I_p;_I`Gq*MHF$w0d^ySI6-0->Kb7Qq^%Z>h0+-+X{pLZ{m>(-`@KOT3Q>g=*gQ|xvwe5-XuVCus}hlvkT zox`}&_6M@upSdRIeA@MEK0eVG7Ip0FeDSjVV$Ht~eY>|xRM@suZhtf@F5Sv%){naV zzyI8GJ~?bKeXA&rop`5zi#c)J)iC? zzBBZF@pQovy~Xn$&Dnila`MUazR17d=j|o1oOY{iNg5kX@PCE24eWGZs3^?3kV&66t@hP;#@>*OQT( z-86s1vYe2Mo}05NxwccbJKM|Od3l|%%l->}ohBD$DnssRyO~FE`!cNkm+fc7^y-0| zXS1~G)FfA~gIwEdzN%T<2+AJ6^S4}D>%8;LY{7U#XYPk@tNYbn{s^uzI(SB5Qt`q! z6Ftv)uWOZLXLZ@ol{?4eGOxO!tiKMs-O`w|DVKM?Ojv$QVUyTbJ!jJ&iLI%}Cb>=T zQ~#J37PtTNvkd3@l=lh#T{FHeY2=by*0Hrv(eIbxCfjA&F4_er!d1CX_eCF@!uCf{ z|B|=GOgm>DTXC7FtABY6W5a`1NfjhJKKHW`O!rWbu|T3#t2cGm6? z=Wo+iao*cK*AG07@cIAMbZ_tZ3)k)#{N1YDw^aPU;Nv~I0k;lizd4+$li47yVx?p7 zhBNx#OF41Q>DTP{rk)SDF2LBpz>xM&PowMq{U2w2?jJjGD&p47Qzv7hCUl&*^DI9; zSy}0D{mvXq3GN-j7ysY?DK*tZl(Ti>K3f5aF9)sa)@E#;bBU*U>)Aio6c03K_-=Fx z@D_C57ccVs!u4cMsm-HfuSsWg_-ZOvoRXFFz?Bts0X_aiVv*N_B zx_Y1A|8Cs;$+#o+;l+B}xNHs0Rh{kk?zx06%<0~mOTKOuw zzc0x(#sBSJ3I4ka((-N=j#l|$@`3F6*H`r7uH(;F)dw#SvkH(Zq<`Vo> z`+gR-WKIsXU|nevYA;f2_r%u5K|5VzTD+@3b8I5#zbYGzDW82_t=wbKQ0>x}-}gnS za8jUiomqc`yIWt}we^BY4?gMMU-tL+l51~0l^Lq8JxKfhKk2P}b4%v*wT?S>zu%U7 z8;tHi>D&M2*{1s+nIn7uNVVUQEAtQa_pIocx_aFnt?OQMGwvO|zRB`G>%AAf5~;DC zR}T7r-JQnDZfKSIG||B1jG5)n>ZXJ0A{*b7y(o7Ly|`<|(_=Cg!3OhUe?91k=n)E- z6>I(IfS8j(Q{DOpoxk_{8pvOpIMcH5g1nr-W}hv)E-n-1xzi-o>~v?@gRP%WI*H_1 z$u4=eRIf&P`xDh6WqO}kEp%rB2Mc3{)njzf^@Xi#DzDs2SfgNj`^&ujy5%Rr?Amrc zS+(!UDglWnZAKrisQafK4k*j+m#X5HYx!j5(s^Xwgqa6UUle`4TCD8dgG)+Dsgeet z54@gYw&kaX<$JHsTRl&vb5E9jx>`*5XY;EF&b5wV*EIr5hHv&x! z8`vgDt!dl9VeqQ3N$o-=pW))$RV`EANe0I3Ik<#BVB0m8Df}Uaj0K}RJv(!kc654r zme~Jy?sv;R{qRo<3xk8l*ZA7||BDa(EazU))^7gk-l$I zpB+m(-M#zTv&+w~h-!v49}$?ZxBeq%`};R**S~)udh7gS89|0zFa0UG$Ll)$md;yr zK1M=sb z;UN<^S8tlBCADvQvPD6?X#PTG_m!Ef(R`1$n0){A#AxD6j)hsiYqvhDn!NDz=gs*N z|JQ!eTHOmleZGIkr6 z_P$i9X5qax?euYu7u&phr_A;W>p!$o{9dy8qN2N6es!AuUUC1p zN8DS7&oQ5`lw_~CyY}Mib~7*kQll=#2Uq=Ojhvh3}rh@F>@J zx8RL(vA36_ji0O+yf>H2a;22TGq=2S4omKWzRmZ!7MXo7|NrfKP}1*h7H-=!J6A^J zJFkCm?})*P6wdfGmFU-{r>ATYTRL@RddSTk!R4QGUYz^o^i%EPUGHPRwryP8arRr4 zvis9DKMWq7>^4)p_Kq)cR=vUzSJR^+>5Da1ONOSdpSgnbr1IOU@I}{->^y#EQRv2? z11+ob&Y$cnW}nTNo%-?QmhF4*cW+qoS@!!m4rlQT@7kwQEuOHTz|gt#v@Ed zvpEadSZBvFdc8U9DqbHOe_rC;PE(1yTXiM|$^?JNJa~*-_->J#L(_p&o}SLRLwUxtyH*WvfvY=*=a_f)UbP{ZUHvtR>IGI7QH?4Xo}O@ zEn+20W1rXLpS;xM=E}XpV1&@13H;^aTe*D6o_7lWz4%ruZs}TYmN+Xe zY3|JMYqLCyJA*5w;#NKKJI1dkzgDoK^+@JnmtPupnhH}m9Y5~#U}*pRthj4g_vVs^ zd-jKXJEHdQzGwRb3GvchJKKM$?&x3LSY**{ni$F1xoh1tg_a=E!iFRkKp5*hGkXQIQC1g40b=^cm8{-4#Sr|GYA*wNE1 zF0uE9;_m2{+Ji6DCCiNezM6QixFUdsV{5qhVYhjA&gq)0I`#AAMDC?Lc|jrXZI5t2 z6RL6fZPb;;ny{vLA5+tdmEK8HPu=fTYWfq_vB7ZOq)6LNsjgf4@~3}YR`dSo)3is# zjOWU-+4s1Ps`U!Jii^w4Wa|x>?G`YfN6#bZ2cvD?PQ_Y_U+-4iPJ8mrX`xlb%Xj&H zi@&DbIWkE$EbiLtsG_Oo4xO--$(`%n{BqixGe-lX@@~h!+$6g6>BpG{d2uIpKDJrL zQE}1dtZ{Rce#FNAXV&<>)sDHIQ}gVkwq0Fcsef1U_34%W%vLYsPEOxsw^8=-I?Gx; zejzRMJr-w~b4(XMX-(bzs-cvb-={45sNLl$x`#t^)R{Qc67F(uY=4}0tk8G~v##Bl z*2>~TA6M*KD$&#IGX3w~yUWZ@J(k;jy`XAs+fHY1Pa8?Ei^ z^N))D@BEx=_0WN@IsJq+TUhK<$GtnZCZzeCRY~nle{kVa2nv`mF~rRl8#w0B|Ma!AQ<+E^O@KCU7Knq zck*s5RP^Nal6PxhPM;z6e&P3(HUYNv;>-6NrzA6V{BX9pIpN7gk!1=Asm_km*?!$N zlc^NHu2~i?Cj4r_%1b^<0gIwmiJS>8;`m|Oedmrox02vn=|>kL1X7YTftfjQR=STatE4OK-4c<$uwgV{|rr((4sFOAT`-&U^pGPV=tYri0qYOthABy)QQkZvH9Fn)OC| zpWAGH_lrl14w>`oe@u9!|8Ak3=DMC2$qOE8Pn_ZlwQC)jf=7u!+i zYX3?!{@PyqJFR&oa+-$AV*OJXf~OnJWs6d_FPU+j@79ijrYX*j{tK78w_Un)&h1*y zpW9|O77F)7|7=(@E2(qVxzk4L_r&;mipN~P5Og=q;vc)C&fhhU*IK;RjI`Tha7Fl} zdF+$aB`vRJ8=BlRJMf)r`mv-Z4p+AHpX)qSnfO2ZK-1l|y6tZSQ$|Jx-rIaL*J^ZSB8BI zWfzN%FA@J~@##$EK22Mj$D2OxI-+2=d~52g@b))5lQW$@Hcq`Z^Yl9D=2MdS4|DuB z#w#8^s&r7rqVsmVcbe|6#}|xTkLfUNG~P9FS@<=#=~kwhK|#qsJk~DCzIcQ6gSm#G z@{5==l~UVM9_3#x_+HrjLTb(OMP}8>%1aGHcbE0<`Kx-RV&=d6wlhZp-Gp~?ZqwcU zNHdDV{GOso*thuXtAW=zL$17+{Oq+v;jDAdiKS;ByjR|}Am5kAL~rJVveLTnZ(i$) zvp(w_e8jcHC2}s`6NP(I&+mL8UNuW%y4ZD=D>`<9%G%aT`Lrf6Ru#RHQe4Ww?Jhn+ z;(?XRmebZJ!{5Zb*>&vjvh?#6QQH=|cDR0g^=Zd}hVI|#-?=~b@A}C1F};CXzd54i zQBC2mNjl>Bjn)sV_FukPow%3BuQmU{>7wWSzh~WBc)6u0B7Da3Gm*Ppnfl&;?fd8_ zmAU?n`tGhgLx1tMM>o1wxN_$-)Xj?D7khYO>ka;kPaTgfE!g(zd!@Tud8rFyUFp}9 z$(oP*Hp; z*Ah|{tv&O5Cq`cu_-AvWj&u9^yz(4TdmqbMN$HS%FBes;<@dk5aN6;k8!KLHEr0p* z%ksY-xgr;H)33A^osIK&xbuUP*;LjQYSX#O4Q>eOm$37g&5n)n+q?evtE7ocW4DJiz`e%*HveiurX#&+Rp&z zlYT#D*jPxs*;Jjm-Z@Kor(1TBlIBB?56xLD{%l54`{goXFW>clR`oKdqF!CGq9fm4 zQ`5Zgob21s69w=71)rO;`*_rhCC?u}yk@nIQTFpi>H4@x+ey(|#gcmFTw3-gaizFP zVWyGUB?+#5KOWB6R%Env%aqt7(_(uvJnMw&{U7Pg++wgGD?ibx`<#d7H`^mxvm^97 z!zNbV4k((rI$K)s$Ip^5#fD1jv|S!=Z!TMS^2w7+McJ&@Sv8rgmB;Nw`u0TJx{lnckhA3wJ(A+Pb?z&iky@GUwGN4QCkyMbxmXUT}`c(hNHXW4p0>Y<{la-+TF-nlI+mT63!FJ$-Fw)VD+1YufM7^FRASg0lB+_I~2EI}L$5yeE3wiuSZ|Hi#8m z^pX`WnCNx)^4#yq{;RLdKfRE(aeIihSf!(ge9)cwi5pm^{W>5J62z0f!cbzxy9vKH zuKj2nAf;Wls=q7h;7+B6{*!YopR3L=77F@vXFZc;#!sF&%T*`2qx>6wFr8t`&Ty@H z+I&}Ihw=lNE56&NM;tF>S(sh;dz*-I`QNhE#m|k8i6tyOD`)KM@Vuc-{*{2b{QCUf zd$t<$j3*gi6MD|J=T_i*w)_7Y8{Vcg_+9UP(sJ_QM82m-owq%IpkAXlW%GTGi;EZV zhDcBP`)PIa&4YJXOsoTP6vF>>XfmZe5b*iJ+VsZdLJ&hG?>iT+3c52i?p%7NuOi+ z=Y*f;4CN1|Pg#zy5w$+G`PRy3jxTx3JH+g_tzmoC{xG-mUHbcHY_qt3PxfO`H{nbOkMtM3*f8IOSwj!Xy&$RJQz|Xkq1LhqZ|1NL1Szneg z$GG%y)bX1ViQLy#u%Fmn+k4;3?Dd(iZcopA(!8d1W&XL~%&tqHr?%{U#Au|N@b}#U--W}!Tu=D3YUX23 zwK=T?t7dC7YFvz$tG^bJx2Eh!bIFE_yV$-|oJr(*H|IdlYvTV~X<+Ts_ z7HG)*+r!or#$A3SMwGezZKgTj&8g4%ynD`` z@pj7fc;}{jYHiU0&r2H1;wz)y?zz>j^Ci#hsdVXK9oN+|8B*eByq!+|jQTdC&mwYT zq~V(U_9b5Y1_DQV?o>O!)ni$kDBKkM%)Wb?M&=rKr&llM%+jn8J$K^Xv^(y>s}@Lj z&RjolmE4MVhCxB8@t(1BI=B_x&o=X`v&luJ#v?g{)_gDXrV8B$HxWTy=N)SeJ;Vs+aR~<(RKbkWEm_72#F(%h@88emBBk${L+74aq5T zOgnxnaIsC2z1wqT=Q8(~DI0zKqf2(yJdd~eyEmoCl5=Z^{B$S&%SorpJ@3Wz9NGOc zWp{*U#lhHhl`}kdZV)ax;jHWNrf#Mmd(L?${`pD$oi(pJ<&&Id*|bKtURXY#uXgSx z`)7MsPWIBD`|)c&1FQITtKU{>drQ`D>)ky&cJ|%b0Yc8_6TJ6KTxPKL{>+4zHl~GK zFAc1`#MD+US;@EX_1DvzzGR8w@Py+49ekER3~ zD6CiT?)$IyrPy%g8nuVgb33(Oumr3-@x_w;wL?()lJ}hooDugkG!)r`xU&oz`Wd>i z7R**Y`c7^-%@DsW7BIa6`1!GK6uMleQK48u-bag@0;4oTCb>1^f5lRN5$;F=4u6P}`Q7{HEZz1O z-+MlVd0%bat?wr6okddpM%cKJu^e@8+}zueW>a_si2T^kkcU72e9qU9_%%zwzs-8SbIU#>f^ zgY89+&Bh=2r?psxrpJrQNDH)dEjed&`+J*HaQP8kdgZT~OxJ=)L1^Do$S-r8Mn+f2GXN&D)gZtZ`^XmRVA zKewmh1*hC83LXJRoPLEL_ph5QQMYkPf%U$ZPt}$!zL>S&<6mOmm)mzAnRoo2!SXI9 zBhfIuuwef^|HyaWygs$xEu8b%ckku5X{+zP{Pyj6%CqNNzJKq2oBz7@QeE=OJ6XN! z(|RXQ7u)b=_p@EOK`&iSUrsx#F;Qwomt6XR;D53kq8L_A+jgqdD|Yp%(5KGEFS3KA zQdi6h_xf_{@r;tqzm1i8PR#i%&*W(KnI(MVf{t}9^V^p{{`~b+vQa>ZBKzElHBz_F z$^6~2T=(xe;R`QzT;)yqdhxwN;HhSrO^v*6+YcOfPpR2q$m-BHf%VGW+G!CRUh;a& zuQX+K=%4T-NxJ99sou5?+Z>hd=QJITPUe~}WFv4!)clKSScl}K39)we!Bb-Fw1Q9a zw~2HnXRMkAY zoXmP}+36p%{yz7x`L#H9x_!>PjVw{0n?G**cKU9$;P%6Y1IoaWSHl2g_uV9tzQv3KP+gKlj5qTpb0$^uKL2YGKzV-L>L{ckG(h& z%FW|6mwRKw7HqB008nOCROqdw?i#!rK#iLxZA<+%p7tbzRigZbIrVBQgQvgXKvh7Cz+ye zbLx&UJ>OrDU65ND{`J!JmK%qqT^D>U*138vQfpOVQScFtg}1L*c^d4D=dv+**!(&* zWQ*Uo=mWa5O7A=UnK;FpJ2bP=c#it4!@utsq{*r=NSt+=9=9| z`Y4?oBkDu{Ty@wLk8-F{z!`AG!`U_1G;I-RUf`W-{~Ijk|NdOK$qkwZ$*@+t&xBo)c>yZmR1k zej-pW`0JzaLe3`pSifDbO-t8jzkcblB%B-zCA}5 zPr6z9>^7fTDfj8bWkJ)VLk#pvwDiOFi(c|c4Y7<_=Or_xi1iL{HP2PeN6J6sOtQ<( z)a4ug#QBvlzc+4+aj57yHRbEh=2d6(w?(I`9I|zKJu%qJUA#!+>y-OFKVCK^RA2u% z`M}Lyu4#;I*UcP_*6`Z94YR9HGJdUFdM3L@$!4-@WKG=Bi5fRge9Um3eC~KuwpFg^zp&5i zc7K}Mck7MFrri&wq;}jZKPBhvKJP%e!e`cnUyg-rb`Re(!_1<#I4Ldh>f49eKMri& zx^Q~*D>frrCvaC8Q(>-CUp=U{PkpF+V_7erazovg$^2pX`wXOP*>F3Xw z`wE?Vd1T6`*%!~4dr!KZ;*TSUK&@$?5WWU5FyOoxB(o48_xrWO!oz|<4(TRmBIt%X16L6en zJ2v}heq^c=1B1;3CWZ-r{r5%x4`a)&s7SWo{pZ^n_1T+VL{-ap8}QqtUUThm z+LCAO)ti@-?*V(QAgv$1L&TGBhSy=I0_xi9U#IY!9n zg2AiVYBOd@JWab`p6_FmnlSs-#AC0Gji;`8;qx@@&4aa@E<9LMmsBuK^z;;;JD#x@ zrrutuU1`$9dAiumyIAao%LGIIJ?+~+9&(TQ6|q4@@>{#i2HPc3Q`*^=9xw~Hc+rw_ zs{F)54Q|I3cMh4}&zs&Akj%r*`kt9jis|WUKW(uvk?RvW`nea}T*}Ki@f;(|AwJ&q zUccO4`9*H}Jbj%6f5h}z>NmbTTFkuh9Fv!f#oGJaKgGB+yj;XHSI@Co z=CSC(v%E>6*4M4d>t|fo&NkawF=aYeR+i3%+c(_ge0Ta?yf`OgPx*?QPcJ?6uGg9D zI>(74p(&VmN?zgZM&|8lcQ!bBFqZPERLwJGOzV+IsW$s=B%+wK88_osyIW z^ZA^Yj2;@zNby`5U41fD%H;a=sMWerT4qf5-I(51t6#fdQh1?uwYgjE{?Y z*;W2HgST*2%*QpyeS9yvFH~I==RNu8rVp2I3;g%k!q&7{)wyn6xia(n_mkB)+oU#c z+q5)t;e@)LfRHkVx;B}bFx5z_TZ-a~g`{&{te&(=)NhV-aAVhu>3XMy`u6b1{Oso1 zxl(7(x0pTy&A#bZ_RpLqszZac6$ z)Z|6Q#S*u}=2f6u zahBDCBW$+=R?oILKSQuIR#hNt`8}D8oQdrI2@|+q``lz(r5yDA_g~Q@$BPbAlcHw7 zYB(%9+3vUvbJ6AHQTg7_yb7QeC?<>cMVZzhw{k)4u8+G5GvwcJoq=%d_7fYBm44m8e4uI*Zgufsxa0&D_|$z`d6HjSPSDL zQg7V)^00?rW!vc=v$^M3_B15$6(lrwp4eEq^ooe!)HBYWS(|(p#_?Th}s5$5LocJf4O`kS~-TiVpa6hk}KZEzNXr; z;_A!dC%RLP9saE#q9NU!y8Tkwo;2rU^DRVzGYYidww&2fJy(>s%))QdJ&uFyfgSS# z?3~x%Mts-9rPr+& z&bayM=a!J$ZSR)tw%GGG(CO8Eo-GEl=BM8?wF$r2>)Fl9{qOLkhdTQk!XA8&o3!06 z+Jvo?okfphd7sbsyA$6%k6o^u^wh;Hbc&&osGO?LE_nyLrPfQ=A6`E3;M4;e`^D7% z$+-n<3*4V&tM@&ipS|JYR(_&j1IS59Bip~MgL&a;7q~Pk3skX3FJjQ5NQx)lV#YxiwDB@mThUCw{WBuwTv&J{{~3;IGSW$K+vIVzg?PjiTn1qkEJy z^urI#={*v^Fyvm-Mg^&xufk+EM7>(A{BYe_mb-zg0=Mp(<2=QHE5bad|8wLu?k|2n zE2kZ~dDdoYz^P44PmW9ON_tii{WPk1LCLuub9qG`ZU6h3DKf@(HAKIU zT&BKF<+yy9zkbsVxh)q0C#W59UXotaV>{!?5dq%0EgoT4_MMyg>5=^E+wza@=y^pO z>J{ko?$OTvtn0X>b=#WmGplyheAYYnQO9%JMs=69XI?GO*36E1e{Sy8w9*hAj@az) z;`g`nBf-DZQ%)6C7F|4!FGH@Dw=U=@;ieb4Vw?PEW$ocdS2Fib2v;#772vKrToW@r2I zgkH?kUh!Z-NwP$jglw6w=Zb*otLt1RPfU!_n!G@I!D$Y?qgH?Jv=y$fvf4VWtLniw z^AA@}-&xP5z1My2m$uIqoDDZ-o?Ft}s4{8qn-ewMH+>zZ2itFd&$IvH*{?3^B-|2` zulM+}ZdabO`eNDc_UIt(hNEla54m0OY2o!0owWaUi^R#DvtYG@?4?C!Mf^41WzYe$Fdim?NtbD%h+vy>zcXP-A1vG z-cibze`wj8F_mqtO$tjtyzypJaiI3gIRbaG3x9Vqx;%L)mvTc=@BgK>GioojgEO|#Y#@6{%SuXLuLD%mYo z^lHPFz$8x3W4~uQp0+xp7PZ?^@otRP@A>W3@h4`4L?~UFBvEbc?(er{ru#ox=IKn! zdk$N9?x;SXa%Z|t-unH=YT zoc9Zvf{O)y{)?M>>uzPm!<1F^ygYiw_atk6%w~Lk+fZhwnZZO?}AgKZEz1bjaP!Yg}H| z+fV!G_}bTfR&(!}(&pmc8|BrG$E|04{_;m7rjoV&^2|1w+5bi7rQQe^QLpwlapOJQ zY&o~SWt~}?gWKLE=cHe)BGEo zj90jAVv*YIKkt`$%F)K^+Q8D_PTf;EhpWp}e;r5`pToD_-ssB1S$orGYbsscZI;!q z`gEb>!t8d_XWu$^Du1and6x10Yqb20{K|>OOUmuV9%f7beLkm_UG%l>)(dlacdweH zeB?Z@)8^|DpTFBV#n*oRGXkR<6$Jb~h+8y5xPv>9BL-iF4gHy)MBbs)3ee^O6^G>^F=F z{c`0HRCeywk7o-PFejbA5aRAB!aHfX>GJo77A%rcw>PR# zGnzJGZc^J4!#SQ-TW2a(1Z7{^W0mi4EAD_Zqx16lr+W_WofdUQxy~T&-JT0SBOD{E zUY(tOPqoD<-D0Jh`xPfmHOJrY4>?y@J$7rFp&F{B5W%~CeueQ3Xb+&ej zlKJkG9gQiQn$iP2&eWI~yit4HUg7u0;r}uHOEX%3OMGPUO?JFgW9N3~nX+HWBAH`m z-h2GTx$iPb9)CXP=HX_Y<7X6}WGy$I`L4nF`h(w^-eGrNysG8w&(G8Q-rQ_{{@Vt@ zNqxRK&t{u^?09|lt--HcUmJN@a0$A76%DN1qbDti@H%e{p+?$lAqT(XEr+AL%ch zqsa5oN9{51hBb>*vgY_3b(C@6?~ACuvf!4JV^V~@Z;IgEg}m2`SUPnh)-WXVEfV3r zVUZ!u>rj-rIJNvv1LMx1Pw`LpJ$dB(<714uWL>gHGP6XVNll)EtW%vT+vJ|;zbC(M z{rct6Zq2Vha?VaU!&CY=?%PrJPStbA*FU+YK7U)TQF}$@|23%#zbc1J*vrFZudyn2 zVe-L0T-nV|diyg@oLly;Ks5J3{-=NCFaNZJZB4Y@((Zmt>$1n)8P7H=PT4l&Nw3GM zDx0m&!LOTNF0+k!eK0Rqb}!@gbtf)W>po{ycwXs|uBvj~Qtr#7^S_Rq-|<#`;p#tk zm`u-VtWi3#sr8$wmS9WD;hjpGEv@EV*rL98^^v)a`-7To&g|#&>Ql0czB21yJaD^)SvR`*)1HESZ`S#2*OI?E-nRMk<1p9! zx!W=pKil6s&nF`|Jhgcr)5iQ?f;P=9MYlZmwnw@gE$Vlbxcg5;IhDES?(S8SBEo~W zSgbYUSY;aVvSoU}_G1Ct+XA*bJvg=S-O=Sro7^MvZPq2vDBut2=h?=1#44qJ%Zo1v>}LNq=k@OSkz2N~Uvr;$VDWp4n7i-z z@5EYOOb%Y0x%<{!kp(-WX9pgx)#|;xE%TY_%g3MIE^UX%Ua5wHs%d{d#SZ1@JUo>>q ziATN@y_RsyERvWyNi9GB>I_e%BiBq#tM7hapMK^I{|V_kcO4(hwh@i#Pd}59FA=du zdUngSpD7Paj+a?of1SPT`rELa_v_E|-;7_rea7EFoBL+dT|GDGZnJo7cyI5?b=tqf?#l7<*JMlodANhGW^R#{ zTha+9bGMI&E-D;wY5KaDRk-Y{**-skw>y7SEO9dTd;UixlHcvacAjIFhUw4m*v@RT z7J7TS@x#wjsY*?@!;2yl19)?ORoV0jEJ>L6!&i_u~yIbwnsVL8sUZ!Dk_vCcGB%X;? zCKJ|q{xVzJvi4+?y5~)u_=(S4mV~=~a(=3^;L^uZHQt}>kJ5hj{Of)Dw!H4?qnFO# z-dzY+|GRxZ%jMf=WlXOxXf8M1XZDvhrpEbw^1p{Gh56Ww#F#kb6I|Ssik4-^oB<-!!eG>>5e0zB)4MXeys@+P`IqM6U3!{ExMK>mQuaIa&1W zvh$f`Png@ZIO`rWUplh?MDLQfK1s=>ewM6}EZShh^>jjsq*BvvyV}9V_|5pwdEUWfY ztlz;EH8aDC{Ig%Y_u!erzV*^XmB;6=cHG@%!QLF(dS5By>9h8CTfXZb z+I-nsocZR@uY4OPeEGK3A@nJiyo`98jidIoIj76T4U|`e==t)|(6QPsOZv2t}^uI=@t6bEjs=qJV&BH_{BwzE)jhuzTL$pt!^5mU?yX zy1U!E^Qk)aHqqWGaBkgwy3Bu~Uz01CJtjB*@6nM8Q2wrL z5jA(G!o91@>l-8@wGDl^+54G;&vYek?+|+EKH<$1@8V5Q551M0ko@D6=8nM2SFG~% zSZD5J?b6uA{nccTh}1FJytqilBGvCim%m!b*c4g!|3KcK_eD z+<8lVp8I>HNk31>lQcdNF1BorY5&#zT=#!oe>->L2S)Z&*B9O^zYsk?W@DW3+vT># z;@kJfPp)c+JiJ+APp)6uHul@eypp?%{ZA$zJF<7i!zBLW+{=EZ&N#?x`Q&8Q8TKq+ zR@J_Xj?EazjH*J?C0B{0hdJNo zo)Q__QFrgyy(2mtazzeq<(F4ZJsG?1>?iLRU56QMKVC_ns-g2%=-*wdT%!{?-fdh{ zk5uix#bsc&>hx)yt3B_`ybe6R`;F(xT5l5_sZ;0Ax}QBBHOso3x%orzHBSTH%*fLh zPAZCeT`=UQl6I~*E+E&?q2TOiW08{&S~0lc=z=edR)7gt#6o{mAW#u zplf?ve8k3}8C`8+d)cEcV(ve;Nt0FL3$Tlb6E9u6VeNycHQO}wFWqUq;c{crV@|gc zR?kD85}gmFr#<=PwCvcD3DUYRUYn)dyC>gWH6dCkx7m5I=Qifwp04Ng=E`P2aWVBX zP20TNaiRK>`L{Sj{m;#H-F4jg*3#p9mwXSgJMuhh!6RTou9=a?r zv&^VPG)1`Qsilj+%sQiv)0;ew8+zE?i!0`N^Vh5fHH6(_v?s~h$#@xs*8Mx37&k5==zZ9F;GZZA)Hlb^%(GtaX1 zcX5Pu9&@rySF*J02r%8@y;eYT%KRO%3#RfOd?6JzCxG+L{#o~rfBUjzLHO&JRqdjN z9#*Y|0gd{fjQ*Bg2`KmOExS2i>rI&EJ)V>PdY-Ffo;e-ZSdz;ob?R=~?V2f$>#rpJ z+iF_&)%D)>@3UV>ol3}d`P=(yrI3oUvp_S)V&a6r+=@~hYaXZOPmLMNvPRn`2t z*Oi#&b?~h~#M`xgI@ZhIM+KjoDYCZpskI$<;PhUIjo0V~8)y?`O zPm#k8Gk%%8ziRBgx#maSB3UbQXX_tZCk42;Pp)E+ExF+H<8qgJid)I*8$I%jp6#y| z+a)}zOwKjk|F%L{AVgb!ZhH3a4_(SGFD%2}{=BZT+2UN7fU2sfcZupVzebN-k2#k( zU)=kztkk&SK_VM}{@O`eF{=K?e_lFuJxOTPo!cvZKWJ7!(9d*^H(o{`dje1N-8?RN zOHXEQ(1(ACc1kY$vYKq?@E$3?9DQ+%&hcYcPM&tmW~qN(7k}JZy6EH=Q|_~8Z^!DN ztug*&?KJ(^<9qUX*JbWiJW^)P-G0DeapOde6>m#6e3d(XnbmLgG-6QWJeIb>y1pDr)Ke6tS(P{UonpSInuJ*-zuP@JJ zCY(LJIo(P<#`DIBa4XIU{Xd-aXSL0mrB-pi^LTw! z#%gA7|1UoUUN;@o(q4Q}JDb_B@9ahXjry_kV{Voz?viP=cbro5Okmdv=QC_a4~svp z?pDmtyd0MjrO2FkNUbR2jr+#eJ5Fm(tgyYmFtxMq@v`0N-RBOoRd4gvDyopsQcPCL zWh{EulH+cX7W-2y@ZJD=}^I??KkxM21=Bpy-9`-)4$yu`6{3`GEqH9)O zD@27wUiXy5wudUSyza@kd$X#0rme!+lf3J$A3MSS!S_SkisSbm^q1Z*c(*gfSU>mw z(dF9(jY@sL?=M+sE87_RsCdIFr|By!SLACR>~_d7iR5^-_S>pzqk!e>YES;OxOTld zOfzkX>7v=~VY-V~UMblwa(}w!#<@8rnbwUjZ60l~6>E-my0>24Zg#oYz0GUl!*ZX^ z`=hcZJ|@>{{lfhV)^Dv|XT8y&hB3y;TJiaQmVM879;bZn);lMee$L`1%N(zyw1>v_ z+DrNlx$pb_vGUgXu;rxzoLTZ2R;M}lTnKl-b5ti8f4 zQ(v~w^mOy?Bb?PgbCtesWIU;Sc+RbJTzv;*H}Ky~f0q92_w(b=+XW+B|DD#F-SfBk zZ!_~0+vf&4xr!I3WS>c7+7aS*vS;stB{LP+YNyEQruo<((CEmRlh~A~@{i%~l)snX z?bqjeGmqWIM=2jVN$hxbNYVe|3{yPN}=``*X1_`-8Ci_22hI?AkM7mDGu2rU!zTN2OZL zyg27#ZE$_={_4weIn}4_uRFHgjh|z#>%wiSYf^7I%{_E(&#SO0*Y0e+V7+YDalSbc zw?dD{C-1-MB${$9b8#iFYP(0MueqwCJpRp2FQ? z-ht-TzUI?Tyl&gu|4EAZx?B6}8Mma)ENi}0@QWqrUU|JmyW>osEyY?ww<>EVG(BD8 zma4vTnfFnVtEP=w(^4;NDfnl%3s=FX~3er$?IzMhO~5}p4fx@F;q#2+R$w}m?e z6Q%kOEZuduS9DWY;ogtUnl7)V>7QHlJ?7HXz1d>RZoP_>^S!u|DJYN+(@&!pw4{LV)j{mxkp$3xe862VfKM1 z=E1zIfT!LY^u>Hl{+qnKpvrb|+Fa$-^wV>HopzVl_i~^0ku%a|Cn|ePKgF2Ee4p{L z&}X?wfsEu7&e^vVnd2uGp&^UWTfl$M)!e~#LltbMso>t|{H zX5-A&S$i{aq5XmLQhpiU6QvE#rwO(PF3!q(Eta7Dv9V1Q~GDHs=Zn;Gw{6es|S*vY0pJ$|EBk>y3gv<`jyS*_k;HaUE(VJjtR=l zBF|b*E7??>eLhobQQM1a(<&YnXo*kUv&u{SS3$}}@4}D9F5Lxf1?>geE@c7|216rGbK@sjX`nB zQihucb~Jvh5H$Y$v@v;^Ut7ZVZ26qYFQN-&yA)?7_FL32)bSpA+iF#Dd1qpQ@1LbF zpY6W+?WXDJyWc857JmM{H%6Crg=LCF&(zbFPKQ-1bAug&)S|hsqc$X z?3sIwOI>0uWav~Haj#V`nS$P zPNQ2tY<989s|ME2m^*jY+(nAVnm?yYG|kF0#*pX;95 zSu(?A%G-!l8>X)=I<==&DLc%u>fx4bzT16zCsYewJbtvT@WZ3i_ntKIJ4zpuUvqiu zXOVMPTo3E+{myrO{apV3=6SzF4+h-dCM@^a_}_|YhXq1c-Pq>ZHg%>hx1WyG?L6Hx z$Id>v`K<8uhhK$trJN_tIb$|{$vLXv;&rAaZFZ=b-PV&WvWq@wSn7Rz!zb}JZEJy# z*$U}3c^i*!m^yi%<>J{{YWLb-9+F7CZ^$Fcb4n5Q3@v|(eZ<~(J+UBUA3S-aY5uXsZXBo3Rp@z-w2c`-Y)!2iXW87+45@t^-{EnR7_VCQwUsq1{~?k(`t z`**Bj``iqFrThuGryehfc$2tJb+Pxu8?z=Cyt^gxg#Ajd<;e|47mA%aa#3-oX!e)m ziDoRNp!FBr-Z=VT`=^4YPyYyFQdyu5xr2J#TZv zVE(N)D<)r`(DT15@VE5Y2`evnZF-`!fxYSelEb{OwrWbbwKjQ8Ua;{&FoXCH(by}S z_urbmEqLlRnNK$+u+$h@gvZ@nUuKpjt=GU>EZjByHLHBhR28l%IllEhw|UZQx=lHj zp5ADEV%o-4?fd_lZ#|@)US46BAh2J2XZz8)4-dTBTzQ<$T}bxS*Xhf51n-)bcVX}G zW2Zw-SS?<5SI6d5+uGS?R>E^b>^Zj|tzU80pX)?~&xP(KD-GnIPkg46e&Cet@2(e* ztYfk`U$pP74?d@V=^Wqt4bkuY4!&oT)fY^EW4%fy^ObV_?Gw_bEL)ZDcUZ}_SFDj* zsil!8xlci2p8AOhzkfd4)&;LxBlRy*_03}CNySU9?zkYa%<;sIOA;ryzvnz%{({ll zO4X>3ji&SxKH;his=@<(L&VrP_gut!e*bWyS@C&iQ9+r5#^Uqx;XXAx$Rw>Qd*rgT5)fc`> zM=g=b+fV)af@w=1h8})@c#p8rwOcFaEw);k(;C&7lM&XHrE8`XP^O6Vi%J?I;!(w}JVM;}rg=_3$=NTyX~K;Cowkk+>h6kqTb-?r3;($KEaiQdVuw%z z7tf*w{)0uY@)f!^En2<4fAQqVKlA1Pbp2YkH)v;ndvc>-Gk?;L_uKWfzE{h&T+BmacE634%(8meyTU%N$if8y4E2gJ^^CnZW4ujyU4;XTulOBbw7boBim zY_p!Sf1}`K>t-**x!;xi9v?4?bdctJR>`{f<*VnuwPoj>gOqOjxMjS#>c8Bjf;Znc!kEKFq)BkDF zOz$6r{J1u|+J+(hv311CqwFnNy}U9P3%upEwmbjle6{E4FU2`mVg=`9MWm(``&6_E zhHk2RD<&s!L*T(=qhr_J2{Zma{9WETmE-y3a@&85+rHQzxc2Wq%MHICrE6+#=laCl zn##)3*shh8{Wm{0duqm$W@-u9%>zU9q%ccE%4eySC`+Uz>05iJi5o?wVnm z)(Xk8@0ZgadpRAtCX$<1wsOuUZ@Ze!d%7Q_N%nAdZf{=Oy!PM@cclXyb=H2~!8th- z3|4Tqep2vq_57W7@x*C^tL(~7T1lVNCm%CxTKo4yYUE;`bM2KOnXT0^Tb*6r_Wo6} zo#L@0Kk$RT?HBtOrUg%1@3!e3G!d}7|E}!mbA_m`301u9XLYoFt_F#B&6D`Lz<7Q_ zeUi)aV~m@x$!jfNzSzF`PQr-;*&?TzwgjmQ)_z`p`vPO@hT=~~#f7WnZeODnq+pPi~GzNf~a(zVfa_Mb=dZq5w2dC~LMIf0%l&$D{UIBZR3t`d3fuPSJ^Vp5@) zIDcu*o5`-YpVL=s`lFS5<7V`IdZ5lCYqU83;McWb4u)n0zC5-b zG8Km}F>>*0-TX2qa<2FT$yH@bC9^ND@!@gdb!Az%&Pnp^-iQEcW3}E7#|a>Qkquihkd~zU1qY z{m#GMPnd4_?H=>LRswqyU-F?9C&xc+zCCv5n5e`U}`t(B>5b|-J$_ILvu zzsRyXbE7)g6**iVxX#&QZ8qUe?{7D?MATA61H}4NstfCeaN(GabwgjpUVYn!-OYy{nYNjTd8m{4o62lJg9;%Ef*Rc^l5J6Z1>y zVsgE03qSJ*(^UOAU)%@zM$zRm^Sk z%0%mrvEO`m8~OQeT|1|{HszgBNaK&yy|cOu=0thuPf-Z|KyUkI9s}fE~zYdt9IP4Nn2|K2T{V>|z!^sLJH8R|UC92)HYzq_^Q3$L)| z{D-W;zW$GsCbXxSMy@z(d^hITFVo34D+SIg2|wrdQII>V9T~oa_t4JMPVGBlg7uGt z-P8T^)!S)WzDK|d`8)id6B&2pf7!jGyyO48Jb|nIpKG5mFqo?SXSQDVe_G!EF!c)O z3T=J+|3!PgE!n)({h;zTmYaWA6&jdWsqm;A)W7lF-01~l;FKvR6WOhVHXTdd z9=ZA5vYo!Zf>Mik=5M>TI&y1Oq;Y6*aNz4%MxShd7phNI+xzO*myg>G{(en4p1tgM z>FSHs+h(7AyyJ4Z*b4q%ceOlL9rf#fXnf$|q~(&`NAq{DJ+ScS&kuJEQi znQF{I0hMzVrnuh_5T3!XIhSekWkDG(h1rj6wC2VyTQc{wQjKo=@4e}o zR=Hvizuw#M#{FGh>59F3nN|DG1_z(dU=_cANR0WpBI~7JKkOu8`EolG|3vuBt-bZ| z-iM#u#WtRuOVpnR3;P|{dwXcA$TrrSG1>`F3YfZ%&M%+MrzSP)q)g-+p&L!%&%Ngz zkTqBvy>QamqXI{Ln_XqQ54yc6KH0a0M{Jslr{T{}2V@o%_i>b;V+~xZE5p5b)wN3Q zXn&oR%bZ{JR$s`P=;r*dhx4su+4EwC7^RsXI9&Zq`1DM8mMA$1xuzBQnHtQ`bbV9Q zEv2}lbW=M==0?L^xAV?f9pma{IV&*+oyuBw{sf6n=FX}YCQs~Yz~_lavx^ay;8c^@S9BRgGy zCDJ=x$I_3f>?<^EnD?x>rdU&5a=zI2(Gw;cU+&hjBahwnHurJ;>fN1D?#&m* z{&UtkrzW9aMdsG5CW+jfbybbOc1}MZ=hT1W%L_JN4G!bm-jA#b73bU7Hg)L<8p*C* zmG%3WBg>*^Q!hA95eYO|f8cRtQ*c<$h%SjJ=hR#$*c~g%v+9F7@7~`!DLm z>33gNo{xS$&FV+W^na|k_zpY`OYHGG&Zi%#Ht*R2U2da?c9#E&bI)5|m~Q&zV2oNv zUmL4;;`;a%tMa(t)}OdAPpSX@GNByFEhdZjED}oJ-zXAG)0mPTy-pLbI?c#pC0l^qO*Q$>B_bJAB!zcCSe;*)%baSpSBibTozgP(0aUhK_YdF4O* z%|l-@SC-AME7E$nV}87bo&wJ&$(n+qno~^4(ht9HYV+won8GCKGf&=Du`t`$?0{x9 zAA@&t)d!)~*77lW8W*+CG3ri8>@`)G&NEX!)?x43K8AaL&M8S8+w6Z{_Hw(_E$?TO zvc;ShENwrm-c`D{Yx5CNMN_`agjGBA!lEmEZ%td;bM&rj@R=>P`Dqt-tlf0*F7uL` z!s~4d6qX&nrd;!k*RM?sidK8t zlXz9JV#$5wjjD`0_Z{xtCb06|qSc2LohGah-+C;w;pn{d2d~oI^d-0xwUf6Sy3Y?t zTXALCpT3!CJ6%H)oqPTrknXZf`xBFN)6B)Y_U1GfU*_zSe`*t%TLeY{$YBs`HE8h1L>bjSKG}Ourhj4*1^0_XubW0KYS0k?=Hyt zmmd^3H(O!m4<9x&N9#Q?v1e~h&pBpp<9OS(=;Kn&iG`bHFO4-0^v#J^JSuDZoumDL zlaIRQ>uXuCRs~SVbQ*0)?csw@hO|aJ&Sm$2r&v-U*d6+fh zuUV!=%m+?CSoB8f#v2)dnXU&J9vt%Kxh&{z#CvsDl4{%fiVrJ)noZBxymRMqK9;$A zYi6xnxKjFOoM*w#%jyBf>*giinG&7RaBZ7+o6HpE2JiVH7rp#AUv80cvfg*>;#4D} z;QDtDo?KHF<*Q7rWxReQ>sE93vxb`ZtD!SOzV@G!eHnfrt^b78B1uKhu(?T{PKOP| zlo!svEvK7Wf1yTn$?wz~ws-CP&V=bdoX&c7`=f;pGv3dy?tT3G!80?V?~xt1k1Yu_ zTDz+2)qD$M&9~kb6~|9%KGxcL+PbNc{dV@EO*tk(r&(`1_q^^n5)|Yi>KnFZMKz;J z(ToN8;-}V&I-W0Iw|&8-`$bE5_lR^|Zb z%BkD-UbmibZN7uX3C%Z)Bce)X&wKwxcU`t;;#=6~{;=&{ef6dE#?8wbh4Q~&x?<_WHwC6CtbQR1JRBC2JQdL^Xt&+OPM`ww4Su)ZWeZ$i9> zz0oAs7)#$QzQD2SSvphKO)0Uzxs`pv0!hE${1j$k3TSK=mlu(m!7Ju9fYBd1{whl)eaDX(HfL(AetIk!%^{+%81dhch?sqzIA zrv;q7INi=tmibfV=d4`LJyR~I9%0F_tad(iqyD9J%Z#$Vh>aVvTH0sID-_tooSDwj za8C2a!I=m0?|c&DdoIkf>!|W%9Tp{%o6YMsadk2UiP={QyT_%<=O2A4^?`K(`}fq1 z%9l#l6t8+Qb3spt%X6)!1E!hWy}7cf!as5)4)t^{Sv0r3iTmyB2}k%Yu*#NX99Hf* zw0BeJQl{3c!a|#`JeZ=Q9PnnR?@pNwsXuR?F7`gf-&K^5sa7%R#RQg^V|wDDo0c6= zZZKB1Ja6V0)Hfz1k~3EMIQo*T_+k^RbfhD+9Js>c?iYnz1MFFJqwt??`QW-(1G z$+)$dNe6=GfA!q7JSRnV`8H;I)yqDy{Tn__e{%JtNZRj9JN->74p~aB*|LjOPCD@M zp(Aq}*B(3*bf0Z;sL}4v<_RIL5yj=JGv@FJq^bN8md#-Qx9R&w|J5n2&l=fwxa@V? z+Zj4vj%ngk7YD@&R^L~Bun!72Y&d;uqqN4MT&Go82Oq6YXPK}g`A~t$mOmfb89CZC zPlsB)Ob)qx$9c=m;FMUgsWO-QSTh4&@O$yK@RY9&O`Ndqh5Gq}DXULw30_$xH#?&D z?yNns>rEPiuex$vx@MsLR`O8j>BlR!-d?=MNItG%`i2>14;I@;UfvTY^D`oCYbyuO zf7SDO@17{~?`Us}DLKJqo}7`RbDn3B%gnRt(+>vpWlKyEzrA3})UD4WH8mM_yO`)t zm-+T&>yi7mEew*?t&>kK&YZ*Xp1oGf@Xusn$?ccdX)k&?J?84N9i1;`%=hL$@0GDh zY@_!%KJ$xx^V|5lP9`=oFV<|jImP!(eH`!6XB#~8qmvd0Wu) zi?#1fKj!!Q$4w{hQ2u7et1Xw4>kr&wy;r}_W-qU-we*}>W^-mKrcPOudSzee*GBGx zHxnykR5qK6tXbBfb$89P106N1&Sl=!n)KbfbD8vxTLQP_m`~Na-sF`Ce#3C}zh6Y= zMESaE_FJO=7ubv`=&eox~n zjh(V*o(di+Ro8xbcVEHX>zaSdlfG-aixf7fpRUs8m@#k7s_ldy`+s4ZZ2OFQ51es0>Kg_go zrrKI_gL#}&pNCAAUi;bZ(rnA8oc})Zt(jvZ%6|8Xf9Q+EirELwcC1{tAZ4=G+INSf zj1;@`Th7jFD7D)u=OlUAam}pR)61vrUF)5p_Ir0>&6aMvt82S9zj<@SWeV?uYncKs zuDv<6?BUTFOJWtZDl|%Ro(Ft*!}x$(|3-y$x!U=@Jq16$1Yh9Vd(&i5*5nJ)+c{rK zUoc+P#meuv;_$vHFT5Gz6AN8Jj%B6K_%yF`Qr)K$&g-8niMgeGdQpYxr6rTX&DSw) zSo()qjIHLY$u;TB$J;&D&W=}F{Ah1)@Kq1~qJ9CEL;Q>8cRqi)fjN@x=IXwB(aAhf z{x5VduZnx*EW0(oBLCk8M!RD_nnId%A5HF)yMJI^k_&^}bi0QK=dORC{QmW_nBSLI z7HfaEIXdN7l1{%svQV>y8#~YZV0(+p*Yf#hD|{^!aW`=*-@x1KcK5G%!urCuduIge z{o{-IeRs{vZH-E{{O`rDsri?49J;pT*6dp+g`+RjRrL3}J>rz^eYHV$A=Bn%Q|&ak zTBYt?)LK2`@uN)+Yn#_Pr74xpDK>Yj_6|=y|MEgZi(+Kp$@dNN*K6NN%Uukg6}IKL z*>#x{9c!0;RF8QxkLhOUe!)#g5AyV%3O{qk|~00to09GXxOiRyLihVSG8jq+ip$Rk=Ob6wBa91mu)v1rk1DF&$#({&5kWm@YBDNXS`U z;C(CZBHzj+<}6jwH_{K)#S~|DZCP2Qv`#W=+M~Jo?`Mdds-8A?^ZbOi!a&bZ&fOf0 zGy13Rx%T#t#j)q<qU9pRbEzX72z+UC-FaSWH~&^L@@s8 zngtdrn~g7gt2w%WYmNQP7i=EdUv3*ZMP7QTy{xG4-nMO9*T2tt>wJS}WzR9b30K`) zS{Ke)>l8U@>TzSC^n)ojuUS^SV0Q0Y`9$%(=Vt-o+Y4t1{zaSqd+NuP6IC8`#@Q7KX&isx6IZwOX(M-*YT|^ifjx@*zI;0T{GRW!8#iZU zgiaDVvVz?#+$1w`N?L*XOoj(@B2Jxr_54K0Asyy-+t^i$ua{MahDb7g@A(jt=T^BX zFY$Eb=|#OhD^vfy-^A%W!)NBiX!h%e`J6IVEpnRU6?yo|<|P)Q2Ki1qSot3M1%?`Z zNPAry)8P^KMqe=ehTtr&q=$yZ@9K*j1ao8$I~vZ+nb@%1(Roqoir^|n>3dErKUfZ1 z$b{F;ZF4Q$*=PH|gMAtQ!oq^b$KIc{5;wbO{cq_%r8m`ECdq7BRM7b@_h^Q@kn7h8 zPn+NV-BRAAdb+#C{DSKNQ}@#?`jxYc8LAW3@y|=$7NvgZ{H>L`e>}LAYkZ|&|E<}k zZX{IlBJ=R^iPznpd+b>@Eoh@&=(=aE%g?b3ZnQ6**Q5V+UA}VIMYUzRa*nF&yVzWx zEzGr^EVL@)bk!~0kloWyoZhQCsV_!WM4xNB=AIDISIfjjd~$@Z*ty?x4N_jPPp)Mv z*M!(ZT_>g9aXR}|lxpbOAK>YFar4(cF8we4Yo9 z|K7&uUh?PM(n@yL+B@x&W!N~csQOFdY5vKa#B0@y2}UrwuMYzxy`0Vcj8ywuM6~lZ(cud$83jv)r(HE-m2J~ z-X1c&_o=aL(~A`=QW!Spe`Sz+c)#nZfa3o>QYRW`e^w}3nYVVM>ulQ;@4h0RJqxBh zjN(1Q>@{m!;p*)tt}pbz`Foc6w33ZsPlQF*P2rk&s^hLz*!H_Oo|)M6J-pBy_Tg(@ zkBV3P#+p?{EjKsFwRY}gHCey<JZp~5bP+a$Mu8iW1)t|*ux9W-Z8Fn50t`eBia;NUY ztnL2-=l*zY)wh>rVRF@>CkJ1CpZF=N{r7$y-GX&DZ-2C$lg#Pzj@zX(NzlWp&zD2Q z{e`fe$&F7E)o}p`E_|JJc-^Msua@3O2zcY&eXr=-@@pFwJju`&Fu1fXS-^FI z`Hhf!+FXB+2xm=QGjFEkyUk9UmbfHt>wdYk(mXQ#=MtUGPA{yVGF|=o`c%}PXqSGS ze2tb%ef{QZmbS}8)$`nFyZ<^XecjoF7(HXZgxq&>5sD&DmfVZkGAGS-^2Ek9?l~sG zn~#Mb3_5Nyqqnx@M!V5BVJY4k?Rzbv#TKWGU$+Pyn)qy^`~rytvBd$VOT}4dPf4^@ z>6~f&@-Xk3m)j?(KAv~FUx80&yOD0mwpp&mZZlH8pW4ya&=gWv>&5l-1Y zWpla4IT+pfygW3@y)Qv`KI@{>4K=2<+ONHT^UvSe$HVW<6BVu85hdFv$hucXljT{` z0S6hUhtdr^Qv}}%l=m94aTPN3KCnBl$P(q9xUWvqs%uqD=o(@5m#npib8o5#?D<}k zX*uaoU+|UOW#1;8v#WnIZ`G$SM}(wIvUxs68M~C0Za?NoU#FrbQ%k z*bDc>zgZ#@uI3o*=OFBLBPF7Hf=vm>P zkvSfVSFSwA^FAZ=u0d5%@r_ev_oh|lFN{CZdOt-X{N(H8@cs(b+b&ze(|h@JHZJ1S zEo;qt!8y;N$2O>Tf;b0eaoW7 z*B@thv4`;+I9RIwn7uhR@%OE}+&5esF7}zaOWoaZ$+4mP^PgRsTi+bte0=I%d$YUm=4sg)R$npQ#ii9H zd+o58%H93FFDw>)SB+N^yys-Ar08`mIPHgt?<$FHx3(%|^@%!7Et1H(zKH*V_Il4L zWsSR=pW2ATs&!3`m0dX{Bme%t!o|`PFSUL+!R^FU)cJnm`#BdJB2pRrUmDl>{j=tN zU$UjxtK1;0{iT{s(u>Xi>i24Xcv3G^6(A5%SNiGM?Z`8Je%*f#obD;UXGi% zQvHvDYCJpNHunz`Y@91Mx1agYJ27pmzK+838~1J&e=@xI&o1JI-|to0T3;6|z4JrA zFblyE8nTDXWDD_{W9CkUDcNh+q*rgtQ<`rvd#7J z5MTTxr+LA`pe6o4m}T>R*=LCVTQs$Ik?yax3|F(FvfsHb-c@|{&>NNOm7hva+I~M3 zRj+x#b+x6W=;04?NgLK^-Df$!P5j^&j`fVww(HM5S^4(%?NcW>m|u1ZyuMxEKErO$ ztbI$T)Vw%xMBl~Z)RDs}Mm+Jhsf&`9M;gp@Wm#t?y{aiM<81l$h6xY3s*k$QUM5yr zw>(o*^1PYs{8@PxQ|EVe?1)l}ezA3tZJ4#hd)3~L#+ujaqqnJA{+AX^vcktlEr*l;Q$Jp5L#a?tVcRHe9_5KSD?^KVP!#{CmRr^=fsAt@_&nMg!TCzDj zXu^?8Z-sAe={d2eaDV$zlV3}c&yE2AH^py)00x2u2MOpeVs8}RlOBkPW=sKm?DtX`=rCam_!5Wd(j?R1vT z4iBcR&un*B75L1)_P^rj-`|JKOPZ#ivx)xSo5IAFyG>})=I1WQ3RUud#xaO|+GyYX zK{QsZg0tL=j z+AlO+BGQAJa$*!qo<1ynzlG^*Do0q$rX~Deh2Q90C#@zSvHQ|+IK zZ2674OI~mJk@@H6>l2r+f4qHk-V5nBCszh1hOK)xCFdqbxtpuF>$IpP-xu=SopD#eEct$onFg&iDf9?hUCDGz~g_o1`nI?&q=Lw^Xy!IznYTI5R)@e^C8pq6PK?CFP_q<@Q~g0@X^x1{$CP$F*6yF+3l&N`R&a7^7Pe?IANP-MIK@2i(}vxDByJp3Nv(bU=E17!U#ZMj zULBPCw!qkN#vKh~<*qjgtE*S0|E=LHlkb?BdTHUj*cUU(d$Q}V{yTKHjp@!0`+G0X z+_i3$e;}#wu+3qn`(-}Kt0y012OGaLJl4F_ZQX70&4;fpSoGChzGItb4&x@*RqFyj zuodzyzIoj5?_V3GyvxpaPum`Qwk$68#gW6k-f#J96iUONiLNkw@>uNz?>SlTyZW^Y zB9$L;>)IL_^xqfF;Mwpz{KjVswleVp49gZ@*^z9-_)2TSw|L*8o!prXCj!@UE}dzy z=JMAAa|5sPrZ&y!cr|_Ui?$gjRvkX5CN}x~QNuf}4aSR?D5jix`>Q3ln`M=K{HEDq zdKa#CR(-x5ZT9JI&-6`Sld`9`nY8fid+dDTlKTAR_pE+NI2uiHpTq6qF4$lk@=c*^ z&$`#KoaQ&3%uYR5n-F4sDd~sBze%bu5?sz6Kgf6Ij_$na>lRG-GGXdHMxKTYRGCF^&;>wSJ}g>12$(U&zoug`HzP?K~C z3z(;DV<{*5Eb)Zxm9<&!5t4EN;qJ_Jh1v6LmHA#oDW7rm{Wm+!=b?RNSgfj3Z*oSv z)lZKV3c;?DtLG?h_$qN#FRADcf34WWfS_G}eOca?xOUIVnKl0nM^-*(J)eT)BEj~e z3!Vuyfg+ zxX+flZ`G-92|r~feSUxA#hHW)%z_U@mHgQ}C(1jzs;gK`3fkiEqa^o}_jGB++Jl?+ z%lx?%`ru~Y`hbIa+RN*g-3(3PKAY8=RpC;V{VBNddWUnVf%xw;zTYas6$1KhHcYVE zu+K;aW*q_ii6Z9!O zKkCtwhm7x^{3vIs^E`9dFf}Sx{>6^g2TzNCC^vka*LU%v;tGw)3T%lz9h;9vBspGV zPHGcS6TIQsXVLj9szff(!{xEyMODtI=E+C8oF40Fuy;Qc5h(dGU)+D2!cpI&8}f>I zs+W28oZcoO(s?mZog`aX=sg6`oj5a-IvcBMzRZdcyTJeRnTBliZk2krjoY5H` zS-bA6>!MSxW)HJF--f0H2B`dZzZ`ePRebVAn?MkotPOVkjg8^_i+jvI+8t6c zKim`$FRG)I_CR~u)pf!?&Yfq2$^|U09qUMV7IiQ!f7QuQ*M8Au0$<}MoKZL_aL{l~ zn{bAP1yApMTYjmjB{w!IXPKK?TIhM}6Bd*^ zvdHwXtj=&h7GtTbz9dpp_47vgZ>MUH#BmGmU9Bz7S#^I)*CYw`>`bl$4{zqpWGeO& z)qQ4hEQGQ0(1nQVrAEi~txdY8>5H6VZBp@k^LLi1DC-opQ#*w74SGLu=lo1rYnLt_ z^4M1NXTf>}|Lw6KUdz3ZJ}t&_kKwKK4*irorepf=j>(BUe)vFkx&E2Aa<}JBTfTnD z(e7KacaFUCxA?J6QKM{sbL}PPzCh`!Gm4L;bDsXqo$z@5f!|whi(ma56>{Kyo@0;2 zjJQCfJAtW8?fYLaHabRhEA7~@Vrlg!z8UsG-t7-KYCp11xuIgZn5QkrP-8w{>>Edq z!x3+UVjJJHuYYrp_1aI*H(Jtsl97zP$1g;(6e-K`9w<5)#P{*m!~GxA*w^;?XeNi1 zr^YI5e7yMieWmzK`|8)rZ&)$;=)0Nihm|LPzuj`&y<2_H%ByOxSS<^*CO!;VX(T&I zwlX^;n$NU9aOYN=2EEC?YoEq1m{R#OTlV69b&)mF*Cf9zbz2@Sa;q(pG1}aV&ml@@ zdye_yAoC1&wcICs0Z}jBIqr2ReOuHVetqpb6Z_`7i)&AmO{$#S?oa0v20p|_e-X3}_ zr^I~W=l)Nh7WHpn5;hgNaF$Vce}Ju9R$Q9=iPZJNX9a2|`_Ejus4`yl1J`x)_+yVn zte)gV7Hw!(<6>R2w`A?iDW#8Jo!c8yqrJN$vpi%T<1By8_@Ctm6m2_QuIDu~y0)(g zy0VUG*@0L|rXtavw?S8aTw9sFS3>&BKLbIT&F&jZ*DLl&z7SnGJBmkK@Z$UrcX_3r zYTi@6aak*P&E{=2>y8yFZb@u(aui@??o^RoFQ;{of5W!M{ogikd3f{Nbg2m+|5d6Q zSr)OMkmNDhHtQ{WG5d2_i%^L;*~?dCm-4;P++%#OZ>hDyw|iI2K0jDfCS>9C{l7!i zA>)MK&ZeENiPP^`rN|sNnBY{alolq~U>jlF@sCqLP^ip$!Mk4fsux>Ls?*L*zbQ94 zxT@%K{-M+dwawN1{@aZHGPFI+5WA^*&4}@v5ocQAo2t1y?aua%)8Bgpo!@)0!?>m4 zoL%WLxtm#K*LPi4U*3N|PW3OV?=E{U{>SRiCdHVyYR)+<^z6P}N$~nvYGUFaFL<@F ztZuD!S(U<&T~pt^NU%jjEc}hmifHAD+dOATPqo#rmlpq^_ebE_J{OC7pB}zgV6MCB zdjLNVr<=EgqIpi6RZneZ&bwUg#iw6i6Nx&OAya8TPgg3o#FkITs$#uu*@lxXQ4;HR z{W>1dzCNmY@xO^%7ublpv4^cawff=t4f&0glk%T57A{#>8=9ps_t^8=HwLU0y_b$p zw_Yt1w5)cL&(94jP0glV)T%!(v~XT%*Ij+<<2uYN+y} zyPhoE{pQH)ne4K`agkBXs|?wGtJD>Tyg79{QQ+~Ro%=->a6j>XaEih3T+`_ra~x&Y zOfarGs$lDPB6SYyrk9p`6EbYluQWMMW?HNfp}l4zch$=U)_%?2QTG-UeEThE#q%;X zW@!N58*BAXl6yT?DEOUZ-RtwhGCl03f=S=YBdcA5ChW1-us9X$eQ4c=J*KO|O0r)V z1YKN^@pbls?XIURE}JY?pFS)1@;RTRh3!AzjsU8 z9{+y&@d8hS#@Qo#cYY21uWj+VK)Lnb#lX_muNo`87VkKCEpBb;smdCrtOLgw{;=H< z+-h5>>Qr!fqjuwop0&C5Iw!5ZUB7b8)}>)*NlxGiiA{$3!3ArbneRtt^ImH?GJA$5 zBeQv^{u2J$1x82DoC=uETd_ggK6v$^Yh}K()i%ES(j2CoCghfJHprY)UDBe}>Z0V{ z=HTo{GAZ8_wRbkYd#l!FqF~Wstn#D$Q{@`X8zQc^+~2M!YHZ!7xpJ-0Qk$DAN($EP z%-yr~@1niR^=`_ZPX*NltE`%r^=hfU_`r9fm9_P}NOAYBHJjS>%l2I4$c(gjl2*v; z-uE_9f%V>jKhrf0cv)+TSVAV$mh|nj*xa05aL)Nl4pr~el{;+u4PL*aUt=S;;GrQ)-05(YddL~y;Fh1T;&~`(Pm>;H;pbIvr`84 z4lmtaok??e(&@P4lk`OaDZ%tBOa4tL%w+NGGdQ0LTi9+i6s)MLt#Qn}Y3A;};dA>czUNy*u7}@wDSo}Exnk8{tE+_q zeE%j1`x^*sW{Ypr@}9Wg$Y$|{E-7Q134aZPj%DesT_N@+=G?R!tDglQ&_6%H^ThKV z6ShsP{!$m{+*fpPe&C%4wJTT;Tx;0A$jQd@>GMppjd!0s-@N1A+KVs38jII1&u+|Q z@n>CBvzMubxnQw!#}u=f(N#`KQJvEmt}WV`@uGhZ%QOR~^OFkL4DDBYd`Uc$c+c@c zwQl<{)}tI}XFa+rntbY$Qe16r-#%simvJj5+L{(D%{#BTG-v$+)eD^7`~M5vdhc;-Od-C-YU$$5n8krwD^QPcV zZ7bW%G~roQU+1jqO}^uvm;A7k3!X6K3?2jlOK|2wYXL9;=y%&Q=C^HRC{#y zWJ!4AHj9m-vzyY3?ws^JFnRl}i~0F$^#3jY-|NdJw?b~w*Aq`>Bpb1IoJli^^-ErM zYK;ohkEJ(Mr*`$uVK-y^d`<+naBD zp8CS?V-oPZ;oOoQo|=}{X}3+>o;C9b_;|j`uH@3`T(aNur4v`2*sD8XjtB2w$XF<% zJRw>mQDvUXxoI^*0W-3uxrquH-<`aqOF*V=S&gXSi_EoE6Z{gcOL;`Bm+22W6w0#j zQj4pWyZ!^Qe%9^T0{ndGQq^4*cQcHgDxb}f?u?636w!UL>HhQOQcGS<2>USilC$$! zp1!`g-$7+YB3&1}51!qXq-=L%p_PS!z**7dt7=y6DLkQMd_ii{&L76TM;@F=mG}L& z;NZ*66VIMzTl?!)%|@Hqho%U`Ufz-DcPs8hqvFiZn-5k5KdLx9HK$tN)Oi;3$#*+r zTh&*UIn*ycQ*+j_T{JT`;O#u^#Sc=<*}gb-tXZ^3PuAI_L(S+KL#vgga?u6*?O(Z` zow+_oZiY6WYTNI6lb3UE@xG`NZZb{vG^}u(v$vVUh0pZQ>aF3b>w9?T&g)*M(>`NE z{F6OgXKc9N3asCH$LCm`YXR5Ml?**o7H)s_ph58Pc}vl->*BHoA6Cp;xuRR)cC&37$vB$n=no3Bn-$+?U@RJ6>Oaq;^So|NehKT0&0 zAIUeivO3=0^0U6zM{*1Q$M(nvnVh@#*viQ-T07;&3b%`f)4P^WEz+L3MKQ^4@lt<< zs2?s{eC8{}82vm&N9zCAMp3Z1d^=YU0gqRZzl5w zE!i2e6OW7V@64S3?7E#|qEWr_?J3i5rq(N0Rj9d1x;xY~KNeLoR==$>zddl?#nc7c zI{NH3njQ_7-Q>-Xu^HbL6R94EUz1|#pFJH6lw~X1TzUpANSG|#o zN{>xmnLJ_L@`HWVi>o|(f*+r4d!Y7mk4Jjc{(NetGL~A z<&Uh6e5>!uf2e3%-WQj^>GuEm1@1XF{!A8UVQ9!pVqj?eZ@Q6d_6(^V5!R=rEv)|D zZs&HjqBxQg3X<{;D^#g9ty^KJv&5p#<)_6jY5tl>rdS46PzScME*|}4%vR0oGo1P{sy|v)*^!vH` z#%>)otCqcg-=e$z-o@`TzsD?}AN>Bi^ri?qfxmyWTXf$$&Ip+$|2jFs{%;TqN9e7h z7iyyZtL#4;zj_j0q{#YF()d|%^}FZ?5%!LMA8)8*T~f?;VBM0gn-7Im%a_%p_`%RU z`?#X$1z$!aBj4)$y!m0x_K)JOD_g97@y|8jtwU0!&!gW)X(@Ltx7$A|eYoa|MlLIl z!lb5ezomp4tbou^G!9eaP^-fc_4?E>-6r$y|#PoEY4)Frf{Gb7o>@Q41pZ9bolp1jSR zaJpD3)U9`Nz^^7v3suR8j}|AwB?W}0o6Y=vccxgz%$ROg*^XNli zc;(uij&InPhDC2Y=6$BSX3DlR3)clM)2gWa;lC(g=7O}mcWUQjFZeyXd#$=8>SY*D z%fbDP(*nL$p6=Y?wpwcI?SJ16804xynjq#P@`gvjU@9>T-lfqWK^)*;? z^n>IS%i|yU`~Jkag~+cxB|JMmcl}H*o(6k~R;RZAXFuzCMNQ0CI5lBSq<CZMSqwoB(cpQGXBt%O`%>Qiwpyo9p+pa;4&j* zeZt(g&k}Ro?l`9XxF9w8iBWp@OonyIrQ5_Tb1H9L_L#M6&RNxp*gU_?hKU+Zv%4SZ z-8%2!S{pf|#V~9_1!ro1^6c`;Z(BX$r^i-#>98|2PsFM7z{hC~{%rEfQljy%`Nz`(SybJ+3U9CZ!`u4Ua2ea_ zv+{?kr7nx#$&Ok4<8;rD|H<#=n^SssndWW@ySXj*_SRF|a&NDTTB>t9F7g{d0 zpVyQx-u?Y|Y5m^a{zv{5K5}t$OL0qk(m&^X@%h5u%6>xujr{rFwS8KIk`7;Qy0G@o zWOv7F29YKzq0SlF%ic{(Yr32maKuQqJXCBfUJ^O^#7-rorZ(Kh4nPr*Gp89+2ThE?P z(4S_xIAH0MeyxSE$--%;ybb0#X*)=!!tev<65z6-8>`&^7J%~*C_ z8pR34?*36VPa5|+ zEnxh%;jPuhkpF5I+-5E@>}3l0AiPxiwQB<7Rn-nQ-_!1&(w7Nd$p5rMzOEx*%6gXh zss}$36x`>}pR)3du71@$bM|#wYVI4#rFL_7oxD4p>u1sggA>A;%V+QZtG(nO@4kGk zJO`Lj&<0)T`_wflv z{5B_kNQ%vDSH9X&nJKhGQ!VzLOxG5lZF3#7H)Nif>vp{;NG^V2K==>S;MvMki)?P4 z+Vo(}tm2&RP={o>B+h@U=BwB55|!cCeX4)g$k$hnLb=`?K~n+Gfu?(^Dca>0npR zM3-puiN{<_7Z_zu{8hN6XY~xWHLC3C^OaPWt-l!~&9h*?%Lk^Urz{EozSwC_mg*YO`hf7f+u%dq$_X&1}0ev_N%YwEW6|Dy1|cS#a6LZN-s4x7M|U<&3dM1v?*UOZ}1xa{teq%H>H1! zSI&R=GGy1qn=Cu_9I6uD?&&*)yZ>TxvmUy^o}AYOQQ?A4r(K z@s;ybdAQg{CF6JcpI;w;E;wa4`4q?Gp881!hF8V!G8!ED<h|#al&q66_qO^wls}G~JX`tp z^%>$n!LO@fHqYv=TbW@w zypj@GKjt4lma*wIAM?HglVj7K@w}O(vga=MwaaD8_n!S@o+6AN9EiVIags|QacQnhnq3>#bQ#?X=r4%GKDTRZ9Cx z_OTuOVgLEs-9Y!RdVWWxx&^1rTr0qHy0T}dS>=3()$eWB?veTa{C9i8n!?&>*IwnX z(In3t*`_taO%;oTr+mXuo z&cPsbMOkao4wJKji*7neMv68ZIr~6ng1Dp1CC=4#v#n*lTvfw01Xinm+GTvNamhu_ zT??D^Js)lGcK)Ks?Yh89oTb_=jz2~D`#(oDO;PDdq9?8|zE-qYNATlZotODHtKQ$( zdA{-d(}suVd({#S32Obj=$0VEDDG*r@4KT&rgmeu->JU&2g5D~TR(58J#%Z?9hZr7pHFd~!B7J#*=W z#3%F2w7&$2Rra*4uwo9SzoHr*<4lTG{mNUh9vRj+nU}cD|qfad+iiC@~VB z-(UXwK~r(zvF97^pS)Nr`IlvG@$S;6@4FXv+Wz0WGh5twdGz;HSN`nH_HEmCcEPl; z_~1(izIMvm%zQKN_d462YtPGlr;A;AwI(7|vgV(_uB4xz*d0Z^T4pC7mYCv@C8zE@ zZHaZt>_?YsCuZGCP+gaB+S+Z6t=kH3nQn{1HGd)wyTn|Kzj4rYW##$>;hZ9UJNG!L zR|PFpJzKc-)LQYL_1ve;j?TZp`Sg2Jq-kyNYsdR@_V)z5$iARsHr0#C_Gz@*Dh~b1 zxotkKE1kK|u-)+u*Qq~L8XGa6ul>f_$us8qTJH-tFFW7-&1SObvs(|UIb!S1{`;^Z z=1TL2T!n3YC2|#yZ#M9rEj4_X_i}R>x2gA>tFL@G`?uW8sXSScerwCJG{57v8CDS{ zmI+rK%>BN9U3|FX-2bO1&ogd6H(B6x`^ir|tAhWrWp5Cx;Rw2=qL3f*#bV0r6%*a+ zPCo9~|MNt-L0x@7M`2O(!6kP@Ustj_&7M(JwQ!!8uEL@P;a3*;JAG77s|vaIIs2Al z;_CFD0n?_(B1Y4?wiloDpmDEf6V=7dtv77Jl5h<@{BP( zmHG-Pn?Ee=d^7i6@vbBf5vJSgZsZ0kUMpTZ>vysckHQwa3*9MCXN09FcWWz56aUvc zX({)UV}@A`M@>U!?@U_EXZj;=YlBnSj#O{4b{F$M>%2mjFo=F=_`YSn;Caciio~55ZYc91s{!{7c zyU*21mx6gdb+mGFTzI*0;;C3A`G|SiQ^IA_pZFUnuDPZ=Z!X{R4ci`nST$Gk?y6@B z$+?pk{OIxKs(!S)vhiW}cF(&v-}G8NTCI53lG7plZyMiG-rRtb3^_eQCSMMmT^svE zf}u4)<5JR5OLM=VbJ?0=H@jr98u`3}r`P<-9g)l%eSVKj+u3uUhCN;OE2g59O=@yLuy&Da+)CDqi|;M` zmV0@XS@I73M6c<)ReIhokBncN`&~2dvfs*XWrL-&Qy%=ERy9@@&*ZhG`JQUb zP=3g3b>CY&PyX{y)Alpl+E-=AXcpUcuTXd0rK7PS&T-Pc1-Jg#^uLq(y~}3uN}0RI z{A=WzwB=7ReYq9qmuu52y()Fx#7Xlu%4D61^HcqMY9CMVT-)34;#ix_i{>1=d-aK@ ze5rS~`>E{BY?GGjGVU*VAM{H6L57;0XYcV9cfRUv&A*uF7G%n=!fDq{VW!`_c{RoNIHZoDEZp zT)8dt$E)=!eJ4);-gc^nz4V{X%a3QvedR57A7b74?Y>M==GHBx=i&r6&s3cwcw76A zpl)!P?&^-4s*Mp>BV5XIwGEzCNEyrOtr5$wlk#P|7JjbQQF{HJ-POh75!Z9Wq~=BT zwC)R&J6<|B$SRJbt7)5lvDli-Jtgjbm)&O_j8mzbCe(jbaG&rE>(GD49xZ7$DoJeH(o4w`W-Ao{7!%eH-)dWrR+2RWu83!X-^&Z+@fGr zuL%?GymI;_cGK!{>tr#NET{E$SG9w_IZu)|n)8SIg#F8JOnVosTRrh$&8x2&k8WPS z`8Km+SK4p()r_0@&6gj4(|*udTYlHwZLHUV&vPw4`z7~c+@Hg4zyB%U$ZK#)$WYjA zk^j`HGco5sSIC!3>$zB^eGXQCPj=ecvDI#gRJH4>UYqFxC!FMh#A^cs5 z;2s8*1$`-xpM*vKR{b;YJICbeiu>7G9uJcZ&Q%<_Ty$#T(b?N?{n^qx_vF$E%O1#n zt5gaMe99T@`~KebzE@oPvL*|?UJ<`|5BI0ONjFo9eE2!5Pc>aKIB;Q_tZKE?g#HUZ zgBJul%}Qi9uU+pQXRm$!+}qtJ{A{18dry|WR2Unise793`ihrx*)HbB&A83L-|%Li z$km|b=SBDq8>;YMG`_-gQp#&_|L*_qW^ZFjY18#yq095*#f(*pXJ|~@S>Jp_n_0~5 zx^~RH9W6=*TQ{?muG46E0y?a}Hx`Th7Y-J>A^%Y#{1eRDqW8yi?obm8y4 zn!ysuwd>aFGc3P(jQ!oK_@cdLx)tTsct6j!Y`VZx+In93_-R+)w+!C(8wGw@Z2dPo z__}HT`Z@oX?RA*WKZkLh)r;xp?;gB#;A?Qx>7q$>%&lvGYyI67d+?eQ-04rNYu(NBys58#DCg6J^GQtU#S4S|v)ES` zdB?o);+wyDw%gOA3oYjBt+{9~ue@q|t&iu$U4CHojcZC5Jw#3jZxa3a=;Xl|pZLj_^Lw5NS8SfsacocRb)GLD*+tGB3o^a% zV*4_le+Txy`1*O_&!b%Y%rh;%+}UB3wb#3If|2Ju>3^RuNItSE;5A4+CNfQ3&|Q3b zoAze;Kf&5ltj`3|+pZ|k+Pke}v%Vdc?|msu~S#(tf$vr%Ji&ppTQa=m6xvJ+hQE;rkovHhe; z-uI*}v(~Ff1S?#ebnN&hu3d``FIq8E*z5KIHNH%X3&kmCec01qRXIB}=)Akf|DS1I z`dxRerDl^{l~30*Zy^G0RWJAMe$4I|~`olrJw(7FXHjQh~E_}8&L|x?Q;-6aI zmBJc^>;Q)ZS>V)Nl^J>L@PO>NPB8!htkcIIlm z(|k28d(Bs#y8D{<`CiGbTTnTFPvgJi(fXaOyxGs?^(Qto?D*fGZ~OCq;FYUeVneQM z+&6F2f{06-n=S zjUQYZF>2yA;aQg+rv3e~$4%|Qr5meiw*C@3w|3^*_MP|U9&!v<|FeqcWYnG+Z#`mv z_IQ5h{+J$lqFZR&v#@7jR`hhDa7V&*L;Taa3Zv4#Qu9!vj z=F8#}7yft_`26|VfVu9=_lBe95}DSn*^>*KMV*CYZc9 zH0j`!sb>Qn3|d={y8HboF`pddusHVP>Axo)I`z_VKCQs<(@_bpBtw;-;Qi zl2tx06XRYb-C3(Uf-WdH-Mhwr&?_}*!u8Fk(-t%DT^{My(;j#6wHj~ZGK1Hl%^$w< zl)Q{~DBQfiWWmL@s`!E>k;mU{DYRe;o~^vw;J>@cf2YP2j~3x6nSm@@z9;Pq{3yR( z=ZECt6<2wc7YF}|`SN1(Wv|l{eyrQtWxL{-dH)mn)XW=4IJ_k$d_C89bFS|Li^p5- zjT|pN-L&rP5(CG3(|V>lO+IdX@WSjh?!GGuIab#%yu0r&&m88J?~nZ3>=bihi^!|A ztXwz!RxaYp&?Me(*oF(8^&%RH+YI&A# zE$_YOFL*u}cq%PB)FzS|I`hZ3j3-~eTKXMW<=c57x28FAW6+N0;!ka^h_+|ier+uB zH90vw+4Xa(QP##y$%YySz8lOhjd`}j?ap)d7?ua6Qu|lG%=4Ssc=Tq(BfaI^$tSit zeyLgXQv8|D?uLekMWOOc|YUc&ad;zJiqeHJTvuX zDEnGri^FdO4_aw#3+yUyiq3gs{GoOVugl}tE5GVweS65U%gN%>!lsiEOwVpz`@|9T zh;jOlvQwdpmdj<&JaatVKjZJ+*}<7CTxM^U_1iFJXYX6ov!XI}&P0~vFny2LX&&2u zM4swWRQ#H^fuge(`c` z)7p)*ymnun^hS7g@ORgr#ZT^Y&TgLfSv>ssYl*EaIWOnDTK}Lgzo1Y2Sl^mAZ~i=Q zUYEb7Mb~QMiLCvhueWQcu9D&1cXQS@AzRs{)fei**Qw9U%Fb1lKXgUgn|s2G+d4Cs zmL`{3H2(Q0b;`V<>-#;yMN-w3rhDzwI;NI=-h9q-Zo=HtKjzFbn18O~?Uj_1sT<6K zAEf+94RGK8eB!M}#~++Qk-Ym^6z^DnI{IYuQ8ABip)QLavO7EH#B`}wFyA{WQPC38 zDSM)@=t-pX#`?6mn?9cT>ee!!-L*}Bu3#7Yb*mWWb>Bm0ur5e5*Nf|XVD!kcUifWR z@`=l@dkl(M6xL68{BhlLONA8<9rxuFW;I@)kg%E4VGP-a>t2;V+kitH1Tz z^S^&my?j!{?&l>kbIhFdIgPg8S;E3Tr+~evy-nl)6>o)iX`XTuL+uD3I0{bzc>GS5Fi<$7U* z=zXE-B8vX}&)D9aHVOM6GA|=})|=G(oE$DoqI5!1IxYD$17rLpy`S#VnPPljt~a{E zGv!>3;KDaX83J{@53fjwi~Q-#)qJvv?~L^Fk}K`EMC7jeEDGUQF>1Obujl^eSY@S? zjZ;`+;ry6cxAg7&7p>a&UBSTP{&T(A%XcPesv4ZBY|Qv2EEINOgWAp3np@Ye&)iYb ze!Vg<`t6>@T3aRSofl*Z_b{!uuJoH;wdC1>MHyFoX6)N;%Q-pl<(?fJb9_aT`xCRg z^B3K&fBpB;)&93;>FlCM)Fw%%c^nq#a52tIuhF{gnKWav^wu@MOp4UxO#f=lY-sxJ zwTR8iK*Ocr#LDZ}6;}z0JW_nWqaZ)({_SkvwERscgI6v7XeE_2Wsh)C`wv&qO^-#B z-mKrQqPA|DkNLmKue~SU#m0GyC>w+tDTr!*EjPZyE6({OdD_HD#}#hww94f_;hKN{ zpzJx@HOWsGF87K3m$c+@h3R9_NY~mo$6YPg+7Q-TcIQG!q)f><(by-_J1gbM;Bv?*_%67IQnzcj{zP%%5$Ky%G=9OWZxGGyms`_me$2e(P}l z)0?Zj+V@Njn!0z3luxf$%tVD}@h?&ovr;aWB)5rkol*Dlo3p>rwR8uAO7f&VsvC-} zn!PIJ|3BGTv89k}?@wv{iGP3WH{AR;`;N-Hl=r{#jWus3u{`}%f2iw|>9Mm54_^2l zvhKJ*+PQ`=SCl`qZm>{`NLv~$60E7Hx_!~%1K*!0UQ&LYxySdl{@(h%bqxOx*)~0! zuI+huvhUUhJH4-MzGlatc~1Gj-TO?h_X&u-RZcWgd6wnpov9YBziRULOR5VmSY7<_ zz@q>97A(38-vqgTKk~6iQp0TFH*yyRK{@8WlK-FPABg`a{BQps z3j*w~&0pGMwsc#N)Tbqr?@gS3O=8Qb^h?`r^Kk_qd_8Z%rEo<>`EQrGbr0!Hnh>Jv z6c-m}XTA7jyw!x26aG5qsPm-p@tSS=weV+NA6rxS{6hf=A@_xRa}I}^^eNua?p12Y zoz1eo%4vU>+U&)>ZnM7gv9v`0=&k*I!uYE7&*Z|Qz4|iKM1<>F1RKK6Wg8q8Dr#hq z{x!$lcB*cphTKMJw$lqTLS1iZP7Gp+to1&TGs9n)>5%5c{qLM^DK8Q^B%H67cs*!^ zgX6)Pe|3$*_2~!xzpFU(eYuuy1B;kesnRByutsTewFAS)wTITt54_pOCoJD zcN~w3#9Ui?lx14#Q`?ibT-28|yKV5;cp&H1Z>5}8R+iWw)*-vw_69_A)-NqI`*83` zYuwqyx`dg=%lm`+J}#Wu?RQ|!ym00 zZ`@;z-OK*x?+rN#1vhD)BPw?`H~h-%Wy+S>cEBR_zVyl?8&+Pe*%Dcj7<)zW#J-xa1)`bT-0QzzT&rkz!zhi zfa$;Zr#-%2zKN?>VBu@K`}Ue5)pq&2)7^^~S>#RLukif))_@jv=QEb`>+V$<8fg7w zIrC1_-F8+=--Da)QlDwqpW*k>NUwF9x6pl_ae|2@H~UZNNU6CyEV=?)6wd58CH=YN zO3viWCxyZNHjC!zg#GZgkqfC!n5a}f=Z1Nyo0N1zdUEbxx%ZA{?+Q2{-kZMQJvwuj$ioFoW(FB3tjwJ=YlA|zY0UcSgId?V6<4lX z_cCntAun6CYQ2*ujr3pE8mhFWi_iR!KG!h+zpwn_O*i%b$4fj&%NMp#IHZ4bw(qj_ zXB6t#oLOs*+uWWnAA8-d?)mMz`8oTA;+?9LEZ;o5`_r)CnY7UB$4as6ufMqynDCDIt|IS~N8w4*M<(cUl*uG@% zDb=>sg%(lLAIu_sS56Xkt#ncJ(rUDqTr4gk60f_~`=ZzG?x*KhPLWLEVsyT`cq(h# zOxqtT!=zF@-d4_ZF4!mRd86^b>*;e>`7Pc1Li=Ri>SV*VqYwDqbnVln76xwPiS{gh zS#aXg``Pl^HqRKR7si<7*6o?~HF=Sr**)$lGlGvDV3d2_+>^e!qp@Mbymd!g1WtbW zeAN4%_i0fPMWLj_39Vv#(w%F4oPVp;GM8U8p1J8z<}0S0iiYNvC$9Z>9(?vc!*{R1 z>tSWO9-CQ$={@_Ck$JjhlZ4aW6m46?b;v+N#^q*R%;Q@Vb&r~yj;WrqVBNyL6&wug z0mmI0T6)ZnJAPa(q!yAKX|L&Ya{|MgIw@DBPhE>%8*H27wAXE8zvX-Rl6hx~SFI}c zbpEo_C~x{)n^)rJ^|kvSWSv=l>xRs+wZZ2_H{D{(QOv2?w6|*Oy_+Sc8Wb&JRF&!) zet%l0r+zno&4e{NI&a=S5NliU@Fr7#46|wG@{K)HI@EsG9a@!oOUbIB@>zLYt4U_cg(Fjtg?(_|0<7T z7c4|VPoL6WwsplBA2q|3o3zBmWwn0>7R{LI>#umflDYK>Kl$jqobG#-JhdtROOnfZ*So$H-MMk4_C7oP`8j`{#aaD7 zF}qro^MpmD%9qtC;TPlH$A|Wn9Y}4K2sc|-E~w*GeYC9Q&&mH4t@6LRvJ*Ef6Oe4X zdxBGO--NOk$5pRwTU&ip|FC@W?~lvtC#R-z4H1eeGlg4v9l%?zZ48-V_3LH<}{n#PezfNTk_MnS`zi1=s4yG_^8M3k&cZn zKJ@(d*DZp#Vmlw@S)G5s-qhgUlPwRUUN7{}y)1P=!8BRH=Q`)T3CDhXU2tO8y1tO3 zOfrkLzqYLCd&O^Xeuq8lfnN){=1$0SjAuTgzgE~Kxw+T&oAJvCwKHYHv+vog4sVWo z9=)^kWXCP7#K|{4%>JDqutq9S)5iM8@dZa$?~<+hW4o@P?$Wn^kGysHI_^GN@sI6F zd}5va!#bvg9Qx6}o;)kKdw9?Fm(t5jElxzcJLc$xCqA!Rrdz$r;Yj+8i#-83`UV%{ zPwtN^V7Y%I)%vhN9OH>tmxTSl5~an(V+}b1#QZPDRb1h0%iL9>HKY3N?}=a4G{aqM zxA4?G30u%y)0^l2{%}dA&WfhSMLT2PUW{;WeW=;2Re)atpyJ+gs zw~D9gI^r1uuZDOY*sp$P)84AXdzHfluEi}f|8_xFC--IVD+RV6!i$RkUHsHusiI-E zYUA!pbL3B*{8y{6a!b$)<5xde9KTgH?=fAZ?78vSpM`ff`)rzP`bIAGuK-dTg6)AG`I<-p8rJ zt>brWb>|(sSVp|Qfdt5?NH-!vRIn3@4RkAySHD7 zQRzNrPHE;jN4`lPoE@{?*7WP`81WrH-nE~rIJmz}!u`LyBS4HKGf9tvaJdh^CnU$LhFfB1C%r*1tva|Z9; zO^x3la$OK9SzjK{|7_XQAH00um1jQHes=wFf92oBw>R+bkchgPcDP`MqsqPB$G(%* z42=H7r^oNLm^wF}T~yIsc7e^@$5Vs2;vf7k)SRd0(fsAV9gZmi$X*3*50G_NVBhw3;334W;F6=SaPM*1b49b`odzhI?wR zGei}$>~>u}&wXZ@&D6bbc%E|gol1;w`(S42lFjooLGXjn(n}S)mP|6US!yMxrX-wH zWwg5Q#-3f9?z2oucTwCIy5{X(`@;+8E&I*=KL5XqnZUuo#_(GHS5`Oft@v)pE-STR z^O}g9`-WR5tZXh>FyUmeu-Qb_)`Q8aJ7s07#PVlcvuiWUx$w88{n?}!(|;Y5F~8Z~ z(-kU_9LOr2xO?03%8zRn)X!Gl6ZF-X|C$7WtTs1kS>fSWLE{8_j|EKxQ zitcTh+*QDInODs8wOidx&As1G*`LmSFRXigXRL#i(#PG?qpN)RqqgxKdnC1K-K3nT z^vE#&xBI5~z4D*xqLw%ozlo$HoNkqk`L)%Sn4CaiRw z@aw+!7dqPbyI1D?3)p+~L}U2}*I!FCbFD=ZS-%`zD_i=aV2iGv?&CGzEhji^5{V1{ z6n^Wr?mXSTwSQMyZ7KTdWAZ0L);Y`ilhvl=DGwcML)f>vU&}sMaCXYR*`JebGhZ9a zSpHde>cQ$To88wKTbZtSm05f^@U8B~1l9>%Zh+`Q`mn zDc$;|TmCPpEIw9st^U!=)9%czd<&O+ulW`A%r0)uyg-4IO5Ubll_uup|6HNGz(Hgw ztAf+ysW2`gobeQ;{PY zYzq|pGIU!P=LAohpFT@2PQZKKqxa2H_byMHu~bUSmtoFIuZ3I+*E>$z>DyP8?CV*Ul*D@Qo1IgrVp}J;@<)Zv2R7+~ zW%g^PKRMf>W6XFW<mh`iDu>W8D zs!b>Vmy2&-yRv&>=fduX{})S1w}ku_WaQz{;OF8v@x}hHw$itEWoF;n)HZ!nTejrT zw{3iFW%Z(cSFT++c<@T+m17sKoj5X~uXDj~zQrFprJsy=48tW_)f;zI#N63){|dPvA3?vzHERTjm?2ewA-a zS=eg#RE>?v$?GniKj7k<>K(?u;L!QbPbOS5;&vMDuTPiO6Hi~V+=G37c*y?1LZ1f? zd@EnikXmr`-oh10&*yK@+q(M2@>93Nrje8EUX30iX_wIbx#wvbl@(T?^Z)LB@lBuDc3h5ix zTuV((exZ>jF3-L>nkib=`p}gYKf`GoZtr<=&%{O4WsBYN-6)c<_;%HxyU8}G&F z*sY6umOHm-OLT0N&UN3lhs&O;Tz<6Xb*!A~8}rs9aaz~U?k+xYF{bv^k6CM8?`pVa ze@3Epmq`&%qkq8>=MFVat~=~Awwc`v*t0m9ssB_CccKyR3by+O-)GlfZ)q=|XTC6F zUu_C^=~Snk>yJ6Q?%T-ry*^y8EV@{-x=8$)XR{~MKc8by%yP4ec1LacaG*>5NY{L2 zU(x3a(|(JtvXKyCYZkCIcvLk}c)>v<_T?<=XB)(O*nK=G%wyQK^1!k96z{aVjs zjbv?%PyP6)xblETW!aN8oCg2YxJ}QzsxO_a_-g&vGCBXt#rjKP=6f}moSE@B^_1-N z>6ho8IM-roX8dp2-Y@nuZ5uN5zt;5ePl@|*U9C`mn|H8gL)oRxZ}n8%EUI^Yni97u zExKG}Y0&0NF1yzsZ{R$kV0H6N7`OVVdm3&>%=5guCT}}`TQgfUs&rS2@sTax`R3m_ zzbyN+#u~FM-TTS+jPmwYUihSF7SGO6bK^khKb@2JSMa$9uc&_V-?&LkoYOFRB0u{+ z&!*;Ueno3r%nLWSoqkZd*V^^B`~HU)y(UifJ6G+!cwgx4yN~)Cs=ECcO|90X-tk@h za@F0xiKn_U-a0S8kj&@A7HY9ND#B&H1@A*H$Mh!+zkH|X@!dS|x$(dojSEjc#dtKF zI(%YNOU0V-2{Q~j3QnxdUVh2r>%J4~I#0J7uiQR&;@&@p8QWX}_th@_DEBjtd(oU1 zCci)ZzUn7`x3wpuc}-AsK+5T_>n`j4i}i4i$_bA?vtWL}Le+a;#cq`MoZ5XbX4VBO zkFX7Y`1gH%*pPd~Tp)T5tAIHF&qW6|y}i8a&~m9KS2LWp*ZwGLzq8rD_*MV+Es1QW zWJ`H(iaz}Dllioj$%+^K?DtM{SGG9ict!HHYJQ8l_cJD^_n~2QWuk~5=kxgeb}uh+ z*sFyL8ue$WR%+;$xyDC?J*rNO=q^X=`C{gatUJpbLj0M z#|b|tD4y7J;)`9vKh3@6w|0JK7UAd+d9>eY;{V)^ge_fbjrz1!&6h3OtJsn2zxmLt zi)t22mM=`7d8J?L#KEM1>G6Bp^sS}M%Gegis`;0Bi5?U9cks^qbe^R;XZx2Wv9iqX zO3!tfvvkEfXD~@-Lp>VE;AKGx6{8zAp}6zIbNznqOK5a~W6Vls6pa zyZ-g=9`F1OPo+*+cG#)NzS!FPxT@KE23OIXtZR!u^;RTRUub(c#q~g4%&%jG9HK=Y z-8;7nWE6M*h%!{kjBA=dbK=a2*DrB@>|c2QTmD7c6DDU>X8h?hGfm5`%CSzndE%bf zza-8LxxW)_^%g0c>|uBRdf)h*UDYhst;527{v4WR7Wn_lUhc_(Rb4x8ba?dy{uci@w=&DaT3Du=~J z{66cc<9Eid;(_$E6^CR!-b5^s;!zeznJp-K|c|dwe85M?a8PRXX&| zWA=X6D@!?)9=vit{7GYr)5;s}uO7Qk?@-CSn3Fi+UeELV&>D@I;jX0xQx41*-u<^Q z>EwjdZ!VlMDm&};I#ndI!m5`c_IYO5Tf^K%kGF-dSG93-4dGmap`1*%Isd5bVzhjQiFP14e(Dwekc!G8O+cv{BPadeQ3HPnwd%OPg*0$m; z=i4@LUDjId&@57*oGeyx{ILD)W%hGDCK}eoO56KgzgQuddnr0goAdY^tG(8t``;H; z|Ke*nQP?r@-N}ni#b!jmLL0&Az@II{`$tIIl3RE&3d=n zPMEcz(o|;+RiI+uZ&~1wB7-ZSxC*DF4LmOTV8|%(%9l=Q+QQ zmS>c7$f6?M7!Q#({1?PJRa(0btDc&y$#m= zz~}TYu4$HEU3;>+g2&%;>d(I15`TS=StHZ>o5j8Jr6u-kw}1KFQ~37dW=G*cfvF#& zH>x>&?R9*Z_Op$*fH~`r)4dR`2>$IMLXO31SL7_OW#vY^F4p4q%-gi^|FPP0y7lW? zotGVWAI=`SRjN-R(mH63OVW(3-ZOT`iRSX$R$AsRBXcEovXi#-&r7LOrd){>4!yNn z-hunSpq@lrqfXBrpD5kEg6%UOea!qXZ@NP3+1b#4>)CuA{;7Ww{4dS>>-z-%@9PgF z{5ttpRKoM+eXbDS(1OxU9a1NHk5u}02)Z8RV*HtCc~vs9m4 z*=_K+SLefD*Wcg#>|`dnxF+}--s|&^JpcZ8%=Pv2FF(6$Z^Q9rX3f6%yyJXP|Js@`)cjeH*Wx3qJH(Pj1>n=_h_Gd~_FoZR|K?HuE~) zWcIv8x4x7a%s$nTroQ-9#YVGhmr68dHN^XBv_|#(>r$7JZev@O?OD7*#{b>rr|)IM zTHJXQ>~9Dxbb0t!;i3Mzvkl*KXGKo1jGs}U+|>JF-tSjsJUkV$c~dO)*PJ!n$i{BH zdhO?}5w@!D3y+IW(=quz%SguUZulBKors)phIbQPGL1q{MTWLM;^;K|$ua-Rin-0k zv$=yZrLSl%W!`XZ@$WLd!(S{;zJ0CEHuJNz%j`bhREc&u`{gS(Eo;h*;SqJ}jCPl~ z#b&?m*OnsD}aVc(oaX@Lsr;f}| zxl{H$;5)Hl*_GyKy}pvFpRd9MmR~Mi!m!()bB)-e0=}7VdYhlr2)4~tJ)-#We*KD# z2YM1)-D|h3<-2X}eq`;t)n=|-A+?5AKQlF0DRPZ(5avFDU z@gCWe;Rg2KtHs`3kiYdnF|jUk$NF;xex$)jZ!6zxK4U0lP?c8?dMSJ>B38Om!h8L77t<2??J)QIJ!g9H9b?@%5#m`Mq z$yl^%dhK$9lK&~?4ffl&Un^>454dk&w%_oH;uE#(e|t}BY{_PQ$~OC+bDlC!?`tdW z+_`gI1XR2~FLnR2D?mx`x23vW;F+SftV5g=`JVckD}A``>DlQyLFT@5r?o`few)j^ zn>QRhvmq(Pj5AtKKKuEb-@^aymHg>y^KaQ*es=3a=5XaXmwvb(S+VbM<&W9t-pzk}d-~D4KO+AcP2A_3QFL5qs>3~fdF8Oo_zLwSujBvT z*dHsrKkCrN&OLo6nG;0}(p)k>{XD;TSEbd06Dx(nP6Qqnyx8*T>i119MXtNpZE96M zi@u)9p}bS=oAB=coJpAFfS})3~K^ ze$b`#V(%w2jwuv0e^8v!+4Azp>V$yxE;qz|wp3kDvbm-j)}0v3zmPw5V~J2om}hcz zDbv&RikVzL-Ce_j?mY{?sq-xSwD8V<^Wz2fyHuWyD`Qta{_f6U$1iUdT0JsV5jQ#< z?rNsX8u4P?rQ}U-D;}`iy<*C=lvVj?Y1jFqpSKHbnw_c@dHV!g?yr)+O*wZmlzHDB z@{;0Oct2grStjNFW3AHir9CI^{Wkkm@@7Zg{{#GzD^iYUB&Uc?PPAGYvCTj{e^-TE zVxetr&5{lCtooF1i(dYi_x6GR?E=5seed0F7j16l`Z9a(vYpj@Z*3*TX75~S>%INr_QVw3*u8zfdqs+q+mZ_hnpWJh9UWSA7cZa#zU1xZ&1U-x_QvC6!>kO}uOpp1s z1FG$!o0U(!^y$>spV)PK+OCwU!o`MDKNaN!F50{|=%D}6H^RElvow?4ZS9v>tqnL9 z!oAn9s@vmF!=%0Iyh^8sv5KsL?K0Z5{G#FfmM!{z z*N<)C5(|DPsXX(Dc8}xcyY=(`IkmLK+Mc*lc5}nr>yz_S^AnGqlz-|OSk5_nN6Z81 zdp4UU=hce(gttGI^>FRFwSHgm$#+-Pw=!qUuF5Q%YpTSue>11XiSF%D57+0;*}m!7 zv|TrRZo7QaOgGtfYwdBJ-{)o5IG&rg<3!yu&5&p!!$k5@zgH~cxJbouV}_pik+A35~ftx z;`k<)?|Uk7rE`!6ZvfAx_MO{Qg`A#wWaV;S`|ao}XU<%@ap}rA*Aw^d9lLVD@4}G_2cO=zekZch zOZ#z$a^1|<7Z?8sSarQq-O@O9#nZEgc$9uHCW^4J6h?cCx)iRn^w8+?AxbjE2nM$n^{{gz%EdEM(@AA z{ORs9t&irsJ*;Y~eJ`cW>DeZ~*sM8^wBMwewf+)27i?p#9^1aPcj>|Tbu*8@TjaXL z>vzKJ6?;1Uoa4`K(K6~3W&At&bCI4;Zhv$Fagh#OH zM7kc!lKJdVxL~imN@zuYUqRhYt!a~H1Xw&wk#i~GvtMs5DI_?3O8BRXT`ZcD{x0s% ze*lH3Uqj#;?t2p7j9#$)DOzKJ;F{ z?uOhek>vcdZ4u$K=iJ%6zms{j;&p?a_RGS;GDSoeK6{puJAKZnU(SyVc}jhB^Io_! z>Ay_(vGuClAzs??bzN=pUzxei{pRx>kEuNFU=KVZxJo;Uu}V-}$+nGOhgoK$V)t+9 zpFI8)+(px_s%+` zo^`%!R=~4(%K6DVy)y2|SEde_7@>&nv$GbEe; z|5+;Sc5P#&-wtM_e@7mdO<(K!?rQD+BNs)qFJ9nqGWFTL{^|G2O^r7VzI?cCkkNlf zCjWrc+xglvo>&%rpW=QqT>fkF+_II`>#ts6TF2BKy!)Wd^}?l&%QI4Hwd|u6Uc1j33tD#mzG`%5 z_52(A?y~+lH(`2$6I0WsR~6OH*^l{MoV}L>HeQ}Km9hLq|B{2LH352mKPPlJ3g<9B zUiySDIa^hVwMNlBnEy9>$7P5y##MnOI($~HNtOLl1%^fEBMO`wQBE=kU1zaSBFbC>BA0H53U9Bfp*`U z|6HFKZt$g|Q{c*{yrsq*HU|@0&FZBVT+if-=rVa2HB-}#uVMMeWpWMCjTfC+o98tq zHYYWwHl#IVHfDXCnf7f4+YZ(P>=*tNb03Sn+R|`k|0z>GR+g0C^TYH!t%Za64ZUao zFI8&)Snu=X#*A6gyJoDiki2CXy(?nZ%zxW;cF)>ov`*vI^y#-(saY8Iq-aZS;%i^H zjLkvX)PcpbWvXyC{zoH)5WqF{= zr6Xup&RXs6|Hjd`{!3i@|G4~nKls!FD-eVQ8K{;*ehC+_}(K(l|x?G!SQt^|+=5NTN5S^R}^6s+V{mMi; z#ZDW4H^`LkU)zwZ$EH2?o?o1OapQ;eyIejWG)7v_ZT<2JGD_z-CM|qj~`Bb)|HLW48 zcA-D!=dioGt%`or;#T-JG$M2LZTp)Ci<8d;{X6((%ih{`o^?5nrAkwGEq^u5P}f8! z*=Y9n>&G_BZF9O8e`xBTo*ZQ^nc#}k^UP#3=B?Zj_4D?HL(ign^t!5a<(kg#dR?q= zLMs14$*bH|9xE=)C|32Aw~pALYtOA1>+O)+eDwN@wzE5;quTv%J539JdeT_%8ULZr zClkIFm)criG!RWG>O8aK`rAw4-%7(xVyv$o6x+0&|5|C3#pf4VZ=bu&En9wS3FGq> zlf9Y^E=`%cN8-%6a-r}z=EcSvSEQVe&-FCbKkCY~!}4afh)+{+e)o)hjnm&NGZ!}e zIm;dF$Q(xH{YIb z-Rms7D`D!?g1mVTZ!JC>y5{H9pbgh^4su zt63g1eJdrD)r#Gl^H*PQ@_Un>Z`eHji-KH*@XOEdK6bdd4lCWRrCts&;i) zP5yG}bH$H!_hvVkUQ3RuS8ouH&3GDjXz7j%U5oB+UFRQZaBaCq_tafmPT6)V$lZFu zc3Zu2_5HSqDpjODTCZl+4ETs7z6p`E8A zeLozL(G#2Tod1(`15adt{HoJiH(JNczUset^dOcP(wxy{AtXwn-8z54d@lo_%`B{ugHa|Ke9p_;36A@AU5if9FZe-dSh7aZ}l( zP1{~BG+6dF{9>c0>p8*jA~PrFX-~CHKN`=toA+q@>#~Tjj+Ju^=S=%?Q>1jNpn&?( zI;~Z++!r4?u6U_x*Upzum!vOG|5d+V-uSQ3+LWIamNR*^cKvhiZBX8FBlFaTk1>DR z4Q;NaC`7rndY#kyut0~W#L|G%Nqs9nOXuCz)Xdj?_S+2KX0BVI^0ao+q!~xIyWhIW zx^|A8phgD-K-9GQ6ThqL!($gKU|>)9Z^v**FK(Cqyl#nz^a+*3BWeLQ}QB$Y&OZxZnPdjtZc-hXE%VjS4oY-6RsKB2&I^eU3 ztI3%c$5mL)vvVum-(PrE`t5|fyEIOvPif-FUK=P=*$_~YAr@zNGG%h}>i1gmi?jD7 zc?vMq*B&quIDFUOVU52bPuje;X?wl?r`25%C|a6fxBu0o-xEzMF9>X!xFY_&np92CT6_2Zh7^^OP5rPP3F+G9{**dMU`+i;$n-x2KXW`BL_jXC8T)!zl z-EZYx@9UL*GQ0V-7uW{btzOq%C0q=e|tdI5FQ` zfcKW}bEQY$t>?CPIQ+AUw(dVITvdKey5s)ly4SYnT5J6`Ds0`_C9or!Qzy!kvtr5q zjkBH4ocQW{@;igecd1B&=zVJ6f9C|`?66+Eh|M)(qD-ESK<`&u6>fXx9nq>> z&i1vFC1mZ>n5QvQE4Ek5`j>V#3CHto6*DmWfO6sjXr_Fz}rNl$lMOx{pKkO$v!Z&c&9ldw4tA+$PRO6^^wqQ1K;v5Q z6O|Arv%t1fy_HMq-l-qlr(z!GFq7T$RovE&%!03r!d*%uy)4}B-Y`4G`r>chG-auh z9VVP^xyNgo-#_1~&{3AK+Vfv;ym%W&w4$Eyj|+D z;!3`JhI?7{NooJ?N}v7~zU8Rh6>0v;q+NGrv8>&Fz`Qy#@KMS35<}0$Di2OgzW06W z+ZoA$;stRRbEMyyR%Lj7KCoTpW7)b^F-+ipHt}6 z`6O(=J4cNc$SXM3?}#?6oXK4!}4$d|9#c+HEL&&2%J6&a+nDV6hj;V3iPgEe zP4;=n$70v?DSt_h-a1=X9owbHWnVq&+f!S%=Q{JFMbcmXoosVIG-28%fgM>PiT~C6 zd2i-wJ!M_j`FYEJ#(>6mo}1j~T@+H`t;t?oxo?`nLZ^uhTr_SI|ZkOlQ_UhTFevo}6IkZpdPQ~g`l6A^dYKAE4f!q2Wp@`w9Wnq<6ox*GXT zA@fJ^_I>Zm<)b`UOL(WA`)wbpSd`7%#`$;Z;>Z*Ky)2XdeplX7Z@YNElKD&j3BP=g zCqy0z$$8D#x_CL$D%CCx&Z`_UTk0?0-nL87=i9suw*=!vo4+@HVpaLDsw2Er{lLt3 z-xcZ)JveduW3WIJbAHgXuJ;v(EwBGvmAmWh-#HEsq;D`tvxm*Uzkc$|dz&kicHM2X zsx|d0G&&_xc2n%}W;Dtr2}Ix4f3?(I1l^ts{A z-OKs`spXDtGDWwJo;o7tB{#EbYs!k0jze=I>lcV`4&3%srvMVo&6 zvtCQ{{^m2HewRI~w_N`D;_WAW_fwsp4(*zm5b!ci@s^IPD|6nfi_ym}7D@O>{c9}Y z4CTtt37=Tcwows7_+-{mu!np$J+rfiz* z(;9p`)M?p_w=Y8P{51nKZ6-q39Z!WX>=E~}q1b&E$|>HCN83>h|el_7#1G)5PBHWN6F!?HKm!_L0+Hzg%a?xE=ZK0cTh50so=~ z?t_mH=#|x9wqac#vqq*!js0Ftr|=>9)vT*w_!DW*4cgSlG*H+L2|66XWIY$+WXwvDsG)zuj;m-6H}OHpFcWjUHvv``EnO?%=~=UhGP!`w6f+t*jyy<^sw?cg>PtE}GkwrOXO+}-3J zyEA(iO}sQo(S|oVK)9{y@0ReM4VL$wUx{|%S19w5emwu#{7%~g(Vxw~yf~yi@oC)E zcHy&g`~9|Pl?wBy^M%BY!~K7qHPu~aCP`yXV&{pKIG`V+Y=c0PEVK5jee=R zcILlE*Kdxd8^S*?-5mT_zhIw!1&7e99!;wj=JOnX(+^6t_zNU%v)h`TRLbp~o~^8| ztueJip;^qZ`d)Im!~aupE|V>KvllH+$?FKI_VO?_P7FW7sUGrEV&yyAC0DJ}KYW?Q zKZ*a+2B8f>txK*>vRWy(%1x-6L2#|@whx_m{%fTD<5tv6tiPE3Yrn|e8~Rb?*>e9WY=BwH_s~<5|cb;8c|Jrx z`gbhyj_>VSbN2L_YOl&q8X~e&kDa)>CrO)QcEyAA8S{d5bHfF-LZYU`IO{2gd(N2l z|M!B=x9r{>y|Y5ghh5_2ztrNIlddNYnP&R4cNWC&dbh}@>>h{Uo5p?8IehmnUE<-F z-q+u!QdN54^TU4WR;T@qwX0u*6wB9UC5UXx+j#k@*^*MNQr$P9Pu6?Kq(w;0dC_PQ z**=qF6~~fIwnuM87V!RCRr>mqWQib0wvF}flEdxCb=NVUS(y28;+}xRvS+tkcq6nV zYs$25K_5AvI5_Vpoc^PK*D>CR<7&PK9@icGaW(gkrOx@(gJ<%#@h7-mlzEW({cF%J z=Gzm_8|nYDU3l5%aCz9t;yP3R3lrX5mU;en*_pih>Xw&F?`ds4@X%uWgTBaI`5cdq zy%O7a=2$GqIMB?!&90y{*vnP(zKy4*?&Zwn%*l7-HI`-X-?#Q%Q^>Q~=eSl!E>o3! z^0iXp&~e81f}D*mh1vT!nx+(5oC>`3sLb`Gn5<|-bKm}h&8+#ROhxf}Gq0B)h&4Fz zxefHsez9nd%uL9^1o2 z?-iVM-WKKmv`^BV%XY}^+1!Tv_uV&d{%dq-|F_ky8)X|Gh5Prp}ac_6|1@wPPMB~tn2@#|h6UmhEOH!IRc;B>aD zZ&Hl=C6}s*bs~9^(Pk`Htcyi>7Q5|S6j?7xxV_ulk!!^HUhRwpF2o5j_eU(L4&Ns!f<;lAYH)0GTL;va7*><{BI zG@32^znv|GdwI6V&AHp2zcC3cFYT$^{8sZ(`X!OucP`7EpM87Hss;8lY%e7UnwX@m zWL)&ObivYd7kKuHzrL1}Z5ON>Y!_@9ym9fXx?>kk+dmXrckja4-|?P5e#Uo2zxnSg z^iO<8>sS6eNlO^k{*u(c5^?j}^0PZ~gD;=@6V>AP^V*-(zgZcw&BN+edZ;`t+W&e)S&6~GQST*h5Lob)jS1MM7O|9p6(QCOczR|M8A%xjh z^=9izwyj%>Q+97?&RThlZ-xH48v*CH3xu|LM6$%FFI)fitMp{2?0e!$$ATloZ@GCW z1kMlYnApubHRReA=>u|+Yg=AknY)MWnQZ0t_{uBE*0b7`_WSQ)pR~v_Kl#YwmZdAJ zeNxmz+Fr&<`Dt%|tq}g`ZpvfDwV#xG7JmF3wf6Z0Bdu!}RerkiOJ97eS$R!&v7POq zb&0c<&XYd1!GGt*Kg-r|E7zX0V==X`x|pqW>8h*ElH9z#N11AB?R^EmS03141xg=wt5Wt^Ua5RS%*T7l3zwoRxA|-y ziuf3qS14O_3qCOD*0kT^GTkEH?AZ46`{UM_A3M#p=W@D!)SJU;<}VoDz2nUFGENK* zE}cG6?)CD_Cj|$0bKN^%xrTk!+})l3K3x-7`ol5LdrJ1Fw6y~B|FE)YiWnBY3Ent+ zWlOp3wV;aIxnZp5B6jZDdg2A|%_-GM=R^)h{^$6$n|=4IbK$Z7VTit#6<>dR; zQ-rUEcdMm`DV;o_)sgV(Uc-VTTdv2X%;Y_hog{Lk=s2(W-rxB)0ui^bvzX3}llk=P z+Q!+@FGJGL`}A$AO;@dN)h)4(6XRc=DLHTLZk1h^MU0nC&(zqrW^T)h%XY6aLv=#V zXnsnM-=y(%VsT>4@ox{xem%8rOJbkcR^+%k@O*&U;u?=G4~ZK`-amJE-6Fq9oqM~z zfL0#U=|qDWVG9G^JU^72EpqVf%#xbh7ku+>#L7BlvZWibZn*nXZbe}1LFp6SvdvX% z#cWracn5E3p6pl}7Q>$WVR7Pi9#y{i?Yzs`URY_rTW%D&GHS)L3TGd`FN;o}iOHB| zW5OEb9i%(=%0^aG*B2@6r>_cEzI9`lYWNsx8nAqJ;`Nj7{*+z% z=U&_Ou_i zOFH!S|Gr}-r>h-T>aFC}73N=<@%7KK8xfy7D(=cjzWFHj^2Og%{mkiM3vV_4*J)gH zSn)>d)Ay`Nu>dB=InBjKp*>}RldR+PaI?gFJ?IA2j@>I=2*oJ%g#1C9H%cN+#CJa^ZBe_m~CM3ZZaQinuM1=BwLDeo5~mX~GbYR1(?9q&4>Y`gtz^9F-U%u`?P%>TIKjm77cZ{AqXn0fVP;>P|(@A|LY z3po45!YL~@^2zfBJe7Qt`1OphTSnz57cXR<;k8mL=ZtI8TLs4H4Av#r&US{%O1Un6 z*nXt_@HO6J545&S_}JF#ymnT}mWN6g|D4(B{K+h|wa#UqVON+j`?Oi!l}si&rH;G) z6-|y?esR~**QMoY7dS*59~=nWxaTE%fPfTh*Vm1b?=N?r-mE01?eyx*ary510SCjJ zR$hK^`q!P$FT~np|5nfhqhTKK8EIC$x=F4oyD z*+({SzJ1!t%78gm{&!?7>y&q~T#D0sHZ44OM^anc^hCnflry$-6MwniX7Ao%achxJ zzg$h&e4B_&vGqE)eeO>GVjA2$X+~GFP44b_Cogn!Rfx5{YixH@HLBhTKpi^YGlS-4AU=7vcZXZpQbwe;||@bYgG?`G{S zoj9ZbbbQ{{-&}&qUyY?g`Q{<^!g7WgcVIfnq7QXthIwX2-&$8aTvsO;9 zP~kA!^5?~dS1!&q*6v*;YbvZ}KU`$gc~iB@bdIc!$Y-tZ8b!`a*8U6GS^Hzx%UY9F zQ;fTm?riE_ZO^82mzTw^tUYVXW);zErjIAJ?kYWCIcLYrG?(^-*>fH2`z?gZr>8mX z-k*A&aeM89nL!m5MXPSEl$ACs%Ras)`)sOL|K9mVAGAWYKlRwPopGB_NPg{1b`J60 z+U6b?9TNerTnkk_CuvjfgBLlwj`)3DX6$5{Sa!!Ik|F9m!zaOg0vGu1)$LmLaz$46 zE$NqzqDLQ1ocBHA-RVcS%X*J2J-+TTU(0r%{JKx2b#JbnKD@?j_KqE;o7DsFC#+aE zOE_lsM(GEV6ThbEuDa2AW%gaI+;1C9mR+@ste&&+efyP^o~pAp3HQpYMAmezFkRle z;%CJjts()LA3R^Th=0vCFE{;r_iW3_b6;+Dy6*C9zY%17Agg zr1bCEU74FdieFW`<)CyZw}#~qZ}0)@DXaWG@!tsGxj$d4#_Lu{^)vlFNgJ2)EOoFd zT=LaHUQjUYT~w{P`MTiy-p?b8Zd>2V`1RW+&Sl-_`npM#DmJ-)a=e}Eou1f&gTBE81}%ZZ(WbPg4i$2 zaF69S(Yq|+R;sMKbK{M8#jn49y=>9(Kjm=7Z2Q~B`|;nGfAEj6?|fq@TwW3T#Ec8Vc5CkN~inNPP5%{vhOuR&)G(KK8#!Z^Yx6scav2dZ>F(C z&A5~%J4yAmUg+aJ`RrU9RMeKYR0o~^({$&IdGNIbsp%TWc<%-Lb58JgZDzjWogH@7 zZ|@Z`#>`8S+b3jHI+}RiH44!=!(9}0-?;n9p%~uUAk(A{p+N?JEkh>t!NX->8<K)f!+9?*V5NL4Y zc=)OO>W1Twf6Z@t^C$B84U+(c1(F&H3d{d@zkU1vJ5oUhl}+T{ucYzYc9-5gF77vPulXJ`DEjsC2S>x=O_iBf3OwDE#JmKq zwDczGpWS}-(~Q_nN%hZ{Ke>C(Cx_z~OZb{K%9VkO4mW-4|0=|Nw{!N@c~e(N{d*M~ zxjn}3lR)4#r^!?I?BMC+nZy&{r~M>a+W2xn*PeYUzCqrBHOiSLEl%t8DpnlmQZn8( z<<+#JcUOGFO{`CURPT`4Q^Ne-Dm!!^!^rm z;y=}?CvI3T&%0HUD8|KwlY50`&(+x=~Gz_zx1onJT& z-WBaSW2Gvld8JC~(eC!#!k3+o{7$PBG3<9bwe9&!=lhO)yUyR8-Oc*1Kx6sRSqp_l zX6F_bF=)TLr>E|(4|t+{Wv10RX`MSYTX$}@Utg^CvFVa{gO}vLjdM27Q+(JcR zsBGA2=6XwRVdVX#`s}}LzOS{6v+AinQWnsDW4iLZ^G?f78ApqDPGf#s>acmndX0?V z>Hn2|ST`Q{x4r1#?eY&Z?Kk)ADd79oa(;o_F|jRnO#cfn@3{G5-Tj2d*Sjt~Si7by z^;k@z{gn-m({op;XdAszXBLpjwRtl8if`z_7x~lEqmwpG}*zDO<;3nXJoxv)Ardnv1S{y_a4X`C<#Rv-=YT#|x%s zCmm&a!uNSP$La9-m5YD*q)9#W)2VrCslgY(ozcJD?OfXb58C(L-u*ay_-dT~WTz{F zseVp}t(7Nx$cI1JvNZ0W&G*>3@-a4ge;@LeZ8^#jct9Yptyz7}8M%_uuX#-#%^piU zT0NF|9A}9BVOi9>rTd869nVSa1|PK#)nD=4dHBIS5dnn-q96Vj&Ha=AZ^Gw#70vzn zy!ICVCoXy7dhWu?#zSZB#QQMn32k)=YF@)6rllXca#q{Iw^8DG8=q~6<(d3zN}aay z1-;}75x#w^KZi$Nxg)Nq$~yJj$#Zhs%#H1>ZvFfBsm1ib`UcSl->VF6d|fB`id|#J zt@DR$%C99)xPQ!j>#_Ff{2s54eOz?(ea6wdf32o}Qh39BgLiFa{+r{AXB)k!irA{_ zE@*t-xx|Qj^>bTMMPc>mr(&0mMsrTwo2Qeb6T@Q1{n-6$o>yu_klxG*Nzc5ebPMXe z>Sdki5&K}zqg=ChT9eKRE@GZ`yNoqdoW1pYd9+*U@k^P%=JouI@tDf;O=k77jAy$g zE_5i}`s!_=H^+0<)Ya0FuTR>A70ygN{@>Jhr;y{+FYhzG-gVV4(Y)&Nf8w$dZgZQ6 zKhsTA_ulY`JAcOf^^xaSte+I^*!GTTsbomL?tv|_kGvgE>n;AuyX}AOm$0ut6OM{b z_`0N`Q2Drijo>k(lcyiPU-Fpgf`sq>Q{T;#ukSlh9&@U!R&H+G)Q8vSJ*ZYao%1oH z;i>d>MeFG2TWp+}QyxhqwRK*6Yx`}2)uMG9y1#F_{_#VUW54RHO+AY5jWZIn<&CFl z&R=i;G-zwPZpq06X06awT&xfGoqtwT;AG9-d`Kw%-Stlj>d)EEJ>P0AQ)G1HNY(WB z^MC&Q@L;Xmk9W^ic->=;D)Gv*dEeY_H(R*jY*4olLzqlnc-u4aCwXz(-;}*DzW8p& zncu5S)+)Z+#ojk_x9VewcE8&O`*a2N-udXeGA)kW^S zcyCoiKC|zJbssu6I8HApeVMr_`@t`B&r>(f^1XAutZN>q_P9}8_tL4oo)gbB?n#PZ zs6DHACurH#pX_IpYahHf{kYsRYyL~eJG#ZaVdwHb??@KBA=dUZE9PIf<8|KlO|P4u zY%AT_Z&+~qlBcokl;Cf(LalnIwtVmKF<#j}dqGlKT8W%$=F+TJPqr)%TFowUL#s8c z`QV?NF1|;?_7Zi2?T4C~yRfUYRLmXYp+3o$` zrV6MD#DDw~_p~-otEAPW!>CJ2;6P1^Rde3=6|9-D-)tOsJItQ(Ex6$RHr|%i$^O>P z;;`A>E%E_7rmJ3SUGHz^di7#Ws5NWg)zg}v|8H_nm-gAH92LO6)HQwL;x!vvHnwf- z*m$b$w?ItEU3=*hQVZ5*9{lGPoFwr7sn*B;*=7@8eV+L3u;9vhS_PYyf2lU`eAS#K z^`KBhsqME#ZlLd%z8?W=TrO@bd1+U+Pq%x6+;p?jSHB~VSBeKM>Zm%KBqr+bRhIB8 zMI_J4dFP^;amVu3ra$~;Wv=^2AS3XQ+3Qt`3eO*=XGMA!hPrOu<9Sn4?Z*1N@(is8 zQ&!K1XCCxeKb!dA_kD*`o4KawI+@&XXg<%ev*7mB8+xn1@`c>E@ZV~~>fJ}ATvlIB zS!?{X>w+)iahVC5x7y}0CMh>5+iyNQ#qObzdfJt5|86OHPJjD(>FJ*7>Zjiry{)mb zJ9|C0?C6@s_fxd@D)^pXFt_~fvTX^Q_PD*6c0*BnMI^uaG1ouy^1D{<`em~3!=^{- zGaWc;%9E6%c(pa}{W*B{$-3tko~(WuVdpvH^5#!kI}GhTKD8_4@@MQ4m^JIGkr<>iVa8g$ypG&X2J5~6aRohIT@`<7!&Q4eFTQu2a z%gWLnPO?q6?SB}Bf8N#o_N6tG((!{Kc5$VKey!H=ntnTeT#9V4l$W1n)4~>E{@$V{ zB6@|1Dx2_*j~>i@b~7bhyJUBJYP1KW-)cFWZ7I9(zyhw!gIi9oY+CSY%F@k+8i#7K zCGKsnp6q>ozR?xwWqXs3>=9Wd+2EKhaJk@(=B2A?XXB^dILh2%Bl%$Q?wl{>8hM#% z-Ljwfv&4=a{Aa1|)V)rQC0(G`wkq`Ky&SDDcd;w;@^=L(I-mGcINR$$Ue%*Sll2_= z-ui`7RobfyoEAM44RQ0FEunYpO{&htugWKs76ip0#e!t9;F{z3;N*zEaLBk#8B-)%ev47Q|m{|C26!_gb+3>wLlW3mL;$Y#BQ=>Xyr9 z?dh*{Zk=M%wBg=cIMj=k_eywL-PY#^7aC>x`YRd6}bBUOzRz z-t+hLR=2Xd@A*BW-biJh$^36%b|I-?&E|*KKAW*f*|Q;o$zb>A<=%&MZqAfG&hK7(U0kHI z%`G2hvv-e8G!*4^EJQD!f4cwH`@$L}hIlWg)jv*`KA0;<@nSoxiP=BTYS|r`Db^3^YFY} z+FyQlN5l66Y!haR9K8H^566Q8I~R&ur~hGprkh!O+i?~(En=IhV948`g29N z-;_W5$TNBI1>v^cItR{$D|sG0vN>C&PyI2MR!Ed_u*06sLi}@HORtphYsA<*GT9@k;%l?ZsAAz3q#Nm=CEf|Mu!-exDw%RL-7OR=J%KoE%Hc zbMkh4(*L>1ylWr(wZ)t4g;$wetNrDEZSUc^WsAS$TCLj0$-|SiYuPJi!IEv+JKpX3 zqM(chd7kyp&96=M^uF8svG=t?smTxix$|PW z+h^lm|4+m|`Iw|V6*)UReZ@FQHD>qbh- z;%zqe)vAR~|6ki{F)Z5Ykv^#<@`X0DYAIV+$mXE`SO4Glvi5$ju`ArJps%NWkIyOJ zZKCQQSwHzlWzG+r`%nDywEwRS``^|FvpIavPi5#3{NGkNah9F#!m`t4*-t%I-JitN zf6SzR)BKJ~JMoQA?_7&aJa~}p|K09S`*aofO%mtqv9^)%c6eXB_SM41z&f|*TW=pN zlu~->{EJ_|YszAwTl*^mE6Q&LemtDDy71M!3-fKc*|~#XR!W<_ah-6<-|>slCoPd1 zrsOzep57>+sIkX0$w%nI@T)*S0%HYug*Hm^Eifdehr`k2sIMwU=yp zQj}Qrpn2#2zbEfM-<8gGP;8;*k%-LceDf71Oqk>uclK`l>*r54pE&+>nr_6Su3gt= zTJ)YMRy=HEJF~lcqUwrgL1&65&9>`2Cp+tH*1ng&pPiX!(fdy2y?vF-c315`XV%F5 zJEqtER&-OfN*m|A_2Tai9@FULzGkyBLc7LMzFW2;{g7~|{RX3XMq7@k2JibY?NgF6F3wW1*U2Szk8pTZzHF)X}|Iv<-e!O7l~vg{I#lzSae>C@rd?4o4Ojm)2(cY z*16?Tnp2Io*+v?;mOj$st30ov`8DRs>NA=#UA~`VU2^x`P|V@=yR`ewM@BW1u!V2S zY7K47&&2t?ce$Nc!>F3mCe-$!G4#~*7uz2`i!|UH9|-k!>qUk?;M{6om^FLSv}+8$1xvQho#i1`;S{RSGDt8 zc+Bx=ru+HrG7g zlcwYwul^QonzOFkd{y4t+M1LLtNGIF9pATomtSyPJ4|xF(Yg4ZkF)cYM}Cp!dru0ioAYokbLQ&&h2>K={#(DG z{aC^LBa@_Ze!oiAlbd7oXXTVWfz?x;n3v87IXY*q`L!jD7nTLRop$s3JiV67^$(Aj zCnx2cf5;uH;&n6aoB_`fqc^j73Qp=T|FTZFcV1e}kALD97XM^_@%5ZVvfR(PzgeR9 z`}|}6l2Dbs*TqA1*SVu&8lwC&8Jg$U&*|S+q$9r}FIXr2=&i->e|jeSsLSvB(&pFG z+OEU2e^$P4*XF>(dp9rNy>z2L|GV|V{))MqKg|g~R{!g*(}A67@8(^7zy8VVyOnG7 zSYy^}seP(U?>`W`v2j+PUZQMUuFJB5>DL#lOuc)pmTgiOtNfWf*Ov*ZA-5a;r=GR9 zPG9h~I?JMM4`b=~`D<0bKPqqOWwtMJxoBhajV(g@e0Xu{OY@)qn&kezEO+x@6c<+oxyQCI{nFuu49Duub0zhzOjm1l)46afIfkWLvitt$3!V4=&D+!J zpQj&|wKsp7>WU|oi!P=HnJ(R+l$`NAo||dPv(+K1xu>{AY)X=}TUxieKSI4d?WW|) zC6Bf&)heEp?ejpw-^hnHa!koK&x%{6UFUpX!C854)2UVJSyR7z@uyktI=Xn*H2oBh zvr8(jm96rdJ>g-j{{GHc=ae5_xy`j%Xl8nztEgXx$sVTvtzS;e+}m?#7vq-DiOjoN zqWAx|h~7{$ImB+}_IpiFt_OI8&RE6q@JVscrQ0%GM(@=2vZPPH(tpc$jkb^te{PCLhF{D594bpZ}w#{+peARMK5!Zhs&5eIxlm6FxzS5XH>nH7nF43`GielrMP46g;bw)6ODQ zv5~3TNXPb{p253g{s-<(SnzGp`hCp@{+2EeZPKgsu{pH={Qq+8_+zI6=B^Bh-23iP zWc2CZ*M1eA3%&l_?(jGB3;8Yio5Pl0-r2bBMD&f!FB86;cpdTi_ic%O)mJIk7xa|{ zZ=Z5X=a8AzjX0ZwhHJFNjf*Ef6BgC9l>aX?XU60WU(0vT;4HnNz##6O?yOed@vKK@ z;#sxa80D?L8L3XocmMtx+V?(p)da>hS0jFQsRb+gJ$Uzik56D^U-h@AhF3(-`X|Ke zRq;hQXK%V|9rN9+Z1!SCJ-tb>+Y~~?`Yt|mC_2D7?OvkW`;-OJ>o?En)VraQlh*XY z;^xn&m9>d_6P+wAL}V=eIPAN%c0?_VDP8vP^zFpshbmt^@)s@3o$x7N#ABPlZoehG z>;2V#-k(_UVc`Lp*s`(}QKY~00Yaevx}Nscvv@@(I} zhUZ(ANgTX%;a!r2>9oVCpFX}>HpM<+{z++*)WFCC%XL?W&XkV4$z@e~;pW3NFKmCF zD@ac<|LG=>tFxKA`(E*m{+}+{2k&T$$O!yuzoyk(z4UV7di|cL^k*iQmNXyRdghBn zNKR6!QtO9JL0j+sIj?TLx$bzR(p+Whse-va*Yot!r!MU&xo|_}kxJ##eKK=0y1q9Z zNc&WHJR>eq>sI>O^gJC{?O{FSRcv_j!i!oS12gp`hRr+Zv{ zzxD6QpZu@A9<3K{{P|@XcS?C8_a@_&_jbJZwQMz?w)08VA{~_^+pfcF)qK`}zEJye z@h*#B<&$R4R8sESpmF~Nx5Nf}ll>N*?+)ygyQB7jvBWd@xBvc^QJF`q%9{_|Eo3~~ z+;;D);*9B%1>0JmY_#?eKUFHR@x-S2F0&q+&z_ULKj;1Xk0*sst(q+UA&B?varrqC zwx5)>3XBSl&f@&VdQl)iL8D_VbTZR z9p;No^KYL#^R&?O)L9yG3dLKcox4lS{i3YOO`I0yI8AOZy}Xl4)oCrOncIR>hM!&) z6&Qs~-P3(k=Y!U!Nimi;6I)b7GyPB522`a;@O_SwJJGxH^by??)KT>5XFUetBw=-8h9yL#Q1mq|I!eEs@~_7*nt z|GKdju`jm;z5U>Kw1e~fvqv8Lccry?E(_eK5wdYv3G*I}Bj20^V=9CEbh4N6Y%l#P z!Oa=S+dKJ=i`r!A8xFRiN7erO-27FY@4q^Eb5c8x?$j?8GaId#Lyz+a>21s4J7RId z_1-tvFp;&>k2ULd9aFY?Keze#F7DZrf2_N_;_A^EyQ9iW^jfmt7~S8yIi~qgRYFO} z<)7b|HolA6!0cMTb!EuGN!wN=se8SjA6B`seXZi=bD8bUQ@Zvva7^Q1Sz|jxdpeu; zmI+hXQy%4J_*bc{nupOB;t2t=i%i43U50`&m zwmI{w``37B?_0i(p0=Lh7pfPl>N^U4GJka7yv~))VG1*f-q=-f*XYSE{=L)u_>7wR zeJvNhDSJG=_{}h6jn%t}jEA#wUEaQmnHt|9B|87ZyPtfkEvzeE^&Z*JXj>W>^43P5 z)A3*4B)R0-WwA5=Z#l8xbh6VernoX8kBzC)b@eL)c$A;5?9$n7w z{?f6`@!euck$Z1Cj(a-StN*xQ`ZIH}uw2mR=&9B@s!yA|OVxDbR+?t}t#ftX@{`Rk zeg|)=uza9p)(bYT{Q=8MZxu~SWw*{cDSvb0N%@!4Wu8^>ui(iSyyUh0tIYTQ`^hpo zv6Xo|Z(4$yPv@x_Gp>nSp7h6oamj|r{aaIQawhLz_Wi+*+dtTk#V-&R-8(03UgOJp zfh9!|+iyK_KQsC1$}I{(+7E9&bNe&#>xa&_Y-M$lVoq~vCg>^soAig})~WrXYYs|e zR6Y=lbkM$O})Pl2jA(=R({l!%b_@1h2bE}!*h47?q#zr?A=|M z>F`;#%PFVmUCe*K^Y@kS{q^7bb?%PoEqV_c8qS>jFWlVoU;OvI{qM@UX9dVv99|bM zuwZM;+9fLs6q+wi7ljdf>WXIH*kzCHK# zknl;}(u$ntp1GT6t<9*IaAHgDXZKZR-MM?W%`cxVn;iKwr#tE1vh@v)tnMA*fA{_P zYoB$0yP8$s|AGxY#y{?h8#1iDz|0(99e?F$erI}+%^Z_s?i*vHkDb`Ky`V#Tv&kK{ z=PlD!9&DVl^y@vdW5&DAyq8hAxwCVM%UqM9LW#}s%k>wCoX<;*_0>A*J5h1+rYSZ@ zE;h|9;5DUU<0emcyjuEOG8TZ3`Zr zIXTJl{?#LOMn4>kjD#nv_ZEGWkg`mCq|MRlk#b92YObnU!##$$-!-p~Ot+TIz43J6 zjz=esGhOD^IBy-wXz=~};ppf8HkrNVN^{zC+WCy%VTU>FrkCDU_blr?TYKsIogMS6 zHD*|qTwi>Csba<=AH#^Zt>;1(-n@RzB=XD0z~|pMcG`Kr$y(m|w4&tw1Gyvfzm`9^ z6S?is%RdvNf^QsHv*C5lPS$zW1!_S~n>Saqt)0B~m-E&nt0>+(%P(X-KgxYfD>E(d zUh(E`|Lp3pRi{+`Rj0(*ac*Dbpkmos@th-g&trc#jrXAk`%flwo2n;o>oF|%{qp#0 z=J(5yFIF9RZ5^{W%lmBCjdT2yFGi|bIqg~|t9kqEpJke}mmS;5kiA^`uIYz;V$-|W zg?c8ecJLCz3jWYadKbo z?&RCsa@A#RH|E~nmV4XG`q|66`*F-K*a1TD6Ar zmiwP+XVfC3q@t^w4!Wqc7+#zsch~TU*g83}GqWRR?OhQroXjv!>RnX-t+>5GGq$9? zT^-iK+w1mbu1wgJ^RIY&4L6+cY;RA$qFb|Al=n)ou+Op|lfQ~tyiA+LQ@l)gTJ@yF z?lf(S>EEaK&zAeH9PmkDk+G_u;ZCXav~%lw#pWDZ`ZcQ4OK*|To6k(M?7Z9jMMnhN8g7K88VODHeDYSH zlVQJ8b*-qB(c~4s{(hP<<9+Tvd%5ci+WXHwX+9wM)?ja^P?O=ABdMS7+(--Yujb+8 zYU9ZiJn`Yk(l(JVw``K49t-NSmi9Y6SN99{TBm3$=TO#Be$LJHPJXi9ymn<<-tM}p zGxMHBCOb4~p7>&|Su$Bj%FkBvJmZ;9{W)v+6QWmY%eacXdLSy|IY)xyvc*rYoVsO< zmZC-)1{qoJe{PCDRNwk3E93KqjS<1@ZcgF$`?Kaey|}|wV)oAd>pU;SJ~EfJy)gfr zdg5)iVDI|;6mx~G$J^H|QhufF>DKhlXvyXLFZK>;o%}^NCGIQ!urdogaADO#r+L+h zXHOcG^iO2cEOU$5CcHMirn7Tnz9;M3Z@bJNWzD&&d(bL*{`3WD6PDjvnYHl2=b-xQ zFMbHC&c3p?()v@^xm0_}FAKYB+z!X>Yh9FkGT``evGZ>?&WW1x^!kiewqG8*iw`e9 zBeC!T$En=D33>CFlVJ!7{p)|uT? zzG^N!@pawhpipa{tXq$d`!!z_Z`^1pKUe1m>$*8zkpdT1JY5{MP`Jxah9T~X-uLix zu7`E@yRZ1?8y~$Zc=B5PGv{7$->%6z6Kz|(yG`ay;hpS?Yge{%PhHKS5#6}t{kj{` zS4wo>d7iSfD|DWipy9VJvTyl%GyX93gaxj*55yeFoGg27o10{xss;ZY^V_d~|1{M3 zH94+``GNV5Ju~-y5V(;R^^J3u-!#F#nU@0(zp(4N$>!ymu%IGWUBdU`lJI#UQrRCk zcc;a)Ton`ib7J00!=&j6Q`k^2WrkWY&FRlV73qLGHWAJcZi1EeaEMwjJu(al>-*7pn`F z5z67`9fg1WJv?E;`^WRVBy0jJ)hE2E_0Rk4rN7Jk&R6B9wJrNs%e}6d`1)k+WtH!4 zwo!>~d1ZGyEVwI`VoEOZRrmHCOq?Sdb?;i=J*OBpR?c`Ii^W!VSEs7ox38KRH}}@( z!>3=pZe81=BxCZW`tMAKc~{oV7fKO2=*hLKYPZ?<=J}yrhXhsbYkl73*0{pJkmIGqN0Y6RU;C_Iq_J)^dt6svaKESYy~$?d zXLon*X&0IMCD+Pf*+za>mxKO=tD5?DT{oU0nl;&%?~N^&(t*`YcbZJ?Q>tXTcdrzF zoaWR^4>y0nTO#f2bP`bzP(V(<&pbF#%rNkv%H_V_}MZ{t8}?x z8MW|0;11U+8y424X8yAliAQv1_PqM_Zm#r&lQw3Jk5-HBmD}(vD=Y8(nU8#m9y#i# ziyS+WXMN|{$Wg}eVO~LNxt2`FA=m294C@wof79vJ4?S~Z+l|K;StIUDygjee_)q6| z7wKDF`m27V`OPesJnhw_@2?v#Y?v$`&?&y)sLqkFW;>2g^{haa zWALdu-;2*IR$kq{eRF-xj27W&&x?w?)tvq0ToS4ml=#&jed_Y`l+j*MD8l5-{6&{>n#@>nZ;G&rOjndwNo+ zcIMRBb3YxPODTJc9a9&t)|%RxIzjp4TaQlO8zJB>_X$G^|+-Acs|rTrDR=+zMJ(?RigIh zg_rjpv8rFo$bQ1V^wNi$0_=+lEHj~aop}V`{Y?AV?(l%%sJ3pg$ewnw z&`ZsIVjkSW#~1X>_tn3x^>(ViP=?dlh&8hxXFJB195GS|+$jE|q4>ZFk+0w82mNg5 zcbCn5xo(SC_azydZq90{SI?H-wX42SD}M9crWEBHiCcZ*D)zijJ9en|_HUCHi@B_= zxmUQI;E2olvybm?wxEhh%tqDgm(I!rA8QcSJ2iLpj$>OKRvUUOSG3tw`6O%Yx3`NI zrw1foDl3>)Q&JRp!9givkDr08@~b}wer6bb%2Ny3!u|Wmu_>n;mwCRE`QTw|&-Q%A zMWx%^&1drWxHqNF(ay>YuQ)ZaT=4hV?3pfw8X8@b|NdmZD|<{+`WCm+^^o;Vw!BrZ zudmF|n%AGYrr54raNUgs8ZLV}_bq&|qIvG#e~S0!zL(*U{_{F<=4V@1|F$`PSqp?8 zEq(g5E4uAk?$hhrpDgviC%pXPj*k;}w%xb;@hD$m?jun?0q={6%k-*+d9d7M#w9^5VYG^eOKXzh$Qhnx~TBZ8*$D$fX-rn}!~LWJ@87q8n}*LX%5 zouBdCkHe3fPk6?rb1z;l=S|pnX2#q(MrR_P@_n^dF7%pbe6@!&tTktX%?iJd3VSEp zEIIdWo#))mw@SZ%R%D!fVCja)cW!k}|I&FY4=!El!o|jt!pqNcKg`DLkNxF!${ZKYCOE3>&fGtH+Qh~~GrpY>GP!d+EAR8|-@9*!te+oyvMf z?8MdUUn*3Y-*+z7)s7FF#mO$eLSWnEOz(+HOpgmh6%}mH^b8i#Gx#`KOyY2F-|!&vh&`+p?to z!@hg5N3NE-+efM1>$C`bw=SVlQK0qaiCTC5CYPg)OVS&Ttl~N{f5Tg&{|$x5M3ZMO zdUDA`ymv}Xaz^DdrayP1m#llQwTtup%a$u2)Y^nk)wmpyJF0EqBDmLNdC=2|rV z;W{)$!dJ5T|BFRiF2=PO7^`o*@!90{Q=Z`Ic~MjQmN!~zO}n&4CTe@$(V6W3qcjDB z&DDgRr|g(p%v;;BCiUvf885zWXh`hw%vlzYdG3e6MF;jvUHe?Fv3af%vOXsHY~%YY zs_n~u+}!jt^>v-)%4X+B-FFrp;+*<=OMs7S>RN5B)s_#>e$wU5HQ4d}+|1=0`BT(P zQWKn(*tc}ocNkh4h)wEj$aUNjP_RH?=fbv2vzpFl9bkEIJNNLVH>bk6RRXL{_7`pJ zuiS8Jy0=mGs=W={X0149`2W$XV#kv#jyLj~wKfGjd;ZSZV|8HMn%m}jtRYf-tEJka zC&cqPFdaBl)Afdb;#<8L>?w*V>V%?U=dxjwq>BC7-f?xg5H>G|MoqbyIyU)2a`C@?4j~XMG5JFUa&qrF%xn6=epQ zn_E(|@9vsi5H`8%rbmMq$FBI)D>^?X9ZG-vAArP)6^$#QBPklc+>y+ z!}H7TzIB|)ApiaLP0cXF11ox_HTNyk`JP+%>s9K$hpgg1zG{|Ubrk#Z-A6lYo2tIy z4BeRbN*|?eGj@4535HwoEju#r(DbQSO+LAJu;lQ3d=maStJrUq`L5gbHQV~HuPnNC zXWz%&Ro%Q-#lP;nd}5O0*S9?U%X3eB4|-g3IeXFBXIw|$)pD*_C^Ypv_Z}DNR$tMj z^W|^XR)jxX@Q|VRS@67N*I&IpvOy?VGXHt;O3lqzqm?Xw9-3?58f^0-<;Zf&-3L5^ z64cj+efP3`zRfVcI?C>Z&U(w*`FYnio_x2wW69fn#|)hn41#6}E zj(}e2bH6)GrJt&WpIoyh<41B-?XQyb{YtMt*KfaO-|y)8PjLTRslZ(WjFFADniCf1lS{hYNiuDH^&IO(C~v0aB3m0UV~#5_l)nqTmx z#KXLaKDO!EFLVwlcF%1}sO@m`TM+-NeCz3}4c8_#t?%$~t7`e0E#S8xR6{pT_jc(w zv09z!cbA6ED|~3dk|}K*X?-rNX}*2D>n!69W@&3?J!aY`TBG&Gx%2z8ir3HOIeMi}gwBldpywdX-GrBsA9d-g&^cx9;EV zB$l~1wnx?kC@c`nP*8aH|EYTalzCfcZk*Wsc)#Qf)>HLQ+l^kUg-uhI^{A=e<(SnK zc35s#)CYFv-`kF#p2YR+v$w6KUbMxV3bsgp%_!Xou`ISf?q~+w;}%%NF;hIChp$#- zx?kv_XY5N^HO%ECXQ%9xw3goO^Rwp8`iGoGoi2*|W$gZURjk{!c~!Q&H~-r+ep=O> z7s~8Ddu*xlv~jlE%J*jH5`S;c>zn0o@$YF}yl0o_Ig947S=L*g)Z4W5M>0e(^6%>T zZp3)Z`^p0zBmQTl<~{`nHP63(^y-mB{a&4mrX3zgU!^pQv%(RQ2*%g%=-A={38&jGLY9H20(UC0lMJn9V!Wem{Q3l=H9V=GvXWlvO{!8x_0^0M-eJ;D#pJ#+3T-Jo=s zzhH&GubviJyy=iXB5qq>MU8(-Hyy!y;Z|?E|12O<3W>W36%J2NKTt#V{H1r zG-{&3)|WHCOl4JG6+h9+bV+>t+$~lvo8|~fN=dNB+|gS8b@`5!5#N?*TAC}R&x|a8 zsO}Z@$jFz&{72@638L-M{aRUdZF3o-3sn2rB{fV!k^-}eDaTR-;1TQTP zI9T_{@kq`N>*ac>>7oZiRqAx+{8_f#=gc#PNKLQHm%Y=>ny*^*@NiA(bT&z0a9`}P zmPg}s-;aoelB?I&H&zC0VKA`yl~VlVw?lS#{O<`yD;lS0cRY!1kl0%Fgz@c)C+5p| zOIu}wSElwX;{DQS-gH^z)LhT7&tAQ|M0W1=YJPHJ@AO+YN<-`Siv2zPyzqfr^ExpH zMw_1C$yJ9nRvnf;b*bSbvtfL2n(_UTz~ zx=#q}yjZZ}$V!bX%s)&ft^RgkYSk&lz4>c?oR^G=4p|ZW<9R-pmc!o#lg#rAwZ7iJ zvAJ9|Z_VeqUw)Y=#t2Kay>8BUWqUAhLS@0c(ldFJIA&|Aow1R8_ON}Q^(Nw{hMNDiWjb#&R)6h|HGnJRkP*$kN>_nPdoT+Xs_woqb#-x zN~-RX{3?nD7JL357S=uWz@ou?W^YrqR8ACwd$!GV{c|O3)>~eupWg1Uc*(xoKg>VzZR@c;?$fH~T5h)X?az%u zGXrNR<;`LxLfX?r?EZjeM_aF|CUdb zj5CjwB!BBHzwy6k@BAAt?lA}`C`7*aKX>cA|AN*3J^z^gTl2L>qWWdTHB0lw$7^qI zUCM4;VDS5&GPB{dlefafG~H)(|8ktattNBFx`1_S0ydU>D_+*o?&`VCXXlsbE7nh} z_g=bEw3KnVX+d?ZuK4o93!hIr{iMR{*zey{`pgYtr-&}_T3$Qjlysu&LOl&r)gG@E z-%OXeYzds0EmoEoc4$Xz>6J4Rt}z8<$U8Fm3Z^ox{U@+i=u~KQeCx`YVp9Fzer||s z<-1n&xP9i-$;mY@mKd1dn&ng#wz%eo{=W-Fmx?wS8O%xXWq)>UnMd9wg-f%X?fY)N znr37BF>dy$X}8ZBACGRiu;hlht<lCAWUq$t3U2R=t}%OUzU! zDl;U$FoY+uK~3*h%Z<=h1&-6IF6%kXR&FdVwlQ!{n4MZ1QSWlWz{Szqd|l@0TBnw_ zA5-VgTVsE7m%>qJR#W9Cp3WbxUo8+UnDRnG^?KOW#ZC=wtgn`pp1t&}{C?QOZ!){3 z%V+<~a^bY>z>1^XvGkF12R7 zf0!YAlK<|$IR?gw-JKT_T}pdr-aC8#bK;TL*KeD2%APfOSMWA?oBMVRmQ&n`Dc3G6 ztiLoTDx$9HmviDGK{i2axAlheL-~JaAD{oDpzPeNDSbM-`#)Wqcetc0HvWO~;a^|R z^oYz5Jo~K3GWgsTy`RCwv+i)`2%TOUWj*^@_EEv|>4&F_oQa+~`O=DOe>zIc7A?xk z_{O38GDiCSZSO0>5(O=BSC8IGkDl(wQTqDH_2+J>Vmscp9Fz=rmUcKyS$(d=so-9B zuf1<`9DPi;$QWMx;C!T5qhCR}LBRvX%49 zJ9L=s`b_&X!e-qri}~ldKHlB^ebS~Kt$Hg07Ek}N?S#s47o!8~rQS|na>eK09cnFgJ7*6=7p)@R420Wf7ik%gOk1k3nhpLfg)rKF_u7cVAtZH_MA%;G5TO z>)Y0;e)@09bN-yrpIG92|6)bNO@^Fn-wgO(?>@Ngb^8nJ7wj*pU$`IqHfh`69F;e% z|MywMM=ekI%*Mmg!pq09thuJ+`UBzq4U1(;& zbLZ`RzZ>r&)=&J*d+>ka_N@=&cdyO9ee=`t$Pzm%KIH+#CQUH<#Cf6|1tSLO^NTlVyB?$s2i>JY_gN?dB6L z_K6o_S_);py7qc7CjVZs#L4i<*;CveEl+)=Hk&rRVE8zF>cpuNMZWDdNGbV$Ztk-6 zLLu1`cljSSm1QvQ|2;o5=+SeJ^*tNg4qGTGv`+bRtNO|a(e9LWI%0APN1kb~yqe;B-%|TS^{UXb^FFMd6u)*-9hbt6b(e#W>3ls`vZMd1 z=Aq}?*JS%%xX`*?Kl=y&rJcq<7`HI)t1U^DekQP{y|>zDMXP}A-=$#*-J3qW{JGkv z)>-mj)g7H1#d99K3t?(1>!{qrU1+S-Q9DiK*m2d#H4Hbb{7(n9%XcLIZTWG??w5*Y z(!{^5?+%K!EWUk9zu&A-u}h>lb?@VnS)!{tpUm)b^nQF<&w^`1_m?$ky3CTDH)m<9 zR8F$(miRWGx8T6^q~&Wi#BA5ye{25txn-;T>(4xX!7A4$_e=cO+?k@y_e{Rc>R6Yx z{-%%cj#+o#K0Pr-^4T@NwQH?6JuP{WGohrc@-N%H`DmNz zES9&{!Mm5-`=b3g^qpD8{aX2MIX{mVZ~gjQCA~_jvZ=0Ta@3>8F%f%A+OJ6N4?htVO zcq_qaL(ENPmeiLAQv(-ezU;~T_POEkl?%QpOWIc1%|89>^O{_#8O^m4mv;$y9nrje zQTgVLsJ}-_#1Flh@!{C5eV6_wx*gr(aClLzAhYc{OM^XbMU>?r#a!d(JlGPJoh{#yAPTro_)$5EOV+%E6DPemB^1`wF9cF z{&3w1jrgu{{B5&>(Bn^Qn>1Wy1k?}gO$_D>G)$dpRk`QKI^8$Ti9&m-`O;HOR_)l& zJAID7N#)16xBRNFueaZ|e^X_q)b$UYQ>@Q}M+8`Ty@b z&ilX1@0oqq%AcLfg=bH3ez}$<=Bk;fqtn;b$$}^MoeG{Me|4LK*M=><`AJucE#m)Q zy=5W4(w>Fi{CoIZpCz19kv2CpZm)Qv`aOA<^ELh7n%@j<=AUOjH@|4!X6Dz0%5#6Rd-YCpoRZDAe#)(y``iBAk#f8JtG_au<4=KF+dWzj!?0dcgImuOhju_qcyuxMlKx zSAJ#qgn7Aw$w_9_9JfvS&a-}efK?!UEm)k_64P10Xu+v8Pecb)z0cdHefjQ^LM6#3>D z7qf3dhTy`;bQ9@ak>@XH><$0@t?%z8W21As9-cEw-=Qob^|HY5U7+Uy?ArX);{mb$y&?P>w^ESj0w0k zf39Mz??jFJ_3wBj%a!cCJ{ro92cj ztva(^=&<5T>kY9>%S^v-U3M%~?cMAh+|nC(*ZEXH*!RIq|cOJbYV!PH=;Qo^H z{-zI>Ni-*KYb#v-amMfR%kw+gn^?Hc$1G zkIb^8dXg4~1tQ1Aj_Vv&@ zylv@~u#QW)Q(gBasTfZxDc|B?aJ7l$q=>EO#L3=e|GJHie?Fup$lvhsyYJi=C%#`e zyCy&X%!6weQ#LK`nDmi9Q&WEK?9P2lUWDbfteX9kUF~ND+qaBx-p4WP>gK%9U6udE zf9)^9Q~w-Hb{l=&y=C4bwGDBKY4P^!c1Iswwf{yI!&Y|LEd|xb^1qhac;Cvo81txB z(xCU&()9dhcOiu+^%|~vg}&6zzOD@%_qHG94>A-DYG_Wen)Qu)^95I*O{LAQ%0cRJ zs!^)X6dwKP?V828&TFU8?v+ixf5keK?f$3z{Mno&!SSE%#IyVHy8m}GOnNu}>R)Lt zDW?=dzfkU zzGvR{A`7WGHaVI$`bNjCcCVYhAmEdI!Ayzp9kz1k)?eD$A0uaHH*M9feJcD-UpJmg ziR!CXyKv*`#5uQjZ;sGBFE!)r)D6%03+C%=-=ekP*=`mgbLDH>do+F5Etc>$oF7<_ z{YFJeYQ|0(zU$|%1siH?DctzU^TkS$0QP{mfEk%zwEn7PtD38tD{Gc}egVmh`S$glSjlQ}Kka?0EcVRbLzZ7+ z>!@S9CtA=c>(F$yH07-MiY~oI!%WXB_Dt_@oO|{7NjKwx>5?kvvgG#s+*rbSwUT9_ zaB1yE?%FnIcZ-vGgz2BYhH(LFA?KAywMtH#X-ZLWco4-xE zZh7vGndd@9gItrmHOBobRm0_r`T}>oRG| zVKYwqxxX|^cxwe0@-JHd@-p+ZG@Hzf#b2yqyxu-kIld%zbxY$?=Q(x%lU1jMEe^c? z_#OMsNKHwe2Wy^h{dnQ(p^qhOjAD;3MJ#{BT(n3aPHx+@i{U)SeTxoE6Ku$TXRX#_ zd!X{l{Ty*$kB7}Qs__R@_dSqX@jXR@yLXjP*Ncobd#}qJ=?lJYEx+r9yu&d(m6fx>aAY+8K35V z`)6%ez`4l$akNeN*R_r^XH+kJ)x^gI~Q3@mHse2JLrz&SG&-^XY%*N z^oiX!T0Ct%hjf10k&R4WH)@>b_{_6x)!oDi#WxObKH=6lS@B2phU)eiIm^~wbhx8A5ZBE^3;(xDPyYpkw1s;pXIp^l;&04qU^fK+fu$*%nLvIvv9pS&ypv0fz zI`8Yx?YlE&xKlq|xF57x{LOyB^Z!(>|0nLfXuj(2&KcKSe75E^)!0P%{LvDX@($qp zQm!A?a(cqYuc}wI+@!UO*ZDX0Oiw-dtVZC9BX9mojbrvv8*fZscj;#Tx%unuYV90W zH_v2@+_C50*YbZ_)>TnQ4@>dyUAl(7G3}cR+qJf(t%W`vF2PM9^>e*<7Z=oCzMSN` zXF*t@wtR>GqG#)V`!Y{D{(fIds*slWa;;C&r}R74DJ`F%aqLoGaBu(RT^|>HTd+R; z%5j!g*}T7=CU|Kad_G;Oc;nM=<;QXqMGv}39%*R1Q23VVfaw_?{d@6`SB5zFdEW1H z<=uPy@e$VQJtZ1{1d=~I$(yBmag0@zT!LUv<=#y$DCE4w{KU-u6ZXu)GfZyy4mD` zkpAv~wf~lH*c*QS+s2D87Zxo}dXeH>a+!O7cjalz>HZfq&DOthi=2M& z?<|=2`d|84>rau&Q}kjv{W*hPC1nf#WZ4>Z%XIxzF{SPkYXl!2w^Z8T*2cpBv-9UH zE|D{$#-ES3ym-~Q&GyleIeX3>xnHxO(0J3noi01rV&mHWTy6dOr(8Vj?tDERO{WiL zj0TgOCWT+>cRcN%GiTktHR39J%0H{@IDK=8oLhmD+>Eg&ZiA$$n|uau6%D_Egtv3y7vFo`M>H88$Ca?Xwmh_XS^rZUrG48@_l*ru6uLB1N}0S&pq4} zv2}UKyp7-MSMDiRW=gx(^88Wt#M)1rA9zP!Zpn{+z1BkT+NBxJJGV?&{a#m4Lil~P z%)~7}w>q!qTRKHSPAA$cahjXK|Jiq2jfK>b>`(Nh4toQ0u$b@ zc_8#!=E#ae+s_ys@p|d%I>U$m($-8TVS^ji%dH$0+fLldUFlhG+_xv_kW8<|>5~#3 zDUV*x{`cq35d)X?KK%X9n8jyY^7f06X^hZH3!S0v(8~VOczvf@1^clHCzOkf8#t@K zT1eGDpJ$!cqZ;4UyWt2|rM${&Y5V^d=KXnXV)bS5$736fnqBX;8lTqgT>9-u%IXz; zbyIyGba);8t|~tLWuH`lSy-jmnter6I$2(A5#3aFtkNwd_jh>Z|0nmK{@u-!yHDwg z(esQGSDF^>5Enkp`QwUL&r!o|`)`Csqy}DD!=xZD*e~?SyRLIj&3gGClQdf|y>VX9 zBw0M&&~;KtXYKT_wwm83FW`676S~hLceXEP){OhHGnt(8Sl?{pV7_;&@VMvaN9^hn zzh31wu998j`{{$8yS(PwYfl)@J*#^%<;L!Lvpqha`SFd@{Bi5bww=d#KDPY(D#o*Y z-`W`y7W*|X7M9R>aJ^$PU(UKqZ@miwel1;>CUnhs7E|=XD2e!&`*;0T{WW=lO+fxC zO%9(WcQ_lq@;`I`p|sTgkJtY~QCn}lU`@uf!z*514$3a#eV#Hk#n5o>vF_JS6200} zE(XgbZOe;TdvAfNU(l|ji`@UP@@|iuzcqm2O_$<-F&WF57x`Xi9eC^ERnMV5C6G;i zacSoQkxbJMz}l7dq}}US+=Vf`gZ&Dwl9Q%iFHVi7$NO55(x4b(9I|yKl{O zeLaJX=9cUGR4qR&>-&FZ(X9~Udd3jh?vt$NxUO0!JZ7GG_4o1HwfiHTf2>$}Kw9Sa z0ha$)xA6R8^}ENnXG!{vv~vNbUmULW8ePfWw0qI&`NtNYKXB9~@Kbu5n$PYY#@C<3 zKE2^*V0}?_P@QMr=Xs7*@q$&`H<|WsQpkUfLpt-v+kaC z=In}(0SY>QJ09;`?^zIjK)K`p0|En*34cL78p~2pFFW#Rzr!Q6?T6XJRMab80 zTTf}->~T1}z5AlqJE?>lf=Y&qCun`VtHt$?ZDC;J{jMm6#EYE;g~i{zLuxd!=k%+=cZF%!W;l)eBGO}>et*>G<7`7ae3>n@cz>W@7wBa zDAm6A!dj-R^qwj}b$x6_(c zGc)(xd6M(*>G8*Xm-qB|Ug;~C6EV5r`d?-5Njk6op4onbv$w45fU1}3qrIV4mt|e= zxBmTqsOr|Gs_`Y^B$2fBvd$6Jt!t7ReI~zWr4tiEj%&+pa!Vk+RFIiAC+` zHpz?%KjCZVRR62(HhaNyU7^P9X_UR+bydX}ah~^K<(5+G*T@=cmi&BTcQ^c`*-Goe z-PK)fn}2uC`RQl&qGjRo_~QI&tA!R{cCFXl^=i@VD8_#}yB6umPZIal)rrf|<3Esk zZ0>5e)zb|%RID$z*YrCvJXxV}xp}^qO+X(RmK#fBIBsna@bTPG*l_9Fy;nIJspjfZO|SRqXxpsNPu4R# z71LlbeU-$)$I~}6bcX3g?@d3!RrGk1?dP6^<5F*mYCIqN)-(SzyO~;jbk~~6s!!MN z$lz+-IOl-E?0I!QzXd0LT6pZC?2+F-r#^2f__?>nZ0Q4Y_ew7_R&$P&Z^2vtr1y3+ zg`TWA?Q}-iv;U7=YqpzzoV|F?-=l#h29f`d2Cg}KJ^kYS zkN=EKNR1_>9x?uZ-^_OG|EB$|$C$iBuKO|`yt2w+`h;nU2FL%;=rz^NwJ$q# z>xb8>Kl8&%Eg!$)cD`41h5hDVOQl_^UfPR~Pn~@|<#gb#O6`oEa*FYBqW&W`Zx8-12a5y6O;z7cJm|X0WXWKf-gUc0LTBdYNt3R2 zPgOc$S6EsnzdQf;<;5CN`)|%`l=tF3rtRTh$vY>&I6pYX%wy|6X`h)B7TmYnGckc> zQqZb(uU?5QKlwED)B}H(*&<@AYtAL)EITN&_|S3pHb(`WUye(x#XW_N_0(MaYW$vk zb!6bB`#P>cM@;zA9$&ZmbNh$LXblTh-cCV6G#jj0_ z+OhXR^K6#BOI&My{5iYnJI~Ac@1{)+@a?$~DIJi;ls#{8utC1*(-2#|@3Z2cy)JHS z$-5s`-nfiw;f@<`M1rs0RquXwEapLY>Z0Ru|4g6F`t*Iq>Tlh94sk8`X70Fg=ly@a z0Y5w$U&w52T(oUJXV(ik_xl&}nMRx<=e9K<(J;%{Vkb3^HPLn-j`PzM(zJT zN;GJv-roFV#ncBYSdQ}jC{13+jot&72cw-&-eg{4B@jAAO<^ddg1n zR~obTEsd0WR-1Z$-OJTc@A5g4mhyWy2j%Xzf8Ct(yeT{Kr-NTU)#$AUb;{7FZDa0mfmICK519T`pa(DF3-q4u>48ntPVTA zYM<9WC94$u6s!*1Y%2fa;!xMc?cMQJ<(->sew_`P zH!<@6%}bJ1e;)U>{QdbzUU%+I_79Wd{>d9w>~i0}r&?5j|I7Xxa*neK?mJz-mXfv3 zGWtU7X0ffScc1uNJ8|lQS*~`5KhCqe+-OR9!DMvIxNEOoOrU>JEWhj8kFVx=hT3kl zew1C3G`I2kr_A5$-KV8*e%}~A+2#6@CcW?>4*N_?_qa&6N_h>&U~(IV&&!EW2j<<8qyx z`{K>Zb(^opN3WaZ?y%s=E6YSEv~4hiFThe+v@kHqPriE+P72 zrKFhE?#kbs?=-{&*e0a?5%by0RsZI}tVy#bPWh;E!oF<7)YtK4AGW)=7dI%g>b=(d zRCIBzbIzanis1}fmw!{_U;U|VZ{D=9ZF$`e+oEn=ihMugmzD3K4ry-HKKVzDsa^3? z_x3Hlz3WcSq!1rBm4_O0y(+oSbM0ymne{w)z4K?tKapiGUAl7i%aRr!2G9ivzD+u&E6ML=xKa0 zJvh4Op-*WWhhpr6{p(GxO61Kx{!GH9DD2;?vSU_9Sw+vh$aa}8IxAUdjlrIkcQdn1 zm=<0;df~8`ZJLhDo9QABw*c5ALi-kuH{4Uf#@GNs$qq=K!@9B{H{-4uceUZpK{Cl~| zxi!+lK@-@|Oxn_^ZMIG@DJtek?8#mBZ~yonIJU(&N%Ucq%IRH&9~7s&*W)}eu_N!# zuYZ@N|9rj^zLhIRrhZvCiIw>rayi<<7u74yxSWXCB0YIb6=~G36GF} z{Pt$)%Rol!)%K-(Qa^|_e3xVDOXbtIY1vaLp22jRk@ww?Mf|Em7#fpv zw8*6>q$s7RjsW)~T#YvU}@l*8bYjrStX! z|H5T&>MahsN5{%1TxIlQ*kkYaA-e6apoP~)II4eVZM`U9UXbTp1a0U7hk$~63-c~4iDE&c2zvAdMnzlo^Rb1R@{2P zEvN5ka^wr68GBZ>d;U?h%CD-k$dgEzY3D5-^Dyn@*UK>$RsHvKyp+vz;@zE+m>e~a zrp$aT?^f_NMqT9Gs}4_tZI=^2U0mp+@3o@vQ3%LY?9~mITKa{8rQYCvotG`J-JMa{{K>RqhHr9Jk}l0(NEo7jBA*8CL{F z`A&8nbq`x_r19ndn=?yv0ySP`t+S7E*|78HKJO=MPc_e2JniAjr+uw#>h|V7-%{!? zIY(VN&i;DY>a$MkW~|8!>bLtb{YIA858Z7Z|2o!6vsd^rUz@gef!c1X554wD-s`UU zKkmPgb*N*>)z1GlXC7{f5xc0jrS^SFf4r;qrro~ZzVw~%DiA+hvGUL64g+@Of{OvN z(|Z>GQ+=%#$GGa^mDZF^FSYIzoXoGg+7VM<$Z)Jb`@{BA!LN_%sr}#FF=55u>q>{t zxZj>>cSzKBs^2fM#~YX#6Le2Haq_*-Yd^fJ^4`O;lDlnJZfmS5^qVzN?Tn$;%ST^w zR2wTDx+dPJjrU_@Rz9=3Wk!vrW6UMzNs>HF9~>4%p1p4@xtjI<{-^3iB3IVC?wEP` zS<$c8DcQH5UY@>r^>5}k>*x6>I^R7$@#W8tyWjp?ld|T^BHO9z$JXurzNUNq-a9g- zef^aWDmcVG%Klc*_V0aY z#Q)XO>$aH2w=PJ_;+N-B=AYy1Wn?9BHrT21_o_Ylyr z&fc+mds^(St+Q%u{#sr7skBmlQ?M9Iz3S7Y(=RM)3|p0 zQx`egeB)>Pl?^Mt#G2ijH&tmu3|g0$CMLN};ABzW_N{_fsvaKu@7C&;XLvKFR&-PPnH7xR|20Mb)%x_=xToq@ z;jE?mQci#2c`X0s7e~_cImr|5J~ozp#f!JZE{*u0-* zTd=WG&Alvn0Se)IN{KCozq>8&bPxnE3&36opg@vvF4&pPc~_6 z+xJ#iVRpt$MRChB+0BU)cLbj8|CD}kYE*#0cc)iLCch3&*l2UEtUtEZG;U>8OuCiY(Kh^H2GdE@1 z+jV@aQp&ice7wM?y@AEV>T_VoI!48isXX(_H}{!@UsutacWHSpyM=Xg&%Y(!kH1!j z8EJ2vzHG(6`Oh!c7MLiXoSM3Q7H7>q>uKMzwQARKzO}i{;X37Lo^Gezm&TTrXEuBi znmp$rhlf*6)~sD8^XBr z&Uo6vE70Uj8|&V=1(WOCF70icUCq_*&Fr-2!k;zCJEcFLn784<+s*7cZSC(rmG1GF z)ogR%oE+oLzx|t(IBYiLtL||ZvRM4*^#9cV%m4o_e#~6C^78+~cLV2I^(UHEcdu9x z`BvgNtK#~@4KH<#mSnYk?)yFGe_Kef8-JW4SJbg@*V%K64;z14zix)XefP`78?GDF zoq3qgb=N}Qh~w89o4*qC9>(kN^U2P?n!h6KdET+&szUC=DXZ3p?tbK464cvx`BmwW z?a!UKete6YnUTKMvoK0`fww@k>WvnTrIQ!2rYKm)^e#|+dhE4HUux{svP(ZVSKVdW z%e-*mg*xL&&vw^yD_bo%U&ZxLEUfr{@1d@*^AEkUKh&}D(akGc(pbN=hOL{BoOvZ) zo1^KoW7qEOH*Ip)Mn-&fv*MLs^Yk>&0ej}n_rAN%c{TU`Hs1KOisD_r^3U!6r@JOf z?y~H%e-gGf?$hhNwLjgz^s2Hx<-@xd+qW3~S6(a8(kYqz()9M4tJfp9dgR{f`7tLo z8era#`i9*GmFZ)|oupzcuvD{aaegF0{G6SZFk5jsNCnA5!h# zciq$~VXw+k50rk^z0qf>P@0O@!@kDAG_K&FXVbQu;w%V^euQOTbZ@yscXP{zq$cXC~JJ65wwyXA(z7$@8D z#JhUQD++agO_YiM?|*@fH;mz}|AlAkW36w#yQy~Zt8;2&=FWE+=en6csNPLm9CPro znNc81%y#!X3LBSBTR8dF0hK#@GV%l$M;~N#aR{BNTCVy-{E6k{2O=+baEM)|5ec49m#y$W7;13y3?w6e*cp_v#-rENbjXa<`EOOIXjiAf0P|n zRLTEudg7aa_qov9CVxV_1RSJ({n@@SzgBDhdW-zh2fvKtey=jwQhfgF(^#>^PnnFm zZk&(RIi8qcl4B!#YO~MJ07>g-{-;HCt%f_*&mm#n+6P5E${b>zJmhm6adtHh7q%dafWmEh`~B_jPQ$)<6N%>=#!5#|=p zYHdQY#4XtBFPHb$%`H;@T$-(a>*6A=6>iZxuFH6@EU=FD(EIl{LpD@<(&~vKud0NW z98lfFYSw+=jA-lHpVJ~j)VnTkiO{{cdt3B|yW4MMF6${ic}n#6sV>RP&8zl{`8(O3 zl&lmpakN!-DPJzaFinF~tnt*>iTkhm_wH1wa$7U?a#F#b?akuC-{dwFe|@|5YX8Y8 zcg&_5%*=VD@;vv(w~sRdFRkQeJ$CfVOYhT9J3Wi1`M+rBwby;K=;of66E8|LeAhM7 zm@gEYBb52w)Z_e0@n5sq3+%P}S4H-%Svqgxzr~+keazl+w(EtEkR-dS`mYu+b``14 z2rnpEr?*1lB+K7ue-nk9$8YUh-sFmrG&yt-Re+%I=;% zBIkep)B+LpHcrWGr-oIWy7ey)^cG5n#a4)YYIyY~%uZm!lnG1AcJ7#NQ+Isw)V}pG zXJUm6=Ir;%P)nGhrG4!1sWYe6e7xZK+Wr2Vv}3%s0#bahU-k-jz_Q!=^uS3NqZP%7$e!ozn_+6R0E?4}C0+E}>+e`O5u|5VgcZ%6Bu^Nl;N^@eF^mmPm~GbY)DXT$ztGyi#v@%5iq zoN+LferInvTQYIZ{vxx|rU>QO&d!x8A}gy_-LYBwd`E@urP$)PkFL}|&5_{_?h9DF z=*ZH_jWS%<`!-)vn-q4?c#4nMo;Z$G-T6Os*J~O4 zpSbzurqyD%(mSm_?>4={vHq?6zv@X1AFkxSTRhp}#)pF$)AIHou$lk!iyr4&$H~Rg zV%zQa+Iw@xT@VRP(XK7tax{M8RK|72SC4-?HDRrUeBGWN6#=h4=lKE1^o^KENh zYlP;DTdJ!H7diQ!e4p~`VAXA2rx5$_AyN=r=c4CmO>seK`rVlYsr?hyO zUg33N-}*^4tzhY)54M-v884g?(N5cXq0T?z`tkgeXQ%v~)2BBv?u-1KeEvOU>$Of> z1=jC9!Rd z5=+y)&YlCtA8Ng?>?@X7x5~m}W8m|GFJkpAMvrX{UVLPtdphrPw$(fR1|fUBlWv=L z{>ogYxrg=m!7Y}T=U4~3&i9S?nV-LW%XF)Xzxmwzx-M(zyx%YQ@Ob^=14;kImHzB~ z-STSA7gez@`i-vcOn2S3%ke33CHwpT?4NQr?bNc1MP6w~Pj+3gVeaBz(Dht$uTTAU zhdKYwTd(<;bu(qtze!h4?_7MlXXoO``P-kzhdQX3KED3F)=|%OuFvAvQzxjuC}z<8 z6~J(A^5si$Jl8hJt=B!#dw?%Rm1BvwaoS?Re(Qr#&NoX`28rQ*JR;L7gT zvQ>NGi7(FIPpsbltW8>D4)9!s- zepZr)*(YepiGpqQ=K{aC{G3_maPu?Erl1cDCH`A?rPO^$FL&vT$+NOuu)z7qlXcEZ zN;h^yEDk!6)Y|%BtK+#J6-%94_9}5*)9L?{np?2$sHEZlOB0_@UV11aZlF zy?zOaal1Q+d`rl&lzN+UB%&wbJ9kK0o0;S($t+nr zDP^5-=!HWcBZN*~oBqn#hlm zWhwsL-wWC!BzxWVi*+V%o*=BhnjtNC{m-K@85Pnw3#&fqx0c>-yU6o=+QneG%x!rd z%jYf9J!@3OvD}@fy>0uP?$cVI!jC-@owhHdKh-!V|5MI9p{n~T!IKYe^ir8;Y0493 zZIqqUSG4ae)3)wa;#*H7EOwHaKGVKD>vUGdkGcgLe1r>wc$^DbdfvQ~4s}nrDSC8+ z!JJLMIr(|`f7hhGo;_BH{fjf7%6@p#t$CZfzfM*%C$)1@!L)y?B9@kRS?~D%V5VHCFs*OFzvuP@z{Kf#;pbnWNryZ?TZD7Of(96eHcK(&T!A55J^7`&Iv((Mw>?}paH?%HAXy8Ir`PrTXkx%_JrTif4Axr&3o&TA~m^O!o3hm$3w z>+k-niJ#tUeCa>QXlfq>g~JnTM`|4MdksL1TdSe@*OFHx8N`7-*+^-kV! zS#6EtjQPBBYH{YVcINWtk$2a?d_>d&GiE*1-)+4^|;RjEF%dB=OM-*QWgH+p~ZylG*;6p^fXM$`Pl+W56pRhAW; zUVme^x=950QAy4-TV|QQ+Td}l>%W)8VvnGpn!1eFZtugNZR4}(;8>cVGu?e&l8QQ@%Jse9hVGXAj@CtWG!6Ip06=?;|$h6Oj*m<8;=&3%Z*W z*m9R+(|HTN%K9!Trqe+;V%i#GANxwZs22XR*z2|IG8;~vXAIBc82)I4FvNJU+;2Z+ zwu42#qv+Jj)+ZV@-9Haai-MpRk=7YLZzr8S zz1)~*SB$y*oFE6@<$W6diwz^b%Pr|#;c_^{=;H;?JbC7?+mD@!i`N$DKdC1%>-y10 z$8=sii99J*wd}jVmvlbekgW$izMn1K_FPY6V@NOa|J3QsA6ccCr>=OqR^+En$hLB! zJdwjvw+hrecZs?6Y&>tf;M$~ZIuBJgcqJt$TlF{1D5%`E(UYw_LrIOVvU}N)JXg0p zCO!9Orsx}rznOVC*ZfuByQ28okaV$U-}i6NT2tdIyZ(dE-h~c#_T;r29$KfeQFV%T zvAlTL){xgt558G3vL*R_xRCjV-$>?Gt4;FPX)jJ+j!Cb`eX-`j(%jk&%htZwckAZL z)^#T$nk59KeCy0pwYCI&aef@VRer)h$BwtNk56=N6Xub4yU+L%!;_tt+H+^bHVvO$*@=koqDK0bBj zr#(+aF8QB0_oqE$zoD?R@kEEGQeKy8er*pCeElqYD^*^;Bcd*S%b7Rp z4wS8Wctd;7C)Eq=Wz*E{*S=1?8e&(zE5r3n;Gzra2G6DU=>@3#RXP|WY?5smwzX}_ z52@X?ogu>0SmVvjIr%<((miNs@sg)xkzT1xQ?2h3ebpK5Gp(dWrsmG-6-+Z@O?k+A z=}WSPH=jdo=HZAbQXkj0uZ`|{5GS{)uEMyb#C21aY0ou-FLoBbQN=7eleo7}=v^A~ zrRJi_)#t6r5@8wU74vpCeG^lfvibdVLEjAR#_T;e*KT-PE6tqif6^&v^Bqyk&oSz^ zS+n`CTn^B)KK^kI2kV+=ldp(<>v?8Vgsc)oTcz65kGQPT|dd-0d|6?Iq zJmuQlVi|mAHn#ujEINB=;i3n93uU&JrU{)Tnd@iBS7-M=*mS&i&B9|hxB4*M>MYwD{`hI|$pZ#EOIE!2y3G3Ife%NWWFK2f zy)LW{zTB~*;}!S3LgUCS*B^(>@0g&@5f`O+;{E*<+7f#N!pt~dt+cdQ5s>Bm$NSoL zX^x4_f$f%4H?4McT^qo0y<)H3w|mK2>}N9OO?Fg}TbQILyLo*F%fz6FN2ey_nC$-h z)lKx#UA3kdoiKe9k8O|s-gh}tBI$AWv_SEe{22jUN4GT0%bVG;!;fv^ybY{uQFV^? zTiGwit?w3*tvG!tXSSkGthATg$L+@oCcd+quhAhkSB-OP`T3tb0vmVns~H9IzqF84 zDCIk4_e)_yezIUm-8E$2?alm(Ss@S@gDAq24F(^V&#u=_3pN=FC}D z_V(|=CBLpV>Q#KSk|~qez0L2oBd*I&_PT82cJYxjeDZPDmVKuLY^x?_G}oU#+4*08#-)s)*#GlieRFHM zddWWbAm6u#oA)Wr%njIhwI+HpbNd?$HKWE3LF33}eqx(nSo#!Q5&0x}O zy0X?1A-k<&4$%yb*|%3GSw^^4#WsF9VzXCvW6b;`iMx`8lh~ddHvVOqViCg2%iCzy zXyamj;4Qmo)`>MIw&=$FkBxe_NaLw&CFc&yV>hZ27D-yIxUqtly^ep~)_sNUJk=Kx z_g$8LUl`7@J3ZU#Q?U5y#M$o)5)=*QywmjLyK6ZAU1lf88xOIQqRSPG`7Gk%X0^R~ z@=ICy+R68gOggQ8_ouOcx?N%~GJ9DD)1)oO_bI+R-L^t0>ijddC7k8^tv{IrEi*ZI zq;6hRn_g#OoarRfNzr?|maLw#Y+YSyhxEzBsLv(;!>3t%IlQCNWTW`>hf;g4+RTsO zz2*Pozt2yzdHX*bH#0Dv{PQpC+kW4lEV(gjbaTJ({O7N7`?uqjl+%fOIumrQ>vVQW z&3^UwWbY4`S@*jIS2^$hZ~4(&>kYGc;flllQT|f*Cp?N+@$vtg{f@>@r-~YS@*l5u z|K%W6#GvM%P@Q4x!tbV?W(jdj_>A_c{&s4 zD0nP-uD3VvcF^ggRnM}HlwXVFo%KX~ol9`~nki@YBxSFNznSfNj^X6)t&7sOokyGD=6?Uqn9!W*gMN9ujSDNX?dS899{>RrV!RC^yqxfYw z(^-nImp<|ij9CA5Q_}Mt%L1aNSIfNkbz^;n%(_RHCaJL+?{+AfAG15#wsUErn8B5f zNdf8?IXA9eIO)ipqh}L^4mj{H5#xQGWc=_>8hgym^%G4``IO9@YM5zcc6i3r<^8w+ zH@);e6?JAA|Mk8T=R8lZyk%UczUWnJ>ih-P989e5I0dFN1-GqRZftG99FocMbNB2^ zPt6bBJ-v*%?#Q}2o~`fp-H>vVU-8l1^uXIlH*pS)5RNmeiq>j>zVF)0{qF1=AMHh* zksFWReh^}}=dOf-VjJ%k#?3~DB>u?y{0g0Y*!0LF_RVG->Q66i`ncBKk?-1e`OpVn z?)*C7n0n3oVZm7y!!9%Ls>eYelys&OAG;bYvdC76l$EpwnOBbHi_@eMbpE$#NXZ4aJTubFWXG;t^)$ zt1pF%#FVE;uqB5H%zPHC{54;6TaH|lcfkRz$`3W$;#AqYcb7y;civt3`qhgg4y&&Q z<(94tW<4EZH+z9Ce`}|9`qH(oJ(9OB%BZz3-a03Dt>=M^D~eHH74Nw7y%e7EBwhLA zjT;52`wMc91@BLoT_CVVbz$C$mn&2+UwGQ~f>o)(z39$l^+f(+)5|)`&YeEbGN-!8 z$McDDO)cA5)933}E4TCr%r3Gs*Zc8uy>RVBR_15?4!SX)#CF(B{NVHarK)J))$3O7 zf#2FLefuDCYO>nyTWV~(-Lgem?_d1ZGxOb}T^s*B`!iX+>e39Cxoh?;jJg?gzI(QH z+um}2#o0M5kGvQ3 zqF*bWuL(2?{uN{u_$|OG7~7$D^zhN!@&9>uuR7n=~idp7RKDG}wauSpAz9ocblM^&PU zZTZA|T;ZnSmp85!n!o$prui)Kw^pmYYMFj-(Zv`aFYdHp#+eUqcO9JZE9P;>lc(!r zpG>&dYvo&Wej~4wcIWblNW(a{Dz~b4Thf_M9L&)!U#XjN$|bAhr0H+t0|yr^Hx-Wb zy|9S$;)(NHk7Y*)PWTp>@Vdxcb+J|yf5qCZwyNtV+;W~Z$Jj!8S;MNWUxi$YGS;e{ zjZ0a|$L0C)=2E343013p7{8T|Xs$`N6xeq?>RJT*Wik2Rw?x%fE|u84O8x1vb_s^J zr+ehJqK!+r3?jdNc))vjSCd%9 zGeaK^<|KppZCbA)7H-(8yy%cn?}y@P7ui_~#hEs)l9>^}q0d%q-Zw9WN82gp%TI&p zuJ`8a>=05ZmKJ&JQ!BhRZN|=9rg_`~`wO$}4xCcZDa^eqm1T0Ut4`$RCHeoM&)583 zVRXMbFJ9rb!h3@}&BXOryw~XoFz@wI<`Q1DX^qgf$&-0qAv+tZ$ zT(j1Af#i?QD^HvfDranbQJHJ`V14K3sI{k(9?q{1Rqc%apD;B(G zUE7;J-85WLTqyO+%3>DFz#pZoQk_oo;~#VzJPOMBtTK16@dw+7LLG)yc~O*5Zk);#Fr{dUfm3?wwQ9R<(Y%tGkxDXL|TQ&D&7+0(~Ap3tq4-XZ<;6sJa&U6Jjr)0>JdneP7aiBK>28`xjwCoLyE zcP(#B+49MIW49(VZf3Tu(0!`Me!InFx~xy(kHtZyJ5HWkqWI{5T=%6#M~mD4P6~hN z#m_WRWV=7B3+K562F7c=Hy72fvD5v2?yzK|)pAXSs0-)xRu)d1vFIARZ;+hfNlUeD zGf(+>{BPg)CNHzT#J>21q>{E^L&WdT_vdUDndo`p%l!ZoZcdgbKmHqu{Jp-^^S{BT zx#3q1a4a}Ft5eW4^6Qn1Un`vJpEwC5sJ8um!|!Km{>|f(^`q&toX!|G{bF(XXd^zE z|H$FRY8^FfH41%(-y%5|d|KV9ZzFSOZcOIBf>}0iV{K!%zRoA-Z)w8-<{VNVhWD@ z|D3j^ufFx(`q(S4FHD=6U3BaBL9SM(gcp)chh&(Ivub4gBeqy>Vb)ykvHv-Htfi4C zz3zv z<5g?42$S06lD?wVSJ&O@kILSBz+{!a$QAFiUMo%nyx8o@n}1uvV2#mh0YBFTVT?+v zuPiwxxINHks_XRd^v)b@PW_ON+J6F5kCK3!Qr_)Zw}D zwKB{9PefO&)lF}CQ?BN%!jOLA@h|NQQ=Ytyso>#TzN-Ec*X6(yNBZS;A8%RT%DU%< zW~R;kmp|3!i(lAUCD*|F)%Ew2B^!)inpzf?IoV7&s#7hix;f1}?@6KN`>5%D`5sTC zyMA6^nPHUR7?G~^K{@ePj9vUjlhdLp?P1S-&rEu|<8s`@pj#7)h4Lep2EFMvWlNL$ z>Rd26M?Bx_&5>t|G-Vi5tD>d0y&H6FW`KN^C z(OJdIVyf6b8U9&xbIxYh?&i#2F&{Mio+;GGGp7r_c=S{6f6|M%%d)YC|0L`K0_Agh|86!&V*>PEMd ztwrW*g0!YQ-~P((OHaV3*oxQg6F>Y_e{yJfQjr?NY)i`x+nD#qt`t64e9I}-X8ZfS zVNce4Tu`RJHgM`j2OSN)qW7--X6L4G{5{IX5j>UQp{qgPgO|Hm`AcZLY%}@F)~mk$aQ^1`FS`2|uM~S}6ku$4;n{^3R{ZCm9KF|` zo;Z=)X3v-N_8;4Sl)Rg-_@iSo$Gl7XC5*(97ri^*#QXNd;b}gstO1HMd(xSXo%`2i z|3F1>snF{Gi)~g0`52!J)ecV(SBSXM|FvG9StHoXwbo8*) z^}Tn@USBBwy{P&1;jSQ;G?zs)6<2M$vMBHF_oj9CtAn*Y!%e4s&kFdyCDQKr+tmf_ zJlqfG|C+glDSYygW>xRKNs%nvio)OiuM4~1BEE>Zc;Om@lYzb~E>2w=nDZm>mLQ*= z(0-pEJ(~mfC%cFKmSt4fRJYb!BJkcr=hsvBOY47HXgbU5^w^gsYz9}wxOJvnG6aSfUOiUXbOx0_$C)Wo^$b@xl)R2w5 z>SYyTS$W{JmX)vB>Ai4^Ytk~;(>vC2-v6GwZ;IWkY?;ovdSZM(qW(WEHRhe^^O$9(OU3S` zGgIBJ}R1;{h?yHirRu$!$om3etj-6`>eBK?{Ry}cQ3DJ@*O$yuJG0zxAxq3 zD?cQhpTztpl}*Ot^S<@B9qnW{Ro!E_J9n?rG~YPSf9KO5P5Lt@^oCA{1qNXQ@=3gtFAQQHD=Hw3^heLN<>v*rYR$-~N z{TV(NjyAbvdktkmu08Pof1=`e{9omrZvOicv*sNxvHO3~ei7@dopL{x*QaE+Tw1F6 zRP$hFsM%Y)`HQZ3?LN5pmcye-mwt&nW|R1rQxfqZW=hl=)$ofprt3@G8rH=X9M^Ze zWBJ*}|v_ixb~zeAV*6u(w^H9%3mm36ZIx1C=&Q$w!QK6<|3 zk!bLlYkpVKJ*Jd5vmBZ6K;Qkj%>$hy+IRm{{mb94_0Mabd7Cv{xjB1pQy3?kegiclk1Xkg?Zv0Gu&2u{^;B9y?y)1Y0A6n@BDbR z{LKiK)jmt;%Eefw_~ry!cf*;_?I3 ze$3nyuC2G>l%us*VEmtOp1q#Gs{7xzCNi9uFY(K*a`Dy-;{?r^bt;j+&BF{71?mL4 zG@fv(@ho)STeaZi{;CPjeOb+|+BP1E;_R7a2lMVk{t3UiIQ*p#DbS=$%&7bM3b1iH&EKud8bo>uycXeEsc>=^hdBfH^NEVq}j!>3LoD@k!dM!Wa2^ zjywFe6)`MZc2R2S`Zo<5W=0 zwd1rb*M+;U+wQH6UlM#vy)=^P?6t3LuLZ3)tbKI6u*!L3W<^%(7P;2_aTmW|Z`yxZ z^=r}g@VCBVV%iJ&{0p~A$Ymd%Jlk+#($?qczJC_Y$=}+rR_W94$x}51kEi~e<-I%A z*rxV!{EYTq3(Ybi6X!4CVT;V=ECYY(6y9S~JN#^SL+kpIOBv;X3e zKfv(P+w;fIJlktVjnaGLr+8>Zu-;qqt=u?hZ5a0&sitcNW`d_Yw@4&Pw(x~(>ztgi za>Lf-$ndpuBmS+4TkP=O!AnDQito*5?e(AMeOuqVd}sY-aqS8Pg@^y`87|u!32Uiy zolrV4|9jnIo~dh}D#iTj@b=0$p=7Tlkm0D*_SYeWb)D;ao%IrW=Z{-T9L`JNd+8Ll zF7E!L#ZDjU&UN+QlL}DzFiBnKs$kv!RqL{jSAV~-ujJ~(yH6keSn+x1&$cUT|Cr@f z+s~TN*}N@1tWso#K#^$Owof59a(czMe*87hvuQ08`?swzU`OoFzaMs=zG)kO?qXYw z|BpgWdY6(Sohth=X5Yo9-?e7vNbY5p;OtnKRqZHq#DnwegtNcIjNA8~Sk7!! z@;|g&B}X?$?c}^yn#(?wC5LWR;9ht&_1oU{ak@L!1X(XzU~O*Df3`bK?YDkYX53_+ zu$f6;H&4}dTCLH=(-eID$5hSNi_?@gt1(W0a`e~HB=)etaxuw$D~~Zm?oHaC9b0`f z+3nrGchSoP)vQkIy(_!P_pZoc-CnJAdk&m?QQF3OY6h>3_JWPSY7^6~oR?2oq@Q?9 zcZH64Ymh_p{iC}VnUt9+*~G^$OR^ZbYtB&pu}0$)7AN zE|68>xIb&t+h6zgv^!i??q{01a`mbi8uRYR+5XIxIhM8L$c@5Wk0>WNkhodW4e(=seaN^jFhkLbv}2) zS^MVGW54)5eV?4!uyCiPht|qD)sAbH9d_k)d8VN3nx?OIW4BCV*r#w$Cflnutj;by zGOXo&0tNxxs!EFjcqg|xTL%T{)rQxXPM>0`$$r6j@;fF$XU*R?SL!XYYm1n7w~Eic z|Bl^U-{Rk@iyxWHD41!&QQvx0X88}{mdd?*0!qEhSEZ_TJ^h$9ZOWC}w{C~i=S{mR zclT&*f%b`Gk6y~Fdiyy3<+}X$rouUib1G^Mx2w)=-H`3|>{u|*;}56w`2K~&C@C!W z`u9C6`^mN~28+$SItmh^b5$?KJ6kNdGCcQDyIBQ3i1(z$&pCwQ6{>LuEH z3YzZJb^RP=@opk>iHoTBw;PONZedsN%yl@FwyLc4*6-5$o27i5H%cF>Y!X@Yt~>CU z(A+?L-c{j-|UThSlRaZpK5cMcXrQ;)lXY~1a6$J#=~a0C*<1O?Wa#k>HY6Y zOAFjA`aLy1q50X0@@IUijH+&eE4GHp`M+zubglVD*N;o$%@Ze^9hWV+`_H&1sVINj zeA)Taq*obLJziL}*?42n&n?WqHnBQ(=ZmfmFur%wcY>jwfkX<_#DF-S4A4XUd-I7a#8fT-_bA5iPJ3Zu6=$dWsQ}0_4BD$ zuTSf$=;dS3lw`TLjp5W)ImQ2tjK_a#n7GV(c(n4tpZ;5G?pl?sExxD3y!_zb9Sbk3 zxSxCNSTw`T=4SPc&Rseob8U4*=F0LOSW%=IvD&rnV@opAl$+=7`tE&R_|tG_)UrF< z6=y7c|0mH+duC*F*EZw#z2ZfO%zsH7$vE>dBj9&v$B*+bZaOpfmwPeIFW-Fk?b@P{ z`O;QbKeZR#m48rm*i-oXT6uX7(DwIg`ic(3 zEXa7XF30iv*@r@B86qqnp3?g@vHIrQ=_ZR+yKAfFyi%Qzcyw*umb@?Lwq*G(JRiTT zrZF(+U~`4KT}4rCQ|J!+7K`U|k9P|s?RydIew~%+^`!-miWzu01o^*k_wv73?3oc{ zdG)}Db7!1p*s>dxvd!CR_vznr_9?Usar>{#+vCq4{(<$r?r|@=f=Fqh%rS}dy+&iQC`{J|p*LnI+ zi|x67{QUOWnhFo4GY%~N>ZUc1JvDnLCwC9CA^SU*ogeP?sMLj@I?`FZSnp)6Lf8Mw zB%Z~Kx4wyctrFBFoEYmrLt3xzT+`vI4IZw(ZfQ3g(o$ac3Y+guSsAxyEVf0oTnO{wuc}e_e@5e1pziMfeVVe zRIb%arw3gAyKm{d3wK4AyKVlec*Q$|VZ#2+SFYvA{BB$3lD_u&kq<^n_C7~ETjqy+ z?6`Hwc(#4+bw@$byS`giTwAtJPb|=q=kZ~``?C&a+>ctp6C~n2?a$#iE4hQkwmrUf zchbYf(~eC2@R`T&^wD!i)6)0&7P!Q!D=(ZkiK+3g(aYDjicE5MW;*+PF?sOXuVmqd z&1-|XX%d$4-1((-J+`|DRv|8m}V&UpvESI_n?PJR}mcxsIz7~|8o8VlqxGbnW ze~0n%r&Wo?BC_E;a~W@%mfrugx^UBs6?!i(PP@1)>w=n>;Qz)4OMKa_+q2(fJ!_6B zjr+4rq`V|4d}Z~6FJAN4+&FZ>`@7J*GoCu0IY(KKneFmjeePVqLqWdJs_9WpUAzIw zP9cjtwL5Hj&LlaTzgcs=nM+pxN9*qtX`WvTL;LL%=9sRj3(%SEDZN#_=D|{*Q@rV^ zTAbe!D)oLR9%){?I5+Z&vZOd2vB@A6lL)+COivsZfztn!8bB<--hjJJTRdMcX6hdGmv#wL@wyEx!_F zd*I=|f19&Z*c{*As9bf%>G0WoY-Kt35?P!Re_s<)_{gFb@SMT0wdmZrMDOZZ8nSEZ zIn7OG3vB7VUA$hoyxF3o$JU|0@$iAfFfpdgM&B--Q(=?3H#c)8sq3*Y$vx1}Vc}!1 z4U*G}y%cRsn42odEH#i z;AgA0)qg9Uwt(MgLSw0hwaB)c%Nz%|5g@1UVHtiR?^3c35|W-kp*kEhxpH2wMe$3;op2m-nY!p=KKtvzL}ex?0=OzGbJ2J92onOTKB-6>=J=&0utRab#&CQl;`EO;Kp zeZI0^ZHnyYQrC9BWgNwEvyIGa?tffRu>JC@##nc;n{y>zEtzWJerL+&sR>a#k|ugd zX7EQe-*Rc1`$563C@4SAbP`YI?(i9#<_JkQ>{r}keDBo5nCIp5X6!#98Wj1n&}f%r ztVZ$0Mep|p`4$^(TYWL>Zt#!PM<#2FCcC%4JXEyV@|#1i;@s3j?+<-G(U`f-SO>X*fHSv=hW$%fVRbRN%>%Qqp)%-=r&GHoWyUzU+X4`(OAo!5*@sE=Z z2>WzT@hd@(X3ZB=cEoT3xS~r}n7qj#D=Nud_%#&OY=)*q&SVHn%=jJE~Rvd>3VKuDG%& zG{rH`X;RQ)UcFq=yftrbGGCC(4L&97FSFH(HRHwmTUn28t4xiOeL8L5ftYg^TdzfJ zu!_9<>h_fO#}aopRNUF1!QXauQTCR_$$?S|;+rmn@%5Rpw|I1`33@8Gbj{Cy;`p#O zKQBzdy5hFdyJNkNraC>{Z2Py!{KG1)@YKu&qIsRITOVsq>&%(&tYYl^Gfiij=cR2o zSYJ0Tb>wk-)DyJzWhJ`~&!$!XlZ5|X6FqT7=3+>HcUgU)o6P6r)1E87zfE4~Yu&o@ z`Ng!jH9wavm=Tn-&oxA3=Jl}L%aOfoV$Yb@EU#X?{Ppk2tS5GJTS&+`8lBX<-_6gU zuNf2Y=%_)f`wLgYR`*v={aWNd$rwBq_kE(gOi{r0B3l-kl+zAx5)R{O9`zv%t@IW~*Gm;5<$>fX$@T-P{* zlP%vL>{)7jwd`wE-rtWOcPwHKnR&bTuDH9E*!I+rU3r|LQ*H=3*H7CdTz6^5EQ^Px z&sbdVx+qm~u1xgSyJeJgWpiK78V0wymz2t{blhoAERIe%5}SKeVEQ#bb)AieT~wJ2 zQ~N!)G|reA@AGB*W7BstSyK$wZn}5YLLiTYHzM06p-EQzV}yC=h5JEwXNlHF=JS}W z;*`xV^&+13s)}L2geaYf$EdSvUdtmC(7mlv^uLP#QKIQS^Sz`36y574- z7Rlyq;F=V??p3*fRMnz=jAzsy%*dM(#CTcnOqKSZ#giD#yS{0&dA{+8DSUoRYr&$3 z@I7{X4Qui?TN}-=yt^!C?!*}3l&y^pcE^ux?~j>kJ>fXx`GsY{>_t2WoFBTKIr?zp zWX50my5=rRo&_<#S(?y1XTs#rKLyL2-f7%B{j)aV?~>IntAyRo2C7_U0X>&GbqmVaYAzD3?P_^uRK`0n)Q%en79E2^GW=MX>s^`NzsPD)r>3Xe;Bb4#o6 zZ|Qmaq^CaEQn&u&?${W)zTI&L zck+WxBJ#Tiwb{pJ@hfSbC$2f*AF?X%)ZTvd%Z%5>)ekI{lc+RuWUBVGM!fw^op6u zV#=z@rSl%Wd_H4S*thetS5hBbT4b%cP3O?ubpM#3e!j-T^35tww%R2bDaN)`o#k8~ zd)m?Oj^c)SqSaHjF+heDiMxGx>4|x7Vs}3BNxIhL zd82F5THnM;?3ZqBp1g5#so299ol}z~wa>0ud$4m(hwg6oYajb#a+g&G>%|)#Njq@o z+lO`48izhwz1yO3#M|skR!EG|AEv1IUDen4w&-0uBA=Z1~+SD-TLl)QJy0q zbTRa3IbVVP4#nVuQU5O47C*nUUd7n4Yr)ETh*fBm^c1@CXPT|F3xOZ*fB9<9z@7m#qXn9&s92|8{=#oWJ8`w5d0z zG3T0`I>q}zYa;@#MBF&t`!=bW>sEQi@q>QbZ2#LPR4o7XQp#otF;9>wq8$%aLT zFDJMi*8aBmO#B@8nSpZWtHZ7CEx7#QpLOzs562$txv(Wwd4uqxM#oxZ&TT#~A0N~C z{`Hx9R^^n!pfr~?ykA?t3F>%v&E}j{yfGri)7sivhx*lG;Jy3w(?+ZsxN5r)sg?@i+r?qVG5idX9q|fPix<*gY zWSeKANcZWLHX3R3qLqDFUiS$79B~m=Kw#P7^2Xlsj44*cnbEKfn*SBHgAJ6q4Cg$b6*nQD8r&ChFtj=KFg&! zS|w}j6g$MNl#%q7jrGogH-;ByU!D8JsHwYgci`&2eT!yy1UHnj{M}=aHH9tov54{s zg`F-d@69uk{-MfR_UT+M$D=jB_~%I6w7VVJv*0(E1W#{>;bad@AEq5%m&Eq)%xGm_FlEP~miZx9aen@p zoGC{WYd*KT{WI`RJf_A|6tZlIZFSb8eVRhAviKgIS>sa}zc}@yt?^`qxsNPWWLQr> z+mcw)vP8T-Suj26jI&I4>AKafRy@8NcB{P#6#s9Xze?pf>+8eIe-}()J#%)0zpKE_ z1;T7W#!U*>Rt4~`lq^zt*SvF!kKpB)D^ko!Wit+($QIeA<|Z`piA<)%%2_C+4M`pr|_#rM~TqQ(C0d6ss| zcU!KxEc13xl#9rb_^?nPY5rGY`+MG1EZdnDYcxxBU2;O|_N<&tL;qODnNj6uY?vF5 za~b&DVZI!=+pn47My}lgUZaH{zW&aiH;ZFaZNX;+@%78Xp7O7&n0LTxS=-Xp)k_wq z??_+vP)B_CMhCthK~@u{#vNY&HDH?^5w<@ z)0ESWDOvppcMRFK*N)rf@5k+m`{yKR*Swo{z0TrmddK~_7ps(OCLI=**{N|6k)7mw})*f9P3Tho{+X({{uecKkiMKr)Q!_~Dt`wL-!)7YWEr zHP<+}N+(U{uL{oGGn5k_Nyy9 zbUqzlnIBTGA3IUOxSY%AajV?@y?J7Be3{N(g&QhD4`2PpzHa(${lG_m=kzZ6Teg{- zh2zDa$~kLhYFunC^tB0k{wDFr`)|Gx5#ifjESDXmsLPkar=^nzzPUHz%$r>|uPeWaF$aNJn3JAdcvAEJk<{&K$j$$7Q!?=#laGpaW7e=wL$UV3h7T$OJys5XS7FQnYP`!ER6u;wg(Y8^Vx*t zZhVe55u5nO)@V@@$1)oY-PKQ(MAeGhJr3nZ*Pd{hbKcN}&!BauwSo7I?K@h3S^EqiWjp9iIiiEWP(l z#Xdgsuk9k+FB3i)#a%z-{-Mo+Kk`JkfW4pj?{)UyrW|OyQN{0m=!90XhK|sz|F`$w zi?H%{KM+-~s_T2i!QssRyV9@azh7!?+dch~z@z0^mujaOs@a#Y*vz#%QtYFn6ycJs zqR6)G!cl%^Ci}~iMYk+rpW`LqRDASigIecGwwYhpX5M7$+__}gU#Xd~W`~$&ZmpK? zKcxOXr?@!d^_G+C)P*v7bCW*ncTT_Z>{r#Z{r0a;ciY>yeQxv%W-4Rbn0sc`?$uUH z66DXOKe^j_C;Qg*s~?`-KTs_g`BCh1q`l3N&b>FpEjt*nZ+ zD!o;^^5N7|k=PTR0-fKibk#)sb<;Mznev>c?979&56?=biYo42>-NgyZ(RQQ9?1h& znl?K*NN1Kiu|1urc=X=A@-s0@G#)5E*lRf1}6v%k7rC0481baC0QqdZ^sFyB6rVI$?( zG-<}Ql&-}e-h`>FeQ`WgJ z!GoLfUrc#;hJBXKil);0>qJ&6{G1cXaU$YbVzh#)X5kUdwRH?`f3;Q|5MBA`>#Q}m zMO@#^sb5hgX|J@h&-CNXXg{-=-iKbPH>b3uuFukv3O1`dY{arK-LGu%wk7F?XQd^K ztrD`KVuf|~Wajwd$Qs2|h+fmi0iRGwy#^+gdyZ__E1G6F> z1b*F^|9@vrihO%g)(7r{vYQ=q8Z_?S-xML~|7|66n&kbei9dg3-$>#2wr}c`Zqt8v z%j?M*op&lKcUGS~%%roKb@PoT=S;sD?9Y#d@y_X~3b_360Na7Z5gwHWJRH)xx#2vK zz1-3jdj+p49<*Y#G7Wn!6u_AIW$8D*K*g@BO?yq;u1!_>?0f!i)6JvqZOxgY>t1qa zZ}2a>9k~B>`bwc@j z%r^OK^j)F<<`s`yI#YKonz(zFLIzvy2jx7693A(tw3G)s%2&H3o25?t%(`cF*`@G3 zz87Y`KiK*0Tlp#%_NE!HIfK@#@CYd%y_Gxpr4F~-Tv5^4x~D{zByM~(!L56n!Tb^q zuga4ipT11>++w(yEq1o)%*3wTX0yM3+Qsj#CrQ{a&6io_u{G>kE3N%xPvHv9qPxmpF7|IqS#V%iwlu5h z!()a%w-zKE=JYr&zHZtbWGUBHK8_B zK>1vjzK+(SnV&4pR-U{yLqT|gzS7Q@*ZkP)Z>qXZP4)_NVkyU5;-$>ZV`fyXh=&DmmlEPO>*T$H+#vB*8QxOR3yNXCU_(~mwn z<-+W-nRi>@#7v8l_tFvG*~=uZUR!P$=NZXiBvi21Z^_JAmnP*sl{&udO=9+n6R~D03j}Hsx1O~YFM0iM-DP<*zQkLzpDHP* z9&k%ab(t-6veNP8&xP{?YpwH4y(3t+m}Ya&}}m-w#Sn0Yv+ ztucnxs-^wRw2cbyvh98+d=%e$aQkF~-8zPsN)^9tl-YCQ6Vv8`z%Ly(QbC$Qq6UBJ z^1q9f{INNeC_LlCu9+SauSvVeeBr3Ml8|`TMSXwB<}!VmqC~Id`r9AyUa(ntk0Dj# zxbex#dF(vind;%*Zc&RHP2Mo@w97h4q-E~hEf?0vsi#~s`Kg5ds&<3$q^due|L2~b zb@1F5hc{{*W!o9wy;`~Th`{-MUrqlU?)hFUdGSF<#EgwhR|0N5XL|7>mz80K)}*6z zIJjOvsNrNulQ7G5x@e+mbx%Mpp;YCqyZ)w$6Kac=ocLwT9mUa-ACuR3Mp&{g(EazS zFm;2+>`rPXifLufEM}?bhn(U(JFQ*n;O$z=t}siS{`N=CL_Y1CF?W{fjO7%N|oSl1(t@Ll`+RmE2{>#;Z>ZM<*6QX}FI(*`S z)S2hH(`C;@U5>sLyJGfRwX2Td#fp_TkJ>mnM78d{yZy%B)vIj_4hC18T6(=tu;B5I z>9!KAy*HCfS?jLY$OoQVt9)g3;3Vgg1HbCTJ?l-|nzz5Z>sl0To_t%;WbWqo0?xY+ z-eLIZ?Qp7YORs3tbHiu9z1_^F)^p1#~wWaebKe~J`Wn=%a+-Fwyg7kT;{7L&J^8OCfyYewNQu$?e_2Eq$T|a&1 zC^g@>Ca=)vaP~vj6_V$xzOvqtWmcS>vG4dVFl3( zLZ??}#y_mtn7%lEW7y*}Icnmsmu)GZ&9*7Lf;;=;*C>yQ468+=H&$|T9h=+t&S~}A zu<463Gym;*7x#0qXuZarDIfFpPMPlg-2D9RPxNbuBXu8{r!sXm30gDsc${c*eX+9 zux8Jh*;_BT8lMtumTkJ4WpHbM=?vo;&pV6fEPeQG`bhDwV@ldz z|I?l8vOexAI8(Ie-Vv{fJM8|eM}Ko$BDL!0j!P9QefBo+x*q-A*0N;J(w(_7qS75% zdVf<3yOa;ep4+wi_vzDtJ$DwfYm4iyPvQCCGkZp?Yt5z0+B<6ZT5+|?P2IEe5R2k9 zp6~>zokDrtllQZw6@Sf+LanSeAg#}BbHoHZfsQJ;|R^gDvSiC|w zb<)J94-%ZY!d=#dYm4;4f7DJZ5fTb~$|0IR$3@DA+xpQA*W+F?^GgJ8J=u23DQt7i zSs9T7?|5$HzM5RHck_XbpPaWT{a(cSOZwrPx$z%*?aGq2e?0MQ!c{|mjU8|N-f1SX z@h{#lA)aq`Y(ZkllW%92)V28^)i_lADn-arb=nF``JFQt?OU?9T4?UWDGqna&Xi`_ zvT}3Teq_pIT{uDaq)2zu{z%62H43G^B2l_76-zhY@|pWVa`DUPJ6+Qak6g3pPS{bH zP{>j56XE!Nhec3l;Y-7(6)bU$9b5ROGKv^)%>2w=R)gyz8SR%cZi97mv&|ma1Qpo8EA2@9#&2HymEE?Y;PA$FUcRN_VHst$KIm zLHO?nE^FWN6u(+k;q1C{S?IFbwD0#P9+efVsWU6_tg?SFRayLmQN-!z<*K@IPk)`b zdh=7d=dVe}ChXf$oEY8dSN#9iJFN?g4^GWCl?Zi+U;pJ;k&}6P`O4krFKrh%`1zLi z>F-7pnLfO~a=5Xn>eT61uanQ1u-v)uZds2;kM9xWcDzQ6OVd|oE|m>uEvGkYTZ zSmu|UXv^dr_sy&A)?HX^u*hJ6!N$XPk`7Kx`FWQ*KV>3;%tQHaX)>r>bg~RaNz)@3rlBmOVDE zwUg}R*E0Z(>{}b(b@<~5w*S|5?qL`7tXU~`zf5P#I6Nj{5K8pwN?IB_iSx3TZ_LE#KMoV$a<}z{$1r%bn7c0Qc|Ga&o?ACrju+HA`jxSq zn6Abc0wkrESM*HPAp&ANn45KoN7KLx$6(;UB1G8U~2N??ioUA4}DtPcd773*~Lr| z_;nD_~p#BbH-yu0UFyf9z&OX89Hu1g{N9=|VbHTvk86CBDKy6$PiN?zk{qDhh0 zt9&Azf3j`e(d_5Ud@wQBnCs%_o@;1rH-<9IhFe9oxHs60OzPc$QKeRH?aI(m2)zCL0Cmd>Pk}uxW zSzK)YMV52Q?~N7@%MJHLN^4Fqs4R}J7O$RuXNtJo3CF#kpLgERNDsUsQE)4%drMOH z{oDxWY3*v=o?gkfRx4yYVX}5>&8g@N>G`rsVCxG7@ppGWasDp}6!FSCb>=ABq-ir( z=x|>)l(GDtysFRY^JEsw_4l0$7X5e|zA|Rj*371t^5nQ0xTaC~L3uF|H8H;(OE(j3d?Kg~|@Z;w6F%>21p zy=}tr>2-YmHR4&Dqr9~OFJH?Qxl^=8XXWawDN>L3rZ8_c&+GU2xINA6*QaMqnSp*A zbc>~}{+y9h)StgnpE0a}=g`$7dHu)SV&dDp-hHyFpXj+|=f9;Q+Cr0`O7a}^)VLz; zeOouWbH&~@iQ3;=cfI*C>C&B|2MRyJ9xLz)Y`eLwRAAYPyQ1p)0t+9$lX05irB%h$ zEh_t`G34xvub-Blcyz1Ur`1AzYu}Ojw{1eJ_yxL?lhFqg-cfn`u0OAt7q76a+3D6f+9G{MbzBeQ4!&PB z@!-Ap4BID0h|Ne?;}rC7+RYd{4;!&hx>JtXuhI!}7AesECi}?e!A7R+7q4!4oVd&V zRP?dV1;071&)=zWUiz;8hpF2lPPqKYs(GR6M(hVy{ZaKPKWv@Xed2a|#~!KL|7k6e zXI5^rF%{i-PIFQIkv7-nt+O6UZ&L}seX;hi%tpVRKPP_c+-91~$DQBz`2UI6_8q5Z zbB5|O$S&~Ne_VFs>S+gf^P<;SZMx{$Ek2pj{EB7061Og!n7C9b{lL!kx)$@bUpiWe-g{}a-emqx zzVI7bR;y?1iqF35?fG)s@s+Is&QDFBsX|1r9Bo>9qR**zKe z_E{`4UaOI0wye1G#GHUHC*FAcJ(bweeNs}!`_vakYg_e2yX5$qHmon(uq|b0^_B)n zQ*VVEzgp@xJ+Y`|^Orfk@z*DZzJ&5S&u-nX@;kHE!((xG#V<$e*ZH44jI?%aIJGye z-_#{sU6)abA>-3A5r)j0M>>zKnLDRrvfsu<@A+eQ-Ix*+|48P@vWs87^zAu(R(x6K zCbz3Ki@tkzYCAl?nS1Wwo#$(hOT4j6*tsrXS$N9JgZKRcxY!!if*gfnR|Q0_G6`F7 zSbwjgCd=#&{|Tz4xs&$$|B>C2=Y2rBV#}vZ0;`wXrwA>T{IxV)){a%(xv-~oTXnkN z&I5_3Cp=Lc>5XU9l6+a7OydFil5^%KO%Nf zL=g`|^wAHS#O9V5@uqG|XlFdQuE8|xPHEKjS$$g!zpUBouNqddP@+$=M{ki3yYVXx zfZTusTTW;=8C_4{bvf3#S&ZodD8`x-ejV&mTD^{p?zwD86nYtA!gX8bIi zp)3(<^=8ZTm!TieN|&h=4iG#s^PKvsxb*=1}w|3TPmc_DDCr_VQz0Ia@ zRf15&J{!h`%^bYX*5Ci3tn$oQJowH8l|l~Vq(FzDO!2^HE}g9F+J33As=_oxjiaUeJ<~8;?HOae3EI0ipH% ziyccfr=7X7b@IF~mPYowyd}6^8XSb*^WYw|z!pOi_r{&=>1{WL$ZYR#1f>-xTU?B-Ov;;@t<;LSn@ zhQ(hN*cM+gKhTw*lMrDn+wwftcaDM3s<(5#um1FfIpqE~PIfC^*~~|0e`#7eTd3<4 zpT4j~UvWoK`-Q>{TOP{K^^ksA|H@@j;CvSKs8pLiJ_|2ir}D77;a*p|Kh>ojZEJL1 z$DQ>|KS(3$5{ulN3mS2uo8}#lHQyO*$8UCP*(#R(2i@M+`!RgGG<%vPx9X+$|IS?X zm|o=6@=@)?SLI%D3Ffo^mhCj{=-!&LO(9jXL}IG6>>F*L?;SiZ#CF*=zdF0}Pp;U~ z>Boa)YP|1kpQwL)#|Onz7ZfkD+rQB{ZvWw9pU>mww@)LKXX|^#?LA$$|817(+MCMn zCbVui`aYm<&F^f<*$ZCoau>2X!7yuA%!>Yqb;llCd)cMm5PiBLfQ#)SpP#=$_uDnR z78##5c^uTwy1?g{q?hq=&!>2^Tha?Y>NaftCbmfOk>o4MPm;fG>=1LRUK%^~LjJ<2 zde*I~LTdNxS3eE-H8WW0->D^H2maafr2G6&-{;n2$L_7UUrDgoB~)fjy@czk_J4^Y zH!}hh>*oHSrTHv7Xp5~V*Phs8;gua5)SaA!mXz9Gc~@q0W`+H!Z+|~EUUc5l^6>e` z9oMZNu9JJqd}8yhbq@1i_BkB4Ki$2KpZheA=ZPa9797jVK4y_Jf9{RHJS}%SGIFlj zb-5}pz5a2-g$<&vKDHm9Jr-R(;d@9+&(s`|*}g*QXL~%qx13>in31>nqOE^F)`S1-YVCwZQ7cG zU-ukV?J|#>T{r#W5tWO}9RB4fHq<>{V{wLyqawBI|NT?PT(;d`{LE_Z(x#{nJ4Dy1 z>aVER{V~touubC6kCuZK4EvM*dZ*v5*O0#WPeWSw>gPk>A98d1I-ORNSX=O+G-lD_ zt-jOG*0UXqePhh+UU;?N`W|m*;K_x<}8&8?d3vM=ked)UYuWM0e%sE!S zl7ck1R3%uS>sWL-@kgn(#=dt;G)`Z>bH+<`VhMMR-L9}n;TKPq|BI0RyeV~$i9!7C ze-YAC6I%4-vVwwBOdRLmao3!<_14x2zPInH{6BLpBGyB;hr|8X@~wp|%Ufzy|H(1G zeQv*|w<0c>`M$aD)tx_f`zHIeCf;}{o?ZCk-0zSrvflFFgrlFQ+!t-0^vrk0>O*rb zUDaD~F8qs-fOEG=M}EU zOkQ4kUU%DoKU^wR@X!L0pZUu;L}-S_c2!Lv{ol5b7m0h5B^EWLAWg$TZk8^u23a`2B2!=7RF(>WfSq;5MADb0T5#Q!sAI>dR-ta8Xw6a8as%&aY|ZM%4zw^4)P(wK&u znF{YXqy)-LCv7uVvYf-o_G`v3mRT$By#H$)5azxkdCrfbxfavbvds;e%vZGVm0yU) zhRj!MCY;=RGm1~MGwH0wn(Qe%#Lh06^V`lG*MLO7<&f%$t_j@iDKuZPAb8T1xYz=T(2LPI_F(l(ce*r02{P9CzdAhqkFK zsXl*4Y4H=WCHZBag)Uz#>txkAl)L8OoC@az`}V>~Z96wx&K1nDY%$bcetUxE*A|zA z@NX;cnZ-?c{dCV=599c@lbNRkiz{CFIAl7ncfIZDo)b5ze_piXKhALXa_{CFil2Sm z92WM4PMP>(?cpU0{>hw~acb|O@a!;!3mIvt+c?~u)}55+F4UZTQ!?W5vYe)en~Hzl zbgRyDIKiHHm7#tWM_c=1PhH(_9oEs)>awTKi*N9IlPzd<<2GZ<<=c6?rYsgSe5dz% zo=1`Izll#0o-?jj&hmM_L*CJ2jVAl&{w))icAb1(`>o~JGrqG|y}!xCWvw;;B%lyJ zHA`>V)KGV>?7pkt`7<9EoLJaZJyqr51X<~O!Agy4i96NL+j%pH{|%D0J)pN?pU;9f z$D(^Kws6d|5t2Ig@$^RSU46$|U0Ks)m%1D@d3DlQl__@acGV|G)Q;-TJ9m7w&qdwZ z=OsR^8Yi}@ux;aVJ@I{G%Ik;brGJE;S5%#9Fpj8v_Ovm&u8DWitDj$!MNGqHPgoRf zl=$XYsDy^mZ{IMH?MsvHTM5?xsEb*roqg~3me`}dbNIVus#eaAy5%f$B+6~7m+92s zHa;5j^UYNYP46nbcU&{~fQI9Zi4J*N?s4V>I`(eSsGivWbECLM)Y2)!(`RHJc$}K^ z#Hxn3{M)-%m%p6P+40FM)$zmcoqub~+WC{}n)%}YFVQ{5ek0s)&%Tq)_v3U=6#sQ@ z_4bgSmmW~|O{ZD9Ozl|qzEgg-_aihDP6dkWe&E0Kz|#*I)*EtcJHCVj%w4DUuVC@j zoO3(2+O78Ykp350A-wuYQ}6u*)1mOqX!)DU{}e{HQ? z^6dJXnSLSv?UKhxOXbX|N}xcBeQ z?sq~r^_(ldNt7Qfiz{aokl0;p&tLSQ$>Q_<{=ICWpZyuGPs?O~zg4gJq@_Mfwbzn} z**Djkp4(qxtkqP#@Ayj5Jzqk2B>U=>cX9~2FOhOIcQm$i*}q`^<>tte$i7SK?pA(0 zZ~JwPb>V8~E&5`dU+;aLc9tW1FPD6qh@Aan%Q;U%P5A4M8_6l3wPm@tg=6WCU8e(e z?do1Cv`?9}UpUA6g5Qa>KGPum)R*3lGq0$t-v}4)tDdZDll3Ji#%OYov-pD}|6bG? zvfZh%-SpDfGu`E-0K=6p&rb&Ig& zeXg5m;J#2eop1SD-l(%?XY-z1PLS@BFstPHzWjuw^82M*kL|BnqHX-~*ohg}cXa>y zTXwL)DYi&#o&BC{XTEQ{U%C76NsBg?mI$u@sZ-#2B+tS4q5A%j6eRf!M&|uY@2W&a&(>wg^ z&1UsFW}JU|srdP_1;+f2t?%BmTh5&sng8t8JqfOPlUcK0JbS(9OCH}n_Q1*T>-pTvUqjD#q{#=BJkVx|*l8n0n;fIHq@?F;-8q}S`Af9)KK64y{WnE+f7*()g%<)#rbc^7biGme zvbFqG)qitCW}%Mj2Oh4kxY*CYa^!oxa@wEc5p#{hQv|2zOCH@Os3MeDo@LyTSrC-Z z^fd6D)6Xp`o~NC*Gzw0(*fsU@LEf1$OdR`O_upH-y}j{8@Q24Y{yebTm=SM(zeDle z7q_UN?+>;7NcrkNdu?#^yFoa!gL%Hnr=HJ0IMa_}ua|Y+7Z~8wIDMJ6}4onze^Tnrv)y z=KuJeUH3Il<4lu)lgrj7e`Neyc)?@JcF&irT1-2fzDwM^EyVaz|F`Yqo}Ft0me0s& zz2F%n_fdZS_L2tqZ!VAC)%#ygeD{<0sL`b(73)v`{C4{B0w(R0kod>P4`2U&XWPrx z-EzrWPpTE1ovLHawYz=$b+gL+RKJ!Fp1LlZy}Y;nk-O4GmyVj_J!SS&HvZGU?86&2m^0qH#q%JL}boFY9?vED7MX4103<^7I|uramdl zC#`+x`g&_>%Cn5yr}MYns$h9BMd00p8P5bi@Lb`SS)3B!c5B7jM;qNso_ly&+~(7~ zqMkLavAkaPfTB$ERzHVFMve0l&+C1C8nH;SJGghpCO6J_=QlwQd6O95R9(EZOtF|# zyC-|J3ZJE`Pbu7Z-IiE3Z|uFIOj_J_-4+yqiS?hj>;jLAIoKriP` zz`3o*CTtb%e7=&WmgR z;&&f+%Js!LcPXm#%g-r#dzmrdq}|61--oTjIbS4t7XCPT>vWrC6VK$`FQ@O`%;*zY zwx`l-U!9}pt0UsKmdh_Jk2lqyVAS4t^IgyGUk8r{@8q61_4HSpv`AHzO~LzP+1oi+ zJnCB!DaG$x=8=`ec=f@r$efH#Z=!f+1!ej^Tlc2Fcs0M^!X+PC=W&Q0<=Fgy?bNbc zvz*uPDXV<)W!bQA;~fr(dC5;U7v&tjoGGoc(R$yNhzari$=XXoy@#MQn;ZP7&5?=ES_pDeRw=(N0ja>tzAu>#AUY%ra;*TD6lVc_Pu zZ0gfmJ>@g_)4Fy>Z8frf{_2WNP4IT()73W~Et;4gIdLyr)LOq%i=e!K1JBZucdlxf z<-Nl$G+B6QRE6@Yjv|*ea$Ip5VZPCZC2X4y@`Z3VBy%JmzmsZLQuJmimtmCdcl-MV zSIi89-b8v^+;07NduG(hDr;lu49`0=W-TZ*9_c?midxg9W2Nr;Y38;3 zce#0^^rX;||8CKtSC&i_oVS;~ch+9zr-dN}f2`f7c(dKMa<7&-WPG&5eqQ792OiIi zPFnTOi=XMce6rIO&z?UQ($+aj$JOtP{NicrnZ-N7=jpp3VWyC8k3WkjKI1yCd?Wf< z`j0}hd4;DY39D>9uiUZfNB{QEc`QcNo)>pNj!2prC93-I-%-h*>Nz@r&NHJTRE;Za z?ijq@a_?xhhOGNe(jz#)lA{~+vS)4&2{_u;ou})#V^t8{Iw>ws`1H+PTcZ$ zwu8w!)3}u756*?pxTEi-e{HY)9{DS7^P@5!T=!9aFjtBr+IZiGZ%(J`u1oxz`)OX! z%|(Zr6?^T~^fxxjW(%ZAFc&@-jVk)_Ix76y9(2X+_|&fs+1tK-^v%(J{`u|7Z0~>KtnUnB>i9DM zg@5{;(x)?5rc$TNmh0KI<)z0x-=8$Rrz~~-Gj3VMfcB_U!6%`+8zeq}KLFwI8c>-nSfX+q=W( z>RBs+ya{1z`4(P}Qf*p&p?FS>#{S7)Kfc=b#AhzKcqYntUxe zdv(r~?HkwgRA!!*I}*nFq+!aoy~)!G{3itS=W6^gpZdG2deSvd*=09Y&1Qc-Hz_7o z_m*_-zB6ib-)FS?Eo@p^w!|}T`lKlB8!me+k1XcdB`TNb_c;H?no`xqa6V@f1_kGW z$IWKm7be~~>?O;+nZxOOb#{#2!llw2>r8sC9{>2UxWT1+nd!y{R~zal%(K#F4BWq7 zZbwnrNu2;;Sc2nX0?s|E3HFzKJrQ4|#MR+p&M9Y~3EB^*4)xhuY|5xo}_o<3PY;_Z%| z^-;?k-8>_C!>4Noo-MR#XE<(Ha^pvloXHF8gqZnaQ`H|RY<$xGz-^a(jQ&s8DdwM# z-TZa&Z|(c5DSuAPUH)_J39cle;6kG~Q45J~vE=-0;)MQ*O^EX_?7gKW47G^HYOOHg3vYv3v>6*}m1m^CoAf9}?K${#;_M^e4{9 zHibO`-9jvFx3;J{ium5Yd|lei&+6|1_Zc>wd!G8)ALKlL<{p=sm*1LIsgp~rz2Cko zcwY2Qr2Mp*=(Kk^!Hh9~`pk~c=G0#u^7&zKWQ^X=xy;Jv%y=anm73WM*u2k7u<`r! z?qk;H)enBfivQ|=xjlIMgFBPOa}Ot)z5IE80l!b5Ykl~!s}3$dXI=SmHuASm<0Gyp zE6K{!Nz2YakNbvSoLVJA{=6(SUcG&#*5-6CX0?ra zYGJqb?&h3uKVa`q&iT3vuXBnNMW{%KgxS81vfnMI`&8n(eQ35-%CTi_l~waD{y4Mi z?s|>fzF89cc-GHlU!ZkxU+R~XVwdvx;dH-_G#IFs1kNqt>+ZJ}GMme$n zZC23pzYDKk;_IJuUfOM6J)b(SaJKkf-o0IV`?Stp4{==ZqEyh#6F}Y0n#(dJ>nolk9Xk8g%6rGW*%i?KYeZ2bk z{m1k6d{nA3OSybTQ>@q1V2(#fN3zZj{we{-{|xdojspW`O6 z>dM5whMUSxCo2E!Sh}0*)3XDjlAYpjw9+2_WaKYcb9XP#da-m1K7;BPM}A+f<+=V@ zm~m5PWBT8zCCguYePC^nG7dg}7Osp$^S7N7dKMQ8qnI?m4$ z{JYmTZdbyl9= zF+Z7k`YW^2!>85NYYT06T%BJabXIZKmf3SJiLbxc$I|;{lNEc9{(GH2FZ)YlY){m-U!1(x?Ri<+?{y5peWqKQ&T3_Pr0r5VQhUs??RMa*!}9l(BO4aZ zN?-C^b(5&!3+cF$jO{spC*OUp)2QQo?5p0}wD#vxKU9D3JG87~s&nkS?5q&qpICwlD!zT6fpJk$s-wYlCy6VMk~S2?*NX36v0`oRPJR1| z`B8Zs*C&6x*_&ab|FW&&LYxkx)bnz40oy}g?^d2zA~>79{N01kX6u$rU8b~9xoG*T zA8k)=KQ>h~J;VQ)kMYwgme%|B2F!P49xna9f}#KNPjk=aH4}eL?3l#2cOF z_y_-`jJ))BZcqH@wQb44|KY7Y|K~{mt3Tu*lARP7RK1*aj*(i=4ZEZ6_iMKlrTjU+^I@B#b^5^%;lXjwI(4I7 zl!ghAe_X}8I*V%x$C%!KI{)tq)82@zpJqn7=eWZ}rupu@w`BV&nLbvj zXX|U0E{*sx)AFaGR#8BQTSa)f{cD)WChmPn~H+CJ9XJLwU|9oN*)8e<1+7%+p_wwAn>ZiM-Ol0K@ zDcP;pT=-VbD>%3$*upEO`-i?k%XfYr!*p4*Kl~DtW`1CA>(TJB`orAz<6om<)~5dr ziid^g_OF@XoyO~N>Pvk>$7gwoqA&guMYlhntX#hR>wAMEyVZW*Pv|&%`ObZVC;#>z z63Ag(%G)e<*51J76+h3+eaEhDyc4BZ(D7fo?ZCfAMbZBaimCfV@2aS?G?g9?d*;=^ zRHWN@X2O@1Q_S{rZD$qcDPz{w|FvpztXmyN_HTh;Rf9b}p?#eXcl+#2+Uh-LNeKgV_+E5nNaHuC!XC}cK&>8vD9np zEz{3Sp8nyf*LXvC!(Cl9*B#t8$AU6X>olzIy`vcOR>I}RtLV2b2Up1I&)Z(q$mSX9 zJ+F3}gkIIRT`Lo;|NmO`pUHVi!m}>%%(AbcEuKy~c~+0+D)k3?wfLmQ-Zg6KyHXjg z^iNI6EKV-4zT?E}2qnh}*`4*f%~T(Jj#*@V*S~koEyLEihBmTpQ>(jvxoz3X6!`Vd zxf-smdwaj;D;>%f<>|WfhhHgZkKYe|r9-pB4cF$B%054A+8Xw1#WcB}=7NR)*acq} z{dRWYxcRTSqv5}=i^qR8rFE=!Y{%m^WK2!=%eDWfrZn~SMbkSsZ#VyM?O5{uz4?Dd zrC;?O9QKFhl^%W8E`FoENV4=Hlj%@>_=NaJJXihq?tya|>% z9*Uv6sw~6r+Yg7B zI2k-4u5IzZ+}=%nM}u5Vj?M78c5$|{(iY)DcHeP(|bVVr)tx_M#)=Zum4z1 zOMK1s){0>zuUFK;ZI zyegq+*3)izyNu2~Rqgp79)xQ#WNhA_Gt(qywM^dq`EI`gjy~AM{G{#vHeQGAv1`>H zDth z&s-k(Y}t9qDK#n?O5Np)gwHnql$yPL|H=7(I(J`UYZymJ=e_CyYQiJ z{q5h&O}(tHE<949aBX*(MbxCnFDmzKJ`f`_b#?y2XQ_++PEL28yu2aA};mZ%-|d?E7KACUC;OcgOzy z&+2vhx7@U={fG0bxAtoTcOEvpvoc)hVUW~JrYEmOD;~UyZ&A~^bj10xUW&2S<3fIU zJ~rKx^MhwC+SAT+wdJBCN5757%%w|LFEq0fy?*NQ5qs~8N(*()74#qB`eV4K(RicS zz7tdTKl*CBA@BKDzLoN~*M-ivT^G8l^v040^HzLxTeCEv{l?mCU6sc-PZYMv{VF+` zc0}^s%l#X#a0tr=e>ZX0-E_O1|I|!1tb1{x=HEuQ&VS@B`&&q(P8(We-BG-75pQAO=C&7{WXo#6KbtbJ+Qx~Vc{|D z@XG^+r}wW7-0)vEdy3*4)8F%>3SQSo>Yn&Dzm}!`N}ydokMErNtb={^D;5WR%gA(8 zJ^YwM%OYZdg4bse>7OsM=jA>yU-eI>a&eW%zVJu+L3d`gyUWP_($QS~Ki%-eSzmio zJ4?HZf4>&Cf12$sdinV4vifD;JCs&EPI*%hw(qVloA%RVp`7*_4XZKuK4eqDpF537fzjuq$t6$SkPi7OhT&f$f@8Z77wu^$M zmyR=YtPGvuJ$2iz+gU#RbsKjp-%$Rk^+D-LR>IG!st7sPm0x&+ZK`YP@{YWJ!f@^8 z>dS#EmaMKYP3&0hDxLp9N+>|$R;Ezol-ubu9`5YDx!a6s-W%(M#`Eh1jaHleOt$y$ zey}n5*Or}{7i`!0$Zvfdu8{31VF7Y~8%egjIC%lEspttCuK>W_kwuYqz^`aUw=_HPWju{eS1p&JyJBwC|qA^xno+x`dhw}KdG&kJ0Eh_cUjhn z)We&?H7~r{;BhTpD=IuHJ@5|iv1H$lwXuGedWr)y-{uR1p6tJ7-2I+)shj2VNJr6% zL;LtXPRv*1Y_m>||2I=tc)^|sA&z3bZcjz+>i&PGFTSt}@7}8X zT~g}pZ4FjO-I(`ZX0Xrgtymf!sNBg=`;os^q`kJ~#M)`+Pl+U!hfL0#{E_pJ`!SW* zYfj5-Z$G`IX@%}H(L)Z3!dDDS?fzYTs$cx};QfMJo!P~@mGxHwdqjIGziCxxHXo1w zFJ)A>b3&f;->DfV|LCt~z4>qJ*B3%Me2VO4k-?WP?aCMB@vII0?62z~(tSvFigdx5 zgY)L)nG~%|E^?hF-uk=meYoS?=3)nX}HcmH3BJ$gY| zuB7`%k5plHcl%1)9X7Y5dQ7V73-@XY_?latvzq05?%S8ZTNm;#uGu^-Npk7xu=9Jf ze0Sw+S>uxT{-(yMiz|!8zKYa|%$yV+UAbi5f2nU%JCuLOmF1Kw@nai4nrgeB#} z0*k;`MNW5ibQcP$MFsB(lzr>+sI+C;|IZ0AoUblz)tYi-epJD~hGW0@)<#Bu6RFEt zEB=n-L-Are#$v(i5u4VAF+DpSY%pt0tJ8|LkL9IS?w;8@pTAZsQEq=@>P6A%d@l0* z8HLZZ&Lo@6H4|0hN^TPV?aBD^=-cPtkAI$e%w@r!>v@_E6OTVuo^f&U^}^H#CwrtP zYM5=_SX9z=KX>NVpQR5b-f1$8{w2iQxBSDhTje_f-FG&{2l%|X%=!GqJ5}i?lINKM zJ-3ESvoG4Dgb(|8lJ7|OpdyK(#=*s9;aWi4;LD)YQCe1Hqd7FH;!;pX6Au8-8P&^heO_U(*lU&0d$3eyQ_T2+21a#%-8U zxuCGbFzoW`J*6x2JJj6IygpyCKD{_w>`tfgeLD@4IJGVN+nyS%+r*i7uzMHFzP5*w zGVz<MOy(ihsoQ=9a|S+t$Z zI@JW(!aCCWSAPDmdhK5g_q(+VN*AnJx%H{xlV~pquQw`Xuc|gKykhr1*FdK0pjG9e z_@6!uN&*wE{10Y)C9jz7;CooGn&EBm<;L`|83sKK0zwbj7dc#xb17aB_hJ3s+&2q% z?XT-&)GOF{B%)81cj8P7v5Z$gJ*X?`RPk&0#U6t}~ z1$$fZw>d9Q-Vs~={q@CZ=Z&B6|IlOJe*NpU+5DF)&S`yF;Ih+w6T2gO_|Y`Y$NT>3 z)UM?Y%KJ6Jn?u#wl;!x6Z{63sUKY$gRBPn_qI7xV>84-nUmRIr@HtZL`jWKkk*TF= z44DfST5T>+y&{mg^uyI>G3gtZzJJTX;>Iw2pHv?oPuRq`(?Z^^^E$0EHZ0wEc;{ca zGc9E$RTE>K?`(~pw%p9DP^imdP229hDI&qaVqyn_R&z*laVPJ;qkDDIma{E4CoorD zP+dCnWD(O-ExBhsFUn=}XT-RMWitM~{U=k*G}%^gO>LeJLu}agoaM9i-W+ILxzys# z@`Rj=1&USc#cHpKPATra(DUPC&c_y?H;LWM+>g$u-TOK7=b?l9ww64J`6!mOeDdbQ z0#BbdChl;596WpH-jf}#C(P{(&%5N^b7JC7r8zzi>>_;TswTQ!zTJ0NG-&C@$jb+w zY`hmUkuxa%AwxpLMrn(*_nwoEtZI*2S>CVIGc8tKcj&~cQ!W9NNNjp?|##ycvo+Z z+-9|9rQ3|^uPQpszJ9U!;G-bhf4}y=>8hGE`|->ba-#3_AAY*H-zZF2<@ba`dw2^a zSH1uJDceQe^7_s%o#(6EmhSN2*qwE31M3gpr+f5`3j+18sNLlcetSmrc)F;a(2_$} zMAA-fXq~n_c;Zp-!iLDGw!VtPrRwTDJ5>Mv*1Di{%GQ|m($dS1)2F^lo9}Ebr1?QU z`^wUf8!b7lPgNf%U0h>$Y^mi@1}Rg$6^bnpcJ2G^6dcw@tYUXcbrKe4{wuahrRUgr z)%ES!Q5z$Q4)7hD;B`gL{=wSHf3^GGnFb08_X@prwOqYQYV-BPLid@8`@IZ>yLy<4 zugz3nxI_5M%9}V@Py^(eQ!KiYOl-uLTPbLMas@o?+>zlX{}l@ z+3HBJ0*42ymrE?~Urk?u8Fwo7Zb|={d$M(%)Ze5X;^y|t>wl@+?~K~hr}f;D)tBj6 z>hvXsBCM>{4`;sI-6=hF+owl$`_;MpufDUn)>pdK-uP-t=$mHqkZGItu32!~U1n}b zzjZ>zuZSHdufLq`%e-d2Yk#BkjVUj9y{A3=xI0MhtZmMQj`_1nzASw;Nm+EdpXx`e zr`d}yF+W{>M@xGz2^r?_Wohr%5#?k0G4n~Ixyjs9Pc$;a*GmH|S?44wCjqA-9Zb=6|$GqLiy;-}vxl3=_+3#yOc3^YPcD4IF z1)b7AZhdY2qVfO4H;G_Dg-F;{p9zwnOuUH~n(`{`bo~ z%Y%mYfq~PUm9^#Sep*bpcwt{v`K{cuxev^g^jcl56`m@eyfJzGb`?vm{pYNz#3tlq zz7LZA_1wcp%1Op%Gka@)%HA`3W430rK4rfb^__WF=qLRhPxF*c8tz|tb&*C*^vus9 zhO2HB*h$tY-E%RX`B}$s>+`yYHo<$&g?#^NDbBp3LHCg5x(BmmUnE8*f7E^u@aW&V z_@zsI!@tE9T-;@^=G(uYvy*?`G(QmKYgnIcWGKJEv-+vvc zlaw>rd!M6?cjn>ZtIp*!Cx7kH)Oy9FYWL6g(9#dlrioT_UVZ)b+bwD9rF-m2mk)IA zeQ?*odqKT-d({t#$k`7QIF5EzF4*qfZhDpX@&UOD_8&ju_Hb0*I_ZDtf@blYxRq@C zKEJq^{@?#Yz?+yy0g*{^0_h!_Cx1wt7Pal6J2iCngmb>D85Zd|A3}+DS&? z65ZUlt0TAR3EB5d4*wyXe`Wo>y!-XarqBAKRpjb*>(+BPI57SHF1Ej3r&2gey6;5& zvR%?gqfKY7Z{Yki+wnX1IoIPGo~oFh<=!{L@RFWz=Df!BmTNDb*dQ4%TIqUd&%b9k zveWBq{~6z$>wM`RheCnXePs34gG{ZZy-I&wF2*+Q*(`9^@>5P+@~z(2 z&%el)wm*93p_lpegL63J>&+MUB`vIKtaJBM-0|a2OX2-JpCz0(xl~UKYunZG{_A_W z2UF+$RaEO?P+O~2`n{j2wbIAIVu5L2;hd1HHBN#0mX{_SiR+d+J2NWt+O4RC`wC+o zi*V`~|1&u6uHrsh`2Ko(_wu@pj!})4GjEFYzPmE__I$?^7nWV%x_L9@iojtOrNoQ- z8C_?w3Uby8CQF{me{lPO;=N}UqI-0&nu|{B%x_)(Ge_jUiOjEh&(EuE$}I0kAAgX4 zWa;Dlb?1*Bx_4bz?^bv~_*9FCq6bG=YHD7GHca2OQZt*O`fc~SrpZMf@n179w>~|b zvR`twio{7(^CM4ngx{7ko6kLdBXjelw#SBLswbZ<@6#`E?p|SWxsw0aUbchh9$xEn z-8XO2ic2e!52Kad`W316+tfd+d_1#Wt2%4#jJ#RPV&4kS zy{@7key_~z@}A9!55na)c0|`+*pjz2bpDe$=Sttj?>Buv^GLx&$0rvON~4ba{{5?T z;<5CQeKda+)b_H*?RPgKkv^?**#=%>S zZP#p8G%)nPah7MgD)pj`@kpf6)J4LV>t@r>RK+|dCS|@ zm3qu5V~yQ$`($&J3 zCd?AwqUGx49Tp@nE&0@1Is3s9*GU;+`#XadGH<)Hm*<_snFa<819s1SZ5mqym@}LC z+Kime^SMbmnFKzFkI!l?>X4K!no@Mbkmu8j9T(+2v_+*2bnmL||19cX_x55+^-iA` zW^d}}uBnbmUmfdpQh=ev;L4d(i=Y45@%V*pUz$@bcY3EKn?#b^+R1$FW=b1gOgtUx zcCANO^>yf6o$0A+styw^3tDg3x^(dMJ5K%1vhIT2QElJby7uSyeY<|w%}SqD^}PI+ zgp>`@i$j&lKIgbdoZ4Ra;F(hB+RGC!>=!VcyM#$vJjCY04DKnH9Opl@{&v6gn4Ss$8_3p3ULQS-)nQjbqoJ*L|vMZ>%wWX!7d)#PYB2uT3?(aky&VV)5dS zSx>L>Uz@saLECGtqkCVjQ+ryz_`K@5U$;}vE&OUc{g;l|RuS_RCvGm8w#-EHj9=n< zVIGY$7uWdyN^NUWt=SXGSJAF zK2O!~7Hd_F#QQV*Y`RUpzSQ3zDYWl#Qf<UsO+ZRaNlTt6J9 zk)6>MGwo2+te?lErkz*Z#s0~$vo$W|cd)^^W89m*a@Zuvdlv4{kLR3JRKEP1O7`a0 z^SsOM?sMKfK{x02hW{e^_FDbwAqu+~gB?B`x0Jv6&?x^ncmBi;k>~o|E4xmA4E@Z( z6QZ(j_46AEca8-M=1CfL_U*bbG5KP}#g(-)V%|Sp&FGrFY?-7` zyl07clTa7peCM9?#2Y&z=HUl6=9Rm47#U2IM1C*k{xxxTIWSawLcPbup{{SOZQ6$%sk zo~*u;)FW|9a;{10YG*c~yJ^~we>w_e1x4;ny;k_|)Jk{Z3+MJ*B?aogvU>Khf4X|G zz+%%KrqVcjdPu`;NpQ!v=V|giVN1AIn*4@|qjFXUJ`C2ow4CaXR0Yl@WiRbfj%| zjJkE^=^u(O**?(^Wj_Bd&{=N-Dn@o<5Wi--IxuFppfa?kRZ z9rEd#wQ25D3-9)ePbaE;&3*kuaI5h0D=UwA`Tn~1GGdX#^KVl-dY{ET%$@0}DXVlCp_}|yJc6=r@F<;xh&re~>zr2+Kz1?TuZ?o-} zSeA2aPjcfFSI(&WqKn>5c(Q1+K}6uJbyZ)vJXfWp#fGQoByad?^~iYE@-xq7d3i8; zWbUc=m$g@C&G4R3=H8Ycn+h z`n~NZpOnnwHdYXAWc2$I@KL?rK6Ue~@6wM%COJo4x*yqp@px1U!?)TiLLB#`*TmQG zesRtT$}Ev(-^l)}p{iV&hcTPsw%i5h3;fTVUZy8ETFELXM5*b&{LQ65A@r)Ri^|#lve($d=x-U-#Bnb+W7ebms-(7{lG>;AcI^!`;8k0lvhMTd1F2oX_g~z+ zym>=m{!@GnnSHB`y|i(ZkG6*V z(j`-Wb0|C&{t%OFFC#4bx_$A>sq25Tp1pGViiyyn1lQg^=kCHoC#zMLX)(B;H|TfE z?(N&{-w|mLUGv~UNwPpvEPHQnZ>yZVxwgiK=<6$<9C14y#A5Vut4?ls@8KgS4$2(R zW><>-6#h_*#kAY5%5UaO&G2%Ou;L|$Tek+jOwtIwqUg5zQC8$>Zz~Qy2bpghl@C5QdeHH$=(9t@hdIykclRD$S**7r_RjQkGdVY}{(7gR_Asxo zg1Ghb$Ew#qr|3Usjh*Y^$!ihZ$fTm{+P-s6$?O#~wG}>mKXmNX1MR%G<{4(4twyai zJ1rZ(oQ~Cg`^JCjfn}Q)din>vonCam@I*#lLk`bm=jHb*Ys_}M$l4wycG2pHuUMhG z_hPSpUU}o@jqNw|H(yb&jbU`HoU-xvmWx&M98Sx!Og|#iJjZyR``KnaVS5J4m;0N} zDcGL#^wKz8oioYj6?feEq&X=mRq+=Zx5mDjy5}GxPpssGyld5c?PZe}ZFzTH_3uXq zjusXHu_v6Si#J@DU#w#Of$eB$eLCZ^8#zy>owt&0a9{sskHg7SX6w^SrpA5fI#6L$ zYL?~PWX|TdXf1R7IW5L_ic*UeP0nb!1Qbtw%)hZk@M)tZlfl(rD{>nc_U^j4|J?mX z>HV%7IS(AaTdbNVP^vSqJQRK&;SnU}xKO4}V9x}|M3 zYv?z>Yx29Ll6yV29TnX9Fx>xWq5Mym`>vXwcRk@zS;zI{_#G$CkHL+4Gp;RG%H1+e z?)KJM8{2Mm+@1JTQ2q(0Lge%R(+-GuvtHt0^`#yTE2!&|-zS!w)M|rNgrSzFfWi z^x_F8PHkFHTh|g}H z@0U%_=vtgnu-(GC{_laMYu3FE=KW>qY$#Wrw8uACOkF-)N&1;b|8cE@Q(xuWI=u12 z>#cQ_Ooin;%ia3-^SgI%J~{8G;|(vd$`h)mRJg?3#oA|o?$0Q0j4St);Sa*LGPc?59`C+4{C?~w{506uM;dkFS<=F+F^3P`7`0O5L92n%japGV9 z9>E`*-}~g6gvqtEZGDl`aqX*So7Uef&sCm@OY&#lXR6=2X!5nb-ZWpwkUg*TtV^ya zXvrqBl-lJz<7u?3SX@}|oHv2Bw5)TX(B}V&Nz8u?x(mu?HHQeNPCIv$eYTzDwyqZv zEbULXD|_}X*|({vbDiHD=AuTW*ZTA3uTSmtaX4)}pXcQ^!f z`YlPpF-=A`-+f;ksSb=>VVUIIJZr0fs^YtkItM#%^DNTNGg_*%EpJ|tV~qD_tp?42 z)|^F&&w5=u59q!=Q_YqmZzpr)r~BH&hthPne4pF)yS=OMTmHx9UF>mA8&_0+{1G7k zaNYOsGxzyOM%t>+m%V>0)cM!%x+m|K>N_5gl(J{FXJtKjf~HSy86^cc7?M%C`%LreAolZXV{wmmK$-MaZpK0v1y969(g}|Anv)l^}%`5fi; z|8}2HR=CNxC-{G@`KRNrmuH{uKBGIU;kfp`XD4GmFNu7xAg+DRo#4MsLB8KLG8p=v zv7V7>K9pM3{MxrVpi^EnBJ#|ua`zXj?kHqlxwJW2tn@-$Z3ovX5t*kgg?|s&MeL}V ze9GGy%x&Ud>i6E9DRPld!m+Vo#{a60xBm~F{pTM)xoeu#CaF`;pV&#K?Ay|~ zr{2>`?tmXthVRGit2{E_nn!VM5zgi@=n;AOn8)M!v7)(bzqo%TEB@JDSzx36I%29S zJL`Jmf5Dnt)j2I#+fKPjvF|e1zdZl$z4nWD?dBQWwpnaozc-%m+46qBJHNL`UvGZ* zHf-zC`CMu;XVha7w!OGz&7J?(Rc4t?2Gf=~QES$f%7)Lla)mXt+6FwaQ?tIv?|yso%10Q&C z-zOd`)OpPDCDilY=94cCy%$MvZkF3$=F96Okrgt*>=pZqC#RZg7@Y6iP}kg?`d8!L zvLlP)6YXSNRa-J&rWI@!-E6UH-QBgPbH5sYbF+7Q^)>dJY=?lj@J)}8cVDT++=!`B zJRn~5;g(tVDNm&bUN%}8)7|sWhd*AwPyfusms`T;vdZ5#?pd)~Cv48d7U#`Y*&K&X z^F&OW8Gig^B=?4}j-4ga-hMiIj$6gVcK$dtp?d+tVFrGc(-S5%9e%?zhemzUqs>F+uiju*0D4BDf7$?4JQ^{h?5e+hKTA4_gaOP#>F zv~R<0wa0^w_I?fBSQ&V0ZH%3|o_U5-C0AGA4o<7k)06+PE0qQMW@{j|HbCKchu|3dA?X~Vd?Uy$Z0Zb z|6TcBmi@cq7VGjEk>|9^*d2mYoVKln_4Zj_f>u`9?FFmSW7fzrR+`2zZ3cITx0sa~J1=5}vrfhX1ITv)Gj^z+oHcbwAN5kIbNpS1qisrgr17c4%s z7EV)nr0y1#Eq_yH8Rl5+tKc@DC;X)N1orSu-qO8?E+2ZIe@RP-FY~F2=+uDevzCe} ztF4*1Mb_+9U7d#27w;7;p9Jf*Io9NFa46G%pkgAt^RhVKr@iv)X6BY|C*`lr)ey3Q2c)M?Mtph)=_c& zm1~U?q;iW(3m#7CZ|a-a%sN5)k7`UjYojV-R-D%a7pXm!KRczS#C}`Tq1E2cX0%BC zsI&)@*WYyk@$yyMrUg9=49sCa<2Os)X^MF71ha$J*ZV{_1*Pb#c9>)z+o+bDtlW9a z#@Tdhn$6wGx%FR8KG%v_dPy)w@sCEHh0?V{wr$&`8UFb!%)k2lYxi&78#euhr!Gj& z{$uim+2n<@3Cr_;Yg{zsR`R@>vDWExyGehk%Aydfpq%y0`lZP}|H>I#U;W&(;=_a2 zVXiA*$iKNSJLgPkF|V-Z1>@GDx|Q{l69rw~o&LKn;3c29qRKN?_ikoM*B;{{t$ow_ zjgKrmxpIY4qiu@(Q=!&91&V@8zl47ZJY(4%{Fm>yeba}fVT*pn7mB~IzF>b(;{WpI z4GT9nFW%U>wt1zY?T7tye;f`_+q~P6g-L5E1Jk5G`#*8F{)_4Qw=-l@X_eFse#7QtB7eIrce(I#YSvS?=%rzsjaQ1Ee0G{` ztDB7Owg-<-Tke_s{<3iSciHl<*Mi#~^P1OP*S@~Kx%&KpvI?8kr`G*qQa$l|Q^ej2 zS(7qFU1OI_IL_!;D_9|z6!L!NoQu}g*SJ<~xma+|AoNHw>jS^DHkPlX)4ggXqkaW! zO*&P!M7FJ>IPN5)ioEEf-a8XEIWCNty@q?Mtr# zA#z)^U2K1b*Ysc38xpjefTsb`O= ziT&lRmj3$tT!}T3-;~U6`3c3Q^PZowkVE7zBhR5bLS89Gugy48jig+g?*zUSn0nh~ zcbww(X+N26KE5+6?NpQSwI{D44NdpXer|W-k8OZ&`u8>4n)RpNDBy@IUhjK!Z{3`G z-+!Js+q-sQnR=K_>%A_S-AX1J#wvD=BA??|1)bXVYk!#bufW+%Z}-V@rGESJ*@vek z)2zH&UPCBb@sM%wxnJT;<;oAF@}p*G1SCDJz9Ac`F(ECN^XgKzA1_Y#O!=G76FW;R zxim6bB+cfMP%u;P%t;FluaMR2_~KY?z{?U)>0YhAQf=0jy}G;Dnsu&CbrxDLc>2Y3 zrHLVer+=JU;hDY3WkT=cH!E1ndec5V=wn>s`_?q!oTDo9tcD{3Zuz2Tb5?KuCS{W| zf%oFQ+lC&(9yc6{X9X22Kl7S3w`P|I@A02cvmK@n zC$On#?Th4H5_+bt_pS!d&R=Y4>~lB|-HTi;7wU88>A^WBj7Fc9{n9$eq#|7;vccwv zUeXcHLYME%j~|rU&t32|z*1#)A6G`#oge24+n;5puUUQaCu_A6hiJ#yBYMjY2J>Wj z+&i$Xy)ZJO|F_VmBYN|$ba{7v*|<31;Vx3#}kxG_N!H0jX z65E?yAm`U>#&JbElRs>xLWr!z-e^3*x^C zB{kjN-2A(%s`;jQ*3%yGVxN6#w>b08On!Cs!`jXup^ax>RcG>*ZF9-@-Vv-QvEC)d zzuaQ^wP^|;zH3gaFwSGR*>Lro(>xuP#`^`v5C4jF1+3rt`Mr(I?3`mP8;(^QEL$(Q zTl03M+X|P7cKq|FS@~(ck10-3d=oSIjgH%V^#fvaO;%Z*=3L|@Gs{1#WZtW#&OF)g z-v@k}8=RuZR_)$6>>(&WV4{pPlx{=D$AVVm~LR=W_7;#@Y8z z-fml7s$qO7L)|$gWJ-|jn`PN1OCqAbUfL+RYr?HJ(yOKgZ1bExyUS*ak;Ey*Cpw3| zAJ)m8uk_M$NwdqhwLOd2eprXJMXwT5(UdCrP#(DRZ?D&hS>gsue@`-K?O3Iwqq=Ku zs;RZ>9COJH>J~FSwpNNCH+X*6^k(7p7@iD`y^3BtQnN$e2Aj4Cy^~&5qCUs&+RV3e z4lJFrO2eP;(!EHPEgW^Bl~FQ}-tL?4yzavF9g=DaFI=AoE_z#=diEvvceBe1O*c21 zyOue;y~}jMX4}dbzG|_Px)QVX7FA}-&auwV3%YKTJY|;!SFY}6H>-#&e*r@g|FFF9 z%UhrG@ay0I>iTSj!_3uHHFZl=($#bhek-oA2yQfUL zVOQg&-L&WS>K%7~|2y~nC%4_%_VvzFET%opOUwI=f1$3%ID9#ceKy)j_p6z=- z{z#ph^DWnLTj}KNeua|hyM)4*Hw(Q!t>-p(ah{#ies&ifo9=^OD;6r$wkiD=xOYK| zuhKTUb&sj+LSg@#ukVE=|2pzVO7=n(5BHywKJWf8PkRzqsp7Z4prKi|=`Zu2&2kU5 zvtCy*?Vp{symHRU1rtS>`&KdY%=tSsl}ODt9JgAjpuhNvdz13Y;o13JAJv&5AIiMv_6vf>Vogj%C_a&OgHQ| zeOKDzw(6?P-D6gllka6r?}&T5aIvXQY^nP5ir_hmd0MK&<>!ipcHNW-)>euvJ~Ur{ zsffpM&HA()E1f$xbDu7L!@i;OZSBlYM~Y=)?(W(D;n(ves$$hvUp$>}>USp#*ZaFJ z3kXfIbGtO>kvm6U(%F#NPS*~sh&-`Tzbs~m$XS~}O(yobf9)EZ5<-H$4TqdkJY&t7qGbSxyd%h<# zy!FZR_gg>au628Bp%z#Vc|DYakAccwV+1Te&Lan`LnGX&p)$qK4jaWA-MU;Gn>u)OKq;~d;UeE`{b#+ zMtzc(7g`HpFoO5R1dH$4pes09u>&FXSt7c_itNp7cRea**@!a~5Z_SSn z+6qgpcxmhF;GTA}r{<4!g@OD>IUmf zo-Lhq_UhCxzF#hT-`=*X+jPn4dBvLpr_K$E$_afY7Ui45m%Vw**2x>{mWb~V4vNX) z)ydK7U7wx5_lB?8j^p1ppPg9BR#>|vVz~8>_?PYM3fHV-F-k{X zpBG#pd7MKh&^>2n_*st+-7CWd?YDh79V@+RJDW%P^=^gtnmhU8OLvsig`7`3{pjnH zBsS$B&x!d*!|lc6&e}+Bo}1xX(be=!{LH2%?uYYw&s~&wqH_KBw%`f6(e5f!mgZ?2 zHb*^=YkM;B{ihu!lLafMoXAx;%T=}_xZE-!_4S6H|A%_3`>sjIPguq{D^fZpyXLy= zej^L{C7wTYPw=xWmEHVVmfg;<&^vDHL#b4gGi;6jAI!ZOf2o{bQPXSv*4q+IvU>6x zV((|&-M+TMZDF?)kC{Pw+5a-V#M0TiD_XzIY`?AU|Cnu?f!~(DM|RG$N|^kX*Xf3? zduf;Ujr_M-Tl-j6%kMqLvH4-VrOLF}Jn_B9S8Xr8vUJOvZdSSbLTk!?9{Fjr&iGXJJN`zJ;5 z|2A%)PKwR?o2L5F&idg0qhcRjzu0_u)_s44seydXuEU9scc$8gZPr#i64fr{uTz-) z?n6#!&b4Wa4QK8%(sVqkmi%^?+TtZ4N*ux=nSO0&l^$|@X7oPWxAIk!?0b>OVot|u zUis)bN|M(N*67*o&c5LGV}VtY_QIRLPvp(L`=u`@;r}AT`&qfdb83ZVcvnr2x_u%i z$8()ZV(=MXuI97ZwZSZ3rwHA69pzYlbdk_@xp1p$pCc!x_}3*aUU@M=BBOYA>;l%s z26l&1FH7b;oBOTpZ2CKambD(P!4ww)W+L~mR;^?vU0*!w4#9=|BEPf;ytxuhK3R$8X7W#Tjdskg*U4*m#@*U?sT)sFrtL}7a zZph05!7WbnIDSsq`r^dizWNtTJGNiEubDR^e*;H$e``O>_uc9~-`ltp9~_kVj3W#^u9xm0^1GiMat(f)ClLpP@ z)B09@@n4*`Ntjnv{@WXV{j=YF9{aZ+kFed9zD>hz-^s73?!Qh1$-bO_C3%(nA?<}e z39_;;@0J|eYP9yos-Tap$=f}y@qT|**?h)qPD-St@9g_$6!?`tC&VZSPt2K=Wl}Ax zAYI=)@3^mh{bq&8<=5;NC_KNK)O|Md;;Y=yfOp-w&*%Lx6`R~O|8jOpdpYM^BbT}N z9ThkK+wGX&W}E#&@YcI!@_Sk`_ygU#4sKFzT{fR7zs4pz=gyK4OWW0-uS>nu`Mb?E z?Du-^<@tSr2Rye{dTh~kczCEUsiUs*EZ_D&4oioFjwyZenSU&S;5)wW~ZoBaa0SG+1(bJ|{M`q9|p zrUzdpm@{4LW0gufe&*BkW$Mzd2dx*!9%{UvF=PAewN+OmU;XCqrf03uxwo$R_P@&hwJq<|+y7~{CCxk8PA>k=c5?sK>)%&Ayte+ee%Zl& zXJ2rh`Tx-Db@Tkt>$0IW2kl#ah`rf%isRj>${oU!`Tq!{=1zMo^|R{C(ZZ(KO}nMM zd_S#8U-9LyU*0y$9;2-ZE92Yz4}JN$<#3Gk=DOAYXH|vg=^Jb^UH$IXv@I*rdn)v+ z;@1oOUuO5Qb@9~xs-Lq}-|u5TmGmRCa+*u&$$%s;aRbg!Z@E0Lz;#vgxu$ixb{Y0` zrh3)+FRc?jAiFy2qMp!)Ppp5}OMBHZOeJ{OIhvB*L5$B#^^17 zxKFXDCiTN&zePuDe^y8T&YP}wf%Crl++)AhqWX<&cFQb}Q#0Rfe^>rw{oI*`m9=mC z-{_fd58Al=`!u;5GJVxI3}$Q#HIuZ?vrLid33WPG^=(n6vtg)Z)&?EcwJIDQvbS`$ zUE+J;n^gTS<3RM%_3w)>9zMIW=s=(1w`=JQGdHtO3=W#x5$gUbDY>swz21DzvTZm0 zOe5AZzx}-Z*_4;X7DtogeIw$cQt~^VXK%ZAaLL`BhpV!#vY&P;jN8<5LjQ%i`qFGU zMQy2je`czuivOA2%F@hvTU&1SS<&o(3y~U2xj$Urzw+x7(IX`>E{PnM7Zf!q8}0~E zxqr*@p8vut3j*aEY^U~apK^A8LdVS+f|Wt5eXjga{8CpJ?i1sEV%sFiw7*l8VjHGJ zvDzu!bv)m;>6_=wRWUkkj8-3l()*?^zxcwgaPPzvU*p3jThjJ6zX)pA^4t{HZhY-- zyFu$ZFT+qK^9d(I6Zk{l4X(#0FovJ1_*$hd zBd}+mx&Qk)(f^8mbBY(5E?y&J{9>8E)Xkc^BBJ*$+4t@_ynBAgo@VYaO>U=^H#?k` zi&*6|-OvyJCSA6~BwBb*NJ&dr*$ty(4~{0yx4nK%tV3ttLgwPOlY;WwKdmWh2x(Y4 zDI?(bUHLaZS=SzuYFxfUanS`H&+L-NoXK5Re}9fL(pFz!cfI&Yz(mexdoC|YS!-OU z8B%}e>AgM5vjnIA{S~ddn0YbZ_WCyo4=$daV5g(Cuzd4Wmv4Q|=Ux3`18%-g(_R?X z`g!ZLKei_Onl9!UB!p%DOu2F<;Kp399qa7m-!_&kQBr?-*Vig~N1jR$&#A+ z@k!$J;!7Knjxl`botD9SfG^M2NSyhlrho7E6^~Z0o0l}_@vf&i%(GTa4u0ud&11{= ze2-L2-@U#rE{Q)f?gsL!KKB{~DV@=7bKdPA^p`Vw0#nS!ZRKZImOY$nwZVL0dz!V# zg5RD2Uta9k@4LEIOISPTPWe&G*avULmCpbC_9kw!^m@e~ZwqTDM5$&*<=tT1ax`b- zuS2{l@pX}`N|xqxigr!k_x8q0`AtpI;W7`N$o!q@`Re)F86Or0R2}@V!fGr|1~9tHr6$+Eqax9-n){wnLLy=*2ruhB+lBgH*ScGx#Q7Cz#WaJl90!j5ENOO3ax<qwNa5-AX%*rIx{OkRfrGNi(PWUes^o1dlbElcW_CohP&Ez0Zi87=QGKb3R*vO?|3v+`YCT^g^#{`5AMsPA^D z&b8alo$O`3+*F5e@5F=fq9UETNW)`>47Gq*Rdomu_r;>P<%%jWiNx$h9L zwoGQ?+}9l|8J_J~aPFK@*yKAFYN7Ww+KL^Lxfm;+VCBf_d^$%`RsGh6rUSN~6Lz@F zS>V(*?NzvB^_ev(>MA`_JwJEuwDbv@(C}z$8?WZVCK2=Bhc6olnZ^{HP^z;GJY$;p zFYwFrC=T!c3x3`5bXdCgR3=ly3dfuWpMR`fnlPbnDa*C_zh6h1eTcC59K>i{QY`Gu zxO5ALa~<15^H}GVE^;+2t*w(ZPctawcJ1$u+SRf(-u((^)v`%UAoSgadbQLHWyJX;z(eQhTnSyBS{iarx>1eq#~K`Tw#e>Ia`#sv)#Y zu*hf46}>~tj`Gi7=w#}yY&DpB;OG3`OMZ&!8~kzWUmBPj8vMLM+5CCz8f7J}$M;G- z4}DqW!5P?gDt6(&6>8zzYqFA>?-f{vu*9mbGZ#xz; z=~=J7yM_c$0yO^*?&1V-%V#bRNDGr?yc9s7gE%dA1m9*7QLujIQ>BL{<+t@ z^JcNlJJ-MRg0o(a=Yua5zqWg7*)9svj8y5~a%ZE7rQ@fzO(7F+AH3&WykyOj&9{}V zZTRYIaNqsq6jjyj6@Dv}59GMDpF!#C>Isgg)|tF*bf3<$II#8d zj}L86I5gdJ*j5@~sJaaz7@aXB>$lJdRKM8)*({XpcWU*-Nw-&Ljth&C|(ccaquAdMi z^RRKPp1ByS@%L^MzI*o$^nd?uRLgZ}>4BbLxvd`#o6NO&+!wglf48)wNKy0h7*Am{ z(IRKVIbXZBdUd?JHTRcP`b6s-6C1^Ac6WK5as#faTC`jL&2N(oIpo~ebpKF$%Oyis|_8mMfsmUFzduaB5m9-UYfB%2{cHOaZ!|iDn9vlJ+`tRPodna(`?%lh06>oI! z-o2Z>yu7@;{lUA*@4r}X|6Oz0*7*CqdGU^ctgau~w_d;X`sOAxW8Fl#z?X6!OC=Yj z$m($U?vPuz`I?mCn)aK?`;QmQx07L&;nP#^pZxpd;V<|2xMSGgb^pH;#Blm&-;I82 z|LwN->(g&->^<~VEkHovyM0l}ll_ObEIQ^_@7rswC2`wY+WOz-{gEqH=yo6JKNI|Y z-!2c$pE`%utFD=t{FRko$WGr?-?y_;fz57p##x!grOD-&+E|5OF{|Frj??(Ri(T$} zY~6;nivCAu8*XiV`O*CR;}o~!Zx2R(6zS;QcmLeMt$TkvcK_<@PT0KZvD4nCiMuO< zXT5miw>zd#*glPJ^!gJ|IdAg7h3|?dR1Qx_-=VNo#pHM8wdA(j$iiT z(TZ!)bDP$2nVfu;xuf;!!jjS}C09%&O8UPtES;%!TbpgtoPXB6F47K@dbcd}QaYEq z_=eapFrC;(%019bRRvH-`Vub zW5%-MB|1`j*nP#<6^rtu3F|eMSM7ZC#Z=(Wrenu7(pKGaI~`*qVf5^$l#q|nCayDQ z+7ewOHB~6Rfw=px z?qz+w*;6ibU)G<=9kckO@9{kf6)F0z=ZX}s+SKmf{^rp0OZ|^sCK|NF1!c7LsdqG2 z%4he9GR!q*mk4NIH2X_bsldMZQ+pq**uCw+&a>aoZMnN}(SDCJ``3KDF1W3Go3fqF ziozR}>lLR4SkcRxK47H`&IIE&HP}Awa@uNK6Ys= zoY?$=@wxdIp>5y%Z>uS-)v(%r?7=CO0v#{I(4s( zR^QlDJL|*TGX-BNtE&&Z6pLe9d+lvR=;v$kCqx8mCvKawVa0j|efNT_OY^v5->)m< z)VNiy{M@qh=6!#m7zv+EMOu+c8`szrD7&rRu)96lvh=v=8vB4ns~1+~+e|)^@zwME z^CXop%L=KxvUm4t?wl85pvzqn zC^~T__tCuBKlSdth<7gDcWi}#Ew_%vd$q?O&gj=Tm;EY=j@rI`&erQC|El8ua4$4q ztK4zxs(s4og4Z=Z(uKRGa=%iF@iWPJtorJC;aMN+e^YzcYA44A|2p$S*fu%pjbivm z*UaN>8@KM5_NH?BmzN1#?#t`4GUAdQRWnU9zr9~4`1{+8nI{eenWP_1)a<<$;WlGY zWZ=%pQ!f6itU9{O+3;tM%gL$wW`7^^bY0pDfTj#x9(Z;)hpwZ z;dLk3mb>q-Jv%1l#v6O5*Ddlw^z|ElyEf)3EZg(q&80=GDaBcKvyvWiM5g3iS^VMF z{Ff0Wt2Vf&Ioxs7hY zZ;kT(%zvdnT2iZza?1vm{@zshtmfE@Qk(q`lyj@Uo7LD^x!i8LTl3>of6Ylx1JT$g z-`G;sCVDF8+8uEVwcAkpg5jNO^yHc;|DE&mo9BEBg1G@y(hBM34lLh9N zvB!k}cTn$gP!g5yaMNg-!)qPxV;s5qceeaH7UeyUK?*5`I%#|YlR-AFe&8#J1Mgb4I4y;`Hab=;@H*cvbj`Mx25vT6nvEH!H zU{krm)!lC2+sqy{yQD9SxbSQ31+!M{|x^Ht>Axkq)!XFmNTy|qT3>$=m_l``cL zSe6%iSpT|ubL*zL9Y*F;_P%$2%Tu!Q{_EINf_VqdRQ>qUFA{cX{j?9|Qp=xgvO4Ga zYijnRY^Bwv6Wx5GxM?cRL3JShjnzs0`v-zjJ zS8}r@9!gzjedjL{dHHK!!zV_yyGQ;qFuC=$$^B>*bog>bC4KEN8Rwi`#!T-&`Uqwg zM!4rJe&E?%u#zENMDFC8Fq3PIJkNNfs-HdAn}73UwC!5e_9r=?`k3XEf9d~?J+tqv zo`Puo_iKfsE6*DJ3Sibx@MoHmc=yEFzgHfwXj(SyTaS3&+isK4)h)RJdDCaSnO8O2 zDyx6-xkZX*zK3_qyk-c{e5ZbDT5dplwkJ%ENF|LNBhzh9#34iwff z-kA|7edn$C4vy%!zWE>D9|+jh7yL1P4fl%|EX@oY#*s&vyw#R#c^{toYKr=Li#w<1 zU9nA=Jaa=k-;5;NTOTbFBki>me;Dl$tFu^ds=G?|%I;cRN zwKlGYYnRcl*Y|afyv#Q%l>YCs`}6z^@qhYmySJ>pc>n9vXYm{VB|h4@Y*N4uJ^uAl z-CpZ%{^b?XX)tLOkzteFSibJrdXMXI@q*|2?_S$0Cpb0j*b(M8XC6ovZ`aMzn{afw zm0Xo&oQ2#yHTU%9HQ$52w;n$p&NoBuliAYmVavS4GB?lkS{wPOgS~!s>69fa)mm$K zekre;b7%Kd_lk$HBFz~+nc`8Oek=REsF|kKw3tQLuU<{QOYt_xHZGg9QHQGosySaf zyj+&CJmr;9`uvxSQEOhlTa%qxSoP*wQtq=yIc9xgf*x{LDm;%I{J%@?zQUE!usmygbGr zmHy_>^C}MIFQ!ZWY;rr&sqXc%?X*pd#o=d7QbsWk8rSKk!#u(&Mrec9CzvmZ0| z?y^#mEl>12X1ciOc#!+_70ebE_ZSWr8~No)S6W<{yY1_RD&zkxRjC}#2Y#D&^t$tF zp1F0M+nxJoOY!16SD$xp)cdpbMg_-*%W>aUFBOk`H`aoxEIj z8^7+%Tj)8t@IK@Jk9UM$KGm6jukh-dO}ZN{Rk!E=FLmQSXLjNl|MKpjuJYw`D?jY# zRb*Ze?9}+-{F6P`MGDUdURL9rRdf9r(}kqX0bgA8j&A>1QTE=(%qX_W`cha-)0sr}wwkHxz#Sx?gYoKX!wE z&as|4WhP4<@l+3p)B33))?VQ5CiS1%wz`K^~t=DVW?{~LIoY`5@eAB6Av)Iz- zWgD}MBDYFfSgABT`n6Qr``g#1z0=?J6x^1$o_Fq%r(@^t?xL6}1wZqyI2K0~Xk9$8 z>XW#AqoC5#2M_(XO%vX&#y#8RhJ(nXh`o=m3VqjS=gFC6?J2=2=c9D)*Um?Uv&4E# zXIL!W-q5)7N0ofP&8jO8nbH%zb;{&QcOHJ)@OSF<1Dn_$TW2e&=(HYYX^fqFw{fc3 zGuhI&tjs*=8(Z&QIS|u5kz+c0lVprw?p~Gy-a0!i#Q#hQH*mbY_03M6KS?c-IGPGg; zQgh&0(!PIL^Iw#{6#2D#cF&p#b8qZikZ-a4gz=|Uiyqza`W5C=mCm#;e4RmB{)_L$ zPl|n6d@h>CG;e;nR8sOv(7bEG9yf*Meg#M_Zl7VXbMlXwft>0mtv6bCT7R_mY>;qZ z`tWc2Tg_6>PK*2Y2Mn4R7$^SP&)jE!|6j0%rsu77od@bWN@rwV39^~o(|YWp_k|wS zxgG1KojCHLN$iAR!B5Qw$I7RoDqgL^hYpB6yO?06UVkK|lIMBd!8P{hmVW;w%X?PS zGj;O+lyAwUs$YK=YaqLMdIdypZ`iPB<4GXmj_|jLjD*1RXoTSI0CwR6@k2g+N`0L-)CEK`) z)!r}BIoWY|=9P&>IwiGFtX7&{*Pi-$E=w|}snhEIn+NVjZkRO1f7rS*&;tj3yXMVg<+w5eY(e7w+ttW9t%6p3+ zWkI$|bE;-vS^cU!>VMA(Cb=lq%$ss^R|F{}t-82w$xFK%(cf2nP563m=|Se?J6C-? z8F$O=iwmFetsC1jokJ%@|cll*g2l#YtNqa z?J)GbqkK+8WZs0Wa@><0UD<*s*6cUsW8M0+z%l2(o`h0m;Twk|RZDA+FJ0{aNMzm2 zS*v8M&d1HK`zEvH!#A&~pVnUd*|F2c$rc+5qHvX5sE%ct`zE*80)yB#ZWcov|)#Es+Urd56J2VUGv?sa|8 z@{sezt3%fo%rtD#3iMFO`d5BovUK-Rag{x<&OKSy@p6yAnx5|uYOgPxSir#DF1I~1 zkUe}_@|*NrPqD-AXPHO&W$h1mU)P;^dP?mS;e7G8H?{@ke{v}Pay@a$-LHEdr%WoW z5Y{;E@I8)kaUn~{$9pOsp(|89KHRI`%=a&?uxf>x$HTbSaTonB)U*GR#J5ITW*^2Eyv0^a_6CeP71Z^bwF^FQqWZpt&V z+u0v=|ISJ=>$kUh`~8fClhYbH|4oq3;q4rK@AdMu&nK=P z4fXwdRpIN}7KPoL9{U{qv!n8^-s|LtE#Enx7f)34dJz9MPNSW>{m85Pi9$^eE*;y_ zeRk^Kuj(fG3q>FFUiu|=(tVlo38PzcnDRC+^^p5<=l@3`uZ^Y4+70G3XYyyOZGN{= z+H2Cw?#VN6L_bNb6nLRBwI(i~$0(I^mR7udkm61+jm(P|!>V~+-3km8)BhMZN&Snm z_?C`io29L%-28CimW$KF&&lFj*50jrxqa)o8FA(_{eHJi`1W@9hW+x~OW0cze)97^ zUn2W)n@ig-4&lu~(>K1fw(Rkrk<9jXW0kKvue}sEKfBm;^Lwif{fe~pI@a~5=CfCY zmg0(?9^&5LHYpyxU~5sm=&z5n>8v%sCsoFkI2{$0S|IuB#?@~XjFVKklQovx+&a#- zW+(g7XZZ}DLl>HQJ?wq3*llTq;-&;woBwkDnMUzTHEwNvpEoz(@8R0k>Q^7;J;`~~ z&Kw5KS@fF^*70I#AKH|3Ule?{eo%K`Cm zb_s0w)byu`>7b>T&=Gl&i@(E5-#*9}Qw^PTZidSP1qIXkx|GlHoWK9yy>s~ga_^7- z%NFi*Om!CZmiSrRbY%tq#Z|il^QIPTkdv7rwf>Sq0;A~~0i8GPH8a>Etwg?hl@!PN zGpu_)_3hP;RqLh~Z8;U||0mAwF8h@8(g!ou_O!X3Yj~VFZQ@DSw9}7|AHDFa?cMX^ zothl8_WZm2{%qfK$w=1n*+(2g4Ra;GGOFIaIJ-CgdH7|1Sv&8N3A^uC32s>szV%yO zZl=P@j@21Uw`IL`SFE1?%Fbp(Wo}sbz0s?HNkriAGre>aN4l8t=_1bgv*U?{Z z&zupz{r{l1ziC8}m#v@w*@v6XdDON$erI_+{rbaxks_XUMV9@OH%ORlPkdSAV)%16 zL+W4OD3w6X3NyKxFU0~cMMmvPc_=acS&7vTmgQI3H%5JGdcU`Y^^aWABFog;(?`ep#Wg}ATU%O$mG#ArBwzk^_Une3JGU#(@H^AJB_uE-f;yGu|U4CLN@wzin$D`iXWwW5W+swj5$zXw( zIUawCB6ZpWGr0^U1iRTj!uf@fB3yl7QyJ}oBu*xb~mDNIK)N&$OD>skxokUis&?#%$12z~$oKEGgC4KruR61u@pLC%xUpq&jM8KOmZMv3tlMkN zf`0bzF8(UL`0B?Wb<^Y~1S;^dPTl?3XeRg5ht}oQa-GdHn~qdOl-k4`F`j(yc)w)& zD+P>3xN&l?P=P!sqez@@IlGK!Se47{VT@-L;siNPLdXqVls(X{J zByMOvbwB824yM?|s?PxqYs2$MI*czMX#5bm^7l)K`#zPZZWAzZ1a3Y4_LiD+_z`n$r$aDv&J5) zCW$AMX-UhjZ~49Ey~dHfbbV#^e4ad3(NI$d0R&j~8W}S`z(w zTi*N4t5+1Q3N7F~(@+|BUe=|SQQ&0Q+S=w-i@a_Y|D3qZ^a1C>qNAr5ZVG)I+T$I~ z6`Q!}yC}y)$AGX$Zw^gg{=T|kMgPXRi<`RA4sZ0!Vb)q>(;0j3LeJl)2Gfk<9-TZB zoz=1Vy;XwQcK@2$vxJW+32smP67^V#*LQ)Bz?R}4-%RSlbx%FMmX)AnlYS{?wcAwo zaMloI>$SIZzuWY<6mPv(`|#V^XAfs(xE*-(#M+`oDtYBG{eFFqnR_Rl@mwh8BK1>u z={lM1Hj|m{?B#AgNjdzt)zp7^KbMDU9PMPm>CzmBW`s%W`i~LV$CrqE#E~K$U*m0Ksxf=?$=_@`;JNj$va_vmWeirsl znOoel*<112o4}bzHwxd-e&YE&^Sv4e>-X91MvAj06-;_z^EY?D?618xPj1V%I{ke6 zKX6ytpYrcT(nsQ1>^Ed(%vhV9E24P!>s@cveIZVKB8`@fHx_^1w0UXrU!zN@Us7gU z#=bjvdg{xnpLJTPZ|7PS>%5x%pzz?SxTZU&o>(3&-cmRF;uFi(=f4ZT|6TrU)4j`Q z{qDP*zG7=49hU#}W$x-F#is^~pIYFk6#^rh1-25WpUd@9UyZN<$UwF^5qGDNogT)pUs z)vVnYve(B}P6%_eSY1|^*wkj{eSOD_!vYgUr%s-|rry-%;lX3qq)*oQofC?ZTH-$A z#ILK9=7c$&w#-e>FLLjhC>VH$)yz(8rW%jnYh@GfPC<6>c)>>XuM)d6B#V4@bQtg0 zAJ%!Z<3rwwlMpb?tR38=a27U|I0~-+E1ppHbggJ>DsXEiK7D z{Kaiusq~5sF4@ZrQdUyjj~V;i|KHt`GE32uqvZWNcIE$WGH#!iacNvi zUw&$NShUPFli(U5*3))ux*Kk-d~f~w!^`X3?)-kIR=>VKfBT&!+FU=@|FUmc>hZMx zSebfLsG*$r;)~aPmnF|ih)Icm!*WzH(a$}4SLuPy?cXohTjc0m>|PXM8IZtG&uh4& zXu5aHomHK0H!TW!aw|cHlS5>h;>smGxhK5NYlNQrQ^9Y3GVj)Dm3u&)&?-gcKTCA$W?m_%oLp@1 zy)fB`%~|(Xbndhd3h&M|&)++Tg-MIE$;fa|z{4rqugu+V%eC50lcjq~_=0)sH2(@u z&&}6*Ci_jq+w;C;9^<5tBP%yX7E8Q4u)Ml%SKQ$vZzPv-PFJ{i+5T_jgQzXCi}T<6 zZv0!9wrb})(So0fiA@{g-tc^yt;eJozwc82(^Rc*VPCsaujyX6ryb{<_~=h-rN#d? z+l#E^;h<`3$76COPdwu^L`HtEsjx{XUFEN7am{B8fn z1t0Eh*z~gZvsu*!%eZL=D>c9Ho~&D$oAAnZ8rMEEoo}H!X1(oGzGt`0{hak}Pln~E zZ?$JCcE|0y`)iS?LBZDT<|W=+OiNa~e&5S0r~fJEf#$}aPP|L=?X%N=W=~S8*`F=o zYP>1<^Mixu{Vwf}7nSPSBlX+$#H!umheMRvxX(PQZ&@h6xpacrV$sGhdEKVf3B@t2 zi{4*;dDSWJjqn^h+m>Sg%;G0b&3?~<%&Ym^YZq=? zJIkfk!&FB~^@+1p#_MPuht??q2V3TD&z$@1Sl6X+w)?^>gzT+nhRjR!_S5=6rdPcfRk*?`Z`*J&8Utx4fNXwweEHm+@R`vYGGZswsO_ zqFJ6QaeS*aHJHAlX;Kew(6=@FKTK2Kq#=BC$+C=Z&i(c2aAesvGqK{{MfORJTQuG}msK9H`ns@0NONB9tw$Z^PP#J>pZ%7qsd8D) zto35kl0VPppH1xlcKudS=XYh1o3BGM{}nv>D7~2HPX6>&rZ=U%w^a8OazrsD{t{Q5 z7;=2so0CBn3!I+>w%M}&TM99X*0R0tEB#O zS>6KeBYc;*v*!KRI)7<^+ss_beWlP zOj8nW9V)$*!w@Oj@3LOfWs35Le0y=9qg6{9A1X(61v01JniM3~WgvF;6YD0g*L$xW zkPY9?_QJ7;Wr1En+W+oP!qID{%xf}OrIeu2d-?o+-VK)ND zoS@F|G_{=W7@J;~f?rG5U#PzP{Yn&Tf%g21i`Tu5_7;iguseC<{|^2SZx;XXTkLi9 z96QHlEwv|MI}R~yw@Y{Uzo95{rdn5u<~Hv*=5QIYSzF{|C7yn@J0>q7;JR}gXPF%xkU+V;m~Pi6ey(lPze$CbwOYmeV4n&o*TJ+9^Js7Wo+``#@O#&>lVR_T zF7K+ok$wGgT5pf)t<6j}_S0($Pd4_Q*nV$HZ}oeFmDkU`=#x)hyrSK%wpK1-rrkcX z3AfS`Uc3vuV>*%7W<863Zz1yv|M_VPzIv+9dwKTP?nPS0JqG7yIHw)*>kM2SmwHbl zi0jDKQ%^enOxfsk^6$5WW(z$!QhpVtaf-$rT9IKYxT*g8-K4M+`*;6mVmkEUtNr7w zzx$sat-m%&WJ|8#&xw^W^G!ph=$!hy`F!L3C90D|m6%T-VHQhzcKKEK#Z3*z>@|<& zyn0oXHm!IUTj+cCd0&pi@h_G%_nh|gNncrwQIM^^k!4=|@?|BC1-m`>T2z{!-kW`` zs_@7zp6P35>#PpXeX&z?lhc%Klbe6KN*1c7EX=&~`o)~EbE>h$F05;(->P~pBbK0R zpBm$`xvgzZiSRTFq1u%Bq793u^UU$wsixJO)4irURcHOrfR?QFwom-n``91tbv>G2 z_cPz@iKNSp{o1z6f)+FNyDc+xJ36POV`J<@-LQnJ&2!8)N^)$Ly!7L7(vJze<#(#| zEmws%rz=Yyoe&VK@ZA`W0P-JXT3Y;hYlONv~b+)ki@vcg!<#Jw;%X?{vOZ28`ZOpY}t1Gm74e( z)4s3&*s^Blibi<;Zi$m=jJLgcu;_Kf`HeFc$8%4;{>aq&W6P@??<>0}N@jW`741xLs2ash#l|J{5ft);AIypEn(En)pf`*N0c z7T4n68=O)Nx`jn9G(<-vO+75|rXi%wcXfcsv5o(HgeJ_h?A`q8Yj^pawaU)hig(RA zJMWszq~+F=ui5mznEhPp(%qH&q-u8x^v|3(^=yhs)svlX?p(@!{p-uW5LV4~l6z)F zT)KL+Hu=fiT~psIeZzmR*6e}X%qVM)%jFTPR+dC9Y<=_emFu;pXIE~eow?FluNJsm zvU*atZ@9*dxp&-5*KPF>R&p)QKKqO}C~b+_fp?2t3IfynwH^K#?2@_p<#lDy)8*`b z*R!qfzxnmrnfdAStVwfzX;^MumHg$VQe@ntjGIf!`+Cds9Acw4t+EuIu(rGNebB7@;ujy5{&w!I6#Q7dfBN=*-7|MTpDyygxLtSJb(_pB`IW-A zE=q1l_$jr@lJWb4fYsH1SpMzZaYAC-zVNQ?R>v+Y)MoMTI~*TXP`mjKQ`s@q^QW4p zZSLRPqj*v3;LHO7M+1MAZCQG8X3N#98QHpeIxR~BR=u1%L-Gc;{~R@?Ksl;f|l1k;CYU*0S{Ds}!yt<_&o@l38R}HVl%JQ`yjc_x{6+6;!{?Wf2A*%@K(+@3*D!(YR+p8Csu`n`zaNo!$wB?E6 zqtGcU7&GOZyT0E{^pq$};JD4Ra%*;sVATBh|8aHu)K}Yo(m5FG_vzf0MGl287x3~< zSuL?zb zb+G96yomWf^|&o>R5@!tn)Q0>$(7QJWM8Fjuw{{}wb#2pDOTj*=h;Q)__iDGF$>#s z&irTA+z+_{aSe)}?$s0qeMpJbz2i0_6wSM}>cG9oLDm7JMOPiF2!lj35i>Iq>onb4w z|ILEX*sU8P0}?F`-4L*`;RrsJT&r@yEcVC#o9S&P!o0UMw%T}0noT<@Wz%SGJnKW- ziiC9+)^!Fmn4z&xL9-ntz?zP!PZk=Ao%OiOU?p3%= z%y0{-4p$VI)cS67)ugGn6&7a4+KY?CZCT&@x3f^nS8+$JbZKWwM@inv%ZsFq*W8t= zduUm^v-Vu;zMH(7H!^;SGOw`gakw8W9JMOd`A5N78+=~V`BIG z0}d0{+kfJ$E}gyj(%b;n`e_+F-&eQ@v?f|a@V==GEaa-$V7=Q-IqQGTh2O5zZv6bZ z@#6}syr@&3pU5uVltTrDa)?)=TGqFW;6> z@qc>2^a~BX_Y)RAvX`8vP|_(8CS-lhw|e`M{om^MI{qy0)?W30e&-FJ`xoE*KYK^3 zcFR7!xBYGrEewo;KhFQv+-M))(VEMX+j}P0r}Jpf-G7t9JcKe6-fnJ(}CK zVcmpdavgFD{qpr9wSUT5_Gm>uN9bSN!1gpNg_cN7z~y z>{zyalF{Wtj%mlP$8oMpIezZB=kvp?cK7*bywzXKU>EmZe0OvB$|Fm++zSd8UDo!e zaQ&jgZZW>s+-EJFxa@1#A2FlV^PFlPHyEz>V&Z-&I(y>B;Fe{Frf8b4dKD4)+Vqmh z>ec2huNB<2`53pWxUamqLi^Dz3;pui?{{YHNdK4L_J#j-?<$XMPm>oyz3gW$CCiwf zJ+FCVeY1X`-e&h+lRKpqZ@9yim zr{aE5UOuN}&;5L#3k=dL;`{{wMjfMVD@{Un*o@KXc6q=UMs^j8_^Xq$lyF>*xB_&HcS2rQ}pre`$Pl z^s;01pPQ}tl9%uld^df-C%NKj&*m@6jOlgF6BJi|Jznd`wJEUr|6AE=tz%ctmrdHu zyE>Om=Az_2?H=oUud276zkF5v_mahITFp|^}VpYPsd;n#f2HuoA|i^$2y^Zm7RyPm$@z4Dq|S>z!x76C);6<>cO{+M3> zHoLR5_1BX}vgfYY&rg_iebU;l{@!otMPJi*u`n?8xtGXZqL8j_4$^@t@<4i&5aE&}ex+UGk&#S8=|F>Hj`{+m!LG?PA1zj?ELZ)^9Zzxc!rF@s^LV z`IB2-W_PzYopn2}eMVOQQp}`~MYC5r35mNZx+pX_vqc}s`||TwMYu#@<^S^Zs!9gq4V= zFOu84`FR-IyJa^cX8+xN>s3ld!HtWO9))FPPu#JXJ8Sd|p;gQbX4^HL?2* z9G_G!m(LUXuwr$b`>JP`ABr}8-5W3AtNQHn(q5CjTk1r8_FiI|#dw_0Vw#&!@T5)Q z8!ok9ai8<3`{WT{`{MoFd?GWJ=PMoGWfOL$Q+;F7udGVrvrJ#h8=plVz2Q%*p))%i|}oWF?b3O1EAL-ysT%VzGWIaeN-^>cZ-RO#xj zyr=>_HOrh7Ip0NzH77P_e<&0^oiI1_?IwNa@8^GAVCY;m<%;6bBUNwwI?QH=-^ej* z-(cdve(DmFf~@mS#ujCUb7@ak1nv0oLFW02NRJJT^P}cO>Ad7H?*I6Qdu#dj?3_d^ zrDbgwe@*{3hjXp8;9|zRd__J}XQ&)1dJ^uSwDbW>qWkv)HAgkC`(`X{Sw3m^lkR<% z>v|S_*?2B(;oo^jo*lN>rWZZo$AX`;xWA`=?Vq#c?_|COE=%`tiS>(g&6)V&jmGm9 z*G$9E8~xro>u2ZxE@`~4r=D!on4wxfc3w%X>)XD^<7czpRBwfSoEmd#U}vuuvq++}msX4F0VU2dj*t?KEc--|oX z{LhfQ_n&R{-|U=_OJ(oaYo?inUy)mXw>�k5g*tp-Go^vN)zx9LY~j&|p!in`9KR z?Bm(3-kshXCOB#Mi%9whD8?U7+xTOFWI{3PjL8u@^3-R|c(qM$S;_Vq$6cM%JlFY^ zeZF%4>zv@3WuJY-S9IqVUP;-u`F6qK>-8#op7JOj*vhl?-SPzERn`pG4c(?q4%J$| z!~KC)R@|iUMU@ZE$hN7vT$Gh~bD+OyrGnF%iEjUn}kold%B;qWOn0i`FKU$ zw~bR%13OKE_6l6_y?Navw!%%~Yq2}Kxu2k}l+u-(?oYG2@8xa3@$<3XDK?KMHli8D zA0?z_Rd_Mhty9yWPJ}pI`qz$H&CwCa|-@K$&jI@3f84?QcWz9D@zTh8)|PDh~r)7*PnnaYc2ZJ4Rw8owgpO3VJ} zM;@V*a@`Ica-JAv`O@=u@GI?aUe2bnyF9*`v4yduv20`i#lB84ZqMJfBFj~zN`t?s zU-bL?bKp8@5i{YO-B5?Z|S}t(LVNCmGKd9zJ=D+4K6s7GKsEiu0;- zIhhlWajd*@-Ihb@!ZK;U#_*tJGxeVC{n#k9zOAXP>1XxzZF{R4rrVr-E!}*zYJ=Td z!{vbwIF0&yLwgwSv}DxE_x;yacKt^dn5rqAUidpCRq6+y=foM$U45D^ z^gOOSy&}oR1}Sqre#bk6AGh4{;apg=c>k8U zA0rskj2pDXiX8I-^d>IqHrLpDa;C81)OlII3Ra2uDBRm%)E1?cDZq3gIC$FUeUr{8 zx1WCZs=8qP@yAJje9Udd&P=G!-F|n@+v~vx?SVw=p970^_H( zVir-^_N}Tfg4gRb{EyNCb?%E-)=HPrB6xHa@-asrSPsi};>{okkfaTh*5?vz+{DmAkx!36tX6 zX$88)AGtUk<0thiR`@mO)gQmHe)qk%A!&>4?oPbnu~On(?aghGEQ%9XeX?S>c--8` z@4#;FdqP{b`7Km)I2ExpGBxyr#O?*P{+1CIjK-VS=Dlp>V06}YOe5W8u16;?F$GvuwX8)aQ{x1{t5YkN*C{T-rJY{a@t+% z>Bkj4UgbUgI#KrW&#jF&NI6rq&;5m=3#+hfj17&R)8@^qbEcNxd>LN>t ziRXO{FWS`~Js>o5=G13@{A%r=)+L^oh;y4HBOkLp{dkkl*DT!})aNR` zkZ+^-3S(b;mh)eKYx|fbyT!GZcTb-nn`5D#<-7Nxnai^Cg~`krwXKTpl&dDL@pJuh zH0SB+u#NQACm)->bIZ1NowL4G_Rmd6Kf&CgJ^h!;o-gU^=6(99 z{bHFwhpO?k1#>eELl3`E-}H8Q{qpf{>)=8y8~{V-;hQZ(5a$Dp&26{QK_rLK7y%>c-g@e+lN-@80hz zx5!-aW4oO9f`7)`3jgoF{5W6iww81~Z*NVWfbjC;DhIze1W9>#e$%^q;oO+vk|z(C1NG(KPWQSR(xDJ%KhxXB!+2g|j-;@vuybXH(f@suzcH+? zyEglU%g!L12osN}o+a4}**m_5m$a-jz5L<2e4-8i=15aNyXw2~X0|q30{z!~Htp8m zUBvzMiqhlao$8J+LdqK@GRf9Sg-+0y$VWeotwC|Dd(bc0xhT+@F5o%RV;0t}Hlx zvHLH}=`XwgwY=^%tM!|Zn6oJURMN)-;lFjwjq}QSUbOw@)!xjnpztVknee)at6XAO z#P2^Zxt!1x$~m`W2Y2`48x5BqUyJ&4>5&P~ln;e_9_`U|Ij?(ca_c0`H7rRxuJ`j; zaa;K}?D0KjStxU1vEA`o2N@rFYt|a=XX-lm*|dD7N!^>Bs5& zk1b^EFD#$_eBPZuw-#-SFX31mY-PMIa_g@z45r`MwiLX)S8;4#P3;<4xr*mJ?F9?t zE?66>r|Y@ZFVEf{a(?sXU3Rl`Y%iSRX;u`Nep~JRJ3EtQGa@qQ_k5XrVXocBtA?ki zg!w9mUkW?&FPh=dE)R)=X6N3&H)uL>x#Lv-hW@08cg7b(((Zp%F3Sy@+s(>m)3;#z z`ySDW--FIHCA#a+=X;e{mht;r&B};JKH)EtJ7c%|w0EyQB{W%i7f;s3X9CxL@B5k` z@?vwugWsF)b;eE3b2=}}%~bx=W4rXDewjVu_A<#~DmQm+bz!;rE5zG=cAeCUR*8m~ zN$)?+b@~;q`hEBNO$wU68)Irp<-GH5KHTx3{mioU;d7f9OEUZ4>wH>wZJw%%Y4(4v zDON}H!XjRuI{kaYjb@J+naOFYKfY|N-MP`rYMIZ;Qxh-9OktQ@BJ6!bKhS`0h06ZS zW7_j_rf{6nn=*4o-&y%HE5i8R-@PFgSMZ*>T*m6kOpPu3zs#tR(2q{j6Y1ZdYg696 zgjw`?;k%8`?J_^UvhoyAl0KmCVZ2r#l&zCxuh!pr)3yc0Jg|{I-?^2mXIE9nwAYVZ zGowqKp6X{lNlO2B^ic1c-yVk5YyFj!{)ss@ikI%aS$^ftkwb4pXLPmq?9k9-iu`dm zhT*onMc+ox&)uv3K0J}ryZQU}oUYV)-uJe<7qiX^dnppv@B8KK2F)dz%ewU4m)-X> zU|Dd`Fn)dAqJ2q%A2%ww8&5xU?L}CC%JTtm;|^bn|4{xES8~tX$Bvna?<%F>;C5pqsj)tnMsb*R9C`LgKWZIK(#Yu%L%nY*xiU#DFq%jY0Y`8D@;y>z&%RjB*u z__KvR_xGJ~`lqP(<<>-9Tc!NwuZgR^Je2uTo2l{qrJ`Eyi?}W8cKhzi;*t`$mmlBg zSi1AVt)$X@CR6j)?8K;EgF;@P zH`@CP!?ybi2T!etY~0}hOo2Hm30EID zy(#fvI@u|k8Tr9Gr)`fgXYRx8M;B?#mzceH^&cie z(^`8o?WSb+&Up_urerO)oxf(jq~vTCQ@vBaf1SP9^)g9xn_0%moK=yF zeswgve2I6NP`*FmAIs-znTa`fCOc{UdQ&~cH*8hlqGh&g#H3RkCP%jYJFuNOw`Bf_ zuad$?;x<2cu=Q`N^XqL%Mq*pPU)m_D%Dys?DUdh$!E|{inZlc=js4CvSWe(%EAKt} zmxcSfE60Jaj3O65=LGz0y6d3%XNN_)%>8RG`A!R7X}DGHcAZOY{i5(!XSe^kw2Im5 zhjInGAOkOFYoCMvPToH=`LdX=`Ycxe>inubtUT@de)s(WIZIXlnF|OA9{GQ!ZXF^3;BD$I4oRp!7lT}-q;Gq!m0=7=cS6h z2bbMKnIuoy>G za*^(%P3HpJU#^@!Cpzw=_P+e|tNY^DYusACE{y+JpF&AW&%5gjXXiP6ce>8{X-CrQ zeca#AW`8$5)>!O2Gym-by~fFJk6%2tbwWy}lE|;_#Mge_-?u3GmLU6teG@{m-pZiW5!DjyoEiY4;F3G zP&VD(tRfY#D(8|o>xI|c+t)rldN{E4bArJ&^@oS{?40$EDP#f<>(P_nPuUz>-p#f= zNN=V4YujgYxWtTmGcH9+o#^eHbEx*wmcv`5&usa2bPe-<%gr1%v!)za$hvoj+XBOj zh2|zve_b0~)ittPOOG0@Uvy+<-Ci+6@kHf1&IkKXF@`xVIq%YNdhN8Er+TN^d}z;4 z-M3FyBH^=TLDTx_QR)x>e$INM^isCYs`r`3ot<(1R&Q9v1C=)M9^&=1&tcshm?$-G zp4HnKOKo;4oIW7r?E5K9dfyt^+w9MdAJQnCxb)-J$G47bv@;SgFLPwvF*m{M|*C{TGea>EtWJ;TQO$!nZ%!vKqdCIa+c~i;rusKE3KbRDB zEIo3zKE3^t!CsNK)2+{+in@4lZSrcXg?nDkQhl~wa?e=)OYEB8$(z8<-CPg~XhV&CBtrjm8n^IeWJa~Oye ztx-J^+<)GxBk$tA7O&RzD$jWw?E5#~opNMXw5qrW!{7I@?TtIzxwJgn_RVEK&-(h8 z3}ax(8%5hiYvO*`9sGPecAc}bsf72&*kT30pS-q9Id&au&DY(+(aLhv>Q}ex39DoW zM|I~G)#??R$Cmk;ivLRe^m}>r>eZot-aTFPbv-U}aW&zSnC=X96M$5(T${~R~4W)Agt%b2Pi@hE#S>q4j6#FEJx_k@-% zK7V+}!P3vudDN{|@A$KLYy0}o=Zx$V8}6;^yZJ;y&1!CGY^ZhWl|@_KMKzN5Y-4WK zKP%Xg*uQOah)~H2^+}2>ueK-kZ=B@1FCuzlW$dKM>z?zb#m!QxJ{7mA_T~Nxy(_-k zzv#&u78p+Rdv@YO%=x=&>yGoSk}gGQV3Dr~K4)28K6x8wdRId1QWRUrM)Vd#ph)=$ZTs*>ANHGfQ0nkL+IKw*zaEx$zI(~dW%!rdN;ZxptjwC;b)u1KXT zF8xzW9tkJ>TXitid&;aTubuAy=KcLPSA2Q&Ea}c{w_1Y>CpP>{I@2P%!}R#y$!5B7 z*Q4(l3a~X=zx?hxT@r41!PAC9+_fcF;}AE@>Sz$Mt;(J z1RP4-nDQE@|9;XF9Pw6d`7fQ@Cl`Dv-DuErwD-Kf<%Gj_**RyI zhKHwl9Q|`Mq#>2&DDASU-%6h@8t;`e56$KNcq=-HA?qZ#j(s`%G{^EE1ZR|(eF^( zGH(mkwI7e=FK>2Tf5GzNiw)M^dzxM^D~icI@_k!Q*TKW?e|CL(@uxuG`l5exeyuBv zUMKAGW});)#m$PY@0gf>hXvo!ylZvm%tcN6BSlxfZrWY@XJ6B$ALWN)+y7|1KgZtN z_KLl|RgJB=byfSLWm~In{rdie`@u#N&!5UR!i)+EI{$xu`Mo~sp?&-@;VrM2E==;@ zP_(){RiG5Oz+Q%ZDGkgl1`V?_(iW*Z+L!-=gS|)9U)Cycz8P3zFfNd zz#-F<7dF1n5fqHMv)|-*@j2mnPn_~m=&zs?NB5<`VV!Ou>X;+wYY$ny&h{$3WaRc&eD{R>e+uV*c9 zs`T@|EOJrg$$W=k!4iSPG1qtbh`4w`xzJ))I?9;T!+=-lvev$JHOh59uEX{k&k4UFw8~jo*FBTl-(#ni7Bc z>(m2n`dU+U7yZ4*xz%l_#g>VsSDtG*a&mpz&#IU2k$#QQ&f}NS`mH-QoZFc#qgi}B z@c!wOK^1WkuP49!Xs&A(xpr30PL|-wGv{v zn{Qv*to%0SQP=iF@#6_wTIOg-&y>Gb$hP`$(TDeMEbKq1J-zU>I_A5Y!xV-DV?|e? zCvPI0d^X%a{D(2o^-ZMCitqo}d&0zHK3jWtU#h|*!-3wx`zkRw{@OS!o%(**q`&u588Uwxf<$8*oljek=Ze3&2HeIlu`-0SEQ z)AOfJzn`YIywL2^-xw#=JKt0dCpyT=H2FqNS(Sd9bLRFgU-LP?FGqiKpUG^2+ZO48el2KXfNOP|7{ke88_a_N>wix6_9?zWyjlD!Xm^ zeQEgQyOW#_ZQ31D!}Lg}sk~gud@YZ8KgZ*9@8dst`M3HUOt_?0PzFpV03`X~KNxvp!T$`Z4*)gD@qzi`)ivi9Z;bYU}FiCTGsJesNj(`YK;R zYoS%w@_t?|du_2GJ7p?y5|O0~mHth% z^NM>lCBU*i@O{3mj+ND&1ESH~!ZV*%FKSG6dA{mkg8W=-y9;f*cfS_;DeIHr6q&@R z%vbdLhCx!(^80UhFuQSYz3kOLDRQGi+zBJ$*C*etUTk3aGAlQMC(+_j<(ne6kIrwC zbhl4wdCVDq&Rb@_LyC=Un{T^+>9MUHH>MQ$ugd$o;c;)2MaXJ?M z@H{E1^wMYbjn$>4mPR)o@=bfew7dRqUQg7`2|H4LnJ@90V-lzpC=)1mas48fMIMWM z7TtFZKJ+{M1mhL7H_diUw_1Br=pQjad zdAL}Pys`KHT5rGT&-PU7W&c0tZTVEMbNg?q^!=ZQZRRXI5yexa6C=6Cfia5Vm4DTb z_UxLo_GNERSjMhf_5Q-MT8A#j$>XjAhygl`S*Bn)=omo4=mb|p~x%u~-y$8emjNjRE;R{d2 z)mCW+s9%iSq%ot&R% zJO}q~-eo6$EqLqY>slK({#d7$_BPD+SD|#8`VNgr zLZW}(tXB`imUGZxS*y+Z zDfcT5O^o^|mRBjab<5iNMWXvpX^A;*JSO|2dd(d5O5MEhU()y9Pcze5ADaGI*E>{o zWz6}jA7dwXCU~!z>*gHIEBRKb`z!PEqj4{PYq&Jo9Tqslz932QTHdu!pL{MIcgek~ z_xxJfEsiTY`zzJ7le{m5vnv+)HK#7fSQfiDRl_mnS*x2wU_hM1n- zRikh`plYAl9p;!XeJ2k$$>rTTmE2IjX+fVs)apdzr1?f4dU$S~k7r*IDf5i~R+WKc zIoHMQHIts}J!iZV9JDdjkY(qR_u-sQi_P=;EWbxsB(?82$Mu-iU`@RXbD&aE)uD4& zWG3EiSh-(NqQW@#x9r5(Q*JMQctQPRQOcfAhc924X3gpyU%$1$^1JAq(7f=}#kZy{ zEfMBk$M31#oTtqwB7CGKOWI#UW8=~J7q4>6eK@1yY*P6ex7b_4TGMnEopX|9=sR(L zd6?OQ_I;mvm26vMWKK{1bv^sE;enu8Hm`nUxuqBVF^WhJXP>^i=~l-{{ogP1buR7< zdGmb!iMXk&HF~bhR6d}S%$V}4ue;ba*7x%xyTou+w(V=TI&wbEihgo$@wE$!UPZln zeJ}Gdr-~=jjN=wP;yWEf$~gnSo>4le^W)bvk!Qm8$2&UMr_~4-%{gfJiStiR#YCgq zF`MSjZOKXCvfA-sm*o^y^>1HJ^_rgEXuIUboDF6rhmB;UZ_M)hu=n6S>Dfsua`_v& z=SO?rjF_RawnW9IBT7wK}(?Fhbf zxwEw(|6C2v(ywC2x{KG{E@5aguYR;(?aN;bFN;~8rQh4bp;GzVTqUt=^S+lsvvwR) zc=sWz=AFkf%QDX+%Ay;Oh+H~fp|y91fUfDk4|NX%JYBMn6dy?u@_VFZxb{feCCRSW z2lsnEJp961=z{$pk8f}PE7tvqpEl97bz*JA!XrnE5~c-Swz`_LpKaUipPHioLNo=! z7@oelx9t0-^K{7>%s2|Ye(k7wJ&!{-H`SwKVufYEs-y1j&;h(^-hWJvM=aJeVA9wmwm-WtAa-* z(`{Y+&3~!KWGp5ptj#QZoujO0fA`)d@%sB2HitKCvTbOT2uVM!`5-JreYaGp>m2Fp zC)doGHqG+5wCn+gJ3H=WNHrO?a|Fm0du7|se7-VEX?^Fs38Meq`~NQac*^!u=;|4= zpIeQ@Qdh21joz!V+_gYjd9UZ( zSsuH^RBW1a#=Z@gc9`iePzqi(? z<%vaYnZL_%MX}Qk-(Dze;BJoiXPn9|WxLdiqxOUFyXAEivs!(=OjY6*qb(A+tQPPsnmUv-83i;Y> zZgB39ejML@qRrU-u-*OliC)<@P5uWbaFl512ju^X`tYK1$LIEy$=l!bEf9&)dpY^V zgxcSi1$U_b_+|3ZPRZu>vUU2adIPFiKQn!)`D)B`QQY9_CwoWBnuDdBN+*MMP51H? zyS6#Sc&Fy(&L|#^ZER*z8Tuj7SFbGR+vk6Ek47m=y`Xmi^JUi%rJYWKY4@+KcUU!V zTj%Se(PBA$FA|ru%1bt8<4-lJd5B z56bd?zqb)tcfsoZA5j(+(MSK!+oa@t&bQM2JbxL7_!76;1=kcmbESUWven>->D#Ys z7EI+z_!VRmi!F z#P8Up=}mU44o>{NQcdK$*5#sW50+fmA{rhl`eeh4%xY~;gFiOg-{>dNLl;gM5j;b8k^f9=3M)fA9wWKWecO%=_zMaxQ?67Nq^p3pk&f>XoYb6 zK#X>ZCk$f(-IZq|3+`U6!xc-Hw>#)0#6&;{eA7xu8|wbMjwm*Dri>Mfa15 zj(eccy#D>0zy1+350TvDxjoT()1STjSIvlC=*5#<;2aca@B03Tiv4;wuM{mO_wwyk zvy0p+r;A-Io7KF}@$1X()6)`vv!9#0HtHi&u%u$h@y$K8r9Q{m0|R9z2TZ%iJT0&= zeS_Ig_XGin^v}g-MVF}DYyUqh{ma+pxBCv7`ORA}FQ5NqLgNwf)7Ewu1rDlvEK)aE zBBU(3JiI@9^-baJu1oJQoMpWDEZj0S@vYtypAPno>&_}frc2G(bNZ%O=T&|E6U|^P{J(TE8m7SwmjQK6HiT%G2L?ltf%77wqGCcdU;2zpZ_Q3CB#v zN!|s=7YW{6AGj{}O_Ybu=IuH2w!OH!^yiEduYBLkmHhvKH~a02bMIDe`w{%a_=)nn zyh}_r>yEQtldiw?Cb6jI@aEU0&E8k9fB&4w-6DPB_>!v+pS~-e{({Yh`MUW%<1Nn} zA3MidnM*9pH;j$@V`$7Nd;Dtmp1z>_HoHC^js7XI$MbaN`3Z-Ym4@faF8)+w6KJ(> z;n!r?Q!tR`mKxI z%#LrdGUS-?;_`Z(r%7(lk3_5NSuN9UY<>TO$(0o^K3HDbebw69&NAuh%_3nNUj5k) z0o!agcM4@aIJk?YNOajZ*ASNFcV8`k!}&YD_fF_VVPoMUo{OtglDg+sdMFrA@)IrG zK2vnztmQHy$8OG)G?VvVSRAx2xIVpGmGRy7j=JhO(y6uq;9S| zU6 zduXy};*CfiW~XT7Z|8sI#jO(4_$wiIHuV1VC2Lu-oJ3h)2;BL`T6yJ3=i3&xFB^N$ zo-%!!#5L`?@QeCzyVpE73)ivNZ@Bk%5qFi4p_99zr6#x9#ofk7urdCpI*H&D@J z9&4MuS88h>OB8{ zLc+0V=V!^7-Robd88^&mQ7oF-`zT%H&g|v>LdW-(+%QdW1q!%=5 z20Nv0%eKmzxN&O4&FPYS7iwNUw(f12Glw(u*{7aMA^q)UQMrHW47h*436vG^n|`Oh zF)Hrvznz;Z=LRMIxy+dLOpZICg16O-a@6v5^aLk)-~41l&+Fh4?S@*X8Dbc4|8UJsLZ^V zX5DtcU-nzw9F@gWXQ$*<9(m*U+vDN1nTNOZKhe7zFu!{e+iv+C&0m)^T$MbOwz6?& z$D`00+VNWxmqy=^z5j5Bw^8ZM`J#KPzo|5ZZk^0G!-4l~eb%3|F`St6V zL;A;=nFYTU9J^TQB31Iez&|-~dh7cg#t)6|>%{jTo8&W*{ZW}g=gr=$(*4^sgnYuz zUY9$edB@ANZR;F?%!S`K|4m-=$?aQAzxQKnf4Tixdv3h(d%f?VLC=RZLh8z2Ei4YY zNIALr2X7H-=3|*5nB=3MvoLYxcV5YNhU>q#$kill zv{s&(WX4l&mdST%W4e>2>;20Y_VUH%t-s&n?ag~I?ERNV1=l@oFXWZoH#^xpqhZ!* zZ;ws6`xmR2--{K}6+F8*;@sm$Pi>PXC#04uyDYQZrd=bf@_*;&SjoAY#nwtS*(FLm z{&{uXzFF@XgYOD@UM)-a@%(-?&0Tmy%KXW>n^M;Enu-hTAI?Ob=2 zcNbqjKhE#G%_OeIlktUCm--oPs~rB={!K5FI6A(EY5d{SoO-|Z;sTe7fPcnv5wQu~ z;kil-zQzYz3x9arXNsN~c|y?lYG#^5x=(i6p)f|z^MASWKNLR9|Elpf>Ws&v{C%1G z{@&a_cYX4qz4rG$WkzqU+kI}%`+q#gU4Jj*{X6gN*WiMRzApWutmoezn=j`#_$~bU z{^XK%`)qRcH8@T%-l)%f@pQgtR8+^)_*=F?fq&QE)|cOM$dz+3*P1_05*Pg98%~Aj zEMax{c59A)?ZZtc)vwJ{e{9j?GgZlD;rt{I#^(FKUj1;p+qFXT3~z9c-WC0r$u^UJ z)YRTr%=**CxXWl$f8Wh=7c=h0DeAM3~#G*P2}p;o2Fl5 z*P-O<`~zV@GgmfTDxPb*y}npy){me1?8ZGB9@{VEzqY)S+B|8FUR1F4 zAHIHOHNI0#IkivOgbfZa{Pw!+aLm>&a@_$My+xH5JJaqjPSW(?s@{?m(;gSlk zYuQ`!)?Z7VeI|qX{~eKITlcaVXIwj8K9#YqV*0iQN6kHsZ5`okifoBHc5Iq^bkg2k zY8w^2e#dt(|9q)2*GzHg-VbxX#u?1%RF&B|&&+gDvA@Il9!Ej*1LZQEOLZ=b2)nqq z6*lYq)jC=hkg2pUp82~%S`v?w&94CM2`(zDb)dM%=UdPYU{rZyS>E+Ozk2cP$CDxej z&3&?QLZsp6Lwu}{Tn=;0bj{wgyL$Quo^RexH8Wp);ZbDqSXghZbd0U#T?-RCV<$sH z!-v1+44>AsZQZ)~QM{_z#~)uzPnLAdIF{&pBJ*mb$*Dt^6k3I5F%^71b#zl&;kDxI z+1!u2eHTi$ye`-$x92T~+WfjxGRJI}uP)hlF?;n{hqSv}q?!E9F2A|mvr9So`uXR_ zSLzAq{@=H{x8|bzrFAQu%7b>@4-1>(sm$!a-1BJlyI*O+=h%186MSJG$rs2Sm0Wwh zac^JC#n`!36_J`=!HfnQ?3zxli1L4H?{xUI?nCJ-iTkuJ#9UFdlTLRJl79Ym+i#Nq z>rH3cI^{0x?A{|d@sQi)Wb*?R@2*C__s~AwYk$S_{?zBzyQjNs(mV40nC-F2t>>?I z{Fqxg=k&4jpLYpxcQWwYT^5jR7TtEZ)-UGtcMB2MYqqw|a{^cGlXq26nXYwlYP93D zsK~e%9a;~0Z!YFI^gnYNi_*%7JF1TNzg)E2{WCsXV-QMu1BQCkh<;#Kv(roN!3n*P+)(xFK`RBf^sxp#HlT7#T)^31tfzW4C< zS2I(jKJQtx-Ay?C_BjjB87sDYa$qX4&0y_Z=@fGOc1ltCMpjd2)7H~z3B^kfP3e|? zxW1tBy0%(1quWOp1i(% zX{(2S+3UNt1}B^K3h$L`{+;+G{Iy$>>^$e?`{pV~tjbk*v?8*o)@kCCbyCf?ljPZj zJK|WrzZRV*Hre)1*!&sy60DWi9_+vTC7_?Nh&}LvuGXnbY3s_imZ!gDuiC22=~I1R z#=a?WG9@n=(<4kK)G^F^=F#L9*D)!?;Ao3&>DJt;-TqvEi>7bNcN0C?yr#J=u-$b> zpYgiNP0v=nVB9YL%tZe8KiTJMT?vmbK1#4ZrFX1D@MLG%De$fp1$?#4*F(v`rs~`;9s?AK5a*fcZJ5ywEoiE zXPUT8V#C)955jJ|`&4+)HMIBcq3Z=_;?paP4(=0JcrTsbneD`j+VYJN3}0-;H(r_a zbDFAdlCQbQTCXzy^)CupFL8XH?i9X!$!5E@i&>|C6>d>-PJJ>l*Ye7-1#tnVrftsj zFMTq1dDHb-9!Hw5n$FuTYa_l`b;?v~|S58ZP;Kf8Ui_2~<5qxb1Jr!$Dg_FN0|KOESlUa(-tPun|(4ZpkZ$Kcq`s_W__mg5(SeL-;x7~q`S-uqD`1ci2=*FzvFv# zdXd52{dFAIFMoZez_NMPR4%`QS>F|vEFvEVD;K7N&BDSCRSBiRQYybI~@@Klp%YbWTR|MR? zJNEwm80?&|wXSh%V+8Z089fm-h-qg4Cu*9X} zy<%<5+0m0WTvf|4ySwF`-`*)2ODxrW-#b5;D{q;)jrvx5&{W{XxS+UkYGjBoClgf}^C7GFJ zyeC5U@_HWqa^=|EB{d0Ln~qm6FH!dAJMewS|DcpLKRWNY+j*w3Ct8&}64JiXm(R8( zb&2(_z}>es)>f5;Og$tln!a$?s=GlCSdJ=QuPxO(xw2v9rnluEO)fNi@i1L4w~_m9 zxw`*h|EQ`%#^tUv7M<@i)iW*3KiTvB#-98y&O8zGtX8eQ`G9TZ3ay2TYwjE?OJ!P- zt@pckmU&O~TuIrc_x*Rv<@_HStgSq~A^x`S{-z&^?it3rv(x79%{nL1zd1uAtReSP z=DdSiYc#es>s>gqlu1of|LB4*UXOJjC|C8~N>@BIz2LRXyPcg1e~zdYS$@%DmIyvA z>v*Ef=y>3YUbXENC)k~*PQM+@sodo>=Yan`U#FV5q*VPIkGE(hs`lr%Z9A86 z|DS<(%rA;A`d7W{o51X^U%$+q;=pw7LhXU=f}TNz*#=D}p#g9wlZkbQ`ec>+azKP0)Yj5n$e<8ivd0NeGuA9%8&R=q3{%SAi#kEs-IahjW z@=|EHRh5bq(x@vG+kVrI{CiJz+M zJ<3GR@P%!8pyTJecT@6vhdmA2>uS6=Yj$q(oSW%CM{x627BNegNvpITdxb~ONx1xW z_wJpXn@#i|nX*miRsZ$+uzSe#vmf?PS-vX&jB)m+tD+YoHca~au(ND;HlzNh?Ft7T zl$8l@>2~{NC5H_jGw-!ipQtFP@H6N8uJW9yMwPuL>Mm&_zPDfc zaWROkR^XZF;&Q;G#Cl?x0PTFSfTV(zvc+{$#=Z%n&^;W$}omE8mKn=Nz6@zU$k%Hyg#A~^#wB4 zg&jD?G4b0~rq|8Nb8dW}DZ1|PpM@)}9Nr!6T-jQq;ue{eqBL^_yHdgxHcpN+n;rBN zuO{5o%()VrckF5A&f8@jzvEO*mLBHPIn}~&L+0#8k8~CFbD^u&-uTv+5b$rE#oT%E z96K(o+?;akYNxPs{DgZ4PK4X+3(!~4*(tQ?$vShTCodMAKb0|W!|NA0VO!6*w2CUl z9C&z4lXHdRUjgNh*)Bm7<{wE_smyTM_V&tbXD>GczeqJ_P3O5>#n&ZfZVXB>%vj}~ zc_G=|Y3W9{*}X>dv1SycXr+*bv?$@+svOY zN)TXu{E?yN{^dS^PtCh3UYWmm$QYTec) ziw8aYy=JfSc^CISA%%^XV`_YAzI|MCc~OmhRmI1$-VV#Vi&q#JU#m8;JpXR?>*_9n zhyK@oT^By#U0{9Wk;Ain+Nsxl!#sLDK4%9UnU@Vs7Eu_@d- z^w<>1^}WaT*~Tq;WKvkj-lqCbMJ3Mi&UNARS6$~WtkLP}Pv9*(;QTqPZqobnoN6Vi zBHs>)-3-wTjPzb{F7zYY>oX=t{ccsKvCLQ*nz7~U!xjZj%O}4#zZ5&*7kP%W^YMce zL9Z`2yCi}nr|(W@JbgN{RXgDPiFr?+nP-H`Hd{||ly6ZBQU1L9$B_ba{mo9#S1rAN z@uSu09QlO@4yk_e7g-XwQKXV@seH;|ugZ0O+jfO_M+Cih(8^ykrC;mob|}nOt4(&}RNIzc+LD`aapkGwoLd+l6`7t-Y1_yScka zee%ia9Mjn1M2m!?we4yP)hquWpZZ`+I$ww5k1X>Ux*=yHSs22m2z94K-V9MyKiS;J zZ^)W*TJFiT<_`vQZX29^aqolH%k|CaQ5Hv!eCE{mx;^KE?Bi*N7yM=Pn;oX?lM(xS zVJLUe*(X)2HpOiT44Jfy`^nWit?!-69ECGpZ1&YtyIZB1AKMgP$-sE>)2>@yO}|>q ze1zJ5Wg13k6$f#aSFpBwzF3>XT4;U0(fYhO&o;hf>*bf_WcOX!pPgjJ8@x^@P4_)> z^j`DysY$+W0WFa)k1ucKb#Hs&{<1rIp6s!*jiyH??L4>N*u_9a#xqT6jUhLC{p0-8 z&Ng3fpIWF<IXr2xWCdvL_@-FPJ5||KdZB#ku~X1#B-Vd?BjOq!h*B{S`Ih$dGdvubMN^C)Ejf8*-x3Lo?IooV;} z+3;Qnqkd;Cfx}SDZEhYc6n#%@ylC)#s}AAmZtn@YCfzn?LeQ%@tq6pQF6f zS>RjiuP#5|4}Z*ionnsa{rTJP*2&n=@aIQ<;uHHWxBqiaOHIuCC%B2@Rzmi^s?AlV zs}%*Cv)U5W5+xnxZP)mF+W*qCM}Op#Bc)>fJ@Vt#Zhmh&BsF#Cw-@u(KJeX%$W2dv z!BpF3u5PicqQ7pvgo9 zX=~)+B@toI%LRNtPJbf5bfIYK6_p-;xexslEHjo#Y?$r8R-r&-p0Z!$eO049!J*#l zlUSryEfv1((5V#EJK>^Nc4C_Qk0-wkS+sVX>1k>BuE;FX{e}NqLuX%JK8p;$<8_Vq zAL}Deeye|P8?b*zV*NVTi@F!y7dFQA>$sT8GVM)TpmtfsXJTaO`|eqf3I*gs_bHe< zvaHB@!hd(( zrM1a-W<<*G@D8`T{=f3b-M`O{Mku}EF`Sz&Wt+O`tDVpPyopyEzn_ctY+YN-`1`GE z&u6B0UsKj@{P|IP;;uU_6@snXc5%P|)wSxO;jf_hyywfm2FpJ`r`2_K>B{`ez2V3D zT2&i!IPJPU)E<@fhOS+9>cJAOS7N{Kt~+wH?eY5^5h4*k=i7$dI>;ia@i%0}johMd zfjg)E6>d>^cC=^-bLy=w|JREO9?kxwy~*+8*{@eLCNEj{=-hMD$bh3p)hFvidlQbm z@oE2U_vc@rsn!e;72mKxjrEIn0^+{XzgmnhrhKfJK4Wqm}dd#-VYber$=vWt3mXJi`O zm~e8d-69X}6&8v7CtB0lG>qK;SFta&P2~S~?*93JZP({rdyt-3m2r%J=UI)6=|@lA z3JJPy@wbsP^F@rP#M7+fLQYc;{Vn^Eu}0uyQL|3OgQbd!UIDv!E_mM#+;#HgYfj&z z_hky$r1qV>`g(8Aih^&8qz{LzpK@|av&mJ{Je@6xytiy#uOBR}E%*}^xpJE5BV)}EEwi>qGjICi=_isW z?6+^DmF4AE=W?oVGc9ZWyi`s6YW0^>x6JosPU(7GEP@Z}G?z`tfy1cjLy%U%Jh-V39KIbSk@nGSUm%VFEu4P)xWtq?K zU()gR(WX5s*;q_&oZhKzKG$0A@MN8dzb|tn2pl(^bZ+vtAOZ81Pw9`^50?ss*Kc@U zC}r!d_RpdC#H!L5&IxXgH`0@=pW5pYCSLlLFXX!D;pdX>-!=OWX1rTI zTj%WwS-aT1?>2ZeMpjoJJ@w<*HjmpW=WZ|4`C+kQsm2$9iqCzf%gXYe>oL^;Pke_031Z^X_Q8PgK0+ zm2iBw=Q}fQSME^m)bGx%W)n|%q#W6J`9}AfFpj%_&nle#?(?SX$$IPE3IA0OH~shA z(xbEHe{f&K|I+vi>YW9eoWJCYT;kG06;Dm=YTd!0wcSi#+~fIT!PL8D>B4*0{gp3L zNm$;OKP6W5*7|vlrx*6F?90rWGyUb)7n`cMQ$AWHr{|=${#UxUynaz=-V4=}ZcqIx z4!_*KXy;x%^`)xUC;WfEN@|0)Ts89g`sH5ri6i%?O`108sm%Mn7lJHOdNV>r^jcM3^qMSP?w~p)Wlhr3 z)br0Ho~>N0BDB^nByOK`+_p(8wnSarxN7g!(wj@%#YN4oRcQI}^UPgxStIhBkL zZZOGqcjUU_B7Vl+bz4t#9pq`StxT!aWX)uq=5vm1zVi*Iian1EYv1*CMyH=O@Y*Q* zapz7Mm7iWed9R!2pE2C_l{sx++~Xz$1eI5AHRrSY~!pTup-*2S*O3(X{a(fx;cf%cG&slz_-K;FO zD{PzoVajehj`-KSSx5G9a0%D{S$k+zb@V6Ucl~OfjDO5af6K4Prue zI{hh^TUf;ZS8HcKufKgt%iw*=KBW&S){pAWt}veaDC2icwe2O=nQtzZSMR=cQ)8>? zffI`wpE!B<8|_=$8ydajM#|!y9=(q)78HHB|G#-o%Kw&yfI`Xh3*vlM3b+v#N}9@fYWySZXU!0)?~KSVuU zUVJL{Zn?*>&#Tb=IrH!BHPdwVP7}Sm&%*0qBIo2QsYbo$kEx`eeyMkLb>B4?_3)`m ztCRIPP5uTy6kI%^dH?N(|B^*NRhomHx{KsKTRzHYob@;J#`)v9_XI7Lx*uguijul` zXqTKE>)WeYm*ZY%8YCxAtmv`4#`jg)+IIJmxU052uUF5Qc&K^z#jmr?(;u8VoU*WM z%f+A*7bL@sZ!5LDn|CqqN1mnT`xlqzs;)Z~Db;gG`Jgg)L!r#N1s8Rv_S`x)?S|4( z=i6$AcQRyFW-Zz@U-er@iq75A9ihcnlusG&;jJ;*;r{crfOBiY{SU`)#fW+=xSO=S zf=y?l{Nd}5es-<*swusi;qb$=?ZD!o=;L3+y>({I3ix$4m-EcC`44|dI)9dze%*QL z`t=X45|y1ET~Zf>xWy*;Fa)~#i)79&d|;}lE4=Oc-YIJ{7hg!Ke3s)TQYflin*OqK zL#&F)Qk^qqtA7XZv`KgW=H(2poLaFe>g17x8i%j5^c$*fOQ)~AmLts&&6e@-xvcrB zDHa;r&&?7mpR5ydL2GO3sSO>rJRf+3-zYbfY5iaOo7+{vSJqjfH(+(Dx#V%Pt*@qK z|4rC`vFTWd^9o~+`NlHqww)1>;eTB5K>GQ?)yEEWc$yqZzWQiOCf~i8M|(6AxR>4A z`*OSMf9?E5tBx;Sv-Nn1q&vIYMz&_v>Z5)g^AkT$`r$Oo@Hd(E7d2ro;-2cWuH>+ zv>ob)XL&zgFe%Axg5+fNM{grGinwX4_X$}V%z3Jl&G*e3ewT(wM&)Jm3ywrMZ|MwW z+qNmlqT;6Ep<^F+nKJq=o>rE$6Nk5wc=EqJ*T9rweuyX&z(;_|FZrz zu1TN%HOZ=S?gXii8zSo3lQtC@Z?E5bG^6H)9H(ygRp|qcieB%}tk93Pu-m=pbZJXd zN6Pw%nu}8{wVNjL7|(ii#`#Z>)eVeG*OhyF+uSubwn3@6dtU!cE`PuLyyV{BU+RvZ@Obyz@6+#)%~|IvuZB+L z^Iv^vPld6{?mQ0F%D*PNZnj9e{&7{|?LFCk?suHP%LXP1%-}_2~EC zUtCwaXP$j<^z>%Wr$=M<1@b;!livEyXz8&W)5F5-+~FaQ0^WAnSFx&AeJ(B&XFT^% zbKSQ&^$co8T$e>RoO`3%k>!?rpl(WA?fTx`J`CF`aI zQJM2fzTxi7S=}8MA`4HQ>zW!-WOQOmUGd&urjO)Zge!Fy2z+=euwkmJuw|P{^!XjT zHfyh2mv!cfkK6_e!;(qsOOD?1eJAey?djbGJN)9Z~ z(ry{Mj!1lO;fc69VR6^yUAGvS`(^(A<2pHO{|e6kGeaVNOLToS+AH!$>6cvV{F>ih z0n6v~ZYa~fb!ef_62=9JUlcu9C#SkyJjlCGa&}PtOV!y?Pn-FdEQnqspfD+@X;MkA zPpIE^gQE{l%wSG9^ZjAAwQtc5rVlnc#=9m=S~@9vdhDqWvZsxYhn(R(Hc_`O_i)Ke zm18QJ&R68KCKXOkaeKS3<%56LChnz{S(7yCbf;=C?COe+n10K@&->7W|LwCA`qd)q1uC$bWpZd%D zn*%@R?}`awC+fb{ZIJabKJuAm&!i>M#m`MscO2OBbrIji7ku8QwH4Q^^rTA5IYrlP z?|-6nSL2+tNMA-(QuCULbIq2?=w$I-$}u_H6}0!F!|SuZ>i_04E}vB6{OvBN~~&CmaAk3Y1g z`=`+DsSjtowcUHGV9w5$zrR-cvo~yWe*g84xbaHEKlhD<&)T0^;`-wM#F;#QC(rcw z-#oM9|LmDh3O@f$R8#t&rgo@4UCnX5Mt!=PXV%YO#s3r3G~Ksc+|>A?YHgvIAls7m z6G16F_xE}{+axn{=B1vfFu{<<4^5k%TIcoN`6ha>WzMcraaDC6oe#~LB0gIiF7f@o z5F=~2fPeO)x2D><=QEanz9+TlnANIj_Im5r@7-;c>TLS@Rm!Scas7J*MOUv=KKEG7XswgIL$%zNrlTnj zvaih9#52vJX|ZIqict4f)=Lw#Q?>}^6_}rh`+TnElreiZpZDB|+b*Zo56CTzO1xC8 zt$tR5_j=b&mBPe@tDnZ}?BGr)ki2d6xO9`r)#&9fuW!F4cKWcMLH^x6jq}>Cm+2TU z-E(Ab7`v-sQB510&KBt(=PUSkHUDgG{v#Io@*Q)#-tv|Nk!&?R*+)uuf6u-(Da!M` zRqvgJ30GrPucp7reH&f3@6z^JZv@z_XD=+?QMpd>Z`1r^N&Q(D)R&px?DQ%BSDN-~ z%N73n{6aO%KQeL`zsQbdIMij(vs9I@WbfjJzGDw^j(^Kp^5Up$hFngW#f%wm)?aA3 z$!}Y*`-SqHhN}ziOFFX3E;_w?!@M-v?-_xIVw^;t$;E8B^o28C_k4ZCx8&w8Qga16 z`h2$CK2g%y%A~m{^Xl1$Za;00`R~}AGT&Izs@TE4vmw_+Wo^*TGpjSbCJGjr^~8=bxN==xh2+ zlR0eOCr|AYn#$Ru!EH8K_JMKwOgH8&E1z9V_`WwO`f*r->8(lp2_HmXS~ZHYs-*9{ zd&@0(_Nv2~W-4FbEWN>Jbbfo+k$@$0SMBz={`Gd~rmH-q7Trl!g;~vCJzUkfJKa}! zIC{v;Gf$m7f5xT9FDkf}#(z~@u+#k4`2az$1r?@`%o;yWe){n8p5w=bE6zW#oa3=? zA9F;MT_AhD!Bv^Rv0YE*%vIjC`L@C#4Zok$4V6nOkCk*s$TXQ9DqjEMg?sSUaFOe- zhn9I9GYjzJ^nBm$9dqWzT7Q{6=O1jmJ88OjwZz7&r3b_d7l@b2Y!pc3p5UR>;QonQ z#-}HPol#J2%Jh|YE%x2`-Sq9xxA&4t$D2DYnUqPoBs-NYJb8VhhQx)-#f}z#zgvB6 zd{gw7@n9q0FBxY4J!j4Y`EX3-t!(>sne!u8?}~Tw_j~4O{@T2-DWWxCw z|6ecpz20VZ)xYbhbKYzG*s4+?SR~Id|KJjQbHCUT3DA6|$bX@%``Bn=c+M z&f{tRDP_D>}9rX~e(zxT04@sB_U#la9dc^JWRW+_za<(PGB&65R^( zzns-wVw}^}~VrYqI4_C+t!R>Uy}z@kftL$4ArS+h<+8)_yH5>AmLVgD)%%ZeM+CzH~-f zt?6^q?Q>e^PJRA5Ab<7ux{qI@?%K_re{4ysxJNXXnvp=hNLzFMi zv)GG=cr;e*30nATcHg=+EZUZ=WlL2nUT)y{5u=!R{e;d1%YdW7JGI}vWmx(6XOsJO z6$?eb6;qP}|9xKO&?B>O?L_W_vx**0oOP~p!(0QN&AvGgx4jHeuJx`sXqg)5(O~vW zX>~|=M4Zir9oyzq7#<1zyV1I0#}DB?eJN|PHg9+wyI43dc8Eh&3JG!za~_s zkDKGa@WbWh?~}g&P}nPV(DNsMhuCZjUm?e5QfBXO=pE}%eOY5T`|vZ1`Sw-cj^EW^ z&Z(LsSGJ_#gYLKGe}g}L+Bx&4?4p@oHD+i1zV-Y)edKk;DyyB=nkPF$7z4s@JBPGN zzt}ce*j$|5dc837o5z+dihmwl)LyrXr`}C8_z9!AxRI$c;{>K7T&oIBhH2LFR+klh zX_=qG`a)UbAaBgW3kt@MzL-1|aFf`Oa8lc%`t-5+Exnb#@yFg)S*E<6<+e5C-9gsn z(LMYgsysX-8kJ**baRN^=LkZP!EjFTY?~GfC-u-pbWKrF`vo%qguc z>5AmKE~M2Lz~Xo#{9C1YXW_K>!g4G{V)i=KFXsBZOG`DWW3zXEVI+2rRaV{Of==s$ zkgRpqYqisl%BNNyUAv~%JXkK`KwLA=b#|q-k-SNY63QZ-EAr2N@m}}EC_3uPlv(_` z@^;ZDgGHO%UQS&u;r1z`b=<_BF=n+_5Q%JVz>grx|TCtWFN{ z|8nb3(*L9h^?gm77x`DJTo<$MPuc3+#nQHh@BE1-HS?6>%meeJr@TGEd)fWjI-lzL z|EA2W&L$VT4bRMrKJji|*Cw?Sm%J`^#5X%KZTfAs+Uk`1Coy|>hNaUM&Nl1ZJvBu- zTdMTS=Unz@4|>x#T)A*@m3YLW$5!(eO3%sPXW#tv%PY1}>7q}1j7dt1k`3}M*IkTz zy6()}U#nY7)qZAevnt*=<=>x#ck+dQxtxk0mG&41eK2VI7T8%Iv`n#9Lx@Wzm_hRB zi?t1B&Aur(e_9pYHGTc!1x{NejOD9X*M9U8U3!4W^7ythFMFTo{D;kpL(pbhfslD+2Zbdw<^)cw*(s9cI&DfBmiwc_kv{uPAMPmQj>?75G`Mvh09#GDIy)pMkv5EQZZ%d}b3Os+u-w4Qo9W!#d8m;elni8Bj(ESs*f*h zJGd`#eCXb%>s|IK>SoNpn4d9)d*|JgXGtj#xFb@QWu4FeT+^|UDqQH%eq=4QB zy%Tx`W`0P^cq6h?!0&GM86-xs)Gf=P)E+oULsBX8p- zrhA7kUHZc;Yf8r<^;W)J>;LE4fBk1N&+z**otowKZHwK%*_NLyO#62I_H(nB{B zIs3Bo?zaAYYn`Rfil?6s6<@RbjQ0hd_m`s$1Lj*Tah-5?k90!l|B6|!3ZzelWs6)t zvaWY-j*Gka*7cmL59S0uTe??K;KYKrNAiB`Y435k6JS~S^xu@lQ5SQ2ygfmqIGUO!dy8<-`{dJ4VErOryu^n2+#D=;qST~*fXBg!j$Kc3Ar zUal}r`i1u6*{yDK!|&xa0XYVv}S*O@hIO9IPw30;}f$;w9C z68B8E%m~^xw|#2KW6s(S`~7*c_j}$7Jsk5iGUDw?JJqAA zzSrF6r1gIc+xj57X?xkM6VcAzIy)Y^r_20#Q&#$}w|eK_QhRld3C4FAV>jPCx$*0o zgyl-U*=kNN-DYaB9urkKcO@`u)smB9p|LZ~`16wc6l*&?3)bwJI%TI2|IxWcH@~ei5wl z+shc#utRk3tO}tNV&i@3=P1TF;kd>gh0zCsgb3*$I47r=R{-pZ}oFL}jCd z$<5-G6Y6{Rt^3gw8M8&$eeaSp7FI%6W@w5ORF}4>MNd1#;nuoN@Ayt_TVyIO zTBfYA75?IKPet*uSX^fhkL@EbQDMpIBX2zIHg~dCzP-M9(NWKtuDo9Jw=Z>jH8u6K z_1zsNXM4@EcV1$Y44V2OE%xwIy$f8N?bohc+EA}|$vr@*)vjR^D~tH8G+}um6ScJu z<#d*==t=6WEv-^_-o5kXy%eeXP1f>$wor;PwZ%bB@fFa9%!9ZnjaJ zcXds~qihuujoPWXoyta+p(SG=es;&sw{rN0(+|0LOcf*#amt`wOgk1arGkVO*97WISR_*6M*7Gle!`?)A zbIgRVdrRbZBryGmoy63&`QoG2sYg=nUfvEZtzDdS@_p@^ul{Ev+6vhAE!1w-+aRg+ z&GSdEwdl4do)a{flk!xQ9%%)=X6;R>`gh%Mw)~5Dt5^0dmEVJIim;x3eC(`M=aj|Yl zXOue4p1#X=J9WA@w%5alMb%>V#E!Qsi+eV&d_48pG0Tdg_vcMsG$pbf6pVQ^YqR7D z@2%Z4-9D_&p19(~{_FYI$#!Yy?1+k;Hxu7qd|6VeArzzWJ7njl zqjD?L_$+5HWjiZZv^{3A>87;hmf!C-Z9gMio%7dMdHwp|SuBO#`d@A>zxwQUOmN^l z!Hv;((%z{>H+DK#?PzsWJWw{h`{%|zk31e6mDlC|Wq3YM)8LxiJpO-m=1X3LzFYfl zE{F5I)ofSF%AaIq@#lL^xF`^;ta16_XXaV_Z$H{GxqF(ud9!v!x%Nr9n>Bpjqwb|w zF?Kr0J>nHeK6GQs(I7=`RrbBohpMCA8BIRo9`nk)XyTsY*cGa7o^e|%8tm4r zD!gW1WVhr~+{T?sPMIzNpA%wvKFdgcX_r;}Cm44966E`Ykr%e7syU`JD+oZ zzu}zOt9kR<=e_qa^NRR$e~I|-^3OK-d`r^dN=-}-9GM@lZ|A*Dad#g z1f3{8%lur!wdC2QA9s&P9ADJZQRl(uCoW&b-)DN{=oQ1qE}kDPL*L46%E{na^Wfc_ z-$6~jr_#)(axu+yJmb#Kqnh+QaV^{0-hJmk@$E{|xo*lQ+bimEt+pv`>P;6J$%)r5 zuRF>0{CBLnK*$bNmZJ6bfe-%svt6Y^Dh(|IVJ@^2;VgDeX((um9iM!?nMAhWS6mMXCz_kN-Qn zziZEwod@@uF{z!qq136=pCkQq*Uj{*l(&+9(lVWb%ly>hU1iJiye%O<0s;rhcC?&kK7ab(OqUgVZbvWUY4DFGI#7A}y9JaCrU5%7UEqsx<_koe* znzvR-A0_0T7(aH{d%}#)e@^vc14qg zcNf_fra$eveAUU=c#-Y&W@BMp>)dZXJ^Xjv;9ZhJsmJ()vk zGo?&U-)^7Z;xhK;C+j;;^q!c1BU+&8fzhx1(^``RBv-~gX88MHdGoKM91Pw+6qy)w zUL4wV{89hCqwfW8EY!Fp9O!RRu&3^KxU)mJ9LK#6zn=P9OlM!aeO9rTw(A#{Ys#&c zp7lN75H-oCNG5%L{A>H3L~i%T zE(Zj^R=A&f=gJ=SN2}wU+kCz=dOzCutk=~z7geXf+SHul?pt@Gd6$#$;Z%WnH`VVy z{x{VyKXl5c&XZwHoxXu~_Ph&kZaCOeK1X4-{=O~uExjv4&KD$=`u+4>WVx!~UM%lP zVQ;}x%GWAb#e)>jB;FT#%AuWG+f!W}P`zH2FH$w}|B(k%JLY^|{prn;kd^%`G| ziOK!7dWRO;Th5A$J(FB^+^w=IY*De?gU0FGrcGJZ%h!84&Sum38x3(Wbqk`JLtV|= z&DnQ3MARRsHwo)6yBYKLb@eXm&c6n^$JZeEB9*qbF<5vAOGC= zUNbG>d+|TDkX6?&FdllY&bgcWkMZ6Azb}Hc2=t@Zyz%8X6675~cKF?&bv>cdm0T+SHGRU0 zU+J^$^O?WyYO7f%R*)Vftg@sqdR0XJs+$+yJJsxeaHV}=@N`p2y>%SR+7yi+iHEM= zt-48L$Aj6EC647tZRxpmTjAyMGbYP&*FWY_3!dNKuP)QDnlZ(G$M^EHov(RMxch2O z^_?i9<<=VKPE*N&d~$`<#`?3vlO)%Pq9F#YhgP=HNd3dXE3JZEV+_ZQEK8Atn8&0x_MOP|UZnzsJeqsR5aw=-ubKfIivy|A%(b8+|71BWzq zmfP(+y-u>N!BwYtx3Su(1Ap9Ry^G1ZQhDTC*)D@!|DOIZ5PKFU$GAtPZcg`ErRG@| zHO?N+-%}Z9yO+y)$H8-(?=fFEDt&a1Xt}(0W^=cJ*5|pON?5zAG@q2IK5dgYvqAS> z-l41BEye#dj=vKsyrO&g^gD6&%L%d>Of9K19XdVvduCLb{her^e`Rf*WS*(h8=bAJ z%XY11^xSoL=bpk{KeedGwjrxsQKi$6iWZFwy*{<)u?D8%t>qTo!nC{MfntVe#jMpIl zKLz9fARiP`uE3v&0ncGqCK*2b8=;RS#x^t{1^Stb!%J4pA)gX zMfTdWyQiG~aLkAAb3~WUX^%$b!)*pf&+?osZ}$3fyJ~KX?_1x1Y95jOhf{ao@A<}b z=Kep1gw-BDeyc}IUH>fB{`m62C(oaMG?Z}%QAo=?BaBuxAh|Ky>kqN&sV1=s&1?Ow_E-C-m zXIy1-E)}+2uao}7m0r_s)6<)rFA%gbv!|jr|KF^R&n8{+D`!o7c7ji>POziOo#$cO zRIU}roIa|AGF-0GwLN`9MD6|AM`ov_kKR8Mdv$&6nd#3vWFF|Y?^VlQakop)Nuhw# zDYit}z|5#n=Q6vaZQ+jYXo;LjJC=r~>8h|xJzaRm;Nj)pHSOE_4GlQ2F*S9CPrdOu zZgb2WhltEWx<36|-O{~H_7p!)6-gPLiB$KN%_^=G^bo;iK>dYcW)e$PKVspr<4 z8}I!i9{uq=wd%ib;?MQ*-7jWGOG^K>*3SQTHF(Nl;o5ie{(s(THr*gPvad!(MMpq* zC6}GDpk9B&mD~4!? zlXMrx@oo()Rnr?w{Z`L7 zFHxtxC*vmbp<7(b3LK|@FL;rYE9;pvlVj?l=Pece^HXQHaIBN?i?vf1E?c>=HQhzL>N8Wj-7a=vr)yU0u0Ikn z+?ZhDr?_Zmj>Co}S8Z)itd+g_ct^N;s>Gzc1GzFPYSM`zUg2*~^YN~m&~<5QkxhWS zK<4EOi#Rnd8rOHk&yzLU(=2pk!{ogW7b zl#~sw?|z=!nz7K0Ka!oVZ~wVH2V@Oj741>KtFXhc^0U=ZjXNH9p02H0d@Wae_tX&0 zm4}@Le)yP?8kV|4QE)3WA|Zm2HHKi0{?y4h=C z*Sk`c7y5g*FLB_%vT)kLvo5v=M9xVVHJ8kqTl>sg-2CfH(N6^&-?%>BdB#&c@32i^ z$myr)Tev^}yZU#viB90uqAGn+zD{5Gsk5O< zr7>=WeG=QIgSX_r6~213k#Dx?+#APCT!iY?s;!sJQhw&jFZ|hc-~BXQ{bz3X{ol-} zdHdPwZrQ){Z=bg%ap?Q;ecW|_r)O$(mDZuxoB5xf{Ol*Yx+f@o##v9ZY>k6!nS+#M zm}}>>Ka0K0zu^4KsMkxmIC(qWr&{`m-h9>)sQpY%p-avCf*_CbR2^_ z?kN22>|D2msqgKXsr$+zt?ox?2&TJ>|6HWP_i@Vg?X{kI(RU^;&6$_>RcOzS>dwS7 zzFM!Y8pO+=_?>A1CLNJY40!LdZu<}fxX84Kl0 zfyoD?{-hNCf3iX4#*R>73Bgsq1#2ag9T$79;%{Aj_b>ZVqjS|+n@Wmj-}c{Yd*WA| z9?Z!KiAY`QUTu~)wk(|oH>FWJl&{SooK zc=g|kKv`afr5ZPmRNi;_aPIn4t+IXVCU^%;uiVA*ecvb7Wxg`2ebe8aU8Xb7_}LW( zos{~H5Lc!T)#f{-PFdUZf4RxGtEN!o!0h=>T`h7>dum@U=U%UD}|9gp}*wlmE{}fh!-+!s$*M8Sa`}^1ZbA4!@8^kwV z_CUa#miA|_w^}`X+4=Y4(ZhykosJfFT|a9*=fw?a6XpL_J08{AI&(E^-t*H>qp#*Sz2NC6LQyK{;dFg-x$4l6cOnGEG`7wzhi5iJSN3=YE|dC3f3y zcYjuvw~JOn<=({Gmp4eczkOoF)c!GM8sm&B)&XbNOz1Y~>NzRDD{g786+dV3sh`Ow zCT+PEp&`5T$AmA(Yx48pGDyxoF9UJx&{Jf9X`E$nhLJ{X~EBA75V4D~4w- zUp?b`@qwEHIBqKS1R4yRsnREwgO**?*N& zc+EcjLfbbT#_Q(O?^yi0qRABCV`=+7*hbMRe!Jz%uDf;icVaAF%})+F(|>3SgOdD_ zhYeLr?=-$!UHRDc+hzvM8>wIQwA(G7ZoFtSOTuvWAD1nX#+QXMR|a3LxyaP+wzu$I z&zqDx;$i8ZrC&?69_~Dt`2P8Q&E0I5|2weVv{G-Ana(PxcYpG(YsHR5CFzxWK6IUX z)4yr&>UY=kj(l;bG_EP)e#m)2=$hq@2YuWBPMY%a?@YT@k4&rtqN-{(I8Kz}KfB<* zUWcB;<9l=F92MX4>YAv+GtTdxsU^#v>2WunSX%yZvftyDtnh{ELLraT4YoK~Z!lkQ ziN8m_so`K-OiPv5-j(~`)GIJfYVxT4m&;OE_hq@`S$Tnqzww&4>x(OsCfe_LDStmD zXRb@m+}xgjlQ;b}x|mZgrp9i0Lj1xsdHqFhZcPa{o7{W8>$|weXjqmuPRV&$V3vEV zhv^^tMs^WLp^|EWqca>+#VVy$zs@;lQ$F|HA8yh2_GJ};h82Yyg(q(}3djj-3W*F_ zV(qi+^6c$rEiywFujea>TuR{ZUDQp0mPBN>|5y4w)|C zbM+RJwx!_0z3sQMPh6hGF(F%~ZNUOlt^lqTJ%Z1UXiHzbx+!70gTs0LEcY9hGo-&R zPZO^lkpB5S`ogo{BAGfUy3Oo+nqi2^MpG$T;8x(9n6(jXrEgfXqh{u z(X#y_ZGGAD6!m*sQ`a|jqae-gUOO*U>iYrz3%x-_wQ6#o&?#cJ@eF5iMFF3h<&iW&h zE?9g@kA?fG`lF{$JrC4!U%!*~!^+wG;|=EcqZQo?=XYHDZpOa2b$VO;PT#NR&v%)f zu5+BF-g;y5ffdDW_W4sC?wO=r>6`G-a2fw)O_}+sH-ozbFP*q<`Xf_e`}c3#CI1%) z73-SSD{T7g{_oU3b4QnJC*Rm#v)9i1zf^zI?n%0pk0vpiK6&+Tq5gvp2QD&mbS_m4 zX8m`i=b32ndG^_}R%=gb+A(+D-WI92V*OtZ7xO>W>LxlKn9a62;o-mAGuqJxFsY!BU)_Ixrj-0^_$(=u2K3cI@u9cfAZ*o3% z+N9IAo+^8sXZ>5M_sTG?viVfR%Z#MMpZFD9{0;})wLKa5=~3;G8T7P)a_rqQMDM3z!HtUXyT)JPW>hk^C!O1bFYUSH^Ua*pQ#uG5*<^)A$36(dl z(NDTR9{*yeST6EK;^OMLEK9yF3)J0Kb}3up<=@gjzQ=eTaY%3DskWSZX2r|5DT|!7 zgn886HcooH8F^i;n4U0&+ak`q!5UL{Lsq?q((J-yA)&YpN- zVf0SX8KUnlpV(n<{Im9!Y?ZBf-t99MHfs$F-di~S*yc5Fnd+o{K`Lwqn2$+yJ+!Gi za&}U)P5RaIc2D}OwVdxc^6%e!{n4Dr>OJc-?lJ}(`KG%ss=$`X(so|qnHvu0pTB3l z@IParBmcuDvBak{HoKMub;};*QVKQqH~poo&2z46*^~@kdj;bi@8v8LkEpp#|77;< z74xgoy%QA!xyvh<`7AOen3gof#OzQwe_}rG5{K{8kDPf?wKw%H{~eANulqlp{(ik! z%pb=UbwW$>(L=Y(e>*R7&rI=^iQ2_(X1>c{UV>hhT{Y)X;W-M^Po69-x>C`(+hyB~ zpQTzqJ}(S4SS8H#+hD7?b1G}(7X``W)jw2!JU+j|P4mLjm#4oj`L*m{ne~mgN?N%u z{45rnmgybk2-V9 zB;nueX&%82ZbzmX`J9-SaQSVaO;N?}_{w9H;I;_At8?NDvsRdt zMitn2Ph*=^kkb)n%27Mt#53j6s*n?DD`%|PGxu)oWsm67CS{*$zl67MJ!bTNO2!1A z)EvW%?i$}~Px9Yt2One4`?9QhLf*Ex-Z#G6@{%PBW;{r>{QYL<)=6SWZ&-qOLc!SiU~p-HVrW3u-JoS5$I)e#v}IqSh< z%fD+LgdGixZN3qtxNN2}zgVA9&Xx@mZS>XbQt)c*v+9eQ z?<7xO==S*4ZMMevIZrhbd|IBpuddIwQuo}-oNAdIXRjYFcXwT{Yx3*fm!0{Cwrc-a zS}|tGy>e^$!P zLjMfE3XjaQ_eZB?KkCfu_{sist{bbfdq2OLCRd~3HKxl6UmwnHS>stzqd5Qixx$vZ zVw)>Rrb^0uZfJ@7lg0MRNcqA`-AAq!F27UT|9QVSE`401%*ITEz2vfLEeBH$<2Qrq zCCRV&{@&2b@NheSzvX*g+G({r^Mw*VvTJw!{~qzP{jSQJ2MMngGP1wS5Bwau=S5KH zs$=zw7w_`$G&WS>H2O0A|NPVW2@l-%7j(|42{o}@8Dy}1@o#pMU7OR`7XD}8eYI%T z!s)S0{VykmegAt!>+Mt<^SqEc zJtWij!*Yp=>Wa#WsnTCfzAZ97^mO&s_pb8Jtj#&jsV<8*3hmC~h@E1azRSZRZ}HjV zZ##q4cd2Zzu2~wG$ufV=k<+0QwIyw0?%u6Ew=-B^<>amz!pS}L{}Xzgr^aJI_W5g6wJM3RRnY855iu@!GudCUd zc^aQzt8sBN+g;W3xo}sjCw$|9|2A9X(pAD+_Qn6&_Is(`iS)qSeKYs5Ixgx=Ka=vL z`t_3=e%2zl>qMr^%{?)%P`A$Z=ucVeyrmw0r)F>KwihVd8G4n;B|@0xZrNHDg}W1u zuZ>EPUlD(5iJ;)};1d_@oSE2p4$ZJ!xa-lpgGafS&w6_E$)42(vnTVgWla(Jx2In& zH>=&pjrT0W-`>{_U%yCVD19{{c{xqrYCK;TCq6)o8iMM$&g>AuXeO@HUGY+ zcXXj)jBG8#3?<(kNq={+*v_A|ef|;CP3xkcSSK{>l~_@FjrXw;xeYtg)T z#}qsH6<%xA8h@}A*{VozX?PhJ>9CrFF1da`ENR{MiORBn55^1qsP|s`YkrS@s&AxD z;FI+aryQ@Uu4hZqbvd*5r|XxV!%vPXq?r_?^s=f(Jk&Bj!_Ag8H`{MrpHuhI3(F_9 z8%3tBQv0LSs<6F#MiKvH@0tf$PIY^hpE0?exjxw~c>4PFk2PZ%ge#k;-#uR39-TUw zYuw?d@4O=z@H!J(kIbpY5J3uxu>uj3s zR<~I~(!4WQ)=p+|@Gs5}To!!1^vavd1}6J&Mb{OF`S13g{H)l*De(EzXO7PcmT&p| z=<}+J`#!Vfdw2Uf#@xU5`t0&8=XK40DkXhhxV+da?8#B(uI%lG6Z>!6pXz$5oBM*{ zBu!C`Q!2Okp2yt1J(Fis-KR}S3$D%5Kc=HDeDU1ZbQy(%8>C`(eVNkJVZfqt`{?0? ztMYz4npSW{xxAuh>M`SMcQ)8qAsm*5V?#i7zERxBzJS~zX&eBiwtEFJf z8qV8_yn!J{Ic^_O4V~_H%_F$=hKP~hB&VbDN4UBTg!P1?GT*ZPSA6_Jm{stmN6wLj zs@5mpnDX-dD=TB^ZOn@N*#5)sPkd$le?PVV=kLki^|MF`e_LNs&*RGS|6t|ie+6+z z+9yqK=88qYg<+=&woN}ij-rx&@}faBd?>7`t&woXmfF3I#>e6Daw z`WfASTfR@bX#8TG{EVL_hZU3##a(-L?b*56|3CcO&?p!cw$QDoarXbWe~@%t?*dhryoLLCCfa2>wex@mG|LWmevQe%gKyKcKE$?|28XD zb`BE*hamI8{GUcy^A(wHeA!YlJ5~JS<>mw79>o_I`fO(mOW2yWO8uGwcg~WJi|VpG z1Pba^r!9#(?s+bH?ylKe%3?SBm}(ol?*HcY^5&~oJ-7PbMt?pvL)VS@JBQfgoo6N; z50TuQD}IgT&|Qru$ICp^<#+cn9{7;=k-sA>aqr`@qmfT+KB=&dyji6_jgr@Dd zEtX(wP`CR|{Kr*=tJLN`dA{V!t%dTNx9|Vlv7vEueC>nSUEJ02i+Ss}X`YnSjEt?a zmpQvkVCr;(mDUa0zVs|*ZJfASCrGR)w&!BiqHV3o^DP?tcGgYod7v(EKX8lu32t2{ zOB=^{PXnt)^NjD!{KvPOTFN@cTiTbls5wn_>eah;w^W(W?(09k51vb=zh3{yyxsE` zYoA;W3nNz$*9ry=CYhH-ALQT3yJ%_IUOe~VK2KkY@Ui*&^#>gIKh-~GT=gP)ru57I zkC)EbH+klQwY`)7&99#vIPI6ZP1nDd#Wl8>6*BFAogAl~KCO1#|BgSWzYBYs;d+tZ zn)56&p6tA7U%u|{*2utL{<9bFF3A&+`@UJ>QlOqzpZQh3b&YEu*8RVGmp5f)3Cc0VEIQ;O$u`Mi)sM!1KD{+4o6Gtk^Io)7Z06&*6FMpWGj?o<6D>PdY`d%Eh5C)6 z*M&wpwlZ6jgQb6Y?|Ah7C(HkgM~(cy+l&p{e4;n zQuJHU6&YFlf8W~D>}BcVFSUG^Ez1aVUG~HGd|!)cnXmCpA-^N*wqARde^2FEh0LsS zn^vQ;)fInjtk;GmWV|puqgKx}?eX?k-|SZgz5G6JbMNzGWouU%m0vo>`)uveM=!!> z{^Q%SAn(9ZujxmEgm!$ty2?7f#L0Bx=E;vL4tVGmX>vYeSDv%GNax~#b7g{hUfv0f zheIm7?QU)Sa+vRd!|eB_QV+R8XUx%8Tes2*~R;&#LBscj$`3Hf1-?!@OHe zwl4|~On4?zwfah9^;8cZwu4nq*qf3X15LYD$#UyZp~l3Iz#4>!r}Z&RVBeys@BGjg>$-%*KOEz zCG#00v)Wco!S~N2KAf&l{o5Q=v;HEZ$FyW?7qgXlp5}z2PDeb z<{o~tBrsI^>8Wj%lNjgZ?l`*dv&%P)kP{jEOs{-YeP|t09KLrxYoC60QoeLXl>EVX zRm)$l344B}9l2*>^KtX)jG&GF0@|yWO^&;h#51Yqkm?4(zrRmSJa+N&yRS36#GB`I zyj%Hh=8?qH=ibiIxbGXv_^6k)&El=o$BmC#RW2v_3Hd#mIbY$wWVV^{ztgex8^nGu z|M22pd9v@(Yo~7Bia2%SO;q@x1ckESD*Ux195kINuYJEh`@9h_Tq})$`J$A9MS680lyTYRb9*&OJ z9&YxSwe0h{B9&7PmdlbqB(k6R_3lS-__Li_A0#g5S?F@KF1;3*TJ=_Pad6<=Ly0Dv z7JIxs?qRE@o^wm$8PC~0o1`O*XHJ->F0rxnhd=Amid~w!Rz9AhVZl`u@LtqH;pDlf zIs0zCzHc?VH&$$K@B$V8!*+{uQrG@oxc5Ty^P;3<;Zf$tx0w_#?1U~?C0jNpLq1eFJs!?*2ii~Ki@ch=kE_$V+oxV%10ip z=J#yW68rSZ{p+T}7=K^)Tan!UrYXUzy1%jby5Cv*chwy42^Fsd*8JSLPuSV}TSY-% z@q|NenQ2*}R=Kx?FJAnfa87~c`zyWh^9pQrX1jaSaxAv)dKEi$b|L%RPgCYA3)wCf zWc|o?-Z$bv>V;>TK_6q5CcTuI5a~V1h(jzZuXg*AUS9orh*t11!kX5!-6952H; zif*2CdVlz!WX9YD^)Ejz%sewG;oW5Zu;kP|LZXt6`;#VZDx9r#cS4Ynioum>4`VlU zJ-VB3^0HI>`uQVojy6RWb6tDIaMkI;JNKu1SUntWIEYQDaGlKYZ&!fZ>hn_5j2_Ke zahFN=SL|FPPJJpz&GH&*zilA4j36oX6bH?3LLU34bm5!(UYLKSXolf3_!o);=$~oObBo zCS8V2rtt@2=7zD$?0vv**A&FK_+M?p?NeX&%iYjwTg}5VBVXdIOxlfa7PDrYv3dOR z+n*Ot1)VE4e)hQj#ne?V*zAhrZ{PSx`Qu)D&tC3v&fIEy@s+S!gSWhreQvn=L%W!B z5r#T5np#t9(x#tz^rOWOie^vg6YknOXT$ED8+UHJyUdua zL*e_c*!cB)YbzP%+`hN!Sc-4E^7oF$t49~4YY4sSnLA7FMdxJ??XA48ek*5b+}d&A z;@>yr6HoCp%N#kjm4#Dd+5EuIf>(|oYui|F_fh`ZwO<^4-IDH7IdSTrvnS5m!?kY; zYxcp#iv3)gduB<5IL|kjf9jvmhW)9gQ}nO)gsPt0VfX%_i}6FVz6Lf$Uq#8Mj{hFM znd)P8%IMAZQ+GGBg}L}pW}5bvv`7}U-!-%O`>x+%Jy)b#kv$ z%E$AOn~%L(avuINDEfEuc0f~yCzwC+wPEVH$LaJuGHlO z|I)TSZO3NJX?XsPqw%CUdgxNtoG2OOnZ0-F;|zJ9u5C*U7x_JGHjy+8 zezu13e8h6eZC?W2V_wWrT5&UZ@5CVW=1tjKCr95}RP~?1;m4jSwo$^8Pc|HwAMkV9 z8s(&^zfK%XSfA4|Q(2++oMHg~cC85Y7a~_T7i-PlKkLJcRhm~a;;%8@UWbv&aKJTlRC@X6+3es zhX9A2nMUKE_3|60C>~K{*}!ZP^Y>RL^9#jq8$50-kqP>?_VDifP5&izyVBOHXV+ga z`WL^G`Q!h#Y4ukp)K~v}U9V8YCDiRz{)j)aohPb~9IyVWRk$I40fkl}*qrPDR@wS*Xs?OGJHaff^CL%*fDhl0Fg zD^6RwZk~SP;HCxkC#QUMzb$i9o3py`OUkRPGatKt9X!1?=Zn$bZ7~K6$FAzc&6uiZ zIr%*o_hHYYo8`Z43z#4Cpi=3=?TDEc-)_#oI=Ro7S&Tuf(yZUYxpdoy34c8Wyw5Fa zef~$Ib_>JLjCbEpuQ<9wh@&y&fw-}a`sWE(`7f#@I$WG2Sf0vRxaIX_t5b>>U#{`$ z+&O!RFyA8cr1buCPOl=~UtZ_twc`?l_mZ8voQ{ZWTBPv9ysH0jH_stOrPI4O4cBbQ z$)B`m&)psOSFcmq@-?f)ytjMRpEAYYuG7-%^1jXrwEDv4bNQJ;1jB*93k=?D@Zq)T zm~~g3tukTt)p_CeX3|%_?_xsw>^x;(AnThnVC_JyzGUmReh5 zf6a^cg8Y1#1UK%}l;}u!d0tEYw9Hk(2}kD!^k)PLKHYSAk^j#R42dEdtzS%(p7YKr zs=8jQKQ;Q^{mczg7B7qTADVjhYux$hhuan|*e)M=I_yh9?31P!OD9~ZN~wCFu_Quj z@qR_d*8=+uwl~Z#ct5+)diml@u|LA9U)yyn1Rlrp2ya;(GwJRO<>gH~q)w$zYH=;` z%rEM%ElBk$>rV1~KDWR0{v{XR<<~D?5S9zP@hQ0>+~&A+pWX4_H)VX}zuWG6AG2R7 zZc^3B2L&sQ_rKh|Cg7&ldzE`Ex1ujE?^d3)EW@hDBDQPC>#J8^pU5`xP!kG#7`DVx zWJ}bcjjv{Fid_g<_DK4*|M|GeWz$SfwM5*?S)}}U)-m1Ku-B(!?<{_{R$Jq+N*w#; zLo>ehi+?!tknuiGS4f6QPW@z$SEf=+H(2i2VIC=Cy7>RQ3MOj}6Q5}TiI#q`Ni!uT zpX<0{uQN};$zjRh~FeHx=}~lN26&-LrT-LpJ-T7p1!=TW@=tdVjNH-es%fuCsgl;U^5`a%*?M z1K$f}x&QBa@87;-&gLyKZJ+1t?{$-kRQTO{HqbYF)za&k-+yPTdke&OPR$LCHu>Xa ztRH-Ojsuhojn}keQ~gMUp~kU%$y*nDB1p<0-zr$Nv0SAsV;h z>4%BW3T8+pF}MGE^iyTOf^~_`f$Z7aHzvexc>4Y3l3;7s(%E1gctMIR!^OE%6>_+#4Gc*v2OZ(LF7NlYUFy5I`)lYO z&PB)V=kV0${yp{Ok?o1gDL)$Q%g)JkB&wwqzPjO>lsO-NO34zDTOC~+xaql)0&i@Y2kzg~~^_W1C2*}b?Q49(tm z-^uY*?%yf9g#XKYyUVUg<+YlTTld_0ck9HzPiv2htd+FaX1p@*)MdSBU8j`?WKQ*; zyP@c1oP8uv>c=_uxpLgO*;1R1e(Yx6_4&)j>fF*_O1^GsdV;PN2c^FgT?$R zg*R7K-{(HGSjGO!ieF6o-_E_ooo%hNTpmbdF)dq?chALgcF*VA< z{@0FG|64woE}!$9f0@kDoXQkmHszl?qi+;(r|iDO9PvH+r>na5s!ryAO3caA*t%C< zy1ia+377Pf#_!YTUz%E=Ahlw;@7LwsPvbNi=jJfYtFyHH?i+keRIcmP%41S~FP`i4 z2_K)gLhP7wbg$X!&quBKa-+UU&+=TzyZWd6mkTbH?mJQ&U&@7F&O9DIGf)1l{z5;7 zHukQo(mN;47FzAVx9!iO#`jrj%fn~iEYf@P%|9e6Dd_33hr(@h*UV)UUTqO{{(9BX zlwQWwZg~moZI>3Dikqx+Xn)3jIl=Qc%2Oqyf8O5s<>u!1id+sM`4i8r2#S~+xvr_F zL%wXmnM+mQB>b~eQ%hA{KUG%BXc|b&kj(7ydBNmvSP}f=!m@?F_ib5^U_ncNvJAJM1^i1uP8(IcaE81F%LN?zK z=Qiw5XGn?b%9*lhjq8&5u3M=>Vt@VOeC1M3Z9eUNAtyEEaLFmJ3Aw394wtOjapg4y}~o~u1wSMZ@j0c!yIgPZm&|a%Y_>UEJae@FI5#% z{uLf|TkgV775hCGVx}H57s$OUFPE|2V^XD!&xH`4Wn4a!&F1;-;BQaQRJA%`yPfGW z=dR#@hR^%-Za=;%`>E^AUbDuSb&rfV*FS52@gQ-ly8Jw|_lbx1t>QeXuxn;_g15-7 zd4t#!YDzKXrvN z`S)1zm2rREqq}@>zFi}8jeT`~nZ&$R8_SNr`+tOW{ek93Uj6dor~NFqN9)R|3A@cM znpz{IuJ%viy=2REg9*k0$|^|<`ik8I6zBc>aeLAP zUzxPcf9(H=GD$Hs{QmE3`1f_z+|7^opQ)T$?5Yy_Zzs?mE zH+0!*tcg6J^gk`VFvPSlEG^tI_Nd_e=$n&Iod0Pue=@tm9&XJ<-(bHd^W66pEz^<< z56@(A6Suvf{rzn9y2m-^U!Lv1E_qu{p=AHd*(>$@mtB@(_T-k%T(;Xv^Oe|}&mGR4 ziqF^GDe2!Ryz7benaiBKbw|x6CO%#AJbCIe-ZN4u<*(Yju3SqsStWGWdu>+AiDN5f zeLByO)cvqP+L*W0Omt)49+kd574xSboxRCsIk$I@2UFGAPcFwzAFqpP^SL!Sk(YDZ z6He}Kog?Kd-&Z8f{-jVZI@5%^JWelPZL_ZmJrdemid(RWqVz@9^UA9Q@WchJ_^_Vgih-7S?2zr+7M{PFcUpF%6g zlN(1)f0xhqnEONMmi^nlO?(tn=$?6PzB5<-jwgb#8sgK8-V4l|I8SiSLJQgE zt0MbC_Nz6%D&JfC!*vJe>cr1lvQ=uA?lVpHKXQ1+jm2qvJJUmB*PN7}7N(gj7PD~E zx3JH3tN#dzMTb9(f5so zm8?o={@I!PEB+QH^g1=ADx`5efAy+mdHLpNLUY(n82)>I`*E+SzKzr3(4oIZ^;IiR z#HZ-LU79a0diJw~^XoEi36ry%EFLIDedaCc{TQe$v?aQ9f6MX0Td^tYwOgG3Jzw(g zhR&A7vD~$b)v5{?I$u!L@R$oSZ(Km+jBEv`T`hd7V7BO5aQO`3I%6 z1Ye45m8)JI>+|OAq&8Ka?3jvXk=6$FjNeMu@RNh1=1yMB!X^9@!h=2p zuQ|Wrmg$>q>#SyJg(yr3H%+j$QeD1*dj;qFP3z2ML)XN9TYLIW*xnyTRd?*C?p%4w zoHJT>;bO7P_cEP7-^pIb((;mT)~kmT>M|HNzp(h(w(U_xCa-jKfJJqBX|PlMy`)E1 zPRYH~P+M&jz>%@`{pxVr^aArQ)@|J)*L-#yp1gdnbG*^^+g6n?H~F8RWN#h+>qBqV zsU0WF)>XaQ@pBRP!HZ3|zeLXIWdF_jLgnCAmJRKh|2}Z_7|!3~@bjc@;=+55JinfL zht;;pNcbH}IREfq$-`Oh3Oj2{v=a6GOog`{=$QN5GEz0ROm6SNl_wOghFX=bb2WQn z=P+*@54#BOeG%cybDg9uOgcQop505irchI-6@MstflmtG`pZ(+e7drn%?!et-aVBs zPnePUSo)<&QpS_!UAZ263*3stf_@$nIA`#Q^W;OxZz_8VpK`i8JiA<;Wm=K>|I-7r zikCl(c4~#(Pvs~*8_mBy>zl;~jvLqe!lEvmOtt^{SSUV8`Z{mL+Jsbp!&7&JJP%*; zx>femd|82;b1;*tT}xVB$d}8}vKyDKUH&CsbJqQf*;_NEw%+n)boAd5wDjUC)`R{# zl$NsT1ZS>NlZ$yOGjFQoh1J^n7j7y%J?}A7*MWye;qvLe&P;p5yUofAQr>Fp=~=k$ zu+i+7g}c7K_s>*o{+SiOFkf|DU~bNr{6K@H%uEqWmwVKHlJ^W)>6|LetIgAx{c`_< z!ufYUt+q=%>#E@MW$Br=&ue2NwJVD1_a%C|mx=OqxUSlNGv~(jRcUimPYeAPTJIzK z;BH0Z(FmiXxh#`C?;W$RQQn>1b-MfXkGSS!1tYchH5XqpK7Lkngq{1IVh0!Zy$g)N zE&d5gi+CB!ug9%rs=d5rlF|~charva@_jQiYWKw5QXH(~-UIUlQZts(gU6d2^lWyNiH_NIF*;I4!@AEtHyxlBX|J^;N9{wjj zEAPL2(f|J+eyYsvi2e8T*o+_cW~=^g)qmx0`C+G$sn^QClCS=E&tVi0k@>;K<|6K} zkKxby)@kWWURANI-W)5L=IhHpXwIf|=}S8s5@$?z z`+7cH=J=lD^Tp?X@87nM;mtvvgWD?h%uL_+VdAsx8nc5AY)beYP+RuprcvmON5N}8 ztF4+6xjE5n`J-FE=kREriPqTl`FF@2&gxq30I849cklGJ70KQBXvw3ACC_ff@;{Xn zJed0Yk(aZ+&Hq{0E%Eaab5!CB_kXU3w34^V z9=<2{`|Qb}bgkyoQxDC)I5EwwiS6*aOz)3Me@p$J&i)u2t8Nl&65Atv!KF>Oev*J; zw=%PG)3ZyM}LJXxrg z|9ttcy{mG!79ZuGJjn--(zQ5~^#EH;Y$MRZhp%*Kfv^N}8dwr5ac)xAWm2a+FJ|wPrd~>tLL-(6d2MU@_Feod)AoI(2ez$AI%_IDgM%?JPr28>J2UCx zY3Imy9-mK$m7bEEviE>Xj`vLG`Bwzj8C?yVbdg=;$V=uA1{0rM+x(M#hQ8E-m0e-` z1yq{CRz1C^eK?VM_mi~lZ!Z!jb1e{T;un0M|75!wlhE(gvc7>&ZWO3L)Z$-zh;faX z!ki~ zoMGBixjiCdcJA3{!L-S>^QpQ`b%d4W4jWtfgdiP_1#`}wJ3rTw~>`c{H z!{i*%12ZxXRB)YoeyfC4$Fw1ivnD~@CgpF6N^1wJLwvK%iVtbR@=kiob~PF}`uA|} z_O-4oY@4%rk!TXPsIjunHK|Lp@-DTgJzlF~@@)i_#MbDJki<7Mgrhq`&a^A7X2zHq;)(*k|~|uGU$~^(vQ^4;7jJszFN6C|Lc8qlv`GALkv^KQyvzDcL88Teo~AcjnzPS) zZ>@R4GFdsg=ETXM6hV=_B1Y=yfI94XXz%50p(Oy@iJ+W+_U?|sc1WVHGul)83S>+oJR@cp;`Q?+$sB~PM= zT&3JDYbNn&)q8!Kt%C1-56bIPZ+C5X{TH*E^ zo7FBxO1=4a{m;v9I`I=9-A)rSNRsKFv$W%R@wUgJ=Qp0;_<8fY@6UgI>p!#aLEM_D zuT~tFJ90+V#gjjXC#T?&a{U}T#cO)2ot}LS6h7B_)oJFpO+w38{xn>B^VCbn|2bQ$ z*o(Eweoaz(rKhxcxyYmBcB3Z?y(X+`6L6JNi&kFln|AE?p;wb1DdraL^L_rUOKjit z5|hUH7RK(A8|`Y7mNzWxQc@EMb8`^Pm)#P>Hd zNKC|Kc~%Tti1`Ek3||eCnV);U@75RpdGm*_mUWe%$h5xe=1a|{b!snAh+3|ZQ~II2 z^1(ut_0=u&AF|wjyZ)p&N8Y+V-$S#bPTg8`>+-I<`I3`5dkzXe7n_iuvr2NVeMvKN6qF`-Y=6{RRNuHbs zkL>w2>GG0hOLxt)GY)B3bLco{t+c!N^J?HOuA>hG<%;(1eegcOBFWZt?YhvuIkS4+ zE2TFz7V<3Kk-YuH`Rojn2R{Nr1T6PYeIlP!Cg9*CR=LV4d(MViiQb_Vv!2J#$&9_B zZy&%PmY648%F69?dhs@k>tU)L_n+Ln_~BgHwuQ>Io5gQ=tMv4(vf96Kla1(19?erH zs_aj6%y^^E)im>@Okz#vx{7J}Ns0Sr?m5%_yDTVYPR4z+Zwt%gINZ&q`%73|I_X#W zS@;QG5QCNb{Uxy~O`HZ=nzw7NvOLQ*`_Z}CFuovNEX-}gjy2u8{1d08gn4Ucix}z$ zc(rux{ycA*X5!aGv1`SPx7MV*`llOwL@JRyV?A<$?S0u|DTq}AtZ8F*`hdf@BP+_z{f8Fbn>bcvooIbC|=pr7k%BsZA5Oq=jw!t|7F*|TE> z<(@wID;+pBJ}W)v+vy9Jm;AUs*`RB0_^%UD^M9V;cv2AIut{XGb8EoM2ZrreHYqMp zQkb;-N?*B{!r&KuVU$EpNy_K~yednw#T;FEl`c+P}Gx>LzipFI1 zb{k9G+QXlM=KqukEp=OxB$;JpEa-K4_mNf3C#H#Bof_^Xdo=n)R!9Hu^?WCH-CnzD zV)w*-&u!MmIPWWYaxOMSa8t}ZDQ1aik2jYb8tt}xzWwBsUb=2?q>=TdV`6HlDO`Kj z?h{eoZ+?s?k3&HC8IN^q)2a2ZU+kJ?>+Ll$`gy^VhWG|yc9{kvBU|B^DW-d+pB=JX zJYlBnqP44H8N^SoH;J3&oU`3xNynwYQs07QeVI%yzl7iKh!$1;61_}N8~)!(0P z^LLOh61u-I@S&0r+p2G;7N_-Br!*)(HtjIBdbQ@GJJ0fYC@tsu5zzr+G}`R zjkA2uy1VH-=WluLtJ@`X{rUJ*G>NX@Y)Iax+hzXi$~6?zO_Z@{L>c|)tmbDUCh367JUEU_4i8Bm2dY2GRwyaIyGNkY=c3Q zf#R37r_JiiViW93SIs{w>0F@Q@chUGrVV_Tma6daoY}hLV4^lR|L5<`lMlObl%9%@ zG`+Rw`;Fi7AHVmkdA_CAqHe|?8%y&;YlG_^>}b5-(Ks=BuZsSa8(+)zvobYx1Qfo0 zE5^#z5(akRV|CRkbAj7jvTZDx{;n8{bvj10`@>2719;>8fr>4Ad$jR1x z_9W%|`TmmLp8ryRzq13L5tAn|RUQjq6V-OaAK*`Fm$A z-Snf9J>Qj7DlEtl5HAq5Hd&cZD9-@^Not7Wx|L z%&T8*{`ZS-rAmR$v7_F4!tZbM-Lw1s$<**{(c^;oJu9=%|0;d9xBR^6_16#2Y}He! z{=sAQ&W&Hbn_0TtQ?sM@qC?|8zR$`*}YZEUwCg-#7^}641 zP2gL5tg-2L!R+5}qNe>)=DVAk-riQ-ncc9VH?a7^pX;_WCwySjm;P$mczNfMLeCX9)QuWe-8%0XEb(4Y zWyAKKZ%$kmDk_g&%zg1Ou4-DOwPNtar1T_s>oPWzI4fix(^@iJVeyE zdmr(q$WO>>S&TGbcL%kD0Hzq7|M`XtZfsLMZu7exJ!$_TFaaO1juJg3tj z@~P~t!hPPyElpjgzuI<@ef|fLge1O;-D20CzAjPuyY*)^qr|(;m0KMWw3WpA1;6EP zTYqgkr=(Vr$J;^^3wtNQ!nt%&ewDoZ!A0{f zyDhjQ6Uz~Ns9=iYgy|Mvf)@FlFf{C6E34GGHAMCNpUb9VKUs9&T!{EI`%L)-g;urI zldsh29J{cV^_uxg<5y*j7tH6%++G-xC|c*&e@i3B=3GE{`1C(H3{?rIb>=7D5}we* zQEkt4+$2NZhcj=95cA^5DY_Qltd>l@vbxRFr_-o$WANXVA`dOTuk}$Xtd=~c+2?qz zh|ezcU*kqMH7AY(ch5XuuxBd!OSzPbfwuersrCTwlu z<_!{SXKMX?;Z|BPH&tGJ$M?0qrm2mo5q@p!=eH+5_WGE2|78D3uUXj>nRGMvO`N!< z>VHRt@#-@N?V>g-)w*Yj&acDbE|{Yot_qnR7{Oj`pG7 zj@=hzau$C$-d=V~RPs0Pr**mqr@P4pwX?o&U2kMJ|zB~@~} z%kG)x^a%4`cD;HoeUntjE3f(oZ9AAdSUl1{9_8KAH78mnY}Oy`<2!nTuX4@Uv0C-g zGPB#CO5ZYEZ>?U;%>7e+!`eI1hPQ1^?tMR>93A+hygKKm^np(H>38KL&o5!u;F{;Q z{kBP$sBoS~(BbVGU*kiUIDWA%Si4_w_us7-@-$jkJ^WIw=o!|rM(abhSlEeGcRQ_^yqw=%H%3y)JC$`pedB0gXYq|OS(8YSLC+Afie_YSDO=58zBePS4 z=tNWhqtgq2EHv}`y?z$wzTomrX6xr)xyH+LI-xXzv7Y(g^HmAiSr0w9xfm2U{?=c3 z`_VqMwf<>Y=5T>*yw=H~0RDyAc;-AbVy(`ub1*rcOO(`grcs zO5VSJ&5Hl<)*Sw%XfGhtY%O|o?xMKap>@U+#To;J&QDByzkcJ-3PY~X6PGKtM@d}j zztXd3VQ9U?ZHGCLd0R6|QVhO?oS4U`_)2QFNKKE!tfGm}SFpac{w~3??ydCpjwS^~ z$4@^CKkt$@H~;CE*e022z}z2cw@>Z5aA23rO1GPLRIa7SGABMR@xOj0#Y#l- z>K4(fBFm56pZM?hVM9AX?>&o}{aka7d0v*P-oL@(i_RjJz@raWY|u~?6<)slVdxjXMUG{z2%>9o#WnFC#hs%UVs@&qSJ)7KDd+zF) z9Hz8MiTtTM_D-GT5f>=8>5iIM{%n@S&_A!lN{jLqPj8sBGQ`c}UbK;tM7YAvspjg( z)%Y`AZ`3@r-R^zM_K5v5)*>y-v$ls)3qGVYCr^4*JN;5zi_QIWl{>i><$V8sd=cM@ zE75aiiKZ`$eSZFjn76*;7YuA`umzrAe zt;Nb(x?04G!AMf+In5OA|(=3cmDq3*{kNgm)*2Y<7Yw4_iwpIEZ66B{5YM= zv-UuVo2!eH(!?!|XD;p6K9cM2FQ=ASa{m4UokFSK6_u-=nB9JtVwml>X({jJ74;X^ z=`T8PHQY#SMSgA1b>hE*_ojFMY1U4Yl`89%Cd)Cb5|_!zg;{j?aJkw@$2^m zDXH1>?yidP&)jkJdCil5QzYN=H7|4KDqZ68_0{w1A18_Xe5pI3Rr7U|+5_#)C8}Re ze`$VUu4*x5Drd-!$hsx{8|waEexI@E(8-@qw)jrIqIEjNyrt(!>#IaSUr!QRX@zm(;@%6s9=FB%>F*smtQMhNV zY1^SD*|zr=&9CO&OiXyX?skHx>ZCg#j2Kx=9+o+udl4yZbpM*uRn2t`x1Tk#1V7$& z+pzWXd2gYulM2MzPY-O3N~Mr}*5Zx9Rn)>mKt zc}o4F&zfbwzuZoAKY!OLP)RRoLr$HVrOom^8!Gq~=V#khw5+ZUJ&}FreOTGkypxk= zCj814Xu_49|HPU8APhRy~rvCS@r*`s|wyGNA-@bE?Jtq;d@=MJ>&V+JNfn<=?R*(R4$|M*lNuc-Fy$d z1kT>nJ?OLk#LAoLr*{^uX>xSd&vQJVdvd`c`F;DIEpYX@wL5o~<_0$zwP!V)T940q zS?uuPSG;=u^ATCadF~>*UdR0`JBx+Sh2P~CIVCB=|Cuw`MMv@C#&`9V{_-~Sh1kEI zP4$sj9=hfHzqIRBKWAU$2rW!H$HBrd;e-3^4S&V8C#>n-*u1)V=j4rF>Urc&1Z~uO|6U$%Bfsg*ChD`{x$F`~9|(|Mu%W3;!4Wth)bY zRWxVuQ;{3Vev8$NC*GU0@^egCoptq3sg&f^8pnC(?_I3$T)^<*eTPYswGX4NnCzb3 zyJvyZ|K1H%&pL0HH+Z$%v_0DVZ~2FeuO8VZ~v$|firHW@HMVSW?ZwcD(IPfIm9Db72$M?-8&*Z=Jwk6 zzt@ECuZfe4`E^e{PCe;F#c36emegPmOs^k1)X4?h zQrn%v!Jf^Qp?`+YnA>aG0gvNz_J23I@-;R!t$n81x^J<8x(e1%yK*a zRkNthROj_Zf0OvT;U4bdOh4HbmKCe*3Gk3orC&S^0O608;cW3FSOkB=~?k3C7TH@ z-jg0(ZB{c{w7J!}Yo_R#hmTfWZJqvlO-L!%#wW&pbE3tRA3nNXDerZFbL9@FRl9fJ z+idaO_^ei(s^{Vj+7U8R4;c$G0s~?X-|_gr=soZ1x5s5;^Gq9$I!sPja(cbtqa<19 z$?;B&l|AB3H@|yL{5$bT{GaM%PMZ^L&--mUtDpBfFh$y}FeUi>0RY`^LcTXBKKlKbuWj zv-{i|Rk4$gn~NqZ9pmDkta-}o>`wh;sneGYH|Ir%9^ZCDvsJTKwe|7F&5H~E8u#l~ zg?>7Fv^u1+YhL90J$+)kwwpLG{WzmJ#k%MGuN|rrD!wx6dahAsm-USP6}4l<48yO_ zo~+z_{n#q!P<6fhw`^A@1y?o9nIBembzk|}v#GAUFLOWMJ)1Yncz+`cKWDwov!MUK zz7{`pNZwWPSMlPpAfvrrbqg2%zG7kf!P##|(7jBRFz$70Uc^0Eyf2aS`NE5r=X+1K zZ=0lVlOo{!#X~N*W@+!n6(tL&-~X$exo~VVR8JqPwe<&E-92X0PiJ6~FTG zRgp(r3_uoXIvN6_fNf~ z$>JlKQ|bHdnYtJES;xTVGnc-8KY2~i)6y>Q8Y#m-!*I@iWzz{FD<62iKPdEI>9;Kz zC(PP~9J|k-+{Ad5eW}$yt@Hg;zcf_^@J}e))MYgF$&wJ2EH88CT(blR(c0e|1APyy zRAio}q1(S@(!E`G(qfODd3E*X?y_QywHzWME1p?oMi%QRY`FUAp9R||7u_iS&jsmo z;ysqO^PkgxS8!Z3%50;&cz6rr*HZQ%w#brWa+5Lx8tw*}{dTDl?EVy#I9LU*Lj6x!p^I59G449g!+X5x#Qz zvLW|Y%h_vBo=R3WJj}z~%#{#nap+^vs~?AA+7|}hiQ4`2f~vLB$*;VDd-y)K*c3cf zW1hdxnrTw-gO>Y3a-V!J_-v57%5GH=w$C6!p+tR40Q=c9oBz7b2@Bg^JLj^1uz>6_ zhpe}j(>-%0pRHJR&vV+l5~t<_rq7qRZ2J4JukhK)v#|^3Y}a01eb~+LH1nR8#&7c` zKS*1h|En?Z+MC5|%Znd+Dt8`#XSq>&AydR-L#s{f7FQj3igxXL<8@iIVWsifDVNsm zw13+pq}yS)GlDMp3|qSn7PH9BwtMbFf(AHy8ruc zx87ZP{MhZ`^{-CzpDun_#lAN0aMIqb56k8^MrC*iYN`dVo5z!t#@4$)?uy?B&J_u_ z^KKe`k2sY3v+jCJ^5eFNlXlL3xoX04<0rWf;t%i6YuU5UC-cF1JHfl=+t$BZSl8?j zCA4R6S-QQ;K95@MvW)784I5vT{n{K;Z5lWEO9j*WH*1o9{Hm|dICPgSd2%6-@>{_R zaotK=rs=+S4BM{1dR8XC!J2n>^XrsU_vPH4eVt!+_q=!07QXr>)+zSBT{1G^X5Owt zpJlf%$a|_VWq-1Tzh7sv^|~E?x0v@&SX0YXyK|LMhq}lD5B9@`OP}`NOrQ43&}vDa zp|}70CDHc^H=I3p!#KUU-rae|uDjZ8vG-k?@9KYe8nm~me($X1UjsHAt@)(Xckor( zGEdPm{vV5D#dp2=67$?I!I-1xo^Sh@J^R$v zma_1(;$-KT|Gly=w_Lrq=v8#-;k~oZ`*z&_ zByo&a@xZ-;n#tw&;yFrosUNI8{psRc$!FFda(`X=x`(}RtN$L)U!T^#T-soB{^PFh z7s5Xby{g|A(*gBbQcWcEpyH!0>yMO9&O|c2# zEKS>dw_v~36~i*8EP-4PjqBeY+;>l6E-LzS>Th-(qX7fM<@$}kv}Q?53Ui;(>ioO; zkDI37-_qk}w>KV(isk#%r?!9AoMjWGZVJq4HJRh!-=z4_(ZB5BrOwlx-j|LXxn!T0 zex_W5!BJ4Ov(cq?Hz3R{zU<;i9yv zkuKLmCI9agqWid>@m@6g$)qFt=;TkEeGS*vy026#*zjcOoqgX$-#97TpB5-O>NI6v zibT_n%R9{y5~p+|2IL=fa$3B-y)mt+D@SmK=+wfA{_2rVoRS@>QOhGv{yVhEId#p9 zw3jzNoi>h%^tKnW7zz$3nS1v=1!hbi4K7C13kZ@0xcj55?^N?ju(GM0iGb*OMJW2hAKG z_ZT*(`4zbC?o4=ea<8LW=q8i*D)np!+C<)pNo8D7oTu_&LY!&z%TAkHwVm&rj!ZO~ zas7IJ&*{`1S0-_oaP$PY?|z$bUbh7YyOpfxUwW?WtVEtJ7=zqQPC%& zI^6EH=Is#ES?RXAhatWtM|EPilU&@ZnEBVF_wSrFQ}ynP!i&>4FRpIh_JUd9u=1-P z8=1e!{?L7L_S@zjxA)2FyBlBD&3aw;sqXZV=fC%%_Z~Nzw{7|t`$resSFtTi$d>j${bIe2ul|ht=Gzt~b<|3=g?etw znKmy%Wp1OVf<1>C=dOi$kMj%eEfvtHn)`b8>+aRn3CRoCzs9XC()Y{V@M`nzJTs|P zrcrmrJ-NPK`!3eEKYMfAteu(JiXVPCha6H{n9u(xUm`I(q$%jtEs>S^=0`kukFpAM zEjbe0s;0I;*ZJkr0L|5@ioDwE9(2FlaeNJTnt4Q?_3EucK3{f8_Rn+Sp0J?OZQb-@ z$t@NJKUjCN^#7Jv@T=c*oy_k<3%QrA%#I1am=4c%3{~KId9?dW^T9=WxfNoC&o*AO zJ@IpCx^P{+M3i&M#Iydqt22*mFi{RovteURUMGB=b88UGydy4Lif2>LpGvgNIx#Es zT4nj0^)cc{RtBDbm}LC*c+fI2;Q+4mB@X%4(SohhBE!$!QeC_GL-txHA<@^KPU{z~ z-1m4{OTEYSn=xBWWvka()_;vUp%(ReKW}{xe+0vt4LzcP4-0R3h)>Ob_CM43C*{xHh-P(52Hvr>-k6b4=Tx*6q~9WU={JgF5^k&(5TZQjKAZ@SXHL34tbny>B7Gw{_xL}7yL6!4qtQJtu~1>Eu(U#TDQ-I zk5koy%^Dh4Jn?5Yk6w8&*k?V{9H#9oOcTw6_B?32x>jTshjYg5;xCEc8Uy3)PBJD5 zy$p4q^I#KqONRHntm>7qxpQ92&P!M}VLtD!mp{{U4BtNT?5`HcnRfEhYSrCZ8+}ce zuXMiA)Kl_Y`mB)1p~WJPYK@%BB){6M{d6pmW!(|&w!Mkj7LyY;EATD79xn1b>%yHJ zLD|k*i)wYAt22G}O&VJzZ))mUfqKb>Ir^-HRC7PF1@ zm3>V~tZ_=$Z`8l;`!!qp;1{O7mgm#IDO$cgRGFK(bCZFG_ez_kiF`sY&+0Etn0w=u zW%=);4u>jA&#n7#mF>i%rn4`UCVE$}|9e%xd^-P`4{qmcm`$Eb>DE4cQ+{6NzWc@v z-%kW_J@z|&jVV~fYR7{oF7uY12(b;c2+TY?S9inY`@QeY`4%;;`T6@nd)%)VSNs(i z7<@MT|DS4oto|Z{YPPFRYKpw{k*ZpS*Y}>?Jhre*;>Yf~#-L95(EWkN0_pWUulB#m ziMaWqw^Z8p<`ey^tRFa2e%dV3UAA_wq1c(DH52Xg7!Cxn#rmdMpW9+vEN`Fpv9@;3 zBE}6@d+*DLbwrsxNzlB#fn}AEtYi2M1!w;qX(s#}>+IXZUn_|oVinq|WWLQ;;{4i$ zD>%%uXZq`H73BQhIQz&6ooqMmKA8)bPO3~Of3!wf@LJi!Gv?fnomFfNR1H)`R=#&< zSj=7$zm>r&XuaF(y=ShKvd*ry`*&(W+a8Ci^e%I$qk^nvlDr2TJ?zUTn(dl&`i{b@ zo;fEbxEUPU7qszBh_v~pu8G2n0$rSVoeU=(FllJ>;yN~)KQFqlF~RAZ^uf#-`CiXo zhixtOpLW4_I?qavV*a|06-kE8YFdg$)`o8B zGQEF$M8mP-TCPf&t-`zZS@b)*NeJ!#!FAg2OkZ232KQOz$2H3n=9YA5&weJl+-+xz zONFsc(c&|G)2dqHXWGC1YqR5?oEeX>R(S5>gbS+zy_X#b;ftI(r}SuGO-xFHaklhn zuXCZ%thxfPqutj3e|C`Zu1CNo+u}IOU61z5TF;&y|4sYptM)loJzNvnA|od>-`dPK zt1nL ztZ<)wzAIlX(el88(v_AP$5;2oGd;eyk}dq+&G^4|Wz(}({Cj!nA9L%%H4F_W`?;J> zOUzyVI$Uak5|6OSoSxTn4~VdwKgr;oUY1}Y{cA%XFT>|0OipdnTng^D{{7#-y`Eu{ z&aG{(7uTFwvnBVonbumb+uPor@mjkj_x85j+uPp8|DIEucW3kc>W|-dzCRu>n0?gc zNQ7YVw~JM;YrkCl)$*lG^pV`TiJ#r%3mW#`dZ8G*@2Kh|uIgp!+uY(Zqxa2cJEk)4 zGNWEz@!O8Od5n+t#BOL`?5=dWO)2fk$wN1dk4lsue&S<(FQz&;-m1)frr&YfRqi{x zmh~EC6x^D&`T2)^cBSVYCngL1in{9Mys)II;#%Q{w9UH?%J01_-^#buYtlqcIiE*4 zWsGSnSz8K^Fn?S-RsOuh#6L;?cT~6SZ<=%0D@8)$`wVt%)>?^qj$H@30yPEW6K{U( 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
    0jQ+t~Y&2{DTL+ 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
    +Y+(vPK=I@TnOtAI~%)@omDd?KZsh$ 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