“New” old functionality with Raspberry Pi OS (Legacy)

Over the past nine years, Raspberry Pi has only ever supported a single release of the Raspberry Pi OS (formerly known as Raspbian). This can cause significant problems when we move to a new upstream branch (for example when we moved from Jessie to Stretch or from Stretch to Buster, or the recent move from Buster to Bullseye). With the new branches come new versions of libraries and new interfaces. Old software and interfaces become unsupported, and the way to do specific things changes. Some of those come from the upstream and some from our own desire to move to open-source interfaces.

Of course, we understand this isn’t always the right decision for particular users. For example, some of you are educational users who would like to follow instructions and tutorials online. Others are industrial users, who’ve developed software to use particular library versions; or who value a stable unchanging operating system. Some of you have asked for an option to roll back certain parts of the OS to restore some functionality that you have been relying on.

Raspberry Pi OS (Legacy)

For this reason, we’ve decided to create a legacy version of the Raspberry Pi OS based on the Debian Buster release (or, to be more specific, the Debian oldstable release). This is based on:

  • The previous release of the Raspberry Pi OS based on Buster
  • Hardware-accelerated Chromium removed and replaced with the upstream software browser
  • Linux kernel branched at 5.10.y and only taking security patches from the Linux kernel
  • Raspberry Pi firmware branched and only taking security and hardware support patches for existing products

Hardware acceleration of Chromium takes a significant amount of support time; for every release we have to re-port our hardware interfaces. At the same time, it is important that Chromium is supplied with the most recent version available in Debian, since it has many security patches applied to it. For this reason we think using the upstream software-accelerated version by default will be better, although we will still keep the hardware-accelerated v92 browser.

The Linux kernel APIs are also important. With new versions of the kernel, the interfaces between different layers changes. This means that a driver compiled against 5.10 may not work when compiled against 5.12; it is therefore important to choose a long-term stable Linux kernel such as 5.10 and only take upstream changes.

The firmware will be branched to avoid de-stabilising its functionality as it continues to support future hardware. Although we will not support new products on the legacy image, we will make sure any new revisions of older products continue to be supported. So, for example, if we were to release a (currently imaginary) new Raspberry Pi 4 rev 1.5 (which usually means component changes for supply reasons), it would be supported on the legacy image, whereas a new Raspberry Pi product (a future 5 for example, also currently imaginary) would not.

Raspberry Pi OS (Legacy) will remain supported while the various components continue to receive updates. For Debian Buster, support will be available until June 2024. For Linux 5.10 kernel, December 2026. If Debian Bookworm becomes stable in this time, Raspberry Pi (Legacy) will switch to Bullseye.

Download Raspberry Pi OS (Legacy)

Raspberry Pi OS (Legacy) is available to download from our Software page, and can also be found in Raspberry Pi Imager, our free OS installer for Windows, macOS, Ubuntu for x86, and Raspberry Pi OS.

Also…

If you want to add the legacy camera interfaces to Bullseye, please click your update icon in the taskbar to update. Then open a terminal (Ctrl-Alt-T) and type ‘sudo raspi-config’, go to ‘Interface Options’ and then ‘Legacy Camera’, and reboot. These camera interfaces are deprecated, and we are not supporting them going forwards.

Lastly…

If you were hoping for a blog post about the 64bit OS, that’s coming next, we’re just fixing some issues in Bullseye before we release it.

60 comments
Jump to the comment form

Avatar

For those of us who have been running Raspian Buster for the past couple of years, are there any changes we need to make to sources.list or anything else?

Reply to Roger H.

Avatar

You don’t need to do anything different, the only thing which will be different is that you’ll still be using the old hardware accelerated chromium-browser. This will not get updated and could therefore end up with unpatched vulnerabilities.

Reply to Gordon Hollingworth

Avatar

What should customers do to migrate to the supported Legacy Raspberry Pi OS with continued security updates? Many users of previous images don’t want to rebuild the whole system to stay secure, but could swap packages/sources/run update scripts.
Thanks!

Reply to Martin Boissonneault (Pishop.ca)

Avatar

Thanks for all you guys do! I am looking forward to the 64bit branch for the CM3 while still appreciating the 32bit branch for our RPi1!

Reply to Miles Raymond

Avatar

i am wondering why RasPiOS is doing that heavy desktop/userinsteface customisation at all and risking breaking things that needs alot of maintaining.
the most trouble happens because of those customisations.
why not “transfering” RPi specific firmware, bootloader, graphic drivers to regular Debian repository and then they have to maintaine it.

Reply to beta-tester

Avatar

Because we don’t like any of the default Debian desktop environments, and we think ours is better? (You are, of course, free to think otherwise – but I probably wouldn’t have spent seven years of my life doing nothing but working on the desktop experience if I didn’t think it was making things better…)

Reply to Simon Long

