Skip to content

Commit

Permalink
Beta v8.24.1 (#6756)
Browse files Browse the repository at this point in the history
  • Loading branch information
MichaIng authored Nov 18, 2023
2 parents 1e2efd9 + 990b9a4 commit b050b6b
Show file tree
Hide file tree
Showing 17 changed files with 338 additions and 151 deletions.
2 changes: 2 additions & 0 deletions .build/images/Quartz64/quartz64_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -247,6 +247,7 @@ CONFIG_HID_MICROSOFT=m
CONFIG_HID_MONTEREY=m
CONFIG_HID_MULTITOUCH=y
CONFIG_HID_REDRAGON=m
CONFIG_HIDRAW=y
CONFIG_HIGH_RES_TIMERS=y
# CONFIG_HISILICON_ERRATUM_161010101 is not set
CONFIG_HOTPLUG_PCI=y
Expand Down Expand Up @@ -1011,6 +1012,7 @@ CONFIG_USB_EHCI_HCD_PLATFORM=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_GADGET=y
CONFIG_USB_GSPCA=m
CONFIG_USB_HIDDEV=y
CONFIG_USB_LAN78XX=m
CONFIG_USB_LEDS_TRIGGER_USBPORT=y
CONFIG_USB_LED_TRIG=y
Expand Down
34 changes: 17 additions & 17 deletions .build/images/U-Boot/boot.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ setenv fdt_addr_r "0x4080000"
setenv overlay_error "false"

# Load environment file
if load ${devtype} ${devnum} ${scriptaddr} ${prefix}dietpiEnv.txt; then
env import -t ${scriptaddr} ${filesize}
if load "${devtype}" "${devnum}" "${scriptaddr}" "${prefix}dietpiEnv.txt"; then
env import -t "${scriptaddr}" "${filesize}"
fi

# Define kernel command-line arguments
Expand All @@ -31,44 +31,44 @@ setenv bootargs "root=${rootdev} rootfstype=${rootfstype} rootwait ${consoleargs
if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=memory swapaccount=1"; fi

# Load kernel, initramfs and device tree
load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}Image
load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
fdt addr ${fdt_addr_r}
load "${devtype}" "${devnum}" "${kernel_addr_r}" "${prefix}Image"
load "${devtype}" "${devnum}" "${ramdisk_addr_r}" "${prefix}uInitrd"
load "${devtype}" "${devnum}" "${fdt_addr_r}" "${prefix}dtb/${fdtfile}"
fdt addr "${fdt_addr_r}"

# Apply DT overlays
if test -n "${overlays}${user_overlays}"; then
fdt resize 65536
for overlay in ${overlays}; do
if load ${devtype} ${devnum} ${scriptaddr} ${prefix}dtb/${overlay_path}/overlay/${overlay_prefix}-${overlay}.dtbo; then
if load "${devtype}" "${devnum}" "${scriptaddr}" "${prefix}dtb/${overlay_path}/overlay/${overlay_prefix}-${overlay}.dtbo"; then
echo "Applying kernel provided DT overlay ${overlay_prefix}-${overlay}.dtbo"
fdt apply ${scriptaddr} || setenv overlay_error "true"
fdt apply "${scriptaddr}" || setenv overlay_error "true"
fi
done

for overlay in ${user_overlays}; do
if load ${devtype} ${devnum} ${scriptaddr} ${prefix}overlay-user/${overlay}.dtbo; then
if load "${devtype}" "${devnum}" "${scriptaddr}" "${prefix}overlay-user/${overlay}.dtbo"; then
echo "Applying user provided DT overlay ${overlay}.dtbo"
fdt apply ${scriptaddr} || setenv overlay_error "true"
fdt apply "${scriptaddr}" || setenv overlay_error "true"
fi
done

if test "${overlay_error}" = "true"; then
echo "Error applying DT overlays, restoring original DT"
load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
load "${devtype}" "${devnum}" "${fdt_addr_r}" "${prefix}dtb/${fdtfile}"
else
if load ${devtype} ${devnum} ${scriptaddr} ${prefix}dtb/${overlay_path}/overlay/${overlay_prefix}-fixup.scr; then
if load "${devtype}" "${devnum}" "${scriptaddr}" "${prefix}dtb/${overlay_path}/overlay/${overlay_prefix}-fixup.scr"; then
echo "Applying kernel provided DT fixup script ${overlay_prefix}-fixup.scr"
source ${scriptaddr}
source "${scriptaddr}"
fi
if test -e ${devtype} ${devnum} ${prefix}fixup.scr; then
if load ${devtype} ${devnum} ${scriptaddr} ${prefix}fixup.scr; then
if test -e "${devtype}" "${devnum}" "${prefix}fixup.scr"; then
if load "${devtype}" "${devnum}" "${scriptaddr}" "${prefix}fixup.scr"; then
echo "Applying user provided DT fixup script fixup.scr"
source ${scriptaddr}
source "${scriptaddr}"
fi
fi
fi
fi

# Boot
booti ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}
booti "${kernel_addr_r}" "${ramdisk_addr_r}" "${fdt_addr_r}"
6 changes: 3 additions & 3 deletions .build/images/dietpi-imager
Original file line number Diff line number Diff line change
Expand Up @@ -573,15 +573,15 @@ _EOF_
# Rename if source image != output image yet
[[ $(readlink -f "$PWD/$OUTPUT_IMG_NAME.$OUTPUT_IMG_EXT") != "$(readlink -f "$FP_SOURCE_IMG")" ]] && G_EXEC mv "$FP_SOURCE_IMG" "$OUTPUT_IMG_NAME.$OUTPUT_IMG_EXT"

# Check for sufficient free disk space to store the 7z archive with 100 MiB buffer
# Check for sufficient free disk space to store the xz archive with 100 MiB buffer
(( $SKIP_ARCHIVE )) || G_CHECK_FREESPACE . $(( $IMAGE_SIZE * 15/100 / 1024**2 + 100 )) || exit 1

# Drive source and dd target
elif [[ $CLONING_TOOL == 'dd' ]]
then
# Check for sufficient free disk space to store the image and in case the 7z archive with 100 MiB buffer
# Check for sufficient free disk space to store the image and in case the xz archive with 100 MiB buffer
local free_space_percent=100
(( $SKIP_ARCHIVE )) || free_space_percent=115 # 15% image size for 7z archive
(( $SKIP_ARCHIVE )) || free_space_percent=115 # 15% image size for xz archive
G_CHECK_FREESPACE . $(( $IMAGE_SIZE * $free_space_percent/100 / 1024**2 + 100 )) || exit 1

G_DIETPI-NOTIFY 2 "Creating final image with actually used size: $(( $IMAGE_SIZE / 1024**2 + 1 )) MiB"
Expand Down
40 changes: 37 additions & 3 deletions .build/images/dietpi-installer
Original file line number Diff line number Diff line change
Expand Up @@ -572,6 +572,9 @@ _EOF_
# Boot in 64-bit mode if this is a 64-bit image
[[ $G_HW_ARCH == 3 ]] && G_CONFIG_INJECT 'arm_64bit=' 'arm_64bit=1' /boot/config.txt

# Temporary workaround for conflicting rpi-eeprom package
(( $DISTRO_TARGET > 6 )) && ! grep -q 'https://dietpi.com/downloads/binaries/rpi/rpi-eeprom.deb' "DietPi-$G_GITBRANCH/dietpi/func/dietpi-set_hardware" && G_EXEC sed -i 's|G_AG_CHECK_INSTALL_PREREQ rpi-eeprom|G_EXEC_OUTPUT=1 G_EXEC curl -fO https://dietpi.com/downloads/binaries/rpi/rpi-eeprom.deb; G_AGI ./rpi-eeprom.deb; G_EXEC rm rpi-eeprom.deb; G_EXEC apt-mark hold rpi-eeprom|' "DietPi-$G_GITBRANCH/dietpi/func/dietpi-set_hardware"

elif [[ $G_HW_MODEL =~ ^(10|11)$ ]]
then
armbian_repo=1
Expand Down Expand Up @@ -902,12 +905,12 @@ _EOF_
)

# Skip entropy daemon on all devices but those with old kernel
if [[ ! $G_HW_MODEL =~ ^(11|61|62|70)$ ]] # Odroid XU4, NanoPi M2/T2/Fire2, NanoPi M3/T3/Fire3, Sparky SBC
if [[ ! $G_HW_MODEL =~ ^(61|62|70)$ ]] # NanoPi M2/T2/Fire2, NanoPi M3/T3/Fire3, Sparky SBC
then
:

# Entropy daemon: Use modern rng-tools5 on all devices where it has been proven to work, else haveged: https://github.com/MichaIng/DietPi/issues/2806
elif [[ $G_HW_MODEL -lt 10 || $G_HW_MODEL =~ ^(14|15|16|24|29|42|46|58|68|72|74|76|78|79|80|81|82|85|86)$ ]] # RPi, S922X, Odroid C4, RK3399 - 47 NanoPi R4S, Radxa Zero, NanoPi R5S/R5C, ROCK 5B, NanoPi 6, Orange Pi 5, VisionFive 2, Orange Pi 5 Plus
elif [[ $G_HW_MODEL -lt 10 || $G_HW_MODEL =~ ^(14|15|16|24|29|42|46|58|68|72|74|76|78|79|80|81|82|83|84|85|86)$ ]] # RPi, S922X, Odroid C4, RK3399 - 47 NanoPi R4S, Radxa Zero, NanoPi R5S/R5C, ROCK 5B, NanoPi 6, Orange Pi 5, VisionFive 2, Orange Pi 5 Plus
then
aPACKAGES_REQUIRED_INSTALL+=('rng-tools5')
else
Expand Down Expand Up @@ -1248,6 +1251,20 @@ _EOF_
G_EXEC sed -i "s/rootfstype=[^[:blank:]]*/rootfstype=$(findmnt -Ufnro FSTYPE -M /)/" /boot/extlinux/extlinux.conf
aPACKAGES_REQUIRED_INSTALL+=('libubootenv-tool')

# Star64
elif (( $G_HW_MODEL == 84 ))
then
G_EXEC curl -sSfo package.deb 'https://dietpi.com/downloads/binaries/linux-image-star64.deb'
dpkg-deb -I linux-image-star64.deb conffiles | while read -r line
do
[[ -f $line ]] && G_EXEC rm "$line"
done
G_EXEC_OUTPUT=1 G_EXEC dpkg -i package.deb
G_EXEC rm package.deb
G_EXEC sed -i "s/root=[^[:blank:]]*/root=PARTUUID=$(findmnt -Ufnro PARTUUID -M /)/" /boot/extlinux/extlinux.conf
G_EXEC sed -i "s/rootfstype=[^[:blank:]]*/rootfstype=$(findmnt -Ufnro FSTYPE -M /)/" /boot/extlinux/extlinux.conf
aPACKAGES_REQUIRED_INSTALL+=('libubootenv-tool')

# Orange Pi Zero 3
elif (( $G_HW_MODEL == 83 ))
then
Expand All @@ -1269,6 +1286,21 @@ _EOF_
# shellcheck disable=SC2154
write_uboot_platform "$DIR" "$BOOT_DEVICE"

