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

Beta v6.32.0 #3733

Merged
merged 155 commits into from
Aug 27, 2020
Merged

Beta v6.32.0 #3733

merged 155 commits into from
Aug 27, 2020

Conversation

MichaIng
Copy link
Owner

@MichaIng MichaIng commented Aug 25, 2020

Beta v6.32.0

(27/08/20)

API Changes

  • DietPi-Set_swapfile | Running the script without input arguments does not print the current swap file location and size anymore but will apply the settings stored in dietpi.txt, refresh the current swap file or apply defaults as fallback. Currently active swap files can be reliably checked via /proc/swaps or htop.

Changes / Improvements / Optimisations

  • NanoPi NEO3 | Initial support for this SBC has been added.
  • NanoPi R2S | Initial support for this SBC has been added.
  • NanoPi K2 | Initial support for this SBC has been added.
  • DietPi-Set_swapfile | Added support for zram-based swap space. Use "zram" as swap location to have a zram device created (persistently via udev rule) at /dev/zram0 and used for compressed in-memory swap space. The auto-size option "1" will result in a zram size of 50% of physical RAM size, else the MiB value will be used, as long as its smaller than physical RAM size. Many thanks to @rickalm for pushing this topic with an initial implementation: DietPi-Set_swapfile | Add initial zram support #3705
  • DietPi-Drive_Manager | For NTFS mounts, the "big_writes" mount option is now added by default, which reduces CPU load and by this may increase performance. Many thanks to @balexandrov for suggesting this enhancement: Large file write on USB disk leads to freeze #3330 (comment)
  • DietPi-Config | Added selection of schedutil and userspace CPU frequency governors. Schedutil is a modern dynmic governor which sets frequency tightly related and according to metrics of the CPU scheduling driver itself. Userspace is a no-op governor, i.e. it does not touch CPU frequencies at all which allows setting manual/custom frequencies according to own metrics or via scripts. Read more about native Linux CPU frequency scaling: https://www.kernel.org/doc/html/latest/admin-guide/pm/cpufreq.html#generic-scaling-governors
  • DietPi-Config | RPi: Removed the option to switch the deprecated max_usb_current setting in config.txt. Max USB current is now enabled by default via firmware on all RPi models: Clarification about "max_usb_current" deprecation raspberrypi/documentation#1655
  • DietPi-LetsEncrypt | Lighttpd: Updated our default SSL cipher to match newer standards, still intermediate and compatible with Debian Stretch (Lighttpd v1.4.45). Additionally our config file names have been adjusted to use lighty-enable|disable-mod and priority prefixes to allow ordering own custom configs/vhosts more easily around them. Many thanks to @PanosssD for making us aware of this: Lighttpd vhost problem #3707
  • DietPi-Software | Komga: FOSS home server for comics and mangas, now available for install as ID 179. Many thanks to @himura95 for providing the implementation: DietPi-Software | Komga: FOSS comic/manga server #3403
  • DietPi-Software | Jellyfin: A FOSS web interface media streaming server available for install. Many thanks to all who voted for it: https://feathub.com/MichaIng/DietPi/+63
  • DietPi-Software | Airsonic: It is now available on Debian Buster systems since Java 11 support has been added. Many thanks to @linxiaopi for pointing us at the required re-evaluation: Airsonic missing from Dietpi-Software selection #3732
  • DietPi-Software | On the uninstall information prompt, the info has been added that uninstalling usually means that related userdata and configs are purged as well. Additionally "dietpi-software reinstall " is mentioned now as alternative to repair/update installed software. Many thanks to @kpine for doing this request: Uninstalling Docker deletes volumes #3550
  • DietPi-Software | Python pip: We migrated this software selection to a Python3/pip3 install only, due to Python2 EOL in 2020/01. Where possible, dependant software selections have been migrated to Python3 builds, where not possible, Python2/pip2 is installed separately for now. We hope that most affected software titles will do Python3 releases soon, otherwise we will remove them form our portfolio, at latest in spring 2021. The strongest reason for this is that next Debian Bullseye (summer 2021) will not ship Python2 packages anymore.
  • DietPi-Software | SABnzbd: Migrated to a Python3-based install.
  • DietPi-Software | OctoPrint: On Debian Buster and up, migrated to a Python3-based install.
  • DietPi-Software | Wordpress: Plugins can now be installed and the internal updater used OOTB without the need to manually apply correct file permissions first. Many thanks to @Joulinar for implementing this: DietPi-Software | change ownership for /var/www/wordpress/ #3720
  • DietPi-Software | ProFTPD: On fresh installs, reverse DNS lookups are disabled by default now by adding "UseReverseDNS off" to /etc/proftpd/proftpd.conf. This increases login speeds, in case dramatically, depending on reverse DNS server. Additionally file uploads can now be resumed by default via "AllowStoreRestart On" and members of the "dietpi" group have write access to uploaded files ("Umask 002") to increase OOTB compatibility with media and file sharing software. Many thanks to @bbsixzz for doing these suggestions: proftpd slow ftp login #3727
  • DietPi-Software | HTPC Manager: Migrated to a Python3-compatibe fork by @gmiranda (https://github.com/gmiranda/HTPC-Manager), since the previous fork stopped development. Please help test, and when possible contribute to this project to keep it alive. We'll do minimal tests and assure the basic install and web interface works fine from Debian Stretch till Debian Bullseye.

Bug Fixes

  • General | Resolved an issue where enabling or disabling IPv6 removed the expected symlink at /etc/sysctl.d/99-sysctl.conf with its actual target file. This happened when using dietpi-config network options and as well during firstrun setup when dietpi.txt choices are applied. The symlink is recreated, if missing, on all DietPi systems with next update.
  • General | Resolved an external bug where the haveged entropy daemon failed to start on some ARM boards with the current version shipped with Debian Buster. On Buster ARMv7 and ARMv8 systems, a new package from Debian Bullseye is installed with this DietPi update, which contains the upstream fix: Fix segfault on arm machines jirka-h/haveged#7
  • DietPi-Benchmark | Resolved an issue where file system benchmarks failed. Many thanks to @dbambus for reporting this issue: Dietpi-benchmark - Syntax error #3672
  • DietPi-Config | Resolved an issue where RPi onboard Bluetooth is attempted to be enabled on RPi models without onboard Bluetooth. On those models, now only the generic Bluetooth packages and services are installed and enabled. Many thanks to @TASSDevon for reporting this issue: DietPi-Config | Support USB Bluetooth on RPi #3611
  • DietPi-Software | Node.js: Resolved an issue where the installer internet connection check fails due to new nodejs.org HTTPS redirection. For now we use our own fork.
  • DietPi-Software | HTPC Manager: Resolved an issue where install failed due to missing build-essential dependency.
  • DietPi-Software | HTPC Manager: Resolved an issue where the internal updater failed due to missing git meta files.
  • DietPi-Software | EmonPi: Resolved a failing primary UART activation on install.
  • DietPi-Software | PHP: Resolved an issue where on pre-v6.23 systems the PHP upgrade from v7.0/7.1 to v7.2/7.3 did not work as expected. Many thanks to @illusive-c for reporting this issue: Error while upgrading Diet-pi #3670
  • DietPi-Software | Xfce: Resolved an issue where the install and autostart of xcompmgr composition manager broke the xfwm4 internal one, leading to ineffective appearance settings and black borders around windows in certain cirumstances. Many thanks to @TamaTamaGoGo for reporting this issue: xfce show black frame at applications or menu #3665
  • DietPi-Software | Pi-hole: Resolved an issue with Apache webserver, where CORS check failed if the Referrer-Policy header has been set to "no-referrer". If this is the case, the Pi-hole Apache config now sets it to the second strict "same-origin", which does not break the Pi-hole admin panel. Many thanks to @Phil1988 for reporting this issue: Pihole WebInterface Error Failed CORS: null #3675
  • DietPi-Software | qBittorrent: Resolved an issue where setting the web UI port via config file or UI is overridden by the service file command option. Many thanks to @linxiaopi for reporting this issue: qBittorrent: port change does not persist after reboot #3660
  • DietPi-Software | Fail2Ban: Resolved an issue where sshd filter modes could not be set via jail config since the variable was not passed. Many thanks to @Darwolia for reporting this issue: fail2ban not banning IP adresses and not noticing failed logins over SSH #3697

+ META | Assure dev branch gets all commits from master
+ DietPi-Software | Node.js: Use fixed own installer fork for now: taaem/nodejs-linux-installer#11
+ CHANGELOG | DietPi-Drive_Manager: For NTFS mounts, the "big_files" mount option is now added by default, which reduces CPU load and by this may increase performance. Many thanks to @balexandrov for suggesting this enhancement: #3330 (comment)
+ DietPi-Drive_Manager | For NTFS mounts, add "big_files" option by default which prevents splitting write buffers into 4k chunks. This is generally seen as stable and is the default in new libfuse3: https://unix.stackexchange.com/a/544864
+ DietPi-Drive_Manager | Fix wrong NTFS option: big_files => big_writes
+ CHANGELOG | Fix wrong NTFS option: big_files => big_writes
+ DietPi-Obtain_HW_model | RPi: Remove special model names like alpha, beta or first ECN0001, but differentiate by type A and B only, to simplify statistics. The exact revision can always be estimated through the revision code, if it should become relevant in an individual case.
+ DietPi-Obtain_HW_model | RPi: Merge code for assigning identical hardware info
+ DietPi-Obtain_HW_model | RPi: Reduce the risk that A+ total memory is estimated wrong due to theoretical larger GPU memory split. 262144 KiB is really the upper boarder of what an 256M model can have, probably even 245760 (minus 16 MiB min GPU memory) would be thinkable or using vcgencmd to estimate the exact values (overkill?).
+ DietPi-Obtain_HW_model | Pinebook: We do not add and name suffix anymore as our image works on all revisions
+ DietPi-Survey_report | Add DietPi v6.32 support
+ DietPi-Survey_report | Merge old and new hardware model names to cleanup statistic
+ META | Add .shellcheckrc to define custom shellcheck rules
+ META | Remove .gitattributes for now and re-add specific directives if found required
+ META | Remove .gitignore for now and re-add single directives if found required
+ META | Try to satisfy CodeFactor
+ META | CodeFactor does not seem to support shellcheck source-path currently
+ META | Last attempt to satisfy CodeFactor by disabling a warning that we definitely will no address soon: dollar sign $ to call variables in bash arithmetic (( ))
+ DietPi-Services | Inform and offer to restart a service as well if "Edit" option was used
+ DietPi-Software | Python pip: We migrated this software selection to a Python3/pip3 install only, due to Python2 EOL in 2020/01. Where possible, dependant software selections have been migrated to Python3 builds, where not possible, Python2/pip2 is installed separately for now. We hope that most affected software titles will do Python3 releases soon, otherwise we will remove them form our portfolio, at latest in spring 2021. The strongest reason for this is that next Debian Bullseye (summer 2021) will not ship Python2 packages anymore.
+ DietPi-Software | SABnzbd: Migrated to a Python3-based install.
+ DietPi-Software | OctoPrint: On Debian Buster and up, migrated to a Python3-based install.
+ DietPi-Software | HTPC Manager: Resolved an issue where install failed due to missing build-essential dependency.
+ DietPi-Software | HTPC Manager: Resolved an issue where the internal updater failed due to missing git meta files.
+ DietPi-Software | EmonPi: Resolved a failing primary UART activation on install.
+ DietPi-Software | Mopidy: The official Buster repo now supports ARMv8/arm64 as well
+ DietPi-Software | "apt-cache show package" succeeds as well if package is listed as (optional) dependency/conflict/... by another package, hence is not a reliable measure. In case of python3-distutils on Stretch this causes an install failure if stretch-backports suite has been added, which contains a few packages that list python3-distutils as optional dependency aside of python3 << 3.6.something where Distutils was moved from stdlib into an own package. Allow to succeed if another package "provides" it, like php7.3-apcu provided by php-apcu or awk provided by mawk and gawk.
+ DietPi-Software | Disable all Python2-only titles for Bullseye, which does not serve Python2 packages anymore
+ DietPi-Software | Several uninstall enhancements
+ Coding | Replace bc decimal calculation with bash-internal printf conversion
+ Coding | Several minor enhancements around prior bc usage
+ DietPi-Cloudshell | Do not disable CPU scene on VM. Most values are "N/A" but usage bar and process count are shown correctly. Let user decide if it's worth it or not.
+ DietPi-Software | Cuberite: Skip obsolete move from "Server" sub dir to parent dir, as the download archive does not contain a top level dir anymore
+ DietPi-Software | Cuberite: Uninstall enhancements
+ DietPi-Software | Cuberite: Adjust download link as of: "Please DO NOT rely on the links below to represent the correct download location for Cuberite at all times, instead use the official download link: https://download.cuberite.org/linux-armhf-raspbian/Cuberite.tar.gz"
+ DietPi-Software | Cuberite: Do not run as "dietpi" group since Cuberite does not need to access (R/W) media or downloads and file servers/downloaders/media players do not need to access (R/W) Cuberite files. Lets keep using "dietpi" group for media, downloads and "regular" userdata only, not for software internal data, config and executables.
+ DietPi-Software | Assure that on reinstall all settings are preserved by not overwriting existing webadmin.ini. The new download archive is merged into the existing instance but does not include any variable data or configs.
+ DietPi-Software | Nginx: Use new 512 MiB default max upload size, as a compromise to keep performance up and SD card writes low on usual smaller uploads (pictures, documents, ...), while not risking RAM overload (with swap file enabled) in peek times. Uploads for larger files (disk images, video files, ...) usually require an external drive to hold PHP uploads, either through a large swap file or directly for all uploads.
+ DietPi-Software | PHP: Move session files to tmpfs outside of /tmp and /var/tmp to /run/php_sessions by default
+ DietPi-Software | PHP: Move tmp upload dir back to tmpfs but limit default max upload size, discuss and find balance between performance, disk (SD card) writes and RAM over-usage.
+ DietPi-Software | PHP: Assure that opcache.interned_strings_buffer is never larger than half of opcache.memory_consumption: #2293
+ DietPi-Software | ownCloud/Nextcloud: On <1 GiB devices assure at least 512 MiB swap space are available to stand 512 MiB file uploads + increased PHP cache and session file usage
+ DietPi-Imager | Syntax fixes
+ DietPi-Imager | e2fsck: need terminal for interactive repairs
+ DietPi-Imager | After interactive image content edits, give the system 1 second before unmounting, to avoid "mount is busy"
+ DietPi-Software | NFS Server: rpcbind is a strict dependency of nfs-kernel-server
+ DietPi-Software | NFS Server: Write dietpi_userdata export into own file /etc/exports.d/dietpi.exports to not override existing /etc/exports on (re)install
+ DietPi-Software | Tiny
+ DietPi-Patch | Resolve an issue where on pre-v6.23 system the PHP upgrade from v7.0/7.1 to v7.2/7.3 did not work as expected.
+ DietPi-Services | Do not control PHP versions which are not supported anymore
+ DietPi-Set_hardware | Since rfkill is no core dependency anymore, only use it if the command is found
+ DietPi-Software | Komga: FOSS home server for comics and mangas with web UI
+ DietPi-Software | Komga: Typo
+ DietPi-Software | Airsonic: Re-enable for Buster and Bullseye since Java 11 is now supported
+ DietPi-Software | Airsonic/Subsonic: Do not add the "render" group which is only required for DRM + minor coding
+ CHANGELOG | Airsonic: It is now available on Debian Buster systems since Java 11 support has been added
+ DietPi-Software | Align max memory usage across Java applications
+ DietPi-Software | Komga: Disable file logging, reduce log level to warning. Logs can be seen via "journalctl -u komga"
+ DietPi-Software | Komga: Remove obsolete config options, add "remember me" login feature: #3403 (comment)
@MichaIng MichaIng added the Beta 🧪 Issues specific to the Beta branch testing label Aug 25, 2020
@MichaIng MichaIng added this to the v6.32 milestone Aug 25, 2020
MichaIng and others added 14 commits August 25, 2020 13:09
+ Version up
+ DietPi-Globals | Default version up
README.md | Little contributors text changes, restore information when I joined the project
+ DietPi-Patch | Lighttpd: Rename HTTPS config files to new scheme: #3734
+ DietPi-LetsEncrypt | Lighttpd: Update SSL cipher to still Stretch-compatible intermediate recommendations and remove deprecated SSL compression setting, even it was commented
+ DietPi-LetsEncrypt | Lighttpd: Apply configs via /etc/lighttpd/conf-available/ and lighty-enable|disable-mod commands and use proper priority prefixes for file names. As well use "dietpi-" prefixes as we start to do for all config files we place.
+ DietPi-LetsEncrypt | Lighttpd: Further config file tuning: "https" instead of "letsencrypt" in case we want to support other CAs at a later time and since it can be changed by only changing cert + key file paths; "https_redirect" instead of "redirect" to separate it more clearly from module configs like "mod_redirect" in Apache.
+ Create initial SECURITY.md with information about which and how to report security vulnerabilities
+ DietPi-Config | RPi: Re-enable arm_freq_min as a fix will be shipped with next kernel release
+ DietPi-PREP | Upgrading haveged entropy daemon to fix an issue on ARM with the version shipped by Debian Buster: jirka-h/haveged#7
+ DietPi-Patch | Upgrading haveged entropy daemon to fix an issue on ARM with the version shipped by Debian Buster: jirka-h/haveged#7
+ DietPi-PREP | No need to move to /tmp as we are in the scripts working dir /tmp/$G_PROGRAM_NAME already
+ CHANGELOG | Resolved an external bug where the haveged entropy daemon failed to start on some ARM boards with the current version shipped with Debian Buster
+ DietPi-Services | Syntax: "[[ A || B && C ]]" returns true, if A is true but C is false, i.e. C is not checked if A is true. Use "[[ A || B ]] && [[ C ]]" instead to assure that C is checked in any case.
+ DietPi-Config | RPi: Remove deprecated "Max USB current" option: raspberrypi/documentation#1655
+ DietPi-Software | HTPC Manager: Migrate to new Python3-compatible fork: https://github.com/gmiranda/HTPC-Manager
+ DietPi-Software | HTPC Manager: Fix After=dietpi-boot.service
+ DietPi-Software | HTPC Manager: Remove all untracked files on update, excluding userdata, especially the compiled module .pyc files need to be removed.
+ DietPi-Software | HTPC Manager: Add a syslog identifier to have logs prefixed with "HTPC Manager" instead of with "python"
+ CHANGELOG | Typo
+ DietPi-PREP | Add NanoPi R2S and K2 to device selection menu
+ General | Add initial support for NanoPi R2S (ID=55) and NanoPi K2 (ID=54)
+ shellcheck | Remove ineffective source-path for now
+ DietPi-Config | Show "available" memory as "free" memory as this excludes cache/buffer and hence fits much better what one would expect. The same is true for "used" memory, which should not include file system cache and buffer.
+ DietPi-Config | Fix KiB to MiB conversion for memory values
@MichaIng MichaIng merged commit 65f828e into beta Aug 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Beta 🧪 Issues specific to the Beta branch testing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants