Bookworm — the new version of Raspberry Pi OS
It’s an odd-numbered year, so there is a new major Debian release, and we are now releasing the corresponding version of Raspberry Pi OS.
This year’s Debian release is called Bookworm. (As you probably know, Debian releases are named after characters in Disney/Pixar’s Toy Story franchise, but there have now been so many releases that all the characters you might have heard of have already been used. Bookworm was a minor character in Toy Story 3 — and no, I didn’t remember him either…)

So what is new in Bookworm? Well, not a great deal… and yet pretty much everything. Allow me to explain.
Debian Bookworm itself is mostly made up of incremental updates of the software that was in the previous Debian Bullseye release. There are a few small changes — have a look here for the list — but they mostly won’t affect Raspberry Pi users. So Bookworm itself really hasn’t resulted in many changes.
However, for the last year or so we have been working on some major architectural changes to the Raspberry Pi Desktop, and these are launched for the first time in the Bookworm release. And this is where you might notice some differences.
Wayland
The most important of these is the move to using Wayland rather than X11 as the display system.
For the last 35 years or so, most Unix desktop environments, including the Raspberry Pi Desktop, have been based on the X11 window system. But, as is hardly surprising for a piece of software several decades old, X11 has various limitations when used on modern computers. To address these, most Linux distributions are moving to use Wayland; those which have not already done so are planning to do so in the future.
The primary advantage of Wayland is performance. Under X11, there are two separate applications involved in drawing a window. The display server is used to create windows on the screen and to give applications a place to draw their content; the window manager is used to position windows relative to each other and to decorate windows with title bars and frames. Under a Wayland system, these two functions are combined in a single application, called the compositor, so an application only needs to talk to one thing rather than two in order to get its windows drawn.
This also gives a security advantage. Because under X11 all applications were communicating with the display server, and this communication was two-way, all applications could exchange information with each other. Under Wayland, applications are all isolated from each other at the compositor level, so no application can see what another application is doing.
Wayland itself is just a protocol. In order to use it, you need a compositor which supports Wayland. In the previous release of Raspberry Pi OS, we were using the Mutter window manager, which could function as a Wayland compositor. But this turned out to have been a poor choice; it was relatively slow and cumbersome, and was a little out of date, which is why we only offered Wayland support on an experimental basis under Bullseye.
For Bookworm, we are using a compositor called Wayfire. This uses a standard Wayland library called wlroots, which is used by several modern Wayland compositors. And because Wayfire works a lot better as a Wayland compositor on Raspberry Pi than Mutter did, Wayland is now the default mode of operation for the desktop. (With one caveat — for now, Wayland is only the default on Raspberry Pi 4 and 5. The performance of Wayfire on earlier platforms is still being optimised, so for now they will continue to run the old X11 display server and the Openbox window manager, but at some point these platforms will also be switched to Wayfire.)
If you boot Raspberry Pi OS on a Pi 4 or 5, you will now get a Wayfire desktop. It should look pretty much identical to the desktop you are used to from Bullseye, but appearances are deceptive — it has taken a lot of work to get to the point where the two desktop environments look the same!

There is still a taskbar at the top of the screen that allows you to launch applications and see the status of various systems, but this is a totally new application. Under Bullseye, this was an application called lxpanel
, but this has now been replaced with wf-panel-pi
(short for “wayfire panel for Raspberry Pi”).
This was based on wf-shell
, the example panel application from the authors of Wayfire, but we have extensively modified it to look and work like lxpanel
. The largest part of this work was to port all the existing lxpanel
plugins — the icons which control volume, network, Bluetooth, etc — so that they now all work with wf-panel-pi
.
The desktop background itself is still drawn by the old pcmanfm
file manager which was used under Bullseye, but this has been modified so that it uses Wayland as its display protocol rather than X11, so is now a native Wayland application.
How individual applications work in a Wayland environment depends on how they are written. The standard graphics toolkits, like GTK and Qt, are now Wayland-compliant — they can detect when an application using them is running in a Wayland environment, and they then route all graphics calls over the Wayland protocol, running as native Wayland applications. Most applications preinstalled as part of the Raspberry Pi Desktop use one of these toolkits, and so now run as Wayland applications.
A few applications use a toolkit which is not Wayland-compliant, or bypass a toolkit completely by making direct calls to X11. While it looks as if these applications wouldn’t work on Wayland, there is a fix for that. Our Wayland implementation includes a piece of software called XWayland — this is an X11 display server which sits on top of Wayland. It handles all the non-graphical parts of X itself, and passes any graphical parts to the underlying Wayland implementation. XWayland is designed to launch automatically as soon as an application requests anything from X, so this should all work seamlessly.
So that’s Wayland. Basically, everything you see on the desktop is now being drawn completely differently from the way it was drawn under Bullseye — but if I have done my job right, you shouldn’t notice any significant differences! One thing you might notice is that Wayland allows us to add some nice eye candy; windows now have subtle shadows, and they open and close with animations rather than just appearing and disappearing.
We’ve also added a couple of new plugins. The “Power” plugin is enabled by default, and monitors for power supply problems like low power supply voltage or excess USB current. If either occur, a notification will be displayed to let you know what has happened, and an icon is then shown on the taskbar — clicking this takes you to a web page with more information on the problem and possible fixes.

The other new plugin is “GPU”, which shows a graph of the load on the Raspberry Pi’s GPU, similar to that which the existing CPU plugin showed for the CPU. This is not enabled by default, but can be added by right-clicking the taskbar and choosing “Add/Remove Plugins”.

As mentioned above, work on Wayland/Wayfire is ongoing — we are still optimising for the hardware of earlier models of Raspberry Pi, and hope to be able to roll out the Wayland desktop experience for all models of Raspberry Pi in due course.
PipeWire
So, we’ve changed what is used to draw all the graphics. To go along with that, we’ve also changed what is used to control the sound.
Originally, the desktop used the Linux ALSA sound interface to communicate with audio hardware. This worked, but was pretty primitive and had numerous limitations. A few years ago, we switched to using the PulseAudio interface, which sits on top of the low-level ALSA layer. This added a lot more flexibility: it made it easier to manage things like Bluetooth audio devices, allowed audio from multiple applications to be mixed together, and allowed audio to easily be switched between outputs while playing.
For this release, PulseAudio has been replaced with the newer PipeWire audio system. This builds on the features offered by PulseAudio, most importantly in providing better support for audio accompanying video. It reduces latency, which is important in many applications. It manages Bluetooth audio devices better, remembering which ones were in use at power-down, and automatically reconnecting them at boot. Finally, it is designed to operate better in the more secure Wayland environment, where applications are isolated from each other.
From a user point of view, PipeWire can be controlled with any application which controls PulseAudio, so the volume and microphone controls on the taskbar work exactly as they did under PulseAudio, but under Bookworm, they are talking to PipeWire rather than PulseAudio.

Networking
Graphics and sound are both new then — what else?
During Bullseye, we rolled out the use of the NetworkManager network controller as an option which could be selected in raspi-config. This is now the standard control mechanism for networking in most Linux distributions, and is now the default network controller for Bookworm, replacing the previous system, dhcpcd. NetworkManager does everything dhcpcd did, but adds a bunch of extra functionality, including the ability to connect to hidden wireless networks, to connect to virtual private networks (VPNs), and to use a Raspberry Pi as a wireless hotspot. It also includes a lot more customisation options for those who wish to fiddle with the nitty-gritty of their network connection.
The networking plugin on the taskbar looks almost identical to that which controlled dhcpcd in Bullseye, but now has an “Advanced Options” item at the bottom — this allows you to access the new functionality offered by NetworkManager.

Firefox
One other significant change is that we are now offering a second browser option, with the launch of a Raspberry Pi-optimised version of Mozilla Firefox.

