A (reasonably) new commandline UI for Beets!

Hey everyone,

I’ve recently put what I hope are the finishing touches to a hefty pull request initially started by @mxmerz 5 years ago to refresh the beets commandline UI!

The finished product looks like this on my machine:

The PR is here: Importer UI overhaul rebase/update by davidswarbrick · Pull Request #3721 · beetbox/beets · GitHub , it builds on initial discussions in import formatting hard to parse mentally · Issue #1593 · beetbox/beets · GitHub and implementation in Importer UI overhaul by sampsyo · Pull Request #1685 · beetbox/beets · GitHub

What we could do with now is more users! Give this code a try, take a screenshot, feedback anything you do/don’t like or any bugs, or if code review is more your style please do feedback any improvements. All being well it’s hopeful we can merge this in soon :grinning:

7 Likes

Is this part of the fabled 1.5 release?

Not yet—it’s still in pull request form. Let’s make it a goal to make it part of the next one!

1 Like

I’m just a user, but I would love to test it out for myself, make screenshots, etc. However, I have no idea on how to get started. Is there a “for dummies” explanation on how to get started with testing your PR?

2 Likes

Hey so sorry for the long delay! We found a bug in the new ui but I’m now happy to report that one is fixed! But, we still need your help!

For those who’d like to test my new UI, here’s a quick summary:
First, make sure you’ve uninstalled beets via your normal route, make sure to keep copies of your database and config files!
Clone my branch of the beets repository:

git clone git@github.com:davidswarbrick/beets.git

Go into your newly cloned folder, and switch to the ui branch:

cd beets
git checkout ui

Then, install beets using pip from that folder:

pip install -e .

You may get some errors about your pip install being centrally managed (I do on the latest version of Arch Linux), ways around this include using virtual environments but will ultimately be system dependent.
If you’ve installed beets system-wide, you can check it’s working by a version check:

$ beet --version
beets version 1.6.1
Python version 3.11.3
plugins: bpd, bucket, convert, discogs, ...

Alternatively, if you’re in a virtual environment, you might need to use python’s module syntax to run the same check:

$ python -m beets --version
beets version 1.6.1
Python version 3.11.3
plugins: bpd, bucket, convert, discogs, ...

Now, try and import some new tracks or albums to your library!
All being well, you should see a shiny new UI, please post screenshots in this thread, and any feedback about things you do/don’t like. Any bugs would be greatly appreciate on the Pull Request so they can receive proper fixes & reviews.

1 Like

If you have beets installed from git already, here’s a quick guide on checking out the feature branch: Change to the beets UI · beetbox/beets · Discussion #4870 · GitHub

1 Like

For those of you who don’t want to, or are not savvy with fiddling around with git commands. There is another way of directly installing from this development branch. I posted it here: Change to the beets UI · beetbox/beets · Discussion #4870 · GitHub