Music Sync
Full library sync with playlist support, metadata handling, and format conversion. Your music, on your Zune, without the hassle.
A native sync and management tool for your Zune. Linux testing builds are available now. Your music, your videos, your device. Source code is open for the community to build on.
Music, videos, photos, playlists. Full device sync with battery monitoring, storage tracking, and a native interface that feels like it belongs.
Music library
Video library
Photo library
Make it yours
A C library and native application for full Zune device sync, built from the ground up with MTPz protocol support.
Full library sync with playlist support, metadata handling, and format conversion. Your music, on your Zune, without the hassle.
Transfer video and photo content with native format conversion. Queue episodes, sync movies, load up your photo library.
MTPZ authentication lets the app communicate with your Zune. Source builders can get the authentication data from the original libmtp-zune project.
Get MTPZ data ↗A C library at the core. Breach, smuggle, forge. Build your own Zune tools with libzune. GPL-3.0-or-later.
View libzune on GitHub ↗Linux uses libusb with desktop USB permission rules. The separate macOS project uses a DriverKit extension for device access.
By and for the Zune community. Contribute code, test devices, share knowledge. Let's keep these devices alive together.
Linux testing builds are available now. macOS is coming later.
Native Qt 6 / QML application with libusb for direct USB access. Download the AppImage, follow its USB setup guide, and sync.
Download for LinuxRequires x86_64 Linux, glibc 2.41 or newer, X11/XWayland and OpenGL. Read the release notes for the version you download.
A native macOS version is planned for a later release. No public macOS download is available yet.
Coming Later// Connect to a Zune and send a track #include <zune.h> int main(void) { // Breach ; connect + MTPZ authenticate ZuneDeviceHandle dev = zune_breach(); if (!dev) return 1; // Smuggle ; send a track to the device uint32_t item_id; zune_smuggle_track_tagged(dev, "/path/to/song.mp3", "Hero Of War", "Rise Against", "Appeal To Reason", "Rock", 10, 234000, &item_id); // Sever ; disconnect cleanly zune_sever(dev); return 0; }
Testing across the full Zune lineup. Community help needed for models we don't have.
Built for the community, with source available to fork and make your own. Try the Linux build, share what works, or report an issue with your device model and a debug report from Settings → Health.