bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#17935: make check failed


From: Ludovic Courtès
Subject: bug#17935: make check failed
Date: Sat, 05 Jul 2014 19:20:04 +0200
User-agent: Gnus/5.130009 (Ma Gnus v0.9) Emacs/24.3 (gnu/linux)

Alex Kost <address@hidden> skribis:

> Ludovic Courtès (2014-07-05 17:59 +0400) wrote:
>
>> Alex Kost <address@hidden> skribis:
>>
>>> FAIL: tests/guix-register
>>> =========================
>>
>> [...]
>>
>>> + guix-register -p /home/alexx/src/guix/t-register-7895
>>> error: the path `/home/alexx/src' is a symlink; this is not allowed for the 
>>> Nix store and its parent directories
>>
>> Can you check whether the patch below (in addition to the previous one)
>> solves the problem?
>>
>> diff --git a/tests/guix-register.sh b/tests/guix-register.sh
>> index 019a451..f18de8d 100644
>> --- a/tests/guix-register.sh
>> +++ b/tests/guix-register.sh
>> @@ -58,7 +58,7 @@ guile -c "
>>
>>  mkdir -p "$new_store/$storedir"
>>  new_store_dir="`cd "$new_store/$storedir" ; pwd`"
>> -new_store="`cd "$new_store" ; pwd`"
>> +new_store="`cd "$new_store" ; pwd -P`"
>>
>>  to_copy="`guix build guile-bootstrap`"
>>  cp -r "$to_copy" "$new_store_dir"
>> @@ -81,7 +81,6 @@ guix-register --prefix "$new_store" "$closure"
>>
>>  # Now make sure this is recognized as valid.
>>
>> -NIX_IGNORE_SYMLINK_STORE=1
>>  NIX_STORE_DIR="$new_store_dir"
>>  NIX_STATE_DIR="$new_store$localstatedir"
>>  NIX_LOG_DIR="$new_store$localstatedir/log/guix"
>
> After this patch “guix-register” test failed again, but when I modified
> “new_store_dir” in the same way, it passed.  Here is the modified patch:

Excellent, thanks.  Committed in 8ad4949.

>>> Test begin:
>>>   test-name: "package-field-location, relative file name"
>>>   source-file: "/media/storage/src/guix/./tests/packages.scm"
>>>   source-line: 85
>>>   source-form: (test-equal "package-field-location, relative file
>>> name" (location-file (package-location %bootstrap-guile)) (with-fluids
>>> ((%file-port-name-canonicalization (quote absolute))) (location-file
>>> (package-field-location %bootstrap-guile (quote version)))))
>>> Test end:
>>>   result-kind: fail
>>>   actual-value: "./gnu/packages/bootstrap.scm"
>>>   expected-value: "gnu/packages/bootstrap.scm"
>>
>> I’m not sure if this one relates to the symlink story, but it’s harmless
>> anyway.
>
> It's harmless but “make check” fails because of this and now it's the
> only fail left unsolved.  I don't understand why those paths become so
> fancy, but it happens only when I build from a symlinked directory and
> doesn't happen in an absolute directory.  I don't insist but perhaps it
> would be better to make a less strict test.

Could you run “./pre-inst-env guile”, type these 3 expressions at the
prompt, and send the result:

  (with-fluids ((%file-port-name-canonicalization 'relative))
    (call-with-input-file (search-path %load-path "gnu/packages/bootstrap.scm")
       port-filename))

  (search-path %load-path "gnu/packages/bootstrap.scm")

  (version)

TIA,
Ludo’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]