From 514cd6140be7614e8ca3998522d40a70d28efaa3 Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Mon, 11 Jun 2018 13:18:35 +0100 Subject: [PATCH] Another pixelfed attempt --- src/freedombone-app-icecast | 2 +- src/freedombone-app-pixelfed | 27 +++++++++++++++++++++++++-- src/freedombone-utils-web | 4 +++- 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/src/freedombone-app-icecast b/src/freedombone-app-icecast index ad84200a..7870bf4c 100755 --- a/src/freedombone-app-icecast +++ b/src/freedombone-app-icecast @@ -30,7 +30,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . -VARIANTS='full' +VARIANTS='full full-vim' IN_DEFAULT_INSTALL=0 SHOW_ON_ABOUT=1 diff --git a/src/freedombone-app-pixelfed b/src/freedombone-app-pixelfed index ac1dc72c..2da04207 100755 --- a/src/freedombone-app-pixelfed +++ b/src/freedombone-app-pixelfed @@ -29,7 +29,7 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . -VARIANTS='' +VARIANTS='full full-vim' IN_DEFAULT_INSTALL=0 SHOW_ON_ABOUT=1 @@ -293,6 +293,7 @@ function install_pixelfed { apt-get -yq install php-gettext php-curl php-gd php-mysql git curl apt-get -yq install memcached php-memcached php-intl exiftool libfcgi0ldbl apt-get -yq install redis-server php-redis autoconf imagemagick imagemagick-dev libtool + apt-get -yq install jpegoptim if [ ! "$PIXELFED_DOMAIN_NAME" ]; then echo $'No domain name was given' @@ -320,7 +321,16 @@ function install_pixelfed { git checkout "$PIXELFED_COMMIT" -b "$PIXELFED_COMMIT" set_completion_param "pixelfed commit" "$PIXELFED_COMMIT" - install_composer + install_composer --no-dev + + if [ ! -f "/var/www/$PIXELFED_DOMAIN_NAME/htdocs/.env.example" ]; then + echo $"Can't find .env.example" + exit 346826285 + fi + cp "/var/www/$PIXELFED_DOMAIN_NAME/htdocs/.env.example" "/var/www/$PIXELFED_DOMAIN_NAME/htdocs/.env" + + php artisan key:generate + php artisan storage:link chmod g+w "/var/www/$PIXELFED_DOMAIN_NAME/htdocs" chown -R www-data:www-data "/var/www/$PIXELFED_DOMAIN_NAME/htdocs" @@ -419,6 +429,19 @@ function install_pixelfed { create_site_certificate "$PIXELFED_DOMAIN_NAME" 'yes' + cd "/var/www/$PIXELFED_DOMAIN_NAME/htdocs" || exit 365845635 + + # hack: within vendor/laravel/framework/src/Illuminate/database/Schema/Blueprint.php + # change return $this->addColumn('json', $column); + # to return $this->addColumn('text', $column); + if [ -f vendor/laravel/framework/src/Illuminate/database/Schema/Blueprint.php ]; then + sed -i "s|\$this->addColumn('json', \$column);|\$this->addColumn('text', \$column);|g" vendor/laravel/framework/src/Illuminate/database/Schema/Blueprint.php + else + find . -name Blueprint.php + fi + + php artisan migrate:fresh + nginx_ensite "$PIXELFED_DOMAIN_NAME" systemctl restart mariadb diff --git a/src/freedombone-utils-web b/src/freedombone-utils-web index 36c3120e..8e8de0c6 100755 --- a/src/freedombone-utils-web +++ b/src/freedombone-utils-web @@ -1074,6 +1074,8 @@ function create_default_web_site { } function install_composer { + composer_options="$1" + # curl -sS https://getcomposer.org/installer | php if [ -f "${HOME}/${PROJECT_NAME}/image_build/composer_install" ]; then php < "${HOME}/${PROJECT_NAME}/image_build/composer_install" @@ -1085,7 +1087,7 @@ function install_composer { if [ -f composer.phar ]; then cp composer.phar composer fi - if ! php composer.phar install; then + if ! php composer.phar install "$composer_options"; then echo $'Unable to run composer install' exit 7252198 fi