From 73a13e56977c14f1a84c633e614bf333294af857 Mon Sep 17 00:00:00 2001 From: Kroese Date: Mon, 7 Apr 2025 17:20:14 +0200 Subject: [PATCH] fix: QNAP permission errors (#964) --- src/install.sh | 5 +++-- src/network.sh | 10 +++++----- src/proc.sh | 14 +++++++++++--- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/install.sh b/src/install.sh index ec73e70..1d70ea4 100644 --- a/src/install.sh +++ b/src/install.sh @@ -272,10 +272,10 @@ rm -f "$MOUNT/.SynoUpgradePackages/ActiveInsight-"* [ -s "$HDP.txz" ] && tar xpfJ "$HDP.txz" --absolute-names -C "$MOUNT/" +INDEX_DB="" if [ -s "$IDB.txz" ]; then - INDEX_DB="$MOUNT/usr/syno/synoman/indexdb/" + INDEX_DB="$MOUNT/usr/syno/synoman/indexdb" mkdir -p "$INDEX_DB" - tar xpfJ "$IDB.txz" --absolute-names -C "$INDEX_DB" fi LABEL="1.44.1-42218" @@ -284,6 +284,7 @@ NUMBLOCKS="2097152" # (16777216 * 512) / 4096 MSG="Installing system partition..." fakeroot -- bash -c "set -Eeu;\ + [ -d $INDEX_DB ] && tar xpfJ $IDB.txz --absolute-names -C $INDEX_DB/;\ tar xpfJ $HDA.txz --absolute-names --skip-old-files -C $MOUNT/;\ printf '%b%s%b' '\E[1;34m❯ \E[1;36m' 'Install: $MSG' '\E[0m\n';\ mke2fs -q -t ext4 -b 4096 -d $MOUNT/ -L $LABEL -F -E offset=$OFFSET $SYSTEM $NUMBLOCKS" diff --git a/src/network.sh b/src/network.sh index 5932e16..fe90b15 100644 --- a/src/network.sh +++ b/src/network.sh @@ -338,17 +338,17 @@ closeNetwork() { checkOS() { - local name + local kernel local os="" local if="macvlan" - name=$(uname -a) + kernel=$(uname -a) - [[ "${name,,}" == *"darwin"* ]] && os="Docker Desktop for macOS" - [[ "${name,,}" == *"microsoft"* ]] && os="Docker Desktop for Windows" + [[ "${kernel,,}" == *"darwin"* ]] && os="Docker Desktop for macOS" + [[ "${kernel,,}" == *"microsoft"* ]] && os="Docker Desktop for Windows" if [[ "$DHCP" == [Yy1]* ]]; then if="macvtap" - [[ "${name,,}" == *"synology"* ]] && os="Synology Container Manager" + [[ "${kernel,,}" == *"synology"* ]] && os="Synology Container Manager" fi if [ -n "$os" ]; then diff --git a/src/proc.sh b/src/proc.sh index 129d70f..3f9f7f2 100644 --- a/src/proc.sh +++ b/src/proc.sh @@ -53,9 +53,17 @@ if [[ "$KVM" != [Nn]* ]]; then KVM="N" if [[ "$OSTYPE" =~ ^darwin ]]; then warn "you are using macOS which has no KVM support, this will cause a major loss of performance." - else - error "KVM acceleration not available $KVM_ERR, this will cause a major loss of performance." - error "See the FAQ on how to diagnose the cause, or continue without KVM by setting KVM=N (not recommended)." + else + kernel=$(uname -a) + case "${kernel,,}" in + *"microsoft"* ) + error "Please bind '/dev/kvm' as a volume in the optional container settings when using Docker Desktop." ;; + *"synology"* ) + error "Please make sure that Synology VMM (Virtual Machine Manager) is installed and that '/dev/kvm' is binded to this container." ;; + *) + error "KVM acceleration not available $KVM_ERR, this will cause a major loss of performance." + error "See the FAQ on how to diagnose the cause, or continue without KVM by setting KVM=N (not recommended)." ;; + esac [[ "$DEBUG" != [Yy1]* ]] && exit 88 fi fi