Skip to content

Instantly share code, notes, and snippets.

@jauderho
Last active September 7, 2025 05:01
Show Gist options
  • Save jauderho/5f73f16cac28669e56608be14c41006c to your computer and use it in GitHub Desktop.
Save jauderho/5f73f16cac28669e56608be14c41006c to your computer and use it in GitHub Desktop.
HOWTO: Upgrade Raspberry Pi OS from Bookworm to Trixie
### WARNING: READ CAREFULLY BEFORE ATTEMPTING ###
#
# Officially, this is not recommended. YMMV
# https://www.raspberrypi.com/news/bookworm-the-new-version-of-raspberry-pi-os/
#
# This mostly works if you are on 64bit. You are on your own if you are on 32bit or mixed 64/32bit
#
# Credit to anfractuosity and fgimenezm for figuring out additional details for kernels
#
# Make sure everything is up-to-date
sudo apt-get -y update && sudo DEBIAN_FRONTEND=noninteractive apt-get -y dist-upgrade
# Point to bookworm repos instead
sudo sed -i -e 's/bookworm/trixie/g' /etc/apt/sources.list
sudo sed -i -e 's/bookworm/trixie/g' /etc/apt/sources.list.d/raspi.list
# Contents of /etc/apt/sources.list
deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware
deb http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware
deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware
# Uncomment deb-src lines below then 'apt-get update' to enable 'apt-get source'
#deb-src http://deb.debian.org/debian trixie main contrib non-free
#deb-src http://security.debian.org/debian-security trixie-security main contrib non-free
#deb-src http://deb.debian.org/debian trixie-updates main contrib non-free
# Contents of /etc/apt/sources.list.d/raspi.list
deb http://archive.raspberrypi.org/debian/ trixie main
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ trixie main
# Do actual update. See also https://forums.raspberrypi.com/viewtopic.php?t=389477
sudo apt update
sudo apt full-upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confnew" --purge --auto-remove rpd-wayland-all+ rpd-x-all+
sudo apt -y clean && sudo apt -y autoremove
# Reboot
sudo reboot
# Modernize sources
sudo apt modernize-sources
# Make sure the following is in /etc/apt/sources.list.d/raspi.sources. The Signed-by: may be missing
Types: deb
URIs: http://archive.raspberrypi.org/debian/
Suites: trixie
Components: main
Signed-By: /usr/share/keyrings/raspberrypi-archive-keyring.gpg
# Remove the raspi.list.bak after confirming that everything works
rm /etc/apt/sources.list.d/raspi.list.bak
@jauderho
Copy link
Author

@UnicornRidingUnicorn Thanks. I've updated with the instructions from the forum post.

@b14ckyy
Copy link

b14ckyy commented Aug 24, 2025

After 3 failed attempts with other guides that are based on Debian Desktop, with your tutorial it worked straight away. Pi5 with Trixie and so far everything runs smoothly. Even video playback is smoother in 1080p60 than it was in Bookworm. Thanks for that great guide :)

@Nekkowe
Copy link

Nekkowe commented Aug 25, 2025

I went from Buster to Bullseye and then, with the help of your guides, all the way from Bullseye to Bookworm to Trixie, with no issue! Thank you very much!

@jauderho
Copy link
Author

jauderho commented Aug 29, 2025

@Maverynthia
Copy link

had the "signature year" prolbme
apt install --reinstall raspberrypi-archive-keyring

solved it.
FYI for future me if I have the same problem.

@Manish4586
Copy link

Did you upgrade the kernel? That would be a starting point. What does „no boot“ mean, any details? Otherwise, roll back by restoring your backup.

I still have 6.12.34+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.12.34-1+rpt1 (2025-06-26) this kernel how did you update?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment