;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019 by Amar Singh <nly@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix utils)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages image)
#:use-module (gnu packages compression)
#:use-module (gnu packages gettext)
+ #:use-module (gnu packages version-control)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages xiph)
+ #:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages algebra)
+ #:use-module (gnu packages lua)
#:use-module (gnu packages perl)
#:use-module (gnu packages gl)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages maths)
#:use-module (guix build-system cmake)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (srfi srfi-1))
(define-public cfitsio
(package
(name "cfitsio")
- (version "3.450")
+ (version "3.47")
(source
(origin
(method url-fetch)
(uri (string-append
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
- name (string-replace-substring version "." "") ".tar.gz"))
+ name "-" version ".tar.gz"))
(sha256
- (base32 "0bmrkw6w65zb0k3mszaaqy1f4zjm2hl7njww74nb5v38wvdi4q5z"))))
+ (base32 "1vzlxnrjckz78p2wf148v2z3krkwnykfqvlj42sz3q711vqid1a1"))))
(build-system gnu-build-system)
;; XXX Building with curl currently breaks wcslib. It doesn't use
;; pkg-config and hence won't link with -lcurl.
(define-public wcslib
(package
(name "wcslib")
- (version "5.20")
+ (version "6.4")
(source
(origin
(method url-fetch)
(uri (string-append
- "ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version
+ "ftp://ftp.atnf.csiro.au/pub/software/wcslib/wcslib-" version
".tar.bz2"))
(sha256
- (base32 "1c8g9kv4dxrnawnqi4spi2p10s2xs7x75pdfxhbqxgcc97dkgh0b"))))
+ (base32 "003h23m6d5wcs29v2vbnl63f3z35k5x70lpsqlz5c9bp1bvizh8k"))))
(inputs
`(("cfitsio" ,cfitsio)))
(build-system gnu-build-system)
(arguments
- `(#:phases
+ `(#:configure-flags
+ (list (string-append "--with-cfitsiolib="
+ (assoc-ref %build-inputs "cfitsio") "/lib")
+ (string-append "--with-cfitsioinc="
+ (assoc-ref %build-inputs "cfitsio") "/include"))
+ #:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-/bin/sh
(lambda _
(define-public gnuastro
(package
(name "gnuastro")
- (version "0.8")
+ (version "0.11")
(source
(origin
(method url-fetch)
version ".tar.lz"))
(sha256
(base32
- "0gx6iar3z07k9sdvpa6kchsz6fpk94xn5vcvbcigssl2dwqmlnkb"))))
+ "0c1yc2qb7vrqad96savfn06rn01izlfz0va738signv93qqj5k3v"))))
(inputs
`(("cfitsio" ,cfitsio)
("gsl" ,gsl)
("wcslib" ,wcslib)
("zlib" ,zlib)))
(native-inputs
- `(("lzip" ,lzip)))
+ `(("libtool" ,libtool)
+ ("lzip" ,lzip)))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/gnuastro/")
(synopsis "Astronomy utilities")
(define-public stellarium
(package
(name "stellarium")
- (version "0.19.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/Stellarium/" name
- "/releases/download/v" version
- "/" name "-" version ".tar.gz"))
- (sha256
- (base32
- "1mjjqcpgm5a1022x0mpqj3v6qkvpm9wqm1hqyg0mlypc5681va8a"))))
+ (version "0.19.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/Stellarium/stellarium"
+ "/releases/download/v" version
+ "/stellarium-" version ".tar.gz"))
+ (sha256
+ (base32 "10b05slj5fjakrjb20m68xql68plb64mwn0165dy2fry8z2hbl74"))))
(build-system cmake-build-system)
(inputs
`(("qtbase" ,qtbase)
("qtserialport" ,qtserialport)
("zlib" ,zlib)))
(native-inputs
- `(("gettext" ,gettext-minimal) ; xgettext is used at compile time
- ("perl" ,perl) ; For pod2man
- ("qtbase" ,qtbase) ; Qt MOC is needed at compile time
+ `(("gettext" ,gettext-minimal) ; xgettext is used at compile time
+ ("perl" ,perl) ; For pod2man
+ ("qtbase" ,qtbase) ; Qt MOC is needed at compile time
("qttools" ,qttools)))
(arguments
`(#:test-target "test"
can be used to control telescopes over a serial port for tracking celestial
objects.")
(license license:gpl2+)))
+
+(define-public celestia
+ (let ((commit "9dbdf29c4ac3d20afb2d9a80d3dff241ecf81dce"))
+ (package
+ (name "celestia")
+ (version (git-version "1.6.1" "815" commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/celestiaproject/celestia")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "00xibg87l1arzifakgj7s828x9pszcgx7x7ij88a561ig49ryh78"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("perl" ,perl)
+ ("libgit2" ,libgit2)
+ ("pkg-config" ,pkg-config)
+ ("libtool" ,libtool)
+ ("gettext" ,gettext-minimal)))
+ (inputs
+ `(("glu" ,glu)
+ ("glew" ,glew)
+ ("libtheora" ,libtheora)
+ ("libjpeg" ,libjpeg)
+ ("libpng" ,libpng)
+ ;; maybe required?
+ ("mesa" ,mesa)
+ ;; optional: fmtlib, Eigen3;
+ ("fmt" ,fmt)
+ ("eigen" ,eigen)
+ ;; glut: for glut interface
+ ("freeglut" ,freeglut)))
+ (propagated-inputs
+ `(("lua" ,lua)))
+ (arguments
+ `(#:configure-flags '("-DENABLE_GLUT=ON" "-DENABLE_QT=OFF")
+ #:tests? #f)) ;no tests
+ (home-page "https://celestia.space/")
+ (synopsis "Real-time 3D visualization of space")
+ (description
+ "This simulation program lets you explore our universe in three
+dimensions. Celestia simulates many different types of celestial objects.
+From planets and moons to star clusters and galaxies, you can visit every
+object in the expandable database and view it from any point in space and
+time. The position and movement of solar system objects is calculated
+accurately in real time at any rate desired.")
+ (license license:gpl2+))))
+
+(define-public celestia-gtk
+ (package
+ (inherit celestia)
+ (name "celestia-gtk")
+ (inputs
+ (append (alist-delete "freeglut" (package-inputs celestia))
+ `(("gtk2" ,gtk+-2)
+ ("gtkglext" ,gtkglext))))
+ (arguments
+ `(#:configure-flags '("-DENABLE_GTK=ON" "-DENABLE_QT=OFF")
+ #:tests? #f))))
+
+(define-public libnova
+ (package
+ (name "libnova")
+ (version "0.16")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.code.sf.net/p/libnova/libnova.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0icwylwkixihzni0kgl0j8dx3qhqvym6zv2hkw2dy6v9zvysrb1b"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-git-version
+ (lambda _
+ (substitute* "./git-version-gen"
+ (("/bin/sh") (which "sh")))
+ #t)))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (synopsis "Celestial mechanics, astrometry and astrodynamics library")
+ (description "Libnova is a general purpose, double precision, Celestial
+Mechanics, Astrometry and Astrodynamics library.")
+ (home-page "http://libnova.sourceforge.net/")
+ (license (list license:lgpl2.0+
+ license:gpl2+)))) ; examples/transforms.c & lntest/*.c
+