diff --git a/ALL_README.md b/ALL_README.md index a01b345..152f2e7 100644 --- a/ALL_README.md +++ b/ALL_README.md @@ -1,6 +1,7 @@ # All available README files by language - [Read the README in English](README.md) +- [Lea el README en español](README_es.md) - [Irakurri README euskaraz](README_eu.md) - [Lire le README en français](README_fr.md) - [Le o README en galego](README_gl.md) diff --git a/README.md b/README.md index 99ba42d..b7e1bcd 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ Be aware, Redis database backup and restore is not fully implemented. If you want to install Etherpad with plugins and mysql database: https://github.com/YunoHost-Apps/etherpad_mypads_ynh", -**Shipped version:** 2.0.3~ynh1 +**Shipped version:** 2.1.0~ynh2 **Demo:** diff --git a/README_es.md b/README_es.md new file mode 100644 index 0000000..018271b --- /dev/null +++ b/README_es.md @@ -0,0 +1,53 @@ + + +# Etherpad para Yunohost + +[![Nivel de integración](https://dash.yunohost.org/integration/etherpad.svg)](https://dash.yunohost.org/appci/app/etherpad) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/etherpad.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/etherpad.maintain.svg) + +[![Instalar Etherpad con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=etherpad) + +*[Leer este README en otros idiomas.](./ALL_README.md)* + +> *Este paquete le permite instalarEtherpad rapidamente y simplement en un servidor YunoHost.* +> *Si no tiene YunoHost, visita [the guide](https://yunohost.org/install) para aprender como instalarla.* + +## Descripción general + +Etherpad is a real-time collaborative editor scalable to thousands of simultaneous real time users. It provides full data export capabilities, and runs on your server, under your control. +This version of Etherpad is installed without plugins and uses Redis as database. +Be aware, Redis database backup and restore is not fully implemented. +If you want to install Etherpad with plugins and mysql database: https://github.com/YunoHost-Apps/etherpad_mypads_ynh", + + +**Versión actual:** 2.1.0~ynh2 + +**Demo:** + +## Capturas + +![Captura de Etherpad](./doc/screenshots/screenshot.png) + +## Documentaciones y recursos + +- Sitio web oficial: +- Documentación administrador oficial: +- Repositorio del código fuente oficial de la aplicación : +- Catálogo YunoHost: +- Reportar un error: + +## Información para desarrolladores + +Por favor enviar sus correcciones a la [`branch testing`](https://github.com/YunoHost-Apps/etherpad_ynh/tree/testing + +Para probar la rama `testing`, sigue asÍ: + +```bash +sudo yunohost app install https://github.com/YunoHost-Apps/etherpad_ynh/tree/testing --debug +o +sudo yunohost app upgrade etherpad -u https://github.com/YunoHost-Apps/etherpad_ynh/tree/testing --debug +``` + +**Mas informaciones sobre el empaquetado de aplicaciones:** diff --git a/README_eu.md b/README_eu.md index 812b63f..a6793c9 100644 --- a/README_eu.md +++ b/README_eu.md @@ -22,7 +22,7 @@ Be aware, Redis database backup and restore is not fully implemented. If you want to install Etherpad with plugins and mysql database: https://github.com/YunoHost-Apps/etherpad_mypads_ynh", -**Paketatutako bertsioa:** 2.0.3~ynh1 +**Paketatutako bertsioa:** 2.1.0~ynh2 **Demoa:** diff --git a/README_fr.md b/README_fr.md index 00285ae..c56ba98 100644 --- a/README_fr.md +++ b/README_fr.md @@ -22,7 +22,7 @@ Attention, la sauvegarde et la restauration de la base de données Redis ne sont Si vous souhaitez installer Etherpad avec les plugins et la base de données mysql : https://github.com/YunoHost-Apps/etherpad_mypads_ynh", -**Version incluse :** 2.0.3~ynh1 +**Version incluse :** 2.1.0~ynh2 **Démo :** diff --git a/README_gl.md b/README_gl.md index 442625d..b71d710 100644 --- a/README_gl.md +++ b/README_gl.md @@ -22,7 +22,7 @@ Be aware, Redis database backup and restore is not fully implemented. If you want to install Etherpad with plugins and mysql database: https://github.com/YunoHost-Apps/etherpad_mypads_ynh", -**Versión proporcionada:** 2.0.3~ynh1 +**Versión proporcionada:** 2.1.0~ynh2 **Demo:** diff --git a/README_zh_Hans.md b/README_zh_Hans.md index c38ac7c..52edbf5 100644 --- a/README_zh_Hans.md +++ b/README_zh_Hans.md @@ -22,7 +22,7 @@ Be aware, Redis database backup and restore is not fully implemented. If you want to install Etherpad with plugins and mysql database: https://github.com/YunoHost-Apps/etherpad_mypads_ynh", -**分发版本:** 2.0.3~ynh1 +**分发版本:** 2.1.0~ynh2 **演示:** diff --git a/conf/nginx.conf b/conf/nginx.conf index 8ae2f3e..0217f01 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -7,11 +7,11 @@ location __PATH__/ { proxy_buffering off; more_set_headers "X-Frame-Options : ALLOWALL"; - proxy_set_header X-Real-IP $remote_addr; # http://wiki.nginx.org/HttpProxyModule - proxy_set_header X-Forwarded-For $remote_addr; # EP logs to show the actual remote IP - proxy_set_header X-Forwarded-Proto $scheme; # for EP to set secure cookie flag when https is used - proxy_set_header Host $host; # pass the host header - proxy_http_version 1.1; # recommended with keepalive connections + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $remote_addr; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header Host $host; + proxy_http_version 1.1; # WebSocket proxying - from http://nginx.org/en/docs/http/websocket.html proxy_set_header Upgrade $http_upgrade; diff --git a/conf/systemd.service b/conf/systemd.service index 559f1e1..5210a9e 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -7,11 +7,11 @@ Type=simple User=__APP__ Group=__APP__ WorkingDirectory=__INSTALL_DIR__/ -Environment=ETHERPAD_PRODUCTION=true +Environment="ETHERPAD_PRODUCTION=1" Environment="NODE_ENV=production" Environment="__YNH_NODE_LOAD_PATH__" ExecStart=__INSTALL_DIR__/bin/run.sh -#ExecStart=pnpm run prod +#ExecStart=__NODEJS_PATH__/pnpm run prod Restart=always # Sandboxing options to harden security diff --git a/doc/PRE_INSTALL.md b/doc/PRE_INSTALL.md index 01d67e0..a299eb4 100644 --- a/doc/PRE_INSTALL.md +++ b/doc/PRE_INSTALL.md @@ -1 +1 @@ -Please note, this package is only intended to test Etherpad with redis database. It should not be used for production. \ No newline at end of file +Please note, this package is only intended to test Etherpad with Redis database. It should not be used for production. \ No newline at end of file diff --git a/manifest.toml b/manifest.toml index 2457232..770b7d3 100644 --- a/manifest.toml +++ b/manifest.toml @@ -5,7 +5,7 @@ name = "Etherpad" description.en = "Collaborative editing in real-time" description.fr = "Édition collaborative en temps réel" -version = "2.0.3~ynh1" +version = "2.1.0~ynh2" maintainers = ["eric_G"] @@ -17,7 +17,7 @@ admindoc = "https://etherpad.org/doc/v2.0.2/" code = "https://github.com/ether/etherpad-lite" [integration] -yunohost = ">= 11.2" +yunohost = ">= 11.2.14" architectures = "all" multi_instance = true @@ -63,8 +63,8 @@ ram.runtime = "50M" [resources] [resources.sources.main] - url = "https://github.com/ether/etherpad-lite/archive/refs/tags/2.0.3.tar.gz" - sha256 = "6dc19addc8280806590f9a82d4426a88a8ef77c7841f99f97a50d6aa6c9ecc1a" + url = "https://github.com/ether/etherpad-lite/archive/refs/tags/2.1.0.tar.gz" + sha256 = "68a238852b82088a539228fb83eb4efa6599da163e6a3214e5cf15144a50ec49" autoupdate.strategy = "latest_github_tag" [resources.ports] @@ -81,11 +81,12 @@ ram.runtime = "50M" admin.show_tile = false [resources.apt] + packages = "postgresql" - + packages_from_raw_bash = """ if [[ "$export" == "libreoffice" ]] - then + then echo "unoconv libreoffice-writer" elif [[ "$export" == "abiword" ]] then @@ -95,4 +96,4 @@ ram.runtime = "50M" [resources.database] type = "postgresql" - \ No newline at end of file + diff --git a/scripts/_common.sh b/scripts/_common.sh index 184eecc..9195d57 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,7 +4,7 @@ # COMMON VARIABLES #================================================= -nodejs_version=22 +nodejs_version=18 #================================================= # PERSONAL HELPERS diff --git a/scripts/backup b/scripts/backup index cec9443..89a8737 100644 --- a/scripts/backup +++ b/scripts/backup @@ -21,23 +21,13 @@ ynh_print_info --message="Declaring files to be backed up..." ynh_backup --src_path="$install_dir" #================================================= -# BACKUP THE NGINX CONFIGURATION +# SYSTEM CONFIGURATION #================================================= ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" -#================================================= -# SPECIFIC BACKUP -#================================================= -# BACKUP LOGROTATE -#================================================= - ynh_backup --src_path="/etc/logrotate.d/$app" -#================================================= -# BACKUP SYSTEMD -#================================================= - ynh_backup --src_path="/etc/systemd/system/$app.service" #================================================= diff --git a/scripts/install b/scripts/install index c07040f..6502e65 100644 --- a/scripts/install +++ b/scripts/install @@ -27,9 +27,9 @@ chmod -R o-rwx "$install_dir" chown -R $app:www-data "$install_dir" #================================================= -# SETUP SYSTEMD +# SYSTEM CONFIGURATION #================================================= -ynh_script_progression --message="Configuring a systemd service..." --weight=4 +ynh_script_progression --message="Adding system configurations related to $app..." --weight=1 ynh_add_systemd_config @@ -40,9 +40,9 @@ ynh_use_logrotate yunohost service add $app --description="Collaborative editor" --log="/var/log/$app/$app.log" #================================================= -# MODIFY A CONFIG FILE +# APP INITIAL CONFIGURATION #================================================= -ynh_script_progression --message="Configuring $app..." --weight=6 +ynh_script_progression --message="Adding $app's configuration files..." --weight=1 abiword_path="null" soffice_path="null" @@ -70,9 +70,9 @@ chown $app:$app "$install_dir/credentials.json" ynh_script_progression --message="Installing $app..." --weight=10 pushd $install_dir - ynh_use_nodejs - ynh_exec_warn_less npm install pnpm -g - ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH ETHERPAD_PRODUCTION=true bin/installDeps.sh + ynh_use_nodejs + ynh_exec_warn_less env $ynh_node_load_PATH corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate + ynh_exec_warn_less env $ynh_node_load_PATH ETHERPAD_PRODUCTION=1 COREPACK_ENABLE_DOWNLOAD_PROMPT=0 pnpm --recursive i --production popd #================================================= diff --git a/scripts/restore b/scripts/restore index 7a94734..0a8ad4b 100644 --- a/scripts/restore +++ b/scripts/restore @@ -32,9 +32,9 @@ ynh_script_progression --message="Reinstalling dependencies..." --weight=7 ynh_exec_warn_less ynh_install_nodejs --nodejs_version=$nodejs_version -pushd $install_dir - ynh_use_nodejs - ynh_exec_warn_less npm install pnpm -g +pushd "$install_dir" + ynh_use_nodejs + ynh_exec_warn_less env $ynh_node_load_PATH corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate popd #================================================= @@ -47,7 +47,7 @@ ynh_psql_execute_file_as_root --file="./db.sql" --database=$db_name #================================================= # RESTORE SYSTEMD #================================================= -ynh_script_progression --message="Restoring the systemd configuration..." --weight=8 +ynh_script_progression --message="Restoring system configurations related to $app..." --weight=1 ynh_restore_file --origin_path="/etc/systemd/system/$app.service" systemctl enable $app.service --quiet diff --git a/scripts/upgrade b/scripts/upgrade index 5bf3b4d..ac5a20f 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -97,12 +97,12 @@ chown $app:$app "$install_dir/credentials.json" #================================================= # INSTALL ETHERPAD #================================================= -ynh_script_progression --message="Installing $app..." --weight=60 +ynh_script_progression --message="Installing $app..." --weight=10 pushd $install_dir ynh_use_nodejs - ynh_exec_warn_less npm install pnpm -g - ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH ETHERPAD_PRODUCTION=true bin/installDeps.sh + ynh_exec_warn_less env $ynh_node_load_PATH corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate + ynh_exec_warn_less env $ynh_node_load_PATH ETHERPAD_PRODUCTION=true COREPACK_ENABLE_DOWNLOAD_PROMPT=0 bin/installDeps.sh popd #=================================================