Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v8.4 #5460

Merged
merged 64 commits into from
Apr 30, 2022
Merged

Release v8.4 #5460

merged 64 commits into from
Apr 30, 2022

Conversation

MichaIng
Copy link
Owner

@MichaIng MichaIng commented Apr 27, 2022

v8.4

(2022-04-30)

New images

  • NanoPi M2/T2/Fire2 | We updated our NanoPi 2 series image to be shipped with Linux 4.4, the latest Linux version for the S5P4418 SoC, provided by FriendlyELEC. It is compatible will all FriendlyELEC S5P4418 SBCs: NanoPi 2, NanoPi M2, NanoPC T2, NanoPi Fire2A, NanoPi 2 Fire and NanoPi S2. Sadly systems running the old image cannot be upgraded, since the new U-Boot requires more space and hence a different partitioning. The new image ships with two scripts to flash U-Boot and to change the U-Boot environment/config: One can now edit /boot/u-boot/env.txt and apply the changes by running /boot/u-boot/flash_env.sh. Run fw_printenv to see the current U-Boot environment, also to get an idea of available settings. Kernel, U-Boot, firmware and these scripts are installed as part of a self-hosted "firmware-nanopi2" package. The kernel sources can be found at https://github.com/friendlyarm/linux/tree/nanopi2-v4.4.y, so that headers can be compiled. We will probably provide a kernel headers package as well, if there is a demand, e.g. to enable the DKMS-based WireGuard VPN server software option.
  • Odroid XU4 | We updated our Odroid XU4 image to be shipped with Linux 5.4. Sadly systems running the old image cannot be upgraded, since the new U-Boot config requires a single ext4 partition without a dedicated boot partition.

Removed software

  • OpenBazaar | This software option has been removed from DietPi. The original project has been officially abandoned a while ago and a fork we recently switched to sadly doesn't show any activity anymore, leaving broken installs on ARM and no fully compatible clients. Since we really like the approach, as fast as there is a reliable and trustable revival of OpenBazaar, we will re-implement it, but for now it simply isn't functional. If you have OpenBazaar still installed on your DietPi system, see here for ways to uninstall it: DietPi-Software | OpenBazaar: Remove software option #5465

CLI changes

  • DietPi-Set_software | The "apt-cache" command has been renamed to "apt" to better reflect its options, which do not cover the APT cache only, but APT lists and the location of the downloaded package archive as well. For backwards compatibility, "apt-cache" however remains valid for now.

Changes

  • Security | Access permissions for /etc/sudoers.d/dietpi have been hardened to comply with best practice. Many thanks to @fmunteanu for reporting this issue: Wrong sudoers.d file permissions #5441
  • DietPi-Config | It is now possible toggle APT list compression. APT package lists are xz-compressed by default on DietPi, which reduces disk writes during APT updates and disk usage of APT lists by about 80%. But it slows down APT installs/upgrades, especially when a large number of packages is installed/upgraded, since parsing compressed lists for e.g. building the dependency tree is done quite inefficiently. The option can be found in "dietpi-config" > "Advanced Options" > "APT".
  • DietPi-Software | The webserver, desktop and browser "preference" menus have been removed, in favour of an interactive dialogue once respective dependant software is to be installed. Those menus have always caused confusion, since selecting e.g. a specific desktop didn't cause this desktop to be installed, unless another software was selected which requires a desktop to work. For automated first run installs, the respective dietpi.txt settings are still respected.
  • DietPi-Software | Box86: On ASUS Tinker Board, compiling is now done with an optimised build target flag. You can update Box86 by reinstalling it: dietpi-software reinstall 62
  • DietPi-Software | Box64: On Odroid N2, compiling is now done with an optimised build target flag. You can update Box64 by reinstalling it: dietpi-software reinstall 197
  • DietPi-Software | VirtualHere: On new installs and reinstalls, VirtualHere is now installed to /opt/virtualhere to align with most other software options. Logging is now done to system log, viewable via "journalctl -u virtualhere", instead of using the /var/log/virtualhere.log plain text file. By default, the system hostname is now used as VirtualHere server name, instead of the hardcoded "DietPi". An existing config file is never touched on reinstalls.
  • DietPi-Software | rTorrent: The ruTorrent web interface is now reinstalled cleanly, i.e. configs, 3rd party plugins and themes are preserved but all other files are removed before new ruTorrent files are installed. Many thanks to @shanew1694 for reporting a related issue with remaining obsolete files: Can't seem to update. #5161 (comment)

