Reference

Configuration

One TOML file, written on first run. Edit it by hand or with goose config set.

goose config                    # show everything (secrets masked)
goose config get theme
goose config set volume 60
goose config path
goose config edit               # opens $EDITOR

#config.toml

~/.config/gooseneck/config.toml
theme        = "auto"         # auto = Omarchy's theme if installed, else opencode
view         = "grid"         # grid | list
thumbnails   = true           # artist / album art
thumb_height = 0              # art height in rows; 0 = auto
sidebar      = true           # now-playing sidebar on wide terminals
show_help    = true           # key hints in the status bar
volume       = 80             # starting volume
player       = "mpv"          # other players work fire-and-forget ($APP overrides)
player_args  = ["--no-video"]
local_scrobble = true         # record listens in scrobble_db
scrobble_db  = ""             # "" = ~/.config/gooseneck/scrobbles.db
bin_dir      = ""             # directory holding yt-dlp; "" = $PATH
download_dir = ""             # "" = ~/Music/gooseneck/<Artist>/<Album>/
artists_json = ""             # use your own catalog file
artists_url  = "https://skmusic.shalomkarr.workers.dev/data/artists.json"

[[catalog]]                   # extra catalogs (managed by `goose catalog`)
name = "mine"
path = "~/.config/gooseneck/catalogs/mine.json"

#Environment variables

VariableDoes
GOOSENECK_HOMEMoves config, cache, downloads and the player socket into one directory. Handy for testing.
GOOSENECK_IMAGESkitty, halfblock or off: force an image mode
NO_COLORPlain CLI output
EDITORUsed by goose config edit

#Files

PathWhat
~/.config/gooseneck/config.tomlSettings (mode 0600)
~/.config/gooseneck/cache.dbCached artist/album pages, track info, play history
~/.config/gooseneck/scrobbles.dbYour local listening log
~/.config/gooseneck/catalogs/Personal and followed catalogs
~/Music/gooseneck/Downloads
$XDG_RUNTIME_DIR/gooseneck/Player socket, daemon socket and log
Edit these docs on GitHub