From 2bdebad4adfa78b9c0870341dcc08a36f7ad7734 Mon Sep 17 00:00:00 2001
From: raingloom <raingloom@riseup.net>
Date: Sun, 6 Sep 2020 19:11:32 +0200
Subject: [PATCH] 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.
---
gnu/packages/coq.scm | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
@@ -96,11 +96,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)
--
2.28.0