guix_mirror_bot pushed a commit to branch astro-updates
in repository guix.

commit b191abed542ba0f0e0956e489404010b26399892
Author: Sharlatan Hellseher <sharlata...@gmail.com>
AuthorDate: Wed Sep 17 23:14:28 2025 +0100

    gnu: Add tenmon.
    
    * gnu/packages/astronomy.scm (tenmon, libxisf-for-tenmon): New
    variables.
    
    Change-Id: I0398fe657aa944883d1160265fe0113a0ae24ab0
---
 gnu/packages/astronomy.scm | 93 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 93 insertions(+)

diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 62da8e0997..39ea07eceb 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -1742,6 +1742,25 @@ PixInsight}.  It implements
 1.0 specification}.")
     (license license:gpl3+)))
 
+(define-public libxisf-for-tenmon
+  ;; This is an exact commit required for tenmon git submodule.
+  (let ((commit "556bb22d2675ee6072c6224fef3da0fb5d93db41")
+        (revision "0"))
+    (hidden-package
+     (package
+       (inherit libxisf)
+       (name "libxisf")
+       (version (git-version "0.2.13" revision commit))
+       (source
+        (origin
+          (method git-fetch)
+          (uri (git-reference
+                 (url "https://gitea.nouspiro.space/nou/libXISF";)
+                 (commit commit)))
+          (file-name (git-file-name name version))
+          (sha256
+           (base32 
"037dijy0ql1mwm8nddwawlf3ms6w30kxdlkrjjprfsss80ssn30k"))))))))
+
 (define-public missfits
   (package
     (name "missfits")
@@ -10462,6 +10481,80 @@ See related paper
 @url{https://ui.adsabs.harvard.edu/abs/2006MNRAS.369..655H/abstract}.";)
     (license license:gpl3+)))
 
+(define-public tenmon
+  (package
+    (name "tenmon")
+    (version "20250915")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitea.nouspiro.space/nou/tenmon";)
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0ay95kdsmv4xli25l7khga4ldwy4irrfc15649s3mgqcd5gl3pfw"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:tests? #f ;no test target
+      #:configure-flags
+      #~(list "-DCMAKE_C_FLAGS=-Wno-error=implicit-function-declaration")
+      #:phases
+      #~(modify-phases %standard-phases
+          ;; libxisf is expected to be found as git submodule, link it before
+          ;; build.
+          (add-after 'unpack 'link-libxisf
+            (lambda _
+              (rmdir "libXISF")
+              (symlink #+(package-source (this-package-native-input "libxisf"))
+                       (string-append (getcwd) "/libXISF")))))))
+    (native-inputs
+     (list git-minimal/pinned
+           libxisf-for-tenmon
+           pkg-config ))
+    (inputs
+     (list cfitsio
+           glu
+           gsl
+           libexif
+           libraw
+           qtbase
+           qtcharts
+           qtdeclarative
+           wcslib
+           zstd
+           (list zstd "lib")))
+    (home-page "https://nouspiro.space/?page_id=206";)
+    (synopsis "FITS and XISF image viewer, converter and indexer")
+    (description
+     "FITS/XISF image viewer with multithreaded image loading.  It is intended
+primarily for viewing astro photos and images with support of following
+formats:
+
+@itemize
+@item FITS 8, 16 bit integer and 32 bit float
+@item XISF 8, 16 bit integer and 32 bit float
+@item RAW CR2, DNG, NEF
+@item JPEG, PNG, BMP, GIF, PBM, PGM, PPM and SVG images
+@end itemize
+
+Features:
+@itemize
+@item using same stretch function as PixInsight
+@item OpenGL accelerated drawing
+@item index and search FITS XISF header data
+@item quick mark images and then copy/move marked files
+@item convert FITS <-> XISF
+@item convert FITS/XISF -> JPEG/PNG
+@item image statistics mean, media, min, max
+@item support for WCS
+@item thumbnails
+@item convert CFA images to colour – debayer
+@item color space aware
+@end itemize")
+    (license license:gpl3+)))
+
 (define-public unsio
   ;; There is no versioned tag, use the latest commit.
   (let ((commit "ac48210ec24432ec3ad330c4203e7eb21876a921")

Reply via email to