2023-06-13 10:17:57 +02:00
|
|
|
|
|
|
|
export_or_unset()
|
|
|
|
{
|
|
|
|
local var=$1
|
|
|
|
|
|
|
|
if [ -z "${!var+x}" ]; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -n "$2" ]; then
|
|
|
|
export $var="$2"
|
|
|
|
else
|
|
|
|
unset $var
|
|
|
|
fi
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2023-06-01 13:36:11 +02:00
|
|
|
if direnv_version "2.30.0" \
|
|
|
|
&& has nix \
|
|
|
|
&& nix show-config experimental-features 2>/dev/null | grep -wqF flakes
|
|
|
|
then
|
2023-06-13 10:17:57 +02:00
|
|
|
local oldtmp="$TMP"
|
|
|
|
local oldtemp="$TEMP"
|
|
|
|
local oldtmpdir="$TMPDIR"
|
|
|
|
local oldtempdir="$TEMPDIR"
|
|
|
|
|
|
|
|
watch_file ./packaging/nix/*.nix
|
|
|
|
use flake ./packaging/nix
|
|
|
|
|
|
|
|
export_or_unset TMP "$oldtmp"
|
|
|
|
export_or_unset TEMP "$oldtemp"
|
|
|
|
export_or_unset TMPDIR "$oldtmpdir"
|
|
|
|
export_or_unset TEMPDIR "$oldtempdir"
|
2023-06-01 13:36:11 +02:00
|
|
|
fi
|