Some info on our AWS costs (primarily cache.nixos.org
and releases.nixos.org
):
-
The S3 bucket for
cache.nixos.org
stores 667M objects, with 107 TiB in standard storage and 318 TiB in infrequent access storage, so 425 TiB in total. -
The S3 bucket for
nix-releases
(i.e. https://releases.nixos.org) is 25.1 TiB (mostly ISO images). -
The S3 storage costs for our sponsor are about $5500 per month, after a $2300 enterprise discount.
-
The S3 transfer costs are about $900 per month, which is mostly from 29.5 TiB of traffic between S3 and Fastly for
cache.nixos.org
, and 2.6 TiB forreleases.nixos.org
. (This also appears to have a discount since the costs are $0.03 per GiB.) -
Our Fastly traffic in April was 1508 TiB, so the CDN is amazingly effective.
-
The runtime closure of all non-beta NixOS releases (i.e. the store paths reachable from the
store-paths.xz
files in Channels for NixOS project(s)) is 13M store paths, 27.1 TiB. So garbage-collectingcache.nixos.org
to only keep NixOS releases would shrink it to 6.3% of its current size.Note that this doesn’t include build-time-only dependencies like source tarballs.
-
The runtime closure of all non-beta NixOS releases and all Nixpkgs releases is 51M store paths, 91.4 TiB, so about 21% of the bucket. Unfortunately Nixpkgs has no stable releases, they’re all marked as “pre”.
So we can reduce storage costs by almost 80% by GCing everything that isn’t reachable from the
store-paths.xz
files onreleases.nixos.org
.