Debian 12 Bookworm has been released on 2023-06-10. We want to give you a brief overview and info how to install or upgrade to it, either using our DietPi Bookworm images, or by upgrading your running DietPi Bullseye system.
- Feature overview
1.1 Release schedule
1.2 Available software updates
1.3 Other notable changes
- Incompatible software
- How to apply
3.1. DietPi Bookworm images
3.2. Upgrade from Bullseye
- Feedback & Support
1.1 Release schedule
Debian does not follow the rolling release model, but is a point release distribution, which provides updates for its distributed software via major releases every two years. The following table gives an overview of the last, current and next stable Debian release:
During these two years, a stable Debian release receives only bug fixes, security patches and in rare cases patch version updates, i.e. updates where the upstream software developer does not declare any breaking changes or new features. You can observe this behaviour by looking at the version strings when doing
apt upgrade: Usually only the suffix changes, indicating that the same software source code version was used. Changes were then limited to the package maintainer/meta files, including bug fix and security patches.
There are some exceptions for this strict update policy, like the Chromium browser, which receives regular major version upgrades for security reasons.
This means that at the end of a version release cycle, software provided by the Debian package repository is up to two years old and the next release hence provides some significant updates.
1.2 Available software updates
The following list shows an extract of updates available with Debian Bookworm for software often used on DietPi systems:
|adds full Ed25519 support, disables
ssh-rsa support by default
|Not all Python applications have been tested by us with Python 3.11 yet.
|Not all PHP applications have been tested by us with PHP 8.2 yet.
|The required database migration is included with our Bookworm upgrade script.
|not relevant for Raspberry Pi
|Mesa graphics drivers
x86_64 platforms only
Notable are the PHP and Python upgrades to their respective latest official version, which affects a large number of
dietpi-software installation options:
- Some applications did already drop support for PHP 7.4 respectively Python 3.9, including Nextcloud and TasmoAdmin, which forces us to install older versions on Bullseye systems.
- Other applications do not support PHP 8.2 yet and hence fail to run or install on Bookworm. ownCloud is an example, further explained below.
1.3 Other notable changes
There are some other changes we want to highlight:
Already since Linux 4.15, the kernel is able to obtain permitted WiFi channels/frequencies, the so called regulatory domains, from the regulatory database, based on a given WiFi country code. Previously, a dedicated user-space tool was needed to pass this information to the kernel: the Central Regulatory Domain Agent (CRDA). Since Debian Bullseye, the provided packages generally allows the use of this feature, and we hence offer the migration away from CRDA with the DietPi v8.14 upgrade. But on Bookworm, the CRDA package is not available at all. This means that systems, using a Linux version below 4.15, are not able to connect to a WiFi access point or provide one, using all locally allowed frequencies, but only a limited subset of shared global ones, which can break WiFi communication completely. This and a bunch of other uses of recent Linux kernel features force us to not provide Bookworm images for certain SBCs anymore, which have no Linux kernel of 4.15 or higher available.
This includes the Sparky SBC, NanoPi M2/T2/Fire2 and NanoPi M3/T3/Fire3 models. We are especially sad for the latter ones, which use a very powerful octa-core SoC, but the involved manufacturers have not managed to add support to mainline Linux or update their own kernel sources, stuck at Linux 4.4, which practically implies an artificially early end-of-life for such hardware.
Since Linux 5.15, an SMB kernel server
ksmbd is available, similar to the NFS kernel server
nfsd. This provides an alternative to the Samba user-space server, optimised for better performance and lower footprint running right in kernel-space. Debian Bookworm provides the needed user-space tools to manage this new SMB server implementation, and we are excited to implement it into
dietpi-software as well.
2. Incompatible software
DietPi offers Debian Bookworm based images since a long time, but we did not provide them prominently on our download page or elsewhere until now. We did systematic tests of all software titles form the
dietpi-software catalogue: https://github.com/MichaIng/DietPi/wiki/Debian-Bookworm-testing
The following list of software titles is known to be not (yet) compatible with Debian Bookworm:
PHP currently cannot be executed on ARMv6 Raspberry Pi models, i.e. Raspberry Pi 1 and Zero (1) variants. On all other SBCs it, and on Raspberry Pi 2 an up, it works fine. A bug report has been filed: https://bugs.launchpad.net/raspbian/+bug/2012833
This affects all PHP applications: Ampache, O!MPD, Koel, Allo GUI, rTorrent web UI, Aria2 web UI, ownCloud, Nextcloud, Pydio, phpBB, WordPress, FreshRSS, Single File PHP Gallery, Baïkal, RPi Cam Web Interface, LinuxDash, phpSysInfo, Pi-hole, TasmoAdmin and phpMyAdmin.
So if you (plan to) use any of these applications on an RPi 1 or Zero (1) model, stay with Debian Bullseye for now. For this reason, our download page offers Bullseye images for these models for now. We will inform you once the issue has been solved.
EDIT: The issue has been solved. Many thanks to Peter Green from Raspbian!
Logitech Media Serve r , since it does not support Perl 5.36 yet
EDIT: Solved with DietPi v9.0
- ownCloud, since it does not support PHP 8.x and will probably never do. On Bookworm, one should hence use Nextcloud or the rewritten ownCloud Infinite Scale solution.
ympd: We will provide an update with next DietPi release.
EDIT: Support has been added with DietPi v8.19.
- RPi Cam Web Interface on ARMv7/ARMv8 images, which depends on the gpac package, which is currently not available on Debian Bookworm: https://packages.debian.org/gpac
- Domoticz, as the released binaries have been built against an old LibSSL version which is not offered anymore on Debian Bookworm: https://github.com/domoticz/domoticz/issues/5233
In case you want to use one of the above software titles, you find up-to-date Debian Bullseye images for all SBCs here: https://dietpi.com/downloads/images/
3. How to apply
We provide Debian Bookworm images as well as a script to upgrade your Debian Bullseye based DietPi system.
3.1 DietPi Bookworm images
Bookworm images are provided on our download page, expect Sparky SBC, NanoPi M2/T2/Fire2, NanoPi M3/T3/Fire3 and Raspberry Pi 1 as mentioned above. If you plan to use one of the above incompatible software titles, or want to run Bookworm on Raspberry Pi 1/Zero (1), you can find all our images here: https://dietpi.com/downloads/images/
Install them the same way you do with the current stable Bullseye images, e.g. by following our install instructions: https://dietpi.com/docs/install/
3.2 Upgrade from Bullseye
We wrote a script to upgrade a DietPi Bullseye system to Bookworm, as safe as possible. While flashing a fresh image is generally cleaner and recommended, we know that some of you have setups which are time consuming to replicate on a fresh system. Our script offers to create a backup, does all known needed migrations and adjustments to have your software running on the new Debian as it did before. Run the following one-liner on your console to execute it:
sudo bash < <(curl -sSf 'https://raw.githubusercontent.com/MichaIng/DietPi/master/.meta/dietpi-bookworm-upgrade')
Carefully watch the output of the script. If an error occurs, our error handler allows you to open a subshell to investigate and fix the underlying issue, to repeat and continue. After the packages themselves have been upgraded, it allows you to again review the output, before continuing with software (config) migrations, which also includes some
When everything is done, the script offers to do a reboot, which we highly recommend. On first login as root user after the reboot, old leftover Bullseye APT packages are automatically removed.
In case that you run a graphical desktop (X11), just open a terminal window and execute a
sudo -s to execute this step. After it is finished you can close the terminal window.
In case you use the OpenSSH server, note that the new version shipped with Bookworm has support for the legacy
ssh-rsa (RSA/SHA1) key format disabled by default, which affects host keys as well as client keys. SSH clients may hence warn you and ask you to accept the new host key in modern Ed25519 format, and in case you use key authentication, old keys may need to be recreated in Ed25519 (recommended) or ECDSA format. Alternatively,
ssh-rsa support can be re-enabled, but we highly recommend to switch to a modern key format instead.
4. Feedback & Support
Feel free to use the comments for short feedback about this article and how Bookworm works for you.
For more detailed test results and if you face issues you face with our upgrade script or Bookworm in general, please use the following issue on our GitHub repository: https://github.com/MichaIng/DietPi/issues/6227
Alternatively, you can open an issue in our forum’s troubleshooting section: https://dietpi.com/forum/c/troubleshooting/10