# Apply device tree adjustment for Ethernet adapter
# shellcheck disable=SC2016
sed -i -e '/^setenv bootargs /s/"$/ ethernet_phy=${ethernet_phy}"/' -e '/^# Boot/i\
if test "${ethernet_phy}" = "rtl8211f"; then\
echo "Ethernet adapter: ${ethernet_phy}, adjusting device tree ..."\
fdt set "/soc/ethernet@5020000" "allwinner,rx-delay-ps" "<3100>"\
fdt set "/soc/ethernet@5020000" "allwinner,tx-delay-ps" "<700>"\
elif test "${ethernet_phy}" = "yt8531c"; then\
echo "Ethernet adapter: ${ethernet_phy}, adjusting device tree ..."\
fdt set "/soc/ethernet@5020000" "allwinner,rx-delay-ps" "<0>"\
fdt set "/soc/ethernet@5020000" "allwinner,tx-delay-ps" "<600>"\
else\
echo "Ethernet adapter: \\"${ethernet_phy}\\""\
fi\
' /boot/boot.cmd
# Compile U-Boot script
G_EXEC mkimage -C none -A arm64 -T script -d /boot/boot.cmd /boot/boot.scr

Expand Down Expand Up @@ -1525,6 +1557,7 @@ _EOF_
getent passwd fa > /dev/null && userdel -f fa # OMV (NanoPi NEO2)
getent passwd colord > /dev/null && userdel -f colord # OMV (NanoPi NEO2)
getent passwd saned > /dev/null && userdel -f saned # OMV (NanoPi NEO2)
getent passwd orangepi > /dev/null && userdel -f saned # Orange Pi images
getent group openmediavault-config > /dev/null && groupdel openmediavault-config # OMV (NanoPi NEO2)
getent group openmediavault-engined > /dev/null && groupdel openmediavault-engined # OMV (NanoPi NEO2)
getent group openmediavault-webgui > /dev/null && groupdel openmediavault-webgui # OMV (NanoPi NEO2)
Expand All @@ -1538,7 +1571,7 @@ _EOF_
G_DIETPI-NOTIFY 2 'Removing misc files/folders/services, not required by DietPi'

