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.26.0 #3112

Merged
merged 186 commits into from
Sep 29, 2019
Merged

Beta v6.26.0 #3112

merged 186 commits into from
Sep 29, 2019

Conversation

MichaIng
Copy link
Owner

@MichaIng MichaIng commented Sep 16, 2019

Beta v6.26.0

(29/09/19)

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: Debian Bullseye | General testing #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: DietPi-Software | Skip setting file permissions globally after each install #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: DietPi-Software | Do APT full/dist-upgrade on firstrun installs #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.
  • 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: DietPi-Globals | Renamed G_USER_INPUTS to G_INTERACTIVE #3041
  • 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: NordVPN improvements | Change up and down script and add item to DietPi-Banner #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: Edit Up and Down scripts from dietpi-nordvpn #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 | 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 | 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 | Added overclocking profiles for RPi4. Many thanks to @aftensleuk for request and valuable suggestions: https://dietpi.com/phpbb/viewtopic.php?f=12&t=6225
  • 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: Service "pihole-FTL" keeps crashing/stopping; both as HW on RPi 2 Mod B+ & as VM pi-hole/FTL#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: DietPi-Software | Pi-hole: Block access to blocking page from web by default #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: DietPi-Software | Gogs: Install latest version from GitHub #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: DietPi-Software | Amiberry: Add support for Buster and RPi4 #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: DietPi-Software | myMPD: Update install steps to avoid deprecations #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: DietPi-Software | WiFi-Hotspot: Unmask service on install and on RPi only overwrite binary for RTL8818CU* chips #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: DietPi-Software | WireGuard: Enable for RPi ARMv6 via Bullseye repo #2997

Bug Fixes

Known/Outstanding Issues

MichaIng added 30 commits July 4, 2019 13:56
+ DietPi-Software | Gitea: Install ARMv6 binaries on ARMv7 systems since ARMv7 builds/binaries are known to fail, thus do not exist for v1.8.X currently
+ CHANGELOG | Init v6.26 entries
+ CHANGELOG | Gitea: Install failure on ARMv7: #2959
+ DietPi-PREP | Tiny spelling and remove double empty lines
+ DietPi-Patch | Little hotfix (on master patch_file) for ARMv7 Gitea installs, since ARMv7 binaries are not available for v1.8.X but ARMv6 binaries are backwards compatible. It is fixed dietpi-software code-wise for v6.26.
+ DietPi-Config | RPi: Fix incorrect I2C baudrate handling on RPi, which as ineffective since the correct config.txt entry is a dtparam
+ General | Raise subversion string to init and allow v6.26 patches
+ DietPi-Config | Allow audio options on VM, since VirtualBox and VMware have virtual sound card emulators which can be used to output and even record sound through the host systems devices
+ DietPi-Config | Minor coding
+ DietPi-Patch | Merge DietPi-Survey settings patches
+ General | Remove Jessie support and special handling from code, which includes Meveric-based Odroid C1 handling
+ General | Merge systemd unit enable/disable + start/stop in one call with "--now" option, available since Stretch
+ DietPi-Obtain_network_details | RPi4 has onboard WiFi
+ DietPi-Obtain_network_details | ROCK Pi 4 has RK3399 chip
+ DietPi-Obtain_network_details | Try to get/preserve UUID from /boot as well, in case sometime went wrong with RAMdisk
+ DietPi-Obtain_network_details | Switch G_HW_ARCH_DESCRIPTION suffix for non 1/2/3/10 from "unknown" to "unsupported", which is more fitting
+ DietPi-Obtain_network_details | Minor code comment wording and format
+ DietPi-LetsEncrypt | Minor coding and align usage info on invalid input argument with other scripts
+ DietPi-Software | Remove TightVNC from install options, which was only supported on Jessie, replaced with TigerVNC on Stretch+
+ DietPi-Run_NTPD | Coding: Skip checking for a state that is by code impossible and uncritical if skipped unintentionally
+ DietPi-Services | Failsafe: Always fall back to main menu if $MENU_TARGETID is somehow invalid, to prevent unlimited loop in case of code error
+ DietPi-LetsEncrypt | Minor coding and wording
+ DietPi-LetsEncrypt | Exit domain loop when valid value has been applied
+ DietPi-LetsEncrypt | Minor menu wording and style
+ DietPi-Software | Sonarr: Switch to long version APT repo key
+ DietPi-Software | Sonarr: Update ARMv8 binary download to new forwarded download URL
+ DietPi-Software | Mono: Use Raspbian repo for all RPis
+ DietPi-Software | Raspotify: Switch APT repo to new "raspotify" code name, "jessie" was just left as link for backwards compatibility
+ DietPi-Software | Add tailing slash to APT repo URLs to avoid one 301 redirect
+ DietPi-Software | Node-RED: Add missing data dir
+ CHANGELOG | Node-RED: Resolved an isssue where install fails because of missing data dir creation
+ DietPi-Patch | Add Node-RED install fix to v6.25 patch file to prevent future updaters running into this issue. It is safe here only, where fresh master code was just downloaded and we exactly know the content. Must be removed with any next branch merge.
+ DietPi-PREP | Disable serial login consoles on virtual machines
+ DietPi-PREP | Remove any autoremove prevention before doing autoremoval, e.g. firmware-linux-free, which is not required on VM. Assure instead that this package is explicitly installed on Native x86_64 PC via firmware meta package. On non x86_64 install misc-nonfree and free firmware packages only to exclude AMD graphics firmware
+ DietPi-PREP | Assure that on VM Realtek firmware is installed if WiFi is selected for certain reason. Generally it is never required due to host network via Ethernet emulation, however it is possible, e.g. for testing reasons.

