cfangmeier / tuijam

A fancy TUI client for Google Play Music
MIT License
129 stars 9 forks source link

Cant satisfy dependencies on Manjaro Linux #36

Closed AriosJentu closed 5 years ago

AriosJentu commented 5 years ago

There are old version of python packages in requirements.

Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (google-api-python-client 1.7.8 (/usr/lib/python3.7/site-packages), Requirement.parse('google-api-python-client==1.7.4'), {'tuijam'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/tuijam", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3241, in <module>
    @_call_aside
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3225, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3254, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'google-api-python-client==1.7.4' distribution was not found and is required by tuijam
AriosJentu commented 5 years ago

After I've done a manual installation, tuijam still doesn't run user interface. After restoring the queue, it just closes.

cfangmeier commented 5 years ago

ok, looks like you have a newer version of google-api-python-client than is specified in the project requirements. I expect the fix would be to to change

google-api-python-client==1.7.4

to

google-api-python-client>=1.7.4

in requirements.txt.

If you can confirm whether or not this fixes the error, I can push the fix.

samesdat commented 5 years ago

I have similar issues on Manjaro (installed from AUR):

Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 900, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 791, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (PyYAML 3.13 (/usr/lib/python3.7/site-packages), Requirement.parse('pyYAML>=4.2b1'), {'tuijam'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/tuijam", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3241, in <module>
    @_call_aside
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3225, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 3254, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 585, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 598, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 786, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'pyYAML>=4.2b1' distribution was not found and is required by tuijam

There is only a packet named python-pyyaml-18.11.0 which is installed. Where is "requirements.txt" located? What should I change?

cfangmeier commented 5 years ago

Hi @samesdat. Are you certain that the package you have installed is called python-pyyaml and not python-pyaml? I don't see the former in either the official repos or the AUR.

In any case, this led me down an interesting rabbit hole where I discovered that the yaml package listed in the TUIJam AUR package is the wrong one. It was python-pyaml, but it should be python-yaml which is actually the PyYAML package on pypi so I fixed that in the PKGBUILD.

Second, the version of PyYAML in the arch/manjaro repositories is 3.13, but I was requiring 4.2b1. It worked on my machine because I must have done a pip install --user PyYAML at some point and got the newer version. I adjusted the requirements.txt to be in line with the arch/manjaro versions.

Can you try installing the AUR package again and see if it works now?

samesdat commented 5 years ago

Thank you for clarificatione, it is indeed python-pyaml (confusing) ... I tried the new build r122.c1e3f33-1 from AUR. After some seconds after starting tuijam I got this:

21:31:41 bss $ tuijam starting up. Traceback (most recent call last): File "/usr/bin/tuijam", line 11, in load_entry_point('tuijam==0.5.2', 'console_scripts', 'tuijam')() File "/usr/lib/python3.7/site-packages/tuijam/app.py", line 658, in main app = App() File "/usr/lib/python3.7/site-packages/tuijam/app.py", line 59, in init developer_key, = lookup_keys("GOOGLE_DEVELOPER_KEY") File "/usr/lib/python3.7/site-packages/tuijam/utility.py", line 16, in lookup_keys with open(CONFIG_FILE, "r") as f: FileNotFoundError: [Errno 2] Datei oder Verzeichnis nicht gefunden: '/home/bss/.config/tuijam/config.yaml'

cfangmeier commented 5 years ago

This is a bug from when I removed the API keys from the source code. After I did that I never tested the first time setup sequence, and hence a crash.

I've now fixed the bug and pushed it out in 0.5.3. Let me know if you still run into any issues.

samesdat commented 5 years ago

It works. I removed r123.c53583c-1and installed 0.5.3-1. Thank you.