Skip to content

Release Notes

April 2023 (version 8.16)

Overview

The April 8th, 2023 release of DietPi v8.16 comes with a new software title microblog.pub and a couple of improvements and bug fixes.

Cherry blossom

Photo by thalsun, Pixabay

New software

Enhancements

  • General Reworked GPU driver installations for x86 systems. This provides better control of GPU drivers for DietPi, adding support for Vulkan and resolves issues with Steam Proton. Users will be prompted to select a driver package during DietPi-Update: MichaIng/DietPi#6262
  • Network When checking for one among multiple Ethernet adapters on first boot and generally when all Ethernet interfaces are disabled, all of them are enabled first to allow the detection of a carrier signal, i.e. a connected cable. Previously, eth0 was always chosen in this situation while users may have connected a cable to another adapter. Now one does not need to know or test which adapter is eth0 to have a successful automated first run setup on NanoPi mini routers, VisionFive 2 and similar SBCs with multiple Ethernet adapters.
  • Network The IPv6 connection check is now only done if both, an IPv6 default route as well as a global unicast address (GUA) is assigned. If any of both is missing, the system falls back to using IPv4 automatically, as far as we tested. It hence is not needed to force users disabling IPv6 in this case to assure connectivity to hosts with IPv6 (and IPv4) addresses. Many thanks to @taoteh1221 for reporting a case where our scripts do and fail the IPv6 check while there are no connection issues when ignoring it: MichaIng/DietPi#6168
  • NanoPi R5S/R6S The kernel will be upgraded during the DietPi update to disable a writable clk DebugFS flag it was previously shipped with. Many thanks to @thinkpanzer for bringing this to our attention: MichaIng/DietPi#6136
  • Orange Pi 5, ROCK 5B The hardware random generator daemon rngd is used now in favour of the software random generator haveged. It will be replaced on DietPi update.
  • Orange Pi 5 Added an option to the dietpi-config Advanced Options menu to update the SPI flash bootloader. This may be needed to enable booting directly from NVMe SSDs. Many thanks to @michaelscott for bringing up this topic: https://dietpi.com/forum/t/orange-pi-5-boot-from-nvme/16457
  • First run setup When connected via local console and the keyboard layout has not been changed in dietpi.txt, an additional prompt allows you now to change the keyboard layout before you are offered to change passwords. This is obviously helpful since the password input fields are masked, hence false characters due to false keyboard layout may not be recognised but bite you later when you cannot login into your installed application. Many thanks to @LeFish1 for doing this suggestion: MichaIng/DietPi#5925
  • DietPi-Services The service handling for software installed via dietpi-software has received a major rework. Previously, services were “disabled” by default, so that the systemd init system did not start them automatically at boot. Instead, they were enabled at a late boot stage as part of the dietpi-postboot service via dietpi-services. The idea was to assure a fast, undisturbed early boot process and to have all services started up in a specific order, which guarantees that dependencies are running before dependants. But it had several negative implications: systemd is designed to speed up overall services startup via parallelism, while our serial startup broke this benefit. systemctl status SERVICE showed services as “disabled”, which caused confusion as they were still started at boot. Consequently the only way to prevent them from being started was to mask services or exclude them with our script or its config file, as systemctl disable SERVICE had no effect. Also it was not uncommon that APT package upgrades left the service stopped, respecting the “disabled” state. DietPi has now been aligned with how Linux distributions with systemd handle services commonly. The most important startup ordering is instead done via systemd unit After= ordering directives to have e.g. webservers starting after PHP, and PHP after databases.
  • DietPi-RAMlog For unknown historical reasons, the /var/log tmpfs mount had 1777 mode, i.e. was world-writable with sticky bit. Since this does not match the Debian default for this directory, this mode has been removed from the mount options, so that the default mode 0755 is now used.
  • DietPi-Config Added an option to the dietpi-config Advanced Options menu to flash the current U-Boot bootloader to the eMMC device if the linux-u-boot-* package of Armbian is installed (true on most SBCs aside of Raspberry Pi).
  • DietPi-Config Display Brightness: Now supports all valid and available sysfs entries in /sys/class/backlight/*. Multiple entries are also supported, allowing users to change brightness levels for all available backlights on the system. Menu system now uses percent based selection for brightness levels.
    Remark: OLED panels (specifically laptops) require a 5.12 Kernel or higher to be supported with this feature: MichaIng/DietPi!6288

Bug fixes

  • General Added more generic support for obtaining the CPU temperature, covering some thin clients and potentially other systems where no CPU temperature was shown when running the cpu command or enabling it for the login banner.
  • Network Resolved an issue where WiFi connection may have failed or provided bad performance if the WiFi access point did not send a country code. If no CRDA is used, the country code is now applied via wpa_supplicant. If the access point sends a country code, it overrides the choice once the connection has been established. Many thanks to all community members who reported the issue, tested and provided a solution: https://dietpi.com/forum/t/wifi-drops-out-after-update-to-8-14-2/16082, https://dietpi.com/forum/t/rpi-wifi-stops-working-after-reboot-but-works-again-after-a-proper-shutdown/16406
  • Orange Pi 5, ROCK 5B Resolved an issue where the wrong serial console device name was expected. The correct /dev/ttyFIQ0 will be enabled on DietPi update and patched for a baudrate of 1,500,000.
  • Raspberry Pi With the recent official Raspberry Pi kernel upgrade, Raspberry Pi 4 systems do now boot with the 64-bit kernel by default, even if the underlying OS/userland is 32-bit. While we doubt in any practical benefits, dietpi-software has been patched to correctly deal with this case, i.e. installing 32-bit packages and binaries instead of relying on the uname -m kernel architecture output. Some 3rd party software installers may still fail to deal with this case, but we give it a chance for now and hope that affected installers can be relatively easily made compatible.
  • DietPi-Config Resolved an issue where selecting the Nvidia driver on x86_64 systems did not actually install the needed kernel module if kernel headers were not installed before. Headers matching your kernel package are now installed automatically when selecting this option, to have the driver compiled and installed.
  • DietPi-Software | Fail2Ban Resolved a DietPi v8.11 regression where moving logs to systemd journal on install fails due to a typo.
  • DietPi-Software | Portainer Disabled the install option on ARMv6 RPi models since no Portainer Docker image is available for this architecture anymore. Many thanks to @intiplink for making us aware of this: https://dietpi.com/forum/t/armv6-bookworm-software-test-matrix-question/16380/11

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!6282