#!/bin/bash # NextCloudPi installation script # # Copyleft 2017 by Ignacio Nunez Hernanz # GPL licensed (see end of file) * Use at your own risk! # # Usage: ./install.sh # # more details at https://ownyourbits.com BRANCH=master #DBG=x set -e$DBG TMPDIR="$(mktemp -d /tmp/nextcloudpi.XXXXXX || (echo "Failed to create temp dir. Exiting" >&2 ; exit 1) )" trap "rm -rf \"${TMPDIR}\" ; exit 0" 0 1 2 3 15 [[ ${EUID} -ne 0 ]] && { printf "Must be run as root. Try 'sudo $0'\n" exit 1 } # check_distro grep -q -e "Debian GNU/Linux 9" -e "Raspbian GNU/Linux 9" /etc/issue || { echo "distro not supported"; exit 1; } # check installed software type mysqld &>/dev/null && echo ">>> WARNING: existing mysqld configuration will be changed <<<" # get install code echo "Getting build code..." apt-get update apt-get install --no-install-recommends -y wget ca-certificates sudo pushd "$TMPDIR" wget -O- --content-disposition https://github.com/nextcloud/nextcloudpi/archive/"$BRANCH"/latest.tar.gz \ | tar -xz \ || exit 1 cd - && cd "$TMPDIR"/nextcloudpi-"$BRANCH" # install NCP echo -e "\nInstalling NextCloudPi" source etc/library.sh mkdir -p /usr/local/etc/ncp-config.d/ cp etc/ncp-config.d/nc-nextcloud.cfg /usr/local/etc/ncp-config.d/ install_app lamp.sh install_app bin/ncp/CONFIG/nc-nextcloud.sh run_app_unsafe bin/ncp/CONFIG/nc-nextcloud.sh systemctl restart mysqld # TODO this shouldn't be necessary, but somehow it's needed in Debian 9.6. Fixme install_app ncp.sh run_app_unsafe bin/ncp/CONFIG/nc-init.sh bash /usr/local/bin/ncp-provisioning.sh popd IFACE="$( ip r | grep "default via" | awk '{ print $5 }' | head -1 )" IP="$( ip a show dev "$IFACE" | grep global | grep -oP '\d{1,3}(.\d{1,3}){3}' | head -1 )" echo "Done. First: Visit https://$IP/ https://nextcloudpi.local/ (also https://nextcloudpi.lan/ or https://nextcloudpi/ on windows and mac) to activate your instance of NC, and save the auto generated passwords. You may review or reset them anytime by using nc-admin and nc-passwd. Second: Type 'sudo ncp-config' to further configure NCP, or access ncp-web on https://$IP:4443/ Note: You will have to add an exception, to bypass your browser warning when you first load the activation and :4443 pages. You can run letsencrypt to get rid of the warning if you have a (sub)domain available. " exit 0 # License # # This script is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This script is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this script; if not, write to the # Free Software Foundation, Inc., 59 Temple Place, Suite 330, # Boston, MA 02111-1307 USA