gnu: celestia: Update to 1.6.4-0.d3f4040.

This is a follow-up to 51640e4820.

Celestia is built from the latest commit providing Qt6 support and many
other new features.

* gnu/packages/astronomy.scm (celestia): Update to 1.6.4-0.d3f4040.
[buld-system]: Switch to cmake-build-system.
[arguments] <configure-flags>: Adjust it for the build.
<phases>: Remove 'patch-lua-version; add 'install-content.
[inputs]: Remove freeglut and libtheora; add eigen, ffmpeg, fmt,
freetype, gperf, libavif, libepoxy, qtbase, and qtwayland.
[propagated-inputs]: Add perl.
[native-inputs]: Remove autoconf, automake, libgit2, libtool, and perl;
add boost and celestia-content.

Change-Id: Ida03597bd9c2d5de31322b3aae88baa6b007889c
This commit is contained in:
Sharlatan Hellseher 2025-09-18 11:02:35 +01:00
parent 4be030e62f
commit 6f0c596658
No known key found for this signature in database
GPG key ID: 76D727BFF62CD2B5

View file

@ -78,12 +78,14 @@
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-maths) #:use-module (gnu packages golang-maths)
#:use-module (gnu packages golang-xyz) #:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gperf)
#:use-module (gnu packages gps) #:use-module (gnu packages gps)
#:use-module (gnu packages graph) #:use-module (gnu packages graph)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages image-processing) #:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages jupyter) #:use-module (gnu packages jupyter)
#:use-module (gnu packages libevent) #:use-module (gnu packages libevent)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
@ -540,57 +542,64 @@ Library with namespaces, exception handling, and member template functions.")
"See License.txt in the distribution.")))) "See License.txt in the distribution."))))
(define-public celestia (define-public celestia
;; 1.6.4 was placed in 2023 while master migrated to Qt6, use the lates
;; commit for now.
(let ((commit "d3f4040401f5f71bcca79e55d53be75c05b867ef")
(revision "0"))
(package (package
(name "celestia") (name "celestia")
(version "1.6.4") (version (git-version "1.6.4" revision commit))
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/celestiaproject/celestia") (url "https://github.com/celestiaproject/celestia")
(commit version))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0nz9k5nd2zmrbwj1qhsfwmvqymqk8c4yjxpybck44isrild2ah9j")))) (base32 "0rqkzxyf8gfjprhj1c19d7chhc3b94wlq2119wz0c344rx7hnh9l"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(arguments (arguments
(list (list
#:modules #:tests? #f ;no tests were found
`((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-71))
#:configure-flags #:configure-flags
#~(list "--with-glut" #~(list "-DENABLE_FFMPEG=ON"
(string-append "--with-lua=" #$(this-package-input "lua"))) "-DENABLE_GLES=ON"
"-DENABLE_LIBAVIF=ON"
"-DENABLE_QT6=ON"
"-DENABLE_TOOLS=ON"
"-DUSE_QT6=ON")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-lua-version ;; TODO: Wrap celestia-content instead of copping it, if posible.
(add-after 'install 'install-content
(lambda _ (lambda _
(let* ((_ version (package-name->name+version (copy-recursively
#$(this-package-input "lua"))) (string-append #$(this-package-native-input "celestia-content")
(components (string-split version #\.)) "/share")
(major+minor (string-join (take components 2) "."))) (string-append #$output "/share")))))))
(substitute* "configure.ac"
(("lua5.3")
(string-append "lua-" major+minor)))))))))
(native-inputs (native-inputs
(list autoconf (list boost
automake celestia-content
gettext-minimal gettext-minimal
libgit2
libtool
perl
pkg-config)) pkg-config))
(inputs (inputs
(list freeglut (list eigen
ffmpeg
fmt
freetype
glu glu
gperf
libavif
libepoxy
libjpeg-turbo libjpeg-turbo
libpng libpng
libtheora mesa
mesa)) qtbase
qtwayland))
(propagated-inputs (propagated-inputs
(list lua)) (list lua
perl))
(home-page "https://celestia.space/") (home-page "https://celestia.space/")
(synopsis "Real-time 3D visualization of space") (synopsis "Real-time 3D visualization of space")
(description (description
@ -600,7 +609,7 @@ 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 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 time. The position and movement of solar system objects is calculated
accurately in real time at any rate desired.") accurately in real time at any rate desired.")
(license license:gpl2+))) (license license:gpl2+))))
(define-public celestia-content (define-public celestia-content
;; No rleases or version tags. ;; No rleases or version tags.