guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

11/11: gnu: Add stackistry.


From: guix-commits
Subject: 11/11: gnu: Add stackistry.
Date: Fri, 19 Feb 2021 05:07:04 -0500 (EST)

glv pushed a commit to branch master
in repository guix.

commit 19e081138b43b50e505f86c7e1321d8fa064980d
Author: Sharlatan Hellseher <sharlatanus@gmail.com>
AuthorDate: Tue Feb 16 22:51:19 2021 +0000

    gnu: Add stackistry.
    
    * gnu/packages/astronomy.scm (stackistry): New variable.
    
    Co-authored-by: Guillaume Le Vaillant <glv@posteo.net>
---
 gnu/packages/astronomy.scm | 64 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 5e5a9a2..f617d7b 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -332,6 +332,70 @@ astronomical fields.  SkyMaker is part of the EFIGI
 (@url{https://www.astromatic.net/projects/efigi}) development project.")
     (license license:gpl3+)))
 
+(define-public stackistry
+  (package
+    (name "stackistry")
+    (version "0.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/GreatAttractor/stackistry";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0rz29v33n0x0k40hv3v79ym5ylch1v0pbph4i21809gz2al5p7dq"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags
+       (list
+        (string-append
+         "SKRY_INCLUDE_PATH=" (assoc-ref %build-inputs "libskry") "/include")
+        (string-append
+         "SKRY_LIB_PATH=-L" (assoc-ref %build-inputs "libskry") "/lib")
+        (string-append
+         "LIBAV_INCLUDE_PATH=" (assoc-ref %build-inputs "ffmpeg") "/include"))
+       #:phases
+       (modify-phases %standard-phases
+         ;; no configure and tests are provided
+         (delete 'configure)
+         (delete 'check)
+         (add-after 'unpack 'fix-paths
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "src/main.cpp"
+               (("\"\\.\\.\", \"lang\"")
+                "\"../share/stackistry\", \"lang\""))
+             (substitute* "src/utils.cpp"
+               (("\"\\.\\.\", \"icons\"")
+                "\"../share/stackistry\", \"icons\""))
+             #t))
+         (replace 'install
+           ;; The Makefile lacks an ‘install’ target.
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (icons (string-append out "/share/stackistry/icons"))
+                    (lang (string-append out "/share/stackistry/lang")))
+               (copy-recursively "bin" bin)
+               (copy-recursively "icons" icons)
+               (copy-recursively "lang" lang))
+             #t)))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+     (inputs
+      `(("gtkmm" ,gtkmm)
+        ("libskry" ,libskry)
+        ("ffmpeg" ,ffmpeg)))
+     (home-page "https://github.com/GreatAttractor/stackistry";)
+     (synopsis "Astronomical lucky imaging/image stacking tool")
+     (description
+      "Stackistry implements the lucky imaging principle of astronomical
+imaging: creating a high-quality still image out of a series of many (possibly
+thousands) low quality ones (blurred, deformed, noisy).  The resulting image
+stack typically requires post-processing, including sharpening (e.g. via
+deconvolution).  Such post-processing is not performed by Stackistry.")
+     (license license:gpl3+)))
+
 (define-public stellarium
   (package
     (name "stellarium")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]