mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gexp: Add symlink-to procedure.
* guix/gexp.scm (symlink-to): New procedure. * doc/guix.texi (G-Expressions): Document it. Change-Id: I7c1ba3a29a4e5350cb4f196185b7171c4750b6b8 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
This commit is contained in:
parent
9b7213fc11
commit
b989e503ac
2 changed files with 16 additions and 0 deletions
|
@ -12692,6 +12692,17 @@ file. Here's an example:
|
||||||
This yields an @code{etc} directory containing these two files.
|
This yields an @code{etc} directory containing these two files.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
|
@deffn {Procedure} symlink-to target
|
||||||
|
Return a @code{<computed-file>} that is a symbolic link to target.
|
||||||
|
Note, that the target does not need to exist at the build time. One of
|
||||||
|
uses is to put arbitrary symlinks into user's home:
|
||||||
|
|
||||||
|
@lisp
|
||||||
|
(service home-files-service-type
|
||||||
|
`(("Sync" ,(symlink-to "/storage/Sync"))))
|
||||||
|
@end lisp
|
||||||
|
@end deffn
|
||||||
|
|
||||||
@deffn {Procedure} directory-union name things
|
@deffn {Procedure} directory-union name things
|
||||||
Return a directory that is the union of @var{things}, where @var{things} is a list of
|
Return a directory that is the union of @var{things}, where @var{things} is a list of
|
||||||
file-like objects denoting directories. For example:
|
file-like objects denoting directories. For example:
|
||||||
|
|
|
@ -119,6 +119,7 @@
|
||||||
file-union
|
file-union
|
||||||
directory-union
|
directory-union
|
||||||
references-file
|
references-file
|
||||||
|
symlink-to
|
||||||
|
|
||||||
imported-files
|
imported-files
|
||||||
imported-modules
|
imported-modules
|
||||||
|
@ -2182,6 +2183,10 @@ or dangling symlink ~a" target source)))
|
||||||
files)))))
|
files)))))
|
||||||
#:guile guile))
|
#:guile guile))
|
||||||
|
|
||||||
|
(define (symlink-to target)
|
||||||
|
"Return an object that is a symlink to TARGET."
|
||||||
|
(computed-file "link" (gexp (symlink (ungexp target) (ungexp output)))))
|
||||||
|
|
||||||
(define* (directory-union name things
|
(define* (directory-union name things
|
||||||
#:key (copy? #f) (quiet? #f)
|
#:key (copy? #f) (quiet? #f)
|
||||||
(resolve-collision 'resolve-collision/default))
|
(resolve-collision 'resolve-collision/default))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue