mirror of
https://github.com/YunoHost-Apps/friendica_ynh.git
synced 2024-09-03 18:36:14 +02:00
Upgraded to 2018.09 (#12)
* Updated to version 2018.09 (#11) * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Upgrade to 2018.09 * Fixed ldap plugin in 2018.09 * Removed name from ldap configuration * Updation from previous version fix * Updation from previous version fix * Updation from previous version fix * Put commenting at right palce
This commit is contained in:
parent
faf3b2b707
commit
f31d1016be
10 changed files with 147 additions and 41 deletions
|
@ -6,7 +6,7 @@
|
|||
|
||||
|
||||
[Friendica](http://friendi.ca/) integration for YunoHost<br>
|
||||
**Version:2018.05**<br><br>
|
||||
**Version:2018.09**<br><br>
|
||||
|
||||
Current snapshot in *sources*:
|
||||
|
||||
|
|
21
conf/addon.ini.php
Normal file
21
conf/addon.ini.php
Normal file
|
@ -0,0 +1,21 @@
|
|||
<?php return <<<INI
|
||||
|
||||
; Copy this configuration file to addon.ini.php and edit it if you want to configure addons, see below example for the twitter addon
|
||||
|
||||
;[twitter]
|
||||
;consumerkey = localhost
|
||||
;consumersecret = mysqlusername
|
||||
|
||||
[system]
|
||||
addon = ldapauth
|
||||
|
||||
[ldapauth]
|
||||
ldap_server = 'localhost'
|
||||
ldap_searchdn = 'ou=users,dc=yunohost,dc=org'
|
||||
ldap_userattr = 'uid'
|
||||
ldap_autocreateaccount = 'true'
|
||||
ldap_autocreateaccount_emailattribute = 'mail'
|
||||
|
||||
|
||||
INI;
|
||||
// Keep this line
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://github.com/friendica/friendica-addons/archive/2018.05.zip
|
||||
SOURCE_SUM=e00143e9302b25b01886deac5302d326
|
||||
SOURCE_URL=https://github.com/friendica/friendica-addons/archive/2018.09.zip
|
||||
SOURCE_SUM=9a9e4702419e369ffc7ecfd8fb5b5f97
|
||||
SOURCE_SUM_PRG=md5sum
|
||||
SOURCE_FORMAT=zip
|
||||
SOURCE_IN_SUBDIR=true
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://github.com/friendica/friendica/archive/2018.05.zip
|
||||
SOURCE_SUM=9b5497423ca7ce4b581fa97ca12f412d
|
||||
SOURCE_URL=https://github.com/friendica/friendica/archive/2018.09.zip
|
||||
SOURCE_SUM=f127463d2c6c1c593b1f1ae5ea80dcf3
|
||||
SOURCE_SUM_PRG=md5sum
|
||||
SOURCE_FORMAT=zip
|
||||
SOURCE_IN_SUBDIR=true
|
||||
|
|
41
conf/local.ini.php
Normal file
41
conf/local.ini.php
Normal file
|
@ -0,0 +1,41 @@
|
|||
<?php return <<<INI
|
||||
|
||||
; If automatic system installation fails:
|
||||
|
||||
; Copy this file to local.ini.php
|
||||
|
||||
; Why local.ini.php? Because it contains sensitive information which could
|
||||
; give somebody complete control of your database. Apache's default
|
||||
; configuration will interpret any .php file as a script and won't show the values
|
||||
|
||||
; Then set the following for your MySQL installation
|
||||
|
||||
[database]
|
||||
hostname = localhost
|
||||
username = mysqlusername
|
||||
password = mysqlpassword
|
||||
database = mysqldatabasename
|
||||
charset = utf8mb4
|
||||
|
||||
|
||||
; ****************************************************************
|
||||
; The configuration below will be overruled by the admin panel.
|
||||
; Changes made below will only have an effect if the database does
|
||||
; not contain any configuration for the friendica system.
|
||||
; ****************************************************************
|
||||
|
||||
[config]
|
||||
admin_email =
|
||||
|
||||
sitename = Friendica Social Network
|
||||
|
||||
register_policy = REGISTER_OPEN
|
||||
register_text =
|
||||
|
||||
[system]
|
||||
default_timezone = UTC
|
||||
|
||||
language = en
|
||||
|
||||
INI;
|
||||
// Keep this line
|
|
@ -8,7 +8,7 @@
|
|||
},
|
||||
"url": "http://friendi.ca",
|
||||
"license": "free",
|
||||
"version": "2018.05",
|
||||
"version": "2018.09",
|
||||
"maintainer": {
|
||||
"name": "Anmol Sharma",
|
||||
"email": "anmol@datamol.org"
|
||||
|
|
|
@ -12,3 +12,37 @@ ynh_delete_file_checksum () {
|
|||
local checksum_setting_name=checksum_${1//[\/ ]/_} # Replace all '/' and ' ' by '_'
|
||||
ynh_app_setting_delete $app $checksum_setting_name
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
# COMMON ROUNDCUBE FUNCTIONS
|
||||
# =============================================================================
|
||||
|
||||
# Execute a composer command from a given directory
|
||||
# usage: composer_exec workdir COMMAND [ARG ...]
|
||||
exec_composer() {
|
||||
local workdir=$1
|
||||
shift 1
|
||||
|
||||
COMPOSER_HOME="${workdir}/.composer" \
|
||||
php "${workdir}/composer.phar" $@ \
|
||||
-d "${workdir}" --quiet --no-interaction
|
||||
}
|
||||
|
||||
# Install and initialize Composer in the given directory
|
||||
# usage: init_composer destdir
|
||||
init_composer() {
|
||||
local destdir=$1
|
||||
|
||||
# install composer
|
||||
curl -sS https://getcomposer.org/installer \
|
||||
| COMPOSER_HOME="${destdir}/.composer" \
|
||||
php -- --quiet --install-dir="$destdir" \
|
||||
|| ynh_die "Unable to install Composer"
|
||||
|
||||
# install composer.json
|
||||
cp "${destdir}/composer.json-dist" "${destdir}/composer.json"
|
||||
|
||||
# update dependencies to create composer.lock
|
||||
exec_composer "$destdir" install --no-dev \
|
||||
|| ynh_die "Unable to update Roundcube core dependencies"
|
||||
}
|
||||
|
|
|
@ -89,6 +89,7 @@ ynh_mysql_setup_db $db_name $db_name
|
|||
ynh_app_setting_set $app final_path $final_path
|
||||
# Download, check integrity, uncompress and patch the source from app.src
|
||||
ynh_setup_source "$final_path"
|
||||
cp -f "$final_path/.htaccess-dist" "$final_path/.htaccess"
|
||||
|
||||
# 2 - Addons
|
||||
sudo mkdir $final_path/addon
|
||||
|
@ -103,20 +104,20 @@ ynh_add_nginx_config
|
|||
|
||||
|
||||
# configure friendica
|
||||
sudo cp "../conf/htconfig.php" "/var/www/$app/.htconfig.php"
|
||||
ynh_replace_string "your.mysqlhost.com" "localhost" "$final_path/.htconfig.php"
|
||||
ynh_replace_string "mysqlusername" "$db_name" "$final_path/.htconfig.php"
|
||||
ynh_replace_string "mysqldatabasename" "$db_name" "$final_path/.htconfig.php"
|
||||
ynh_replace_string "mysqlpassword" "$db_pwd" "$final_path/.htconfig.php"
|
||||
ynh_replace_string "__ADMIN_EMAIL__" "$admin_mail" "$final_path/.htconfig.php"
|
||||
ynh_replace_string "die('The configuration you did manually contains some mistakes. Please have a look at your .htconfig.php file.');" "// die('The configuration you did manually contains some mistakes. Please have a look at your .htconfig.php file.');" "$final_path/.htconfig.php"
|
||||
sudo cp -f "/var/www/$app/config/local-sample.ini.php" "/var/www/$app/config/local.ini.php"
|
||||
ynh_replace_string "your.mysqlhost.com" "localhost" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "mysqlusername" "$db_name" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "mysqldatabasename" "$db_name" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "mysqlpassword" "$db_pwd" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "admin_email =" "admin_email = $admin_mail" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "register_policy = REGISTER_OPEN" "register_policy = REGISTER_CLOSED" "$final_path/config/local.ini.php"
|
||||
|
||||
|
||||
# init db
|
||||
ynh_mysql_connect_as "$db_name" "$db_pwd" "$db_name" < "$final_path/database.sql"
|
||||
|
||||
# addon config
|
||||
sudo su -c "cat ../conf/conf.php >> $final_path/.htconfig.php"
|
||||
sudo cp "../conf/addon.ini.php" "$final_path/config/."
|
||||
|
||||
#=================================================
|
||||
# CREATE DEDICATED USER
|
||||
|
@ -138,7 +139,7 @@ ynh_add_fpm_config
|
|||
sudo chown -R www-data:www-data $final_path
|
||||
# 3 - some extra folders
|
||||
sudo mkdir -p "${final_path}/view/smarty3"
|
||||
sudo chmod -R 777 $final_path/view/smarty3
|
||||
sudo chmod -R 775 $final_path/view/smarty3
|
||||
chown -R $app: $final_path
|
||||
|
||||
# Set up poller
|
||||
|
@ -151,7 +152,7 @@ sudo cp ../conf/poller-cron /etc/cron.d/$app
|
|||
#=================================================
|
||||
|
||||
# Calculate and store the config file checksum into the app settings
|
||||
ynh_store_file_checksum "$final_path/.htconfig.php"
|
||||
ynh_store_file_checksum "$final_path/config/local.ini.php"
|
||||
|
||||
# Run composer
|
||||
(cd $final_path && sudo php bin/composer.phar install)
|
||||
|
|
|
@ -84,7 +84,7 @@ ynh_install_app_dependencies 'php-mbstring|base-files(<<9.0)' php5-cli 'php5-ima
|
|||
|
||||
|
||||
# set permission
|
||||
sudo chmod -R 777 $final_path/view/smarty3
|
||||
chmod -R 775 $final_path/view/smarty3
|
||||
|
||||
#=================================================
|
||||
# RESTORE THE CRON FILE
|
||||
|
|
|
@ -18,6 +18,9 @@ app=$YNH_APP_INSTANCE_NAME
|
|||
domain=$(ynh_app_setting_get $app domain)
|
||||
path_url=$(ynh_app_setting_get $app path)
|
||||
final_path=$(ynh_app_setting_get $app final_path)
|
||||
db_name=$(ynh_app_setting_get $app db_name)
|
||||
db_pwd=$(ynh_app_setting_get $app mysqlpwd)
|
||||
admin_mail=$(ynh_app_setting_get $app email)
|
||||
|
||||
#=================================================
|
||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||
|
@ -32,21 +35,6 @@ ynh_clean_setup () {
|
|||
# Exit if an error occurs during the execution of the script
|
||||
ynh_abort_if_errors
|
||||
|
||||
# Add Dependencies
|
||||
ynh_install_app_dependencies 'php-mbstring|base-files(<<9.0)' php5-cli 'php5-imagick|php-imagick' php5-gd php5-mcrypt 'php-xml|base-files(<<9.0)'
|
||||
|
||||
|
||||
# Create a temporary directory
|
||||
tmpdir="$(mktemp -d)"
|
||||
# Backup the config file in the temp dir
|
||||
cp -a "$final_path/.htconfig.php" "$tmpdir/.htconfig.php"
|
||||
|
||||
# If final_path doesn't exist, create it
|
||||
if [ -z $final_path ]; then
|
||||
final_path=/var/www/$app
|
||||
ynh_app_setting_set $app final_path $final_path
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# CHECK THE PATH
|
||||
#=================================================
|
||||
|
@ -54,18 +42,40 @@ fi
|
|||
# Normalize the URL path syntax
|
||||
path_url=$(ynh_normalize_url_path $path_url)
|
||||
|
||||
# Add Dependencies
|
||||
ynh_install_app_dependencies 'php-mbstring|base-files(<<9.0)' php5-cli 'php5-imagick|php-imagick' php5-gd php5-mcrypt 'php-xml|base-files(<<9.0)'
|
||||
|
||||
|
||||
# If final_path doesn't exist, create it
|
||||
if [ -z $final_path ]; then
|
||||
final_path=/var/www/$app
|
||||
ynh_app_setting_set $app final_path $final_path
|
||||
fi
|
||||
if [ -f $final_path/.htconfig.php ]; then
|
||||
rm "$final_path/.htconfig.php"
|
||||
fi
|
||||
|
||||
# Download, check integrity, uncompress and patch the source from app.src
|
||||
ynh_setup_source "$final_path"
|
||||
sudo cp -a "$tmpdir/.htconfig.php" "${final_path}"
|
||||
sudo rm -Rf "$tmpdir"
|
||||
|
||||
# Copy config file for correct place
|
||||
cp -f "/var/www/$app/config/local-sample.ini.php" "/var/www/$app/config/local.ini.php"
|
||||
|
||||
# Replace strings in config file
|
||||
ynh_replace_string "your.mysqlhost.com" "localhost" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "mysqlusername" "$db_name" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "mysqldatabasename" "$db_name" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "mysqlpassword" "$db_pwd" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "admin_email =" "admin_email = $admin_mail" "$final_path/config/local.ini.php"
|
||||
ynh_replace_string "register_policy = REGISTER_OPEN" "register_policy = REGISTER_CLOSED" "$final_path/config/local.ini.php"
|
||||
|
||||
|
||||
#Copy Addons
|
||||
sudo mkdir $final_path/addon
|
||||
rm -Rf "$final_path/addon"
|
||||
ynh_setup_source "$final_path/addon" "addons"
|
||||
|
||||
# 3 - some extra folders
|
||||
sudo mkdir -p "${final_path}/view/smarty3"
|
||||
sudo chmod -R 777 $final_path/view/smarty3
|
||||
sudo chmod -R 775 $final_path/view/smarty3
|
||||
|
||||
#=================================================
|
||||
# CREATE DEDICATED USER
|
||||
|
@ -79,7 +89,6 @@ chown -R $app: $final_path
|
|||
|
||||
# Create a dedicated nginx config
|
||||
ynh_add_nginx_config
|
||||
# configure friendica
|
||||
|
||||
#=================================================
|
||||
# PHP-FPM CONFIGURATION
|
||||
|
@ -89,11 +98,11 @@ ynh_add_nginx_config
|
|||
ynh_add_fpm_config
|
||||
|
||||
# Verify the checksum and backup the file if it's different
|
||||
ynh_backup_if_checksum_is_different "$final_path/.htconfig.php"
|
||||
ynh_backup_if_checksum_is_different "$final_path/config/local.ini.php"
|
||||
# Recalculate and store the config file checksum into the app settings
|
||||
ynh_store_file_checksum "$final_path/.htconfig.php"
|
||||
ynh_store_file_checksum "$final_path/config/local.ini.php"
|
||||
|
||||
# Set up poller
|
||||
# Set up cron job
|
||||
ynh_replace_string "__YNH_WWW_PATH__" "$final_path" ../conf/poller-cron
|
||||
ynh_replace_string "__USER__" "$app" ../conf/poller-cron
|
||||
sudo cp ../conf/poller-cron /etc/cron.d/$app
|
||||
|
|
Loading…
Reference in a new issue