Using Python3

How can I get beets to use python3, if I have both python2 and python3 installed on Ubuntu 18.04?

Beets will normally pick up whichever version of Python is python in your path. This is normally Python 2. If you want to invoke it using a specific Python interpreter you can do something like /usr/bin/python3 ./beet to invoke beets (assuming you’re in the directory where the beet executable is installed).

On Debian–and so presumably also on Ubuntu–if you’re using the beets deb package from the distro then this uses Python 3 anyway (/usr/bin/beet is installed to invoke beets with Python 3).

1 Like

You probably have a pip3 executable (or if you don’t, you’ll want to obtain one!). Use pip3 install --user beets or similar to install beets using Python 3.

I live on the bleeding edge. I use pip to install beets.

I decided to force the issue. I installed pip3:

sudo apt install python3-pip

And then I installed beets using:

sudo beet install --upgrade beets

When I run beets I now get

xxxx@ubuntu-server:~$ beet --version
** error loading plugin chroma:
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/beets/plugins.py", line 273, in load_plugins
    namespace = __import__(modname, None, None)
  File "/usr/local/lib/python3.6/dist-packages/beetsplug/chroma.py", line 27, in <module>
    import acoustid
ModuleNotFoundError: No module named 'acoustid'

beets version 1.4.8
Python version 3.6.7
plugins: convert, duplicates, embedart, export, fetchart, ftintitle, hook, info, inline, lastgenre, lyrics, replaygain, rewrite, scrub, web

When I do a sudo pip3 install acoustid, I get this:

Collecting acoustid
  Could not find a version that satisfies the requirement acoustid (from versions: )
No matching distribution found for acoustid

So I’m going to guess that acoustid has not been ported to python3.

Ok, never mind. The package is pyacoustid. I’m good now.