1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-10 04:43:53 +02:00

fix: ensure apps are apps and packages are packages

This commit is contained in:
Tom Bereknyei 2022-03-25 13:36:41 -04:00
parent 646af7325d
commit 9b41239d8f
4 changed files with 43 additions and 0 deletions

29
tests/flakes-run.sh Normal file
View file

@ -0,0 +1,29 @@
source common.sh
clearStore
rm -rf $TEST_HOME/.cache $TEST_HOME/.config $TEST_HOME/.local
cp ./shell-hello.nix ./config.nix $TEST_HOME
cd $TEST_HOME
cat <<EOF > flake.nix
{
outputs = {self}: {
packages.$system.PkgAsPkg = (import ./shell-hello.nix).hello;
packages.$system.AppAsApp = self.packages.$system.AppAsApp;
apps.$system.PkgAsApp = self.packages.$system.PkgAsPkg;
apps.$system.AppAsApp = {
type = "app";
program = "\${(import ./shell-hello.nix).hello}/bin/hello";
};
};
}
EOF
nix run --no-write-lock-file .#AppAsApp
nix run --no-write-lock-file .#PkgAsPkg
! nix run --no-write-lock-file .#PkgAsApp || fail "'nix run' shouldnt accept an 'app' defined under 'packages'"
! nix run --no-write-lock-file .#AppAsPkg || fail "elements of 'apps' should be of type 'app'"
clearStore

View file

@ -1,5 +1,6 @@
nix_tests = \
flakes.sh \
flakes-run.sh \
ca/gc.sh \
gc.sh \
remote-store.sh \