Your iPod, without iTunes.

GitHub Stars PyPI Downloads

Browse albums and tracks, play music, edit metadata, and sync your library. FLAC, artwork, video, photos, podcasts, and audiobooks.

Free and open source for Windows, macOS, and Linux.

What iOpenPod does

FLAC goes in, iPod files come out

Add FLAC and other unsupported audio. iOpenPod converts it with FFmpeg, caches the result, and writes an iPod-ready copy.

Video and photos, automatically

iOpenPod prepares unsupported video and photos for the formats and sizes your iPod expects. No HandBrake pass. No manual resizing.

Review first. Restore if needed.

See additions, removals, artwork, metadata, and storage use before syncing. Device snapshots give you a way back.

More features

Podcasts

Subscribe, set retention, track listened status, and add episodes to an iPod.

Scrobbling

Send play history to ListenBrainz or Last.FM during sync.

Playlists & Smart Playlists

Manage standard playlists or build smart playlists with filters, live updating, limits, and sort order.

Play Counts & Ratings

Read play counts, ratings, and skip counts from the iPod and sync them back to your PC metadata where supported.

Drag and Drop

Copy files directly to the iPod without using the full sync workflow.

Artwork

Change cover art, inspect iPod artwork, and write device compatible files.

Media Types

Music, audiobooks, podcasts, videos, and photos all work.

Settings

Set the encoder, bitrate, lossless mode, sample rate, and spoken-word output.

Backups

Browse snapshots by device and restore only when the connected iPod matches.

See it in action

Supported iPods

DeviceStatusNotes
iPod "Classic" (all generations 1st-7th)Supported
iPod Mini (all generations 1st and 2nd)Supported
iPod Nano (all generations 1st-7th)Supported
iPod ShufflePlannedShuffle uses a different database structure. ETA ~4 mo.
iPod TouchNot plannedTouch requires non-file-system device protocols.

Install options

Install from PyPI

Use pip, pipx, or uv tool. After install, run iopenpod.

pip

Installs iOpenPod into your current Python environment.

$ python -m pip install iopenpod
$ iopenpod

Upgrade with python -m pip install --upgrade iopenpod.

pipx

Creates an isolated app environment and exposes the iopenpod command.

$ pipx install iopenpod
$ iopenpod

Upgrade with pipx upgrade iopenpod.

uv tool

If you already use uv, this gives you the same isolated app-style install.

$ uv tool install iopenpod
$ iopenpod

Upgrade with uv tool upgrade iopenpod.

Latest release builds

Native builds do not need Python.

PlatformFileInstructions
WindowsiOpenPod-Windows.zipExtract the archive and run iOpenPod.exe.
macOSiOpenPod-macOS.zipExtract the archive and run iOpenPod.app. You may need to allow the app in System Settings.
Linux (recommended)iOpenPod-Linux-x86_64.AppImageRun chmod a+x ./iOpenPod-Linux-x86_64.AppImage, then launch the AppImage.
Linux (Arch-based)iopenpod (AUR)Install from the AUR.
Linux (tarball)iOpenPod-Linux.tar.gzExtract the archive and run ./iOpenPod.
Linux (Flatpak)iOpenPod-Linux.flatpakIf present on the release, install with Flatpak.

Need setup help? Open the Install Help page.
Python package installs need Python 3.11+. If iopenpod is not on your PATH, run pipx ensurepath for pipx or uv tool update-shell for uv tool.
Update with the same tool you used to install it.
Install FFmpeg with ffprobe for transcoding and media probing, and Chromaprint for acoustic fingerprinting during sync.
If Linux throws a Qt xcb error, install the XCB runtime packages listed on the Install Help page.

For developers

$ git clone https://github.com/TheRealSavi/iOpenPod.git
$ cd iOpenPod
$ uv sync
$ uv run iopenpod

uv sync installs dependencies into a local virtual environment. FFmpeg with ffprobe and Chromaprint are needed for full sync functionality.

Migrating from legacy tools

Built for abandoned tools

