aboutsummaryrefslogtreecommitdiff
path: root/.direnv/bin/nix-direnv-reload
diff options
context:
space:
mode:
Diffstat (limited to '.direnv/bin/nix-direnv-reload')
-rwxr-xr-x.direnv/bin/nix-direnv-reload19
1 files changed, 19 insertions, 0 deletions
diff --git a/.direnv/bin/nix-direnv-reload b/.direnv/bin/nix-direnv-reload
new file mode 100755
index 0000000..cc9ab90
--- /dev/null
+++ b/.direnv/bin/nix-direnv-reload
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+set -e
+if [[ ! -d "/home/mccd/builds/apbox" ]]; then
+ echo "Cannot find source directory; Did you move it?"
+ echo "(Looking for "/home/mccd/builds/apbox")"
+ echo 'Cannot force reload with this script - use "direnv reload" manually and then try again'
+ exit 1
+fi
+
+# rebuild the cache forcefully
+_nix_direnv_force_reload=1 direnv exec "/home/mccd/builds/apbox" true
+
+# Update the mtime for .envrc.
+# This will cause direnv to reload again - but without re-building.
+touch "/home/mccd/builds/apbox/.envrc"
+
+# Also update the timestamp of whatever profile_rc we have.
+# This makes sure that we know we are up to date.
+touch -r "/home/mccd/builds/apbox/.envrc" "/home/mccd/builds/apbox/.direnv"/*.rc