feat: Add support for syncing playlists

Signed-off-by: SindreKjelsrud <sindre@kjelsrud.dev>
This commit is contained in:
SindreKjelsrud 2026-01-15 15:27:34 +01:00
parent f1b31fabda
commit 86d45f324d
Signed by: sidski
GPG key ID: D2BBDF3EDE6BA9A6
8 changed files with 470 additions and 17 deletions

View file

@ -14,7 +14,11 @@ pkgs.mkShell {
];
shellHook = ''
echo "NaviPod Development Environment"
echo ""
echo " NaviPod Development Environment "
echo " Sync Navidrome to iPod | Scrobble to ListenBrainz "
echo ""
echo ""
# Verify Rust is available
if command -v rustc &> /dev/null; then
@ -26,15 +30,34 @@ pkgs.mkShell {
fi
echo ""
echo "Welcome to NaviPod development shell!"
echo "Run 'cargo build' to build the project."
echo "Run 'cargo run' to run the CLI."
echo "Run 'cargo check' to check for compilation errors."
echo "📦 Build Commands:"
echo " cargo build - Build in debug mode"
echo " cargo build --release - Build optimized release"
echo " cargo check - Check for compilation errors"
echo " cargo run -- [COMMAND] - Build and run a command"
echo ""
echo "🎵 NaviPod Commands:"
echo " cargo run -- sync [OPTIONS]"
echo " --album <NAME> Sync specific album"
echo " --artist <NAME> Sync specific artist"
echo " --playlist <NAME> Sync specific playlist"
echo ""
echo " cargo run -- list-albums List all albums from Navidrome"
echo " cargo run -- list-playlists List all playlists from Navidrome"
echo " cargo run -- check Check iPod connection"
echo ""
echo " cargo run -- scrobble [OPTIONS]"
echo " --clear Clear scrobbler log after sync"
echo " --no-backup Skip backup when clearing"
echo ""
echo "📝 Configuration:"
echo " Edit config.toml to set your Navidrome URL, credentials,"
echo " iPod mount point, and ListenBrainz token."
echo ""
echo "💡 Quick Start:"
echo " 1. cp config.example.toml config.toml"
echo " 2. Edit config.toml with your settings"
echo " 3. cargo run -- sync"
echo ""
echo "Available commands:"
echo " navipod sync [--album ALBUM] [--artist ARTIST] - Sync content to iPod"
echo " navipod list-albums - List available albums"
echo " navipod check - Check iPod connection"
echo " navipod scrobble [--clear] [--backup] - Sync scrobbles to ListenBrainz"
'';
}