OpenNumismat / open-numismat

OpenNumismat, is intended primarily for registering a collection of coins. But it is also suitable for other types of collectibles - stamps, postcards, badges and more exotic things.
http://opennumismat.github.io/
GNU General Public License v3.0
95 stars 27 forks source link

Linux (DEB) version returns error and will not run #135

Open chriscrutch opened 10 months ago

chriscrutch commented 10 months ago

At least the last two versions have had the same issue. I found the error in 1.9.4, downgraded to 1.8.22 (the last one I had before upgrading) to get it to work, and waited for a new version thinking that it would likely get resolved. 1.9.5 was released and upon installation the same error persisted, so I came here. Trying to run it in a GUI environment just simply fails, trying to open it via the terminal produces the following error:

File "/usr/bin/open-numismat", line 5, in <module>
    from OpenNumismat import run
ModuleNotFoundError: No module named 'OpenNumismat'

Downgrading to 1.8.22 works just fine, I did not check the versions in between that and 1.9.4.

NEKolev commented 10 months ago

I'm not a developer and I don't use Linux, but have you tried the Flatpak package?

chriscrutch commented 10 months ago

I'm not a developer and I don't use Linux, but have you tried the Flatpak package?

Thanks for your input. Flatpak version does work. However, I'm not interested in using the Flatpak version and given the option of running a slightly older version and running Flatpak, I'd choose the older version.

NEKolev commented 10 months ago

@JanisV FYI

andyrozman commented 5 months ago

New version (1.9.6) works on Ubuntu (with deb)

chriscrutch commented 5 months ago

Latest version 1.9.7 still fails, but with different errors:

Traceback (most recent call last):
  File "/usr/lib/python3.11/importlib/metadata/__init__.py", line 563, in from_name
    return next(cls.discover(name=name))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/open-numismat", line 33, in <module>
    sys.exit(load_entry_point('OpenNumismat==1.9.7', 'gui_scripts', 'open-numismat')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/bin/open-numismat", line 22, in importlib_load_entry_point
    for entry_point in distribution(dist_name).entry_points
                       ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/metadata/__init__.py", line 981, in distribution
    return Distribution.from_name(distribution_name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/metadata/__init__.py", line 565, in from_name
    raise PackageNotFoundError(name)
importlib.metadata.PackageNotFoundError: No package metadata was found for OpenNumismat
JanisV commented 5 months ago

@chriscrutch Can you provide your version of Linux?

chriscrutch commented 5 months ago

Can you provide your version of Linux?

Debian trixie, Kernel: Linux 6.6.15-amd64

andyrozman commented 5 months ago

Debian trixie, Kernel: Linux 6.6.15-amd64

Did you build your own version or did you use released .deb file?

I had similar problem when I tried to do the local build. Had to create special docker image to be be able to build locally. But downloaded version worked out-of-the-box.

JanisV commented 5 months ago

@chriscrutch can you try run pip list --outdated?

Problem may be in dependencies and pip install -U setuptools wheel can help (https://github.com/yt-dlp/yt-dlp/issues/5941). It seemed to me that OpenNumismat from .deb was launched from venv, but it doesn’t look right on your system

chriscrutch commented 5 months ago

@chriscrutch can you try run pip list --outdated?

Problem may be in dependencies and pip install -U setuptools wheel can help (yt-dlp/yt-dlp#5941). It seemed to me that OpenNumismat from .deb was launched from venv, but it doesn’t look right on your system

pip list --outdated brings up quite a list. After I updated setuptools and wheel, this is the list: https://pastebin.com/raw/yF7md65t

JanisV commented 5 hours ago

Problem with deb-package is in different python versions. Now deb build on Ubuntu 22.04 with python 3.10 and it requered this version as system default on target machine (deb uses system interpreter, but self contain modules and some of it (pillow, numpy) prebuilded for python 3.10).

There will be another build (on Ubuntu 24.04 with python 3.12) to temporarily solve the problem.

Similar #231