Avatar

That’s 7 years a great many of us value very highly – you have done an amazing job, [speaking as someone who has only been messing with computers for over forty years].

Reply to Roger Whiteley

Avatar

Thank you for the kind words, Roger. I do hope that most people think that the general direction of travel for the desktop is that it has got better over time. (Even if it’s not always a perfectly smooth path upwards – there are occasional bumps in the road, for which we apologise!)

Reply to Simon Long

Avatar

I agree with Roger,
Also from someone with well over 40 years experience in computer software development.

Avatar

I agreee with Roger, the work done on the RaspiOS has been amazing, thanks to all the team. (by the way is that the Roger Whiteley who worked for a certain large company installing MAP over Broadband in a Luton car factory in the late 80s? I still get the shivers from attending the works manager’s early morning closure meetings, heaven forbid if our team was causing problems!)

Reply to Derek Board

Avatar

Wow, just wow. When I got my first RasPi, 3 I think, it almost made me hyperventilate to hold that much power in my hands. Now I have a 4 sitting on the desk beside me and ought to be using it for my surfing and email, at least. You folks have been doing some serious stuff. I’d like to have an 8GB Pi, but I don’t know what it would do that my 4GB wouldn’t. I wrote my doctoral dissertation and did the statistics in 64K.

NOT to be bragging, but I’m trying to figure out whether I’ve been doing this for fifty years. Hard to put a date on the start of my madness.

Reply to Uncle Ed McNerd

Avatar

Probably. Remember writing multithreaded drivers that had to fit in less than 2K of memory? And knowing what speed & standard that modem negotiated just by hearing it way too many times!

Avatar

I’ve customized Raspberry Pi OS very differently for desktop. I used budgie and I think it’s better than default raspberry pi OS. I’ve also managed to make it work nicely with touchscreen. Default Raspberry Pi OS desktop is hardly usable on touchscreen. You can check whole source and download ready SD card image here

https://github.com/bareboat-necessities/lysmarine_gen

I hope Raspberry Pi foundation can consider switching to budgie.

Thanks

Reply to mgrouch

Avatar

Also, the default settings for the Debian standard image were developed for computers that have 200W power supplies. We’ve made choices that will better fit computers with more modest power consumption.

Reply to Gordon Hollingworth

Avatar

I think you did great when Raspberry Pi Desktop actually run on Asus EEE PC 701 (via SD card slot). That’s 512 MB RAM 4GB SSD machine.

Unfortunately, the installation went bad, so now booting is always chosen to 32GB SD card, instead of internal drive. Not that I’m complaining. It’s nice to be able to use that cute computer again.

Reply to Harry Hardjono

Avatar

Good to see that someone is still using an EEE 701! I had great fun modifying mine – internal USB hub with additional USB ports underneath… and even a touchscreen! http://www.gavsworld.net/?page=Eee%20PC%204G%20(701) Sold it in the end to buy the 901 :-D

Reply to Gavin Cameron

Avatar

I am also looking for a 64bit Lite or headless version for my Raspberry Pi Server.

Reply to Saud Iqbal

Avatar

Been using the beta for at least one month in production without a single issue. The only point missing is the “stable” label. To come soon if I understand well.

Reply to Eirikr70

Avatar

Are you going to update picamera with new python libcamera bindings in the future? If not, are you going to release a library that’s roughly equivalent functionality wise, or are users going to be completely on their own to implement more complex applications?

Reply to Dan S.

Avatar

I tried this on a Pi Zero running headless and it brought back the problem of the VNC displaying 640×480 so I disabled it again.
Will libcamera be controllable from Python soon? I have some simple programs that my granddaughter uses to do timelapse animation and it would be good to be able to update them to Bullseye.

Reply to Michael

Avatar

David is working on a PiCamera2 library which uses the underlying libcamera interface as we speak. Hopefully we’ll have something available in beta soon.

Reply to Gordon Hollingworth

Avatar

Sooooo… if I read this post correctly, there is a Pi 5 that will be released soon? Nice.

Reply to John

Avatar

You must be reading a different Blog ??

**whereas a new Raspberry Pi product (a future 5 for example, also currently imaginary) would not.**

Reply to MW

Avatar

hi guyz, i need help , i am doing project on pi3B+. for that i need python version 3.6 but in latest version python 3.9 is installed by default.plz guide me which respbian version has python 3.6 version
thankx

Reply to Muhammad Najam ul islam

Avatar

You need to virtualise the OS to make all of these problems go away. There’s probably enough computing power to make that a viable option now.

Reply to Neil

Avatar

In Bullseye, xrdp only shows a black screen, on Buster works perfect!!! How to fix it???? Back to legacy?

Reply to Miguellinux

Avatar

