From mboxrd@z Thu Jan 1 00:00:00 1970 From: ng0 Subject: pybitmessage fails to detect PyQt4.QtCore module due to sip error Date: Sun, 26 Jun 2016 20:36:27 +0000 Message-ID: <20160626203626.GA30235@shadowwalker> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:59378) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bHGnJ-0005l9-9U for guix-devel@gnu.org; Sun, 26 Jun 2016 16:36:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bHGnE-0003sk-UW for guix-devel@gnu.org; Sun, 26 Jun 2016 16:36:40 -0400 Received: from 93-95-228-168.1984.is ([93.95.228.168]:40023 helo=beleriand.n0.is) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bHGnE-0003sU-IH for guix-devel@gnu.org; Sun, 26 Jun 2016 16:36:36 -0400 Received: by beleriand.n0.is (OpenSMTPD) with ESMTPSA id f041beb1 TLS version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO for ; Sun, 26 Jun 2016 20:36:29 +0000 (UTC) Content-Disposition: inline List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org Hi, I can't provide full patches yet, so these file-inserts are to show where I'm at now. The problem I run into is even though the new package "python2-pyqt-4" in gnu/packages/qt.scm builds, I get a failing detection in python ide ~~~~~ ng0Ⓐshadowwalker /gnu/store/fibig7q6h274m95bzrn9qfq421xiqs6c-pybitmessage-0.6.0/lib/python2.7/site-packages/pybitmessage$ python Python 2.7.10 (default, Jan 1 1970, 00:00:01) [GCC 4.9.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import PyQt4.QtCore Traceback (most recent call last): File "", line 1, in ImportError: No module named sip ~~~~~ and of course also in execution of the depends.py of pybitmessage ~~~~~ ng0Ⓐshadowwalker /gnu/store/fibig7q6h274m95bzrn9qfq421xiqs6c-pybitmessage-0.6.0/lib/python2.7/site-packages/pybitmessage$ ./depends.py INFO: Python version: 2.7.10 (default, Jan 1 1970, 00:00:01) [GCC 4.9.3] INFO: sqlite3 Module Version: 2.6.0 INFO: SQLite Library Version: 3.10.0 INFO: SQLite Library Source ID: 2016-01-06 11:01:07 fd0a50f0797d154fefff724624f00548b5320566 INFO: SQLite Library Compile Options: ENABLE_FTS3, ENABLE_RTREE, ENABLE_UNLOCK_NOTIFY, SECURE_DELETE, SYSTEM_MALLOC, THREADSAFE=1 INFO: Checking OpenSSL at /gnu/store/9id9n7zmrgarggv6zb6ak4vps0lh5j9b-openssl-1.0.2g/lib/libcrypto.so INFO: OpenSSL Name: /gnu/store/9id9n7zmrgarggv6zb6ak4vps0lh5j9b-openssl-1.0.2g/lib/libcrypto.so INFO: OpenSSL Version: OpenSSL 1.0.2h 3 May 2016 INFO: OpenSSL Compile Options: compiler: gcc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM ERROR: The PyQt4 package is not available. PyBitmessage requires PyQt 4.8 or later and Qt 4.7 or later. INFO: curses Module Version: 2.2 ERROR: The curses interface can not be used. The pythondialog package is not available. CRITICAL: PyBitmessage cannot start. One or more dependencies are unavailable. ~~~~~ So at this moment, or at least for today, I'm stuck and new input would be very welcome. These are the packages: ~~~~~ gnu/packages/qt.scm: (define-public python2-pyqt-4 (package (inherit python-pyqt-4) (name "python2-pyqt-4") (native-inputs `(("python-sip" ,python2-sip) ("qt" ,qt-4))) (inputs `(("python" ,python-2))))) ~~~~~ ~~~~~ gnu/packages/python.scm: #:use-module (gnu packages qt) (define-public pybitmessage (package (name "pybitmessage") (version "0.6.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/Bitmessage/" "PyBitmessage/archive/v" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "026wbbr7cxi5lml8j14905myb2p10icjixzry45mmaa2zsimrviv")))) (inputs `(("python" ,python-2) ("openssl" ,openssl) ("sqlite" ,sqlite) ("qt" ,qt-4))) (native-inputs `(("pkg-config" ,pkg-config))) (propagated-inputs `(("python2-pyqt-4" ,python2-pyqt-4) ("python2-pysqlite" ,python2-pysqlite) ("python2-pyopenssl" ,python2-pyopenssl))) ;; Todo: package: SocksiPy-1.00, PyElliptic, pydialog (ncurses). ;; XXX: pyelliptic is altered (backported) by PyBitmessage. (build-system gnu-build-system) (arguments `(#:modules ((srfi srfi-1) ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases ;; A Makefile exists but needs too much patching. (replace 'build (lambda* (#:key outputs #:allow-other-keys) (chdir "src/bitmsghash") (system* "make") #t)) (add-after 'unpack 'fix-unmatched-python-shebangs (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/bitmessagemain.py" (("#!/usr/bin/env python2.7") (string-append "#!" (which "python")))) (substitute* "src/bitmessagecli.py" (("#!/usr/bin/env python2.7.x") (string-append "#!" (which "python")))))) (add-after 'unpack 'fix-depends (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/depends.py" (("import ctypes.util") "import ctypes.util ctypes.util.find_library('m')") (("libcrypto.so") (string-append (assoc-ref inputs "openssl") "/lib/libcrypto.so"))))) (add-after 'unpack 'fix-local-files-in-paths (lambda* (#:key inputs outputs #:allow-other-keys) (substitute* "src/proofofwork.py" (("bitmsghash.so") (string-append (assoc-ref outputs "out") "/lib/bitmsghash.so"))))) (add-after 'unpack 'fix-pyelliptic (lambda* (#:key inputs outputs #:allow-other-keys) (substitute* "src/pyelliptic/openssl.py" (("libcrypto.so") (string-append (assoc-ref inputs "openssl") "/lib/libcrypto.so")) (("libssl.so") (string-append (assoc-ref inputs "openssl") "/lib/libssl.so"))))) (delete 'check) ; not available (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (python (assoc-ref inputs "python")) (python-version (last (string-split python #\-))) (python-major+minor (string-join (take (string-split python-version #\.) 2) ".")) ;;(path (getenv "PYTHONPATH")) (pylib (string-append out "/lib/python" python-major+minor "/site-packages")) (bin (string-append out "/bin")) (doc (string-append out "/share/man/man1")) (lib (string-append out "/lib")) (share (string-append out "/share/applications")) (icons24 (string-append out "/share/icons/hicolor/24x24/apps")) (iconss (string-append out "/share/icons/hicolor/scalable/apps")) (pixmaps (string-append out "/share/pixmaps"))) (chdir "../..") (install-file "src/bitmsghash/bitmsghash.so" lib) (delete-file-recursively "src/bitmsghash") (delete-file "src/build_osx.py") (copy-recursively "src" (string-append pylib "/pybitmessage")) (install-file "man/pybitmessage.1.gz" doc) (install-file "desktop/pybitmessage.desktop" share) (install-file "desktop/icon24.png" icons24) (install-file "desktop/can-icon.svg" iconss) (install-file "desktop/icon14.xpm" pixmaps) ;; this breaks at the minimum depends.py: ;; (for-each (lambda (file) ;; (wrap-program file ;; `("PYTHONPATH" ":" prefix (,path)))) ;; (find-files pylib "\\.*$")) ;; #t)))))) )))))) (license license:expat) (description "Distributed and trustless peer-to-peer communications protocol for sending encrypted messages to one person or many subscribers.") (synopsis "Distributed peer-to-peer communication") (home-page "https://bitmessage.org/"))) ~~~~~ thanks, -- ♥Ⓐ Mx ng0 For non-prism friendly talk find me on psyced.org / loupsycedyglgamf.onion