Initial commit.
[src/xds/xds-agent.git] / scripts / get-syncthing.sh
1 #!/bin/bash
2
3 # Configurable variables
4 [ -z "$SYNCTHING_VERSION" ] && SYNCTHING_VERSION=0.14.25
5 [ -z "$SYNCTHING_INOTIFY_VERSION" ] && SYNCTHING_INOTIFY_VERSION=0.8.5
6 [ -z "$DESTDIR" ] && DESTDIR=/usr/local/bin
7 [ -z "$TMPDIR" ] && TMPDIR=/tmp
8
9
10 TEMPDIR=$TMPDIR/.get-st.$$
11 mkdir -p ${TEMPDIR} && cd ${TEMPDIR} || exit 1
12 trap "cleanExit" 0 1 2 15
13 cleanExit ()
14 {
15    rm -rf ${TEMPDIR}
16 }
17
18 echo "Get Syncthing..."
19
20 ## Install Syncthing + Syncthing-inotify
21 ## gpg: key 00654A3E: public key "Syncthing Release Management <release@syncthing.net>" imported
22 gpg -q --keyserver pool.sks-keyservers.net --recv-keys 37C84554E7E0A261E4F76E1ED26E6ED000654A3E || exit 1
23
24 tarball="syncthing-linux-amd64-v${SYNCTHING_VERSION}.tar.gz" \
25         && curl -sfSL "https://github.com/syncthing/syncthing/releases/download/v${SYNCTHING_VERSION}/${tarball}" -O \
26     && curl -sfSL "https://github.com/syncthing/syncthing/releases/download/v${SYNCTHING_VERSION}/sha1sum.txt.asc" -O \
27         && gpg -q --verify sha1sum.txt.asc \
28         && grep -E " ${tarball}\$" sha1sum.txt.asc | sha1sum -c - \
29         && rm sha1sum.txt.asc \
30         && tar -xvf "$tarball" --strip-components=1 "$(basename "$tarball" .tar.gz)"/syncthing \
31         && mv syncthing ${DESTDIR}/syncthing
32
33
34 echo "Get Syncthing-inotify..."
35 tarball="syncthing-inotify-linux-amd64-v${SYNCTHING_INOTIFY_VERSION}.tar.gz" \
36     && curl -sfSL "https://github.com/syncthing/syncthing-inotify/releases/download/v${SYNCTHING_INOTIFY_VERSION}/${tarball}" -O \
37     && tar -xvf "${tarball}" syncthing-inotify \
38         && mv syncthing-inotify ${DESTDIR}/syncthing-inotify
39
40 echo "DONE: syncthing and syncthing-inotify successfuly installed in ${DESTDIR}"