[bug#62306,v2] gnu: Add phd2.
Commit Message
* gnu/packages/astronomy.scm (phd2): New variable.
---
gnu/packages/astronomy.scm | 70 ++++++++++++++++++++++++++++++++++++++
1 file changed, 70 insertions(+)
Comments
Hi,
Sharlatan Hellseher <sharlatanus@gmail.com> writes:
> * 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:
--8<---------------cut here---------------start------------->8---
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
--8<---------------cut here---------------end--------------->8---
And installed it! Thank you!
@@ -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")