{"repo":"cmspam/nixcache-oci","free":true,"listed":false,"github":"https://github.com/cmspam/nixcache-oci","clone":"git clone https://github.com/cmspam/nixcache-oci.git","description":"Self-hosted Nix binary cache via GHCR (OCI registry)","language":"Shell","stars":20,"topics":[],"license":null,"category":"self-hosted-apps","readme_excerpt":"nixcache-oci Turn any GitHub repository into a Nix binary cache. Push your flake, get a cache. Free for public repos. Uses GitHub Container Registry (GHCR) as a storage backend — NARs are stored as OCI blobs with a single index manifest for instant lookups. No external servers, CDNs, or databases required. How it works 1. Put your flake configuration in config/ with any packages, NixOS hosts, or dev shells. 2. GitHub Actions builds everything, determines which store paths are already available on cache.nixos.org, and pushes only the locally-built NARs to GHCR as content-addressed OCI blobs. 3. A local proxy serves narinfo from a cached index (zero-latency lookups) and fetches NAR blobs from GHCR on demand. Paths available on upstream caches are served transparently from there. 4. Automated updates : a weekly workflow runs nix flake update , rebuilds, and caches new packages so your systems stay current. Quick start Publishing (repo owner) 1. Edit config/flake.nix : 2. Push to main . The workflow auto-discovers all outputs, builds them, and uploads only what's not already on cache.nixos.org. 3. Set up signing (see Signing below), or disable it for quick testing. Signing Signing is optional but recommended. It lets Nix verify that packages haven't been tampered with. Without signing (quick start) If you don't set a NIX SIGNING KEY secret, the cache works but packages are unsigned. Clients must disable signature verification: Warning: require-sigs = false and requireSignatures =","default_branch":null,"files":null,"tree":[],"storefront":"/r/cmspam","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/cmspam/nixcache-oci/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}