diff --git a/.envrc b/.envrc index 377bef3..f07c7cc 100644 --- a/.envrc +++ b/.envrc @@ -73,7 +73,9 @@ command cat <.direnv/bin/ndev #!/usr/bin/env bash export NIXPKGS_CONFIG="$(realpath config.nix)" export NIX_PATH="$NIX_PATH${NIX_PATH:+:}nixpkgs-overlays=$(realpath overlays.nix)" -"\$@" +if [[ "\$#" -gt 0 ]]; then + env "\$@" +fi EOF chmod +x .direnv/bin/ndev PATH_add .direnv/bin/ diff --git a/justfile b/justfile index 74c3818..371d650 100644 --- a/justfile +++ b/justfile @@ -7,6 +7,7 @@ # makes variables accesible as $1 $2 $@, useful for escaping variadics set positional-arguments := true +export rootdir := justfile_directory() export invokedir := invocation_directory() export epoch := `date +%s` @@ -155,7 +156,7 @@ list-packages-by-maintainer *github_handles: _packages_json $GIT diff HEAD --name-only | just _list_packages_fname_filtered [no-cd] -@list-touched-packages-since $rev=`cd "$invokedir"; just _a_commit`: +@list-packages-touched-since $rev=`cd "$invokedir"; just _a_commit`: test -n "$rev" || { echo >&2 "you must pick a revision to compare against!"; false; } $GIT diff "$rev" --name-only | just _list_packages_fname_filtered @@ -185,13 +186,13 @@ list-packages-by-maintainer *github_handles: _packages_json [[ -n "$extra_args" ]] && export _JUST_NIX_INSTANTIATE_ARGS="$(shift; shift; printf " %q" "$@")"; \ cd "$invokedir"; just list-dirty-packages | cut -f1 | xargs {{XARGS_NL}} printf "${attr_prefix//%/%%}"'%s'"${attr_suffix//%/%%}\n" | xargs {{XARGS_NL}} just instantiate-packages -@build-touched-packages-since $attr_prefix="" $attr_suffix="" +$extra_args="": +@build-packages-touched-since $attr_prefix="" $attr_suffix="" +$extra_args="": [[ -n "$extra_args" ]] && export _JUST_NIX_INSTANTIATE_ARGS="$(shift; shift; printf " %q" "$@")"; \ - cd "$invokedir"; just list-touched-packages-since | cut -f1 | xargs {{XARGS_NL}} printf "${attr_prefix//%/%%}"'%s'"${attr_suffix//%/%%}\n" | xargs {{XARGS_NL}} just build-packages + cd "$invokedir"; just list-packages-touched-since | cut -f1 | xargs {{XARGS_NL}} printf "${attr_prefix//%/%%}"'%s'"${attr_suffix//%/%%}\n" | xargs {{XARGS_NL}} just build-packages -@instantiate-touched-packages-since $attr_prefix="" $attr_suffix="" +$extra_args="": +@instantiate-packages-touched-since $attr_prefix="" $attr_suffix="" +$extra_args="": [[ -n "$extra_args" ]] && export _JUST_NIX_INSTANTIATE_ARGS="$(shift; shift; printf " %q" "$@")"; \ - cd "$invokedir"; just list-touched-packages-since | cut -f1 | xargs {{XARGS_NL}} printf "${attr_prefix//%/%%}"'%s'"${attr_suffix//%/%%}\n" | xargs {{XARGS_NL}} just instantiate-packages + cd "$invokedir"; just list-packages-touched-since | cut -f1 | xargs {{XARGS_NL}} printf "${attr_prefix//%/%%}"'%s'"${attr_suffix//%/%%}\n" | xargs {{XARGS_NL}} just instantiate-packages @build-unmerged-packages $attr_prefix="" $attr_suffix="" +$extra_args="": [[ -n "$extra_args" ]] && export _JUST_NIX_INSTANTIATE_ARGS="$(shift; shift; printf " %q" "$@")"; \