Device downloads
Complete device images, required boot files, and installation instructions. Experimental candidates have passed build checks; hardware support is tracked separately on the device page.
Device directory and test results
Google Pixel 2 XL · experimental candidate 6
Section: Google Pixel 2 XL · experimental candidate 6Experimental · Published 2026-09-30
Download Windows, macOS and Linux installation bundle · 823.5 MiB
Experimental browser installer · or use the native scripts below.
No Python required. Install current Android platform-tools, back up your phone, and unlock its bootloader using the device guide. Verify the bundle checksum and build provenance, then extract the ZIP.
gh attestation verify google-taimen-native-v2.zip -R porthole-dev/pmaportsLinux or macOS, from the extracted folder:
bash install.shWindows PowerShell, from the extracted folder:
powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1The Windows command permits the verified script for this process only. Both installers check image hashes, the model and unlocked bootloader, then ask you to type the device name before erasing data. They never unlock the bootloader automatically. To verify and preview without contacting a phone, use bash install.sh --dry-run or powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1 -DryRun.
Download Python installation bundle · 823.5 MiB
One download includes the matching rootfs, boot, DTBO, checksums, source revisions and installer. Separate files remain below.
Verify bundle checksums and provenance before running:
gh attestation verify google-taimen-install.zip -R porthole-dev/pmaportspython3 google-taimen-install.zipRequires Python 3.8+, current Android platform-tools, an unlocked bootloader and a backup. The installer checks the model and asks before replacing the OS and erasing user data. Add --dry-run to verify and preview without contacting a phone.
Separate files
Section: Separate files| File | Download | SHA-256 |
|---|---|---|
| google-taimen.img.gz | 800.7 MiB | 6dd1f8d9380ba244270cb0c1873a6348f3a1bd4a9a48fd9ecc64a67038f3885b |
| boot.img | 20.2 MiB | d12a1679d9e719e5a468fe748edf490b32be866723111f3585aa23bdfb99a2df |
| dtbo.img | 0.4 KiB | fd9752b381403312bcdeda8bb8555f0ad964f3464e7bc4ed307e3cef018362da |
| SHA256SUMS | 3.2 KiB | See checksum file |
| INSTALL.md | 1.3 KiB | 65f91e24bd37bb216b84839729ede47e1727857ec0976b77345054465399e72b |
Manual installation and recovery
Installation
Section: InstallationTarget: Google Pixel 2 XL (taimen), mainline Linux, Phosh, systemd. Includes the licensed nonfree firmware. This candidate has passed build checks; hardware testing applies only when a report names this exact image checksum.
Verify and unpack
Section: Verify and unpackDownload every asset into one directory, then run:
sha256sum -c SHA256SUMSgzip -dk google-taimen.img.gzThe default account is user. The initial password is selected by the maintainer
through the release environment. Change it after installation.
Full installation
Section: Full installationFlashing replaces the installed operating system and user data. Back up first. The bootloader must be unlocked. Use a current Android platform-tools fastboot. These instructions target the port’s tested slot b. Never activate slot a.
From the bootloader, verify that fastboot identifies your Pixel 2 XL before performing these writes:
fastboot devicesfastboot flash userdata google-taimen.imgfastboot flash boot_b boot.imgfastboot flash dtbo_b dtbo.imgfastboot set_active bfastboot rebootThe DTBO write is required: the stock overlay does not match the mainline kernel.
Keep boot.img, dtbo.img, and the rootfs from the same release together.
Support, limitations, and dated hardware reports: https://porthole-dev.github.io/porthole/devices/google-taimen/
Verify build provenance with gh attestation verify <downloaded-file> -R porthole-dev/pmaports.
