Raspberry Pi has released Raspberry Pi Imager v2.0.12, the latest version of its OS-writing tool, published on GitHub on October 8, 2026. The release collects 38 merged pull requests, including first contributions from four new contributors.

The changes cover the embedded network installer, Raspberry Pi Connect, OS customisation, write reliability, elevated runs and Compute Module provisioning. The fix most users are likely to notice is in Wi-Fi customisation: Imager now stores and writes the Wi-Fi passphrase rather than a PBKDF2-derived key, because a derived key cannot negotiate WPA3/SAE.

Network installer: waits for an address and the clock, then retries

Most of the new features are in the embedded network installer. It now:

  • sees a network that comes up late, such as a PHY that is slow to negotiate (the release notes name the Pi 5 Rev 1.2's MXL86110);
  • waits for a usable address, not just a link, before fetching the OS list, and no longer treats a link-local 169.254 address as an IP;
  • holds the fetch back while the clock reads earlier than the source Imager was built from, and the installer image now sets the clock from downloads.raspberrypi.com before Imager starts;
  • tries a failed first OS list fetch again after 30 seconds;
  • signs in to Raspberry Pi Connect with a code, showing a QR code, the address to visit on any device and a short code, then waiting for approval;
  • imports SSH public keys from a GitHub username;
  • makes the Done screen's Reboot button reboot.

The clock check addresses boards with no time service and no RTC battery, which boot at 1970, when every certificate is not yet valid. The retry matters because the embedded installer has no Retry button and stops polling once the network looks ready, so a fetch made too early was previously the only one. Code-based sign-in replaces the browser sign-in, which cannot run in the installer without a browser or the rpi-imager:// scheme. GitHub key import fills the gap left by the lack of a clipboard or file picker; unknown users, accounts with no keys, network failures and non-key replies such as a captive portal's page are each reported and add nothing.

For Raspberry Pi Connect generally, the access token from the device-code sign-in is now written as rpi-connect's state.json for the configured user, and rpi-connect's units are enabled where systemctl --user enable puts them, so is-enabled reports them correctly.

OS customisation: WPA3 fix and UTF-8 in cloud-init

OS customisation gets three changes. With the derived key, NetworkManager fell back to WPA2 or failed on SAE-only networks; storing the passphrase itself fixes that. A key saved by an earlier version is dropped from the settings file, while a 64-hex raw key is still accepted. Second, the passphrase is now escaped for NetworkManager's keyfile where imager_custom writes it, since a backslash or a leading space was lost on load. Third, Imager writes UTF-8 into cloud-init YAML as characters rather than escapes.

Write reliability

A cancelled write no longer reports success; previously a cancel during customisation showed the done screen for a half-written device. Imager also refuses a short download and a truncated .img.xz instead of writing part of an image and calling it a success. Other write-path fixes include io_uring and sequential-write changes on Linux, background eject with live status, slower-drive flush handling on macOS, and clearer failure reporting on Windows.

Hardening for elevated runs

The settings file is now created as the invoking user, and ownership is reclaimed without following links; previously root could be led to create it wherever a symlinked settings directory pointed. SSH keys are read and exports written as the invoking user, and the write path bounds the sizes, lifetimes and inputs it trusts, refusing malformed FAT, EEPROM and STP structures. A new test suite with sanitiser builds also led to fixes for three data races found by ThreadSanitizer, in the CA bundle lookup, the icon fetcher and the drive list poll thread.

Compute Module, Windows and Qt changes

  • Compute Module: fixes to the rpiboot and fastboot paths, including following the fastboot gadget through the bootstrap handover and reporting a failed bootstrap or a flash that stopped part way.
  • Storage labelling: internal eMMC is now described as eMMC rather than as an SD card reader, which had invited overwriting an eMMC system drive (#1658).
  • Windows: secure boot keys are now generated with CNG, and OpenSSL is dropped.
  • Toolkit: Imager moves to Qt 6.11.2, carrying the qtbase fix for a fontconfig crash that segfaulted the AppImage on some systems (#1756).

Where 2.0.12 fits

According to the GitHub releases list, the preceding stable releases were:

  • v2.0.10 (June 19, 2026) added Pi Connect for Organisations enrolment and CM5 secure boot re-provisioning.
  • v2.0.11 (August 14, 2026) added the rpi-preseed first-boot customisation format, a fastboot Erase command, multi-frame .img.zst support and, on Linux and Windows, an exclusive lock on drive open.
  • v2.0.11.1 (August 17, 2026) fixed the Raspberry Pi Connect step's Next button and packaged Qt Wayland libraries.

Version 2.0.12 came 52 days after the v2.0.11.1 point release.

What It Means for Makers

Anyone who sets Wi-Fi details in OS customisation should update, especially on WPA3/SAE-only networks. Because a key saved by an earlier version is dropped from the settings file, expect to re-enter the Wi-Fi passphrase.

The network-installer changes are aimed at people bringing up boards with the embedded installer, which has no browser, clipboard or file picker; Connect sign-in now works from a phone, and SSH keys can come straight from a GitHub account. Compute Module users who provision through rpiboot or fastboot get fixes on those paths.

Raspberry Pi's software page describes Imager as "the quick and easy way to install Raspberry Pi OS and other operating systems to a microSD card." It offers installers for Windows (.exe), macOS (.dmg) and Linux x86_64 (AppImage) through imager_latest links without a version number, and on Raspberry Pi OS Imager installs with sudo apt install rpi-imager. The GitHub release page carries versioned v2.0.12 builds, including .deb packages and desktop and CLI AppImages for x86_64, aarch64 and armhf. Mac users need macOS 13 or later, the minimum since v2.0.10.

Sources