mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-02-25 16:05:19 +00:00
50_Signalbot: Installer update to signal-cli 0.11.10
git-svn-id: https://svn.fhem.de/fhem/trunk@27553 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
ec81f7303e
commit
89f3e0dae2
@ -1,14 +1,15 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#$Id:$
|
#$Id:$
|
||||||
SCRIPTVERSION="3.15"
|
SCRIPTVERSION="3.16"
|
||||||
# Author: Adimarantis
|
# Author: Adimarantis
|
||||||
# License: GPL
|
# License: GPL
|
||||||
#Install script for signal-cli
|
#Install script for signal-cli
|
||||||
SIGNALPATH=/opt
|
SIGNALPATH=/opt
|
||||||
SIGNALUSER=signal-cli
|
SIGNALUSER=signal-cli
|
||||||
LIBPATH=/usr/lib
|
LIBPATH=/usr/lib
|
||||||
SIGNALVERSION="0.11.8"
|
SIGNALVERSION="0.11.10"
|
||||||
LIBRARYVERSION="0.22.0"
|
LIBRARYVERSION="0.23.1"
|
||||||
|
LIBSIG=libsignal_jni.tgz
|
||||||
SIGNALVAR=/var/lib/$SIGNALUSER
|
SIGNALVAR=/var/lib/$SIGNALUSER
|
||||||
DBSYSTEMD=/etc/dbus-1/system.d
|
DBSYSTEMD=/etc/dbus-1/system.d
|
||||||
DBSYSTEMS=/usr/share/dbus-1/system-services
|
DBSYSTEMS=/usr/share/dbus-1/system-services
|
||||||
@ -167,37 +168,25 @@ APT=`which apt`
|
|||||||
GLIBC=`ldd --version | grep -m1 -o '[0-9]\.[0-9][0-9]' | head -n 1`
|
GLIBC=`ldd --version | grep -m1 -o '[0-9]\.[0-9][0-9]' | head -n 1`
|
||||||
if [ $ARCH = "armv7l" ]; then
|
if [ $ARCH = "armv7l" ]; then
|
||||||
ARCH="armhf"
|
ARCH="armhf"
|
||||||
|
ARCHL="armv7-unknown-linux-gnueabihf.tar.gz"
|
||||||
ARCHJ="arm"
|
ARCHJ="arm"
|
||||||
elif [ $ARCH = "x86_64" ]; then
|
elif [ $ARCH = "x86_64" ]; then
|
||||||
ARCH="amd64"
|
ARCH="amd64"
|
||||||
|
ARCHL="x86_64-unknown-linux-gnu.tar.gz"
|
||||||
ARCHJ="x64"
|
ARCHJ="x64"
|
||||||
GLIBC="2.28" #should work with 2.31 as well
|
|
||||||
elif [ $ARCH = "aarch64" ]; then
|
elif [ $ARCH = "aarch64" ]; then
|
||||||
BITS=`getconf LONG_BIT`
|
BITS=`getconf LONG_BIT`
|
||||||
if [ "$BITS" = "64" ]; then
|
if [ "$BITS" = "64" ]; then
|
||||||
ARCH="aarch64"
|
ARCH="aarch64"
|
||||||
|
ARCHL="aarch64-unknown-linux-gnu.tar.gz"
|
||||||
ARCHJ="aarch64"
|
ARCHJ="aarch64"
|
||||||
else
|
else
|
||||||
ARCH="armhf"
|
ARCH="armhf"
|
||||||
|
ARCHL="armv7-unknown-linux-gnueabihf.tar.gz"
|
||||||
ARCHJ="arm"
|
ARCHJ="arm"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
IDENTSTR=$ARCH-glibc$GLIBC-$LIBRARYVERSION
|
|
||||||
KNOWN=("amd64-glibc2.27-0.11.2" "amd64-glibc2.28-0.22.0" "armhf-glibc2.28-0.22.0" "armhf-glibc2.31-0.22.0" "aarch64-glibc2.31-0.22.0")
|
|
||||||
|
|
||||||
GETLIBS=1
|
|
||||||
if [[ ! " ${KNOWN[*]} " =~ " ${IDENTSTR} " ]]; then
|
|
||||||
echo "$IDENTSTR is an unsupported combination - signal-cli binary libraries might not work"
|
|
||||||
if [ "$GLIBC" != "2.31" ]; then
|
|
||||||
GLIBC=2.28
|
|
||||||
echo "Fallback to GLIBC $GLIBC";
|
|
||||||
else
|
|
||||||
GETLIBS=0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
IDENTSTR=$ARCH-glibc$GLIBC-$LIBRARYVERSION
|
|
||||||
|
|
||||||
if [ $OSNAME != "Linux" ]; then
|
if [ $OSNAME != "Linux" ]; then
|
||||||
echo "Only Linux systems are supported (you: $OSNAME), quitting"
|
echo "Only Linux systems are supported (you: $OSNAME), quitting"
|
||||||
exit
|
exit
|
||||||
@ -358,6 +347,20 @@ fi
|
|||||||
#After this, signal-cli should be running and ready to use over dbus
|
#After this, signal-cli should be running and ready to use over dbus
|
||||||
install_signal_cli() {
|
install_signal_cli() {
|
||||||
|
|
||||||
|
IDENTSTR=libsignal_v$LIBRARYVERSION/libsignal_jni.so-v$LIBRARYVERSION-$ARCHL
|
||||||
|
|
||||||
|
GETLIBS=1
|
||||||
|
echo -n "Checking/downloading native library..."
|
||||||
|
wget -qN https://github.com/exquo/signal-libs-build/releases/download/$IDENTSTR -O /tmp/$LIBSIG
|
||||||
|
if [ -s /tmp/$LIBSIG ]; then
|
||||||
|
echo "done"
|
||||||
|
else
|
||||||
|
echo "error"
|
||||||
|
echo "Could not find native lib $LIBRARYVERSION for $ARCHL"
|
||||||
|
GETLIBS=0
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
check_and_create_path $SIGNALPATH
|
check_and_create_path $SIGNALPATH
|
||||||
check_and_create_path $SIGNALVAR
|
check_and_create_path $SIGNALVAR
|
||||||
|
|
||||||
@ -399,20 +402,15 @@ if [ $NEEDINSTALL = 1 ]; then
|
|||||||
rm -rf signal
|
rm -rf signal
|
||||||
mv "signal-cli-$SIGNALVERSION" signal
|
mv "signal-cli-$SIGNALVERSION" signal
|
||||||
if [ "$GETLIBS" = 1 ]; then
|
if [ "$GETLIBS" = 1 ]; then
|
||||||
echo -n "Downloading native libraries..."
|
|
||||||
cd /tmp
|
cd /tmp
|
||||||
rm -rf libsignal_jni.so libzkgroup.so
|
tar zxf $LIBSIG
|
||||||
wget -qN https://github.com/bublath/FHEM-Signalbot/raw/main/$IDENTSTR/libsignal_jni.so
|
|
||||||
echo "done"
|
|
||||||
echo "Updating native libs for $IDENTSTR"
|
echo "Updating native libs for $IDENTSTR"
|
||||||
zip -u $SIGNALPATH/signal/lib/libsignal-client-*.jar libsignal_jni.so
|
zip -u $SIGNALPATH/signal/lib/libsignal-client-*.jar libsignal_jni.so
|
||||||
|
|
||||||
#Use updated libs in jar instead of /usr/lib
|
|
||||||
#mv libsignal_jni.so libzkgroup.so $LIBPATH
|
|
||||||
#rm -f $LIBDIR/libzkgroup.so $LIBDIR/libsignal_jni.so
|
|
||||||
fi
|
fi
|
||||||
echo "done"
|
echo "done"
|
||||||
rm -f /tmp/signal-cli-$SIGNALVERSION.tar.gz
|
rm -f /tmp/signal-cli-$SIGNALVERSION.tar.gz
|
||||||
|
#rm -f /tmp/$LIBSIG
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user