Vintage iPod, modern desktop

Bring a dead iPod
back to life.

flashpod is a command-line tool that puts a flash storage card into an early-generation iPod and manages the music on it — writing the firmware, building the database, and loading songs. No iTunes, ever.

MIT licensed · Linux & macOS · self-contained binary

A flash-modded iPod running flashpod

What it does

Flash the card

Writes the iPod firmware and partition layout to a CF/SD card, verifies it byte-for-byte, and refuses to touch the disk running your system.

Build the database

Creates the iPod_Control structure and an empty music database from scratch — no iTunes, no libgpod plugin required.

Load your music

Adds files or whole folders, reads tags automatically, skips duplicates, and front-loads your library fast over a USB reader.

Manage on the device

Lists, adds, and removes tracks right on the iPod over USB or FireWire — it finds the device for you, no mounting or device paths.

Raw device access

Reads and writes directly over the raw device with its own FAT driver, so it can manage iPods the OS can’t even mount.

One self-contained binary

Download a single executable for your OS — no Python, no dependencies to install. Built to run on hardware as old as OS X 10.8.

A whole library, from the command line

Flash the card in a USB reader, let flashpod initialize the database and load the bulk of your music, then pop it into the iPod. From there, flashpod finds the device on its own — add or remove the odd track in seconds.

Screenshots

Drop your own images into site/assets/ and update the src paths below.

flashpod flashing a card
Flashing a CF card
flashpod adding music
Loading an album
A flash-modded iPod
The finished iPod

Install

Download the archive for your OS from the Releases page — each holds a single self-contained executable.

tar xzf flashpod-linux-x86_64.tar.gz
cd flashpod-linux-x86_64
./install.sh            # to ~/.local/bin (no root); or: sudo ./install.sh
flashpod --help
tar xzf flashpod-macos-10.8.tar.gz && cd flashpod-macos-10.8
chmod +x flashpod
xattr -d com.apple.quarantine flashpod   # or right-click → Open once
./flashpod --help
# Unzip flashpod-windows-x86_64.zip, then from a terminal:
flashpod.exe --help

# Run an Administrator terminal for the `flash` command.

Building the binaries yourself is documented in BUILD.md.

Requirements

iPod

Gen 1, 2, or 3 (tested); Gen 4 should work but isn’t tested yet. Models from 2007 on aren’t supported.

Operating system

Linux and macOS are tested. Windows has a backend but isn’t tested yet.

Hardware

A USB card reader for flashing. Gen 1–2 iPods need a FireWire interface to manage music on the device afterward.

Got a drawer iPod and a spare CF card?

That’s all you need. Grab a release and bring it back.