NB, final firmware stacks:
- ARMbian: Full firmware stack via armbian-firmware package
- x86_64 PC: Full misc firmware stack via firmware-linux meta package, including AMD graphics
- ARM: Full misc firmware stack, excluding AMD graphics
- All non-VM: firmware-realtek for additional Realtek Ethernet support
- All WiFi-selected: All packages that contain WiFi firmware

+ DietPi-PREP | Minor coding
+ DietPi-PREP | Buster is now the current stable release
+ DietPi-Software | Pi-hole: Disable pihole.log by default: pi-hole/FTL#614 (comment)
+ DietPi-Software | Pi-hole: Add Pi-hole specific Lighttpd include config based on: https://github.com/pi-hole/pi-hole/blob/master/advanced/lighttpd.conf.debian
+ DietPi-Software | Lighttpd: Do not create lighttpd.conf backup, since we only edit webroot or fix a Buster upgrade bug, which both is simply required and expected by user to have the just chosen software title + Lighttpd up and running.
+ DietPi-Logclear | Remove special pihole.log handling, which is not required since clearing it does not break the service/process anymore and query logs are holt in database. Also pihole.log is disabled now by default on our Pi-hole installs.
+ DietPi-Logclear | Remove log file exclusion code fragments, which was never really implemented
+ DietPi-Logclear | Further coding enhancements
+ DietPi-Cleaner | Never remove Git, since it is required often for internal updaters, e.g. Pi-hole
+ DietPi-Cleaner | Fix /var/tmp/dietpi/logs/dietpi-ramlog_store removal and use new DietPi-Set_software apt-cache function to clean APT
+ DietPi-Cleaner | Minor coding
+ DietPi-PREP | Disable translated package state files by default. There is no real use for this, it has nothing to do with translations for the CLI/UI of the package/binary, it's just the DPKG status files.
+ DietPi-Patch | Disable DPKG status file translations by default, which have hardly any use, but raise APT update times + disk I/O
+ DietPi-Patch | Do not remove pihole.log, it is still used for rare general dnsmasq logs and is recreated by pihole-FTL service anyway
+ DietPi-Software | Pi-hole: Do not remove pihole.log, it is still used for rare general dnsmasq logs and is recreated by pihole-FTL service anyway
+ DietPi-PREP | Fix cleaning APT cache
+ DietPi-PREP | Fix APT cache clean
+ DietPi-Banner | Only print MOTD if sourcing succeeded and $motd variable is not empty, else (download failed) remove the file to force a  fresh download on next banner print.
+ DietPi-Banner | Do not print any output of sourcing the MOTD file, so only the $motd variable content is printed, if available.
+ DietPi-Banner | Minor coding
+ DietPi-Software | Coding: Simplify menu system to main menu ID only, since sub menus are only single layered, thus allow to proceed or return to main menu only.
+ DietPi-Software | Wording: In case of insufficient free space, show a clear message that install has been aborted.
+ DietPi-Software | Further minor coding and wording
+ DietPi-Software | Mopidy: Resolve a tiny visual-only error about moving data dir into itself. Create data dir as hidden (dot) dir first and rename to final non-hidden name afterwards.
+ DietPi-PREP | Remove possible OpenMediaVault leftovers
MichaIng and others added 29 commits September 21, 2019 18:46
+ DietPi-Patch | WireGuard: Enable auto-rebuild after kernel upgrades on RPi
+ DietPi-FS_partition_resize | Minor coding
+ DietPi-PREP | "parted" is only used by DietPi-Drive_Manager. Actually it could be removed from requirements and instead installed by DietPi-Drive_Manager ondemand, when formatting a drive.
+ DietPi-Imager | Change formula to get starting sector of the root partition

