config:beets
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| config:beets [2024/03/25 20:42] – Wuff | config:beets [2025/11/23 12:06] (current) – Wuff | ||
|---|---|---|---|
| Line 7: | Line 7: | ||
| < | < | ||
| #mint21 | #mint21 | ||
| - | sudo apt-get install libchromaprint1 | + | sudo apt-get install libchromaprint1 mp3val flac python3-acoustid |
| - | sudo apt-get install | + | |
| - | sudo apt-get install | + | |
| sudo apt-get remove python-pip | sudo apt-get remove python-pip | ||
| sudo apt-get install python3-setuptools | sudo apt-get install python3-setuptools | ||
| Line 20: | Line 18: | ||
| pip install https:// | pip install https:// | ||
| pip install discogs-client | pip install discogs-client | ||
| - | pip install beets-web-import | ||
| pip install python3-discogs-client | pip install python3-discogs-client | ||
| + | # see notes below to patch copyartifacts | ||
| pip install beets-copyartifacts | pip install beets-copyartifacts | ||
| + | |||
| + | #Buggy as of 19/ | ||
| + | pip install beets-copyartifacts3 | ||
| + | pip install beets-extrafiles | ||
| + | |||
| + | #Mint22: | ||
| + | sudo apt-get install python3-acoustid libchromaprint1 mp3val flac | ||
| + | pipx install beets | ||
| + | pipx inject beets discogs_client requests pylast pyacoustid pycairo pygobject python3-discogs-client discogs-client beets-copyartifacts beets-extrafiles | ||
| + | pipx inject beets beets-yearfixer | ||
| + | pipx inject beets git+https:// | ||
| + | #for lyrics plugin: | ||
| + | pipx inject beets langdetect bs4 | ||
| + | |||
| + | </ | ||
| + | |||
| + | to upgrade beets going forward, use: | ||
| + | < | ||
| + | pip install -U beets | ||
| + | </ | ||
| + | |||
| + | As beets 1.6.0 is a bit buggy and 3 years old, use latest source snapshot tarball installation: | ||
| + | < | ||
| + | pip uninstall beets | ||
| + | pip install https:// | ||
| + | </ | ||
| + | |||
| + | Uninstall plugins from pipx: | ||
| + | < | ||
| + | Show all pipx envs and injected packages to find exact package names | ||
| + | pipx list --include-injected | ||
| + | |||
| + | then run: | ||
| + | pipx uninject beets beets-web-import | ||
| + | </ | ||
| + | |||
| + | ====== shell completion ====== | ||
| + | add to .bashrc or similar: | ||
| + | < | ||
| + | eval " | ||
| + | </ | ||
| + | |||
| + | ====== copyartifacts python3 patch ====== | ||
| + | < | ||
| 2to3-2.7 -w ~/ | 2to3-2.7 -w ~/ | ||
| - | #adjust as following: | + | #Mint22: |
| + | sudo apt-get install 2to3 | ||
| + | 2to3 -w ~/ | ||
| + | </ | ||
| + | then adjust as following: | ||
| + | < | ||
| #line 104: | #line 104: | ||
| file_ext = os.path.splitext(filename)[1].decode(' | file_ext = os.path.splitext(filename)[1].decode(' | ||
| Line 37: | Line 84: | ||
| #add line 127 | #add line 127 | ||
| dest_file = beets.util.bytestring_path(dest_file) | dest_file = beets.util.bytestring_path(dest_file) | ||
| - | |||
| - | |||
| - | vi ~/ | ||
| - | change line 75 from | ||
| - | def unidecode_punc_only(text): | ||
| - | to | ||
| - | def unicode_punc_only(text): | ||
| - | |||
| - | |||
| - | |||
| - | #Buggy as of 19/ | ||
| - | pip install beets-copyartifacts3 | ||
| - | pip install beets-extrafiles | ||
| </ | </ | ||
| - | + | Change the init: | |
| - | to upgrade beets going forward, use: | + | |
| < | < | ||
| - | pip install | + | vi ~/ |
| </ | </ | ||
| - | |||
| - | As beets 1.6.0 is a bit buggy and 3 years old, use latest source snapshot tarball installation: | ||
| < | < | ||
| - | pip uninstall beets | + | #change line 75 from |
| - | pip install https:// | + | def unidecode_punc_only(text): |
| + | #to | ||
| + | def unicode_punc_only(text): | ||
| </ | </ | ||
| - | |||
| ====== Unicode in Tag Patch ====== | ====== Unicode in Tag Patch ====== | ||
| Line 235: | Line 267: | ||
| # files matching these patterns are deleted from source after import | # files matching these patterns are deleted from source after import | ||
| - | clutter: [" | + | clutter: [" |
| # files/ | # files/ | ||
| ignore: [" | ignore: [" | ||
| Line 279: | Line 311: | ||
| track: [] | track: [] | ||
| - | plugins: [fetchart, | + | plugins: [fetchart, |
| # | # | ||
| pluginpath: [] | pluginpath: [] | ||
| Line 459: | Line 491: | ||
| #Note this takes about 10 seconds for 7 files which is about 6h for 15k songs. | #Note this takes about 10 seconds for 7 files which is about 6h for 15k songs. | ||
| - | web: | ||
| - | host: 0.0.0.0 | ||
| - | port: 8337 | ||
| - | |||
| - | webimport: | ||
| - | host: 0.0.0.0 | ||
| - | port: 8338 | ||
| - | |||
| bpd: | bpd: | ||
| host: 127.0.0.1 | host: 127.0.0.1 | ||
| Line 530: | Line 554: | ||
| beet import -A -C -W -I -s / | beet import -A -C -W -I -s / | ||
| </ | </ | ||
| + | Update id3 tags after changing db | ||
| + | < | ||
| + | beet write | ||
| + | </ | ||
| ====== Addons ====== | ====== Addons ====== | ||
| Line 537: | Line 564: | ||
| https:// | https:// | ||
| - | Web Import: | ||
| - | < | ||
| - | pip install beets-webimport | ||
| - | </ | ||
| - | ~/ | ||
| ====== Submit album to MusicBrainz ====== | ====== Submit album to MusicBrainz ====== | ||
| Line 559: | Line 581: | ||
| - Submit the edit. | - Submit the edit. | ||
| After a few moments, try re-tagging the album with beets. If everything worked properly, beets should find the release you contributed and finish tagging it. Repeat this process for any albums you wish to add to MusicBrainz. | After a few moments, try re-tagging the album with beets. If everything worked properly, beets should find the release you contributed and finish tagging it. Repeat this process for any albums you wish to add to MusicBrainz. | ||
| - | |||
| - | |||
| - | ====== beets web ====== | ||
| - | |||
| - | depends on flask | ||
| - | < | ||
| - | pip install flask | ||
| - | </ | ||
| - | |||
| - | add web to plugins in beets config.yaml | ||
| - | Define port in [web] section | ||
| - | < | ||
| - | [web] | ||
| - | host: 127.0.0.1 #or 0.0.0.0 | ||
| - | port: 8337 | ||
| - | </ | ||
| - | |||
| - | for a remote web interface, CORS is required | ||
| - | < | ||
| - | pip install flask-cors | ||
| - | </ | ||
| - | |||
| - | start server on localhost: | ||
| - | < | ||
| - | beet web | ||
| - | </ | ||
| - | or | ||
| - | < | ||
| - | beet web hostname port | ||
| - | </ | ||
| - | |||
| - | |||
| - | https:// | ||
| Line 643: | Line 632: | ||
| ====== Puddletag ====== | ====== Puddletag ====== | ||
| ID3 Tag editor with embed cover support | ID3 Tag editor with embed cover support | ||
| + | |||
| + | https:// | ||
| + | |||
| < | < | ||
| - | sudo add-apt-repository ppa: | ||
| - | sudo apt-get update | ||
| sudo apt-get install puddletag | sudo apt-get install puddletag | ||
| </ | </ | ||
config/beets.1711399371.txt.gz · Last modified: by Wuff