Fixes

  • Network | Resolved an issue on some Armbian based systems where the network interface naming changed unintentionally after a kernel upgrade: https://dietpi.com/phpbb/viewtopic.php?t=10229
  • DietPi-Config | Resolved an issue on RPi where disabling and re-enabling Bluetooth failed, since the hciuart.service cannot be restarted until reboot after it was stopped once. In the same turn, this also resolved an issue in DietPi-PREP where the service is still running after package removal, while trying to disabling it fails as of the missing service file. Many thanks to @Mausy5043 for reporting this issue: DietPi-PREP | stopping hciuart service is failing #5435
  • DietPi-Software | Chromium: Resolved an issue on Raspberry Pi Buster systems where the installation failed because of a syntax error. Many thanks to @bbmak for reporting this issue: https://dietpi.com/phpbb/viewtopic.php?t=10258
  • DietPi-Software | Tor/Unbound: Resolved an issue where IPv6 usage was assumed only based on the dietpi.txt setting instead of on whether IPv6 can really be used for Internet connections. E.g. when a VPN connection is established, usually IPv6 is disabled to prevent IPv6 leaks, without changing the general dietpi.txt setting. Tor and Unbound service starts however fail then, trying to bind to the IPv6 port. If the adapter has an IPv6 address assigned, but no IPv6 default route, binding to the IPv6 port succeeds, but Internet connections via IPv6 are not possible, which isn't better. On the other hand, using IPv4 only while IPv6 is enabled, has no real downsides. Many thanks to @Wgsem for reporting this issue: DietPi-Software | Unbound: Toggle IPv6 based on present IPv6 address #5412
  • DietPi-Software | Python 3: Updated the workaround for ARMv6/7 Buster systems where installing numpy or any module which depends on numpy failed. It was accidentally applied only on Raspberry Pi 2 and earlier, while it should have been applied to all ARMv6/7 Buster systems. Additionally, all numpy >=0.21.5 versions are now blocked, since the recent v0.21.6 fails to compile for the same reason.
  • DietPi-Software | Single File PHP Gallery: Resolved the failing installation since a new version is available and the old download link has become invalid. Many thanks to @dodo1967 for reporting this issue: Unable to install single file php gallery #5415
  • DietPi-Software | WiFi Hotspot: Resolved an issue where the WiFi country code was not applied when the WiFi Hotspot was installed via automated first run setup. Many thanks to @matteocarnelos for reporting this issue: DietPi-Software | WiFi Hotspot: Set country code during installation #5407

MichaIng and others added 30 commits April 3, 2022 20:37
- CI | Re-enable all optional shellcheck checks
- Coding | Address all optional shellcheck annotations
- README | Remove CodeFactor batch, as we switched to run ShellCheck via GitHub actions
- Network | Resolved an issue on some Armbian based systems where the network interface naming changed unintentionally after a kernel upgrade: https://dietpi.com/phpbb/viewtopic.php?t=10229
- DietPi-Set_hardware | Mute visual-only syntax error on non-RPi systems
- DietPi-Software | Chromium: Resolved an issue on Raspberry Pi Buster systems where the installation failed because of a syntax error. Many thanks to @bbmak for reporting this issue: https://dietpi.com/phpbb/viewtopic.php?t=10258
- DietPi-Software | Tor/Unbound: Resolved an issue where IPv6 usage was assumed only based on the dietpi.txt setting instead of on whether IPv6 can really be used for Internet connections. E.g. when a VPN connection is established, usually IPv6 is disabled to prevent IPv6 leaks, without changing the general dietpi.txt setting. Tor and Unbound service starts however fail then, trying to bind to the IPv6 port. If the adapter has an IPv6 address assigned, but no IPv6 default route, binding to the IPv6 port succeeds, but Internet connections via IPv6 are not possible, which isn't better. On the other hand, using IPv4 only while IPv6 is enabled, has no real downsides. Many thanks to @Wgsem for reporting this issue: #5412
- DietPi-Config | Network Options: Show IPv6 status based on dietpi.txt setting instead of whether there is an actual IPv6 address assigned. IPv6 can be temporarily disabled, e.g. when connecting to a VPN to avoid IPv6 leaks, or it could have been disabled by custom configs or other means, which are out of our control. This setting shall only toggle the DietPi controlled sysctl configuration file which disables IPv6 from boot on for all network interfaces.
- DietPi-Build | Add support for NanoPi 2 series, using a dedicated ext4 boot partition
- DietPi-PREP | Add support for NanoPi 2 series, using our Linux 4.4 firmware package
- DietPi-PREP | Skip CRDA installation from Bookworm on, where it is not available anymore. From Debian POV it is obsolete, since modern Linux versions pull regulatory info/country code themselves, but the open question remains about how to override a possibly wrong kernel decision and how to comfortably apply a country code when using the WiFi adapter as access point. "iw reg set" can be used (via udev rules or /etc/network/interfaces "up"), wpasupplicant and probably hostapd allow to set the country code as well, so there are way, and we need to find the one that suites best the DietPi use cases.
- DietPi-PREP | Typo
- DietPi-Build | Raise NanoPi 2 series root partition size
- DietPi-PREP | Do not install initramfs-tools on NanoPi 2 series, since it ships with a fixed initramfs
- DietPi-Build | Fix non-FAT boot filesystem generation
- DietPi-PREP | Enable only ttyAMA0 serial console (default debug port) on NanoPi 2 series
- DietPi-Build | Create first partition at 4 MiB on NanoPi 2 series
- DietPi-PREP | Add some checks for NanoPi 2 series to assure our firmware package is not installed on incompatible base images/partitioning
- DietPi-Software | Fix syntax: Arrays cannot be passed that way as variables to functions or commands. This instead assignes a simple variable with "(value1 value2 ...)" as string. So the array needs to be assigned with as dedicated command in all cases.
- DietPi-Software | ownCloud/Nextcloud: Omit Nginx version on error response
- DietPi-Software | Python 3: Updated the workaround for ARMv6/7 Buster systems where installing numpy or any module which depends on numpy failed. It was accidentially applied only on Raspberry Pi 2 and earlier, while it should have been applied to all ARMv6/7 Buster systems. Additionally, all numpy >=0.21.5 versions are now blocked, since the recent v0.21.6 fails to compile for the same reason.
- CHANGELOG | NanoPi M2/T2/Fire2 | We updated our NanoPi 2 series image to be shipped with Linux 4.4, the latest Linux version for the S5P4418 SoC, provided by FriendlyELEC. It is compatible will all FriendlyELEC S5P4418 SBCs: NanoPi 2, NanoPi M2, NanoPC T2, NanoPi Fire2A, NanoPi 2 Fire and NanoPi S2. Sadly systems running the old image cannot be upgraded, since the new U-Boot requires more space and hence a different partitioning. The new image ships with two scripts to flash U-Boot and to change the U-Boot environment/config: One can now edit /boot/u-boot/env.txt and apply the changes by running /boot/u-boot/flash_env.sh. Run fw_printenv to see the current U-Boot environment, also to get an idea of available settings. Kernel, U-Boot, firmware and these scripts are installed as part of a self-hosted "firmware-nanopi2" package. The kernel sources can be found at https://github.com/friendlyarm/linux/tree/nanopi2-v4.4.y, so that headers can be compiled. We will probably provide a kernel headers package as well, if there is a demand, e.g. to enable the DKMS-based WireGuard VPN server software option.
- DietPi-Software | Box86: On ASUS Tinker Board, compiling is now done with an optimised build target flag. You can update Box86 by reinstalling it: dietpi-software reinstall 62
- DietPi-Software | Box64: On Odroid N2, compiling is now done with an optimised build target flag. You can update Box64 by reinstalling it: dietpi-software reinstall 197
- DietPi-Software | Box84/Box64: Update fallback URLs to latest version
- CHANGELOG | Typos
- DietPi-Software | Single File PHP Gallery: Resolved the failing installation since a new version is available and the old download link has become invalid. Many thanks to @dodo1967 for reporting this issue: #5415
- DietPi-Software | VirtualHere: Move binary and config from /etc/vhusbd to /opt/virtualhere to better align with other software options. Do never overwrite existing configs and use the hostname as default ServerName instead of "DietPi". Start the service after network has been configured and log to syslog instead of log file.
- DietPi-Software | Webmin: Remove obsolete workaround due to upstream fix
- DietPi-Config | Prevent the attempt to install CRDA and set WiFi country code on Debian Bookworm and above. The crda package is not available anymore, kernels are supposed to obtain it from wireless-regdb themselves.
- DietPi-Config | It is now possible toggle APT list compression. APT package lists are xz-compressed by default on DietPi, which reduces disk writes during APT updates and disk usage of APT lists by about 80%. But it slows down APT installs/upgrades, especially when a large number of packages is installed/upgraded, since parsing compressed lists for e.g. building the dependency tree is done quite inefficiently. The option can be found in "dietpi-config" > "Advanced Options" > "APT".
- DietPi-Set_software | The "apt-cache" command has been renamed to "apt" to better reflect its options, which do not cover the APT cache only, but APT lists and the location of the downloaded package archive as well. For backwards compatibility, "apt-cache" however remains valid for now.
- DietPi-Set_software | When using the "allo eth_static" command to apply static Ethernet interface settings, it is now possible to leave further positional arguments (address, gateway, netmask, dns-nameservers) empty (empty string '') or skipping the last ones. Only the defined non-empty arguments will be applied while other settings remain unchanged.
- DietPi-Software | Gitea: Update fallback URL
- Security | Access permissions for /etc/sudoers.d/dietpi have been hardened to comply with best practice. Many thanks to @fmunteanu for reporting this issue: #5441
+ DietPi-PREP | Odroid C1/XU4: Fix image detection when it got built from scratch
- Odroid C1 | Remove logo from boot config
- DietPi-PREP | Reorder device list
- META | Backwards merge beta > dev
- RC up
@MichaIng MichaIng added this to the v8.4 milestone Apr 27, 2022
MichaIng added 12 commits April 28, 2022 01:15
- CHANGELOG | Set v8.4 release PR and fix one typo
- DietPi-Globals | Minor
- DietPi-Build | Move all image build related scripts and config into respective .build sub directory of the repository to clean up the parent dir
- DietPi-PREP | Rename script to "DietPi-Installer", which better reflects what it is doing: installing DietPi on the Debian base image
- DietPi-Installer | Remove support and configs for Meveric's legacy U-Boot images. All Ordoids have been moved to Armbian kernel for now
- OpenBazaar | This software option has been removed from DietPi. The original project has been officially abandoned a while ago and a fork we recently switched to sadly doesn't show any activity anymore, leaving broken installs on ARM and no fully compatible clients. Since we really like the approach, as fast as there is a reliable and trustable revival of OpenBazaar, we will re-implement it, but for now it simply isn't functional. If you have OpenBazaar still installed on your DietPi system, see here for ways to uninstall it: #5465
- DietPi-Patches | Remove obsolete OpenBazaar install state
- DietPi-Software | Make the serial console prompt on first run setup more informative, but with a clearer statement that it is safe to disable it when unsure what it is.
- DietPi-Build | Add support for generating RPi and Sparky SBC images with pre-installed Allo GUI
- RC up
- DietPi-Globals | G_WHIP: Add a new optional G_WHIP_NOCANCEL variable, which, when set to 1, hides the cancel button on inputbox, menu and checkbox dialogues.
- DietPi-Software | Add the new G_WHIP_NOCANCEL=1 feature to hide the cancel button on dependency selection menus, where a choice is currently required. We may re-add it as "Abort" button in next release, but it is not so trivial since we want the default/dietpi.txt selection on automated first run installs, where no input can be done in which case all whiptail menus are cancelled automatically.
- DietPi-Build | Workaround invalid TERM on login in GitHub runner container
- DietPi-Build | Satisfy shellcheck
- DietPi-Build | Fix bashrc.d path
@MichaIng MichaIng marked this pull request as ready for review April 30, 2022 21:47
MichaIng added 4 commits May 1, 2022 00:14
- DietPi-Build | Workaround for failing pings in GitHub action runners
- DietPi-Build | Raise size of loop device for Allo GUI image to 2 GiB
- DietPi-Build | Fix loop device references
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Open Beta v8.4 | Please help testing and hardening the upcoming release
2 participants