[[ -f '/boot/boot.bmp' ]] && G_EXEC rm /boot/boot.bmp
[[ -f '/boot/logo.bmp' ]] && G_EXEC rm /boot/logo.bmp
[[ -f '/boot/logo.bmp' ]] && G_EXEC rm /boot/logo.bmp # Orange Pi images
[[ -d '/selinux' ]] && G_EXEC rm -R /selinux
[[ -d '/var/cache/apparmor' ]] && G_EXEC rm -R /var/cache/apparmor
[[ -d '/var/lib/udisks2' ]] && G_EXEC rm -R /var/lib/udisks2
Expand Down Expand Up @@ -1675,6 +1708,7 @@ _EOF_
[[ -f '/etc/init.d/resize2fs_once' ]] && G_EXEC rm /etc/init.d/resize2fs_once # https://github.com/RPi-Distro/pi-gen/blob/master/stage2/01-sys-tweaks/files/resize2fs_once
# - Remove all autologin configs for all TTYs: https://github.com/MichaIng/DietPi/issues/3570#issuecomment-648988475, https://github.com/MichaIng/DietPi/issues/3628#issuecomment-653693758
G_EXEC rm -f /etc/systemd/system/*getty@*.service.d/*autologin*.conf
G_EXEC rm -f /lib/systemd/system/*getty@*.service.d/override.conf # Orange Pi images

# - make_nas_processes_faster cron job on ROCK64 + NanoPi + PINE A64(?) images
[[ -f '/etc/cron.d/make_nas_processes_faster' ]] && G_EXEC rm /etc/cron.d/make_nas_processes_faster
Expand Down
10 changes: 10 additions & 0 deletions .conf/dps_114/lighttpd.nextcloud.conf
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,14 @@ $HTTP["url"] =~ "^/nextcloud($|/)" {
)
}

# Rewrites
url.rewrite-once += (
"^/nextcloud/remote/(.*)" => "/nextcloud/remote.php/$1",
"^/nextcloud/ocm-provider($|/\?.*)" => "/nextcloud/index.php$1"
)
url.rewrite-if-not-file += (
"^/nextcloud/((core/ajax/update|cron|public|remote|status|ocs/v[12])\.php|ocs-provider/|updater/)" => "",
"^/nextcloud(.*)" => "/nextcloud/index.php$1"
)

}
71 changes: 71 additions & 0 deletions .github/workflows/armbian.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Armbian
on:
workflow_dispatch:
inputs:
asset:
description: 'Asset'
type: choice
options: [kernel, uboot, firmware]
default: kernel
required: true
branch:
description: 'Branch'
type: choice
options: [legacy, current, edge]
default: current
required: true
board:
description: 'Board'
required: true
gitowner:
description: 'Override Git owner of Armbian repo'
gitbranch:
description: 'Override Git branch of Armbian repo'
concurrency:
group: ${{ github.workflow }}-${{ github.event.inputs.asset }}-${{ github.event.inputs.branch }}-${{ github.event.inputs.board }}
cancel-in-progress: true
permissions: {}
defaults:
run:
shell: sh
jobs:
build:
name: "${{ github.event.inputs.asset }} - ${{ github.event.inputs.branch }} - ${{ github.event.inputs.board }}"
runs-on: ubuntu-22.04
steps:
- name: Clone Armbian repo
run: |
owner='${{ github.event.inputs.gitowner }}'
[ "$owner" ] || owner='armbian'
branch='${{ github.event.inputs.gitbranch }}'
[ "$branch" ] || branch='main'
git clone -b "$branch" --depth=1 "https://github.com/$owner/build"
- name: Build asset
run: |
cd build
./compile.sh '${{ github.event.inputs.asset }}' BRANCH='${{ github.event.inputs.branch }}' BOARD='${{ github.event.inputs.board }}'
- name: Upload
run: |
# SSH server and client keys
mkdir ~/.ssh
umask 377
echo '${{ secrets.KNOWN_HOSTS }}' > ~/.ssh/known_hosts
echo '${{ secrets.SSH_KEY }}' > ~/.ssh/id_ed25519
# Generate file lists
files=
urls='"https://dietpi.com/downloads/binaries/testing/"'
cd build/output/debs
for i in *
do
mv -v "$i" "${i%%_*}.deb"
i="${i%%_*}.deb"
files="$files,$i"
urls="$urls,\"https://dietpi.com/downloads/binaries/testing/$i\""
done
files=${files#,}
echo "Uploading file(s) $files to URL(s) $urls ..."
# Upload
curl -T "{$files}" --key ~/.ssh/id_ed25519 '${{ secrets.UPLOAD_URL }}all/'
curl 'https://api.cloudflare.com/client/v4/zones/${{ secrets.CF_ZONE }}/purge_cache' -H 'Authorization: Bearer ${{ secrets.CF_TOKEN }}' -H 'Content-Type: application/json' --data "{\"files\":[$urls]}"
9 changes: 9 additions & 0 deletions .meta/dietpi-bookworm-upgrade
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,15 @@ G_DIETPI-NOTIFY 2 'Reverting some package lists to Bullseye which have no Bookwo
[[ -f '/etc/apt/sources.list.d/influxdb.list' ]] && G_EXEC sed -i 's/bookworm/bullseye/' /etc/apt/sources.list.d/influxdb.list
[[ -f '/etc/apt/sources.list.d/mopidy.list' ]] && G_EXEC sed -i 's/bookworm/bullseye/' /etc/apt/sources.list.d/mopidy.list

if (( $G_HW_MODEL == 4 )) && dpkg-query -s rpi-eeprom &> /dev/null
then
G_DIETPI-NOTIFY 2 'Setting rpi-eeprom package on hold to prevent conflicting upgrade attempt'
G_EXEC_OUTPUT=1 G_EXEC curl -fO 'https://dietpi.com/downloads/binaries/rpi/rpi-eeprom.deb'
G_EXEC dpkg -i --force-confdef,confold ./rpi-eeprom.deb
G_EXEC rm rpi-eeprom.deb
G_EXEC apt-mark hold rpi-eeprom
fi

G_DIETPI-NOTIFY 2 'Applying the actual upgrade to Debian Bookworm'
/boot/dietpi/dietpi-services stop
G_AGUP
Expand Down
Loading

0 comments on commit b050b6b

Please sign in to comment.