Skip to content

Release Notes

December 2025 (version 9.20)

Overview

The December 14th, 2025 release of DietPi v9.20 comes with a new software package RustDesk Server, further enhancements and fixes.

The image shows a futuristic environment with two single-board computers, each with a screen attached. The screen on the right side shows the desktop of the other screen in a window, indicating a remote desktop session. 5 Christmas elves can be seen, one of them tinkering on a port of the left-side single-board computer, anther one pointing at or touching the right-side screen. Some snow flakes decorate the image.

"Futuristic Tech Harmony" by ChatGPT/Sora

New software

Enhancements

  • Orange Pi 5/Max/Ultra Our images ship now with all USB-A ports and, depending on model, one USB-C port enabled in host mode, making them functional for USB devices. This is done with a device tree overlay dwc3-host. Removing it from /boot/dietpiEnv.txt reverts the affected port(s), which share one controller, to their default OTG mode, in which case attached USB devices are not detected or even powered. For existing instances, add dwc3-host to the overlays= line in /boot/dietpiEnv.txt to apply this change. Many thanks to @DiegoBM and @pavel-kamaev for reporting this issue: MichaIng/DietPi#7738
  • Radxa ZERO 3 New images will ship with Linux 6.12 mainline LTS kernel now, and the DietPi update migrates systems with legacy and vendor kernel to mainline LTS as well.
  • DietPi-Tools | DietPi-Backup A workaround for ACLs applied at an NFSv4 mount target has been applied. If ACLs are applied e.g. recursively at the NFS server, they are translated and exposed as special NFSv4 ACLs at the client, which is incompatible with POSIX ACLs. The cp -a/--archive used to special handle /etc/debian_version tries and hence fails to preserve them. rsync -a/--archive does not imply ACLs, hence does not suffer from the issue. It may be able to handle them better using its -A/--acls flag. However, ACLs applied at the NFS server of course must not be applied at the restored OS anyway, hence we just skip the cp -a flag now. The default root:root 0644 mode is anyway what /etc/debian_version is intended to be, and an updated mtime does not hurt. Preserving ACLs and xattr for system backups would be actually a good feature, but at least doing this for backups to NFS mounts hence is risky. For this, we’d first need to implement an option to create and transfer a tarball of the backup at the client, and compression as logical addition with it. tar has an --acls option as well. Many thanks to @miloit for reporting the related error: MichaIng/DietPi#7825
  • DietPi-Tools | DietPi-Drive_Manager Some output, dialogue and menu texts have been revised. Notably, the main menu now shows the device nodes on the left side as primary selector, and the mount target, only for mounted drives, on the right side. The partition or drive capacity is now additionally shown for unmounted or unformatted drives as well.
  • DietPi-Software | Portainer On (re)installs, existing Portainer BE (Business Edition) instances are now detected and updated correctly. When entering a license key in Portainer CE (Community Edition), it upgrades itself to BE. dietpi-software however detected and updated CE instances only, causing a failure if it was upgraded to BE. Many thanks to @salieri for reporting this issue: https://dietpi.com/forum/t/24696
  • DietPi-Software | Aria2 File logging to /var/log/aria2.log is disabled. It is redundant, since Aria2 logs to console hence journalctl -u aria2 in any case, even with a higher default log level. Of course it can be re-enabled manually if you need logs in a plain text file.
  • DietPi-Software | Allo GUI A new major version has been released with raised minimum PHP 7.4, updated dependencies with solved security vulnerabilities, and a major cleanup: https://github.com/MichaIng/DietPi-AlloGUI/releases/tag/v14.5, https://github.com/MichaIng/DietPi-AlloGUI/releases/tag/v15.0. The DietPi update will upgrade the Allo GUI automatically.

Bug fixes

  • Orange Pi 5 Resolved an issue where USB and M.2 SSD boots took very long or failed, and reboots failed, at least in some cases. Credits go to @efectn from Armbian for switching from vendor U-Boot to mainline U-Boot, which solved all issues. Many thanks to @Renoria for reporting this issue: https://dietpi.com/forum/t/24613
  • DietPi-Tools | DietPi-Drive_Manager Resolved a serious bug where a false partition or drive could have been formatted if a currently mounted drive was selected to be formatted. Many thanks to @Arimodu for reporting this issue: MichaIng/DietPi#7852
  • DietPi-Tools | DietPi-Drive_Manager Resolved an issue where a doubled unmount attempt could have failed on full drive formats, if a currently mounted partition was selected.
  • DietPi-Software | BirdNET-Go Resolved an issue where local sound cards were not detected due to too strict permissions. Many thanks to @miloit for reporting this issue: MichaIng/DietPi#7828
  • DietPi-Software | ProFTPD Resolved an issue where the service might have failed to start if the activation socket was enabled. Since we install a config with ProFTPD in standalone mode, the activation socket must be disabled, else both try to bind to the same port 21. Many thanks to @mdr92 for reporting this issue: MichaIng/DietPi#7750
  • DietPi-Software | LazyLibrarian Resolved an issue where using the web UI “Restart” button stopped the service to never come back up. Many thanks to @JappeHallunken for reporting this issue: https://dietpi.com/forum/t/24699/9
  • DietPi-Software | Fail2Ban From Debian Trixie on, /etc/fail2ban/jail.d/defaults-debian.conf overrides the default ban action with nftables. This makes sense if otherwise the upstream default iptables was used, but it must not override any explicit admin choice or the dietpi-software default “route” action. More importantly, nftables requires the userland tools to be installed, otherwise bans cannot be applied. Installs via dietpi-software will now remove the config, all its other content is redundant, one change even a regression. Next dietpi-update and our Trixie upgrade script will either remove the config, if it overrides an explicit choice, or will otherwise assure that nftables userland tools are installed, if it reasonably replaces the legacy iptables ban action.
  • DietPi-Software | Radarr Resolved an issue on Bullseye systems where the service fails due to an incompatible embedded SQLite library, same as with Lidarr and Prowlarr earlier: https://wiki.servarr.com/radarr/faq#radarr-wont-start-on-debian-11-or-older-systems-due-to-sqlite-version. Many thanks to @tundrablasen for reporting this issue: MichaIng/DietPi#7837
  • DietPi-Software | Portainer Resolved an issue where with Docker 29.1.0 the CLI changed a way that our container image detection failed, so that dietpi-software reinstall 185 did not update Portainer anymore. Coincidentally, the Portainer BE support we previously added solves this issue as well. Many thanks to @Pi-Rate for reporting this issue: https://dietpi.com/forum/t/24688/12

As always, many smaller code performance and stability improvements, visual and spelling fixes have been done, too much to list all of them here. Check out all code changes of this release on GitHub: MichaIng/DietPi!7855