This is the first time we’ve officially supported Firefox — previously, the only version available was an old version from Debian, whereas we’ve now done a lot of work to ensure the best possible experience when running the latest version of Firefox on Raspberry Pi. We’ve worked closely with Mozilla and the Firefox community, and we’re contributing our work upstream to benefit Firefox users on all platforms.
One key feature has been enabling V4L2 codec support so that Firefox can utilise the hardware h.264 decoder on Raspberry Pi. On older models of Raspberry Pi, this significantly improves performance and reduces CPU load when playing back HD video. We’ve enabled support for Widevine DRM, which is used by a number of video streaming services, and have contributed graphical optimisations that improve performance on a range of websites on low-power devices. For video calling we’ve made sure that Firefox on Raspberry Pi OS works out of the box with CSI cameras (using libcamera) and desktop sharing on Wayland.
Documentation
As you’d expect from such sweeping changes, there were huge knock-on effects to our documentation, and the documentation team has been working away behind the scenes making sure that it reflects the new state of the world. This is true especially around things l haven’t even had space to mention here, like the changes to how Python modules are installed.
It’s been a huge effort, with a lot of changes across the entire documentation stack, so if you do stumble across a place where the documentation hasn’t been updated for Bookworm, please raise an issue on the documentation repo!
What’s missing?
With any change as significant as this, it can be difficult to make sure that everything from the old version still works under the new one, and while we have tried very hard to keep such things to a minimum, there are a few features which we haven’t been able to get into this release.
- Compensation for displays which use overscan is tricky under Wayland, and we haven’t quite got it working yet, so this has been removed for now. The vast majority of displays nowadays don’t need it, but we will be putting it back when we have worked out how best to do it!
- The system tray — the area on the taskbar where applications can put their own icons — has to use a completely new mechanism to work with Wayland’s security model. This means that some applications may need to be updated in order for their icons to appear there.
- Similarly, the Wayland security model prevents traditional remote desktop access, and so a new VNC server, called wayvnc, is being used instead of RealVNC. This is a bit more restrictive in terms of the client applications which can connect to it — we have had good results with the TigerVNC client, available here.
- There is also currently a regression with the RealVNC server itself, which is still used in Bookworm on older Raspberry Pi models which don’t yet run Wayland. The 64-bit version works fine, but the 32-bit version is not currently compatible with Bookworm — we are waiting for an update from RealVNC. In the meantime, if you do need remote desktop access on a Raspberry Pi Zero, 1, 2, or 3, we recommend sticking with Bullseye for the time being.
A few programs have been removed from Recommended Software and the full image:
- The SenseHAT Emulator is not at present compatible with Bookworm — this is being worked on now, and we hope to have it back in a few weeks’ time.
- The Magnifier accessibility tool doesn’t work with Wayfire, but Wayfire already has its own (better) magnifier built in — just hit ctrl-alt-M to turn it on and off.
- The BlueJ and Greenfoot Java IDEs are incompatible with Wayland, and Sonic Pi is incompatible with PipeWire — these are third-party programs, so have been removed until their developers have updated them.
Just in case…
All these changes are designed to bring Raspberry Pi OS more into line with what other Linux distributions are doing — many are making, or have already made, the switch to Wayland, PipeWire and NetworkManager. This, then, gives us a good platform for future development, with the reassurance that our desktop is sitting on the same underlying components as most of the rest of the desktop Linux ecosystem.
While we have been using Wayland and PipeWire internally for nearly a year now, the sheer scale of the changes means that, in some specific usage scenarios, one or the other may cause problems. For this reason, the Advanced Settings menu in raspi-config includes options to re-enable the old X11/Openbox display system and PulseAudio. You shouldn’t need to use these, but the option is there just in case!
How to get it
We have always said that for a major version upgrade, you should re-image your SD card and start again with a clean image. In the past, we have suggested procedures for updating an existing image to the new version, but always with the caveat that we do not recommend it, and you do this at your own risk.
This time, because the changes to the underlying architecture are so significant, we are not suggesting any procedure for upgrading a Bullseye image to Bookworm; any attempt to do this will almost certainly end up with a non-booting desktop and data loss. The only way to get Bookworm is either to create an SD card using Raspberry Pi Imager, or to download and flash a Bookworm image from here with your tool of choice.
237 comments
Jump to the comment form
Supra
I have Bullseye. But how do I updated to Bookworm?
Do I have to refresh new image?
dom
Did you read last paragraph of blog post?
Raspberry Pi Staff Ashley Whittaker
🤔
Supra
Yes. I got it working.
Dirk Heinrichs
No, you don’t. This is still Debian, after all. Just follow the instructions for updating Debian from Bullseye to Bookworm.
bensimmo
Well done in getting it working.
Going to be fun unleashing it on the group at college Given we tried today and had problems downloading in PiImager, but we know why now.
Which was sort of a blessing as our instructions wouldn’t have worked :lol:
It does cut out a lot of the patching we had to do to get it to work (newer php etc)
Peter Barlow
Which version of Python is installed by default?
Raspberry Pi Staff Simon Long — post author
3.11.2
Supra
Why not Python 3.12.0rc3?
Raspberry Pi Staff Simon Long — post author
Because that isn’t the version which is released as part of Bookworm.
Alastair Stevens
The package base will be the same as Debian 12, so they are on 3.11 for this cycle. There will be other ways to install Python 3.12 on the system if you really need it, but that’s doubtless a separate tutorial!
Jeff Geerling
If you like to use the system Python for certain things like Ansible, and are confident in your ability to not break Python, you can get around the new nag in Python 3.11 that Bookworm ships with and still install pip3 packages with system Python instead of managing virtual environments: https://www.jeffgeerling.com/blog/2023/how-solve-error-externally-managed-environment-when-installing-pip3
Note that some tools, like the pycoral library for using the Coral TPU, aren’t yet compatible with Python 3.11 and are hard to manage in a virtual environment. I’ve used Docker to encapsulate the Coral Python libraries more easily under Bookworm.
Peter Barlow
I’ll probably install either 3.11.6 or 3.12 in a venv, I think that gets around the externally managed environment feature
Kaya
This is “How to temporarily bypass” not “How to solve”.
Modifying files under /usr/lib/ means they’ll get overwritten with the next update. Better to just adapt to the new ways, they were adopted for a reason.
Jeff Geerling
I’m happy with the old ways, I don’t like treating Python like something different than every other programming language I use—I don’t have to learn how to manage virtual environments for PHP, Java, Ruby, etc., I just use containers if I want to run multiple versions or have special requirements.
Most of the stuff I install via pip is system-wide like ansible, so I’m happy managing the dependencies myself. It’s a tradeoff trying to work in venvs vs system-wide, and I’d rather choose the simpler path.
Sam
I’m not sure where you work, but I certainly need to manage multiple versions of Java (using jenv and sdkman) and Ruby (using rbenv). This is very standard practice for any software company that has enough applications running under different SDK versions that you need to switch between them seamlessly.
Tom Simonsen
I find using venv a pain in the behind, but pienv is much nicer to work with. I use java and node.js at work, and I think that using pipenv is python way of working with maven or npm.
fixjunk
@jeff, I just recently learned about pipx https://pypa.github.io/pipx/
which is a neat way to get around the whole venv situation but still have isolated environments. I ran into it when installing the backup tool borgmatic. There are some hiccups with super user but once addressed, it all just works like any other command line executable.
Peter Barlow
This way they install under /usr/local/bin etc, so I don’t understand your comments
Kaya
I’m referring to the tip linked in the comment I replied to, which suggests deleting a file to bypass the new restriction.
Raspberry Pi Staff Alasdair Allan
To try and minimise confusion, we’ve customised the error message you get when you use pip the “normal” way, and it points you at https://rptl.io/venv which should hopefully help folks out that are confused about what’s going on.
Supra
@Jeff Geerling. Can I installed Python 3.12.0rc3?
luiz
My biggest issue with the Chromium port is that it cannot keep up with upstream and its security updates, thus leaving Raspberry Pi OS users open to major security vulnerabilities.
For that reason I’ve been using the firefox-esr package from Debian. Although older, it is still an extended support release, which means no major security holes.
Will the new Firefox port follow the same strategy used in the Chromium port – a set o patches applied to upstream – or will it come from upstream directly?
Raspberry Pi Staff Gordon Hollingworth
The advantage of Firefox is that the upstream maintainers are actually interested in our patches so we don’t have to keep doing everything downstream!
In general, we’ve been able to release packages the same day as they’ve been released by Firefox.
James W Williams
In the 64-bit version, are the userland binaries still 32-bit or is it a full 64-bit OS now?
James Hughes
Full 64 bit.
MW
The 64bit Bullseye release was always 64bit kernel and userland and based of Debain.
The 32bit Bullseye release was always 32bit userland and a choice of either 32bit or 64bit kernel, and defaulted to 64bit kernel on models with ARMv8 SoC, and based of Raspbian.
James W Williams
Thanks for clarifying. I somehow missed that Bullseye 64-bit was a full kernel+userland 64-bit system.
MW
Under the impression that the Raspberry Pi 5 only supported 64bit Raspberry Pi OS ??
A Stevens
I don’t recall seeing any mention of that! But I can’t see why, since the chip is still an ARMv8, which will support both 64-bit and 32-bit. I’ll have to wait for my Pi5 arrival to confirm, but I’m sure the experts can give you a definitive answer :)
Raspberry Pi Staff PhilE
It’s not a matter of can’t, but rather won’t (although the A76’s can’t run a 32-bit kernel) – you won’t get the best out of Pi 5 on a 32-bit OS.
dom
Pi5 can only run a 64-bit kernel. It can run a 32-bit or 64-bit OS from that kernel.
Raspberry Pi Staff Alasdair Allan
Nope. Raspberry Pi 5 will happily run the OS with a 32-bit userland. But you’ll miss out on 16KB pagesize’ing, so things will run slower. We’d certainly recommend folks install “full fat” 64-bit Raspberry Pi OS on when they get their hands on a Pi 5.
Alastair Stevens
Thanks – that’s useful to know. I’ll stick with 32-bit on my collection Pi 4’s (they are all 2GB/4GB), and I’ll grab the 64-bit version ready for the Pi 5, on order!
Chivar Pilones
i just installed latest release from rpi-imager.. having problem with vnc server via raspi-config
Raspberry Pi Staff Simon Long — post author
Did you read the bit about RealVNC server not working at present on 32-bit images?
Chivar Pilones
uh i missed that
” 64-bit version works fine”
Pavel Grund
Are there any plans to make RealVNC work? Sadly it is a little dealbreaker for me, as I use it a lot, on multiple computers.
Raspberry Pi Staff Simon Long — post author
RealVNC is not going to support Wayland, but wayvnc should do most of what people require.
RealVNC is currently broken on X for 32-bit installations only – that is being worked on at the moment.
jambalaya
Regarding “RealVNC is currently broken on X for 32-bit installations only”, I found a workaround. The RealVNC server was complaining about missing “libmmal.so”, and after googling for a fix the workaround was to “sudo rpi-update”, which updated /opt/vc/lib. After a reboot the RealVNC server icon appeared in the taskbar and all appears to be working on a Pi 2b. As others have mentioned this release on Bookworm has gone very smoothly overall – great work.
op00
Whenever Pi 4 is mentioned, can I assume it applies to the Pi 400 too?
Raspberry Pi Staff Simon Long — post author
Yes.
A Stevens
Exciting times – we’ve certainly been waiting for this! I’ve just done the first test installation on a Pi4 4GB, and it certainly looks great and feels snappier. I’m glad I read the note about the SenseHAT Emulator though; we use this in our Code Club (since we only have one real HAT – mine!), so I may have to hold on the upgrade for a bit. Meanwhile, I’m just waiting for my magic pre-ordered Pi5 to arrive. Thanks for the amazing work on Bookworm, which definitely moves the game forward….
Javier Goldman
It’s already out? Nice!
any recommendation on a guide for how to backup any changes i have made to apply after updating?
Richard
Why is the 32bit version still the recommended version – is there any reason not to install the 64bit version on an Pi4?
Raspberry Pi Staff Simon Long — post author
Not at all; we recommend the 64 bit version on the higher-powered platforms, and that includes Pi 4.
Raspberry Pi Staff Alasdair Allan
In the future we’re going to be a bit more fine-grained about how we recommend an OS version to you, but for now the 32-bit version of Raspberry Pi OS — which actually has a 64-bit kernel and a 32-bit userland — runs on all of our released hardware so it’s the recommended release.
Raspberry Pi Staff Gordon Hollingworth
The Imager application doesn’t currently have the ability to ‘recommend an image by destination’. That is being worked on at the moment and will go live soon allowing us (and other image providers) to customise the list based on the device you’re trying to use.
MW
Thank you for this forthcoming long overdue feature, general everyday users should be encourage to use 64bit OS on the BCM2711 / 12 models.
Karsten Johansson
Does the new Network Manager allow for static IP addressing?
This is important for me, because I use pihole, but my ISP doesn’t allow their customers to use their own DNS if they use DHCP.
Raspberry Pi Staff Simon Long — post author
Yes, it does. NetworkManager allows you to do pretty much anything in terms of network configuration!
Alastair Stevens
Excellent – setting a static IP on the Pi was always a bit clunky before; so I’m glad it will be easier now. Of course, I’ve now spent time trying to understand netplan on Ubuntu, who also like to go their own way on these things, and deviate quite far from Debian. So there’s still plenty of scope for confusion in a mixed environment! But that’s not Debian or RPi’s fault :)
Sreejith S
Is it recommended for Pi Zero 2 W ?
Will it help anyway the Pi Zero 2W in using the web-browsers ?
Raspberry Pi Staff Simon Long — post author
Zero 2 W doesn’t really have enough power for a good experience with web browsers – Bookworm is unlikely to make this better over previous versions of the OS.
Trunks
I’ve installed the 64bit version onto a 4GB raspberry Pi4B. I read the notice about VNC server which is a major pain as I mainly use this method to connect to my pis. I can get it working with TigerVNC by turning on the vnc option under raspberry pi configuration, however as soon as I disconnect HDMI this setting turns off and my vnc disconnects. With Bullseye you could run WNV headless, but with Bookworm something is buggy in terms of keeping the setting alive if you disconnect HDMI.
Trunks
Typo, it’s meant to say “with Bullseye you could run VNC headless”
Trunks
Worked around the issue by switching my pi4 to using x11 instead if weyland in raspi-config. It was only way to get VNC working headless for me.
Steven
Is there a plan / timescale to update the Raspberry Pi Desktop (i.e. the one that runs on PCs) to Bookworm? I realise the push is to support the new RPI5’s but we are still rocking RPI3’s at our code club (due to supply + funds) and have just been given some old laptops: I’d hold off setting them up with Bullseye if a newer update is forthcoming.
Raspberry Pi Staff Simon Long — post author
Yes, we do plan to do it, but I don’t have a timescale as yet, I’m afraid.
Anton
Please, are there any plans for omxplayer to work again or to have a replacement for it? For me, it was really useful that one could control a video player via Python, omxplayer was working just fine and it was simple and lightweight. (Sadly for me, VLC quite different kind of beast.)
James Hughes
No, the underlying code that OMXPlayer uses is no longer present so it can never work. VLC/gstreamer/V4L2 are the standard Linux applications to replace it.
Ken Thompson
MPV video player can be controlled by Python much better than VLC can. It can also display borderless windows. At least it could on Bullseye, hopefully Bookworm will not break embedded video again
Anton
And thank you for the hard work!
PS: The download links for “Raspberry Pi OS (64-bit)” [1] have some weird query string in them, such as “?gl=_1*…”, perhaps you copy-pasted there something.
[1 ]https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit
luiz
What about rounded corners? Shadows without them look weird.
Raspberry Pi Staff Simon Long — post author
We deliberately removed rounded corners, because we thought the opposite – that rounded corners with shadows looked more weird…
Peter Jones
Thanks for the update. Great news. Are you still using LXDE? Is there any chance of something a bit more ‘sexy’? (Especially with the extra power that the Pi5 offers). Thanks
Raspberry Pi Staff Simon Long — post author
As the blog post explains, we are now using a completely different window manager and panel from LXDE. We are still using the pcmanfm file manager.
As for there being more power – people using more power on rather pointless graphical tweaks is why a modern PC running Windows 10 isn’t really any faster to use than one running XP was 20 years ago! We will continue to run a lightweight DE, because it means users get a faster, smoother experience in exchange for the more powerful CPUs – plus bear in mind that backwards-compatibility is important to us, which is why the same OS image can still be booted on an original Pi 1. (And we still have a few nice graphic tweaks anyway, like window shadows and some nice animations…)
Peter Jones
Thanks Simon,
I appreciate the need for backward compatibility, but visual appearance is important too (I don’t mean pointless gimmicks, but a more modern appealing look). I shall be using Ubuntu (which works great on the Pi4). I do appreciate I’m in the minority though. Thanks again for your work on the continuing development.
Zuntz
A pleasant environment helps. In my opinion, the current look is somewhat Spartan. A compromise could be reached between aesthetic improvements and performance. Or at least let the user choose.”
InterestedIndividual
I’m not advocating you change the DE but just to note that I have been very satisfied running kde on a pi4 with no frustrations. The pi is awesome!
Marcello Pisanu
So it’s still based on LXDE or would you say it is a completly new desktop environment? In the past you have named your desktop environment Pixel. Is that still the case here? Is there a separate development branch for this and will Pixel also be offered for other distributions in the future?
James
I’m going to be trying it soon anyway, but I thought I’d ask – are there any increases in system resource usage with this release? Just thinking of our friends with Pi 3 or 1GB Pi 4’s (or those mad lads running a desktop on 512 MB models..).
Raspberry Pi Staff Gordon Hollingworth
In total about 10MB extra memory usage, so not bad…
James
Not bad at all. Thanks Gordon, and congrats on getting this out the door.
Raspberry Pi Staff Gordon Hollingworth
It’s a massive combined effort from the whole software team, plus a lot of testing from the alpha and beta teams all of which have been working hard to get this over the line.
It’s not perfect, but we’ll get there in the end!
Alastair Stevens
Ah, the good old days. Win 95/98 used to run fine on a 64MB machine, and after switching to Linux circa 2002, those early Red Hat desktops were perfectly happy in 256MB. We forget just how horrifically bloated modern desktops are, even the “light” ones. Now, in the office, all our laptops running Ubuntu 22/23x seem to struggle with 8GB, so we now buy 16GB as the minimum! At least hardware is cheap.
Justin Michael Vieira
Really, really, really poor form to disable an install path, like this, without any forewarning. This will definitely break many existing install scripts, many of which will be part of larger packages, and therefore difficult to debug.
The proper way to do something like this is to announce the intention to do it well ahead of time, so that developers that rely on your system can make the necessary changes (in this case, seemingly to install pipx and have it do its job) instead of doing it without warning and frustrating devs who then have to deal with installer failure reports from customers/end users.
This is a “dev process maturity” thing. I understand the raspberry pi core dev team may not consider themselves “there” yet, where this is necessary, however doing deployments for decades has informed my opinion that this should be standard practice for *any* dev team.
Justin Michael Vieira
In case it wasn’t clear, my comment is specifically about the disabling of installing to the system python installation.
MW
I was under the impression that the issues regards PiP install was a decision made by the Python Developers ?
Shoe
Yep, if you follow the link in the blog to the relevant docs section it says:
” From Bookworm onwards packages installed via pip must be installed into a Python Virtal Environment using venv. This has been introduced by the Python community not Raspberry Pi, see PEP 668 for more details “
MW
Yes quite so, but Viera appears to be blaming RPL, hence my response, which was over polite.
Justin Michael Vieira
No; As I stated in my reply to Shoe, PEP 668 provides the *mechanism* to block installs to the system python installation. It is up to the developers discretion whether (and, more relevantly, when) to use it.
Justin Michael Vieira
Sure, many will say “this is now the recommended behavior”, which is true according to PEP 668.
However, PEP 668 also clearly says that it’s recommended *unless there is a reason not to adopt* these recommendations. In my experience, giving at least *some* forward notice that existing scripts will be broken, and you know about it, is *always* a good reason to delay adoption of this type of (optional, at your discretion) recommendation.
Justin Michael Vieira
That’s absolutely not true. PEP 668 provides the *mechanism* to block install to system Python. It is at the developers descretion, whether or not to use it.
Raspberry Pi Staff Alasdair Allan
Raspberry Pi OS is based on Debian upstream. Debian implemented this in their release, we have followed suit.
Supra
How do I get 12 hrs mode instead 24 hr mode?
DistroEx
Right-click on the clock, Configure Plugin…
Change the %H to %I
Supra
@DistroEx
It worked. Thank u very much.
Stavros
Guys nooo not sense hat emulator… A FEW WEEKS?! Just release a new package with my PR fix in there….
Supra
One last question. Does it shipped with OpenCV 4.8.0.xx?
Vaticinator
No, you need to install it manually from apt or pip.
Austin Prunty
This is exciting for desktop users. Moving to networkmanager exclusively was a good move, I’ve had to use my Pi4 as a hotspot a lot when I lived at college.
v
Configuring wifi for a headless/hands-off installation by dropping wpa_supplicant.conf into the boot partition before firstboot no longer works. This has been around since at least 2016. What is the new mechanism ?
Secondly – there needs to be some kind of ‘breaking changes’ document mentioning things that we can easily download from the image directory rather than battling through blogs and continuously changing online docs. Stick a simple txt file with the images please. This one certainly should have been mentioned prominently.
Eugene Crosser
One of my pi’s is a zero w hot-glued in an audiospeaker box at my bed side, acting as an alarm clock and internet radio.
Another is a 4 that lives in a datacentre of a “pi hosting” provider in a different country from where I live.
I feel compelled to say that this:
> The only way to get Bookworm is either to create an SD card
does not go too well with me…
Raspberry Pi Staff Simon Long — post author
It is unavoidable. The architectural changes we have made – basically the entire desktop backend is new – are so significant that an upgrade is extremely unlikely to work. The alternative would have been to stick with X11, PulseAudio and dhcpcd for ever – progress usually has a cost.
If flashing a new image is that impractical, then just stick with bullseye. Upgrades aren’t compulsory, and we maintain security patches for legacy versions anyway. It doesn’t sound as if a new desktop environment is really going to be that useful for your alarm clock…
v
I might add that I tried rpi-imager from an ubuntu box and it failed several times with network timeouts and ssl errors.
Downloading the image manually to a Mac mini, decompressing it, and using BalenaEtcher did burn the SD ok, but of course the wpa_supplicant.conf feature is not present any more so I couldn’t do a hands-off autoconfiguration. Fortunately I had a keyboard/monitor and HDMI dongle to use to manually set it up (ugh).
Eugene Crosser
OK, live-upgrade of a headless system on _wired Ethernet_ connection is relatively straightforward. All you need to do before the usual procedure is add a line to /etc/fstab to bind-mount /boot on /boot/firmware. (Yes, it is possible to bind-mount a directory inside itself, and the world does not end in infinite recursion.) After successful upgrade and reboot you can change the line that mounts the vfat partition to /boot/firmware and remove the bind-mount line.
Situation is worse if the system is connected over wifi. NetworkManager runs wpa_supplicant with configuration file that it constructs from its own configuration, the the previous wpa_supplicant config is not taken into effect. The worst part is that wpa_supplicant is restarted during upgrade, there is not even a time window to update the configuration before reboot. It _may_ be possible to pre-construct configuration for network manager and put it in place _before_ running upgrade, but I did not, and had then had to unscrew my alarm clock and connect keyboard and monitor…
Joe
Does it have the XFCE4 DE in the apt repositories? That’s my favorite DE.
Raspberry Pi Staff Simon Long — post author
RPiOS is Debian. If XFCE is in the Debian repos, then yes, it will be available in RPiOS.
Although that then makes me wonder why we actually bother improving our own DE if the first thing you want to do is replace it anyway…
Joe
Wait, the new Wayland improvements don’t work with just any old DE? Oh well, I’ll manage. Thanks! (I do like the new tweaks.)
Raspberry Pi Staff Simon Long — post author
No, the Wayland changes are all built into the compositing window manager, so if your chosen DE does not use a Wayland-compatible WM, you won’t get Wayland on it.
John
Huh? Why? That’s easy: because you guys are awesome. That’s why. Same reason I laugh when I see another “Raspberry Pi killer” headline. Might be faster. Might have cool feature X. It won’t have the tremendous community developed and nurtured by everyone working for the common goal to make programming and education more accessible. Someone wants to run another DE? Great. They can. I had a Commodore vic-20 and a 64. Loved it because the UI made it simple to use. That’s you now. You make the pi simple to use so the new generation of me-s can pick up a pi and just use it. And that is just cool. I should be so lucky to work for such a great cause. Seriously. I am jealous.
Pete Cockerell
Hear hear!
Anders
Pete Cockerell!!!
You still in Mountain View??
Lorem
The work you constantly perform on the Raspberry Pi OS software is always highly appreciated by the community. I was eagerly awaiting this update and was very curious to discover its evolution. You are making LXDE, a very light desktop environment, also appreciable from a graphic and functional point of view by updating it to today’s times.
Paul
Regarding XFCE4, I installed it on Bookworm yesterday – however the current version (4.18) isn’t fully compatible with wayland so your’e probably best to revert to using X11 until there’s a 100% wayland version available (4.20 I believe).
Joe
Also, did you say WideVine is working on 64-bit? That’s great! It’s the only thing keeping me on 32-bit right now.
MW
You must have missed this announcement:
https://forums.raspberrypi.com/viewtopic.php?p=2106413
mlazzlo
Where did you see widevine 64 bits was supported ?
mlazzlo
I confirm widevine 64 bits works.
Especially on Kodi
max
Does this work better with the official 7″ touchscreen?
glabifrons
I’m wondering if it works with *any* touchscreen.
I’ve one or two 5″, several 4.3″, and many 3.5″ touchscreens from many manufacturers, and they’re always a pain to set up (each driver chip has its own weird quirks with its own opaque overlay file), especially since ~90% of the documentation refers to a deprecated configuration method from a very long time ago (at least two major OS versions back, long before they changed the name from Raspbian). Now even that remaining ~10% is outdated.
It looks like the KlipperScreen devs are working on adding Wayland support (I see a commit from the end of August that references it… “do not run xset, wayland needs another solution”).
Laurent
Congratulations for this great upgrade!
You brought me back in 2013 with your first Wayland demo: https://www.raspberrypi.com/news/wayland-preview/
(unfortunately the video is no more available)
Gustafla
Wow, “The HVS is a very powerful piece of hardware, with a scaling throughput of 500 megapixels per second and blending throughput of 1 gigapixel per second. It runs independently of the OpenGL ES hardware, so we can continue to render 3d graphics at the full, very fast rate, even while compositing.”
I remember this. Really wish that would have worked out back then! Running Wayland compositors on the VideoCore GPU via OpenGL on the Pi 4 takes so much GPU resources away from the applications, it’s not very usable for me. I hope the Pi 5 is a smoother experience.
Laundry Day
H264 hardware decoding never worked properly for me on Bullseye VLC – only H265 did. Any news on this issue with Bookworm VLC? The Debian knowledge base states that VA-API on VLC is disabled.
I run Pi4Bs as standalone video loopers and have to rely on Buster / OMXPlayer for H264 1080p files.
Laundry Day
Just installed a fresh Bookworm 64-bit image to test out VLC. A 4K 30fps HEVC video hits 90% GPU usage on Task Manager and plays buttery smooth (Bookworm VLC, both windowed and full screen, Pi 4B 8GB). A 1080p 30fps H264 version of that same video hits 61% GPU usage and stutters badly on playback. Both files play back fine on Windows VLC.
Elwood Downey
fresh install of default 32 bit version on pi4 very fast HP SSD on USB3. Crashes often and super slow. Started firefox, takes 1-2 seconds to echo each character typed in the search bar. Warning: Not ready for prime time yet.
MW
Why are not running a clean install of the 64bit ARM64 release based of Debian Bookworm ??
Elwood Downey
Update: top showed I was using all of memory. Added 10 GB swapfile and now at least the system is useable. So this release is using MUCH more memory than bullseye.
Raspberry Pi Staff Alasdair Allan
There is in total about 10MB extra memory usage. That’s it.
Linn Crowser
When I run sudo pcmanfm in a terminal I get Segmentation fault. On all previous versions this worked I tried sudo mousepad and it worked
Raspberry Pi Staff Simon Long — post author
Running the file manager as sudo isn’t supported under Wayland. In general, running any graphical application as root is very heavily discouraged under Wayland, as it has the potential to break Wayland’s security model.
Mastiff
It doesn’t work under X11 either, I just found out that my Pi 3B+ that I tried to set up with Bookworm had a memory segment error when running pcmanfm sudo. And I don’t give a flying rat’s ass about security, all my Pi’s are behind pfSense firewalls with very restrictive setting, the only way to get to them is via the ports reserved for Home Assistant (which are of course non standard ports). Does this mean that there’s no way to use a real file manager sudo?
Ian
Not being able to handle overscan is going to affect a LOT of people using TVs as their display, isn’t it?
Raspberry Pi Staff Simon Long — post author
Mostly it will only affect people using very old TVs. Overscan was a concept from the days of CRTs. Some early LCD TVs used it just to maintain compatibility with CRTs, but it has died out almost completely – I don’t think a TV from a reputable manufacturer in the last decade will require overscan compensation.
Michael Kofler
Mathematica on Pi 5 requires a licence key to activiate. Is this expected? (On Pi 400, it works without.)
Raspberry Pi Staff Simon Long — post author
Yes, we’re waiting for an update for that from Wolfram.
Stuart
There is no mention of headless release. As this does not contain the major desktop changes then is upgrade a reasonable risk? It’s no problem on amd64 servers so the future of continuing to use RPi arm64 servers does depend on the answer. Upgradeability is a core Debian feature.
MW
It would appear that the download page does have LITE images:
https://www.raspberrypi.com/software/operating-systems
Stuart
Yes – but that was not the question. Can you update to this release from 64 bit Bullseye Lite? Re-imaging is not an option in my case.
Raspberry Pi Staff Simon Long — post author
We’ve never tried it.
In theory, because the lite image does not have any of the desktop components, this ought to be a straightforward Debian version upgrade, so ought to work fine; you do not have any of the major architectural changes described in this post. But you do it at your own risk – as above, it isn’t something we have tried, so I cannot give you a definitive answer.
The lite image does, I believe, use NetworkManager, but it was possible to switch to that in raspi-config in the bullseye release – that is probably worth trying before you do anything else!
Stuart
Thank you for your helpful reply. Network Manager is not offered as an option on the servers I updated from Buster but is present on those installed at Bullseye. So I guess I will have to install network manager on the former. Also I do use RPI Lite installations with added KDE desktop – works quite well. So I guess the same provisos apply there. I think I’ll wait for a braver person to experiment. But feasibility is a great step forward.
Raspberry Pi Staff Alasdair Allan
There are other major changes beyond Wayland, for instance, the move to Network Manager. I really wouldn’t recommend trying an upgrade in place.
David Earl
As an experiment (and because it would mean lots of downtime if I had to start over – especially on Mythic Beasts’ Pi servers, of which I run several) I tried an upgrade on a system installed relatively recently from lite bullseye, a Pi4 4GB server which primarily runs Apache, PHP FPM, Elasticsearch, Exim4, Samba, and uses nftables and ethernet (not WiFi). I’d already done a very similar VirtualBox Intel upgrade, so I was confident about all the non-platform-related issues.
Everything went very smoothly, no problems reported with the upgrade, and as far as I can tell everything is working as expected.
Milliways
It is possibly to update Lite. I did some months ago to test my code but then I used a fresh Bullseye as base. I really don’t understand the reluctance to do a fresh install. Even on a full desktop installation it only takes a couple of hours at most to fully configure – and then you don’t need to debug any problems with incompatible apps.
JumpZero
Waouhhhh.
Nice. so many changes, I’m going to try that today on my 400.
How long Bullseye will be maintain (my home NAS runs it, and updating to Bookworm doesn’t seem to be an option)?
Thanks for that update
MW
Raspberry Pi OS Legacy is supported for approx 2 years, https://www.raspberrypi.com/software/operating-systems
MW
Legacy is the previous release supported until the next Raspberry Pi OS release. Therefore when Trixie is released in 2025, Bookworm will become Legacy.
JumpZero
OK Thanks,
So I have 2 years to move my Bullseye lite server to Bookworm. Should be ok
MW
Whilst I appreciate this question has been partially answered in various posts, can it be confirmed that Raspberry Pi 5 only supports a 64bit kernel, but userland can be either 32bit or 64bit ?
Raspberry Pi Staff Gordon Hollingworth
That’s correct, the A76 processor will only support 32bit instructions in unprivileged execution levels. So the kernel has to be 64bit, but userland can be either…
Codrut
Kodi 20 audio passthrough mode will not work with Pipewire (at first Pulseaudio will be detected as output, allowing some settings, but after Kodi restarts, Pipewire will be detected as output – some service start delay, probably – and no more passthrough!). Also, video acceleration works (using drm_prime), but no HDR (worked in bullseye/kodi19); in Bullseye VLC both acceleration and HDR worked with drm output module (with inherent fullscreen menu problems), in Bookworm not.
Caldimerda
On Bookworm 64-bit, the wayvnc process appears to terminate when the screen is removed (in this case via an HDMI switch) . If the pi boots without a screen then wayvnc stays running.
Caldimerda
Aha. The solution seems to be to identify your HDMI screen resolution, set the headless resolution to be the same and then wayvnc continues to run whether there is an attached screen or not.
Duane Moody
Since dist-upgrade isn’t recommended and reimagining is preferred, what’s the best strategy for migrating applications, libraries, configurations and data? In my case the Pi 4 is a webserver with its own no-ip address and SSL cert (with our home router doing the necessary port forwarding), fileserver, SMB config, VNC (yes, I read that 32-bit isn’t working right now), etc. and any number of libraries/scripts I’ve added over the years.
Is there a step by step blog/forum post outlining the procedure? Assume I have a separate SD card for installing Bookworm. And would this be the same procedure for migrating from 32-bit to 64-bit?
What’s replaced LXDE?
Again, thanks for the news.
Raspberry Pi Staff Simon Long — post author
“Since dist-upgrade isn’t recommended and reimagining is preferred, what’s the best strategy for migrating applications, libraries, configurations and data?”
There’s no way we can offer any but the very vaguest advice on that – we have millions of users, and they will all have done different things to their systems. In general, use apt to reinstall any applications on the new system, and then copy your home directory across.
“What’s replaced LXDE?”
LXDE is an assembly of various components, the main ones being the openbox window manager, the lxpanel panel and the pcmanfm file manager and desktop. Openbox has been replaced with wayfire; lxpanel has been replaced with wf-panel-pi, and pcmanfm is still used, but modified to work with a Wayland backend.
Duane Moody
One of the things I wouldn’t mind seeing in package managers like apt is a datestamped log of my activities where each line mentioning an installed/uninstalled/updated/etc. package has a greppable flag indicating whether it was a user-specified package or a dependency. I assume all the graphical PM frontends found in debian-based distros are just GUIs for apt, so using them would in theory also trigger this logging behavior. Following *nix log conventions, the log would be split and gzipped over time to save space but retained. This would allow forensics when something goes sideways, but also be usable to reconstruct an install on another system where imaging isn’t prudent or possible.
Steve
I like this idea of a datestamped / timestamped log of installed packages. Though there are also manual changes made to config files and probably content and other things downloaded and placed in various folders either in the user home folder or other places. Since Linux can be installed and configured in so many ways even in one distro like Raspberry Pi OS, it would be really hard to make something that doesn’t miss anything.
A idea that might be a bit over the top and probably not great in other ways. Have another local server as a local only custom APT repository and built anything you want to configure or install on a system into a package that can be installed that way. This is assuming a log could be created for apt installed packages. Though it adds some overhead to systems.
Something I really want to get into and I am sure a Pi5 will be fine for a few is containers on something like Docker. Then the Dockerfiles become the instructions for a rebuild and only a minimal install and copying of data folders might be needed on the physical Pi.
Jon
Has Buster (for OMXPlayer hardware assisted H264 decoding) gone? I can no longer find it in https://www.raspberrypi.com/software/operating-system (or have I just missed it somehow)?
MW
OMXPlayer is totally obsoleted..
Jon
Yes OMXPlayer is obsolete, but it permits a Pi Zero to play 1080p H264 videos without problems. Perfect for a video looper: https://learn.adafruit.com/raspberry-pi-video-looper/omxplayer
Laundry Day
Yes, I’m still waiting for some sort of reply to a query about problematic VLC H264 playback on Bullseye and Bookworm. I’m also relying on Buster / OMXPlayer Video Looper and waiting for an updated version or alternative for these newer OS versions.
tovli
Where can folks get the former (Buster) Legacy 32-bit PiOS?
MW
https://www.raspberrypi.com/software/operating-systems under the required variant click on the Archive link
MW
…actually
https://downloads.raspberrypi.com
Jon
This may be unofficial – but looking at the URLs on the download page implies it (buster) may be still hanging around:
See: https://downloads.raspberrypi.com/raspios_oldstable_armhf/images/raspios_oldstable_armhf-2023-05-03/
MW
The web site I linked to has an archive of all released Operating Systems from the very beginning, though anything older than Debain Bullseye / Raspbian Bullseye based is no longer updated or supported.
Rudi
Nice!!! Want to autohide the taskbar like in Bullseye?
cat >> /home/$USER/.config/wf-panel-pi.ini << EOL
# automatically hide when pointer isn't over the panel
autohide=true
# The minimal size of the panel. Note that some widgets might force panel bigger than this size.
# All widgets also have individual settings for size
# Changing this requires a panel restart
minimal_height=45
# time in milliseconds to wait before hiding
autohide_duration=300
EOL
Raspberry Pi Staff Simon Long — post author
I wouldn’t necessarily assume that everything in the original wf-shell panel settings still works in ours! Autohide probably will, but we do not have individual size settings for widgets, for example.
Dean Oakley
Hi thanks for the new Bookworm info and this Blog. This is my first transition to a new version. I’ll image Bookworm on a fresh SanDisk of my Pi 4 4GB. However, I have a lot of Packages installed on my current version of buster. Is there a best practice for installing all the Packages that are on buster to Bookworm? Also, will use this best practice for my new Pi 5 when it arrives. Thanks for the help in advance. I’m still learning…
Radek
I love Raspberry Pi, ARM and Linux. I tested it briefly with the new Raspbian Bookworm. In WAYLAND mode, I am missing the ability to right-click on the title of the window to equip the menu. This option was also missing in Mutter.
It is not possible to place the panel on the sides of the screen – only on the top and bottom, and it is not possible to adjust it further.
Is it possible that in the future these functionalities would be added to the desktop environment?
For now I’m using Bullseye with LXQT GUI. But I’d rather use Raspbian’s native GUI.
Ferrillo raffaele
I installed this latest Bookworm version but it happens that on a Pi 3+ it works but only if I remove the SD card otherwise I get a black screen.
On a pi 4 I get a black screen all the time, no matter what. Is it possible to get a little help to solve the problem. Thank you
Matej
Can you also include / work on setting up resolutions for custom display modules? Ones that use odd resolutions like 800×480, 400×320, 1024×600 etc… Setting it up from config.txt was PITA and not always worked…
Nikolas
I fully understand that those who are using OS as desktop should stick with the clean installation in order to avoid problems. But what about us who are using the OS headless as server. We should be able to upgrade to bookworm without further implications. As we did with bullseye.
MW
Network Manager is one such major change in Bookworm…
Raspberry Pi Staff Gordon Hollingworth
Probably best to begin by backing up your image, then try and see whether it’s OK… As noted the change from dhcpcd to Network Manager means any network settings may have to be redone, but there’s isn’t a lot that should affect the update otherwise….
Andrew Buckley
The Bookworm was a character in the BBC kids show “Wilo the Wisp” from back in 1981
Raspberry Pi Staff Simon Long — post author
Different bookworm!
Alan
On Bookworm, the Drop-down menu selection only works with 1 of the 2 usual methods. That is Click-Release-Move-Click-Release works, however Click-Hold-Move-Release doesn’t. Wouldn’t think this is an intended change?
Raspberry Pi Staff Simon Long — post author
Sadly, menu handling in Wayland is a bit…unconventional. (For which read “broken”…) In order to get around this, menus largely activate on the release rather than the press, so click-hold will probably not actually open the menu.
As and when Wayland menu handling is fixed, I can probably change this back, but for now, it’s a necessary evil, I am afraid.
Alan
Hope it gets fixed how it should be with both ways possible. It’s working on some applications though not most others.
John Bainbridge
Any chance of a dark theme for those of us who have been staring at screens too long?
The Appearance settings don’t seem to work when I try to set to Adwaita Dark.
Raspberry Pi Staff Simon Long — post author
Writing a dark theme is a surprisingly large amount of work. At some point, when I have a large chunk of free time, I intend to create one, but I cannot say that I am going to have that amount of free time at any point in the near future…
John Bainbridge
Where are the colours being set? Can I hack it for the time being?
After a morning of playing around with Bookworm, I had a headache with the default theme. Not criticising your work, it’s an age thing, I can’t take bright displays anymore.
Also wondering if multiple desktops are a casualty of Wayland? I can’t see any way to add them now. Openbox configuration manager doesn’t start.
Raspberry Pi Staff Simon Long — post author
The themes are all in /usr/share/themes – ours is called PiXflat. Most of the colours you see on the screen are from the GTK 3 theme, which is in /usr/share/themes/PiXflat/gtk-3/ – the files in there are all text and can be hacked about with any editor of your choice.
We have never supported multiple desktops – they happened to be in LXDE, and I never took them out, but we didn’t maintain them. In a world where monitor real-estate is now very cheap, and where we support multiple displays, they are a bit of an anachronism. Mutter never offered them, and wayfire has only just added support for them in a very recent update. Openbox is no longer used under Wayland, so the configuration manager wouldn’t do anything anyway.
John Bainbridge
Thanks for pointing that out.
It seems that there is already a dark theme defined. Simply changing the contents of /usr/share/themes/PiXflat/gtk-3.0/gtk.css to:
@import url(“gtk-contained-dark.css”);
and then rebooting gets you a usable dark theme.
Dave Joubert
The monitor real-estate situation is not true for those of us that work on laptops or that work with multiple machines at the same time (via VNC). In those situations a desktop pager is really critical. Is there any way that I can follow the progress of the desktop page under Wayfire? Or install it experimentally? Is there any timeline on when (if) the Pi foundation will bring a pager back to us?
Steve
Thank you to everyone involved in getting Raspberry Pi to this and hopefully continues to do really well.
I finally got the standard bookworm image installed on my Pi400 to try it out quickly, very early use but it runs up fine.
I was really pleased to find that wayfire has a way to do window snapping (ctrl+alt+ arrow keys e.g. ctrl+alt+left) that I use all the time stuck on Windows for my day job. That is a feature I have missed for a long time on Raspberry Pi OS and the standard image, at least I’m quite sure it was not there before unless I missed it lol.
Raspberry Pi Staff Simon Long — post author
Nope, the snap to left and right was certainly in there under bullseye – might have been in there before that as well!
Erik Hill
Have you found a way to do this via the mouse? I notice that there are settings for this for wayfire, but adding them did not seem to activate the feature.
Simon
Would I need to stick with x11 to run xrdp or will XWayland handle it?
beta-tester
when under wayland things are more resticten than unter x11, is there a screen shot function/application available?
Raspberry Pi Staff Simon Long — post author
Yes, the grim screenshot tool is already installed and linked to the PrintScreen key – press that and a screenshot will appear in your Pictures directory.
BC
Rpi OS x64 Bookwork Desktop does not work on my pi4 with 8GB ram…. When i use rpi Imager and put a ssh file and wp_supplicant.conf in the boot partition. The system boots in to the desktop but the desktop is locked, the mouse point can be moved by i cannot click on anything. When i burn the same image with Etcher… it boots into a white raspberry wallpaper and gets stuck there?
Can anyone help ???
Heiko
Hi,
on raspi zero w and bookworm I cannot activate dwc2 for usb gadget mode any more. Can anyone confirm? Help appreciated. Thanks Heiko
I comment #otg_mode=1 and add dtoverlay=dwc2 in config.txt and add dwc2 module in /etc/modules.
-> Just found a workaround. Editing /boot/firmware/config.txt instead of /boot/config.txt does resolve the problem.
ap
I installed the new RpiOs 32-bit on my Rpi4.
Working smooth with X11 here.
Only one odd thing here:
I installed wmctrl without any problems.
But when i try to start it i get:
-bash: /usr/bin/wmctrl: cannot execute: required file not found
Any hints?
Such error never happened to me before on Raspbian nor Debian which i use in my Desktop machine for many years now.
Tried google (of course) but couldn’t find anything about this problem.
MW
According to the Blog Wayland is the default not x11 ??
ap
Yes, but i changed it to x11 via raspi-config. Anyway, using Bookworm on my PC also with x11 and wmctrl is working perfect. The problem only occurs on raspberry pi OS.
Abhishek Chowdhury
Hi..I used raspberry pi for some very basic audio processing. With the current os, none of the Open source DAWs work..lmms won’t open, ardour opens for only the initial set up but then crashes..I think it’s because these applications are not Wayland compatible? Any workaround?
Abhishek Chowdhury
OBS Studio also does not open in the new Bulleye Version
Fons Brand
Rpi OS x64 Bookwork Desktop does not work on my pi4 with 4GB/8GB.
Black screen nothing happen..
J. Bredahl
how do I set up the Raspberry Pi as wireless access point under bookworm
M
No keyboard layout switcher plugin for wifire panel
Judah Richardson
In which future Raspberry Pi OS release will the new DEs be backported to the Pi 3B+?
Wayne
For VNC, I note that wayvnc v0.7 introduces support for RSA AES, maybe this will increase the number of VNC clients supported. If that’s the case, it would be worth getting wayvnc v0.7 out as an update for bookworm quickly.
Raspberry Pi Staff Simon Long — post author
We are already trialling wayvnc 0.7 internally; we’d hope to move to it soon.
Alan Hopper
Installing downloaded .deb files from the gui seems to be broken. Left clicking in file manager and selecting ‘Package Install’ appears to do nothing. Is this intentional? If so is there an alternative gui way to install downloaded .deb files.
Raspberry Pi Staff Simon Long — post author
Installing files requires root access, and the file manager does not have this, so this will fail.
Go to the Tools menu, select Open Current Folder in Terminal, sudo apt install ./(name of deb file)
Alan Hopper
Thanks for the response, but this is a change for the worst, in the past a gui would open and request admin credentials and then install the app, if this is not allowed surely the option should be removed from the file manager. I write from the perspective of a developer that distributes software via .debs and the way it worked before made life simpler for me and the users. I understand if this is a result of a change of security policy but wonder if it is just an oversight.
Nick
Does anyone know what the audio situation is with the lite images? Are they still alsa only by default and is the plan to keep it that way?
Raspberry Pi Staff Simon Long — post author
Currently still just ALSA. We might integrate PipeWire at some point in future, but no definite plans either way yet.
nick
Thanks Simon. The simplicity of ALSA is nice on headless appliance-like systems. When you’ve got non-user processes trying to produce audio, you get a mess trying to bend pulseaudio and pipewire the wrong way. So am very happy to hear I don’t have to worry about it (yet)! Thanks for all your work.
Simon
On earlier releases I could hack the TARGET_END variable in the first boot script /usr/lib/raspi-config/init_resize.sh to stop the automatic resizing taking the whole card.
So far I haven’t worked this out for Bookworm – any clues where to look?
nick
Have you seen https://github.com/RPi-Distro/raspberrypi-sys-mods/blob/bookworm/initramfs-tools/scripts/local-premount/firstboot ?
Simon
That’s very odd, doesn’t match the firstboot script contents that I looked at on the SD card written by the imager at all!
gwfami
I’m stuck as there is no way of getting a valid install of customtkinter. I’ve posted it on python stack overflow and on the forum here. Only response I have gotten so far is in this exchange. ‘The website are waiting for this Cross-Compiler Toolchain for Raspberry Pi OS Bookworm. It is too early. –
toyota Supra
20 hours ago
I just got the exact same error using Raspberry Pi OS Bullseye. Couldn’t be the Cross-Compiler Toolchain if it’s happening on the previous OS. –
Greg W
2 hours ago
The customtkinter could wait for update. Be patient and wait for the website update. –
toyota Supra
1 hour ago
Ok, genuinely confused now. So I know can’t use customtkinter on any OS if it’s a fresh install? Is there anyway to get past this? How long for the website to be “updated”? Sorry to ask so many questions, but this project is my top priority at the moment. –
Greg W
59 mins ago
No you can’t refresh it. You may want to ask question. raspberrypi.com/news/… –
toyota Supra
54 mins ago’
Richard Smith
I tried the old overclocking to 2Ghz I have used for some time on my cooled RPi4 without success. The auto config system only allows 1.8Ghz max. Any suggestions on how to get 2Ghz back with Raspios Bookworm? For now I will stick with Bullseye.
Matt
I’ve got an SD card that uses Bullseye. I use this with RPi3s and RPi4s.
I’ve just created a Bookworm SD card.
The Bookworm SD card works until I connect a USB to Ethernet adapter. It’s the same USB to Ethernet that I use with Bullseye.
Before I realized there was a problem with the USB to Ethernet, I installed nfs-kernel-server and dnsmasq.
Any thoughts greatly appreciated?
Raspberry Pi Staff Liz Upton
If you’d like to report a bug, please create an issue on https://github.com/raspberrypi/bookworm-feedback, but please note the README!
Matt
Thanks for the pointer Liz. I was hoping someone might know of a NetworkManger gotcha that has got me! When I get time, I’ll try and repeat what happened and provide some more detail in an issue.
Robin Newman
Great new OS. I’ve managed to build the latest Sonic Pi 4.5 on it connecting via pipewire for audio and midi i/o, but have two problems running under Wayland. First, Wayland security prevents dragging and dropping files into SP to avoid typing out paths for samples etc. This is quite a drawback. Secondly varying the window transparency won’t work. Previously I used compton to do this, but wayland wont do it. I’ve swirched to Qt6, but transparency calls don’t work. SP works 100% under openbox and X11, or under wayland if you can mange without these two constraints.
Robin Newman
UPDATE to partially answer my own query.
Adding package qt6-wayland sorted out the file drag and drop problem for Sonic Pi….Now just the transparency to deal with.
Barnouin
Compatibility with Official Raspberry display 7 ” (800×480) should be checked.
So far it is not possible to use Add/Remove software with such display !
pedro m
Installed. Work great. Know somebody how I can get really functional teamviewer ?
Robert M. Koretsky
So when I use the inxi command, with the right options, I see that the Bookworm-based Raspberry Pi OS on a Pi4b is running Xwayland, with the Wayfire compositor. X.org v: 1.21.1.7.
jvoss
i did a fresh install but it will not start up. screen using is a official 7in pi touchscreen… am i doing something wrong?
Supra
One last question. Does PiCamera 2 will work on Bookworm?
Lava Lamp
Did this remove support for composite? Tried the same old method with config.txt and no luck.
jvoss
official Raspberry Pi display touch screen is not working what do i need to redo auto_detect?
Rick
Hello. I have a Raspberry Pi model 4B with 8 GB of memory. I installed RPi OS Bookworm, and used it for a day or two, but went back to Bullseye because of some “bugs” that are important to me. For example:
1) Wi-Fi Hotspot
Creating the hotspot was easy, and it gives good connectivity, except that it does not connect to the internet, so the devices that I connect to this hotspot do not have internet access. With Bullseye there is not problem whatsoever, it works very well. This may be an issue with Raspberry Pi 4B and Bookworm, because I saw a video in YouTube where a functional Hotspot is shown with Raspberry Pi 5.
2) Wi-Fi Security
This problem is common to Bullseye and Bookworm. WPA3 is offered but it does not work. WPA & WPA2 Personal works, but it is detected by my devices as WEP (weak security). And I would not use a Wi-Fi network with less than WPA2 security.
3) Some Panel Applets are missing, notably the Weather Plugin, which is an excellent applet.
So, this is all for now. There is no need to reply to this comment. It is more like a Bug Report and an Enhancement Request for the Raspberry Pi Software Engineers. Thank you.
William Stevenson
The work involved in this advance to Bookworm is much appreciated, I’m sure, by almost everyone. Much to my surprise, the change has gone smoothly even when combined with the new use of a small touchscreen (Hyperpixel Rectangular). I had only just set this up on Bullseye and would have been reluctant to change were it not for the simplicity of just using another MicroSD. Just to show how this curated comment thread is useful to those of us who have difficulty with trivial matters which we should know about but don’t: almost all my problems with Bookworm were instantly solved by a comment above about ctrl-alt-up window-snapping. Great work!
Raspberry Pi Staff Ashley Whittaker
I like it when people are nice to us
William Stevenson
In the end I had to resort to sudo raspi-config to allow a swith back to X-Windows from Wayland because the Onboard OSK is so much better than the cumbersome OSKs under Wayland. I imagine the market for OSKs on small screens is not that large so there may not be one for Wayland. Anyway, the reversion to X-Windows was simple and quick, which is another recommendation for Bookworm, for now at least
Iustin Pop
If anyone cares: if using the RPI as a headless server, it’s actually rather easy to upgrade. There are a few gotchas, but if you understand Debian well, it is possible. I wrote a post mostly on cross-grade (32 to 64 bit user land), but it briefly mentions the upgrade too: https://k1024.org/posts/2023/2023-10-31-raspberry-pi-upgrade-crossgrade/.
jimis
Do the speed improvements on Firefox also apply to the 32-bit armhf build?
Where is the source code or patch for Firefox published?
Willi Tor
Hi, I have Bookworm installed on the RPi 400. My opinion is that the Wayfire window manager, just like Mutter, is not really productive yet. That’s why I used Openbox. However, this gets with each new version more and more errors, which can no longer be corrected in the lxde-rc.xml (or which is currently active).
Examples:
1. It is no longer possible to roll up the window with the mouse wheel in Bookworm.
2. Since Buster, “ToggleMaximize” only works in one direction with the Maximize button with the middle and right mouse buttons. Both of these are very disturbing when working. I would like to report these bugs somewhere, but that seems rather complicated to me.
Greeting Willi Tor, Germany
Anthony
Has anyone tried installing Bookworm on a Raspberry Pi Zero 2W? I have use the imager to create a fresh install of the 64bit version on a new SD card. It boots find and I then run “sudo apt update” followed by “sudo apt full-upgrade” to try to make sure I have the latest versions of all packages.
No matter how many times I try this, it reaches “Reading changelogs… 28%” and then completely freezes the rpi. I have left it at this point overnight in case it was just taking a while but it never moves passed this point.
Any tips for a noob?
Matt
Anthony – I’m having this exact same problem as well: RPi Zero 2 W, fresh install of 64-bit version on new SD card, run “sudo apt update” and “sudo apt full-upgrade”, and then Pi on “Reading changelogs… 28%”
Would love to know how to get past this!
Jacob Davis
I have the new version running on all of our Pis, but there’s one thing I can’t seem to wrap my head around: although Widevine can be installed on the system, that version works with Chromium only. Firefox gave me the option to install Widevine on it, but all I see is a “plugin will be installed shortly” message on the Extensions page. Is there anything I can do to watch Netflix VOD, or even my YouTube purchases, in Firefox on RPi?
matii
firefow not working whit netflix for me newer, but cromium working well , not need addons and work good.
Richard
gnome-screenshot no longer works with 64bit “bookworm” Raspberry Pi OS. Running RPi4/8GB. Fresh install of 64bit bookworm OS, no additional software (beyond recommended) yet installed. Need to be able to have a “snip” type tool, with GUI, and gnome-screenshot was excellent and fast. Scrot is not appropriate for snipping figures, and small portions, etc. from displays
Here is information on version in bookworm repository.
liberator3@raspberrypi:~ $ apt-cache policy gnome-screenshot
gnome-screenshot:
Installed: (none)
Candidate: 41.0-2
Version table:
41.0-2 500
500 http://deb.debian.org/debian bookworm/main arm64 Packages
——————————————————————————-
(note the later version 41.0-2 now, previous bullseye version was 3.38-01)
Raspberry Pi Staff Alasdair Allan
Nope. That’s an X Windows tool, and Bookworm uses Wayland.
Richard
Alasdair, (aka Captain Obvious)
Why are you saying “Nope” when you agree with my comment that gnome-screenshot no longer works on 64 bit “bookworm” Rapi OS? Your comment was not helpful. From Simon’s article, it is obvious that gnome-screenshot has a problem with the new windowing system. How about being part of the solution and suggest a snipping tool/program that will work with the new windowing method?
Having a snip tool with the ability to cut and paste specific portions of a screen (or all of it) is an essential part of using a computer for many of us, and this should have been addressed before releasing a new OS that does not have one. (if it ain’t broke, don’t “fix it”)
BTW, my comment was addressed to Simon Long. I should have put his name at the beginning to make that clear.
SAIL.FPV
I have a problem with Bookworm.
I cant see any serial ports:
nawrocki@raspberrypi:~ $ ls -la /dev/serial*
ls: cannot access ‘/dev/serial*’: No such file or directory nawrocki@raspberrypi:~ $
On Bullseye i get:
nawrocki@raspberrypi:~ $ ls -la /dev/serial*
lrwxrwxrwx 1 root root 7 May 3 2023 /dev/serial1 -> ttyAMA0
RPi 4B Board, fresh install of both OSs.
What happened to Bookworm?
Paul Tourville
I just got a RasPi 5 with Bookworm, and users I’ve created via ‘useradd’ @ the CLI cannot login via lightdm. PAM returns “bad password”. I can ssh and su to those users all day. This is frustrating. I haven’t found anything yet which addresses this issue. Any ideas?
Alexander
Hi, I just bought a used Pi 3 model B version 1.2, to start learning about programming.
Does it make more sense to install 32 bit OS instead of 64 bit, since it’s only a 1GB ram device? I also read some things about incompatibilities with software I never heard of before, in both versions. Any tips?
Thanks.
Kim B
An impressive release. Thanks.
I was wondering about these two snippets:
“The primary advantage of Wayland is performance.”
“The performance of Wayfire on earlier platforms is still being optimised, so for now they will continue to run the old X11 display server”
Is there something about Pi 4/5 hardware or 64-bit OS that makes Wayland outperform X11 on those systems while being slower on older Pis?