From 3590879c1718be097c31b1b9ac901914d15b1b8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleix=20Bon=C3=A9?= Date: Tue, 8 Apr 2025 16:43:19 +0200 Subject: [PATCH] Add documentation section with commands to query the cache --- web/content/hut/_index.md | 41 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/web/content/hut/_index.md b/web/content/hut/_index.md index 4297b727..a588834b 100644 --- a/web/content/hut/_index.md +++ b/web/content/hut/_index.md @@ -82,3 +82,44 @@ By adding the configuration below to a `flake.nix`, when someone uses the flake, }; } ``` + +### Querying the cache + +Check if the cache is available: +```sh +$ curl https://jungle.bsc.es/cache/nix-cache-info +StoreDir: /nix/store +WantMassQuery: 1 +Priority: 30 +``` + +Prevent nix from building locally: +```bash +nix build --max-jobs 0 <...> +``` + +Check if a package is in cache: +```bash +# Do a raw eval on the .outPath (this should not build the package) +$ nix eval --raw jungle#openmp.outPath +/nix/store/dwnn4dgm1m4184l4xbi0qfrprji9wjmi-openmp-2024.11 +# Take the hash (everything from / to - in the basename) and curl .narinfo +# if it exists in the cache, it will return HTTP 200 and some information +# if not, it will return 404 +$ curl https://jungle.bsc.es/cache/dwnn4dgm1m4184l4xbi0qfrprji9wjmi.narinfo +StorePath: /nix/store/dwnn4dgm1m4184l4xbi0qfrprji9wjmi-openmp-2024.11 +URL: nar/dwnn4dgm1m4184l4xbi0qfrprji9wjmi-17imkdfqzmnb013d14dx234bx17bnvws8baf3ii1xra5qi2y1wiz.nar +Compression: none +NarHash: sha256:17imkdfqzmnb013d14dx234bx17bnvws8baf3ii1xra5qi2y1wiz +NarSize: 1519328 +References: 4gk773fqcsv4fh2rfkhs9bgfih86fdq8-gcc-13.3.0-lib nqb2ns2d1lahnd5ncwmn6k84qfd7vx2k-glibc-2.40-36 +Deriver: vcn0x8hikc4mvxdkvrdxp61bwa5r7lr6-openmp-2024.11.drv +Sig: jungle.bsc.es:GDTOUEs1jl91wpLbb+gcKsAZjpKdARO9j5IQqb3micBeqzX2M/NDtKvgCS1YyiudOUdcjwa3j+hyzV2njokcCA== +# In oneline: +$ curl "https://jungle.bsc.es/cache/$(nix eval --raw jungle#.outPath | cut -d '/' -f4 | cut -d '-' -f1).narinfo" +``` + +#### References + +- https://nix.dev/guides/recipes/add-binary-cache.html +- https://nixos.wiki/wiki/Binary_Cache