manatlan / jbrout3

Attempt to port the good old jbrout/py2/gtk to python3/guy's web app
GNU General Public License v2.0
7 stars 3 forks source link

ModuleNotFoundError: No module named 'pyexiv2' #5

Closed 7tonin closed 5 years ago

7tonin commented 5 years ago

Hi, I'm trying to run jbrout3 on mageia7 (because there is no more pyexiv2 rpm for jbrout-0.2.379). I ran the "In your env" instructions and switched to root in order to run succesfully gcc through python3 -m pip install -r requirements.txt (was this really not a good idea ?).

But then, when running

$ python3 ./jbrout.py
Traceback (most recent call last):
  File "./jbrout.py", line 20, in <module>
    from jbapi import JBrout
  File "/home/tonin/jbrout3/jbapi.py", line 17, in <module>
    from libs.db import DBPhotos,DBTags
  File "/home/tonin/jbrout3/libs/db.py", line 31, in <module>
    from .tools import PhotoCmd, supportedFormats
  File "/home/tonin/jbrout3/libs/tools.py", line 33, in <module>
    from . import pyexiv
  File "/home/tonin/jbrout3/libs/pyexiv.py", line 29, in <module>
    import pyexiv2
ModuleNotFoundError: No module named 'pyexiv2'

It looks pyexiv2 is still needed despite of py3exiv2 pip installation. Do I really need to compile pyexiv2 ?

manatlan commented 5 years ago

Hi It's complicated ;-)

For your trouble, I think it's a typo trouble. You've right, the lib should import py3exiv2. (It works on my host, coz I have it) Try to change it.

Btw, jbrout3 on GitHub, is a POC. A kind of test to rewrite jbrout2 for py3. It uses the wuy lib,

Le jeu. 29 août 2019 à 08:23, 7tonin notifications@github.com a écrit :

Hi, I'm trying to run jbrout3 on mageia7 (because there is no more pyexiv2 rpm for jbrout-379). I ran the "In your env" instructions and switched to root in order to run succesfully gcc through python3 -m pip install -r requirements.txt (was this really not a good idea ?).

But then, when running

$ python3 ./jbrout.py Traceback (most recent call last): File "./jbrout.py", line 20, in from jbapi import JBrout File "/home/tonin/jbrout3/jbapi.py", line 17, in from libs.db import DBPhotos,DBTags File "/home/tonin/jbrout3/libs/db.py", line 31, in from .tools import PhotoCmd, supportedFormats File "/home/tonin/jbrout3/libs/tools.py", line 33, in from . import pyexiv File "/home/tonin/jbrout3/libs/pyexiv.py", line 29, in import pyexiv2 ModuleNotFoundError: No module named 'pyexiv2'

It looks pyexiv2 is still needed despite of py3exiv2 pip installation. Do I really need to compile pyexiv2 ?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/manatlan/jbrout3/issues/5?email_source=notifications&email_token=AABEZQUQKZ63MJ33Z6BATWTQG5TPHA5CNFSM4IR6KEI2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HIDMQVA, or mute the thread https://github.com/notifications/unsubscribe-auth/AABEZQVAMQCWDZMPJQER5Z3QG5TPHANCNFSM4IR6KEIQ .

7tonin commented 5 years ago

Well, I have run pip install requirements again, but from my user profile myuser after adding it to ctools group (system change + command $ newgrp ctools) Even with that, it was impossible to write in /usr/local/lib64/python3.7/site-packages/, so as root before myuser pip install : # chown -R myuser /usr/local/lib64/python3.7/site-packages/ $ python3 -m pip install -r requirements.txt after successful install, rolled back # chown -R myuser /usr/local/lib64/python3.7/site-packages/ Hurray !

Now, It misses Chrome. So installed Chromium from github https://www.chromium.org/getting-involved/download-chromium https://github.com/scheib/chromium-latest-linux Then I needed to add its directory to myuser PATH

And then it works ! Nice. Thank you for your work and share. Right now, it is not possible to drop tags on pictures directly through the keyboard, which is my key feature. By the way, it is still possible with drag'n'drop.

Mainly, this installation issue is solved. NB : To handle my big bunch of pictures with jbrout-0.2.* I now use a Mageia6 virtual machine with shared folders with host Mageia7. That's heavy but It's ok.

7tonin commented 5 years ago

I just notice ./jbroutDev.py serves the ui on 0.0.0.0:8080 Looks like there is then no necessity to install Chromium (because jbroutDev works fine when chromium removed from $PATH).