diff --git a/.envrc b/.envrc
--- a/.envrc
+++ b/.envrc
@@ -3,4 +3,8 @@
 watch_file flake.lock
 watch_file nix/overlay.nix
 
+if ! has nix_direnv_version || ! nix_direnv_version 2.2.1; then
+  source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.2.1/direnvrc" "sha256-zelF0vLbEl5uaqrfIzbgNzJWGmLzCmYAkInj/LNxvKs="
+fi
+
 use flake