MoinMoin Logo
  • Kommentare
  • Geschützte Seite
  • Menu
    • Navigation
    • AktuelleÄnderungen
    • SeiteFinden
    • ÜbersichtsKarte
    • Help
    • HilfeInhalt
    • HilfeZurMoinWikiSyntax
    • Anzeige
    • Dateianhänge
    • Info
    • Rohform
    • Druckansicht
    • Editieren
    • Laden
    • Speichern
  • Anmelden

Navigation

  • AktuelleÄnderungen
  • SeiteFinden
  • HilfeInhalt

Seiteninhalt hochladen

Sie können für die unten genannte Seite Inhalt hochladen. Wenn Sie den Seitennamen ändern, können Sie auch Inhalt für eine andere Seite hochladen. Wenn der Seitenname leer ist, leiten wir den Seitennamen vom Dateinamen ab.

Datei, aus der der Seiteninhalt geladen wird
Seitenname
Kommentar

Revision 64 vom 2022-01-23 10:26:15
  • Eigenen Debian-Container mit fhem erzeugen

Eigenen Debian-Container mit fhem erzeugen

1. Den Container als Daemon laufen lassen

docker run -d --network fhem-netzwerk --restart unless-stopped --name fhem2 --tmpfs /tmp --tmpfs /run --tmpfs /run/lock -v /sys/fs/cgroup:/sys/fs/cgroup:ro jrei/systemd-debian:bullseye

2. Konsole im Container ausführen

docker exec -it fhem2 /bin/bash

3. Container für fhem vorbereiten (natürlich im Konsolenfenster!)

apt-get update && apt-get -y dist-upgrade && apt-get -y install -f init procps wget vim bash-completion perl-base libdevice-serialport-perl libwww-perl libio-socket-ssl-perl libcgi-pm-perl libjson-perl sqlite3 libdbd-sqlite3-perl libtext-diff-perl libtimedate-perl libmail-imapclient-perl libgd-graph-perl libtext-csv-perl libxml-simple-perl liblist-moreutils-perl fonts-liberation libimage-librsvg-perl libgd-text-perl libsocket6-perl libio-socket-inet6-perl libmime-base64-perl libimage-info-perl libusb-1.0-0-dev libnet-server-perl libdate-manip-perl libhtml-treebuilder-xpath-perl libmojolicious-perl libxml-bare-perl libauthen-oath-perl libconvert-base32-perl libmodule-pluggable-perl libnet-bonjour-perl libcrypt-urandom-perl nodejs npm libnet-dbus-perl default-jre git curl mc autoconf libtool sudo protobuf-compiler zip unzip tar make libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext build-essential asciidoc

mkdir -p ~/_download
cd ~/_download

wget http://fhem.de/fhem-6.1.deb

apt-get -y install -f ./fhem-6.1.deb

cp /opt/fhem/contrib/init-scripts/fhem.service /etc/systemd/system/
systemctl daemon-reload

4. signal-cli installieren

#cd ~/_download
#wget https://svn.fhem.de/fhem/trunk/fhem/contrib/signal/signal_install.sh
#chmod 755 signal_install.sh
#./signal_install.sh


cpan install Protocol::DBus
adduser --disabled-password --gecos none signal-cli

4.1 Kurze Unterbrechung:

Wenn ausgegeben wird: "Waiting for signal-cli to become ready.........."

Mit Strg + C unterbrechen

cd ~/_download
wget https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17%2B35/OpenJDK17-jdk_arm_linux_hotspot_17_35.tar.gz
cd /opt
tar zxf ~/_download/OpenJDK17-jdk_arm_linux_hotspot_17_35.tar.gz
rm -rf /opt/java
mv jdk* java
cat >> ~/.bashrc << "EOFJAVA"
export JAVA_HOME="/opt/java"
EOFJAVA

cd ~/_download
wget https://downloads.gradle-dn.com/distributions/gradle-7.1-bin.zip
rm -rf /opt/gradle
mkdir -p /opt/gradle
unzip -d /opt/gradle ./gradle-7.1-bin.zip
cat >> ~/.bashrc << "EOFPROFILE"
export PATH="$PATH:/opt/gradle/gradle-7.1/bin"
EOFPROFILE

4.2 Rust installieren

cd ~/_download
curl https://sh.rustup.rs -sSf | sh
cp /tmp/*/rustup-init ./
chmod 755 rustup-init # Bei der Abfrage: Noch einmal "Enter" drücken!
./rustup-init
source ~/.cargo/env 

reboot

4.3 git installieren (Upgrade)

cd ~/_download
cd git
git clone https://github.com/git/git.git
make prefix=/usr install install-doc install-html install-info 

4.4 signal-cli installieren

cd ~/_download
git clone https://github.com/AsamK/signal-cli.git
cd signal-cli
gradle build --stacktrace
gradle installDist
gradle distTar

4.4 zkgroup libs übersetzen

cd ~/_download
git clone https://github.com/signalapp/zkgroup.git
cd zkgroup
git checkout v0.8.2
cd ffi/java
make # Fehler am Ende ignorieren!

mkdir -p /opt/signal/lib
chown -R signal-cli:dialout /opt/signal

cp ../../target/release/libzkgroup.so /opt/signal/lib

4.5 libsignal-client übersetzen

cd ~/_download
git clone https://github.com/signalapp/libsignal-client.git
cd libsignal-client
git tag -l
git checkout v0.9.8
cd java
sed -i "s/, ':android'//" settings.gradle
./build_jni.sh desktop

mkdir -p /opt/signal/lib
chown -R signal-cli:dialout /opt/signal


cp ../target/release/libsignal_jni.so /opt/signal/lib
ldconfig

4.6 Libraries ersetzen

cd /opt/signal/lib
sudo -u signal-cli zip -u signal-client-java-*.jar libsignal_jni.so
sudo -u signal-cli zip -u zkgroup-java-*.jar libzkgroup.so

cd ~/_download
./signal_install.sh

systemctl start signal
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01