From aef53160daa1354714466543bb0d7611b3fec3d9 Mon Sep 17 00:00:00 2001 From: fakuivan Date: Mon, 12 Nov 2018 14:30:21 -0300 Subject: [PATCH] Add support for HTTPS downloads on install Remove rawgit from downloads provider --- install.sh | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/install.sh b/install.sh index 8a54b8e..7345f6d 100644 --- a/install.sh +++ b/install.sh @@ -2,14 +2,33 @@ # https://github.com/robzr/bearDropper # bearDropper install script - @robzr +download_github_file () { + local output="$1" stub="$2" + local https_url="https://raw.githubusercontent.com/$stub" + local ca_bundle='/etc/ssl/certs/ca-certificates.crt' + if [[ -f "$ca_bundle" ]]; then + if [[ -x "$(command -v curl)" ]]; then + curl -Ls --cacert "$ca_bundle" --output "$output" -- "$https_url"; return $? + elif ldd "$(which wget)" | grep -qE 'tls|ssl|crypto' || \ + ldd "$(which wget)" | grep -q 'uclient' && test -f /lib/libustream-ssl.so; then + wget -q --ca-certificate "$ca_bundle" -O "$output" -- "$https_url"; return $? + fi + else + # rawgit stopped providing HTTP downloads + return 1 + fi +} + if [ -f /etc/init.d/bearDropper ] ; then echo Detected previous version of bearDropper - stopping /etc/init.d/bearDropper stop fi echo -e 'Retrieving and installing latest version' -wget -qO /etc/init.d/bearDropper http://rawgit.com/robzr/bearDropper/master/src/init.d/bearDropper -wget -qO /etc/config/bearDropper http://rawgit.com/robzr/bearDropper/master/src/config/bearDropper -wget -qO /usr/sbin/bearDropper http://rawgit.com/robzr/bearDropper/master/bearDropper +( + download_github_file /etc/init.d/bearDropper robzr/bearDropper/master/src/init.d/bearDropper && + download_github_file /etc/config/bearDropper robzr/bearDropper/master/src/config/bearDropper && + download_github_file /usr/sbin/bearDropper robzr/bearDropper/master/bearDropper +) || { echo 'Failed to download script' 1>&2; exit 1; } chmod 755 /usr/sbin/bearDropper /etc/init.d/bearDropper echo -e 'Processing historical log data (this can take a while)' /usr/sbin/bearDropper -m entire -f stdout