Subject: [bug#51795] [PATCH] gnu: Add imppg

From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 13 Nov 2021 10:01:44 +0000

Hi Vinicius,

Thank you for your fead back, I've updated patch with your suggestions.

successfully built /gnu/store/43jw7kaqriz7vb2vslkqjv3sn21gwdpf-imppg-0.6.4.drv

On Sat, 13 Nov 2021 at 01:49, Vinicius Monego <[email-masked]> wrote:
>
> Hi Sharlatan,
>
> Em sex, 2021-11-12 às 21:21 +0000, Sharlatan Hellseher escreveu:
> > * gnu/packages/astronomy.scm: (imppg): New variable.
> > ---
> >  gnu/packages/astronomy.scm | 53
> > ++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 53 insertions(+)
> >
> > diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
> > index fc8959faad..57f62dc24d 100644
> > --- a/gnu/packages/astronomy.scm
> > +++ b/gnu/packages/astronomy.scm
> > @@ -32,6 +32,7 @@ (define-module (gnu packages astronomy)
> >    #:use-module (gnu packages)
> >    #:use-module (gnu packages algebra)
> >    #:use-module (gnu packages autotools)
> > +  #:use-module (gnu packages boost)
> >    #:use-module (gnu packages check)
> >    #:use-module (gnu packages compression)
> >    #:use-module (gnu packages curl)
> > @@ -56,6 +57,7 @@ (define-module (gnu packages astronomy)
> >    #:use-module (gnu packages qt)
> >    #:use-module (gnu packages version-control)
> >    #:use-module (gnu packages video)
> > +  #:use-module (gnu packages wxwidgets)
> >    #:use-module (gnu packages xiph)
> >    #:use-module (gnu packages xml)
> >    #:use-module (gnu packages xorg)
> > @@ -986,6 +988,57 @@ (define-public sgp4
> >  It can be used to calculate the trajectory of satellites.")
> >        (license license:asl2.0))))
> >
> > +(define-public imppg
> > +  (package
> > +    (name "imppg")
> > +    (version "0.6.4")
> > +    (source
> > +     (origin
> > +       (method git-fetch)
> > +       (uri (git-reference
> > +             (url (string-append
> > "https://github.com/GreatAttractor/" name))
>
> AFAIK we don't use 'name' in the url anymore, it should be hardcoded.
>
> > +             (commit (string-append "v" version))))
> > +       (file-name (git-file-name name version))
> > +       (sha256
> > +        (base32
> > "04synbmyz0hkipl1cdc26nr42r57v494yjw8pi4jx0jrxrawgj9h"))))
> > +    (build-system cmake-build-system)
> > +    (arguments
> > +     `(#:tests? #f ; No test provided
> > +       #:phases
> > +       (modify-phases %standard-phases
> > +         (replace 'configure
> > +           (lambda* (#:key outputs #:allow-other-keys)
> > +             (mkdir-p "build")
> > +             (chdir "build")
> > +             (invoke
> > +              "cmake"
> > +              "-G" "Unix Makefiles"
> > +              "-DCMAKE_BUILD_TYPE=Release"
> > +              (string-append "-DCMAKE_INSTALL_PREFIX=" (assoc-ref
> > outputs "out"))
> > +              ".."))))))
>
> This is unusual. Why are we overriding the configure phase? I could
> build the package just fine with the standard phase.
>
> CMAKE_BUILD_TYPE can be set to Release using '#:build-type "Release"'.
> Other CMake variables can be changed in #:configure-flags.
>
> AFAIK Guix also avoids setting CMAKE_BUILD_TYPE to "Release" without a
> good reason, such as debug symbols being too large.
>
> > +    (native-inputs
> > +     `(("boost" ,boost)
> > +       ("pkg-config" ,pkg-config)))
> > +    (inputs
> > +     `(("cfitsio" ,cfitsio)
> > +       ("freeimage" ,freeimage)
> > +       ("glew" ,glew)
> > +       ("wxwidgets" ,wxwidgets)))
> > +    (home-page "https://github.com/GreatAttractor/imppg")
> > +    (synopsis "Astronomical Image Post-Proccessor (ImPPG)")
> > +    (description
> > +     "ImPPG performs Lucy-Richardson deconvolution, unsharp masking,
> > brightness
> > +normalization and tone curve adjustment.  It can also apply
> > previously specified
> > +processing settings to multiple images.  All operations are
> > performed using
> > +32-bit floating-point arithmetic.
> > +
> > +Supported input formats: FITS, BMP, JPEG, PNG, TIFF (most of bit
> > depths and
> > +compression methods), TGA and more.  Images are processed in
> > grayscale and can be
> > +saved as: BMP 8-bit; PNG 8-bit; TIFF 8-bit, 16-bit, 32-bit floating-
> > point (no
> > +compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit, 32-bit
> > +floating-point.")
>
> Description exceeded 78 columns in 3 lines.
>
> > +     (license license:gpl3+)))
> > +
> >  (define-public indi
> >    (package
> >      (name "indi")
>
> LGTM otherwise!
>

-- 

… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
From 2d6b1d7984b899965d588328b7b792c6f6f21160 Mon Sep 17 00:00:00 2001
From: Sharlatan Hellseher <[email-masked]>
Date: Sat, 13 Nov 2021 09:59:32 +0000
Subject: [PATCH] gnu: Add imppg

* gnu/packages/astronomy.scm: (imppg): New variable.
---
 gnu/packages/astronomy.scm | 45 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index fc8959faad..41f7a929dc 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -32,6 +32,7 @@ (define-module (gnu packages astronomy)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
@@ -56,6 +57,7 @@ (define-module (gnu packages astronomy)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages video)
+  #:use-module (gnu packages wxwidgets)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
@@ -986,6 +988,49 @@ (define-public sgp4
 It can be used to calculate the trajectory of satellites.")
       (license license:asl2.0))))
 
+(define-public imppg
+  (package
+    (name "imppg")
+    (version "0.6.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url (string-append "https://github.com/GreatAttractor/imppg"))
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "04synbmyz0hkipl1cdc26nr42r57v494yjw8pi4jx0jrxrawgj9h"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ; No test provided
+       #:configure-flags
+       (list
+        (string-append
+         "-DCMAKE_INSTALL_PREFIX=" (assoc-ref %outputs "out")))))
+    (native-inputs
+     `(("boost" ,boost)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("cfitsio" ,cfitsio)
+       ("freeimage" ,freeimage)
+       ("glew" ,glew)
+       ("wxwidgets" ,wxwidgets)))
+    (home-page "https://github.com/GreatAttractor/imppg")
+    (synopsis "Astronomical Image Post-Proccessor (ImPPG)")
+    (description
+     "ImPPG performs Lucy-Richardson deconvolution, unsharp masking,
+brightness normalization and tone curve adjustment.  It can also apply
+previously specified processing settings to multiple images.  All operations
+are performed using 32-bit floating-point arithmetic.
+
+Supported input formats: FITS, BMP, JPEG, PNG, TIFF (most of bit depths and
+compression methods), TGA and more.  Images are processed in grayscale and can
+be saved as: BMP 8-bit; PNG 8-bit; TIFF 8-bit, 16-bit, 32-bit
+floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
+32-bit floating-point.")
+     (license license:gpl3+)))
+
 (define-public indi
   (package
     (name "indi")
-- 
2.33.1