I had this problem when testing xrdp a few weeks ago – from what I can remember, the black screen is caused by being logged in as the pi user locally and then trying to create an xrdp connection as the same user; xrdp does not allow two connections as the same user. Make sure you are logged out locally as the user as whom you are trying to remotely connect.

Reply to Simon Long

Avatar

I also can’t get xrdp to work on Bullseye.
The process
xrdb -merge /etc/X11/Xresources/x11-common
never ends
No problem on buster

Reply to Tim Robinson

Avatar

I think I might have found a littel wrinkle.
I installled chromium-chromedriver. This deleted chromium and installed something else. I now have chromium-browser…..buster-rpt2 installed. Does this mean I have uninstalled the software accelerated debian version and have installed the hardware accelerated Pi version which will not be updated.

Reply to Ken Thompson

Avatar

I’d like to know this too. I’ve installed the legacy OS and it came with the chromium v90 package, but this article says that the hardware accelerated is the v92.

Which one is it, then?

chromium v90*deb-10u1
Or
chromium-browser v92*buster-rpt2?

Thanks

Reply to David

Avatar

On the 64-bit version, will all the recommended software run on it, for example, Mathematica?

Reply to Wen Chen

Avatar

Thanks greatly for this — all very good news. The option to turn on legacy camera support in Bullseye is most appreciated.

Reply to Christopher Barnatt

Avatar

The new version does not have Minecraft installed.
From the release notes:
* Python Games and Minecraft removed from Recommended Software – neither is compatible with bullseye
My 8yo was not happy, we are starting over with Buster. So where is the “Buster Full” image that we can use to follow along “THE OFFICIAL Raspberry Pi Beginner’s Guide” and comes with all the extras like LibreOffice, Scratch, Sonic Pi, Minecraft, Mathematica, BlueJ and Node-RED?
BTW I would prefer if you would release images that we can write using Etcher again. The OS I’m looking for (Buster Full) does not appear in the Raspberry Pi Imager. So how can I download and install it? Maybe somewhere from downloads.raspberrypi.org? How to write it to a SD card? I see no image files.

Reply to Fozi

Avatar

OK, I figured it out:
– Download the zip file from the images folder (hint: go up)
– Etcher is smart enough to write those. It actually even can write it from the URL to the zip file but I downloaded it first, just in case I have to write it again later.
– Raspberry Pi Imager has an option for this too, all the way down called “Use custom”. Mentions .img, not .zip. I recommend Etcher.
– I could have also installed these things on the Pi from the normal “Buster” image from the “Recommended Software” entry in Preferences. Who knew.
– This took me longer then it should have as right now, all the documentation online is simply wrong, and a lot of this is not mentioned anywhere.
So we’re running Raspbian, not switching any time soon.
Finally, ready for “Getting Started with Minecraft Pi”!

Reply to Fozi

Avatar

You can offer .zip files to Etcher & PiInager and it will automatically extract and write:

http://downloads.raspberrypi.org/raspios_full_armhf/images

If you start with an older Buster release you just need to full-upgrade to bring it bang up to date:

https://www.raspberrypi.com/documentation/computers/os.html#updating-and-upgrading-raspberry-pi-os

Last but not least all support requests are best posted in the Forum…….

Reply to MW

Avatar

When running the legacy software on a RPI Zero 2 W (headless), I get frequent wifi disconnects. Running Bullseye, I have no disconnects. Same 2.5 A ps on both configs. Is this a known problem?

Reply to Frank Volker

Avatar

In Buster power-save is by default on. I had similar problems with a Pi-Zero-W running headless with a small web server: Frequently unreachable (when the wlan power-save kicked in) and spontaneous reboots.
In Buster wlan power-save was off.
Turn it off in e.g. /etc/rc.local with ‘iw dev wlan0 set power_save off’.
Since doing this no more problems for me.

Reply to Ton van Overbeek

Avatar

First sentence should be “In Bullseye …”

Reply to Ton van Overbeek

Avatar

What do you mean with “currently imaginary”? 😂😂😂

Reply to Gabriel

Avatar

If I want a raspi zero w with Lite OS for a Camera project which would perform better, Buster (Legacy OS) or Bullseye with legacy cam module?

In the article you say: “These camera interfaces are deprecated, and we are not supporting them going forwards”
It means that only this module wont be supported/developed in Bullseye or also not developed/patched anymore even in Buster?

There will be support in the new PiCamera library for the current cam modules (v2, high qc, etc.)? And for the older ones?

Thanks for the good job and hardware! And I hope I would be able to contribute to the project sometime and/or someway!

Reply to BlackberryPhi

Avatar

All Raspberry Pi cameras (including v1) should work fine with the new libcamera library.

Reply to Gordon Hollingworth

Avatar

So, will the Legacy OS run on the Zero 2?

Reply to Geoff Adams

Avatar

Yes, it should run fine on Pi Zero 2

Reply to Gordon Hollingworth

