aboutsummaryrefslogtreecommitdiff
path: root/gnu/build/activation.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2017-10-10 22:33:28 +0200
committerMarius Bakke <mbakke@fastmail.com>2017-10-10 22:33:28 +0200
commitc01ef97594a8b06e884906a5efbdfacf8ba33dc3 (patch)
tree828b4711c6ad71ab8fc9b6fc8f23f80979c5fe9b /gnu/build/activation.scm
parent86d02fa8010c053ba980e4c39373b9bf8af0561d (diff)
parent4b8b4418e609b5e0bfb6efbc11ac28deaa437e80 (diff)
downloadguix-c01ef97594a8b06e884906a5efbdfacf8ba33dc3.tar.gz
guix-c01ef97594a8b06e884906a5efbdfacf8ba33dc3.zip
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/build/activation.scm')
-rw-r--r--gnu/build/activation.scm13
1 files changed, 1 insertions, 12 deletions
diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm
index 9c58370ec3..6c0d603ddf 100644
--- a/gnu/build/activation.scm
+++ b/gnu/build/activation.scm
@@ -353,24 +353,13 @@ they already exist."
;; Place where setuid programs are stored.
"/run/setuid-programs")
-(define (link-or-copy source target)
- "Attempt to make TARGET a hard link to SOURCE; if it fails, fall back to
-copy SOURCE to TARGET."
- (catch 'system-error
- (lambda ()
- (link source target))
- (lambda args
- ;; Perhaps SOURCE and TARGET live in a different file system, so copy
- ;; SOURCE.
- (copy-file source target))))
-
(define (activate-setuid-programs programs)
"Turn PROGRAMS, a list of file names, into setuid programs stored under
%SETUID-DIRECTORY."
(define (make-setuid-program prog)
(let ((target (string-append %setuid-directory
"/" (basename prog))))
- (link-or-copy prog target)
+ (copy-file prog target)
(chown target 0 0)
(chmod target #o6555)))