#!/usr/bin/env bash set -euo pipefail DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) . "$DIR/common-setup.sh" nixconf="/etc/nix/nix.conf" our_cache="https://nixcache.reflex-frp.org" caches_line="binary-caches = https://cache.nixos.org $our_cache" our_key="JJiAKaRv9mWgpVAz8dwewnZe0AzzEAzPkagE9SP5NWI=" keys_line="binary-cache-public-keys = ryantrinkle.com-1:$our_key cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" if [ ! -e "$nixconf" ] || ! grep -q 'binary-caches\|binary-cache-public-keys\|binary-caches-parallel-connections' "$nixconf" ; then cat | sudo tee -a "$nixconf" <<EOF $caches_line $keys_line binary-caches-parallel-connections = 40 EOF elif ! grep -q "$our_cache" "$nixconf" || ! grep -q "$our_key" "$nixconf" ; then backup="$nixconf.$(date -u +"%FT%TZ").bak" sudo cp "$nixconf" "$backup" echo "$nixconf already exists" echo "backup saved at $backup" echo "adding caches" if ! grep -q "$our_cache" "$nixconf" ; then sudo sed -i.bak 's|^\(binary-caches[ =].*\)$|\1 '"$our_cache"'|' "$nixconf" fi if ! grep -q "$our_key" "$nixconf" ; then sudo sed -i.bak 's|^\(binary-cache-public-keys[ =].*\)$|\1 ryantrinkle.com-1:'"$our_key"'|' "$nixconf" fi fi