-
-
Save spiikki/024068fbb32c77e0de1805813934a019 to your computer and use it in GitHub Desktop.
Install script for Wuhu (tested on Debian)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# install script for http://wuhu.function.hu/ | |
if [ "$EUID" -ne 0 ] | |
then | |
echo "Please run as root" | |
exit | |
fi | |
apt install \ | |
apache2 \ | |
php7.0 \ | |
php7.0-gd \ | |
php7.0-mysqlnd \ | |
php7.0-curl \ | |
php7.0-mbstring \ | |
mysql-server-5.7 \ | |
libapache2-mod-php7.0 \ | |
mc \ | |
git \ | |
ssh \ | |
sudo | |
# ------------------------------------------------- | |
# set up the files / WWW dir | |
rm -rf /var/www/* | |
chmod -R g+rw /var/www | |
chown -R www-data:www-data /var/www | |
echo "Fetching the latest Wuhu..." | |
git clone https://github.com/Gargaj/wuhu.git /var/www/ | |
mkdir /var/www/entries_private | |
mkdir /var/www/entries_public | |
mkdir /var/www/screenshots | |
chmod -R g+rw /var/www/* | |
chown -R www-data:www-data /var/www/* | |
# ------------------------------------------------- | |
# set up PHP | |
for i in /etc/php/7.0/*/php.ini | |
do | |
sed -i -e 's/^upload_max_filesize.*$/upload_max_filesize = 128M/' $i | |
sed -i -e 's/^post_max_size.*$/post_max_size = 256M/' $i | |
sed -i -e 's/^memory_limit.*$/memory_limit = 512M/' $i | |
sed -i -e 's/^session.gc_maxlifetime.*$/session.gc_maxlifetime = 604800/' $i | |
sed -i -e 's/^short_open_tag.*$/short_open_tag = On/' $i | |
done | |
# ------------------------------------------------- | |
# set up Apache | |
rm /etc/apache2/sites-enabled/* | |
echo -e \ | |
"<VirtualHost *:80>\n" \ | |
"\tDocumentRoot /var/www/www_party\n" \ | |
"\t<Directory />\n" \ | |
"\t\tOptions FollowSymLinks\n" \ | |
"\t\tAllowOverride All\n" \ | |
"\t</Directory>\n" \ | |
"\tErrorLog \${APACHE_LOG_DIR}/party_error.log\n" \ | |
"\tCustomLog \${APACHE_LOG_DIR}/party_access.log combined\n" \ | |
"\t</VirtualHost>\n" \ | |
"\n" \ | |
"<VirtualHost *:80>\n" \ | |
"\tDocumentRoot /var/www/www_admin\n" \ | |
"\tServerName admin.lan\n" \ | |
"\t<Directory />\n" \ | |
"\t\tOptions FollowSymLinks\n" \ | |
"\t\tAllowOverride All\n" \ | |
"\t</Directory>\n" \ | |
"\tErrorLog \${APACHE_LOG_DIR}/admin_error.log\n" \ | |
"\tCustomLog \${APACHE_LOG_DIR}/admin_access.log combined\n" \ | |
"</VirtualHost>\n" \ | |
> /etc/apache2/sites-available/wuhu.conf | |
a2ensite wuhu | |
echo "Restarting Apache..." | |
service apache2 restart | |
# ------------------------------------------------- | |
# TODO? set up nameserver / dhcp? | |
# ------------------------------------------------- | |
# set up MySQL | |
echo -e "Enter a MySQL password for the Wuhu user: \c" | |
read -s WUHU_MYSQL_PASS | |
echo "Now connecting to MySQL..." | |
echo -e \ | |
"CREATE DATABASE wuhu;\n" \ | |
"GRANT ALL PRIVILEGES ON wuhu.* TO 'wuhu'@'%' IDENTIFIED BY '$WUHU_MYSQL_PASS';\n" \ | |
| mysql -u root -p | |
# ------------------------------------------------- | |
# We're done, wahey! | |
printf "\n\n\n*** CONGRATULATIONS, Wuhu is now ready to configure at http://admin.lan\n" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment