[PATCH] gnu: Add phd2

  • Done
  • quality assurance status badge
Details
2 participants
  • Maxim Cournoyer
  • Sharlatan Hellseher
Owner
unassigned
Submitted by
Sharlatan Hellseher
Severity
normal

Debbugs page

Sharlatan Hellseher wrote 2 years ago
(address . guix-patches@gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
20230320215028.26102-1-sharlatanus@gmail.com
* gnu/packages/astronomy.scm (phd2): New variable.
---
gnu/packages/astronomy.scm | 71 ++++++++++++++++++++++++++++++++++++++
1 file changed, 71 insertions(+)

Toggle diff (84 lines)
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 46839c802f..66040ad5f5 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -678,6 +678,77 @@ (define-public gnuastro
programs for the manipulation and analysis of astronomical data.")
(license license:gpl3+)))
+(define-public phd2
+ (package
+ (name "phd2")
+ (version "2.6.11")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/OpenPHDGuiding/phd2")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0n87xsv9gzrwk1ygws4vw397ffq40xybp5b3c3bd5kcmff0avaw9"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; NOTE: Keep eye on the thirdparty directory as the bundled names
+ ;; change from relase to release.
+ ;;
+ ;; Remove bundles.
+ (with-directory-excursion "thirdparty"
+ (for-each delete-file-recursively
+ '("HID_Utilities"
+ "MallincamGuider-OSX-dylib-source.zip"
+ "VidCapture"
+ "cfitsio-3.47-patched.tar.gz"
+ "cfitsio-README-PHD2.txt"
+ "cfitsio-snprintf.patch"
+ "eigen-eigen-67e894c6cd8f.tar.bz2"
+ "gettext-0.14.4-bin.zip"
+ "gettext-0.14.4-dep.zip"
+ "gtest-1.7.0.zip"
+ "indiclient-44aaf5d3-win32.zip"
+ "libcurl-7.54.0-win32.zip"
+ "libdc1394-2.2.2.tar.gz"
+ "libindi-58b26c584049e1b9ecd55aa5f4a225677a417898.tar.gz"
+ "libusb-1.0.21.tar.bz2"
+ "openssag")))))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags
+ #~(list "-DOPENSOURCE_ONLY=yes"
+ "-DUSE_SYSTEM_CFITSIO=yes"
+ "-DUSE_SYSTEM_EIGEN3=yes"
+ "-DUSE_SYSTEM_GTEST=yes"
+ "-DUSE_SYSTEM_LIBINDI=yes"
+ "-DUSE_SYSTEM_LIBUSB=yes")))
+ (native-inputs
+ (list gettext-minimal
+ googletest
+ perl
+ pkg-config
+ python-wrapper))
+ (inputs
+ (list cfitsio
+ curl-minimal
+ eigen
+ gtk+
+ indi
+ libnova
+ libusb
+ wxwidgets
+ zlib))
+ (home-page "https://openphdguiding.org")
+ (synopsis "Teleskope guiding software")
+ (description
+ "PHD2 is the enhanced, second generation version of the PHD guiding
+software from Stark Labs to simplify the process of tracking a guide star.")
+ (license license:bsd-3)))
+
(define-public sextractor
(package
(name "sextractor")
--
2.39.2
Maxim Cournoyer wrote 2 years ago
(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)(address . 62306@debbugs.gnu.org)
87lejpnc17.fsf@gmail.com
Hi,

Sharlatan Hellseher <sharlatanus@gmail.com> writes:

Toggle quote (52 lines)
> * gnu/packages/astronomy.scm (phd2): New variable.
> ---
> gnu/packages/astronomy.scm | 71 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 71 insertions(+)
>
> diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
> index 46839c802f..66040ad5f5 100644
> --- a/gnu/packages/astronomy.scm
> +++ b/gnu/packages/astronomy.scm
> @@ -678,6 +678,77 @@ (define-public gnuastro
> programs for the manipulation and analysis of astronomical data.")
> (license license:gpl3+)))
>
> +(define-public phd2
> + (package
> + (name "phd2")
> + (version "2.6.11")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/OpenPHDGuiding/phd2")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32 "0n87xsv9gzrwk1ygws4vw397ffq40xybp5b3c3bd5kcmff0avaw9"))
> + (modules '((guix build utils)))
> + (snippet
> + '(begin
> + ;; NOTE: Keep eye on the thirdparty directory as the bundled names
> + ;; change from relase to release.
> + ;;
> + ;; Remove bundles.
> + (with-directory-excursion "thirdparty"
> + (for-each delete-file-recursively
> + '("HID_Utilities"
> + "MallincamGuider-OSX-dylib-source.zip"
> + "VidCapture"
> + "cfitsio-3.47-patched.tar.gz"
> + "cfitsio-README-PHD2.txt"
> + "cfitsio-snprintf.patch"
> + "eigen-eigen-67e894c6cd8f.tar.bz2"
> + "gettext-0.14.4-bin.zip"
> + "gettext-0.14.4-dep.zip"
> + "gtest-1.7.0.zip"
> + "indiclient-44aaf5d3-win32.zip"
> + "libcurl-7.54.0-win32.zip"
> + "libdc1394-2.2.2.tar.gz"
> + "libindi-58b26c584049e1b9ecd55aa5f4a225677a417898.tar.gz"
> + "libusb-1.0.21.tar.bz2"
> + "openssag")))))))

