Skip to content
cofobPublic

About

Native macOS app that syncs a Navidrome / OpenSubsonic library to an iPod classic

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

64 Commits

Folders and files

Repository files navigation

MusicSync icon

MusicSync

Native macOS app that syncs a Navidrome / OpenSubsonic library to an iPod classic.

MusicSync main window

Features

  • Browse and play your server library in an Apple Music–style window, with lyrics and a play queue.
  • Fast local mirror of the library, so search works at once, also offline.
  • Sync albums, artists and playlists to an iPod classic with stock firmware: own iTunesDB writer with hash58, covers, playlists, gapless playback and Sound Check.
  • Converts lossless files to AAC with Apple's encoder; MP3 and AAC are copied as they are.
  • Keeps songs that iTunes or Finder put on the iPod, and does not add the same album twice.
  • Sends plays from the iPod to the server as scrobbles.
  • Rockbox presets (FLAC, Opus).

Requirements

  • macOS 15 or later, Apple silicon or Intel.
  • Swift 6 toolchain: Xcode or the Command Line Tools (xcode-select --install).
  • ffmpeg for conversion: brew install ffmpeg.
  • An iPod classic in disk mode. In Finder, turn off automatic sync and turn on manual management of music before the first sync.

Build

swift build
swift test
./scripts/bundle.sh

bundle.sh makes a release build at build/MusicSync.app with an ad-hoc signature. ARCHS="arm64 x86_64" ./scripts/bundle.sh makes a universal app.

Install

Install or update to the latest release from the terminal. The app is not notarized; a file downloaded with curl gets no quarantine flag, so Gatekeeper does not block it. A running copy quits first:

curl -fLo /tmp/MusicSync.zip https://github.com/cofob/musicsync/releases/latest/download/MusicSync.zip && { pkill -x MusicSyncApp; while pgrep -xq MusicSyncApp; do sleep 1; done; } && rm -rf /Applications/MusicSync.app && ditto -xk /tmp/MusicSync.zip /Applications && open /Applications/MusicSync.app

Or install your own build:

cp -R build/MusicSync.app /Applications/
open /Applications/MusicSync.app

If you download MusicSync.zip from Releases in a browser and macOS blocks it, run xattr -dr com.apple.quarantine /Applications/MusicSync.app.

Open Settings, enter your server address, user name and password, and click Save. The password is kept in the Keychain.

License

cofob.dev License: non-commercial use with credit. See LICENSE.

About

Native macOS app that syncs a Navidrome / OpenSubsonic library to an iPod classic

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages