Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation of fetchart with pipx results in "unknown command" #5591

Closed
guerda opened this issue Jan 13, 2025 · 2 comments
Closed

Installation of fetchart with pipx results in "unknown command" #5591

guerda opened this issue Jan 13, 2025 · 2 comments

Comments

@guerda
Copy link

guerda commented Jan 13, 2025

Problem

Based on #5572, I tried to use pipx for installation of beets. I installed the plugins via the extras command and tried to execute the fetchart plugin. Unfortunately, beets just responds with "unknown command 'fetchart'".
The versions command also does not list the plugin fetchart, but all the others.

Installed via

pipx install 'beets[web,fetchart,chroma,lastgenre,autobpm]'
  installed package beets 2.2.0, installed using Python 3.11.2
  These apps are now globally available
    - beet
done! ✨ 🌟 ✨

Then tried out the fetchart plugin

$ beet fetchart "Linkin Park"
error: unknown command 'fetchart'

Beet version result:

$ beet version
beets version 2.2.0
Python version 3.11.2
plugins: autobpm, chroma, convert, duplicates, edit, fromfilename, inline, lastgenre, replaygain, web

Running this command in verbose (-vv) mode:

$ beet -vv
user configuration: /home/pi/.config/beets/config.yaml
data directory: /home/pi/.config/beets
plugin paths:
Sending event: pluginload
library database: /home/pi/.beets/musiclibrary.db
library directory: /media/music
Sending event: library_opened
Usage:
  beet COMMAND [ARGS...]
  beet help COMMAND

Options:
  --format-item=FORMAT_ITEM
                        print with custom format
  --format-album=FORMAT_ALBUM
                        print with custom format
  -l LIBRARY, --library=LIBRARY
                        library database file to use
  -d DIRECTORY, --directory=DIRECTORY
                        destination music directory
  -v, --verbose         log more details (use twice for even more)
  -c CONFIG, --config=CONFIG
                        path to configuration file
  -p PLUGINS, --plugins=PLUGINS
                        a comma-separated list of plugins to load
  -P EXCLUDE, --disable-plugins=EXCLUDE
                        a comma-separated list of plugins to disable
  -h, --help            show this help message and exit

Commands:
  autobpm           detect and add bpm from audio using Librosa
  config            show or edit the user configuration
  convert           convert to external location
  duplicates (dup)  List duplicate tracks or albums.
  edit              interactively edit metadata
  fields            show fields available for queries and format strings
  fingerprint       generate fingerprints for items without them
  help (?)          give detailed help on a specific sub-command
  import (imp, im)  import new music
  lastgenre         fetch genres
  list (ls)         query the library
  modify (mod)      change metadata fields
  move (mv)         move or copy items
  remove (rm)       remove matching items from the library
  replaygain        analyze for ReplayGain
  stats             show statistics about the library or a query
  submit            submit Acoustid fingerprints
  update (upd, up)  update the library
  version           output version information
  web               start a Web interface
  write             write tag information to files
Sending event: cli_exit

Setup

  • OS: raspberry pi OS based on Debian 12 bookwork
  • Python version: 3.11.2
  • beets version: 2.2.0
  • Turning off plugins made problem go away (yes/no): no

My configuration (output of beet config) is:

# --------------- Performance ---------------

threaded: yes
terminal_encoding: utf-8
directory: /media/music
# --------------- Main ---------------

library: ~/.beets/musiclibrary.db

match:
    preferred:
        countries:
        - DE
        - XE
        - XW
        - US
        - GB|UK
        media: [CD, Digital Media|File]
        original_year: yes
duplicate_action: merge
duplicate_verbose_prompt: yes

import:
    copy: no
    write: yes
    move: yes
    incremental: yes
    log: ~/.beets/import.log

# --------------- Plugins ---------------

plugins: inline convert web chroma replaygain duplicates fromfilename edit lastgenre autobpm
replaygain:
    backend: command
    auto: no
    overwrite: no
    threads: 4
    parallel_on_import: no
    per_disc: no
    peak: 'true'
    targetlevel: 89
    r128: [Opus]
    r128_targetlevel: 84
    command: ''
    noclip: yes
web:
    host: 0.0.0.0
    port: 8337
    cors: ''
    cors_supports_credentials: no
    reverse_proxy: no
    include_paths: no
    readonly: yes
acoustid:
    apikey: REDACTED
fetchart:
    auto: yes
    cautious: yes
musicbrainz:
    genres: yes
    external_ids:
        discogs: yes
        spotify: yes
        bandcamp: yes
autobpm:
    auto: yes
    overwrite: no
    beat_track_kwargs: {}
convert:
    dest:
    pretend: no
    link: no
    hardlink: no
    threads: 4
    format: mp3
    id3v23: inherit
    formats:
        aac:
            command: ffmpeg -i $source -y -vn -acodec aac -aq 1 $dest
            extension: m4a
        alac:
            command: ffmpeg -i $source -y -vn -acodec alac $dest
            extension: m4a
        flac: ffmpeg -i $source -y -vn -acodec flac $dest
        mp3: ffmpeg -i $source -y -vn -aq 2 $dest
        opus: ffmpeg -i $source -y -vn -acodec libopus -ab 96k $dest
        ogg: ffmpeg -i $source -y -vn -acodec libvorbis -aq 3 $dest
        wma: ffmpeg -i $source -y -vn -acodec wmav2 -vn $dest
    max_bitrate:
    auto: no
    auto_keep: no
    tmpdir:
    quiet: no
    embed: yes
    paths: {}
    no_convert: ''
    never_convert_lossy_files: no
    copy_album_art: no
    album_art_maxwidth: 0
    delete_originals: no
    playlist:
edit:
    albumfields: album albumartist
    itemfields: track title artist album
    ignore_fields: id path
lastgenre:
    whitelist: yes
    min_weight: 10
    count: 1
    fallback:
    canonical: no
    source: album
    force: yes
    auto: yes
    separator: ', '
    prefer_specific: no
    title_case: yes
duplicates:
    album: no
    checksum: ''
    copy: ''
    count: no
    delete: no
    format: ''
    full: no
    keys: []
    merge: no
    move: ''
    path: no
    tiebreak: {}
    strict: no
    tag: ''
pathfields: {}
item_fields: {}
album_fields: {}
chroma:
    auto: yes
@snejus
Copy link
Member

snejus commented Jan 13, 2025

beet version lists plugins that are enabled in your configuration, and fetchart seems to be missing there?

@guerda
Copy link
Author

guerda commented Jan 13, 2025

Oh you are right, this was part of my debugging. Sorry, this was PEBKAC.

@guerda guerda closed this as completed Jan 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants