cachepot
github.com
What it is
Cachepot is a compiler caching tool for Linux, macOS, Windows, and self-hosted environments. It keeps compilation results on local disk or cloud storage so a build can reuse them rather than compile again when possible. The documented compilers include GCC, Clang, MSVC, rustc, NVCC, and Diab. Cachepot can also distribute compilation in an icecream-style setup, automatically packaging local toolchains. Storage choices include local disk, S3, Redis, Memcached, Google Cloud Storage, and Azure Blob Storage. Build integrations include Cargo, CMake, GNU make, Jenkins, and GitLab CI. The project describes authentication, encrypted transport, and sandboxed execution on build servers as security features; bubblewrap is its preferred sandbox option, with Docker also supported. The default local cache limit is 10 gigabytes and can be changed with CACHEPOT_CACHE_SIZE. Rust crates that invoke the system linker and incrementally compiled crates cannot be cached, and cache hits require matching absolute paths. Cachepot is free and open source under Apache-2.0, but its repository was archived on February 28, 2023, in favor of upstream sccache.
Spec sheet
- Purpose
- Cachepot is a compiler caching tool that avoids recompilation when possible and stores results on local disk or cloud storage.Read 2 Oct 2026 · github.com
- Platforms
- The README says prebuilt x86-64 binaries are available for Windows, Linux, and macOS.Read 2 Oct 2026 · github.com
- Build integrations
- The README describes using Cachepot with Cargo, CMake, and Jenkins, and the official documentation also has GitLab and Concourse CI pages.Read 2 Oct 2026 · github.com
- CI security caveat
- The GitLab guide warns that compilation output can leak data from the execution environment and says CI secrets should not be treated as secret from that output.Read 2 Oct 2026 · cachepot.cc
- Default cache limit
- The README says the default local cache size is 10 gigabytes and can be changed with CACHEPOT_CACHE_SIZE.Read 2 Oct 2026 · github.com
- Distributed compilation
- Cachepot supports icecream-style distributed compilation with automatic packaging of local toolchains.Read 2 Oct 2026 · github.com
- Path limitation
- For a cache hit, the README says absolute file paths must match, including paths to third-party Rust crates in Cargo's default registry cache.Read 2 Oct 2026 · github.com
- Project status
- The repository says Cachepot was archived on February 28, 2023 and superseded in favor of upstream sccache.Read 2 Oct 2026 · github.com
- Rust limitations
- The README says Rust crates that invoke the system linker and incrementally compiled crates cannot be cached.Read 2 Oct 2026 · github.com
- Sandbox support
- The threat model documents built-in sandbox support using bubblewrap or Docker, with bubblewrap named as the preferred choice.Read 2 Oct 2026 · cachepot.cc
- Security caveat
- The threat model lists server-side hash verification as a hardening goal and marks it TODO.Read 2 Oct 2026 · cachepot.cc
- Security design
- The project describes authentication, transport encryption, and sandboxed compiler execution on build servers as security features of distributed compilation.Read 2 Oct 2026 · github.com
- Storage backends
- The documented storage options include local disk, S3, Redis, Memcached, Google Cloud Storage, and Azure Blob Storage.Read 2 Oct 2026 · github.com
- Supported compilers
- The README lists gcc, clang, MSVC, rustc, NVCC, and Wind River diab compiler.Read 2 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Supports six listed compiler families.
- Distributed builds package local toolchains automatically.
- Offers several local and cloud storage backends.
- Free and open source under Apache-2.0.
Limits
- Repository archived on February 28, 2023.
- Some Rust crates cannot be cached.
- Cache hits require matching absolute paths.
- Server-side hash verification remains a TODO.
Who it suits
Cachepot may suit teams maintaining builds that use its listed compilers and integrations and can work within its Rust and path-matching limits. Its archived status is important for anyone considering it for a current project.
Verdict
Cachepot documents broad compiler, storage, and build-system support, along with distributed compilation. Its archived status and caching constraints warrant consideration before adopting it.
Where Specifiction places it
- Build Cache Software#8 of 237.9