To make maintenance easier, perhaps you could reuse the 'delete-all-but'
procedure from turbovnc or similar? This has the benefit of listing
what is kept (more transparent), and if the things we do care for change
names, we will know.

Could you please send a v2 with this suggestion implemented?

--
Thanks,
Maxim
Maxim Cournoyer wrote 2 years ago
control message for bug #62306
(address . control@debbugs.gnu.org)
87jzz9nc08.fsf@gmail.com
tags 62306 + moreinfo
quit
Sharlatan Hellseher wrote 2 years ago
Re: bug#62306: [PATCH] gnu: Add phd2
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 62306@debbugs.gnu.org)
CAO+9K5qZav6rTZPZJxEWFXXg_wXtekLC=APkX+v=ATk-sU37fw@mail.gmail.com
Hi Maxim,

Thank you for the review. I'll check that procedure and prepare simplified
v2 patch.

Oleg

On Tue, 21 Mar 2023, 19:24 Maxim Cournoyer, <maxim.cournoyer@gmail.com>
wrote:

Toggle quote (69 lines)
> Hi,
>
> Sharlatan Hellseher <sharlatanus@gmail.com> writes:
>
> > * gnu/packages/astronomy.scm (phd2): New variable.
> > ---
> > gnu/packages/astronomy.scm | 71 ++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 71 insertions(+)
> >
> > diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
> > index 46839c802f..66040ad5f5 100644
> > --- a/gnu/packages/astronomy.scm
> > +++ b/gnu/packages/astronomy.scm
> > @@ -678,6 +678,77 @@ (define-public gnuastro
> > programs for the manipulation and analysis of astronomical data.")
> > (license license:gpl3+)))
> >
> > +(define-public phd2
> > + (package
> > + (name "phd2")
> > + (version "2.6.11")
> > + (source
> > + (origin
> > + (method git-fetch)
> > + (uri (git-reference
> > + (url "https://github.com/OpenPHDGuiding/phd2")
> > + (commit (string-append "v" version))))
> > + (file-name (git-file-name name version))
> > + (sha256
> > + (base32 "0n87xsv9gzrwk1ygws4vw397ffq40xybp5b3c3bd5kcmff0avaw9"))
> > + (modules '((guix build utils)))
> > + (snippet
> > + '(begin
> > + ;; NOTE: Keep eye on the thirdparty directory as the bundled
> names
> > + ;; change from relase to release.
> > + ;;
> > + ;; Remove bundles.
> > + (with-directory-excursion "thirdparty"
> > + (for-each delete-file-recursively
> > + '("HID_Utilities"
> > + "MallincamGuider-OSX-dylib-source.zip"
> > + "VidCapture"
> > + "cfitsio-3.47-patched.tar.gz"
> > + "cfitsio-README-PHD2.txt"
> > + "cfitsio-snprintf.patch"
> > + "eigen-eigen-67e894c6cd8f.tar.bz2"
> > + "gettext-0.14.4-bin.zip"
> > + "gettext-0.14.4-dep.zip"
> > + "gtest-1.7.0.zip"
> > + "indiclient-44aaf5d3-win32.zip"
> > + "libcurl-7.54.0-win32.zip"
> > + "libdc1394-2.2.2.tar.gz"
> > +
> "libindi-58b26c584049e1b9ecd55aa5f4a225677a417898.tar.gz"
> > + "libusb-1.0.21.tar.bz2"
> > + "openssag")))))))
>
> To make maintenance easier, perhaps you could reuse the 'delete-all-but'
> procedure from turbovnc or similar? This has the benefit of listing
> what is kept (more transparent), and if the things we do care for change
> names, we will know.
>
> Could you please send a v2 with this suggestion implemented?
>
> --
> Thanks,
> Maxim
>
Attachment: file
Sharlatan Hellseher wrote 2 years ago
[PATCH v2] gnu: Add phd2.
(address . 62306@debbugs.gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
20230327084649.5633-1-sharlatanus@gmail.com
* gnu/packages/astronomy.scm (phd2): New variable.
---
gnu/packages/astronomy.scm | 70 ++++++++++++++++++++++++++++++++++++++
1 file changed, 70 insertions(+)

Toggle diff (83 lines)
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 46839c802f..6ca3c4f4e7 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -678,6 +678,76 @@ (define-public gnuastro
programs for the manipulation and analysis of astronomical data.")
(license license:gpl3+)))
+(define-public phd2
+ (package
+ (name "phd2")
+ (version "2.6.11")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/OpenPHDGuiding/phd2")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0n87xsv9gzrwk1ygws4vw397ffq40xybp5b3c3bd5kcmff0avaw9"))
+ (modules '((guix build utils)
+ (ice-9 ftw)
+ (srfi srfi-26)))
+ (snippet
+ #~(begin
+ ;; TODO: This snippet is sourced from
+ ;; guix/gnu/packages/vnc.scm. It might be merged with
+ ;; `delete-file-recursively' which can have `ignore' optional
+ ;; argument.
+ (define (delete-all-but directory . preserve)
+ (define (directory? x)
+ (and=> (stat x #f)
+ (compose (cut eq? 'directory <>) stat:type)))
+ (with-directory-excursion directory
+ (let* ((pred
+ (negate (cut member <> (append '("." "..") preserve))))
+ (items (scandir "." pred)))
+ (for-each (lambda (item)
+ (if (directory? item)
+ (delete-file-recursively item)
+ (delete-file item)))
+ items))))
+ ;; XXX: Check this list of ignored items in next release.
+ (delete-all-but "thirdparty" "thirdparty.cmake")))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags
+ #~(list "-DOPENSOURCE_ONLY=yes"
+ "-DUSE_SYSTEM_CFITSIO=yes"
+ "-DUSE_SYSTEM_EIGEN3=yes"
+ "-DUSE_SYSTEM_GTEST=yes"
+ "-DUSE_SYSTEM_LIBINDI=yes"
+ "-DUSE_SYSTEM_LIBUSB=yes")))
+ (native-inputs
+ (list gettext-minimal
+ googletest
+ perl
+ pkg-config
+ python-wrapper))
+ (inputs
+ (list cfitsio
+ curl-minimal
+ eigen
+ gtk+
+ indi
+ libnova
+ libusb
+ wxwidgets
+ zlib))
+ (home-page "https://openphdguiding.org")
+ (synopsis "Teleskope guiding software")
+ (description
+ "PHD2 is the enhanced, second generation version of the PHD guiding software
+from Stark Labs.")
+ (license license:bsd-3)))
+
(define-public sextractor
(package
(name "sextractor")
--
2.39.2
Sharlatan Hellseher wrote 2 years ago
(address . 62306@debbugs.gnu.org)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
CAO+9K5p89TYw1=B0iEREbaS9_3=mt1iqeKnFf-6R0Y-TagouFw@mail.gmail.com
Hi,
Just a gentle ping on the status of this pach. Let me know if it
requirers to be modified more.
Thanks,
Oleg
--
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
Maxim Cournoyer wrote 2 years ago
(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)(address . 62306-done@debbugs.gnu.org)
87jzyimmzt.fsf_-_@gmail.com
Hi,

Sharlatan Hellseher <sharlatanus@gmail.com> writes:

Toggle quote (87 lines)
> * gnu/packages/astronomy.scm (phd2): New variable.
> ---
> gnu/packages/astronomy.scm | 70 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 70 insertions(+)
>
> diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
> index 46839c802f..6ca3c4f4e7 100644
> --- a/gnu/packages/astronomy.scm
> +++ b/gnu/packages/astronomy.scm
> @@ -678,6 +678,76 @@ (define-public gnuastro
> programs for the manipulation and analysis of astronomical data.")
> (license license:gpl3+)))
>
> +(define-public phd2
> + (package
> + (name "phd2")
> + (version "2.6.11")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/OpenPHDGuiding/phd2")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32 "0n87xsv9gzrwk1ygws4vw397ffq40xybp5b3c3bd5kcmff0avaw9"))
> + (modules '((guix build utils)
> + (ice-9 ftw)
> + (srfi srfi-26)))
> + (snippet
> + #~(begin
> + ;; TODO: This snippet is sourced from
> + ;; guix/gnu/packages/vnc.scm. It might be merged with
> + ;; `delete-file-recursively' which can have `ignore' optional
> + ;; argument.
> + (define (delete-all-but directory . preserve)
> + (define (directory? x)
> + (and=> (stat x #f)
> + (compose (cut eq? 'directory <>) stat:type)))
> + (with-directory-excursion directory
> + (let* ((pred
> + (negate (cut member <> (append '("." "..") preserve))))
> + (items (scandir "." pred)))
> + (for-each (lambda (item)
> + (if (directory? item)
> + (delete-file-recursively item)
> + (delete-file item)))
> + items))))
> + ;; XXX: Check this list of ignored items in next release.
> + (delete-all-but "thirdparty" "thirdparty.cmake")))))
> + (build-system cmake-build-system)
> + (arguments
> + (list
> + #:configure-flags
> + #~(list "-DOPENSOURCE_ONLY=yes"
> + "-DUSE_SYSTEM_CFITSIO=yes"
> + "-DUSE_SYSTEM_EIGEN3=yes"
> + "-DUSE_SYSTEM_GTEST=yes"
> + "-DUSE_SYSTEM_LIBINDI=yes"
> + "-DUSE_SYSTEM_LIBUSB=yes")))
> + (native-inputs
> + (list gettext-minimal
> + googletest
> + perl
> + pkg-config
> + python-wrapper))
> + (inputs
> + (list cfitsio
> + curl-minimal
> + eigen
> + gtk+
> + indi
> + libnova
> + libusb
> + wxwidgets
> + zlib))
> + (home-page "https://openphdguiding.org")
> + (synopsis "Teleskope guiding software")
> + (description
> + "PHD2 is the enhanced, second generation version of the PHD guiding software
> +from Stark Labs.")
> + (license license:bsd-3)))
> +
> (define-public sextractor
> (package
> (name "sextractor")

I've taken the liberty to apply the following cosmetic adjustments:

Toggle snippet (77 lines)
1 file changed, 10 insertions(+), 16 deletions(-)
gnu/packages/astronomy.scm | 26 ++++++++++----------------

modified gnu/packages/astronomy.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2019 by Amar Singh <nly@disroot.org>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
;;; Copyright © 2020, 2021 Guillaume Le Vaillant <glv@posteo.net>
-;;; Copyright © 2021, 2022 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2021, 2022, 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021, 2022 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
@@ -696,10 +696,7 @@ (define-public phd2
(srfi srfi-26)))
(snippet
#~(begin
- ;; TODO: This snippet is sourced from
- ;; guix/gnu/packages/vnc.scm. It might be merged with
- ;; `delete-file-recursively' which can have `ignore' optional
- ;; argument.
+ ;; XXX: 'delete-all-but' is copied from the turbovnc package.

Rationale: the suggestion to enhance delete-file-recursively would be
better discussed on guix-devel.

(define (delete-all-but directory . preserve)
(define (directory? x)
(and=> (stat x #f)
@@ -713,27 +710,24 @@ (define (directory? x)
(delete-file-recursively item)
(delete-file item)))
items))))
- ;; XXX: Check this list of ignored items in next release.
(delete-all-but "thirdparty" "thirdparty.cmake")))))

Rationale: we're safe by default. If the package breaks on a version
update, its maintainer will be forced into looking into that :-).
(build-system cmake-build-system)
(arguments
- (list
- #:configure-flags
- #~(list "-DOPENSOURCE_ONLY=yes"
- "-DUSE_SYSTEM_CFITSIO=yes"
- "-DUSE_SYSTEM_EIGEN3=yes"
- "-DUSE_SYSTEM_GTEST=yes"
- "-DUSE_SYSTEM_LIBINDI=yes"
- "-DUSE_SYSTEM_LIBUSB=yes")))
+ (list #:configure-flags #~(list "-DOPENSOURCE_ONLY=yes"
+ "-DUSE_SYSTEM_CFITSIO=yes"
+ "-DUSE_SYSTEM_EIGEN3=yes"
+ "-DUSE_SYSTEM_GTEST=yes"
+ "-DUSE_SYSTEM_LIBINDI=yes"
+ "-DUSE_SYSTEM_LIBUSB=yes")))

Stylistic.

(native-inputs
(list gettext-minimal
googletest
perl
pkg-config
- python-wrapper))
+ python))
(inputs
(list cfitsio
- curl-minimal
+ curl

curl-minimal doesn't exist anymore. It had long been deprecated (2020).

eigen
gtk+
indi

And installed it! Thank you!

--
Thanks,
Maxim
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 62306@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 62306
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help