Skip to content

Commit

Permalink
Merge branch 'dev' into removals
Browse files Browse the repository at this point in the history
  • Loading branch information
StephanStS authored Jan 23, 2025
2 parents 1153384 + 5e9027b commit 81623ec
Show file tree
Hide file tree
Showing 5 changed files with 84 additions and 82 deletions.
17 changes: 9 additions & 8 deletions .build/software/vaultwarden/build.bash
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,14 @@ export PATH="$HOME/.cargo/bin:$PATH"
# - vaultwarden
version=$(curl -sSf 'https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest' | mawk -F\" '/^ *"tag_name": "[^"]*",$/{print $4}')
[[ $version ]] || { G_DIETPI-NOTIFY 1 'No latest vaultwarden version found, aborting ...'; exit 1; }
# - Obtain version suffix
G_EXEC curl -sSfo package.deb "https://dietpi.com/downloads/binaries/$G_DISTRO_NAME/vaultwarden_$G_HW_ARCH_NAME.deb"
old_version=$(dpkg-deb -f package.deb Version) || exit 1
G_EXEC rm package.deb
suffix=${old_version#*-dietpi}
[[ $old_version == "$version-"* ]] && pkg_version+="-dietpi$((suffix+1))" || pkg_version+="-dietpi1"
# - Env var to show version in web UI: https://github.com/MichaIng/DietPi/issues/7364
export VW_VERSION=$pkg_version
# - web vault
wv_url=$(curl -sSf 'https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest' | mawk -F\" '/^ *"browser_download_url": ".*\.tar\.gz"$/{print $4}')
[[ $wv_url ]] || { G_DIETPI-NOTIFY 1 'No latest web vault version found, aborting ...'; exit 1; }
Expand Down Expand Up @@ -213,17 +221,10 @@ DEPS_APT_VERSIONED=${DEPS_APT_VERSIONED%,}
# shellcheck disable=SC2001
[[ $G_HW_ARCH_NAME == 'armv6l' ]] && DEPS_APT_VERSIONED=$(sed 's/+rp[it][0-9]\+[^)]*)/)/g' <<< "$DEPS_APT_VERSIONED") || DEPS_APT_VERSIONED=$(sed 's/+b[0-9]\+)/)/g' <<< "$DEPS_APT_VERSIONED")

# - Obtain version suffix
G_EXEC curl -sSfo package.deb "https://dietpi.com/downloads/binaries/$G_DISTRO_NAME/vaultwarden_$G_HW_ARCH_NAME.deb"
old_version=$(dpkg-deb -f package.deb Version)
G_EXEC rm package.deb
suffix=${old_version#*-dietpi}
[[ $old_version == "$version-"* ]] && version+="-dietpi$((suffix+1))" || version+="-dietpi1"

# - control
cat << _EOF_ > "$DIR/DEBIAN/control"
Package: vaultwarden
Version: $version
Version: $pkg_version
Architecture: $(dpkg --print-architecture)
Maintainer: MichaIng <[email protected]>
Date: $(date -uR)
Expand Down
3 changes: 3 additions & 0 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Enhancements:
- RISC-V | Debian Trixie does now support this architecture, hence our VisionFive 2 and Star64 images are now provided with Debian Trixie/testing instead of Debian Sid/unstable, and existing systemd will be migrated to the Trixie suite.
- RISC-V | Additional software options have been enabled for RISC-V systems: NZBGet, MicroK8s and AdGuard Home
- DietPi-Software | myMPD: We enabled the software option for ARMv6 Bookworm systems, since packages for Raspbian Bookworm are now available. Many thanks to @hackslikeus for bringing up the topic: https://github.com/MichaIng/DietPi/issues/7345
- DietPi-Software | vaultwarden: Our builds will now show the package version within the web UI. Many thanks to @gh3597 for reporting it missing and how to add it: https://github.com/MichaIng/DietPi/issues/7364

Removed software:
- DietPi-Software | A number of software options have been removed from our menus, which were installed just as single APT package, without any configuration or dependant. Running dietpi-software for such is overkill, as one can just use the native Debian package manager directly, like "apt install tcpdump". Affected packages: mc, vifm, iftop, iptraf, iperf, mtr-tiny, nload, tcpdump, emacs, jed, vim, vim-tiny, neovim. Note: They won't be removed from your system, and they are upgraded as usual via "apt upgrade" or DietPi updates. The only difference is that you cannot install or uninstall them via dietpi-software anymore, but instead via APT directly.
Expand All @@ -23,6 +24,8 @@ Bug fixes:
- DietPi-Software | PaperMC: Resolved an issue where the installation failed, because the API URL changed. Many thanks to @onkeld for reporting this issue: https://github.com/MichaIng/DietPi/issues/7349
- DietPi-Software | PaperMC: Resolved an issue where the installation failed on Bullseye and Bookworm systems, as Minecraft 1.21 requires Java 21, available on Debian Trixie only. PaperMC 1.20.4 will be installed in those cases now, the latest version which supports Java 17.
- DietPi-Software | Java: Since the Java 8 package from Raspbian cannot be successfully installed anymore, due to a dependency conflict, and newer (Hotspot VM) Java versions are not compatible with ARMv6, Java and all Java applications have been disabled for this architecture (RPi 1 and Zero). You can still uninstall related applications via dietpi-software, but not install or reinstall them. We are sorry for this step, but our related bug report at Raspbian did not get any traction, and also on Raspberry Pi forum the issue did not really come up since the year it exists. Java applications on Linux anyway consume a lot of resources (for the runtime) and are slow, hence the interest running such on old RPi 1 and Zero (1) models seems to be minimal, and it had limitations due to Java 8 only. If anyone is seriously interested, please push the existing Raspbian bug report, as a fix at Raspbian side is theoretically very simple: https://bugs.launchpad.net/raspbian/+bug/2087632. If there was a 3rd party APT repository with recent ARMv6-compatible Java versions, that would be an option as well.
- DietPi-Software | Bazarr: Resolved an issue where the installation failed on Trixie systems due to missing build dependencies.
- DietPi-Software | Mono: Resolved an issue where the installation failed on Trixie systems due to conflicting dependencies of packages from the Mono repo. It is now installed from the Debian repository, which ships the latest version since Trixie.

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/ADDME

Expand Down
2 changes: 1 addition & 1 deletion dietpi/dietpi-services
Original file line number Diff line number Diff line change
Expand Up @@ -134,9 +134,9 @@ _EOF_
'postgresql'

# - PHP
'php7.3-fpm' # Buster
'php7.4-fpm' # Bullseye
'php8.2-fpm' # Bookworm
'php8.4-fpm' # Trixie

# - Webservers
'apache2'
Expand Down
66 changes: 36 additions & 30 deletions dietpi/dietpi-software
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,8 @@ Available commands:
# PHP version
case $G_DISTRO in
6) PHP_VERSION='7.4';;
*) PHP_VERSION='8.2';;
7) PHP_VERSION='8.2';;
*) PHP_VERSION='8.4';;
esac

# Available for [$software_id,$G_*] 2D array
Expand Down Expand Up @@ -517,8 +518,6 @@ Available commands:
aSOFTWARE_CATX[$software_id]=2
aSOFTWARE_DOCS[$software_id]='https://dietpi.com/docs/software/media/#raspotify'
aSOFTWARE_DEPS[$software_id]='5 152'
# - RISC-V: https://github.com/dtcooper/raspotify/releases
aSOFTWARE_AVAIL_G_HW_ARCH[$software_id,11]=0
# - Bookworm/Trixie on ARMv6 (older package): "/usr/bin/librespot: error while loading shared libraries: ld-linux.so.3: cannot open shared object file: No such file or directory"
(( $G_HW_ARCH == 1 && $G_DISTRO > 6 )) && aSOFTWARE_AVAIL_G_DISTRO[$software_id,$G_DISTRO]=0
#------------------
Expand Down Expand Up @@ -2918,16 +2917,20 @@ unix_socket_directories = '/run/postgresql'" > "$i/00dietpi.conf"

if To_Install 150 # Mono: https://www.mono-project.com/download/stable/#download-lin-debian
then
# APT key
G_EXEC curl -sSfL 'https://download.mono-project.com/repo/xamarin_ring.gpg' -o /etc/apt/trusted.gpg.d/dietpi-mono.gpg
# Trixie: Install from Debian repo instead: "mono-devel : Depends: libglib2.0-0 (>= 2.58.3) but it is not installable"
if (( $G_DISTRO < 8 ))
then
# APT key
G_EXEC curl -sSfL 'https://download.mono-project.com/repo/xamarin_ring.gpg' -o /etc/apt/trusted.gpg.d/dietpi-mono.gpg

# APT list
# - Only Buster suites are available: https://download.mono-project.com/repo/debian/dists/
# - On Raspbian use separate suite: https://github.com/MichaIng/DietPi/issues/1023
local suite='buster'
(( $G_RASPBIAN )) && suite='raspbianbuster'
G_EXEC eval "echo 'deb https://download.mono-project.com/repo/debian $suite main' > /etc/apt/sources.list.d/dietpi-mono.list"
G_AGUP
# APT list
# - Only Buster suites are available: https://download.mono-project.com/repo/debian/dists/
# - On Raspbian use separate suite: https://github.com/MichaIng/DietPi/issues/1023
local suite='buster'
(( $G_RASPBIAN )) && suite='raspbianbuster'
G_EXEC eval "echo 'deb https://download.mono-project.com/repo/debian $suite main' > /etc/apt/sources.list.d/dietpi-mono.list"
G_AGUP
fi

# APT package
G_AGI mono-devel
Expand Down Expand Up @@ -3698,7 +3701,7 @@ _EOF_
# Quick install: https://docs.phpmyadmin.net/en/latest/setup.html#quick-install
# - Get latest version name
local version=$(curl -sSfL 'https://api.github.com/repos/phpmyadmin/phpmyadmin/releases' | mawk -F\" '/^ *"name": "/ && $4!~/rc/ {print $4}' | sort -rV | head -1)
[[ $version ]] || { version='5.2.1'; G_DIETPI-NOTIFY 1 "Automatic latest ${aSOFTWARE_NAME[$software_id]} version detection failed. Version \"$version\" will be installed as fallback, but a newer version might be available. Please report this at: https://github.com/MichaIng/DietPi/issues"; }
[[ $version ]] || { version='5.2.2'; G_DIETPI-NOTIFY 1 "Automatic latest ${aSOFTWARE_NAME[$software_id]} version detection failed. Version \"$version\" will be installed as fallback, but a newer version might be available. Please report this at: https://github.com/MichaIng/DietPi/issues"; }
Download_Install "https://files.phpmyadmin.net/phpMyAdmin/$version/phpMyAdmin-$version-english.tar.xz"
# - Reinstall: Clean install but preserve existing config file
[[ -f '/var/www/phpmyadmin/config.inc.php' ]] && G_EXEC mv /var/www/phpmyadmin/config.inc.php "phpMyAdmin-$version-english/"
Expand Down Expand Up @@ -6081,7 +6084,7 @@ _EOF_
*) local arch='amd64';;
esac

local fallback_url="https://github.com/navidrome/navidrome/releases/download/v0.54.3/navidrome_0.54.3_linux_$arch.tar.gz"
local fallback_url="https://github.com/navidrome/navidrome/releases/download/v0.54.4/navidrome_0.54.4_linux_$arch.tar.gz"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/navidrome/navidrome/releases/latest' | mawk -F\" "/^ *\"browser_download_url\": \".*\/navidrome_[0-9.]*_linux_$arch\.tar\.gz\"$/{print \$4}")" /opt/navidrome

# Data dir
Expand Down Expand Up @@ -6791,7 +6794,7 @@ _EOF_

if To_Install 98 haproxy # HAProxy
then
local version='3.0.5' # https://www.haproxy.org/download/
local version='3.1.2' # https://www.haproxy.org/download/
aDEPS=('make' 'gcc' 'libpcre2-dev' 'libssl-dev' 'zlib1g-dev' 'libsystemd-dev')
Download_Install "https://www.haproxy.org/download/${version%.*}/src/haproxy-$version.tar.gz"

Expand Down Expand Up @@ -7344,7 +7347,7 @@ _EOF_

if To_Install 179 komga # Komga
then
local fallback_url='https://github.com/gotson/komga/releases/download/1.17.0/komga-1.17.0.jar'
local fallback_url='https://github.com/gotson/komga/releases/download/1.18.0/komga-1.18.0.jar'
Download_Install "$(curl -sSfL 'https://api.github.com/repos/gotson/komga/releases/latest' | mawk -F\" '/^ *"browser_download_url": ".*\/komga-[^"\/]*\.jar"$/{print $4}')" /mnt/dietpi_userdata/komga/komga.jar

# User
Expand Down Expand Up @@ -7442,10 +7445,10 @@ _EOF_
# Download: Ampache v7 requires PHP 8.2
if (( $G_DISTRO > 6 ))
then
local fallback_url="https://github.com/ampache/ampache/releases/download/7.1.1/ampache-7.1.1_all_php$PHP_VERSION.zip"
local fallback_url="https://github.com/ampache/ampache/releases/download/7.2.0/ampache-7.2.0_all_php$PHP_VERSION.zip"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/ampache/ampache/releases/latest' | mawk -F\" "/^ *\"browser_download_url\": \".*\/ampache-[0-9\.]*_all_php$PHP_VERSION.zip\"$/{print \$4}")" ampache
else
local fallback_url="https://github.com/ampache/ampache/releases/download/6.6.5/ampache-6.6.5_all_php$PHP_VERSION.zip"
local fallback_url="https://github.com/ampache/ampache/releases/download/6.6.6/ampache-6.6.6_all_php$PHP_VERSION.zip"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/ampache/ampache/releases' | mawk -F\" "/^ *\"browser_download_url\": \".*\/ampache-[0-9\.]*_all_php$PHP_VERSION.zip\"$/{print \$4}")" ampache
fi

Expand Down Expand Up @@ -8840,7 +8843,7 @@ _EOF_
*) local arch='arm';;
esac

local fallback_url="https://github.com/syncthing/syncthing/releases/download/v1.29.1/syncthing-linux-$arch-v1.29.1.tar.gz"
local fallback_url="https://github.com/syncthing/syncthing/releases/download/v1.29.2/syncthing-linux-$arch-v1.29.2.tar.gz"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/syncthing/syncthing/releases/latest' | mawk -F\" "/\"browser_download_url\": .*\/syncthing-linux-$arch-[^\"\/]*\.tar\.gz\"/{print \$4}")"
G_EXEC mv syncthing-* /opt/syncthing
fi
Expand Down Expand Up @@ -9631,11 +9634,14 @@ _EOF_
then
# APT deps
aDEPS=('unzip')
if (( $G_HW_ARCH < 3 ))
then
aDEPS+=('libopenblas0-pthread') # libopenblas0-pthread runtime library for piwheels wheel: https://piwheels.org/project/numpy/
(( $G_HW_ARCH == 1 )) && aDEPS+=('unar') # ARMv6 does not support unrar-nonfree and Bazarr does not support unrar-free, so we need to use "unar": https://github.com/morpheus65535/bazarr/issues/2172
fi
# - ARMv6 does not support unrar-nonfree and Bazarr does not support unrar-free, so we need to use "unar": https://github.com/morpheus65535/bazarr/issues/2172
(( $G_HW_ARCH == 1 )) && aDEPS+=('unar')
# - ARMv6/7 with piwheels: libopenblas0-pthread for numpy from piwheels: https://piwheels.org/project/numpy/
(( $G_DISTRO < 8 && $G_HW_ARCH < 3 )) && aDEPS+=('libopenblas0-pthread')
# - ARMv6/7/RISC-V without piwheels: libxslt1-dev for lxml; g++, pkg-config and libopenblas-dev for numpy
(( $G_DISTRO > 7 && ( $G_HW_ARCH < 3 || $G_HW_ARCH == 11 ) )) && aDEPS+=('libxslt1-dev' 'g++' 'pkg-config' 'libopenblas-dev')
# - RISC-V: cmake for ninja; make and automake for patchelf
(( $G_HW_ARCH == 11 )) && aDEPS+=('cmake' 'make' 'automake')

# Download
Download_Install 'https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip' bazarr
Expand Down Expand Up @@ -9968,7 +9974,7 @@ _EOF_
3) local arch='arm64';;
*) local arch='x64';;
esac
local fallback_url="https://github.com/Readarr/Readarr/releases/download/v0.4.7.2718/Readarr.develop.0.4.7.2718.linux-core-$arch.tar.gz"
local fallback_url="https://github.com/Readarr/Readarr/releases/download/v0.4.9.2730/Readarr.develop.0.4.9.2730.linux-core-$arch.tar.gz"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/Readarr/Readarr/releases' | mawk -F\" "/^ *\"browser_download_url\": \".*linux-core-$arch\.tar\.gz\"$/{print \$4}" | head -1)"

# Install: Remove previous instance on reinstall
Expand Down Expand Up @@ -10539,7 +10545,7 @@ _EOF_
*) local arch='arm-6';;
esac

local fallback_url="https://github.com/go-gitea/gitea/releases/download/v1.23.0/gitea-1.23.0-linux-$arch.xz"
local fallback_url="https://github.com/go-gitea/gitea/releases/download/v1.23.1/gitea-1.23.1-linux-$arch.xz"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/go-gitea/gitea/releases/latest' | mawk -F\" "/\"browser_download_url\": \".*\/gitea-[^\"\/]*-linux-$arch\.xz\"/{print \$4}")" /mnt/dietpi_userdata/gitea/gitea

# User
Expand Down Expand Up @@ -11121,7 +11127,7 @@ _EOF_
# v3 drops PHP 7.4 support: https://github.com/TasmoAdmin/TasmoAdmin/releases/tag/v3.0.0
if (( $G_DISTRO > 6 ))
then
local fallback_url='https://github.com/TasmoAdmin/TasmoAdmin/releases/download/v4.2.1/tasmoadmin_v4.2.1.tar.gz'
local fallback_url='https://github.com/TasmoAdmin/TasmoAdmin/releases/download/v4.2.2/tasmoadmin_v4.2.2.tar.gz'
Download_Install "$(curl -sSfL 'https://api.github.com/repos/TasmoAdmin/TasmoAdmin/releases/latest' | mawk -F\" '/^ *"browser_download_url": ".*\/tasmoadmin_v[^"\/]*\.tar\.gz"$/{print $4}')"
else
Download_Install 'https://github.com/TasmoAdmin/TasmoAdmin/releases/download/v2.4.2/tasmoadmin_v2.4.2.tar.gz'
Expand Down Expand Up @@ -11519,7 +11525,7 @@ _EOF_
getent passwd snapserver > /dev/null && G_EXEC userdel snapserver
else
local arch=$(dpkg --print-architecture)
local fallback_url="https://github.com/badaix/snapcast/releases/download/v0.29.0/snapserver_0.29.0-1_${arch}_$G_DISTRO_NAME.deb"
local fallback_url="https://github.com/badaix/snapcast/releases/download/v0.30.0/snapserver_0.30.0-1_${arch}_$G_DISTRO_NAME.deb"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/badaix/snapcast/releases/latest' | mawk -F\" "/^ *\"browser_download_url\": \".*\/snapserver_[^\"\/]*_${arch}_$G_DISTRO_NAME.deb\"/{print \$4}")"

# Fix /var/lib/snapserver permissions, just in case Debian's package was previously used, which uses the "_snapserver" user, instead of "snapserver"
Expand All @@ -11540,7 +11546,7 @@ _EOF_
G_AGI snapclient
else
local arch=$(dpkg --print-architecture)
local fallback_url="https://github.com/badaix/snapcast/releases/download/v0.29.0/snapclient_0.29.0-1_${arch}_$G_DISTRO_NAME.deb"
local fallback_url="https://github.com/badaix/snapcast/releases/download/v0.30.0/snapclient_0.30.0-1_${arch}_$G_DISTRO_NAME.deb"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/badaix/snapcast/releases/latest' | mawk -F\" "/^ *\"browser_download_url\": \".*\/snapclient_[^\"\/]*_${arch}_$G_DISTRO_NAME.deb\"/{print \$4}")"
fi
G_EXEC systemctl stop snapclient
Expand Down Expand Up @@ -11590,7 +11596,7 @@ _EOF_
*) local arch='amd64';;
esac

local fallback_url="https://github.com/rclone/rclone/releases/download/v1.68.2/rclone-v1.68.2-linux-$arch.deb"
local fallback_url="https://github.com/rclone/rclone/releases/download/v1.69.0/rclone-v1.69.0-linux-$arch.deb"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/rclone/rclone/releases/latest' | mawk -F\" "/^ *\"browser_download_url\": \".*\/rclone-v[^\"\/]*-linux-$arch.deb\"$/{print \$4}")"
fi
fi
Expand Down
Loading

0 comments on commit 81623ec

Please sign in to comment.