mirror of
https://github.com/nix-community/home-manager
synced 2024-08-17 01:26:31 +02:00
This makes it possible to identify the test as big in the test file itself. It also seems like a more natural way to control the test running.
27 lines
1.1 KiB
Nix
27 lines
1.1 KiB
Nix
{
|
|
debug = { pkgs, config, lib, ... }:
|
|
lib.mkIf config.test.enableBig {
|
|
home.enableDebugInfo = true;
|
|
home.packages = with pkgs; [ curl gdb ];
|
|
|
|
nmt.script = ''
|
|
[ -L $TESTED/home-path/lib/debug/curl ] \
|
|
|| fail "Debug-symbols for pkgs.curl should exist in \`/home-path/lib/debug'!"
|
|
|
|
#source $TESTED/home-path/etc/profile.d/hm-session-vars.sh
|
|
#[[ "$NIX_DEBUG_INFO_DIRS" =~ /lib/debug$ ]] \
|
|
#|| fail "Invalid NIX_DEBUG_INFO_DIRS!"
|
|
assertFileExists home-path/etc/profile.d/hm-session-vars.sh
|
|
assertFileRegex home-path/etc/profile.d/hm-session-vars.sh \
|
|
'NIX_DEBUG_INFO_DIRS=.*/lib/debug'
|
|
|
|
# We need to override NIX_DEBUG_INFO_DIRS here as $HOME evalutes to the home
|
|
# of the user who executes this testcase :/
|
|
{ echo quit | PATH="$TESTED/home-path/bin''${PATH:+:}$PATH" NIX_DEBUG_INFO_DIRS=$TESTED/home-path/lib/debug \
|
|
gdb curl 2>&1 | \
|
|
grep 'Reading symbols from ${builtins.storeDir}/'; \
|
|
} || fail "Failed to read debug symbols from curl in gdb"
|
|
'';
|
|
};
|
|
}
|