#!/bin/sh PROGRAM=setup-acf VERSION=@VERSION@ PREFIX= . $PREFIX/lib/libalpine.sh usage() { echo "$PROGRAM [-ahn] [-e email] [-l address] [PACKAGE...]" exit 0; } pkgs="acf-core acf-alpine-baselayout acf-apk-tools" while getopts "ae:hl:n" opt ; do case $opt in a) pkgs=`apk_fetch -l | grep ^acf-`;; e) EMAIL="$OPTARG";; h) usage;; l) address="$OPTARG";; n) create_passwd=no;; *) usage;; esac done shift `expr $OPTIND - 1` while [ $# -gt 0 ]; do pkgs="$pkgs acf-$1" shift done if [ "$create_passwd" != "no" ]; then askpassword "root ACF" mkdir -p /etc/acf if [ -f /etc/acf/passwd ]; then mv /etc/acf/passwd /etc/acf/passwd.backup fi # this will show password on process list but we assume user is alone # on the box at this stage _md5passwd=$(echo -n "$_password" | md5sum | cut -d' ' -f1) echo "root:$_md5passwd:Admin account:ADMIN" >/etc/acf/passwd chmod 600 /etc/acf/passwd fi # install packages apk_add mini_httpd $pkgs || exit 1 # setup mini_httpd and start it if [ -d /var/www/localhost/htdocs ]; then mv /var/www/localhost/htdocs /var/www/localhost/htdocs.old fi mkdir -p /var/www/localhost/ ln -s /usr/share/acf/www/ /var/www/localhost/htdocs lbu add /var/www/localhost/htdocs SSLDIR=/etc/ssl/mini_httpd SSLCNF=$SSLDIR/mini_httpd.cnf KEYFILE=$SSLDIR/server.key CRTFILE=$SSLDIR/server.crt PEMFILE=$SSLDIR/server.pem if [ -f $PEMFILE ]; then echo "$PEMFILE already exist." else mkdir -p $SSLDIR cat >$SSLCNF < $KEYFILE openssl req -new -x509 -nodes -sha1 -days 3650 -key $KEYFILE \ -config $SSLCNF > $CRTFILE cat $KEYFILE >> $CRTFILE rm $KEYFILE mv $CRTFILE $PEMFILE fi cat >/etc/mini_httpd.conf <> /etc/mini_httpd.conf fi rc-update -q add mini_httpd default /etc/init.d/mini_httpd restart