gnu: Add python-pyqtwebengine.
* gnu/packages/qt.scm (python-pyqtwebengine): New variable.
This commit is contained in:
parent
9deae98281
commit
eb5af18e7e
1 changed files with 83 additions and 0 deletions
|
@ -38,6 +38,7 @@
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix deprecation)
|
#:use-module (guix deprecation)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
|
@ -1997,6 +1998,88 @@ framework. The bindings are implemented as a set of Python modules and
|
||||||
contain over 620 classes.")
|
contain over 620 classes.")
|
||||||
(license license:gpl3)))
|
(license license:gpl3)))
|
||||||
|
|
||||||
|
(define-public python-pyqtwebengine
|
||||||
|
(package
|
||||||
|
(name "python-pyqtwebengine")
|
||||||
|
(version "5.12.1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://www.riverbankcomputing.com/static/Downloads/PyQtWebEngine/"
|
||||||
|
version "/PyQtWebEngine_gpl-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0wylkd7fh2g27y3710rpxmj9wx0wpi3z7qbv6khiddm15rkh81w6"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("python" ,python)
|
||||||
|
("python-sip" ,python-sip)
|
||||||
|
;; qtbase is required for qmake
|
||||||
|
("qtbase" ,qtbase)))
|
||||||
|
(inputs
|
||||||
|
`(("python" ,python-wrapper)
|
||||||
|
("python-sip" ,python-sip)
|
||||||
|
("python-pyqt" ,python-pyqt)
|
||||||
|
("qtbase" ,qtbase)
|
||||||
|
("qtsvg" ,qtsvg)
|
||||||
|
("qtdeclarative" ,qtdeclarative)
|
||||||
|
("qtwebchannel" ,qtwebchannel)
|
||||||
|
("python-pyqt" ,python-pyqt)
|
||||||
|
("qtwebengine" ,qtwebengine)))
|
||||||
|
(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"))
|
||||||
|
(sipdir (string-append out "/share/sip"))
|
||||||
|
(pyqt-sipdir (string-append
|
||||||
|
(assoc-ref inputs "python-pyqt") "/share/sip"))
|
||||||
|
(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/PyQt5"))
|
||||||
|
(stubs (string-append lib "/PyQt5")))
|
||||||
|
|
||||||
|
(mkdir-p sipdir)
|
||||||
|
(invoke "python" "configure.py"
|
||||||
|
"-w"
|
||||||
|
"--no-dist-info"
|
||||||
|
"--destdir" lib
|
||||||
|
"--no-qsci-api"
|
||||||
|
"--stubsdir" stubs
|
||||||
|
"--sipdir" sipdir
|
||||||
|
"--pyqt-sipdir" pyqt-sipdir))))
|
||||||
|
;; Because this has a different prefix than python-pyqt then we need
|
||||||
|
;; to make this a namespace of it's own
|
||||||
|
(add-after 'install 'make-namespace
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(let* ((__init__.py (string-append
|
||||||
|
(assoc-ref outputs "out")
|
||||||
|
"/lib/python3.7/site-packages/PyQt5/__init__.py")))
|
||||||
|
(with-output-to-file __init__.py
|
||||||
|
(lambda _ (display "
|
||||||
|
from pkgutil import extend_path
|
||||||
|
__path__ = extend_path(__path__, __name__)
|
||||||
|
")))
|
||||||
|
#t))))))
|
||||||
|
(home-page "https://www.riverbankcomputing.com/software/pyqtwebengine/intro")
|
||||||
|
(synopsis "Python bindings for QtWebEngine")
|
||||||
|
(description
|
||||||
|
"PyQtWebEngine is a set of Python bindings for The Qt Company's Qt
|
||||||
|
WebEngine libraries. The bindings sit on top of PyQt5 and are implemented as a
|
||||||
|
set of three modules. Prior to v5.12 these bindings were part of PyQt
|
||||||
|
itself.")
|
||||||
|
(license license:gpl3)))
|
||||||
|
|
||||||
;; XXX: This is useful because qtwebkit does not build reliably at this time.
|
;; XXX: This is useful because qtwebkit does not build reliably at this time.
|
||||||
;; Ultimately, it would be nicer to have a more modular set of python-pyqt-*
|
;; Ultimately, it would be nicer to have a more modular set of python-pyqt-*
|
||||||
;; packages that could be used together.
|
;; packages that could be used together.
|
||||||
|
|
Reference in a new issue