* Re: [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir.
2016-12-02 17:10 [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
@ 2016-12-03 16:12 ` Ricardo Wurmus
2016-12-05 8:53 ` Hartmut Goebel
2016-12-05 9:12 ` [PATCH 0/3] Fixes for python-pyqt Hartmut Goebel
` (3 subsequent siblings)
4 siblings, 1 reply; 14+ messages in thread
From: Ricardo Wurmus @ 2016-12-03 16:12 UTC (permalink / raw)
To: Hartmut Goebel; +Cc: guix-devel
Hartmut Goebel <h.goebel@crazy-compilers.com> writes:
> Without this option the stub files are tried to be installed into
> the python package's site-package directory.
>
> * gnu/packages.qt.scm (python-pyqt, python2-pyqt)[arguments]: In phase
> 'configure' pass option --stubsdir.
> ---
> gnu/packages/qt.scm | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
> index b442356..92c6d4b 100644
> --- a/gnu/packages/qt.scm
> +++ b/gnu/packages/qt.scm
> @@ -982,13 +982,15 @@ module provides support functions to the automatically generated code.")
> "."))
> (lib (string-append out "/lib/python"
> python-major+minor
> - "/site-packages")))
> + "/site-packages"))
> + (stubs (string-append lib "/PyQt5")))
> (zero? (system* "python" "configure.py"
> "--confirm-license"
> "--bindir" bin
> "--destdir" lib
> "--designer-plugindir" designer
> "--qml-plugindir" qml
> + "--stubsdir" stubs ; PEP 484 Type Hints stubs
> "--sipdir" sip))))))))
> (home-page "https://www.riverbankcomputing.com/software/pyqt/intro")
> (synopsis "Python bindings for Qt")
The patch looks okay to me, but I’d prefer to see your comment about why
this is needed inline above the option. “PEP 484…” doesn’t tell me
anything, whereas your description in this email was very clear.
--
Ricardo
GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
http://elephly.net
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir.
2016-12-03 16:12 ` Ricardo Wurmus
@ 2016-12-05 8:53 ` Hartmut Goebel
0 siblings, 0 replies; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-05 8:53 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: guix-devel
Am 03.12.2016 um 17:12 schrieb Ricardo Wurmus:
> The patch looks okay to me, but I’d prefer to see your comment about why
> this is needed inline above the option. “PEP 484…” doesn’t tell me
> anything, whereas your description in this email was very clear.
You are right. I'll send an updated patch.
--
Regards
Hartmut Goebel
| Hartmut Goebel | h.goebel@crazy-compilers.com |
| www.crazy-compilers.com | compilers which you thought are impossible |
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 0/3] Fixes for python-pyqt
2016-12-02 17:10 [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
2016-12-03 16:12 ` Ricardo Wurmus
@ 2016-12-05 9:12 ` Hartmut Goebel
2016-12-05 9:12 ` [PATCH 1/3] gnu: python2-pyqt-4: Change package name to python2-pyqt Hartmut Goebel
` (2 subsequent siblings)
4 siblings, 0 replies; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-05 9:12 UTC (permalink / raw)
To: guix-devel
gnu: python2-pyqt-4: Change package name to python2-pyqt.
The package *name* contained the version, makeing it impossible to
install via python2-pyqt@4. Curiously the Pyhton 3 package
(python-pyqt) already had the correct name.
gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
THis is a preperation for the next commit.
gnu: python-pyqt: Fix build by explicitly setting the stubsdir.
This is the updated patch.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 1/3] gnu: python2-pyqt-4: Change package name to python2-pyqt.
2016-12-02 17:10 [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
2016-12-03 16:12 ` Ricardo Wurmus
2016-12-05 9:12 ` [PATCH 0/3] Fixes for python-pyqt Hartmut Goebel
@ 2016-12-05 9:12 ` Hartmut Goebel
2016-12-08 21:17 ` Efraim Flashner
2016-12-05 9:12 ` [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase Hartmut Goebel
2016-12-05 9:12 ` [PATCH 3/3 v2] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
4 siblings, 1 reply; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-05 9:12 UTC (permalink / raw)
To: guix-devel
* gnu/packages/qt.scm (python2-pyqt-4)[package]: Change "name"
python2-pyqt.
---
gnu/packages/qt.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index ae951aa..fc4700e 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1115,7 +1115,7 @@ contain over 620 classes.")
(define-public python2-pyqt-4
(package (inherit python-pyqt-4)
- (name "python2-pyqt-4")
+ (name "python2-pyqt")
(native-inputs
`(("python-sip" ,python2-sip)
("qt" ,qt-4)))
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 1/3] gnu: python2-pyqt-4: Change package name to python2-pyqt.
2016-12-05 9:12 ` [PATCH 1/3] gnu: python2-pyqt-4: Change package name to python2-pyqt Hartmut Goebel
@ 2016-12-08 21:17 ` Efraim Flashner
0 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2016-12-08 21:17 UTC (permalink / raw)
To: Hartmut Goebel; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 947 bytes --]
On Mon, Dec 05, 2016 at 10:12:56AM +0100, Hartmut Goebel wrote:
> * gnu/packages/qt.scm (python2-pyqt-4)[package]: Change "name"
> python2-pyqt.
> ---
> gnu/packages/qt.scm | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
> index ae951aa..fc4700e 100644
> --- a/gnu/packages/qt.scm
> +++ b/gnu/packages/qt.scm
> @@ -1115,7 +1115,7 @@ contain over 620 classes.")
>
> (define-public python2-pyqt-4
> (package (inherit python-pyqt-4)
> - (name "python2-pyqt-4")
> + (name "python2-pyqt")
> (native-inputs
> `(("python-sip" ,python2-sip)
> ("qt" ,qt-4)))
> --
> 2.7.4
>
LGTM
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
2016-12-02 17:10 [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
` (2 preceding siblings ...)
2016-12-05 9:12 ` [PATCH 1/3] gnu: python2-pyqt-4: Change package name to python2-pyqt Hartmut Goebel
@ 2016-12-05 9:12 ` Hartmut Goebel
2016-12-05 12:44 ` Hartmut Goebel
2016-12-08 21:19 ` Efraim Flashner
2016-12-05 9:12 ` [PATCH 3/3 v2] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
4 siblings, 2 replies; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-05 9:12 UTC (permalink / raw)
To: guix-devel
This allows passing different options for 5.5 than for the main version
(which is currently 5.6).
* gnu/packages.qt.scm (python-pyqt-5.5, python2-pyqt-5.5)[arguments]: Copy
from (python-pyqt)[arguments].
---
gnu/packages/qt.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index fc4700e..aaa7e1c 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1054,6 +1054,36 @@ contain over 620 classes.")
(base32
"056qmkv02wdcfblqdaxiswrgn4wa88sz22i1x58dpb1iniavplfd"))
(patches (search-patches "pyqt-configure.patch"))))
+ (arguments
+ `(#:modules ((srfi srfi-1)
+ ,@%gnu-build-system-modules)
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (sip (string-append out "/share/sip"))
+ (plugins (string-append out "/plugins"))
+ (designer (string-append plugins "/designer"))
+ (qml (string-append plugins "/PyQt5"))
+ (python (assoc-ref inputs "python"))
+ (python-version
+ (last (string-split python #\-)))
+ (python-major+minor
+ (string-join
+ (take (string-split python-version #\.) 2)
+ "."))
+ (lib (string-append out "/lib/python"
+ python-major+minor
+ "/site-packages")))
+ (zero? (system* "python" "configure.py"
+ "--confirm-license"
+ "--bindir" bin
+ "--destdir" lib
+ "--designer-plugindir" designer
+ "--qml-plugindir" qml
+ "--sipdir" sip))))))))
(native-inputs
`(("python-sip" ,python-sip)
("qt" ,qt)))))
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
2016-12-05 9:12 ` [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase Hartmut Goebel
@ 2016-12-05 12:44 ` Hartmut Goebel
2016-12-08 21:19 ` Efraim Flashner
1 sibling, 0 replies; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-05 12:44 UTC (permalink / raw)
To: guix-devel
Am 05.12.2016 um 10:12 schrieb Hartmut Goebel:
> * gnu/packages.qt.scm (python-pyqt-5.5, python2-pyqt-5.5)[arguments]: Copy
> from (python-pyqt)[arguments].
@ricardo: Despite our discussion on Saturday I did simply copy the
phase. This is much easier than creating a function to return the phase.
Thanks for taking the time, tough.
--
Regards
Hartmut Goebel
| Hartmut Goebel | h.goebel@crazy-compilers.com |
| www.crazy-compilers.com | compilers which you thought are impossible |
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
2016-12-05 9:12 ` [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase Hartmut Goebel
2016-12-05 12:44 ` Hartmut Goebel
@ 2016-12-08 21:19 ` Efraim Flashner
2016-12-09 12:28 ` Hartmut Goebel
1 sibling, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-12-08 21:19 UTC (permalink / raw)
To: Hartmut Goebel; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 840 bytes --]
On Mon, Dec 05, 2016 at 10:12:57AM +0100, Hartmut Goebel wrote:
> This allows passing different options for 5.5 than for the main version
> (which is currently 5.6).
>
> * gnu/packages.qt.scm (python-pyqt-5.5, python2-pyqt-5.5)[arguments]: Copy
> from (python-pyqt)[arguments].
> ---
> gnu/packages/qt.scm | 30 ++++++++++++++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
>
Currently the only package that relies on python-pyqt-5.5 and
python2-pyqt-5.5 is calibre. I would consider upgrading calibre and
seeing if it can be built with pyqt-5.6 or pyqt-5.7 and then just
removing python[2]-pyqt-5.5
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
2016-12-08 21:19 ` Efraim Flashner
@ 2016-12-09 12:28 ` Hartmut Goebel
2016-12-09 12:30 ` Efraim Flashner
0 siblings, 1 reply; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-09 12:28 UTC (permalink / raw)
To: Efraim Flashner; +Cc: guix-devel
Am 08.12.2016 um 22:19 schrieb Efraim Flashner:
> Currently the only package that relies on python-pyqt-5.5 and
> python2-pyqt-5.5 is calibre. I would consider upgrading calibre and
> seeing if it can be built with pyqt-5.6 or pyqt-5.7 and then just
> removing python[2]-pyqt-5.5
I updated calibre to the newest version 2.74 (will post the patch
later). It still requires Qt 5.5.
--
Regards
Hartmut Goebel
| Hartmut Goebel | h.goebel@crazy-compilers.com |
| www.crazy-compilers.com | compilers which you thought are impossible |
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
2016-12-09 12:28 ` Hartmut Goebel
@ 2016-12-09 12:30 ` Efraim Flashner
2016-12-09 12:54 ` Hartmut Goebel
0 siblings, 1 reply; 14+ messages in thread
From: Efraim Flashner @ 2016-12-09 12:30 UTC (permalink / raw)
To: Hartmut Goebel; +Cc: guix-devel
On December 9, 2016 2:28:44 PM GMT+02:00, Hartmut Goebel <h.goebel@crazy-compilers.com> wrote:
>Am 08.12.2016 um 22:19 schrieb Efraim Flashner:
>> Currently the only package that relies on python-pyqt-5.5 and
>> python2-pyqt-5.5 is calibre. I would consider upgrading calibre and
>> seeing if it can be built with pyqt-5.6 or pyqt-5.7 and then just
>> removing python[2]-pyqt-5.5
>
>I updated calibre to the newest version 2.74 (will post the patch
>later). It still requires Qt 5.5.
Are you sure? I built 2.63 with pyqt-5.6 on top of your patch and it built fine. I didn't try actually running it though
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase.
2016-12-09 12:30 ` Efraim Flashner
@ 2016-12-09 12:54 ` Hartmut Goebel
0 siblings, 0 replies; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-09 12:54 UTC (permalink / raw)
To: Efraim Flashner; +Cc: guix-devel
Am 09.12.2016 um 13:30 schrieb Efraim Flashner:
> Are you sure? I built 2.63 with pyqt-5.6 on top of your patch and it built fine. I didn't try actually running it though
It build fine, but it does not run :-( But on my system, 2.63 does not
run either.
--
Regards
Hartmut Goebel
| Hartmut Goebel | h.goebel@crazy-compilers.com |
| www.crazy-compilers.com | compilers which you thought are impossible |
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 3/3 v2] gnu: python-pyqt: Fix build by explicitly setting the stubsdir.
2016-12-02 17:10 [PATCH] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
` (3 preceding siblings ...)
2016-12-05 9:12 ` [PATCH 2/3] gnu: python-pyqt-5.5: Use non-inherited "configure" phase Hartmut Goebel
@ 2016-12-05 9:12 ` Hartmut Goebel
2016-12-08 21:20 ` Efraim Flashner
4 siblings, 1 reply; 14+ messages in thread
From: Hartmut Goebel @ 2016-12-05 9:12 UTC (permalink / raw)
To: guix-devel
* gnu/packages.qt.scm (python-pyqt, python2-pyqt)[arguments]: In phase
'configure' pass option --stubsdir.
---
gnu/packages/qt.scm | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index aaa7e1c..4a8fb6c 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1015,13 +1015,19 @@ module provides support functions to the automatically generated code.")
"."))
(lib (string-append out "/lib/python"
python-major+minor
- "/site-packages")))
+ "/site-packages"))
+ (stubs (string-append lib "/PyQt5")))
(zero? (system* "python" "configure.py"
"--confirm-license"
"--bindir" bin
"--destdir" lib
"--designer-plugindir" designer
"--qml-plugindir" qml
+ ; Where to install the PEP 484 Type Hints stub
+ ; files. Without this the stubs are tried to be
+ ; installed into the python package's
+ ; site-package directory, which is read-only.
+ "--stubsdir" stubs
"--sipdir" sip))))))))
(home-page "https://www.riverbankcomputing.com/software/pyqt/intro")
(synopsis "Python bindings for Qt")
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 3/3 v2] gnu: python-pyqt: Fix build by explicitly setting the stubsdir.
2016-12-05 9:12 ` [PATCH 3/3 v2] gnu: python-pyqt: Fix build by explicitly setting the stubsdir Hartmut Goebel
@ 2016-12-08 21:20 ` Efraim Flashner
0 siblings, 0 replies; 14+ messages in thread
From: Efraim Flashner @ 2016-12-08 21:20 UTC (permalink / raw)
To: Hartmut Goebel; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 2062 bytes --]
On Mon, Dec 05, 2016 at 10:12:58AM +0100, Hartmut Goebel wrote:
> * gnu/packages.qt.scm (python-pyqt, python2-pyqt)[arguments]: In phase
> 'configure' pass option --stubsdir.
> ---
> gnu/packages/qt.scm | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
> index aaa7e1c..4a8fb6c 100644
> --- a/gnu/packages/qt.scm
> +++ b/gnu/packages/qt.scm
> @@ -1015,13 +1015,19 @@ module provides support functions to the automatically generated code.")
> "."))
> (lib (string-append out "/lib/python"
> python-major+minor
> - "/site-packages")))
> + "/site-packages"))
> + (stubs (string-append lib "/PyQt5")))
> (zero? (system* "python" "configure.py"
> "--confirm-license"
> "--bindir" bin
> "--destdir" lib
> "--designer-plugindir" designer
> "--qml-plugindir" qml
> + ; Where to install the PEP 484 Type Hints stub
> + ; files. Without this the stubs are tried to be
> + ; installed into the python package's
> + ; site-package directory, which is read-only.
> + "--stubsdir" stubs
> "--sipdir" sip))))))))
> (home-page "https://www.riverbankcomputing.com/software/pyqt/intro")
> (synopsis "Python bindings for Qt")
> --
> 2.7.4
>
python-pyqt-5.6 built successfully for me with these changes
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread