Changes / Improvements / Optimisations
- General | Support for Debian Jessie has now been fully dropped from DietPi code. Jessie systems are moved to the “jessie-support” Git branch and will stay on v6.25. Critical bugs, if reported, may still be fixed, but DietPi-Software related issues and new features will not be handled anymore by the DietPi code team. However, everyone is free to open pull requests against the jessie-support branch: https://github.com/MichaIng/DietPi/tree/jessie-support
- General | Initial support and definitions for Debian Bullseye, the new Debian testing version, have been added to DietPi code. You can now create Bullseye systems via DietPi-PREP: https://github.com/MichaIng/DietPi/issues/3009
- General | DietPi scripts, i.e. dietpi-software, will not overwrite you custom permissions in /mnt/dietpi_userdata anymore. Instead required permissions are now only applied for individual software titles that are being installed. Besides saving you time to re-apply custom permission, this as well enhances security in some cases where software installers/archives apply/contain stricter per-file/dir permissions. Many thanks to @JJGO and @johnvick for suggesting this enhancement: https://github.com/MichaIng/DietPi/issues/2641
- General | On first boot, when DietPi-Software finishes the initial setup, it is now assured that all APT packages, including firmware, are upgraded by performing an “apt-get dist-upgrade”/“apt full-upgrade”. Since it includes upgrades regardless of underlying dependency and conflict changes, which in rare cases can perform unwanted removals, we do not do this on regualar DietPi-Update/Software runs. But on first boot, without additional packages installed yet, it is safe. Many thanks to @cmessin1 for doing this request: https://github.com/MichaIng/DietPi/issues/3098
- Rochchip | Experimental GPU acceleration support for RK3399 SoCs and ASUS Tinker Board has been re-enabled.
- RPi | The haveged daemon has been replaced with rng-tools, an alternative which does not work on all devices, but has been proven to work on RPi, is default on Raspbian and uses less RAM on idle.
- RPi4 | The default CPU temperature limit (temp_limit) has been raised from 65°C to 75°C, since this device runs significantly hotter then previous RPi model. Many thanks to @trueaspects and @Trunkzeh for doing this suggestion: https://github.com/MichaIng/DietPi/issues/3019, https://github.com/MichaIng/DietPi/issues/3151
- DietPi-Globals | The environment variable $G_USER_INPUTS has been renamed to $G_INTERACTIVE, which describes better what it does. When setting this to “0”, DietPi scripts will run non-interactively, i.e. all whiptail dialog prompts and other tasks that require manual user input are skipped. Note that this is not required when running scripts from cron jobs or systemd units, since those have no STDIN attached which makes DietPi scripts run non-interactively automatically. Scripts will stay backwards-compatible, thus respect $G_USER_INPUTS for a while, but please adjust your scripts or docs where you make use of it. Many thanks to @AtkLordOverAll for contributing this change: https://github.com/MichaIng/DietPi/pull/3041
- DietPi-PostBoot | /var/log/boottime is not created anymore. Please use “systemd-analyze” to get much more accurate and detailed boot information.
- DietPi-PostBoot | The pre-login banner has been slightly adjusted: Default login credentials are now only shown on first boot, since the information is obsolete when user changed the password. As well an info has been added that one needs to hit to show the username input field.
- DietPi-Banner/NordVPN: DietPi-NordVPN has a new input command to print the current VPN connection state: “dietpi-nordvpn status”. This has been implemented as well into DietPi-Banner to optionally show NordVPN connection state on login automatically. Many thanks to @svh1985 for implementing this feature: https://github.com/MichaIng/DietPi/pull/3084
- DietPi-NordVPN | Added options for connection up/down scripts, e.g. to implement killswitches, answer inbound connections from outside local network correctly, safe and track connection uptime, and similar tasks. Many thanks to @svh1985 for implementing this feature: https://github.com/MichaIng/DietPi/pull/3047
- DietPi-Config | Audio Options: Menu has been reworked. Audio capabilities (ALSA) can be enabled and disabled as a separate option. If enabled, generic sound card auto-detection has been added to the bottom of the list for all devices. This allows the selection of generic sound devices on all SBCs, e.g. if unknown to DietPi or if our hard-coded card/device IDs are wrong due to additional attached audio hardware.
- DietPi-Config | Some /etc/modprobe.d/ configs are merged to less files and mostly prefixed with “dietpi-”, to allow easier differentiation between Debian/pre-image and DietPi files.
- DietPi-Config | RPi: Update certain config.txt settings to match new firmware version. WiFi and Bluetooth is now disabled via related dtoverlays, which should further reduce hardware and firmware loads.
- DietPi-Config | Added overclocking profiles for RPi4. Many thanks to @aftensleuk for request and valuable suggestions: https://dietpi.com/forum/t/overclocking-profile-for-rpi-4/3422/1
- DietPi-Config | RPi: Re-added previously removed options to adjust initial turbo for CPU frequency on boot and to lower the idle CPU frequency. The related firmware issues have been fixed with a recent update: https://github.com/MichaIng/DietPi/issues/3147
- DietPi-Config | RPi: Removed the option to adjust CPU frequency limits. On RPi the dynamic CPU governors only jump between “arm_freq” and “arm_freq_min”, hence those limits should be set via overclocking profile and the newly re-added “ARM Idle Frequency” option.
- DietPi-Config | RPi1/Zero: OpenGL modes/drivers can now be successfully selected/installed from display resolution menu.
- DietPi-Software | TightVPN: Since Stretch, TightVPN has been replaced by TigerVPN, thus the install option has now been removed from code.
- DietPi-Software | SDL2: Since we ship a tailored build for Amiberry, the general install option for SDL2 has been removed, instead it will be installed/updated along with Amiberry. If you require SDL2 for any other purpose, please install the “libsdl2-2.0.0” package from APT repository: https://packages.debian.org/libsdl2
- DietPi-Software | Pi-hole: Logging to /var/log/pihole.log is now disabled by default, since it is not required in usual cases. Query logs, shown in web UI, are stored in database. This might also resolve possible pihole-FTL crashes in combination with DietPi-RAMlog and DietPi-Logclear. Many thanks to @kuerious for reporting and @Mcat12 for providing helpful information on this topic: https://github.com/pi-hole/FTL/issues/614
- DietPi-Software | Pi-hole: Webserver configs have been added to block public access to the blocking page, optionally as well to the admin panel and generally block access to dot files/dirs (.git*) inside the admin panel directory. Parts are inspired by the official Lighttpd config, provided by Pi-hole: https://github.com/pi-hole/pi-hole/blob/master/advanced/lighttpd.conf.debian
Many thanks to @AtkLordOverAll for his effort to implement this for Lighttpd initially + the choice during install to block public admin panel access as well: https://github.com/MichaIng/DietPi/pull/3054
- DietPi-Software | OpenVPN: Rsyslog is not installed anymore together with OpenVPN server. Logs are available via “journalctl -u openvpn”, all system logs via “journalctl”. If you require persistent logs, uninstall DietPi-RAMlog via dietpi-software and make the journal boot persistent via: mkdir /var/log/journal
- DietPi-Software | Gogs: On ARMv7 and x86_64 now the latest version from GitHub is installed. Reinstalls will upgrade the version while preserving existing settings. Many thanks to @LazyLama for doing this suggestion: https://github.com/MichaIng/DietPi/issues/2999
- DietPi-Software | Webmin: Install is now done via official APT repository to allow easier updates. To apply this to all systems, it is reinstalled on DietPi-Update to v6.26. Additionally the dependency on rsyslog has been removed. The Webmin logging panel still depends on rsyslog, but the overhead shall not be applied to all systems by default. Instead users can now decide themselves, whether they need to see system logs on Webmin, or not, and in case apply custom logging settings as well.
- DietPi-Software | Amiberry: Enabled support for RPi4 and Odroid XU4. Thanks to @midwan for providing the binaries: https://github.com/MichaIng/DietPi/issues/3104
- DietPi-Software | myMPD: Updated install steps to avoid deprecations of the current upstream version. As well the service will not run as primary group “dietpi” anymore, which is only required for software that creates media files. Many thanks to @jcorporation (developer of myMPD) for providing this information as well as a smooth build script that updates old instances gracefully: https://github.com/MichaIng/DietPi/issues/3097
- DietPi-Software | WiFi Hotspot: Since on some systems, a hostapd service mask was found, it is now unmasked on install. As well our custom compiled binaries are now only installed on RTL8188C* devices where no special Realtek hostapd package is available. Many thanks to @symbios24 for reporting the service mask issue: https://github.com/MichaIng/DietPi/issues/2962
- DietPi-Software | Fail2Ban is not handled by DietPi-Services anymore, since the brute-force protection shall stay active during updates, installs, backups etc. The service is now started by systemd on boot and stays active until shutdown. Additionally on fresh installs the default jail.conf is optimised for the set “route” ban action: “blackhole” is now the route type, which does not send any respond to blocked requests.
- DietPi-Software | WireGuard: Support for RPi1 + RPi Zero (ARMv6 models) has been enabled by switching to Bullseye as source repo, which is available for Raspbian as well. Additionally on RPi, the WireGuard kernel module is now rebuilt automatically after kernel package upgrades. Many thanks to @johnnyt83 for suggestion RPi1/Zero support and his efforts to test the source build: https://github.com/MichaIng/DietPi/issues/2997
- DietPi-Software | Gitea: Version 1.9.4 will be shipped from now on. Many thanks to @msongz and @minhphuc429 for implementing this update: https://github.com/MichaIng/DietPi/pull/3138, https://github.com/MichaIng/DietPi/pull/3154
- DietPi-Software | Aria2: Runs now as it’s own user “aria2” and group “dietpi” with home dir and config file moved to /mnt/dietpi_userdata/aria2/. Besides satisfying security standards, this allows other download and media related software, provided by dietpi-software, direct access to Aria2 downloads without the need for custom permission changes. Additionally the current session (download states) are saved on service stop and every 60 seconds, to prevent current tasks from being lost on reboot or power loss. Aria2 will be reinstalled with v6.26 to apply these changes. Many thanks to @msongz for implementing and testing the session feature: https://github.com/MichaIng/DietPi/pull/3139
- General | Removed an obsolete OpenMediaVault cron job and binary that was leftover on at least one of our images (NanoPi NEO2) and is not part of the current OMV packages, thus save to remove in every case. Many thanks to @kt1024 for reporting this issue: https://github.com/MichaIng/DietPi/issues/2994
- General | Resolved an issue where install of required APT packages for certain scripts could fail in the rare case that APT lists are outdated and old packages are not available in the repo anymore. Many thanks to @Paulisper for reporting this issue: https://github.com/MichaIng/DietPi/issues/2996
- General | Resolved an issue on some Buster systems where console-setup fails on boot to apply keyboard layout and console settings. Many thanks to @jaxjexjox for reporting this issue: https://github.com/MichaIng/DietPi/issues/2912#issuecomment-532100542
- Rock64/RockPro64 | Resolved an issue where DietPi could not obtain the active network adapter and IP, if onboard Ethernet was used. This is because of a kernel-related bug, which seems to cause Ethernet connection instabilities as well in cases. A workaround is applied to all new Rock(Pro)64 images and via DietPi-Update. Many thanks to @svh1985 for reporting this issue, as well as searching and testing the workaround: https://github.com/MichaIng/DietPi/issues/3066
- DietPi-Update | Resolved an issue where the script did not exit on error: https://github.com/MichaIng/DietPi/issues/3127
- DietPi-Login | Resolved an issue during first run setup, where DietPi-Software was called with mostly wrong whiptail menu dimensions. This lead to info prompts and menus being quite small, in particular the “Install” menu entry, that one needs to select, being only visible when navigating to the bottom. Many thanks to @pbecks1963 for reporting this issue: https://github.com/MichaIng/DietPi/issues/3053
- DietPi-NordVPN | Resolved an issue where the server menu could have wrong entries or even fail, if foreign files were placed inside the config directory. Many thanks to @svh1985 for reporting this issue and implementing a fix: https://github.com/MichaIng/DietPi/pull/3047
- DietPi-Run_NTPD | Resolved an issue where changing time sync mode or mirror, from within time sync error prompt, led to a concurrent script execution. Many thanks to @Sopor for reporting this issue: https://github.com/MichaIng/DietPi/issues/3010
- DietPi-Services | Resolved an issue where single service calls failed if their names contain certain special characters, like dots. Many thanks to @maartenlangeveld for reporting this issue: https://github.com/MichaIng/DietPi/issues/3059
- DietPi-Config | Resolved an issue on RPi where I2C baudrate was not applied correctly, thus selection was ineffective. Many thanks to @flashspys for reporting this issue: https://github.com/MichaIng/DietPi/issues/2966
- DietPi-Config | Resolved an issue on RPi where headless mode did not disable all video outputs and framebuffer as intended, since the used config.txt setting has been removed with recent firmware versions.
- DietPi-Config | Resolved an issue on RPi4 where SDTV/composite video output did not happen when selecting the related resolution menu entries.
- DietPi-Config | On RPi4, vc4-kms-v3d option has been removed from display resolution menu, since the full KMS driver is not supported on RPi4 currently.
- DietPi-Software | Resolved an issue where the script tells you that SQLite will be installed as pre-req, while actually a desktop is required and LXDE will be installed.
- DietPi-Software | X11/Kodi on Odroid C2: Resolved an issue on Odroid C2 where Kodi failed to start. GPU drivers and X11 config will be updated during DietPi-Update to cover this issue. Many thanks to @alexeylutskov for reporting this issue and testing the fix: https://github.com/MichaIng/DietPi/issues/3028
- DietPi-Software | Kodi: Resolved an issue where Kodi failed on RPi Buster and RPi4. Many thanks to @GulyFMG, @derdershat and @jonyskids for reporting this issue, searching and testing workarounds: https://github.com/MichaIng/DietPi/issues/3031
- DietPi-Software | Gitea: Resolved an issue where install fails on ARMv7 systems. Many thanks to @maschiw for reporting this issue: https://github.com/MichaIng/DietPi/issues/2959
- DietPi-Software | Node-RED: Resolved an issue where install fails due to missing data dir creation. Many thanks to @Orfait for reporting this issue: https://github.com/MichaIng/DietPi/issues/2975
- DietPi-Software | Node-RED: Resolved an issue where user creation fails if “gpio” group is not present. Many thanks to @marcobrianza for reporting this issue: https://github.com/MichaIng/DietPi/issues/2975#issuecomment-513917360
- DietPi-Software | OpenVPN: Resolved an issue where install failed on Debian Buster due to a new easy-rsa version with changed commands and options. Now the most recent easy-rsa is manually downloaded on all systems to generate server and client key + cert with modern methods and the client config is slightly updated to match modern settings.
- DietPi-Software | XRDP: On Stretch, new the version from backports is installed. This resolves a critical issue where /etc/profile was not loaded to the session and, due to incomplete $PATH variable, important system binaries were not available on terminal emulators which broke many install and upgrade tasks. Furthermore this resolves an issue where install and connection of XRDP failed if IPv6 was disabled. Many thanks to @aspinks for the debug session which allowed us to track the issue down to its root: https://github.com/MichaIng/DietPi/issues/3017
- DietPi-Software | Sonarr: Resolved an issue where install failed due to an outdated APT repository key. Many thanks to @GregoryDosh and @GulyFMG for reporting this issue: https://github.com/MichaIng/DietPi/issues/3029
- DietPi-Software | Plex Media Server: Resolved an issue where DietPi-Update failed for versions prior to v6.23, due to the obsolete Plex Media Server dev2day repository being offline now. This repo is now removed via pre-patches, prior to G_AGUP being called. During regular patches PMS is reinstalled, applying the new official APT repo. Many thanks to @p-roman for reporting this issue: https://github.com/MichaIng/DietPi/issues/3038
- DietPi-Software | Pi-hole: Resolved an issue, where the blocking page was only shown, if the blocked URL contained the domain only, without any appending path: https://github.com/MichaIng/DietPi/pull/3072
- DietPi-Software | TigerVNC: Resolved an issue on Debian Buster, where the VNC connection fails immediately due to an external bug, if no read-only password has been applied via vncpasswd. Many thanks to @Trunkzeh for reporting this issue and providing the workaround: https://github.com/MichaIng/DietPi/issues/3070
- DietPi-Software | TigerVNC: Resolved minor error messages on login and in logs: “No session for PID …”, “DE is (null); No desktop environnement set, fallback to LXDE”, “Use of uninitialized value $proto in socket at /usr/bin/tigervncserver”
- DietPi-Software | Netdata: Resolved an issue where install failed on Stretch systems. Many thanks to @Velociraptor85 for reporting this issue: https://github.com/MichaIng/DietPi/issues/3062
- DietPi-Software | Amiberry: Resolved an issue where install failed on Buster due to changed library package version. The SDL2 library has been recompiled for Buster with minimal dependencies, thus X11 does not need to be installed anymore. Many thanks to @TuKo1982 for reporting this issue: https://github.com/MichaIng/DietPi/issues/3104
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: https://github.com/MichaIng/DietPi/pull/3162
- DietPi-Config | Enabling WiFi + Ethernet adapters, both on different subnets, breaks WiFi connection in some cases: https://github.com/MichaIng/DietPi/issues/2103
- RPi | On TigerVNC virtual desktop, LXAppearance hangs on dbus-launch: https://github.com/MichaIng/DietPi/issues/1791
- Odroid C2 | Some WiFi adapters do no work as hotspot: https://github.com/MichaIng/DietPi/issues/1955
- Odroid XU4 | Kodi freezes shortly on video playback: https://github.com/MichaIng/DietPi/issues/2584
- Rock64 | 3.5mm A/V jack is currently not functional: https://github.com/MichaIng/DietPi/issues/2522
- DietPi-Software | Node-RED: Pre-installed modules cannot be updated via web UI: https://github.com/MichaIng/DietPi/issues/2073
- DietPi-Software | Raspimjpeg: With Lighttpd, streaming mjpeg does not work: https://github.com/MichaIng/DietPi/issues/1747
- DietPi-Software | MATE desktop: When logging in as root, desktop items and right-clock context menu is missing: https://github.com/MichaIng/DietPi/issues/3160
For all additional issues that may appear after release, please see the following link for active tickets: https://github.com/MichaIng/DietPi/issues