diff options
author | Ludovic Courtès <ludo@gnu.org> | 2025-02-25 15:47:19 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2025-03-10 15:41:32 +0100 |
commit | 24478808756c2787e4cb60d2d0e97f87924d2aa4 (patch) | |
tree | 1444529842929914b762067fe6d7256a5e6fee49 | |
parent | 1548403fa70609a2efd47d1a802587799dc022d6 (diff) |
gexp: No symlinks for ‘imported-files/derivation’.
Fixes <https://issues.guix.gnu.org/76376>.
This is a followup to 149de38d0a2560277ee9bdda2104fbd45608bcb2, which
did not suitably follow symlinks. The test case didn’t catch this
because, when using ‘--disable-chroot’, the symlink target is accessible
within the build environment.
* guix/gexp.scm (imported-files/derivation): Call ‘readlink*’ on ‘file-name’.
Co-authored-by: Ryan Sundberg <ryan@arctype.co>
Change-Id: Idc5b59cd8f0c1217e84c7cbfba64d97d5999429f
-rw-r--r-- | guix/gexp.scm | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/guix/gexp.scm b/guix/gexp.scm index 9ce6810172..811cf02a53 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -1586,7 +1586,7 @@ to the source files instead of copying them." (define file-pair (match-lambda ((final-path . (? string? file-name)) - (mlet %store-monad ((file (interned-file file-name + (mlet %store-monad ((file (interned-file (readlink* file-name) (basename final-path)))) (return (list final-path file)))) ((final-path . file-like) |