summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorraingloom <raingloom@riseup.net>2020-09-06 19:11:32 +0200
committerJulien Lepiller <julien@lepiller.eu>2020-09-07 14:01:12 +0200
commit1394765238c21030ace4fbb773dc86a9e3c2504c (patch)
tree8055abc58f1736f0d57c42d557f5714c277760ba /gnu
parentaecb61135c2edba236318b61fd0ac81832852a15 (diff)
downloadguix-1394765238c21030ace4fbb773dc86a9e3c2504c.tar.gz
gnu: coq: fix coqide not finding coqidetop.opt
* gnu/packages/coq.scm (coq) [arguments]:
  Turn duplicates into symlinks instead of deleting them in remove-duplicate.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/coq.scm14
1 files changed, 11 insertions, 3 deletions
diff --git a/gnu/packages/coq.scm b/gnu/packages/coq.scm
index 8f98017520..11afdf59f2 100644
--- a/gnu/packages/coq.scm
+++ b/gnu/packages/coq.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
 ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
 ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
+;;; Copyright © 2020 raingloom <raingloom@riseup.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -96,11 +97,18 @@
          (add-after 'install 'remove-duplicate
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
-                    (bin (string-append out "/bin")))
+                    (bin (string-append out "/bin"))
+                    (coqtop (string-append bin "/coqtop"))
+                    (coqidetop (string-append bin "/coqidetop"))
+                    (coqtop.opt (string-append coqtop ".opt"))
+                    (coqidetop.opt (string-append coqidetop ".opt")))
                ;; These files are exact copies without `.opt` extension.
                ;; Removing these saves 35 MiB in the resulting package.
-               (delete-file (string-append bin "/coqtop.opt"))
-               (delete-file (string-append bin "/coqidetop.opt")))
+               ;; Unfortunately, completely deleting them breaks coqide.
+               (delete-file coqtop.opt)
+               (delete-file coqidetop.opt)
+               (symlink coqtop coqtop.opt)
+               (symlink coqidetop coqidetop.opt))
              #t))
          (add-after 'install 'install-ide
            (lambda* (#:key outputs #:allow-other-keys)