From ba8551ec79471ac402e6211d16e617bcb13e8d97 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 16 Oct 2019 01:29:10 +0530 Subject: [PATCH] gnu: ansible: Work around issues with Guix wrapper scripts. * gnu/packages/admin.scm (ansible)[arguments]: Remove fix-symlinks phase. Add replace-symlinks phase. --- gnu/packages/admin.scm | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 35dae2d056..0e4fb3947c 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -19,7 +19,7 @@ ;;; Copyright © 2017 Ethan R. Jones ;;; Copyright © 2017 Christopher Allan Webber ;;; Copyright © 2017, 2018 Marius Bakke -;;; Copyright © 2018 Arun Isaac +;;; Copyright © 2018, 2019 Arun Isaac ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; Copyright © 2018 Rutger Helling ;;; Copyright © 2018 Pierre Neidhardt @@ -1880,21 +1880,16 @@ import re sys.argv[0] = re.sub(r'\\.([^/]*)-real$', r'\\1', sys.argv[0]) "))) #t)) - (add-after 'wrap 'fix-symlinks + (add-after 'install 'replace-symlinks (lambda* (#:key outputs #:allow-other-keys) + ;; Replace symlinks with duplicate copies of the ansible + ;; executable. (let ((out (assoc-ref outputs "out"))) (for-each (lambda (subprogram) - ;; The symlinks point to the ansible wrapper script. Make - ;; them point to the real executable (.ansible-real). - (delete-file (string-append out "/bin/.ansible-" subprogram "-real")) - (symlink (string-append out "/bin/.ansible-real") - (string-append out "/bin/.ansible-" subprogram "-real")) - ;; The wrapper scripts of the symlinks invoke the ansible - ;; wrapper script. Fix them to invoke the correct executable. - (substitute* (string-append out "/bin/ansible-" subprogram) - (("/bin/ansible") - (string-append "/bin/.ansible-" subprogram "-real")))) + (delete-file (string-append out "/bin/ansible-" subprogram)) + (copy-file (string-append out "/bin/ansible") + (string-append out "/bin/ansible-" subprogram))) (list "config" "console" "doc" "galaxy" "inventory" "playbook" "pull" "vault"))) #t)))))