yomguy / DeeFuzzer

Light and instant media streaming client for web radios and TVs written in Python
https://github.com/yomguy/DeeFuzzer
GNU General Public License v3.0
143 stars 30 forks source link

Installation on Ubuntu 22 ARM: list of updated dependencies #108

Closed pmontrasio closed 1 year ago

pmontrasio commented 1 year ago

My system is an Odroid HC-4 with an ARM processor

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.1 LTS
Release:    22.04
Codename:   jammy

I attempted to install using the method listed for Debian

sudo apt-get install python3-pip python3-dev cython3 python-liblo \
                     python-mutagen python-pycurl python-yaml \
                     libshout3-dev librtmp-dev liblo-dev \
                     libcurl4-openssl-dev libmariadbclient-dev

but I got

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package python-yaml is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

Package libmariadbclient-dev is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  libmariadb-dev-compat:armhf libmariadb-dev:armhf libmariadb-dev-compat libmariadb-dev

Package python-mutagen is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  python3-mutagen

E: Unable to locate package python-liblo
E: Package 'python-mutagen' has no installation candidate
E: Unable to locate package python-pycurl
E: Package 'python-yaml' has no installation candidate
E: Package 'libmariadbclient-dev' has no installation candidate

I can replace some of the missing packages with the suggested ones but some are not available. This is the list:

python3-pip: OK python3-dev: OK cython3: OK python-liblo: Unable to locate package but there is python3-liblo python-mutagen: apt suggests python3-mutagen python-pycurl: Unable to locate package but there is python3-pycurl python-yaml: Unable to locate package but there is python3-yaml libshout3-dev: OK librtmp-dev: OK liblo-dev: OK libcurl4-openssl-dev: OK libmariadbclient-dev: missing, obsoleted, etc but it says

However the following packages replace it:
  libmariadb-dev-compat:armhf libmariadb-dev:armhf libmariadb-dev-compat libmariadb-dev

According to https://packages.debian.org/sid/libmariadb-dev "Sources that expect the MySQL Client libraries should use files from the libmariadb-dev-compat package." so I installed libmariadb-dev-compat

Therefore correct dependencies should be:

sudo apt-get install python3-pip python3-dev cython3 python3-liblo \
                     python3-mutagen python3-pycurl python3-yaml \
                     libshout3-dev librtmp-dev liblo-dev \
                     libcurl4-openssl-dev libmariadb-dev-compat

Then sudo pip install -U distribute setuptools

failed with

AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'

but I'm afraid that this is a different issue.

yomguy commented 1 year ago

Hi @pmontrasio

You are definitely right, thanks a lot for the detailed feedback. I have update the README.

I have removed the sudo pip install -U distribute setuptools which is in fact not necessary.

Finally, I have tested the whole install procedure on a fresh ubuntu:jammy container and all seems fine.

Is it OK for you now?

pmontrasio commented 1 year ago

It starts now. Thanks.