forked from lix-project/lix
40 lines
1.2 KiB
Bash
40 lines
1.2 KiB
Bash
|
source ./common.sh
|
||
|
|
||
|
flakeDir=$TEST_ROOT/flake
|
||
|
mkdir -p "$flakeDir"
|
||
|
|
||
|
writeSimpleFlake "$flakeDir"
|
||
|
cd "$flakeDir"
|
||
|
|
||
|
|
||
|
# By default: Only show the packages content for the current system and no
|
||
|
# legacyPackages at all
|
||
|
nix flake show --json > show-output.json
|
||
|
nix eval --impure --expr '
|
||
|
let show_output = builtins.fromJSON (builtins.readFile ./show-output.json);
|
||
|
in
|
||
|
assert show_output.packages.someOtherSystem.default == {};
|
||
|
assert show_output.packages.${builtins.currentSystem}.default.name == "simple";
|
||
|
assert show_output.legacyPackages.${builtins.currentSystem} == {};
|
||
|
true
|
||
|
'
|
||
|
|
||
|
# With `--all-systems`, show the packages for all systems
|
||
|
nix flake show --json --all-systems > show-output.json
|
||
|
nix eval --impure --expr '
|
||
|
let show_output = builtins.fromJSON (builtins.readFile ./show-output.json);
|
||
|
in
|
||
|
assert show_output.packages.someOtherSystem.default.name == "simple";
|
||
|
assert show_output.legacyPackages.${builtins.currentSystem} == {};
|
||
|
true
|
||
|
'
|
||
|
|
||
|
# With `--legacy`, show the legacy packages
|
||
|
nix flake show --json --legacy > show-output.json
|
||
|
nix eval --impure --expr '
|
||
|
let show_output = builtins.fromJSON (builtins.readFile ./show-output.json);
|
||
|
in
|
||
|
assert show_output.legacyPackages.${builtins.currentSystem}.hello.name == "simple";
|
||
|
true
|
||
|
'
|