After three years in beta, Cachix Deploy is now generally available.
Cachix Deploy GA
Back in July 2022, we launched Cachix Deploy in public beta. Since then, it has seen extensive usage with thousands of agents deployed - from developer laptops to production fleets.
Cachix Deploy provides continuous deployments to any Nix profile (NixOS, nix-darwin, or home-manager) using a binary cache. The architecture is simple: agents pull from your binary cache and activate new profiles, with no evaluation or building done on the target machines.
What’s Changed Since Beta
Based on community feedback, we’ve shipped several improvements:
- Multiple workspaces - Organize your agents into separate workspaces with different configurations and access controls
- Auto-rollback - Agents can now execute health checks and automatically rollback if something goes wrong during deployment
- Improved reliability - Enhanced reconnection logic and better handling of network interruptions
- Deployment history - Full visibility into past deployments with the ability to rollback to any previous state
Getting Started
If you’re new to Cachix Deploy, the getting started guide walks you through setting up your first agent and deployment.
The gist is:
-
Run an agent on your machine:
$ cachix deploy agent myagent -
Build your configuration and push to a binary cache
-
Deploy with a specification file:
$ cachix deploy activate cachix-deploy.json
Pricing
Cachix Deploy agents are now included in all plans:
- Free: 20 agents
- Starter: 100 agents
- Standard: 200 agents
- Pro: 1000 agents
See cachix.org/pricing for full details.
Cachix 1.10: Introducing cachix doctor
The v1.10 release of the Cachix CLI introduces cachix doctor - a diagnostic tool that helps you identify and fix common configuration issues.
What It Checks
Running cachix doctor validates your entire Cachix setup:
- Configuration - Verifies your config file exists and contains an auth token
- Daemon status - Checks if the Cachix daemon is running and responsive
- Cache connectivity - Tests connectivity to your binary caches
- Authentication - Validates your auth token and permissions for each cache
- Signing keys - Confirms signing keys are configured for pushing
Usage
Simply run:
$ cachix doctor
Cachix Doctor
=============
Configuration
✓ Config file
✓ Auth token
Daemon
✓ Status
Socket: /run/user/1000/cachix/cachix-daemon.sock
Cache: mycache
URI: https://mycache.cachix.org
Public: no
Permission: admin
✓ Signing key
✓ Connectivity
✓ Authentication
All checks passed.
If issues are detected, cachix doctor provides clear diagnostics:
Cache: mycache
✗ Authentication
Auth token invalid or cache is private
You can also check if a specific store path exists in a cache:
$ cachix doctor -c mycache /nix/store/abc123...-hello-2.12.1
Store Path
Query: /nix/store/abc123...-hello-2.12.1
Hash: abc123...
Cache: mycache
✓ Status: found in cache
Options
-c, --cache CACHE-NAME- Check a specific cacheSTORE-PATH- Check if a store path exists in the cache
Additionally, cachix daemon doctor can be used to check daemon health and connectivity when the daemon is running.
Upgrading
To upgrade to the latest Cachix CLI:
$ nix-env -iA cachix -f https://cachix.org/api/v1/install
Or if you’re using Cachix from nixpkgs, update to the latest version.
Happy deploying!