Current method of obtaining starting sector of root partition is making some assumptions that are not always met. When running fdisk you can't assume that the following is always true:
- root partition is the last partition of the disk
- fdisk will not display any warning (like 'Partition table entries are not in disk order.')
DietPi-Imager | lsblk with option -d will not print slave devices, avoiding the need of a subsequent grep
+ DietPi-Software | Remove SDL2 from install options. Instead download and install together with Amiberry only, as we ship very tailored SDL2 builds with minimum dependencies. Add new libSDL2 download for Buster builds.
+ DietPi-Software | Xserver: On RK3399 switch to Mali and X.org packages + config provided by Rockchip
+ DietPi-Software | Xserver: On ASUS TB switch to Mali and X.org packages + config provided by Rockchip
+ DietPi-Software | Xserver: Install new Buster-compatible Mali drivers for RK3399 boards and ASUS TB. Testing required!
+ DietPi-Software | Amiberry: Enable Buster support by installing the new Buster-compatible Mali drivers for ASUS TB and since it does not depend on X11 anymore, install Odroid XU4 Mali drivers separately as well. Testing required!
+ DietPi-PREP | armbian-tools-<distro> is not required by default. It contains Bluetooth firmware update utilities + services for two specific BT chip families. Those as well do some TTY assumptions that are not necessarily true or wanted and override the MAC address, which IMO should not be done without user knowledge.
+ CHANGELOG | Rockchip GPU support re-added
+ DietPi-Software | Amiberry: libSDL2 needs to be stored in tar archives, otherwise symlinks are not preserved
+ DietPi-Globals | Minor coding
+ DietPi-Software | Amiberry: Remove X11-based init for ASUS TB on Buster+
+ DietPi-Software | Amiberry: Add missing libraries to Buster install, which are pulled on Stretch as X11 dependencies
+ DietPi-Update | Log update output to file by redirecting to subshell instead of piping, else G_ERROR_HANDLER cannot exit the script via "kill -INT $$": #3127
+ DietPi-Update | Minor coding and adding some info comments
+ CHANGELOG | DietPi-Update: Resolved an issue where the script did not exit on error
+ DietPi-Software | Docker: Prevent install if kernel version got upgraded and old version overwritten or purged. In this case, where /lib/modules/$(uname -r) is missing, certain Docker service start tasks fail, which makes the APT call fail, leading to follow up errors during dietpi-software run. The user must first reboot to load the new kernel. This is mostly an issue on RPi, where kernel packages are not versioned, thus regular "apt-get upgrade" includes kernel upgrades and those overwrite/purge the old kernel module files.
+ DietPi-Software | For 3rd-party APT repos, if no Bullseye repo is available yet, apply Buster repo instead
+ DietPi-Patch | Mono: Use new Buster repo on Buster/Bullseye systems
+ DietPi-Globals | Minor coding
+ DietPi-Update | Minor: Remove unused variable
+ DietPi-Software | Minor coding and fix wrong variable call
+ DietPi-Cleaner | Fix wrong variable call
+ DietPi-Backup | Fix wrong variable call, minor coding, wording and alignment
+ DietPi-Config | Remove unused variables
+ DietPi-Set_hardware | Reorder Allo.com audio devices, so allo-* does not match before allo-cheapo* and allo-piano-dac*
+ DietPi-Optimal_MTU | Test with dietpi.com by default (Cloudflare CDN)
+ DietPi-Optimal_MTU | Do not test net MTU sizes < 0 => $MTU_SIZE < 29
+ DietPi-Optimal_MTU | Check "ping" command existence and input host connectivity, before starting MTU test loop
+ DietPi-Optimal_MTU | Minor coding: Use direct ping exit code instead of grep error match, since in case of MTU size related error, ping will always exit with error code.
+ DietPi-Optimal_MTU | Failsafe: Double quote input URL
+ CHANGELOG | Update v6.26 release month
@MichaIng MichaIng merged commit 6c5c5a7 into beta Sep 29, 2019
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.

5 participants