aboutsummaryrefslogtreecommitdiffstats
path: root/Cargo.toml (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add lyrics supportsalmonik2026-06-071-1/+1
|
* correctly working auto completion for dbsalmonik2026-06-061-1/+1
|
* Add internet streams supportsalmonik2026-05-271-1/+1
|
* add licensingsalmonik2026-05-261-1/+1
|
* bin size optimizations and queue stopping at the end of itsalmonik2026-05-261-4/+8
|
* Fix metadata extraction for symphonia 0.6 and add Albums shuffle modesalmonik2026-05-221-1/+1
|
* fix for new symphony API and less debug info in releasesalmonik2026-05-181-2/+1
|
* first public release.salmonik2026-05-161-2/+2
|
* Add scrobbling support (Last.fm + ListenBrainz) and rsp settings reloadsalmonik2026-05-161-2/+4
| | | | | | | | | | | | - Full Last.fm API implementation with MD5 signing (track.updateNowPlaying, track.scrobble) - Full ListenBrainz API implementation (/1/submit-listens for playing_now and single) - ScrobbleState in daemon tracking track, start time, and unix timestamp per play - Scrobble threshold: ≥30s play AND (≥half duration OR ≥4 min) - Duration extraction from symphonia codec params into AudioMetadata and Track - Token validation at daemon startup and on config change - ListenBrainz token valid (user: Salmonium) command to re-read config from disk (avoids token in shell history) - Desktop notifications for token validation results - Empty-credential filtering (empty string = no-op)
* aesthetic changessalmonik2026-05-151-1/+1
|
* Add display_format config, fix restart command, clean up config codesalmonik2026-05-111-1/+1
| | | | | | | | | | | - Add display_format option with get/set/list/unset for customizing track display - Add Track::format() supporting $ARTIST, $ALBUM, $TRACK variables - Update queue, status, notifications to use display_format - Fix restart command using wrong subcommand 'start' -> 'start-daemon' - Remove socket_path from config (now computed at runtime from XDG_RUNTIME_DIR) - Consolidate duplicate save() and save_all() into single save() - Fix redundant .clone().clone() in config.rs - Add todo item for caching config in daemon hot paths
* Major rewrite: play command, queue display, and shuffle modessalmonik2026-05-091-0/+1
| | | | | | | | - Play command: no args queues to end (play only if queue empty + player playing), -i inserts after current and skips, -n inserts after current, removed -l flag - Queue display: detect terminal size, use pager only if queue exceeds terminal rows - Shuffle modes: always remember original queue, restore on 'shuffle none', album shuffle shuffles within each album's range separately
* Fix shuffle first song not being shuffledsalmonik2026-05-081-1/+1
| | | | | | | | | | | update_shuffle_indices now shuffles all indices when position is 0 (no tracks have been played yet), so the first track played is random instead of always being tracks[0]. Directory playback now uses q.current() to pick the first track, resolving through shuffled indices when shuffle is active. Also pins notify-rust version in Cargo.toml and removes PLAN.md (superseded by TODO.md).
* Add desktop notifications for track changes, queue end, and errorssalmonik2026-05-081-0/+1
| | | | | Uses notify-rust to send D-Bus desktop notifications from the daemon when tracks change, the queue empties, or audio errors occur.
* Fix queue bugs: play -i on empty queue, stale track replay after queue ends, ↵salmonik2026-05-071-0/+1
| | | | | | | | | shuffle preserving current position - insert_after_current: guard against panic on empty queue - play -i (now): skip position increment when queue was empty so track plays - directory last: use audio.is_playing() instead of q.current() to avoid replaying finished track - shuffle: only randomize tracks after current position
* Add install script, shell completions, and systemd servicesalmonik2026-05-061-1/+10
| | | | | | | | | - Add install.sh script that builds release, stops daemon, and installs binary - Add shell completions for bash, zsh, and fish - Add systemd user service unit file - Add public binary declaration in Cargo.toml - Add install command to CLI - Make current_track field public for MPRIS integration (placeholder)
* Add unit tests in /tests directory for config, database, playback, and ↵salmonik2026-05-051-0/+6
| | | | scrobbler modules
* fix(daemon): robust auto-advance; ensure next track starts even if playback ↵salmonik2026-05-051-0/+21
fails