Free for Everyone

Sync Your Zune.

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.

It Already Works

Music, videos, photos, playlists. Full device sync with battery monitoring, storage tracking, and a native interface that feels like it belongs.

Movies in the Zuuned Linux poster browser

Video library

Photo folders in Zuuned Linux

Photo library

Zune for Everyone

A C library and native application for full Zune device sync, built from the ground up with MTPz protocol support.

Music Sync

Full library sync with playlist support, metadata handling, and format conversion. Your music, on your Zune, without the hassle.

Video & Photos

Transfer video and photo content with native format conversion. Queue episodes, sync movies, load up your photo library.

MTPz Auth

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 ↗

Open Source C Lib

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 ↗

Device Driver

Linux uses libusb with desktop USB permission rules. The separate macOS project uses a DriverKit extension for device access.

Community Built

By and for the Zune community. Contribute code, test devices, share knowledge. Let's keep these devices alive together.

Linux & macOS

Linux testing builds are available now. macOS is coming later.

Linux

Native Qt 6 / QML application with libusb for direct USB access. Download the AppImage, follow its USB setup guide, and sync.

Download for Linux

Requires x86_64 Linux, glibc 2.41 or newer, X11/XWayland and OpenGL. Read the release notes for the version you download.

macOS

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;
}

Supported Devices

Testing across the full Zune lineup. Community help needed for models we don't have.

Gen 1
Zune 30
Testing
Gen 2
Zune 80/120
Testing
Gen 2 Flash
Zune 8GB
Need Testers
Gen 2 Flash
Zune 16GB
Need Testers
Gen 3
Zune HD
Testing

Let's Make Our Zunes Amazing Again

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.