GNU bug report logs -
#59974
My GNU Health package
Previous Next
Reported by: phodina <phodina <at> protonmail.com>
Date: Sun, 11 Dec 2022 17:49:02 UTC
Severity: normal
Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 59974 in the body.
You can then email your comments to 59974 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Sun, 11 Dec 2022 17:49:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
phodina <phodina <at> protonmail.com>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Sun, 11 Dec 2022 17:49:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
here's libre medical package to track personal health.
----
Petr
[Message part 2 (text/html, inline)]
[0001-gnu-Add-mygnuhealth.patch (text/x-patch, attachment)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Mon, 12 Dec 2022 15:04:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 59974 <at> debbugs.gnu.org (full text, mbox):
Hi,
On Sun, 11 Dec 2022 at 17:48, phodina via Guix-patches via <guix-patches <at> gnu.org> wrote:
> here's libre medical package to track personal health.
I tested with:
--8<---------------cut here---------------start------------->8---
guix time-machine --branch=issue-59974 \
--commit=749c8e6d07caeb46f7686a705e62726214558bb1 \
--url=https://git.guix-patches.cbaines.net/git/guix-patches \
--disable-authentication \
-- shell mygnuhealth \
-- mygnuhealth
--8<---------------cut here---------------end--------------->8---
and it builds and seems to work.
> + (arguments
> + (list #:phases #~(modify-phases %standard-phases
> + (add-after 'install 'wrap-executable
> + (lambda* (#:key inputs outputs #:allow-other-keys)
> + (let ((out (assoc-ref outputs "out"))
> + (qml "/lib/qt5/qml"))
> + (wrap-program (string-append #$output
> + "/bin/mygnuhealth")
> + `("QML2_IMPORT_PATH" ":" prefix
> + (,(string-append out qml)
> + ,@(map (lambda (i)
> + (string-append
> + (assoc-ref inputs i) qml))
> + '("kirigami"
> + "qtdeclarative"
> + "qtgraphicaleffects"
> + "qtquickcontrols"
> + "qtquickcontrols2"))))))))
Here, I have another indentation. I do not have an opinion.
> + (add-before 'check 'env-setup
> + (lambda* _
-^
Why?
Is lambda is not enough here?
> + (mkdir-p "/tmp/mygh/")
> + (setenv "HOME" "/tmp"))))))
> + (native-inputs (list python-pyside-2))
> + (inputs (list qtbase-5
> + qtdeclarative-5
> + qtgraphicaleffects
> + qtquickcontrols-5
> + qtquickcontrols2-5
> + kirigami))
> + (propagated-inputs (list python-bcrypt python-matplotlib python-requests
> + python-tinydb))
> + (home-page "https://www.gnuhealth.org")
> + (synopsis "The GNU Health Personal Health Record")
> + (description
> + "This package provides GNUHealth Personal Health Record
> +application for desktop and mobile devices that integrates with the GNU
> +Health Federation.")
> + (license gpl3+)))
LGTM.
Cheers,
simon
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Tue, 13 Dec 2022 08:16:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 59974 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi Simon,
> > + (arguments
> > + (list #:phases #~(modify-phases %standard-phases
> > + (add-after 'install 'wrap-executable
> > + (lambda* (#:key inputs outputs #:allow-other-keys)
> > + (let ((out (assoc-ref outputs "out"))
> > + (qml "/lib/qt5/qml"))
> > + (wrap-program (string-append #$output
> > + "/bin/mygnuhealth")
> > + `("QML2_IMPORT_PATH" ":" prefix
> > + (,(string-append out qml)
> > + ,@(map (lambda (i)
> > + (string-append
> > + (assoc-ref inputs i) qml))
> > + '("kirigami"
> > + "qtdeclarative"
> > + "qtgraphicaleffects"
> > + "qtquickcontrols"
> > + "qtquickcontrols2"))))))))
>
>
> Here, I have another indentation. I do not have an opinion.
To me it's also reasonable. I just use 'guix style PKG' and fix the results if they have weird indentation.
>
> > + (add-before 'check 'env-setup
> > + (lambda* _
>
> -^
> Why?
>
> Is lambda is not enough here?
I guess it was just copy paste of the the previous phase and I realized the keywords aren't necessary. Fixed to use just lambda as suggested.
I also made some small changes to use gexp and 'out' variable in the phase 'wrap-executable'.
Thanks!
----
Petr
[v2-0001-gnu-Add-mygnuhealth.patch (text/x-patch, attachment)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Mon, 16 Jan 2023 14:58:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 59974 <at> debbugs.gnu.org (full text, mbox):
Hi Petr,
phodina <phodina <at> protonmail.com> writes:
> Hi Simon,
>
>> > + (arguments
>> > + (list #:phases #~(modify-phases %standard-phases
>> > + (add-after 'install 'wrap-executable
>> > + (lambda* (#:key inputs outputs #:allow-other-keys)
>> > + (let ((out (assoc-ref outputs "out"))
>> > + (qml "/lib/qt5/qml"))
>> > + (wrap-program (string-append #$output
>> > + "/bin/mygnuhealth")
>> > + `("QML2_IMPORT_PATH" ":" prefix
>> > + (,(string-append out qml)
>> > + ,@(map (lambda (i)
>> > + (string-append
>> > + (assoc-ref inputs i) qml))
>> > + '("kirigami"
>> > + "qtdeclarative"
>> > + "qtgraphicaleffects"
>> > + "qtquickcontrols"
>> > + "qtquickcontrols2"))))))))
>>
>>
>> Here, I have another indentation. I do not have an opinion.
>
> To me it's also reasonable. I just use 'guix style PKG' and fix the results if they have weird indentation.
>
>>
>> > + (add-before 'check 'env-setup
>> > + (lambda* _
>>
>> -^
>> Why?
>>
>> Is lambda is not enough here?
>
> I guess it was just copy paste of the the previous phase and I realized the keywords aren't necessary. Fixed to use just lambda as suggested.
>
> I also made some small changes to use gexp and 'out' variable in the phase 'wrap-executable'.
Would wrap-script instead of wrap-program work here (I think it does for
Python and other interpreted languages)? This tends to produce cleaner
--help message, when $0 (arg0) is used in these, and it looks better in
'top' since there's only one script and not a .mygnuhealth-real wrapped
one.
Otherwise LGTM, thanks for Simon for the review!
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Tue, 17 Jan 2023 07:30:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 59974 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi Maxim,
> Would wrap-script instead of wrap-program work here (I think it does for
> Python and other interpreted languages)? This tends to produce cleaner
> --help message, when $0 (arg0) is used in these, and it looks better in
> 'top' since there's only one script and not a .mygnuhealth-real wrapped
> one.
I've changed the `wrap-program` to `wrap-script` but it fails to run:
$ $ /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/mygnuhealth
/gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/mygnuhealth: /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/.mygnuhealth-real: #f: bad interpreter: No such file or directory
/gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/mygnuhealth: line 3: /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/.mygnuhealth-real: Success
$ head /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/.mygnuhealth-real
#!#f --no-auto-compile
#!#; Guix wrapper
Haven't used the `wrap-script` before but here it puts completely wrong shebang.
Seems this behavior has been already reported but not resolved. [1]
Patch V3 changes:
* added `bash-minimal` and `python` as dependencies.
1 https://issues.guix.gnu.org/40039
----
Petr
[v3-0001-gnu-Add-mygnuhealth.patch (text/x-patch, attachment)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Tue, 17 Jan 2023 07:31:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 59974 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Sorry,
left the changes in staged. Now the patch is correct.
----
Petr
[v3-0001-gnu-Add-mygnuhealth.patch (text/x-patch, attachment)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Tue, 17 Jan 2023 16:03:01 GMT)
Full text and
rfc822 format available.
Message #23 received at 59974 <at> debbugs.gnu.org (full text, mbox):
Hi Petr,
phodina <phodina <at> protonmail.com> writes:
> Hi Maxim,
>
>> Would wrap-script instead of wrap-program work here (I think it does for
>> Python and other interpreted languages)? This tends to produce cleaner
>> --help message, when $0 (arg0) is used in these, and it looks better in
>> 'top' since there's only one script and not a .mygnuhealth-real wrapped
>> one.
>
> I've changed the `wrap-program` to `wrap-script` but it fails to run:
>
> $ $ /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/mygnuhealth
> /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/mygnuhealth:
> /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/.mygnuhealth-real:
> #f: bad interpreter: No such file or directory
> /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/mygnuhealth:
> line 3:
> /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/.mygnuhealth-real:
> Success
>
> $ head /gnu/store/zxv1d25inf2iyc9bl5lf2wkrm951mvll-mygnuhealth-1.0.5/bin/.mygnuhealth-real
> #!#f --no-auto-compile
> #!#; Guix wrapper
>
> Haven't used the `wrap-script` before but here it puts completely wrong shebang.
>
> Seems this behavior has been already reported but not resolved. [1]
Too bad! I'll try to find the time to look at it soon.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Tue, 17 Jan 2023 16:12:01 GMT)
Full text and
rfc822 format available.
Message #26 received at 59974 <at> debbugs.gnu.org (full text, mbox):
Hello,
phodina <phodina <at> protonmail.com> writes:
[...]
> Patch V3 changes:
>
> * added `bash-minimal` and `python` as dependencies.
Thanks for V3!
> ----
> Petr
>
> From a997a19afaacb9cff523bff39231b176c4553921 Mon Sep 17 00:00:00 2001
> From: Petr Hodina <phodina <at> protonmail.com>
> Date: Sun, 11 Dec 2022 18:10:17 +0100
> Subject: [PATCH v3] gnu: Add mygnuhealth.
>
> * gnu/packages/medical.scm (mygnuhealth): New variable.
>
> diff --git a/gnu/packages/medical.scm b/gnu/packages/medical.scm
> index 6c9cc757eb..c41d8c8b3d 100644
> --- a/gnu/packages/medical.scm
> +++ b/gnu/packages/medical.scm
> @@ -1,6 +1,7 @@
> ;;; GNU Guix --- Functional package management for GNU
> ;;; Copyright © 2017 Ricardo Wurmus <rekado <at> elephly.net>
> ;;; Copyright © 2017 Quiliro <quiliro <at> fsfla.org>
> +;;; Copyright © 2022 Petr Hodina <phodina <at> protonmail.com>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -20,12 +21,66 @@
> (define-module (gnu packages medical)
> #:use-module (guix build-system python)
> #:use-module (guix download)
> + #:use-module (guix gexp)
> #:use-module (guix licenses)
> #:use-module (guix packages)
> #:use-module (gnu packages databases)
> + #:use-module (gnu packages kde-frameworks) ; kirigami
> + #:use-module (gnu packages python-crypto)
> + #:use-module (gnu packages python-web)
> #:use-module (gnu packages python-xyz)
> #:use-module (gnu packages qt))
>
> +(define-public mygnuhealth
> + (package
> + (name "mygnuhealth")
> + (version "1.0.5")
> + (source (origin
> + (method url-fetch)
> + (uri (pypi-uri "MyGNUHealth" version))
> + (sha256
> + (base32
> + "1jcrriccqzb4jx7zayhiqmpvi3cvfy3bbf9zr3m83878f94yww8j"))))
> + (build-system python-build-system)
> + (arguments
> + (list #:phases #~(modify-phases %standard-phases
> + (add-after 'install 'wrap-executable
> + (lambda* (#:key inputs #:allow-other-keys)
> + (let ((out #$output)
> + (qml "/lib/qt5/qml"))
> + (wrap-program (string-append out
> + "/bin/mygnuhealth")
> + `("QML2_IMPORT_PATH" ":" prefix
> + (,(string-append out qml)
> + ,@(map (lambda (i)
> + (string-append
> + (assoc-ref inputs i) qml))
> + '("kirigami"
> + "qtdeclarative"
> + "qtgraphicaleffects"
> + "qtquickcontrols"
> + "qtquickcontrols2"))))))))
Here it'd be nicer to use wrap-all-qt-programs from (guix build
qt-utils), to avoid hard coding the qt version in the QML wrapped path.
> + (add-before 'check 'env-setup
> + (lambda _
> + (mkdir-p "/tmp/mygh/")
> + (setenv "HOME" "/tmp"))))))
> + (native-inputs (list python-pyside-2))
> + (inputs (list qtbase-5
> + qtdeclarative-5
> + qtgraphicaleffects
> + qtquickcontrols-5
> + qtquickcontrols2-5
> + kirigami))
Sort k before q :-)
> + (propagated-inputs (list python-bcrypt python-matplotlib python-requests
> + python-tinydb))
> + (home-page "https://www.gnuhealth.org")
> + (synopsis "The GNU Health Personal Health Record")
> + (description
> + "This package provides GNUHealth Personal Health Record
> +application for desktop and mobile devices that integrates with the GNU
> +Health Federation.")
> + (license gpl3+)))
The rest LGTM.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#59974
; Package
guix-patches
.
(Mon, 13 Feb 2023 01:11:02 GMT)
Full text and
rfc822 format available.
Message #29 received at 59974 <at> debbugs.gnu.org (full text, mbox):
From: Petr Hodina <phodina <at> protonmail.com>
* gnu/packages/medical.scm (mygnuhealth): New variable.
---
Hello!
I hope I'm not over reaching or stealing anyone's thunder but I completed the
patch with Maxim's suggestions.
Please double check that the author stays as "Petr Hodina" and not me. I
barely did anything.
Thanks,
Morgan
gnu/packages/medical.scm | 52 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/gnu/packages/medical.scm b/gnu/packages/medical.scm
index 6c9cc757eb..20f7411938 100644
--- a/gnu/packages/medical.scm
+++ b/gnu/packages/medical.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2017 Quiliro <quiliro <at> fsfla.org>
+;;; Copyright © 2022 Petr Hodina <phodina <at> protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,13 +20,64 @@
(define-module (gnu packages medical)
#:use-module (guix build-system python)
+ #:use-module (guix build-system qt)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix licenses)
#:use-module (guix packages)
+ #:use-module (gnu packages bash) ; wrap-program
#:use-module (gnu packages databases)
+ #:use-module (gnu packages kde-frameworks) ; kirigami
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages python-crypto)
+ #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt))
+(define-public mygnuhealth
+ (package
+ (name "mygnuhealth")
+ (version "1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "MyGNUHealth" version))
+ (sha256
+ (base32
+ "1jcrriccqzb4jx7zayhiqmpvi3cvfy3bbf9zr3m83878f94yww8j"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:imported-modules `(,@%python-build-system-modules
+ ,@%qt-build-system-modules)
+ #:modules `(((guix build qt-build-system) #:prefix qt:)
+ (guix build python-build-system)
+ (guix build utils))
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'install 'qt-wrap
+ (assoc-ref qt:%standard-phases 'qt-wrap))
+ (add-before 'check 'env-setup
+ (lambda _
+ (mkdir-p "/tmp/mygh/")
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs (list python-pyside-2))
+ (inputs (list bash-minimal
+ kirigami
+ python
+ qtbase-5
+ qtdeclarative-5
+ qtgraphicaleffects
+ qtquickcontrols-5
+ qtquickcontrols2-5))
+ (propagated-inputs (list python-bcrypt python-matplotlib python-requests
+ python-tinydb))
+ (home-page "https://www.gnuhealth.org")
+ (synopsis "The GNU Health Personal Health Record")
+ (description
+ "This package provides GNUHealth Personal Health Record
+application for desktop and mobile devices that integrates with the GNU
+Health Federation.")
+ (license gpl3+)))
+
(define-public openmolar-1
(package
(name "openmolar")
--
2.39.1
Reply sent
to
Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
:
You have taken responsibility.
(Tue, 21 Mar 2023 03:47:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
phodina <phodina <at> protonmail.com>
:
bug acknowledged by developer.
(Tue, 21 Mar 2023 03:47:02 GMT)
Full text and
rfc822 format available.
Message #34 received at 59974-done <at> debbugs.gnu.org (full text, mbox):
Hi,
Morgan.J.Smith <at> outlook.com writes:
> From: Petr Hodina <phodina <at> protonmail.com>
>
> * gnu/packages/medical.scm (mygnuhealth): New variable.
> ---
>
> Hello!
>
> I hope I'm not over reaching or stealing anyone's thunder but I completed the
> patch with Maxim's suggestions.
>
> Please double check that the author stays as "Petr Hodina" and not me. I
> barely did anything.
Excellent. I still added you as 'Co-author' for the much welcome
initiative, and moved the propagated-inputs to the inputs, as the
command is wrapped (and this is a user application, not a library):
--8<---------------cut here---------------start------------->8---
modified gnu/packages/medical.scm
@@ -63,13 +63,16 @@ (define-public mygnuhealth
(inputs (list bash-minimal
kirigami
python
+ python-bcrypt
+ python-matplotlib
+ python-requests
+ python-tinydb
qtbase-5
qtdeclarative-5
qtgraphicaleffects
qtquickcontrols-5
- qtquickcontrols2-5))
- (propagated-inputs (list python-bcrypt python-matplotlib python-requests
- python-tinydb))
+ qtquickcontrols2-5
+ qtsvg-5))
(home-page "https://www.gnuhealth.org")
(synopsis "The GNU Health Personal Health Record")
(description
--8<---------------cut here---------------end--------------->8---
Applied!
--
Thanks,
Maxim
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 18 Apr 2023 11:24:07 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 25 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.