iOpenPod is a modern, actively maintained replacement for gtkpod, YamiPod, CopyPod, and EphPod.

No libgpod dependency problems

Older iTunes alternatives often depend on the abandoned libgpod C library. iOpenPod uses a custom pure-Python parsing engine instead, which avoids libgpod warnings and checksum corruption issues on newer iPods.

Free on every platform

Linux, Windows, and macOS builds are fully featured and free, without sponsorship walls or paywalls.

Safe syncing

Pre-sync change review and automatic device snapshot backups help keep your iPod database from being corrupted or wiped during a transfer.

Frequently Asked Questions

How do I sync my iPod without iTunes?

Install iOpenPod from PyPI with pip, pipx, or uv tool, or download a native release build. Launch it, connect your iPod as a mounted drive, choose your media folders, review the changes, and apply the sync plan.

Do I need Python to use iOpenPod?

PyPI installs require Python 3.11 or newer. Native builds do not need a separate Python install.

Can I put FLAC files on an iPod?

Yes. iOpenPod converts unsupported audio and video formats to iPod-compatible output during sync. FFmpeg with ffprobe is required for transcoding and media probing.

Is iOpenPod related to OpenPod.io or OpenPod?

No. iOpenPod is a distinct, active, modern open-source iPod management tool and is not affiliated with OpenPod.io or OpenPod.

What should I use if I am migrating from gtkpod, YamiPod, CopyPod, EphPod, Strawberry, or Clementine?

iOpenPod is a modern replacement for abandoned iPod managers like gtkpod, YamiPod, CopyPod, and EphPod. If you are coming from Strawberry or Clementine, iOpenPod avoids libgpod dependency errors, stays free on Linux, Windows, and macOS, and adds safer sync review with automatic device snapshot backups.

Does it work on Linux and macOS?

Yes. iOpenPod supports Windows, macOS, and Linux. PyPI installs are recommened, and native builds are available for easy install.

Will syncing erase my iPod?

No. iOpenPod shows the changes before writing anything, and backs up your database before every sync.

Can I add files without a full sync?

Yes. Drag and drop files into iOpenPod and they go straight to your iPod. No sync setup needed.

My iPod was previously managed by iTunes. Will I lose my music?

No. iOpenPod reads the existing iTunesDB on your iPod and shows what is already on it. You can browse, edit, and add tracks without touching the current library. Sync only changes what you approve in the review step.

My iPod isn't being detected. What should I do?

Make sure the iPod is mounted as a drive and visible in File Explorer, Finder, or your Linux file manager. If it still is not working, open an issue with your iPod model, OS, and iopenpod.log.

To find the log in iOpenPod, open Settings > Storage, then click Open next to Log Location.

How do I find the iOpenPod log file?

Open Settings > Storage, then click Open next to Log Location. Attach iopenpod.log when reporting a bug.

Do I need FFmpeg, ffprobe, and Chromaprint installed?

Yes for full sync functionality. FFmpeg with ffprobe is required for transcoding and media probing, and Chromaprint is required for acoustic fingerprinting during sync.

What happens if something goes wrong mid-sync?

iOpenPod takes a full snapshot of your iPod's database before every sync begins. If anything goes wrong, open the Backups panel and restore the previous snapshot with one click.

Does iOpenPod send any data to the internet?

Only when you trigger it. That covers update checks, scrobbling, and podcast searches. Nothing runs in the background, and there is no telemetry.

Can I sync the same iPod from multiple computers?

Yes. The fingerprint-to-database mapping lives on the iPod itself, so the device carries its own identity. Each PC re-fingerprints its local library on first sync, then matches against what is already on the device.

Does iOpenPod support iPod Touch?

Not currently. iPod Touch uses non-file-system device protocols instead of the iTunesDB-style storage used by classic iPods.

Join the iOpenPod community

Meet other iPod owners, suggest features, share feedback, and get help when something isn’t working.

Join us on Discord
iOpenPod is free and open source. Donations are optional and help support development.
Support on Ko-fi