diff --git a/ALL_README.md b/ALL_README.md index a01b345..8938aae 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) +- [Lee 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_es.md b/README_es.md new file mode 100644 index 0000000..39955f8 --- /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.0.3~ynh1 + +**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/conf/credentials.json b/conf/credentials.json index 5655057..3925100 100644 --- a/conf/credentials.json +++ b/conf/credentials.json @@ -27,11 +27,23 @@ "database": "__REDIS_DB__" }, - /* - * Users for basic authentication. + /* + * User accounts. These accounts are used by: + * - default HTTP basic authentication if no plugin handles authentication + * - some but not all authentication plugins + * - some but not all authorization plugins * - * is_admin = true gives access to /admin. - * If you do not uncomment this, /admin will not be available! + * User properties: + * - password: The user's password. Some authentication plugins will ignore + * this. + * - is_admin: true gives access to /admin. Defaults to false. If you do not + * uncomment this, /admin will not be available! + * - readOnly: If true, this user will not be able to create new pads or + * modify existing pads. Defaults to false. + * - canCreate: If this is true and readOnly is false, this user can create + * new pads. Defaults to true. + * + * Authentication and authorization plugins may define additional properties. * * WARNING: passwords should not be stored in plaintext in this file. * If you want to mitigate this, please install ep_hash_auth and diff --git a/conf/settings.json b/conf/settings.json index 7941a35..0bf1424 100644 --- a/conf/settings.json +++ b/conf/settings.json @@ -292,14 +292,6 @@ */ "soffice": null, - /* - * Path to the Tidy executable. - * - * Tidy is used to improve the quality of exported pads. - * Setting it to null disables Tidy. - */ - "tidyHtml": null, - /* * Allow import of file types other than the supported ones: * txt, doc, docx, rtf, odt, html & htm @@ -504,7 +496,7 @@ /* * Restrict socket.io transport methods */ - "socketTransportProtocols" : ["xhr-polling", "jsonp-polling", "htmlfile"], + "socketTransportProtocols" : ["websocket", "polling"], "socketIo": { /* @@ -627,5 +619,36 @@ /* * Enable/Disable case-insensitive pad names. */ - "lowerCasePadIds": false + "lowerCasePadIds": false, + + "sso": { + "issuer": "${SSO_ISSUER:http://127.0.0.1:__PORT__}", + "clients": [ + { + "client_id": "${ADMIN_CLIENT:admin_client}", + "client_secret": "${ADMIN_SECRET:admin}", + "grant_types": ["authorization_code"], + "response_types": ["code"], + "redirect_uris": ["${ADMIN_REDIRECT:http://127.0.0.1:__PORT__/admin/}"] + }, + { + "client_id": "${USER_CLIENT:user_client}", + "client_secret": "${USER_SECRET:user}", + "grant_types": ["authorization_code"], + "response_types": ["code"], + "redirect_uris": ["${USER_REDIRECT:http://127.0.0.1:__PORT__/}"] + } + ] + } + + /* Set the time to live for the tokens + This is the time of seconds a user is logged into Etherpad + "ttl": { + "AccessToken": 3600, + "AuthorizationCode": 600, + "ClientCredentials": 3600, + "IdToken": 3600, + "RefreshToken": 86400 + } + */ } diff --git a/conf/systemd.service b/conf/systemd.service index eab08fb..559f1e1 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -7,8 +7,11 @@ Type=simple User=__APP__ Group=__APP__ WorkingDirectory=__INSTALL_DIR__/ -Environment=NODE_ENV=production -ExecStart=pnpm run prod +Environment=ETHERPAD_PRODUCTION=true +Environment="NODE_ENV=production" +Environment="__YNH_NODE_LOAD_PATH__" +ExecStart=__INSTALL_DIR__/bin/run.sh +#ExecStart=pnpm run prod Restart=always # Sandboxing options to harden security diff --git a/scripts/_common.sh b/scripts/_common.sh index b1ab6a0..2b9094e 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,7 +4,7 @@ # COMMON VARIABLES #================================================= -nodejs_version=20 +nodejs_version=22 #================================================= # PERSONAL HELPERS diff --git a/scripts/install b/scripts/install index dadf83d..c5b73ee 100644 --- a/scripts/install +++ b/scripts/install @@ -86,6 +86,13 @@ pushd $install_dir #ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH pnpm install --recursive --production popd +#Buiding admin +pushd $install_dir/admin +ynh_use_nodejs + ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH corepack pnpm build + mv $install_dir/admin/dist $install_dir/src/templates/admin/ +popd + #================================================= # START SYSTEMD SERVICE #=================================================