Jxck-S / plane-notify

Notify if a selected plane has taken off or landed using ADS-B data. Compares older data to newer data to determine if a landing or takeoff has occurred. As well as nav modes, emergency squawk and resolution advisory notifications. Can output to Twitter, Discord, Mastodon, and Telegram
GNU General Public License v3.0
2.5k stars 432 forks source link

Install problem: What am I missing or doing wrong? #96

Open gitbls opened 1 year ago

gitbls commented 1 year ago

I'm trying to install plane-notify on RasPiOS Bullseye (Lite, but with X11 stuff install, if it matters), but without success.

Up front: I'm reasonably Linux and Python literate, but have never used pipenv, which of course is where I'm running into problems.

The README says to do pipenv install before doing the clone. When I do that pipenv creates the virtualenv in the user's directory. Then I clone, run screen, and pipenv run gets

p83~/plane-notify# pipenv run python __main__.py
Creating a virtualenv for this project...
Pipfile: /root/plane-notify/Pipfile
Using /bin/python3.9 (3.9.2) to create virtualenv...
⠇ Creating virtual environment...created virtual environment CPython3.9.2.final.0-64 in 412ms
  creator CPython3Posix(dest=/root/.local/share/virtualenvs/plane-notify-3tWUBZ4y, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/root/.local/share/virtualenv)
    added seed packages: pip==22.3.1, setuptools==65.6.3, wheel==0.38.4
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

✔ Successfully created virtual environment!
Virtualenv location: /root/.local/share/virtualenvs/plane-notify-3tWUBZ4y
Traceback (most recent call last):
  File "/root/plane-notify/__main__.py", line 3, in <module>
    from colorama import Fore, Back, Style
ModuleNotFoundError: No module named 'colorama'

OK, so it looks like the virtualenv is created in the current directory, so try 2: clone and then do pipenv install inside the plane-notify directory. So, on a fresh OS install I install everything, then clone, then cd plane-notify and do pipenv install.

pipenv install gets a literal TON of errors (see the bottom of this issue), and not surprisingly when I screen and pipenv run I get

p83~/plane-notify# pipenv run python __main__.py
Traceback (most recent call last):
  File "/root/plane-notify/__main__.py", line 3, in <module>
    from colorama import Fore, Back, Style
ModuleNotFoundError: No module named 'colorama'
p83~/plane-notify#

Also tried it on RasPiOS Buster, but that failed in ways that convinced me Buster was a no-go.

I'm befuddled at the moment, and would appreciate any and all guidance on how to get this installed and running.

Thanks!

Output from pipenv install in try 2 (done after the clone, in the plane-notify directory)

p83~/plane-notify# pipenv install
Creating a virtualenv for this project...
Pipfile: /root/plane-notify/Pipfile
Using /bin/python3.9 (3.9.2) to create virtualenv...
⠇ Creating virtual environment...created virtual environment CPython3.9.2.final.0-64 in 2017ms
  creator CPython3Posix(dest=/root/.local/share/virtualenvs/plane-notify-3tWUBZ4y, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/root/.local/share/virtualenv)
    added seed packages: pip==22.3.1, setuptools==65.6.3, wheel==0.38.4
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

✔ Successfully created virtual environment!
Virtualenv location: /root/.local/share/virtualenvs/plane-notify-3tWUBZ4y

