lix/tests/functional
Delan Azabani b2944d93a6 Reject fully-qualified URLs in 'from' argument of nix registry add
We previously allowed you to map any flake URL to any other flake URL,
including shorthand flakerefs, indirect flake URLs like `flake:nixpkgs`,
direct flake URLs like `github:NixOS/nixpkgs`, or local paths.

But flake registry entries mapping from direct flake URLs often come
from swapping the 'from' and 'to' arguments by accident, and even when
created intentionally, they may not actually work correctly.

This patch rejects those URLs (and fully-qualified flake: URLs), making
it harder to swap the arguments by accident.

Fixes #181.

Change-Id: I24713643a534166c052719b8770a4edfcfdb8cf3
2024-06-29 05:11:31 +00:00
..
ca chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
common Add build-dir setting, clean up default TMPDIR handling 2024-06-24 11:30:32 +03:00
config
dyn-drv remove the autoconf+Make buildsystem 2024-05-07 17:04:30 -06:00
flakes Reject fully-qualified URLs in 'from' argument of nix registry add 2024-06-29 05:11:31 +00:00
lang libexpr: rewrite the parser with pegtl instead of flex/bison 2024-06-25 12:24:58 +00:00
nested-sandboxing chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
plugins remove the autoconf+Make buildsystem 2024-05-07 17:04:30 -06:00
repl_characterization libutil: return Pid from startProcess, not pid_t 2024-06-23 11:52:49 +00:00
test-libstoreconsumer remove the autoconf+Make buildsystem 2024-05-07 17:04:30 -06:00
add.sh
bad.tar.xz
bash-profile.sh Fix failing darwin tests 2024-05-06 18:56:40 +02:00
big-derivation-attr.nix
binary-cache-build-remote.sh
binary-cache.sh chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
brotli.sh
build-delete.sh
build-dry.sh
build-hook-ca-fixed.nix
build-hook-ca-floating.nix
build-hook.nix
build-remote-content-addressed-fixed.sh
build-remote-content-addressed-floating.sh
build-remote-input-addressed.sh
build-remote-trustless-after.sh
build-remote-trustless-should-fail-0.sh chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
build-remote-trustless-should-pass-0.sh
build-remote-trustless-should-pass-1.sh
build-remote-trustless-should-pass-2.sh
build-remote-trustless-should-pass-3.sh
build-remote-trustless.sh
build-remote.sh
build.sh nix3-build: show all FOD errors with --keep-going 2024-05-15 15:35:18 +02:00
ca-shell.nix
case-hack.sh
case.nar
check-refs.nix
check-refs.sh
check-reqs.nix
check-reqs.sh
check.nix
check.sh Add build-dir setting, clean up default TMPDIR handling 2024-06-24 11:30:32 +03:00
common.sh
completions.sh Merge pull request #8817 from iFreilicht/flake-update-lock-overhaul 2024-03-25 17:36:24 -06:00
compression-levels.sh
compute-levels.sh
config.nix.in
config.sh Rename nix show-config to nix config show 2024-05-03 16:26:16 +02:00
db-migration.sh chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
debugger.sh
dependencies.builder0.sh
dependencies.nix
dependencies.sh
derivation-json.sh
dummy
dump-db.sh
eval-store.sh
eval.nix
eval.sh libutil/args: warn on unknown settings after parsing all flags 2024-05-30 03:07:21 +00:00
experimental-features.sh Rename nix show-config to nix config show 2024-05-03 16:26:16 +02:00
export-graph.nix
export-graph.sh
export.sh
extra-sandbox-profile.nix libstore: Fix sandbox=relaxed 2024-05-08 19:31:43 +00:00
extra-sandbox-profile.sh libstore: Fix sandbox=relaxed 2024-05-08 19:31:43 +00:00
failing.nix
fetchClosure.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
fetchGit.sh
fetchGitRefs.sh
fetchGitSubmodules.sh libfetchers: represent unfetched submodules consistently 2024-06-18 00:54:51 +00:00
fetchMercurial.sh tests: actually run mercurial tests 2024-05-04 16:48:07 +02:00
fetchPath.sh
fetchTree-file.sh chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
fetchurl.sh
filter-source.nix
filter-source.sh
fixed.builder1.sh
fixed.builder2.sh
fixed.nix
fixed.sh
fmt.sh
fmt.simple.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
fod-failing.nix nix3-build: show all FOD errors with --keep-going 2024-05-15 15:35:18 +02:00
function-trace.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
gc-auto.sh
gc-concurrent.builder.sh
gc-concurrent.nix
gc-concurrent.sh
gc-concurrent2.builder.sh
gc-non-blocking.sh
gc-runtime.nix gc: Find roots using libproc on Darwin 2024-04-25 23:24:21 -04:00
gc-runtime.sh gc: Find roots using libproc on Darwin 2024-04-25 23:24:21 -04:00
gc.sh
hash-check.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
hash.sh
hermetic.nix
ifd.nix
import-derivation.nix
import-derivation.sh
impure-derivations.nix
impure-derivations.sh chore: rebrand Nix to Lix when it makes sense 2024-06-01 20:31:24 +02:00
impure-eval.sh
init.sh Fix failing darwin tests 2024-05-06 18:56:40 +02:00
install-darwin.sh change shebangs of all .sh scripts to bash 2024-06-24 14:00:43 -07:00
lang-test-infra.sh
lang.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
legacy-ssh-store.sh "but doctor, I AM the untrusted store": nix doctor had wrong trustedness 2024-04-08 15:40:12 -07:00
linux-sandbox-cert-test.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
linux-sandbox.sh libstore/build: copy ca-certificates too 2024-05-31 07:54:18 +00:00
local-store.sh "but doctor, I AM the untrusted store": nix doctor had wrong trustedness 2024-04-08 15:40:12 -07:00
logging.sh
meson.build Merge "Revert "libfetchers: make attribute / URL query handling consistent"" into main 2024-06-25 10:19:52 +00:00
misc.sh libutil/args: warn on unknown settings after parsing all flags 2024-05-30 03:07:21 +00:00
multiple-outputs.nix
multiple-outputs.sh
nar-access.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
nar-access.sh
nested-sandboxing.sh
nix-build-examples.nix
nix-build.sh
nix-channel.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
nix-collect-garbage-d.sh
nix-copy-ssh-common.sh
nix-copy-ssh-ng.sh
nix-copy-ssh.sh
nix-daemon-untrusting.sh change shebangs of all .sh scripts to bash 2024-06-24 14:00:43 -07:00
nix-profile.sh libfetchers: log fetches by URL just before they happen 2024-05-24 15:15:42 -06:00
nix-shell.sh
nix_path.sh
optimise-store.sh
output-normalization.sh
parallel.builder.sh
parallel.nix
parallel.sh
pass-as-file.sh
path-from-hash-part.sh
path.nix
placeholders.sh
plugins.sh tests: don't build test plugin shared libs on static builds 2024-05-12 23:04:21 +02:00
post-hook.sh
pure-eval.nix
pure-eval.sh
push-to-store-old.sh change shebangs of all .sh scripts to bash 2024-06-24 14:00:43 -07:00
push-to-store.sh change shebangs of all .sh scripts to bash 2024-06-24 14:00:43 -07:00
read-only-store.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
readfile-context.nix
readfile-context.sh
recursive.nix
recursive.sh
referrers.sh
remote-store.sh "but doctor, I AM the untrusted store": nix doctor had wrong trustedness 2024-04-08 15:40:12 -07:00
repair.sh
repl.sh Pretty-print values in the REPL 2024-03-09 07:20:23 -07:00
restricted.nix
restricted.sh
search.nix
search.sh
secure-drv-outputs.nix
secure-drv-outputs.sh
selfref-gc.sh
shell-hello.nix
shell.nix
shell.sh
shell.shebang.nix Add pre-commit checks 2024-03-29 22:57:40 -07:00
shell.shebang.rb Add pre-commit checks 2024-03-29 22:57:40 -07:00
shell.shebang.sh
signing.sh
simple-failing.nix
simple.builder.sh Add pre-commit checks 2024-03-29 22:57:40 -07:00
simple.nix
simple.sh
ssh-relay.sh
store-ping.sh
structured-attrs-shell.nix
structured-attrs.nix
structured-attrs.sh
substitute-truncated-nar.sh libutil: remove sinkToSource eof callback 2024-06-23 11:52:49 +00:00
substitute-with-invalid-ca.sh
suggestions.sh
supplementary-groups.sh
symlink-derivation.nix Merge pull request #10456 from NixOS/fixpermdeniedbind 2024-04-11 15:43:58 +03:00
tarball.sh
test-infra.sh
test-libstoreconsumer.sh
test-repl-characterization.sh Implement a parser for a literate testing system for the repl 2024-03-14 14:30:38 -07:00
timeout.nix
timeout.sh tests: fix functional-timeout 2024-05-28 04:20:00 +00:00
toString-path.sh
undefined-variable.nix
user-envs-migration.sh
user-envs.builder.sh
user-envs.nix
user-envs.sh
why-depends.sh
zstd.sh