diff --git a/.meta/dietpi-build b/.meta/dietpi-build old mode 100644 new mode 100755 diff --git a/.meta/dietpi-cloud-migration b/.meta/dietpi-cloud-migration old mode 100644 new mode 100755 diff --git a/.meta/dietpi-fan_control b/.meta/dietpi-fan_control old mode 100644 new mode 100755 diff --git a/.meta/dietpi-survey_report b/.meta/dietpi-survey_report old mode 100644 new mode 100755 index b79af96024..a9ee23d211 --- a/.meta/dietpi-survey_report +++ b/.meta/dietpi-survey_report @@ -215,7 +215,7 @@ shopt -s extglob [30]='NoMachine' [31]='Kodi' [32]='ympd' - [33]='Airsonic' + [33]='Airsonic-Advanced' [34]='Subsonic' [35]='Logitech Media Server' [36]='Squeezelite' diff --git a/.update/patches b/.update/patches old mode 100644 new mode 100755 index 2eb97e09b1..c520963704 --- a/.update/patches +++ b/.update/patches @@ -233,7 +233,7 @@ _EOF_ [[ -f '/var/lib/dietpi/license.txt' ]] && grep -Eq '^[[:blank:]]*AUTO_SETUP_A(UTOMATED|CCEPT_LICENSE)=1' /boot/dietpi.txt && G_EXEC rm /var/lib/dietpi/license.txt # Update Allo web UI with Squeezelite control fix and Allo Boss2 DAC support - [[ -f '/boot/dietpi/.installed' ]] && grep -q '^[[:blank:]]*aSOFTWARE_INSTALL_STATE\[160\]=2' /boot/dietpi/.installed && /boot/dietpi/dietpi-software reinstall 160 + [[ -f '/boot/dietpi/.installed' ]] && grep -q '^[[:blank:]]*aSOFTWARE_INSTALL_STATE\[160\]=2' /boot/dietpi/.installed && echo 160 >> /var/tmp/dietpi/dietpi-update_reinstalls } Patch_7_4() @@ -520,7 +520,7 @@ Patch_7_8() do [[ -e $i ]] && G_EXEC mv "$i" "/opt${i#/mnt/dietpi_userdata}" done - /boot/dietpi/dietpi-software reinstall 154 + echo 154 >> /var/tmp/dietpi/dietpi-update_reinstalls fi # RPi 400: Inform user about fixed overclocking profiles @@ -569,12 +569,38 @@ Patch_7_9() then G_WHIP_BUTTON_CANCEL_TEXT='No' G_WHIP_YESNO '[ INFO ] Changed DietPi-Dashboard TCP port \nThe default TCP network port for the DietPi-Dashboard has been changed from 8088 to 5252 to resolve a port conflict with InfluxDB. However, if you do not use or plan to use InfluxDB, port 8088 does not cause any issues. -\nDo you want to apply this change as well to your DietPi-Dashboard installation?' && G_CONFIG_INJECT 'port[[:blank:]]' 'port = 5252' /opt/dietpi-dashboard/config.toml && /boot/dietpi/dietpi-software reinstall 200 +\nDo you want to apply this change as well to your DietPi-Dashboard installation?' && G_CONFIG_INJECT 'port[[:blank:]]' 'port = 5252' /opt/dietpi-dashboard/config.toml && echo 200 >> /var/tmp/dietpi/dietpi-update_reinstalls fi # ownCloud/Nextcloud: Disable maintenance mode once manually, since DietPi-Services enabled of before this update but doesn't handle/disable it anymore afterwards. [[ -f '/var/www/owncloud/config/config.php' ]] && grep -Eq "^[[:blank:]]*'maintenance'[[:blank:]]+=>[[:blank:]]+true,\$" /var/www/owncloud/config/config.php && G_EXEC sed -Ei "s/^[[:blank:]]*'maintenance'[[:blank:]]+=>[[:blank:]]+true,\$/ 'maintenance' => false,/" /var/www/owncloud/config/config.php [[ -f '/var/www/nextcloud/config/config.php' ]] && grep -Eq "^[[:blank:]]*'maintenance'[[:blank:]]+=>[[:blank:]]+true,\$" /var/www/nextcloud/config/config.php && G_EXEC sed -Ei "s/^[[:blank:]]*'maintenance'[[:blank:]]+=>[[:blank:]]+true,\$/ 'maintenance' => false,/" /var/www/nextcloud/config/config.php + + # RPi: Fix forced max frequencies: https://github.com/MichaIng/DietPi/issues/5088 + (( $G_HW_MODEL < 10 )) && grep -Eq '(.){100}' /boot/config.txt && G_EXEC sed -Ei 's/^((.){99})..*$/\1/' /boot/config.txt + + # Blynk Server: Apply Log4Shell mitigation + [[ -f '/etc/systemd/system/blynkserver.service' ]] && ! grep -q '\-Dlog4j2.formatMsgNoLookups=true' /etc/systemd/system/blynkserver.service && G_EXEC sed -i 's/java -jar/java -Dlog4j2.formatMsgNoLookups=true -jar/' /etc/systemd/system/blynkserver.service + + # Reinstall Airsonic to migrate to Airsonic-Advanced and mitigate Log4Shell for it once and for all: https://github.com/MichaIng/DietPi/pull/4948 + if [[ -f '/boot/dietpi/.installed' ]] && grep -q '^[[:blank:]]*aSOFTWARE_INSTALL_STATE\[33\]=2' /boot/dietpi/.installed && ! grep -q 'Airsonic-Advanced' /etc/systemd/system/airsonic.service + then + G_WHIP_MSG '[ INFO ] Reinstalling Airsonic to migrate to Airsonic-Advanced +\nThe classic Airsonic project has been archived by its maintainer and it suffers from the critical Log4Shell security vulnerability: +- https://dietpi.com/blog/?p=1172 +\nAirsonic-Advanced is an actively developed successor which does not use the related Log4j library and can be used as a direct replacement for classic Airsonic, migrating all data and settings automatically. +\nAirsonic will be reinstalled as part of this update to migrate to Airsonic-Advanced. Afterwards, we recommend to check out the new "Credentials" settings, create a new safer encrypted password and remove the old one.' + # Migrate to "dietpi" as primary group and remove obsolete "airsonic" group + getent passwd airsonic > /dev/null && G_EXEC usermod -g dietpi airsonic + getent group airsonic > /dev/null && G_EXEC groupdel airsonic + echo 33 >> /var/tmp/dietpi/dietpi-update_reinstalls + fi + + # Inform user about Stretch branch + G_WHIP_MSG '[ INFO ] You Debian version is not supported anymore +\nYou are running a system based on Debian Stretch, for which support has now been dropped by DietPi. Your system has been migrated to a dedicated update branch, with a last batch of bug and security patches applied. +\nYou can either flash one of our new Debian Bullseye based images, or upgrade your system manually, as described in our docs: +- https://dietpi.com/docs/usage/#how-to-upgrade-to-buster' } # v6.35 => v7 migration @@ -603,5 +629,15 @@ do G_DIETPI-NOTIFY 0 "Patched to DietPi v$G_DIETPI_VERSION_CORE.$G_DIETPI_VERSION_SUB" done +# Performing reinstalls +if [[ -f '/var/tmp/dietpi/dietpi-update_reinstalls' ]] +then + G_DIETPI-NOTIFY 2 'Performing DietPi-Software reinstalls...' + # Coders NB: Assigning to array is not easily possible here since we need to split at newline AND space. + # shellcheck disable=SC2046 + (( $G_DIETPI_INSTALL_STAGE == 2 )) && /boot/dietpi/dietpi-software reinstall $( /etc/systemd/system/airsonic.service [Unit] -Description=Airsonic Media Server (DietPi) +Description=Airsonic-Advanced (DietPi) Wants=network-online.target After=network-online.target remote-fs.target @@ -6943,7 +6943,7 @@ After=network-online.target remote-fs.target SyslogIdentifier=Airsonic User=airsonic WorkingDirectory=/mnt/dietpi_userdata/airsonic -ExecStart=$(command -v java) -Xmx${memory_limit}m -Dairsonic.home=/mnt/dietpi_userdata/airsonic -Dserver.context-path=/airsonic -Dserver.port=8080 -jar /mnt/dietpi_userdata/airsonic/airsonic.war +ExecStart=$(command -v java) -Xmx${memory_limit}m -Dairsonic.home=/mnt/dietpi_userdata/airsonic -Dserver.servlet.context-path=/airsonic -Dserver.port=8080 -jar /mnt/dietpi_userdata/airsonic/airsonic.war [Install] WantedBy=multi-user.target @@ -7378,14 +7378,11 @@ _EOF_ Banner_Installing - # Stretch and ARMv6: Install Java 8 build - local fallback_url='https://github.com/Peterkn2001/blynk-server/releases/download/v0.41.16/server-0.41.16.jar' java= - (( $G_DISTRO < 5 || $G_HW_ARCH == 1 )) && fallback_url='https://github.com/Peterkn2001/blynk-server/releases/download/v0.41.16/server-0.41.16-java8.jar' java='-java8' - # RPi: Install build deps for the "onoff" Node module (( $G_HW_MODEL > 9 )) || DEPS_LIST='python3 make g++' - Download_Install "$(curl -sSfL 'https://api.github.com/repos/Peterkn2001/blynk-server/releases/latest' | mawk -F\" "/\"browser_download_url\": .*\/server-[0-9.]*$java\.jar\"/{print \$4}")" /mnt/dietpi_userdata/blynk/blynkserver.jar + local fallback_url='https://github.com/Peterkn2001/blynk-server/releases/download/v0.41.16/server-0.41.16-java8.jar' + Download_Install "$(curl -sSfL 'https://api.github.com/repos/Peterkn2001/blynk-server/releases' | mawk -F\" '/"browser_download_url": ".*\/server-[0-9.]+-java8\.jar"/{print $4}' | sort -Vr | head -1)" /mnt/dietpi_userdata/blynk/blynkserver.jar # RPi: Install "onoff" for GPIO access (( $G_HW_MODEL > 9 )) || G_EXEC_OUTPUT=1 G_EXEC npm i -g --unsafe-perm --no-audit onoff @@ -7426,7 +7423,7 @@ After=network-online.target SyslogIdentifier=Blynk User=blynk WorkingDirectory=/mnt/dietpi_userdata/blynk -ExecStart=$(command -v java) -jar /mnt/dietpi_userdata/blynk/blynkserver.jar +ExecStart=$(command -v java) -Dlog4j2.formatMsgNoLookups=true -jar /mnt/dietpi_userdata/blynk/blynkserver.jar # Hardening PrivateTmp=true @@ -14238,7 +14235,7 @@ _EOF_ fi fi - software_id=33 # Airsonic + software_id=33 # Airsonic-Advanced if (( ${aSOFTWARE_INSTALL_STATE[$software_id]} == -1 )); then Banner_Uninstalling @@ -14249,7 +14246,6 @@ _EOF_ fi [[ -d '/etc/systemd/system/airsonic.service.d' ]] && G_EXEC rm -R /etc/systemd/system/airsonic.service.d getent passwd airsonic > /dev/null && G_EXEC userdel airsonic - getent group airsonic > /dev/null && G_EXEC groupdel airsonic # Pre-v6.33 [[ -d '/mnt/dietpi_userdata/airsonic' ]] && G_EXEC rm -R /mnt/dietpi_userdata/airsonic fi diff --git a/dietpi/dietpi-survey b/dietpi/dietpi-survey old mode 100644 new mode 100755 diff --git a/dietpi/dietpi-sync b/dietpi/dietpi-sync old mode 100644 new mode 100755 diff --git a/dietpi/dietpi-update b/dietpi/dietpi-update old mode 100644 new mode 100755 diff --git a/dietpi/dietpi-vpn b/dietpi/dietpi-vpn old mode 100644 new mode 100755 diff --git a/dietpi/func/change_hostname b/dietpi/func/change_hostname old mode 100644 new mode 100755 diff --git a/dietpi/func/create_mysql_db b/dietpi/func/create_mysql_db old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-banner b/dietpi/func/dietpi-banner old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-benchmark b/dietpi/func/dietpi-benchmark old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-globals b/dietpi/func/dietpi-globals index 5d45d1fd8a..daf4e99fa8 100644 --- a/dietpi/func/dietpi-globals +++ b/dietpi/func/dietpi-globals @@ -57,7 +57,7 @@ # - Assign defaults/code version as fallback [[ $G_DIETPI_VERSION_CORE ]] || G_DIETPI_VERSION_CORE=7 [[ $G_DIETPI_VERSION_SUB ]] || G_DIETPI_VERSION_SUB=9 - [[ $G_DIETPI_VERSION_RC ]] || G_DIETPI_VERSION_RC=3 + [[ $G_DIETPI_VERSION_RC ]] || G_DIETPI_VERSION_RC=4 [[ $G_GITBRANCH ]] || G_GITBRANCH='master' [[ $G_GITOWNER ]] || G_GITOWNER='MichaIng' # - Save current version and Git branch diff --git a/dietpi/func/dietpi-logclear b/dietpi/func/dietpi-logclear old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-obtain_hw_model b/dietpi/func/dietpi-obtain_hw_model old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-optimal_mtu b/dietpi/func/dietpi-optimal_mtu old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-ramlog b/dietpi/func/dietpi-ramlog old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-set_cpu b/dietpi/func/dietpi-set_cpu old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-set_hardware b/dietpi/func/dietpi-set_hardware old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-set_software b/dietpi/func/dietpi-set_software old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-set_swapfile b/dietpi/func/dietpi-set_swapfile old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-set_userdata b/dietpi/func/dietpi-set_userdata old mode 100644 new mode 100755 diff --git a/dietpi/func/dietpi-wifidb b/dietpi/func/dietpi-wifidb old mode 100644 new mode 100755 diff --git a/dietpi/func/run_ntpd b/dietpi/func/run_ntpd old mode 100644 new mode 100755 diff --git a/dietpi/misc/dietpi-arr_to_RAM b/dietpi/misc/dietpi-arr_to_RAM old mode 100644 new mode 100755 diff --git a/dietpi/misc/dietpi-justboom b/dietpi/misc/dietpi-justboom old mode 100644 new mode 100755 diff --git a/dietpi/misc/start_kodi b/dietpi/misc/start_kodi old mode 100644 new mode 100755 diff --git a/dietpi/patch_file b/dietpi/patch_file old mode 100644 new mode 100755 diff --git a/dietpi/postboot b/dietpi/postboot old mode 100644 new mode 100755 diff --git a/dietpi/pre-patch_file b/dietpi/pre-patch_file old mode 100644 new mode 100755 diff --git a/dietpi/preboot b/dietpi/preboot old mode 100644 new mode 100755 diff --git a/rootfs/etc/cron.daily/dietpi b/rootfs/etc/cron.daily/dietpi old mode 100644 new mode 100755 diff --git a/rootfs/etc/cron.hourly/dietpi b/rootfs/etc/cron.hourly/dietpi old mode 100644 new mode 100755 diff --git a/rootfs/var/lib/dietpi/services/dietpi-wifi-monitor.sh b/rootfs/var/lib/dietpi/services/dietpi-wifi-monitor.sh old mode 100644 new mode 100755 diff --git a/rootfs/var/lib/dietpi/services/fs_partition_resize.sh b/rootfs/var/lib/dietpi/services/fs_partition_resize.sh old mode 100644 new mode 100755
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: