# much of this such as the whitelist, canonical list for lasgenre
# is stolen from https://github.com/montchr/beets-config/ with much gratitude

directory: ~/media/audio/music
library: ~/.local/share/beets/library.db

threaded: true
art_filename: albumart
# Use the album's original date instead of the release's date
original_date: yes
# Use safer pathnames
asciify_paths: yes
max_filename_length: 255

# Long format - I don't need all the extra info for each invocation
#format_item: '[$id] [$album_id] [$singleton] $albumartist - $title - $album - $original_year - [$format - $bitrate $length $filesize]'
#format_album: '[$id] $albumartist - $album - $original_year [$catalognum]'

clutter:
- Thumbs.db
- .DS_Store
- '*.m3u'
- '*.pls'
- '*.db'

import:
  copy: false
  move: true
  write: true
  bell: true
  # incremental: true
  languages:
    - en
  log: ~/.cache/beets.log
  quiet_fallback: skip
  timid: false

ignore_hidden: yes
paths:
    default: "%the{$albumartist}/$album/$track $title"
    singleton: "singletons/%the{$artist - $title}"
    comp: compilations/$album/$track $title
    albumtype:soundtrack: soundtracks/$album/$track $title

item_fields:
  multidisc: 1 if disctotal > 1 else 0
  artist_differs: 1 if albumartist != artist else 0

musicbrainz:
  extra_tags: [year, catalognum, country, media, label]
  auto: yes
  remove: yes

match:
  preferred:
    countries: ["US", "UK|GB", "DE", "NL", "SE"]
    media: ["Digital Media|File", "CD"]
  strong_rec_thresh: 0.15
  medium_red_thresh: 0.25
  rec_gap_thresh: 0.25

plugins:
  - acousticbrainz
  - bandcamp
  - chroma
  - deezer
  - describe
  - edit
  - embedart
  - export
  - fetchart
  - fromfilename
  - ftintitle
  - fuzzy
  - importadded
  - info
  - inline
  - lastgenre
  - lastimport
  - lyrics
  - mbcollection
  - mbsync
  - missing
  - spotify
  - the
  - ydl

edit:
  itemfields: track title artist album
  albumfields: album albumartist albumtype
  ignore_fields: id path

fetchart:
  sources: filesystem coverart itunes discogs amazon albumart
  store_source: yes

lastgenre:
  auto: true
  canonical: ~/.config/beets/lastgenre_canonicallist.yaml
  count: 4
  fallback: ""
  force: yes
  min_weight: 6
  prefer_specific: false
  separator: "; "
  source: album
  whitelist: ~/.config/beets/lastgenre_whitelist.txt

lastfm:
  user: schmitzkater

lyrics:
  sources: musixmatch genius
  fallback: ''

bandcamp:
  art: true