Avatar

Has something changed with this version (Raspberry Pi OS Legacy) on using ssh to access a headless pi on initial install? I need to downgrade my 3B back to buster so I tried the usual install with a blank “ssh” file in /boot and I get “connection refused” when I try to ssh into it.

Reply to Christopher

Avatar

Never mind. I tried twice with the same microSD card, then decided to try a different one. That worked. microSD card musta gone bad.

Reply to Christopher

Avatar

Hi Gordon, Simon, et al,
What a long way you’ve come! The Rpi has been an amazing little piece of work.
I am a small scale industrial user running an expanding network of Pies (60+ and growing); the low cost and flexibility of these little machines makes our project feasible, yet I fear that our usage clashes with the intent of the RPI project – we are using RPI at the core of products whereas the RPI project intends these to be educational tools. As you note, users such as we need stability (and supply!!), which is counter to the educational intent.
Is there, should there be, a separate project for industrial RPI?
Thank you for what you’ve done!

Reply to Andy Huang

Avatar

Agh, my bad, bonehead move. I just noticed the whole page for Industrial.

Reply to Andy Huang

Avatar

I have an old Samsung NC10 laptop which will not boot from USB drive (BIOS checked) but can boot from DVD (original battery still working very well!). I’d love to keep it working. Can you point me to the old OS for laptop which will boot from disk and how to create the disk? (I’ve put the current version on several old laptops via the USB stick – great to keep them working!)

Reply to Tony Goodhew

Avatar

I want to use the 64bit beta version of RaspiOS Bullseye. When the stable version released, i will have to reinstall the OS again? Thanks.

Reply to alphay

Avatar

I have loaded the legacy PI os on my
Hardware : BCM2835
Revision : 000e
Serial : 0000000050e69259
Model : Raspberry Pi Model B Rev 2
seems to work OK except chromium crashes with an illegal instruction. I checked and it says chromium is the latest.
chromium is already the newest version (90.0.4430.212-1~deb10u1).
ideas ?

Reply to Stephen Clark

Avatar

Hey! I want to play minecraft-pi on my respberry pi.
but I cannot
why?
my classmates said they can use.

Reply to Oxygen Tang

Avatar

I think you have deleted it?

Reply to Oxygen Tang

Avatar

> For Debian Buster, support will be available until June 2024.
Yes, and Debian LTS relies on being funded by various organization that needs LTS (https://www.freexian.com/services/debian-lts.html).
For a healthy upstream-downstream relationship, it would be better to think to join if you depend on it. Thanks.

Reply to Hideki Yamane

Avatar

Running an old raspian on a model 2. Default browser hangs system. Is there a release that solves this?

Reply to Chris Meggs

Avatar

” These camera interfaces are deprecated, and we are not supporting them going forwards. ”
Can we get a clarification here – are we talking the old drivers, or will the CSI and DSI port be disabled in future versions of the OS?
For those of us using all the HDMI-to-CSI boards and CSI Cameras for projects such as Raspberry Ninja, Dicaffeine, Octoprint and various webcam apps, not being able to use the hardware for the purposes we bought it for, will be a very large nuisance.
As is, it looks like Bullseye doesn’t support the HDMI-to-CSI boards at all, even with the Legacy Camera switched on in Raspi-Config.

Reply to Stewart F.

Avatar

For anyone confused about the comment of deprecating picamera without any direction forward:
https://www.raspberrypi.com/news/a-preview-release-of-the-picamera2-library/

Reply to John Nosky

Avatar

I have tried many times enabling the leagacy camera option,but after reboot I’m not getting the “cannot display the desktop”.even though I change the resolution of vnc.
I am using raspberrypi 4 .please help me regard which os to download.

Reply to Naresh

Avatar

At first I could not get the “legacy camera stack” to work with a clean install of Raspberry Pi OS (Full) on a Zero(W) first gen with gpu memory=128.

It is pity that the “legacy stack” option does not appear in Preferences/Raspberry Pi Configuration accessed from the desktop either, and must be accessed from the terminal : sudo raspi-config … interfaces
After the reboot, the command “raspistill -o pic.jpg ” gives the messages
“mmal: Cannot read camera info, keeping the defaults for OV5647
mmal: mmal_vc_component_create: failed to create component ‘vc.ril.camera’ (1:ENOMEM)
mmal: mmal_component_create_core: could not create component ‘vc.ril.camera’ (1)
mmal: Failed to create camera component
mmal: main: Failed to create camera component
mmal: Camera is not detected. Please check carefully the camera module is installed correctly”
:adding start_x=1 to /boot/config.txt fixed the raspistill error.

Reply to Mike

Avatar

I download raspberry pi OS full 32 bit released on 2022-04-04 and when I change anything in the interface option I can’t access the raspberry using vnc

Reply to kamel soltani

Leave a Comment