Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Files and folders

This page lists where Listen keeps its files on Linux and Windows: settings, history, caches, logs, your own themes and presets, and the program’s helper files. Listen stores everything in your user account; it never writes outside your home or profile except to the music folder you choose for CD ripping.

The three base folders

Listen uses the standard per-user folders of your system, under the application name Listen.

FolderLinuxWindows
Config~/.config/listen%APPDATA%\Listen\config
Data~/.local/share/listen%APPDATA%\Listen\data
Cache~/.cache/listen%LOCALAPPDATA%\Listen\cache

On Linux the folders follow XDG_CONFIG_HOME, XDG_DATA_HOME and XDG_CACHE_HOME when you have set them. On Windows %APPDATA% is usually C:\Users\<you>\AppData\Roaming and %LOCALAPPDATA% is C:\Users\<you>\AppData\Local.

Rule of thumb: config is what you would want to keep, data is what Listen has learnt or saved for you, and cache can be deleted at any time.

Config folder

PathContent
config.tomlAll settings, your list of servers (name, kind, address, user name), per-server options and the setting for password storage. Contains no passwords. Written atomically, so a crash cannot leave it half-written.
credentials.tomlPasswords, tokens and keys, only when the system keyring is not used or not available (“File only” or no keyring). On Linux readable by your user only (permissions 0600). Delete a server in Listen to remove its entry.
themes/Your own themes. See Custom themes.

If config.toml cannot be read because it is damaged, Listen starts with default settings and logs a warning. Keep a copy, or use Export settings (see Backup, logs and diagnostics).

Data folder

PathContent
logs/listen.log, mpv.log (and the previous run as .log.1) and rip-*.log from CD rips.
history.jsonlYour listening history, one line per play. Local only.
flow-weights.jsonThe DJ flow weights learnt from your early skips (Auto-DJ setting Learn from my skips); rebuilt from the history (or taken from another device through listen-server), safe to delete.
queue.jsonThe play queue, restored at the next start.
analysis/Song analysis results (tempo, key, sections), unless you set another Analysis folder in the settings.
offline/Songs you downloaded for offline playback from your own servers, with an index. The folder is private to your user. See Downloads.
milkdrop/presets/Milkdrop presets (.milk files) when you have not chosen another preset folder.
lyrics_overrides.jsonWhich lyrics match you picked for songs.
ai-dj-quota.jsonThe count of AI DJ spoken breaks voiced today, and whether Google reported the speech quota as used up.
rips.jsonDiscs you have ripped, including those listed under Rips to fix.
models/The optional singing-voice detector (djustify-svdnet.pt, 2 MB) when you downloaded it in the analysis settings.

Cache folder

Everything here is created again when needed.

PathContentCleared by
covers/Downloaded album and artist imagesSettings → Advanced → Cache → Cover art cache
ytm-audio/Audio kept for YouTube Music songs so they can play gapless and replay quickly; limited to about 500 MBYouTube Music audio cache
waveforms/Waveforms for the player bar sliderWaveform cache
models/The beat-detection model for song analysis (about 11 MB), downloaded oncenot listed; delete the folder to fetch it again
dj/Clips of the AI DJ’s spoken breaksnot listed
updates/Downloaded update filesnot listed
rips/Work files of CD rips (Linux)not listed

Other places

PathUsed for
~/Downloads (your system’s Downloads folder)Where exports go: settings (listen-settings-<date>.json), diagnostics (listen-diagnostics-<date>.zip) and history (JSON or CSV).
Your music folder (default ~/Music, set in Settings → Advanced → CD ripping)Ripped albums as Album Artist/Album/NN Title.flac, with a hidden .listen-incoming folder while copying.
~/.config/whipper/whipper.confwhipper’s own configuration, including the drive offset found by Verify offset. Linux only.
$XDG_RUNTIME_DIR/io.github.leks2205.Listen.sockLocal socket through which a second start reaches the running Listen (Linux). The file io.github.leks2205.Listen.lock plays this role on Windows. Without XDG_RUNTIME_DIR a private folder listen-<user> in the temp folder is used.
$XDG_RUNTIME_DIRAlso holds the private socket of the audio player (mpv).
%LOCALAPPDATA%\Listen\binHelper programs (mpv, yt-dlp, Deno) when they are installed there. Listen looks for helpers next to listen.exe, then on the PATH, then here and in winget’s folders.
%LOCALAPPDATA%\Programs\ListenThe Windows installation (installer without administrator rights).
Your KDE colour scheme and theme-switcher filesRead, never written, when Follow desktop theme is on (Linux).

Backing up and moving

  • To move your setup to another computer, use Export settings and Import settings, then add your servers again. See Backup, logs and diagnostics.
  • To back up everything Listen knows, copy the config and data folders while Listen is closed. Passwords stored in the keyring are not in these folders; they stay with your user account’s keyring.
  • To start fresh, close Listen and rename the three folders. Listen creates new ones at the next start.
  • To remove all traces, delete the three folders and, if used, the entries for io.github.leks2205.Listen in your keyring.

Note: The application ID io.github.leks2205.Listen is also the name of the desktop file, the icon and the Wayland application ID.