guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: pybitmessage, python2-pyqt-4 - strace and packages


From: ng
Subject: Re: pybitmessage, python2-pyqt-4 - strace and packages
Date: Sun, 03 Jul 2016 21:56:35 +0000

Hi,

thanks for taking the time to look into this.

Ricardo Wurmus writes:

> address@hidden writes:
>
>> The strace output is very long, but I hope someone can help me
>> with more experience with python.
>> The visible error is that pyqt-4 is not found, but strace throws
>> many more.
> […]
>
>> insert-file: (pybitmessage) in gnu/packages/python.scm:
>
> It would be easier for others to test this if this were simply a patch
> that we could apply on master.  Much easier than following manual
> instructions.

You are right. There are some local issues and workflows I have
to get better at, it's not the creation of the patch itself I
have problems with. Next time I'll send a patch when I have
questions about wip'ish things.

>> (define-public python-pyqt-4
>>   (package (inherit python-pyqt)
>>     (name "python-pyqt")
>>     (version "4.11.4")
>>     (source
>>       (origin
>>         (method url-fetch)
>>         (uri
>>           (string-append "mirror://sourceforge/pyqt/PyQt4/"
>>                          "PyQt-" version "/PyQt-x11-gpl-"
>>                          version ".tar.gz"))
>>         (sha256
>>          (base32
>>           "01zlviy5lq8g6db84wnvvpsrfnip9lbcpxagsyqa6as3jmsff7zw"))))
>>     (native-inputs
>>      `(("python-sip" ,python-sip)
>>        ("qt" ,qt-4)))
>>     (arguments
>>      `(#:tests? #f ; no check target
>>        #:modules ((srfi srfi-1)
>>                   ,@%gnu-build-system-modules)
>>        #:phases
>>          (alist-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"))
>>                   (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
>>                              "--sipdir" sip))))
>>          %standard-phases)))
>>     (license (list gpl2 gpl3)))) ; choice of either license
>>
>> (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)))))
>
> […]
>> open("/gnu/store/2mz84alls2i314x4506wdw15zwmz82n8-python-2.7.10/lib/python2.7/site-packages/PyQt4.so",
>> O_RDONLY) = -1 ENOENT (No such file or directory)
>> open("/gnu/store/2mz84alls2i314x4506wdw15zwmz82n8-python-2.7.10/lib/python2.7/site-packages/PyQt4module.so",
>> O_RDONLY) = -1 ENOENT (No such file or directory)
>> open("/gnu/store/2mz84alls2i314x4506wdw15zwmz82n8-python-2.7.10/lib/python2.7/site-packages/PyQt4.py",
>> O_RDONLY) = -1 ENOENT (No such file or directory)
>> open("/gnu/store/2mz84alls2i314x4506wdw15zwmz82n8-python-2.7.10/lib/python2.7/site-packages/PyQt4.pyc",
>> O_RDONLY) = -1 ENOENT (No such file or directory)
>> write(1, "ERROR: The PyQt4 package is not "..., 104ERROR: The PyQt4
>> package is not available. PyBitmessage requires PyQt 4.8 or later
>> and Qt 4.7 or later.
>
> Have you checked what files are installed by your pyqt-4 package?  Do
> any of the files that are searched for appear in the output of that
> package?

tree level 3 looks like this of python2-pyqt-4:
(shadowwalker) ng0
/gnu/store/y0r1d5sgskvpxi2k64afjrc35c8l3bqs-python2-pyqt-4-4.11.4$
tree -L 3
.
├── bin
│   ├── pylupdate4
│   ├── pyrcc4
│   └── pyuic4
├── lib
│   └── python2.7
│       └── site-packages
└── share
    └── sip
        ├── Qt
        ├── QtCore
        ├── QtDBus
        ├── QtDeclarative
        ├── QtDesigner
        ├── QtGui
        ├── QtHelp
        ├── QtMultimedia
        ├── QtNetwork
        ├── QtOpenGL
        ├── QtScript
        ├── QtScriptTools
        ├── QtSql
        ├── QtSvg
        ├── QtTest
        ├── QtXml
        └── QtXmlPatterns

So packages are in python2.7 ... i don't know the consensus for
Guix, should it be 2.7.10 or 2.7 in folder structure? 2.7 makes
more sense to me.

>> write(1, "ERROR: The curses interface can "..., 88ERROR: The curses 
>> interface can not be used. The pythondialog package is not available.
>
> You haven’t finished packaging all dependencies.  The “pythondialog”
> package is also required.

I notices this and the ncurses dependency is optional. Generally
you are exposed only to the pyqt client. I would package
pythondialog later, for a functional pybitmessage it is not
required, or I never noticed it on other distros I packaged it
for.

>
> The fact that it searches for libraries or packages in so many paths is
> normal, because it only has a list of search paths.  It would be nice to
> fix this in a general fashion one day (because all this searching takes
> up time), but it’s harmless.  If the needed file is on a search path it
> will eventually be found.
>
> ~~ Ricardo
>

-- 
♥Ⓐ  ng0
For non-prism friendly talk find me on
psyced.org / loupsycedyglgamf.onion



reply via email to

[Prev in Thread] Current Thread [Next in Thread]