Skip to content

Commit

Permalink
tests: nix-profile: test install error message upon conflicting files
Browse files Browse the repository at this point in the history
  • Loading branch information
bobvanderlinden committed Feb 25, 2023
1 parent 9af477e commit 551e032
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions tests/nix-profile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,32 @@ printf World2 > $flake2Dir/who

nix profile install $flake1Dir
[[ $($TEST_HOME/.nix-profile/bin/hello) = "Hello World" ]]
expect 1 nix profile install $flake2Dir
diff -u <(nix profile install $flake2Dir 2>&1 1> /dev/null || true) <(cat << EOF
error: An existing package already provides the following file:
$(nix build --no-link --print-out-paths ${flake1Dir}"#default.out")/bin/hello
This is the conflicting file from the new package:
$(nix build --no-link --print-out-paths ${flake2Dir}"#default.out")/bin/hello
To remove the existing package:
nix profile remove path:${flake1Dir}
The new package can also be installed next to the existing one by assigning a different priority.
The conflicting packages have a priority of 5.
To prioritise the new package:
nix profile install path:${flake2Dir} --priority 4
To prioritise the existing package:
nix profile install path:${flake2Dir} --priority 6
EOF
)
[[ $($TEST_HOME/.nix-profile/bin/hello) = "Hello World" ]]
nix profile install $flake2Dir --priority 100
[[ $($TEST_HOME/.nix-profile/bin/hello) = "Hello World" ]]
nix profile install $flake2Dir --priority 0
Expand Down

0 comments on commit 551e032

Please sign in to comment.