#!/bin/ash ##Installer for MailBackup-sys on Alpine Linux #Goto ProjectRoot cd "$( dirname "$0" )" #Install required software apk add dovecot php8-xml php8-fpm php8-curl py3-pip sudo curl openssl #Install Nginx and Nginx Repo wget https://nginx.org/keys/nginx_signing.rsa.pub -O /etc/apk/keys/nginx_signing.rsa.pub echo "@nginx http://nginx.org/packages/mainline/alpine/v$(egrep -o '^[0-9]+\.[0-9]+' /etc/alpine-release)/main" >> /etc/apk/repositories apk add nginx@nginx #Configure Nginx rm -rf /etc/nginx/conf.d/* mv Configs/nginx.conf /etc/nginx/nginx.conf mv Resources/Custom-index.html /var/www/index.html #Configure Dovecot rm /etc/dovecot/* mv Configs/dovecot.conf /etc/dovecot/dovecot.conf mkdir /mail chmod 777 /mail #Configure Php-fpm rm /etc/php8/php-fpm.d/* mv Configs/php.conf /etc/php8/php-fpm.d/railoop.conf #Install RainLoop curl http://www.rainloop.net/repository/webmail/rainloop-community-latest.zip -o /tmp/rlcl.zip echo "$(curl -s https://api.github.com/repos/RainLoop/rainloop-webmail/releases/latest | grep 'tag_name.*' | cut -d : -f 2,3 | tr -d \" |tr -d , |tr -d " ")" > /opt/rainloop-installed unzip -q /tmp/rlcl.zip -d /opt/rainloop #Configure Rainloop mkdir -p /opt/rainloop/data/_data_/_default_/configs /opt/rainloop/data/_data_/_default_/domains touch /opt/rainloop/data/_data_/_default_/domains/disabled mv Configs/RainLoop-application.ini /opt/rainloop/data/_data_/_default_/configs/application.ini mv Configs/RainLoop-Domain-localhost.ini /opt/rainloop/data/_data_/_default_/domains/localhost.ini chown -R nginx:nginx /var/www/rainloop find /var/www/rainloop -type d -exec chmod 755 {} \; find /var/www/rainloop -type f -exec chmod 644 {} \; #Install OfflineIMAP3 OfflineIMAPVer=$(curl -s https://api.github.com/repos/OfflineIMAP/offlineimap3/tags | grep 'name.*' |head -n 1 | cut -d : -f 2,3 | tr -d \" |tr -d , |tr -d " ") echo "$OfflineIMAPVer" > /opt/OfflineIMAP3-installed curl https://github.com/OfflineIMAP/offlineimap3/archive/refs/tags/$OfflineIMAPVer.tar.gz -o /tmp/olim3.zip unzip -q /tmp/olim3.zip -d /opt/OfflineIMAP3 sed -i -e '/kerberos/c\' -e '/cygwin/c\' /opt/OfflineIMAP3/requirements.txt pip3 install -r /opt/OfflineIMAP3/requirements.txt #Add OfflineIMAP config to user skeleton folder mkdir /etc/skel mv Configs/offlineimaprc /etc/skel/.offlineimaprc touch /opt/mailsync.sh echo '30 2 * * 4 ash /opt/mailsync.sh > /dev/null' >> /etc/crontabs/root #Add tool update scripts mv Resources/UpdateRainLoop.sh /opt/UpdateRainLoop.sh mv Resources/UpdateOfflineImap3.sh /opt/UpdateOfflineImap3.sh mv Resources/AddMailBox.sh /opt/AddMailBox.sh