nix-super/tests/functional
Tom Bereknyei 74210c12fe Shellbang support with flakes
Enables shebang usage of nix shell. All arguments with `#! nix` get
added to the nix invocation. This implementation does NOT set any
additional arguments other than placing the script path itself as the
first argument such that the interpreter can utilize it.

Example below:

```
    #!/usr/bin/env nix
    #! nix shell --quiet
    #! nix nixpkgs#bash
    #! nix nixpkgs#shellcheck
    #! nix nixpkgs#hello
    #! nix --ignore-environment --command bash
    # shellcheck shell=bash
    set -eu
    shellcheck "$0" || exit 1
    function main {
        hello
        echo 0:"$0" 1:"$1" 2:"$2"
    }
    "$@"
```

fix: include programName usage

EDIT: For posterity I've changed shellwords to shellwords2 in order
      not to interfere with other changes during a rebase.
      shellwords2 is removed in a later commit. -- roberth
2023-11-07 13:24:01 -05:00
..
ca Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
common Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dyn-drv Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
flakes Shellbang support with flakes 2023-11-07 13:24:01 -05:00
lang SourceAccessor: Change the main interface from lstat() to maybeLstat() 2023-11-01 15:26:07 +01:00
nested-sandboxing Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
plugins Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
test-libstoreconsumer Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
add.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
bad.tar.xz Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
bash-profile.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
big-derivation-attr.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
binary-cache-build-remote.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
binary-cache.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
brotli.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-delete.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-dry.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook-ca-fixed.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook-ca-floating.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-content-addressed-fixed.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-content-addressed-floating.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-input-addressed.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-after.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-fail-0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-1.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-2.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-3.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
ca-shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
case-hack.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
case.nar Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-refs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-refs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-reqs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-reqs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
common.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
completions.sh fix: segfault in positional arg completion 2023-10-31 15:33:57 +01:00
compression-levels.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
compute-levels.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config.nix.in Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
db-migration.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.builder0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
derivation-json.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dummy Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dump-db.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
experimental-features.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export-graph.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export-graph.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
failing.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchClosure.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchGit.sh fetchTree cleanup 2023-10-13 14:34:23 +02:00
fetchGitRefs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchGitSubmodules.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchGitVerification.sh fetchGit and flake: add commit signature verification tests 2023-11-03 20:23:31 +01:00
fetchMercurial.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchPath.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchTree-file.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchurl.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
filter-source.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
filter-source.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.builder1.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.builder2.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fmt.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fmt.simple.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
function-trace.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-auto.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent2.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-non-blocking.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-runtime.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-runtime.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hash-check.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hash.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hermetic.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
import-derivation.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
import-derivation.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-derivations.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-derivations.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-env.nix Allow CLI to pass environment variables to FOD builder (#8830) 2023-10-11 11:58:42 +00:00
impure-env.sh Allow CLI to pass environment variables to FOD builder (#8830) 2023-10-11 11:58:42 +00:00
init.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
install-darwin.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
lang-test-infra.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
lang.sh Fix boost::bad_format_string exception in builtins.addErrorContext (#9291) 2023-11-06 19:13:40 +00:00
legacy-ssh-store.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
linux-sandbox-cert-test.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
linux-sandbox.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
local-store.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
local.mk Make nix path-info --json return an object not array 2023-11-06 11:06:31 -05:00
logging.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
misc.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
multiple-outputs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
multiple-outputs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nar-access.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nar-access.sh Fix nar-access test on macOS 2023-11-03 11:03:58 +01:00
nested-sandboxing.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-build-examples.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-build.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-channel.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-collect-garbage-d.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-copy-ssh-ng.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
nix-copy-ssh.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-daemon-untrusting.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-profile.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-shell.sh tests: test nix-shell shebang quoting 2023-10-23 17:32:50 +02:00
nix_path.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
optimise-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
output-normalization.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pass-as-file.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
path-from-hash-part.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
path-info.sh Make nix path-info --json return an object not array 2023-11-06 11:06:31 -05:00
path.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
placeholders.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
plugins.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
post-hook.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pure-eval.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pure-eval.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
push-to-store-old.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
push-to-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
read-only-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
readfile-context.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
readfile-context.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
recursive.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
recursive.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
referrers.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
remote-store.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
repair.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
repl.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
restricted.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
restricted.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
search.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
search.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
secure-drv-outputs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
secure-drv-outputs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
selfref-gc.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell-hello.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.shebang.nix tests: test nix-shell shebang quoting 2023-10-23 17:32:50 +02:00
shell.shebang.rb Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.shebang.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
signing.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple-failing.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
ssh-relay.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
store-info.sh Store info command help updates 2023-10-17 09:39:59 +05:30
structured-attrs-shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
structured-attrs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
structured-attrs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
substitute-with-invalid-ca.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
suggestions.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
supplementary-groups.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
tarball.sh fix: make sure tar reproducibility flags are set 2023-10-24 22:14:35 +02:00
test-infra.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
test-libstoreconsumer.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
timeout.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
timeout.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
toString-path.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
undefined-variable.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs-migration.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
why-depends.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
zstd.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00