;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016, 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2016, 2017, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages qt)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tex)
#:use-module (gnu packages compression)
"guile-charting-" version ".tar.gz"))
(sha256
(base32
- "0w5qiyv9v0ip5li22x762bm48g8xnw281w66iyw094zdw611pb2m"))))
+ "0w5qiyv9v0ip5li22x762bm48g8xnw281w66iyw094zdw611pb2m"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Allow builds with Guile 3.0.
+ (substitute* "configure"
+ (("2\\.2 2\\.0")
+ "3.0 2.2 2.0"))
+
+ ;; By default, .go files would be installed to
+ ;; $libdir/…/ccache instead of $libdir/…/site-ccache. Fix
+ ;; that.
+ (substitute* (find-files "." "^Makefile\\.in$")
+ (("/ccache") "/site-ccache"))
+ #t))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2)))
using the Cairo drawing library.")
(license license:lgpl2.1+)))
+(define-public guile3.0-charting
+ (package
+ (inherit guile-charting)
+ (name "guile3.0-charting")
+ (inputs `(("guile" ,guile-3.0)))
+ (propagated-inputs `(("guile-cairo" ,guile3.0-cairo)))))
+
(define-public ploticus
(package
(name "ploticus")
(define-public asymptote
(package
(name "asymptote")
- (version "2.49")
+ (version "2.62")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/asymptote/"
version "/asymptote-" version ".src.tgz"))
(sha256
(base32
- "1vljhq68gyc2503l9fj76rk1q4a4db9a1sp3fdfagqqmirnmybp5"))))
+ "0510vnlpfyrvshsxr5lh3klwyhmn2cf4ba1ja476mbv5dcqqbc30"))))
(build-system gnu-build-system)
;; Note: The 'asy' binary retains a reference to docdir for use with its
;; "help" command in interactive mode, so adding a "doc" output is not
`(("emacs" ,emacs-minimal)
("gs" ,ghostscript) ;For tests
("perl" ,perl)
- ("texinfo" ,texinfo) ;For generating documentation
+ ("texinfo" ,texinfo) ;For generating documentation
;; For the manual and the tests.
- ("texlive" ,(texlive-union (list texlive-fonts-amsfonts
- texlive-latex-amsfonts
+ ("texlive" ,(texlive-union (list texlive-amsfonts
+ texlive-epsf
+ texlive-latex-base
texlive-latex-geometry
texlive-latex-graphics
texlive-latex-oberdiek ; for ifluatex
("gsl" ,gsl)
("libgc" ,libgc)
("python" ,python)
+ ("python-cson" ,python-cson)
+ ("python-numpy" ,python-numpy)
+ ("python-pyqt" ,python-pyqt)
("readline" ,readline)
("zlib" ,zlib)))
(arguments
(substitute* (find-files "." "\\.in$")
(("#include <primitives.h>") "#include \"primitives.h\""))
(invoke "touch" "prc/config.h")))
+ (add-after 'unpack 'move-info-location
+ ;; Build process installs info file in the unusual
+ ;; "%out/share/info/asymptote/" location. Move it to
+ ;; "%out/share/info/" so it appears in the top-level directory.
+ (lambda _
+ (substitute* "doc/png/Makefile.in"
+ (("(\\$\\(infodir\\))/asymptote" _ infodir) infodir))
+ (substitute* "doc/asymptote.texi"
+ (("asymptote/asymptote") "asymptote"))
+ #t))
(add-before 'build 'patch-pdf-viewer
(lambda _
;; Default to a free pdf viewer.
(for-each (cut install-file <> lisp-dir)
(find-files "." "\\.el$"))
(emacs-generate-autoloads ,name lisp-dir))
+ #t))
+ (add-after 'install-Emacs-data 'wrap-python-script
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Make sure 'xasy' runs with the correct PYTHONPATH.
+ (let* ((out (assoc-ref outputs "out"))
+ (path (getenv "PYTHONPATH")))
+ (wrap-program (string-append out "/share/asymptote/GUI/xasy.py")
+ `("PYTHONPATH" ":" prefix (,path))))
#t)))))
(home-page "http://asymptote.sourceforge.net")
(synopsis "Script-based vector graphics language")