Installing dependencies from Pipfile.lock (02fd05)...
An error occurred while installing appdirs==1.4.4 --hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128 --hash=sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41! Will try again.
An error occurred while installing apscheduler==3.6.3 --hash=sha256:3bb5229eed6fbbdafc13ce962712ae66e175aa214c69bed35a06bffcf0c5e244 --hash=sha256:e8b1ecdb4c7cb2818913f766d5898183c7cb8936680710a4d3a966e02262e526! Will try again.
An error occurred while installing async-generator==1.10 ; python_version >= '3.5' --hash=sha256:01c7bf666359b4967d2cda0000cc2e4af16a0ae098cbffcb8472fb9e8ad6585b --hash=sha256:6ebb3d106c12920aaae42ccb6f787ef5eefdcdd166ea3d628fa8476abe712144! Will try again.
An error occurred while installing attrs==22.1.0 ; python_version >= '3.5' --hash=sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6 --hash=sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c! Will try again.
An error occurred while installing beautifulsoup4==4.11.1 --hash=sha256:ad9aa55b65ef2808eb405f46cf74df7fcb7044d5cbc26487f96eb2ef2e436693 --hash=sha256:58d5c3d29f5a36ffeb94f02f0d786cd53014cf9b3b3951d42e0080d8a9498d30! Will try again.
An error occurred while installing cachetools==4.2.2 ; python_version ~= '3.5' --hash=sha256:61b5ed1e22a0924aed1d23b478f37e8d52549ff8a961de2909c69bf950020cff --hash=sha256:2cc0b89715337ab6dbba85b5b50effe2b0c74e035d83ee8ed637cf52f12ae001! Will try again.
An error occurred while installing certifi==2022.9.14 ; python_version >= '3.6' --hash=sha256:e232343de1ab72c2aa521b625c80f699e356830fd0e2c620b465b304b17b0516 --hash=sha256:36973885b9542e6bd01dea287b2b4b3b21236307c56324fcc3f1160f2d655ed5! Will try again.
... a bunch more "an error occurred" ...
Installing initially failed dependencies...
[pipenv.exceptions.InstallError]: Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
[pipenv.exceptions.InstallError]: Ignoring cffi: markers 'os_name == "nt" and implementation_name != "pypy"' don't match your environment
[pipenv.exceptions.InstallError]: Collecting appdirs==1.4.4
[pipenv.exceptions.InstallError]:   Using cached https://www.piwheels.org/simple/appdirs/appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
[pipenv.exceptions.InstallError]: Collecting apscheduler==3.6.3
[pipenv.exceptions.InstallError]:   Using cached https://www.piwheels.org/simple/apscheduler/APScheduler-3.6.3-py2.py3-none-any.whl (58 kB)
[pipenv.exceptions.InstallError]: Collecting async-generator==1.10
[pipenv.exceptions.InstallError]:   Using cached https://www.piwheels.org/simple/async-generator/async_generator-1.10-py3-none-any.whl (18 kB)
[pipenv.exceptions.InstallError]: Collecting attrs==22.1.0
[pipenv.exceptions.InstallError]:   Using cached https://www.piwheels.org/simple/attrs/attrs-22.1.0-py2.py3-none-any.whl (58 kB)
[pipenv.exceptions.InstallError]: ERROR: THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions, please update the hashes. Otherwise, examine the package contents carefully; someone may have tampered with them.
[pipenv.exceptions.InstallError]:     attrs==22.1.0 from https://www.piwheels.org/simple/attrs/attrs-22.1.0-py2.py3-none-any.whl#sha256=6d9391612040005651f4f45d6bfc257484a8f93f15ffdcf3f8dbd21f9e20ce39 (from -r /tmp/pipenv-fla9g0hr-requirements/pipenv-txn2p6rs-hashed-reqs.txt (line 4)):
[pipenv.exceptions.InstallError]:         Expected sha256 29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6
[pipenv.exceptions.InstallError]:         Expected     or 86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c
[pipenv.exceptions.InstallError]:              Got        6d9391612040005651f4f45d6bfc257484a8f93f15ffdcf3f8dbd21f9e20ce39
...Followed by another large block of errors...
ERROR: Couldn't install package: [Requirement(_name='appdirs', vcs=None, req=NamedRequirement(name='appdirs', version='==1.4.4', req=Requirement.parse('appdirs==1.4.4'), extras=[], editable=False, _parsed_line=<Line (editable=False, name=appdirs, path=None, uri=None, extras=(), markers=None, vcs=None, specifier===1.4.4, pyproject=None, pyproject_requires=None, pyproject_backend=None, ireq=appdirs==1.4.4)>), markers=None, _specifiers='==1.4.4', index=None, editable=False, hashes=frozenset({'sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128', 'sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'}), extras=(), abstract_dep=None, _line_instance=<Line (editable=False, name=appdirs, path=None, uri=None, extras=(), markers=None, vcs=None, specifier===1.4.4, pyproject=None, pyproject_requires=None, pyproject_backend=None, ireq=appdirs==1.4.4)>, _ireq=None), Requirement(_name='apscheduler', vcs=None, req=NamedRequirement(name='apscheduler', version='==3.6.3', req=Requirement.parse('apscheduler==3.6.3'), extras=[], editable=False, _parsed_line=<Line (editable=False, name=apscheduler, path=None, uri=None, extras=(), markers=None, vcs=None, specifier===3.6.3, pyproject=None, pyproject_requires=None, pyproject_backend=None, ireq=apscheduler==3.6.3)>), 
...plus a lot more which I'm not including for brevity
...followed by
  Package installation failed...
/usr/lib/python3.9/subprocess.py:1052: ResourceWarning: subprocess 4540 is still running
  _warn("subprocess %s is still running" % self.pid,
ResourceWarning: Enable tracemalloc to get the object allocation traceback
sys:1: ResourceWarning: unclosed file <_io.FileIO name=4 mode='rb' closefd=True>
ResourceWarning: Enable tracemalloc to get the object allocation traceback
sys:1: ResourceWarning: unclosed file <_io.FileIO name=7 mode='rb' closefd=True>
ResourceWarning: Enable tracemalloc to get the object allocation traceback
brickhousetech commented 1 year ago

I'm having the same issue. Worked on it for hours without finding the issue. Did you ever solve the problem?

cws82us313 commented 1 year ago

I had the same issue so I run it like a normal python without pipenv. It worked great.

brickhousetech commented 1 year ago

It looks as if they fixed everything causing this in the Dockerfile, so I am running it as a Docker and it works fine!

gitbls commented 1 year ago

I had the same issue so I run it like a normal python without pipenv. It worked great.

Thanks! Will give that a try.