From c74c1e5487e4b95f17c9bbd90eca8fcf31526972 Mon Sep 17 00:00:00 2001 From: OrpheeGT Date: Sat, 28 Jan 2023 23:09:27 +0100 Subject: [PATCH] replace oathtool commandl with docker oathtool oathtool binary is not available in DSM6 or DSM7. It needs to sideload binary and dependencies from debian or anything else to make it works... As we have docker synology package available on most of Synology products, using a docker container is a good alternative. This commit replace oathtool binary with docker run commandline. the first time the command is launched, it will take some time to download missing docker image locally. --- deploy/synology_dsm.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/deploy/synology_dsm.sh b/deploy/synology_dsm.sh index c31a5df0..4154b026 100644 --- a/deploy/synology_dsm.sh +++ b/deploy/synology_dsm.sh @@ -20,7 +20,7 @@ # Dependencies: # ------------- # - jq and curl -# - oathtool (When using 2 Factor Authentication and SYNO_TOTP_SECRET is set) +# - docker (When using 2 Factor Authentication and SYNO_TOTP_SECRET is set) # #returns 0 means success, otherwise error. @@ -94,10 +94,10 @@ synology_dsm_deploy() { otp_code="" if [ -n "$SYNO_TOTP_SECRET" ]; then - if _exists oathtool; then - otp_code="$(oathtool --base32 --totp "${SYNO_TOTP_SECRET}" 2>/dev/null)" + if _exists docker; then + otp_code="$(docker run --rm -it toolbelt/oathtool --base32 --totp "${SYNO_TOTP_SECRET}" 2>/dev/null | cut -b 1-6)" else - _err "oathtool could not be found, install oathtool to use SYNO_TOTP_SECRET" + _err "docker could not be found, install docker synology package to use SYNO_TOTP_SECRET" return 1 fi fi