diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5c9d14f..0f0c82f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -49,5 +49,5 @@ default: script: - podman login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" - podman load -i "${IMG}.tar.gz" - - podman tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/ci-images/${IMG}:latest" - - podman push "$CI_REGISTRY/greg/ci-images/${IMG}:latest" + - podman tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/nixos-config/${IMG}:latest" + - podman push "$CI_REGISTRY/greg/nixos-config/${IMG}:latest" diff --git a/flake.lock b/flake.lock index 4ff927e..ce7323a 100644 --- a/flake.lock +++ b/flake.lock @@ -10,11 +10,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1747575206, - "narHash": "sha256-NwmAFuDUO/PFcgaGGr4j3ozG9Pe5hZ/ogitWhY+D81k=", + "lastModified": 1750173260, + "narHash": "sha256-9P1FziAwl5+3edkfFcr5HeGtQUtrSdk/MksX39GieoA=", "owner": "ryantm", "repo": "agenix", - "rev": "4835b1dc898959d8547a871ef484930675cb47f1", + "rev": "531beac616433bac6f9e2a19feb8e99a22a66baf", "type": "github" }, "original": { @@ -74,11 +74,11 @@ ] }, "locked": { - "lastModified": 1749194393, - "narHash": "sha256-vt6hM9DNywnXXuW1qPDLzECmbDcmxhh58wpb0EEQjAo=", + "lastModified": 1750618568, + "narHash": "sha256-w9EG5FOXrjXGfbqCcQg9x1lMnTwzNDW5BMXp8ddy15E=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "19346808c445f23b08652971be198b9df6c33edc", + "rev": "1dd19f19e4b53a1fd2e8e738a08dd5fe635ec7e5", "type": "github" }, "original": { @@ -226,11 +226,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1748821116, - "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", + "lastModified": 1749398372, + "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", + "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", "type": "github" }, "original": { @@ -321,11 +321,11 @@ ] }, "locked": { - "lastModified": 1749657191, - "narHash": "sha256-QLilaHuhGxiwhgceDWESj9gFcKIdEp7+9lRqNGpN8S4=", + "lastModified": 1750730235, + "narHash": "sha256-rZErlxiV7ssvI8t7sPrKU+fRigNc2KvoKZG3gtUtK50=", "owner": "nix-community", "repo": "home-manager", - "rev": "faeab32528a9360e9577ff4082de2d35c6bbe1ce", + "rev": "d07e9cceb4994ed64a22b9b36f8b76923e87ac38", "type": "github" }, "original": { @@ -363,11 +363,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1749636823, - "narHash": "sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4=", + "lastModified": 1750684550, + "narHash": "sha256-uLtw0iF9mQ94L831NOlQLPX9wm0qzd5yim3rcwACEoM=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "623c56286de5a3193aa38891a6991b28f9bab056", + "rev": "fae816c55a75675f30d18c9cbdecc13b970d95d4", "type": "github" }, "original": { @@ -406,11 +406,11 @@ }, "nix-hardware": { "locked": { - "lastModified": 1749195551, - "narHash": "sha256-W5GKQHgunda/OP9sbKENBZhMBDNu2QahoIPwnsF6CeM=", + "lastModified": 1750431636, + "narHash": "sha256-vnzzBDbCGvInmfn2ijC4HsIY/3W1CWbwS/YQoFgdgPg=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "4602f7e1d3f197b3cb540d5accf5669121629628", + "rev": "1552a9f4513f3f0ceedcf90320e48d3d47165712", "type": "github" }, "original": { @@ -565,11 +565,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1749285348, - "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", + "lastModified": 1750506804, + "narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", + "rev": "4206c4cb56751df534751b058295ea61357bbbaa", "type": "github" }, "original": { @@ -597,11 +597,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1749285348, - "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", + "lastModified": 1750506804, + "narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", + "rev": "4206c4cb56751df534751b058295ea61357bbbaa", "type": "github" }, "original": { @@ -621,11 +621,11 @@ "systems": "systems_4" }, "locked": { - "lastModified": 1749644591, - "narHash": "sha256-v72hZJvAA78+LWohTzTwk/OnzsNxbkoTM+G7+iXwdl0=", + "lastModified": 1750691276, + "narHash": "sha256-F507hXG4ORVpvuFeuoyDo/bmO/rR2PJRB7XhtDuBnBE=", "owner": "nix-community", "repo": "nixvim", - "rev": "64f0d3c86a7894cad9b09bb1015375ffb9949d70", + "rev": "1f3e5741a927b5b0a983f08ab9d3bcf313bc141e", "type": "github" }, "original": { @@ -642,11 +642,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1749670360, - "narHash": "sha256-YmJ5Zffr6tJID0nA3XkQaoeDLFhOZKBtvZl31jXsqQg=", + "lastModified": 1750731829, + "narHash": "sha256-1UT2YgiY9MD0kuWkdnjR4UAKCeaIEME5dd8xMrvuSg8=", "owner": "nix-community", "repo": "NUR", - "rev": "74f88e0178318b15c3c6d8832c681cc4e72c3d92", + "rev": "cad648060595395298331aa99efe2f4acecfd6a0", "type": "github" }, "original": { @@ -665,11 +665,11 @@ ] }, "locked": { - "lastModified": 1749531675, - "narHash": "sha256-UB8Mc88rW9frjpJ1Fj2ro7f07Gg8dX3uVXvMXnFR4CE=", + "lastModified": 1749730855, + "narHash": "sha256-L3x2nSlFkXkM6tQPLJP3oCBMIsRifhIDPMQQdHO5xWo=", "owner": "NuschtOS", "repo": "search", - "rev": "4029d450d0266909ee52775849b7da54e79b328e", + "rev": "8dfe5879dd009ff4742b668d9c699bc4b9761742", "type": "github" }, "original": { @@ -680,11 +680,11 @@ }, "patched-nixpkgs": { "locked": { - "lastModified": 1748133736, - "narHash": "sha256-8DCZF+SHXa7P9O9op2ET7qJtPomzQ49jy2vjzrHocg4=", + "lastModified": 1750677113, + "narHash": "sha256-hOLEPjPscArQiPm4+EPuVuvcXX7uhIx18gLvXrDS/5k=", "owner": "TomaSajt", "repo": "nixpkgs", - "rev": "76121e3e5db9bfcc4b604b4093abea7b1aa3109e", + "rev": "27a4b311a7ea290aa2504019c8693b7dace8dab5", "type": "github" }, "original": { @@ -702,11 +702,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1749385025, - "narHash": "sha256-2w6+xAMdT9LgMxDHaIyddMTacBbF7RjaZFyGjjTDBhg=", + "lastModified": 1750064469, + "narHash": "sha256-yaEzei8/2LBZL+h0iKO28eeP1Cvl5v0piAyakZfZL0s=", "owner": "SaumonNet", "repo": "proxmox-nixos", - "rev": "48f39fbe2e8f90f9ac160dd4b6929f3ac06d8223", + "rev": "8df841766fab6c15341577b6982ddd368be72113", "type": "github" }, "original": { @@ -869,11 +869,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1749607503, - "narHash": "sha256-ou8BXMfitXrT5dAuxcx3g2kIg3akNe8TdPmxaPlf5UU=", + "lastModified": 1750730765, + "narHash": "sha256-MIcOcvxqAXUv2TJjf19aVXdtVrD8Gkcfi4W4pKkT0Lw=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "06a79e7e0edfcbe28b3e60c78d91c9f75998a8f3", + "rev": "1a1442e13dc1730de0443f80dcf02658365e999a", "type": "github" }, "original": { @@ -912,11 +912,11 @@ "patched-nixpkgs": "patched-nixpkgs" }, "locked": { - "lastModified": 1749228292, - "narHash": "sha256-cavxEaS1a1jQqkQsGVUiu3Hlex3wqUfFB1LE2TXT0vA=", + "lastModified": 1750686425, + "narHash": "sha256-8GK4ofgwZFfHxMv/2nDcnIbkDd+3O5qI96kgGx8iczA=", "owner": "HPsaucii", "repo": "zed-editor-flake", - "rev": "db6c84831c7bedcf63dcecf1e0b59cddea302c62", + "rev": "4e8e32b58f3095116dd9404f0ea030173626eb15", "type": "github" }, "original": { diff --git a/home/hosts/jude/default.nix b/home/hosts/jude/default.nix index 3b6e8c8..e856d14 100644 --- a/home/hosts/jude/default.nix +++ b/home/hosts/jude/default.nix @@ -21,9 +21,10 @@ packages = with pkgs; [ audacity bitwarden-cli + element-desktop (mumble.override { pulseSupport = true; }) - #logseq super-productivity + vagrant webcamoid ]; }; diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 855ad9f..2abbbae 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -160,14 +160,17 @@ # Let's do a sound thing services = { - k3s.extraFlags = - let - ip = (builtins.head config.networking.interfaces.enp14s0u1u2.ipv4.addresses).address; - in - [ - "--tls-san ${ip}" - #"--bind-address ${ip}" - ]; + k3s = { + disableAgent = true; + extraFlags = + let + ip = (builtins.head config.networking.interfaces.enp14s0u1u2.ipv4.addresses).address; + in + [ + "--tls-san ${ip}" + #"--bind-address ${ip}" + ]; + }; pipewire = { enable = true; alsa.enable = true; diff --git a/hosts/linode/git.nix b/hosts/linode/git.nix index a9ceeaa..7891a13 100644 --- a/hosts/linode/git.nix +++ b/hosts/linode/git.nix @@ -19,7 +19,11 @@ in target = "https://vm-gitlab.shire-zebra.ts.net:5000"; ssl = true; genAliases = false; - extraConfig = "client_max_body_size 25000m;"; + extraConfig = '' + proxy_set_header X-Forwarded-Proto https; + proxy_set_header X-Forwarded-Ssl on; + client_max_body_size 25000m; + ''; }; networking.firewall.allowedTCPPorts = [ sshPort ]; diff --git a/hosts/linode/nginx.nix b/hosts/linode/nginx.nix index b64db56..e0a933c 100644 --- a/hosts/linode/nginx.nix +++ b/hosts/linode/nginx.nix @@ -29,9 +29,16 @@ in ports = [ "${homepage}:80" ]; }; }; - greg.proxies."thehellings.com" = { - target = "http://${homepage}/"; - ssl = true; - genAliases = false; + greg.proxies = { + "thehellings.com" = { + target = "http://${homepage}/"; + ssl = true; + genAliases = false; + }; + "doubles.thehellings.com" = { + target = "http://localhost:8081"; + ssl = true; + genAliases = false; + }; }; } diff --git a/hosts/linode/podman.nix b/hosts/linode/podman.nix index 99b3b29..ef0b20f 100644 --- a/hosts/linode/podman.nix +++ b/hosts/linode/podman.nix @@ -1,6 +1,10 @@ -{ ... }: +{ pkgs, ... }: { + environment.systemPackages = with pkgs; [ + podman-compose + ]; + virtualisation.podman = { enable = true; dockerCompat = true; diff --git a/hosts/vm-gitlab/default.nix b/hosts/vm-gitlab/default.nix index c39c78b..8679bec 100644 --- a/hosts/vm-gitlab/default.nix +++ b/hosts/vm-gitlab/default.nix @@ -170,29 +170,46 @@ in nginx = { enable = true; clientMaxBodySize = "25000m"; - virtualHosts."vm-gitlab.shire-zebra.ts.net" = { - listen = [ - { - addr = "0.0.0.0"; - port = registryPort; - ssl = true; - } - { - addr = "0.0.0.0"; - port = 443; - ssl = true; - } - ]; - locations."/" = { - proxyPass = "http://unix:/run/gitlab/gitlab-workhorse.socket"; - #proxyPass = "http://127.0.0.1:4567/"; - recommendedProxySettings = true; + virtualHosts = { + "vm-gitlab.shire-zebra.ts.net" = { + listen = [ + { + addr = "0.0.0.0"; + port = 443; + ssl = true; + } + ]; + locations."/" = { + proxyPass = "http://unix:/run/gitlab/gitlab-workhorse.socket"; + recommendedProxySettings = true; + }; + extraConfig = '' + ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; + ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; + client_max_body_size 10000m ; + ''; + }; + "registry" = { + listen = [ + { + addr = "0.0.0.0"; + port = registryPort; + ssl = true; + } + ]; + locations."/" = { + proxyPass = "http://127.0.0.1:4567/"; + recommendedProxySettings = true; + }; + extraConfig = '' + ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; + ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; + client_max_body_size 25000m ; + ''; + serverAliases = [ + "vm-gitlab.shire-zebra.ts.net" + ]; }; - extraConfig = '' - ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; - ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; - client_max_body_size 10000m ; - ''; }; }; diff --git a/manifests/databases/ingress.yaml b/manifests/databases/ingress.yaml index f75c920..21d8ecc 100644 --- a/manifests/databases/ingress.yaml +++ b/manifests/databases/ingress.yaml @@ -14,7 +14,7 @@ spec: - 100.88.91.27 # dns? - 100.80.99.48 # exodus - 100.88.91.27 # genesis - - 100.91.131.66 # gitlab + - 100.117.28.111 # gitlab - 100.68.203.1 # hosea - 100.84.183.79 # isaiah - 100.102.186.39 # jeremiah diff --git a/modules/hm/development.nix b/modules/hm/development.nix index 2294062..2462847 100644 --- a/modules/hm/development.nix +++ b/modules/hm/development.nix @@ -19,6 +19,7 @@ let nixpkgs-review nodejs process-compose + subversion ]; in with lib; diff --git a/modules/hm/vscodium.nix b/modules/hm/vscodium.nix index e0392ce..4e3f3de 100644 --- a/modules/hm/vscodium.nix +++ b/modules/hm/vscodium.nix @@ -34,10 +34,12 @@ in jnoortheen.nix-ide mkhl.direnv ms-python.python + ms-vscode.cpptools-extension-pack ms-vscode.makefile-tools ms-vscode-remote.remote-ssh njpwerner.autodocstring rust-lang.rust-analyzer + slint.slint tamasfe.even-better-toml vscjava.vscode-java-test vscjava.vscode-java-dependency diff --git a/modules/hm/zed.nix b/modules/hm/zed.nix index 442bca2..718ab42 100644 --- a/modules/hm/zed.nix +++ b/modules/hm/zed.nix @@ -12,9 +12,60 @@ in options.greg.zed = lib.mkEnableOption "Whether to install the Zed editor"; config = lib.mkIf cfg { - home.packages = with pkgs; [ - nil - zed-editor - ]; + programs.zed-editor = { + enable = true; + extensions = [ + "ansible" + "cargo-tom" + "dockerfile" + "mcp-server-gitlab" + "helm" + "html" + "ini" + "jsonnet" + "latex" + "make" + "markdown-oxide" + "material-icon-theme" + "nix" + "nu" + "postgres-context-server" + "python-refactoring" + "slint" + "snippets" + "toml" + ]; + extraPackages = with pkgs; [ + cargo + direnv + nil + nix + python3 + rustc + ]; + installRemoteServer = true; + userKeymaps = [ + { + } + ]; + userSettings = { + baseKeymap = "VSCode"; + buffer_font_size = 16; + features = { + copilot = true; + }; + relative_line_numbers = true; + telemetry = { + metrics = true; + }; + theme = { + mode = "system"; + light = "Gruvbox Dark"; + dark = "One Dark"; + }; + vim_mode = true; + ui_font_size = 20; + }; + }; }; } diff --git a/modules/nixos/remote-builder.nix b/modules/nixos/remote-builder.nix index d32b0f2..e11ffbd 100644 --- a/modules/nixos/remote-builder.nix +++ b/modules/nixos/remote-builder.nix @@ -48,6 +48,7 @@ with lib; set -f export AWS_SHARED_CREDENTIALS_FILE=${config.age.secrets.cache-credentials.path} export IFS=' ' + ${getExe config.nix.package} store sign --recursive --key-file "${config.age.secrets.private-cache.path}" "$@" ${getExe config.nix.package} copy --to "s3://binary-cache/?scheme=http&endpoint=nas.home%3A9000&profile=default" "$@" '' ); diff --git a/pkgs/gen-build/gen-build.go b/pkgs/gen-build/gen-build.go index e09a818..7db1aeb 100644 --- a/pkgs/gen-build/gen-build.go +++ b/pkgs/gen-build/gen-build.go @@ -41,6 +41,22 @@ func GetNixFlakeOutput() (*NixFlakeOutput, error) { return &flakeOutput, nil } +func GetNixHomeManagerOutput() ([]string, error) { + cmd := exec.Command("nix", "eval", ".#homeConfigurations", "--apply", "hconf: builtins.filter (name: hconf.${name}.pkgs.hostPlatform.isLinux) (builtins.attrNames hconf)", "--json") + output, err := cmd.Output() + if err != nil { + return nil, err + } + + var result []string + err = json.Unmarshal(output, &result) + if err != nil { + return nil, err + } + + return result, nil +} + type GitlabCIJob struct { Stage string `json:"stage"` Tags []string `json:"tags"` @@ -73,12 +89,16 @@ func main() { "nix flake check --no-build", }, } - // Since this is kinda a one-off thing, I can use this directly - // homeConfigurations are treated like they are not known as a - // flake output type. Therefore, it just informs you that it is - // part of the output, but does not evaluate deeper to tell you - // what the name of it is. I will just do this manually for now. - pipeline["Build Home config "] = NewGitlabCIJob("homeConfigurations.\"greg\".activationPackage") + + if flakeOutput.HomeConfigurations != nil { + homeNames, err := GetNixHomeManagerOutput() + if err != nil { + panic(err) + } + for i := range homeNames { + pipeline["Build Home Configuration "+homeNames[i]] = NewGitlabCIJob("homeConfigurations.\"" + homeNames[i] +"\".activationPackage") + } + } if flakeOutput.Apps != nil { for appName := range flakeOutput.Apps { diff --git a/pkgs/zim/blobs.json b/pkgs/zim/blobs.json index 10072fd..0ddc9d2 100644 --- a/pkgs/zim/blobs.json +++ b/pkgs/zim/blobs.json @@ -1 +1,76 @@ -{"en":{"gutenberg":{"name":"gutenberg_en_all_2023-08.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"phet":{"name":"phet_en_all_2023-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikibooks":{"name":"wikibooks_en_all_maxi_2021-03.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikipedia":{"name":"wikipedia_en_all_maxi_2024-01.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikisource":{"name":"wikisource_en_all_maxi_2022-09.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikiversity":{"name":"wikiversity_en_all_maxi_2021-03.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wiktionary":{"name":"wiktionary_en_all_nopic_2024-05.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="}},"fr":{"gutenberg":{"name":"gutenberg_fr_all_2023-08.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"phet":{"name":"phet_fr_all_2023-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikibooks":{"name":"wikibooks_fr_all_maxi_2024-06.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikipedia":{"name":"wikipedia_fr_all_maxi_2024-05.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikisource":{"name":"wikisource_fr_all_maxi_2022-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikiversity":{"name":"wikiversity_fr_all_maxi_2021-02.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wiktionary":{"name":"wiktionary_fr_all_nopic_2024-06.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="}},"ht":{"phet":{"name":"phet_ht_all_2023-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikipedia":{"name":"wikipedia_ht_all_maxi_2024-06.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikisource":{"name":"wikisource_ht_all_maxi_2019-03.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="}}} +{ + "en": { + "gutenberg": { + "name": "gutenberg_en_all_2023-08.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "phet": { + "name": "phet_en_all_2023-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikibooks": { + "name": "wikibooks_en_all_maxi_2021-03.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikipedia": { + "name": "wikipedia_en_all_maxi_2024-01.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikisource": { + "name": "wikisource_en_all_maxi_2022-09.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikiversity": { + "name": "wikiversity_en_all_maxi_2021-03.zim", + "hash": "sha256-w/3J2neHPWbz1kK2qR0OB64mkwuDI7RJMuoAWz9yyZs=" + }, + "wiktionary": { + "name": "wiktionary_en_all_nopic_2024-05.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + } + }, + "fr": { + "gutenberg": { + "name": "gutenberg_fr_all_2023-08.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "phet": { + "name": "phet_fr_all_2023-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikibooks": { + "name": "wikibooks_fr_all_maxi_2024-06.zim", + "hash": "sha256-w/3J2neHPWbz1kK2qR0OB64mkwuDI7RJMuoAWz9yyZs=" + }, + "wikipedia": { + "name": "wikipedia_fr_all_maxi_2024-05.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikisource": { + "name": "wikisource_fr_all_maxi_2022-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikiversity": { + "name": "wikiversity_fr_all_maxi_2021-02.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wiktionary": { + "name": "wiktionary_fr_all_nopic_2024-06.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + } + }, + "ht": { + "phet": { + "name": "phet_ht_all_2023-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikipedia": { + "name": "wikipedia_ht_all_maxi_2024-06.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikisource": { + "name": "wikisource_ht_all_maxi_2019-03.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + } + } +}