From 347bc52cac93aa7039847b1203606a8a21dbd678 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 18 Nov 2024 19:29:04 +0100 Subject: [PATCH 01/13] Update manifest.toml --- manifest.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.toml b/manifest.toml index 942a313..11a07b4 100644 --- a/manifest.toml +++ b/manifest.toml @@ -7,7 +7,7 @@ name = "Docmost" description.en = "Create, collaborate, and share knowledge" description.fr = "Créez, collaborez et partagez vos connaissances" -version = "0.3.1~ynh1" +version = "0.5.0~ynh1" maintainers = ["eric_G"] From 7715e32f5cc1cb3f4530c7ce3d8770f28270cc58 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Mon, 18 Nov 2024 19:29:14 +0100 Subject: [PATCH 02/13] Auto-update READMEs --- README.md | 2 +- README_es.md | 2 +- README_eu.md | 2 +- README_fr.md | 2 +- README_gl.md | 2 +- README_id.md | 2 +- README_nl.md | 2 +- README_ru.md | 2 +- README_zh_Hans.md | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index f2c3406..93870da 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ It shall NOT be edited by hand. - File attachment -**Shipped version:** 0.3.1~ynh1 +**Shipped version:** 0.5.0~ynh1 ## Screenshots diff --git a/README_es.md b/README_es.md index 4b741e6..0c053f6 100644 --- a/README_es.md +++ b/README_es.md @@ -29,7 +29,7 @@ No se debe editar a mano. - File attachment -**Versión actual:** 0.3.1~ynh1 +**Versión actual:** 0.5.0~ynh1 ## Capturas diff --git a/README_eu.md b/README_eu.md index 22ecbc8..9e193a5 100644 --- a/README_eu.md +++ b/README_eu.md @@ -29,7 +29,7 @@ EZ editatu eskuz. - File attachment -**Paketatutako bertsioa:** 0.3.1~ynh1 +**Paketatutako bertsioa:** 0.5.0~ynh1 ## Pantaila-argazkiak diff --git a/README_fr.md b/README_fr.md index bfd660d..c9f2cef 100644 --- a/README_fr.md +++ b/README_fr.md @@ -29,7 +29,7 @@ Il NE doit PAS être modifié à la main. - File attachment -**Version incluse :** 0.3.1~ynh1 +**Version incluse :** 0.5.0~ynh1 ## Captures d’écran diff --git a/README_gl.md b/README_gl.md index 658f51b..a5e670c 100644 --- a/README_gl.md +++ b/README_gl.md @@ -29,7 +29,7 @@ NON debe editarse manualmente. - File attachment -**Versión proporcionada:** 0.3.1~ynh1 +**Versión proporcionada:** 0.5.0~ynh1 ## Capturas de pantalla diff --git a/README_id.md b/README_id.md index 2049e86..eaf5db4 100644 --- a/README_id.md +++ b/README_id.md @@ -29,7 +29,7 @@ Ini TIDAK boleh diedit dengan tangan. - File attachment -**Versi terkirim:** 0.3.1~ynh1 +**Versi terkirim:** 0.5.0~ynh1 ## Tangkapan Layar diff --git a/README_nl.md b/README_nl.md index 5410de7..02253f6 100644 --- a/README_nl.md +++ b/README_nl.md @@ -29,7 +29,7 @@ Hij mag NIET handmatig aangepast worden. - File attachment -**Geleverde versie:** 0.3.1~ynh1 +**Geleverde versie:** 0.5.0~ynh1 ## Schermafdrukken diff --git a/README_ru.md b/README_ru.md index 645247d..2b09601 100644 --- a/README_ru.md +++ b/README_ru.md @@ -29,7 +29,7 @@ - File attachment -**Поставляемая версия:** 0.3.1~ynh1 +**Поставляемая версия:** 0.5.0~ynh1 ## Снимки экрана diff --git a/README_zh_Hans.md b/README_zh_Hans.md index 28e6131..c9bbffd 100644 --- a/README_zh_Hans.md +++ b/README_zh_Hans.md @@ -29,7 +29,7 @@ - File attachment -**分发版本:** 0.3.1~ynh1 +**分发版本:** 0.5.0~ynh1 ## 截图 From 03474aeea61695ff92807f31d12a975148efb770 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Fri, 29 Nov 2024 22:17:51 +0100 Subject: [PATCH 03/13] Update systemd.service --- conf/systemd.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/systemd.service b/conf/systemd.service index cd2179c..0ce7829 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -1,5 +1,5 @@ [Unit] -Description=do•doc: documentation tool for creativity +Description=docmost: documentation tool After=network.target [Service] From 3a9890bfe41753e1351d3c12b3ca11f88a860663 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Fri, 29 Nov 2024 22:22:46 +0100 Subject: [PATCH 04/13] Update install --- scripts/install | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install b/scripts/install index fa32571..77ae20d 100755 --- a/scripts/install +++ b/scripts/install @@ -44,6 +44,7 @@ ynh_script_progression "Installing $app..." pushd $install_dir ynh_hide_warnings corepack enable && corepack prepare pnpm@latest --activate + npm install -g nx@latest ynh_hide_warnings pnpm install --frozen-lockfile --prod ynh_hide_warnings pnpm build popd From 14a7a42a83d25a82f479a3ae6fb9b11500c906bf Mon Sep 17 00:00:00 2001 From: 2g2r1b3r Date: Sat, 21 Mar 2026 11:35:05 +0100 Subject: [PATCH 05/13] first commit --- conf/.env | 51 +++++++++++++----- conf/nginx.conf | 23 ++++----- conf/settings.example.json | 12 ----- conf/systemd.service | 43 ++++++++++++++-- config_panel.toml | 103 +++++++++++++++++++++++++++++++++++++ manifest.toml | 60 ++++++++++++--------- scripts/backup | 27 ++++++---- scripts/config | 30 +++++++++++ scripts/install | 63 +++++++++++++++-------- scripts/remove | 14 +++-- scripts/restore | 30 ++++++----- scripts/upgrade | 46 +++++++---------- 12 files changed, 362 insertions(+), 140 deletions(-) delete mode 100644 conf/settings.example.json create mode 100644 config_panel.toml create mode 100644 scripts/config diff --git a/conf/.env b/conf/.env index 1c74c5f..50feaec 100644 --- a/conf/.env +++ b/conf/.env @@ -1,14 +1,22 @@ # your domain, e.g https://example.com -APP_URL: "http://__DOMAIN__" +APP_URL=https://__DOMAIN____PATH__ PORT=__PORT__ -# make sure to replace this. -APP_SECRET= "__KEY__" +# minimum of 32 characters. Generate one with: openssl rand -hex 32 +APP_SECRET=__AUTH_SECRET__ JWT_TOKEN_EXPIRES_IN=30d -DATABASE_URL: "postgresql://__DB_USER__:__DB_PWD__@db:5432/__DB_NAME__?schema=public" +DATABASE_URL=postgres://__DB_USER__:__DB_PWD__@localhost/__DB_NAME__ +DATABASE_PASSWORD=__DB_PWD__ +DATABASE_USER=__DB_USER__ +DATABASE_NAME=__DB_NAME__ +DATABASE_HOST=localhost + REDIS_URL=redis://127.0.0.1:6379 +REDIS_PASSWORD= +REDIS_HOST=localhost +REDIS_PORT=6379 # options: local | s3 STORAGE_DRIVER=local @@ -19,19 +27,38 @@ AWS_S3_SECRET_ACCESS_KEY= AWS_S3_REGION= AWS_S3_BUCKET= AWS_S3_ENDPOINT= -AWS_S3_FORCE_PATH_STYLE= +AWS_S3_FORCE_PATH_STYLE=true + +# default: 50mb +FILE_UPLOAD_SIZE_LIMIT=__MAX_UPLOAD_SIZE__mb +FILE_IMPORT_SIZE_LIMIT=__MAX_UPLOAD_SIZE__mb # options: smtp | postmark MAIL_DRIVER=smtp -MAIL_FROM_ADDRESS=hello@example.com -MAIL_FROM_NAME=Docmost +MAIL_FROM_ADDRESS=__MAIL_USER__@__DOMAIN__ +MAIL_FROM_NAME=no-reply # SMTP driver config -SMTP_HOST=127.0.0.1 -SMTP_PORT=587 -SMTP_USERNAME= -SMTP_PASSWORD= +SMTP_HOST=__EMAIL_SMTP_HOST__ +SMTP_PORT=__EMAIL_SMTP_PORT__ +SMTP_USERNAME=__EMAIL_SMTP_USER__ +SMTP_PASSWORD="__EMAIL_SMTP_PASSWORD__" SMTP_SECURE=false - +SMTP_IGNORETLS=false +APP_BASE_URL=https://__DOMAIN____PATH__ # Postmark driver config POSTMARK_TOKEN= + +# for custom drawio server +DRAWIO_URL= + +DISABLE_TELEMETRY=false + +# Enable debug logging in production (default: false) +DEBUG_MODE=false + +# Log database queries +DEBUG_DB=false + +# Log http requests +LOG_HTTP=false \ No newline at end of file diff --git a/conf/nginx.conf b/conf/nginx.conf index 10aee75..c64b63f 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -1,17 +1,14 @@ #sub_path_only rewrite ^__PATH__$ __PATH__/ permanent; -location __PATH__/ { - proxy_pass http://127.0.0.1:__PORT__/; - proxy_set_header Host $host; - proxy_pass_header Server; +location /api/ { + proxy_pass http://127.0.0.1:__PORT__; + include proxy_params_no_auth; + client_max_body_size __MAX_UPLOAD_SIZE__M; +} - proxy_buffering off; - 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; - # setup for image upload - client_max_body_size 256M; -} +location __PATH__/ { + proxy_pass http://127.0.0.1:__PORT__; + include proxy_params_no_auth; + client_max_body_size __MAX_UPLOAD_SIZE__M; +} \ No newline at end of file diff --git a/conf/settings.example.json b/conf/settings.example.json deleted file mode 100644 index 5afd239..0000000 --- a/conf/settings.example.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "protocol": "http", - "host": "127.0.0.1", - "desired_port": "__PORT__", - "contentPath": "__DATA_DIR__", - - "api": { - "enabled": false, - "allow_all_domains": false, - "domains_whitelist": ["127.0.0.1"] - } -} diff --git a/conf/systemd.service b/conf/systemd.service index 0ce7829..be3b2b1 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -1,5 +1,5 @@ [Unit] -Description=docmost: documentation tool +Description=Docmost After=network.target [Service] @@ -7,10 +7,47 @@ Type=simple User=__APP__ Group=__APP__ Environment="PATH=__PATH_WITH_NODEJS__" -Environment="NODE_ENV=production" WorkingDirectory=__INSTALL_DIR__/ -ExecStart=__NODEJS_DIR__/node start +EnvironmentFile=__INSTALL_DIR__/.env +ExecStart=__NODEJS_DIR__/pnpm start +StandardOutput=append:/var/log/__APP__/__APP__.log +StandardError=inherit Restart=on-failure +RestartSec=5 +StartLimitInterval=600s +StartLimitBurst=10 + +# Sandboxing options to harden security +# Details for these options: https://www.freedesktop.org/software/systemd/man/systemd.exec.html +NoNewPrivileges=yes +PrivateTmp=yes +PrivateDevices=yes +RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 AF_NETLINK +RestrictNamespaces=yes +RestrictRealtime=yes +DevicePolicy=closed +ProtectClock=yes +ProtectHostname=yes +ProtectProc=invisible +ProtectSystem=full +ProtectControlGroups=yes +ProtectKernelModules=yes +ProtectKernelTunables=yes +LockPersonality=yes +SystemCallArchitectures=native +SystemCallFilter=~@clock @debug @module @mount @obsolete @reboot @setuid @swap @cpu-emulation @raw-io @reboot @swap _sysctl acct bpf capset fanotify_init fanotify_mark nfsservctl open_by_handle_at pivot_root quotactl quotactl_fd setdomainname setfsuid setfsuid32 sethostname vhangup chown chown32 fchown32 fchownat lchown lchown32 + +# Denying access to capabilities that should not be relevant for webapps +# Doc: https://man7.org/linux/man-pages/man7/capabilities.7.html +CapabilityBoundingSet=~CAP_RAWIO CAP_MKNOD +CapabilityBoundingSet=~CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE +CapabilityBoundingSet=~CAP_SYS_BOOT CAP_SYS_TIME CAP_SYS_MODULE CAP_SYS_PACCT +CapabilityBoundingSet=~CAP_LEASE CAP_LINUX_IMMUTABLE CAP_IPC_LOCK +CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_WAKE_ALARM +CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG +CapabilityBoundingSet=~CAP_MAC_ADMIN CAP_MAC_OVERRIDE +CapabilityBoundingSet=~CAP_NET_ADMIN CAP_NET_BROADCAST CAP_NET_RAW +CapabilityBoundingSet=~CAP_SYS_ADMIN CAP_SYS_PTRACE CAP_SYSLOG [Install] WantedBy=multi-user.target \ No newline at end of file diff --git a/config_panel.toml b/config_panel.toml new file mode 100644 index 0000000..12d4346 --- /dev/null +++ b/config_panel.toml @@ -0,0 +1,103 @@ +version = "1.0" + +[main] +name.en = "Configuration panel" +name.fr = "Panneau de configuration" +services = ["__APP__", "nginx"] + +[main.uploads] +name.en = "Upload limit size" +name.fr = "Téléchargement de fichiers" + +[main.uploads.max_upload_size] +ask.fr = "Taille limite pour le téléchargement des fichiers en Mo" +ask.en = "Size limit file upload (Mb)" +type = "number" +bind = "null" + +[main.smtp] +name.en = "SMTP configuration" +name.fr = "Paramètres SMTP" + +[main.smtp.smtp_mail_from] +ask.en = "The 'mail from' address" +ask.fr = "Courriel d'envoi des e-mails" +type = "string" +bind = "MAIL_FROM_ADDRESS:__INSTALL_DIR__/.env" + +[main.smtp.smtp_user] +ask.en = "The SMTP user id" +ask.fr = "Id d'utilisateur SMTP" +type = "string" +bind = "SMTP_USERNAME:__INSTALL_DIR__/.env" + +[main.smtp.smtp_password] +ask.en = "user password or application token" +ask.fr = "Mot de passe ou jeton d’application SMTP." +type = "password" +bind = "SMTP_PASSWORD:__INSTALL_DIR__/.env" + +[main.smtp.smtp_host] +ask.en = "SMTP host" +ask.fr = "Nom d’hôte du serveur SMTP" +type = "string" +bind = "SMTP_HOST:__INSTALL_DIR__/.env" + +[main.smtp.smtp_port] +ask.en = "SMTP port" +ask.fr = "Port du serveur SMTP" +type = "select" +choices = ["25", "465", "587", "2525"] +optional = true +bind = "SMTP_PORT:__INSTALL_DIR__/.env" + +[main.smtp.smtp_secure] +ask.en = "SMTP secure" +ask.fr = "Sécurité SMTP" +type = "boolean" +optional = true +bind = "SMTP_SECURE:__INSTALL_DIR__/.env" + +[main.storage] +name.en = "Storage" +name.fr = "Stockage" + [main.storage.doc_storage_driver] + ask.en = "Storage driver" + ask.fr = "Storage driver" + type = "select" + choices = ["local", "s3"] + bind = "STORAGE_DRIVER:__INSTALL_DIR__/.env" + +[main.storage_s3] +name.en = "S3 storage" +name.fr = "Stockage S3" + + [main.storage_s3.aws_endpoint] + ask.en = "S3 endpoint" + ask.fr = "S3 endpoint" + type = "string" + bind = "AWS_S3_ENDPOINT:__INSTALL_DIR__/.env" + + [main.storage_s3.aws_region] + ask.en = "S3 region" + ask.fr = "S3 region" + type = "string" + bind = "AWS_S3_REGION:__INSTALL_DIR__/.env" + + [main.storage_s3.aws_bucket_name] + ask.en = "Bucket name" + ask.fr = "Nom du bucket" + type = "string" + bind = "AWS_S3_BUCKET:__INSTALL_DIR__/.env" + + [main.storage_s3.aws_key_id] + ask.en = "S3 key id" + ask.fr = "S3 key id" + type = "string" + bind = "AWS_S3_ACCESS_KEY_ID:__INSTALL_DIR__/.env" + + [main.storage_s3.aws_secret_key] + ask.en = "S3 secret key" + ask.fr = "S3 secret key" + type = "password" + bind = "AWS_S3_SECRET_ACCESS_KEY:__INSTALL_DIR__/.env" \ No newline at end of file diff --git a/manifest.toml b/manifest.toml index 11a07b4..47c171e 100644 --- a/manifest.toml +++ b/manifest.toml @@ -1,35 +1,32 @@ -#:schema https://raw.githubusercontent.com/YunoHost/apps/master/schemas/manifest.v2.schema.json +#:schema https://raw.githubusercontent.com/YunoHost/apps/main/schemas/manifest.v2.schema.json packaging_format = 2 - id = "docmost" name = "Docmost" -description.en = "Create, collaborate, and share knowledge" -description.fr = "Créez, collaborez et partagez vos connaissances" - -version = "0.5.0~ynh1" +description.en = "Collaborative wiki and documentation" +description.fr = "Wiki collaboratif et documentation" +version = "0.70.3~ynh1" -maintainers = ["eric_G"] +maintainers = ["otm33GH"] [upstream] -license = "AGPL-3.0-only" +license = "GPL-3.0-only" website = "https://docmost.com/" admindoc = "https://docmost.com/docs/" code = "https://github.com/docmost/docmost" [integration] -yunohost = ">= 11.2.30" +yunohost = ">= 12.1.39" helpers_version = "2.1" architectures = "all" multi_instance = true ldap = false - sso = false -disk = "512M" -ram.build = "1000M" -ram.runtime = "512M" +disk = "2000M" +ram.build = "1500M" +ram.runtime = "500M" [install] [install.domain] @@ -39,30 +36,45 @@ ram.runtime = "512M" type = "group" default = "visitors" + [install.mail_user] + type = "string" + ask.en = "Email from" + default = "no-reply" + + [install.storage_driver] + ask.en = "Storage driver" + ask.fr = "Storage driver" + type = "select" + choices = ["local", "s3"] + default = "local" + [resources] - [resources.sources] [resources.sources.main] - - url = "https://github.com/docmost/docmost/archive/refs/tags/v0.5.0.tar.gz" - sha256 = "3afd949252afc65a3759e7c0ac41f92a619da7b1be46aae4ca96ad0fa28f2033" - - #autoupdate.strategy = "latest_github_tag" + url = "https://github.com/docmost/docmost/archive/refs/tags/v0.70.3.tar.gz" + sha256 = "d3838150906a4fd246bc452ca510b4e3c81942726a7feef89e87a266de56ddbf" + autoupdate.strategy = "latest_github_tag" [resources.system_user] - + allow_email = true + [resources.install_dir] [resources.data_dir] - + [resources.permissions] main.url = "/" + main.auth_header = false [resources.ports] - [resources.apt] - packages = "postgresql, redis-server" - + [resources.apt] + packages = "postgresql redis-server" + [resources.database] type = "postgresql" + + [resources.nodejs] + version = "22" + \ No newline at end of file diff --git a/scripts/backup b/scripts/backup index d19654a..898066f 100755 --- a/scripts/backup +++ b/scripts/backup @@ -1,6 +1,9 @@ #!/bin/bash -source ../settings/scripts/_common.sh +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + source /usr/share/yunohost/helpers ynh_print_info "Declaring files to be backed up..." @@ -18,22 +21,28 @@ ynh_backup "$install_dir" ynh_backup "$data_dir" #================================================= -# SYSTEM CONFIGURATION +# BACKUP THE POSTGRESQL DATABASE #================================================= +ynh_print_info "Backing up the PostgreSQL database..." -ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" - -ynh_backup "/etc/systemd/system/$app.service" +ynh_psql_dump_db > db.sql #================================================= -# BACKUP THE POSTGRESQL DATABASE +# BACKUP SYSTEM CONFIGURATION #================================================= -ynh_print_info "Backing up the PostgreSQL database..." -ynh_psql_dump_db > db.sql +# Backup the NGINX configuration +ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" + +# Backup the systemd service unit +ynh_backup "/etc/systemd/system/$app.service" + +# Backup the logrotate configuration +ynh_backup "/etc/logrotate.d/$app" +ynh_backup "/var/log/$app/$app.log" #================================================= # END OF SCRIPT #================================================= -ynh_print_info "Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." +ynh_print_info "Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." \ No newline at end of file diff --git a/scripts/config b/scripts/config new file mode 100644 index 0000000..f0a62b2 --- /dev/null +++ b/scripts/config @@ -0,0 +1,30 @@ +#!/bin/bash + +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source /usr/share/yunohost/helpers + +ynh_abort_if_errors + +#================================================= +# RETRIEVE ARGUMENTS +#================================================= + +BACKEND_ENV="${install_dir}/.env" + +get__max_upload_size() { +ynh_app_setting_get --key=max_upload_size +} +set__max_upload_size() { + ynh_replace --match='client_max_body_size [^"]*' --replace="client_max_body_size ${max_upload_size}M ;" --file="/etc/nginx/conf.d/$domain.d/$app.conf" + ynh_replace --match='FILE_UPLOAD_SIZE_LIMIT=[^"]*' --replace="FILE_UPLOAD_SIZE_LIMIT=${max_upload_size}mb" --file="$BACKEND_ENV" + ynh_replace --match='FILE_IMPORT_SIZE_LIMIT=[^"]*' --replace="FILE_IMPORT_SIZE_LIMIT=${max_upload_size}mb" --file="$BACKEND_ENV" + ynh_store_file_checksum "/etc/nginx/conf.d/$domain.d/$app.conf" + ynh_app_setting_set --key=max_upload_size --value="$max_upload_size" + ynh_print_info "The nginx config has been edited" +} + +#================================================= +ynh_app_config_run "$1" \ No newline at end of file diff --git a/scripts/install b/scripts/install index 77ae20d..6f23104 100755 --- a/scripts/install +++ b/scripts/install @@ -1,16 +1,26 @@ #!/bin/bash -source _common.sh -source /usr/share/yunohost/helpers +#================================================= +# IMPORT GENERIC HELPERS +#================================================= -key=$(ynh_string_random --length=32) +source /usr/share/yunohost/helpers #================================================= -# INSTALL DEPENDENCIES +# INITIALIZE AND STORE SETTINGS #================================================= -ynh_script_progression "Installing dependencies..." -ynh_nodejs_install +max_upload_size=50 +auth_secret=$(ynh_string_random --length=32) +ynh_app_setting_set --key=auth_secret --value="$auth_secret" + +ynh_app_setting_set --key=max_upload_size --value=$max_upload_size + +email_smtp_host=$(cat /etc/yunohost/current_host) +email_smtp_user="$app" +email_smtp_password="$mail_pwd" +email_smtp_port=587 +storage_driver=$storage_driver #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -20,12 +30,28 @@ ynh_script_progression "Setting up source files..." ynh_setup_source --dest_dir="$install_dir" #================================================= -# APP INITIAL CONFIGURATION +# ADD A CONFIGURATION #================================================= -ynh_script_progression "Adding $app's configuration files..." +ynh_script_progression "Adding $app's configuration..." ynh_config_add --template=".env" --destination="$install_dir/.env" +#================================================= +# INSTALLATION +#================================================= +ynh_script_progression "Adding $app's dependencies..." + +pushd "$install_dir" + ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" pnpm install --frozen-lockfile + +ynh_script_progression "Building $app..." + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build +popd + + #================================================= # SYSTEM CONFIGURATION #================================================= @@ -33,31 +59,24 @@ ynh_script_progression "Adding system configurations related to $app..." ynh_config_add_nginx -ynh_config_add_systemd +ynh_config_add_systemd --service="$app" -yunohost service add "$app" --description="Create, collaborate, and share knowledge" --log="/var/log/$app/$app.log" +yunohost service add "$app" --description="Docmost" --log="/var/log/$app/$app.log" -#================================================= -# INSTALL DODOC -#================================================= -ynh_script_progression "Installing $app..." +ynh_config_add_logrotate -pushd $install_dir - ynh_hide_warnings corepack enable && corepack prepare pnpm@latest --activate - npm install -g nx@latest - ynh_hide_warnings pnpm install --frozen-lockfile --prod - ynh_hide_warnings pnpm build -popd +ln -s "$data_dir" "$install_dir/data" #================================================= # START SYSTEMD SERVICE #================================================= ynh_script_progression "Starting $app's systemd service..." -ynh_systemctl --service="$app" --action="start" --log_path="systemd" +ynh_systemctl --service="$app" --action="start" +ynh_systemctl --service=postfix --action="restart" #================================================= # END OF SCRIPT #================================================= -ynh_script_progression "Installation of $app completed" +ynh_script_progression "Installation of $app completed" \ No newline at end of file diff --git a/scripts/remove b/scripts/remove index eec7780..d368a21 100755 --- a/scripts/remove +++ b/scripts/remove @@ -1,13 +1,19 @@ #!/bin/bash -source _common.sh +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + source /usr/share/yunohost/helpers #================================================= -# REMOVE SYSTEM CONFIGURATIONS +# REMOVE SYSTEM CONFIGURATION #================================================= ynh_script_progression "Removing system configurations related to $app..." +ynh_config_remove_logrotate + +# Remove the service from the list of services known by YunoHost (added from `yunohost service add`) if ynh_hide_warnings yunohost service status "$app" >/dev/null; then yunohost service remove "$app" fi @@ -16,10 +22,8 @@ ynh_config_remove_systemd ynh_config_remove_nginx -ynh_nodejs_remove - #================================================= # END OF SCRIPT #================================================= -ynh_script_progression "Removal of $app completed" +ynh_script_progression "Removal of $app completed" \ No newline at end of file diff --git a/scripts/restore b/scripts/restore index c5d92e7..872012e 100755 --- a/scripts/restore +++ b/scripts/restore @@ -1,6 +1,9 @@ #!/bin/bash -source ../settings/scripts/_common.sh +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + source /usr/share/yunohost/helpers #================================================= @@ -10,13 +13,16 @@ ynh_script_progression "Restoring the app main directory..." ynh_restore "$install_dir" +ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate + #================================================= # RESTORE THE DATA DIRECTORY #================================================= -ynh_script_progression "Restoring the data directory..." +ynh_script_progression "Restoring data directory..." ynh_restore "$data_dir" + #================================================= # RESTORE THE POSTGRESQL DATABASE #================================================= @@ -25,14 +31,7 @@ ynh_script_progression "Restoring the PostgreSQL database..." ynh_psql_db_shell < ./db.sql #================================================= -# REINSTALL DEPENDENCIES -#================================================= -ynh_script_progression "Reinstalling dependencies..." - -ynh_nodejs_install - -#================================================= -# RESTORE SYSTEM CONFIGURATIONS +# RESTORE SYSTEM CONFIGURATION #================================================= ynh_script_progression "Restoring system configurations related to $app..." @@ -41,14 +40,17 @@ ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf" ynh_restore "/etc/systemd/system/$app.service" systemctl enable "$app.service" --quiet -yunohost service add "$app" --description="Create, collaborate, and share knowledge" --log="/var/log/$app/$app.log" +yunohost service add "$app" --description=Docmost --log="/var/log/$app/$app.log" + +ynh_restore "/etc/logrotate.d/$app" +ynh_restore "/var/log/$app/$app.log" #================================================= -# RELOAD NGINX AND PHP-FPM OR THE APP SERVICE +# RELOAD NGINX AND THE APP SERVICE #================================================= ynh_script_progression "Reloading NGINX web server and $app's service..." -ynh_systemctl --service="$app" --action="start" --log_path="systemd" +ynh_systemctl --service="$app" --action="start" ynh_systemctl --service=nginx --action=reload @@ -56,4 +58,4 @@ ynh_systemctl --service=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression "Restoration completed for $app" +ynh_script_progression "Restoration completed for $app" \ No newline at end of file diff --git a/scripts/upgrade b/scripts/upgrade index 42c9498..49dc405 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -1,21 +1,17 @@ #!/bin/bash -source _common.sh -source /usr/share/yunohost/helpers - #================================================= -# STOP SYSTEMD SERVICE +# IMPORT GENERIC HELPERS #================================================= -ynh_script_progression "Stopping $app's systemd service..." -ynh_systemctl --service="$app" --action="stop" --log_path="systemd" +source /usr/share/yunohost/helpers #================================================= -# INSTALL DEPENDENCIES +# STOP SYSTEMD SERVICE #================================================= -ynh_script_progression "Installing dependencies..." +ynh_script_progression "Stopping $app's systemd service..." -ynh_nodejs_install +ynh_systemctl --service="$app" --action="stop" #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -25,26 +21,24 @@ ynh_script_progression "Upgrading source files..." ynh_setup_source --dest_dir="$install_dir" --full_replace --keep=".env" #================================================= -# UPDATE A CONFIG FILE +# INSTALLATION #================================================= -ynh_script_progression "Updating $app's configuration files..." +ynh_script_progression "Adding $app's dependencies..." -ynh_config_add --template=".env" --destination="$install_dir/.env" +pushd "$install_dir" + ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" pnpm install --frozen-lockfile -#================================================= -# INSTALL DODOC -#================================================= -ynh_script_progression "Installing $app..." - -pushd $install_dir - ynh_hide_warnings corepack enable && corepack prepare pnpm@latest --activate - ynh_hide_warnings pnpm nx run @docmost/editor-ext:build - ynh_hide_warnings pnpm install --frozen-lockfile --prod - ynh_hide_warnings pnpm build +ynh_script_progression "Building $app..." + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build + ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build popd +ln -s "$data_dir" "$install_dir/data" + #================================================= -# REAPPLY SYSTEM CONFIGURATIONS +# REAPPLY SYSTEM CONFIGURATION #================================================= ynh_script_progression "Upgrading system configurations related to $app..." @@ -52,17 +46,17 @@ ynh_config_add_nginx ynh_config_add_systemd -yunohost service add "$app" --description="Create, collaborate, and share knowledge" --log="/var/log/$app/$app.log" +yunohost service add "$app" --description="Docmost" --log="/var/log/$app/$app.log" #================================================= # START SYSTEMD SERVICE #================================================= ynh_script_progression "Starting $app's systemd service..." -ynh_systemctl --service="$app" --action="start" --log_path="systemd" +ynh_systemctl --service="$app" --action="start" #================================================= # END OF SCRIPT #================================================= -ynh_script_progression "Upgrade of $app completed" +ynh_script_progression "Upgrade of $app completed" \ No newline at end of file From 4aa0343e76516bb5a4ebd20ad9c847fde9094b91 Mon Sep 17 00:00:00 2001 From: otm33GH Date: Sat, 21 Mar 2026 11:45:21 +0100 Subject: [PATCH 06/13] clean up --- conf/.env | 1 + conf/nginx.conf | 1 - conf/systemd.service | 1 + config_panel.toml | 1 + manifest.toml | 2 +- scripts/backup | 3 +++ scripts/config | 1 + scripts/install | 2 ++ scripts/upgrade | 2 ++ 9 files changed, 12 insertions(+), 2 deletions(-) diff --git a/conf/.env b/conf/.env index 50feaec..4f194e5 100644 --- a/conf/.env +++ b/conf/.env @@ -46,6 +46,7 @@ SMTP_PASSWORD="__EMAIL_SMTP_PASSWORD__" SMTP_SECURE=false SMTP_IGNORETLS=false APP_BASE_URL=https://__DOMAIN____PATH__ + # Postmark driver config POSTMARK_TOKEN= diff --git a/conf/nginx.conf b/conf/nginx.conf index c64b63f..222b8b3 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -6,7 +6,6 @@ location /api/ { client_max_body_size __MAX_UPLOAD_SIZE__M; } - location __PATH__/ { proxy_pass http://127.0.0.1:__PORT__; include proxy_params_no_auth; diff --git a/conf/systemd.service b/conf/systemd.service index be3b2b1..60e76f8 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -18,6 +18,7 @@ StartLimitInterval=600s StartLimitBurst=10 # Sandboxing options to harden security + # Details for these options: https://www.freedesktop.org/software/systemd/man/systemd.exec.html NoNewPrivileges=yes PrivateTmp=yes diff --git a/config_panel.toml b/config_panel.toml index 12d4346..c0e123d 100644 --- a/config_panel.toml +++ b/config_panel.toml @@ -61,6 +61,7 @@ bind = "SMTP_SECURE:__INSTALL_DIR__/.env" [main.storage] name.en = "Storage" name.fr = "Stockage" + [main.storage.doc_storage_driver] ask.en = "Storage driver" ask.fr = "Storage driver" diff --git a/manifest.toml b/manifest.toml index 47c171e..7c75b01 100644 --- a/manifest.toml +++ b/manifest.toml @@ -7,7 +7,7 @@ description.en = "Collaborative wiki and documentation" description.fr = "Wiki collaboratif et documentation" version = "0.70.3~ynh1" -maintainers = ["otm33GH"] +maintainers = ["otm33GH", "eric_G"] [upstream] license = "GPL-3.0-only" diff --git a/scripts/backup b/scripts/backup index 898066f..59a04e1 100755 --- a/scripts/backup +++ b/scripts/backup @@ -23,6 +23,7 @@ ynh_backup "$data_dir" #================================================= # BACKUP THE POSTGRESQL DATABASE #================================================= + ynh_print_info "Backing up the PostgreSQL database..." ynh_psql_dump_db > db.sql @@ -39,6 +40,8 @@ ynh_backup "/etc/systemd/system/$app.service" # Backup the logrotate configuration ynh_backup "/etc/logrotate.d/$app" + +# Backup the logs ynh_backup "/var/log/$app/$app.log" #================================================= diff --git a/scripts/config b/scripts/config index f0a62b2..250efae 100644 --- a/scripts/config +++ b/scripts/config @@ -17,6 +17,7 @@ BACKEND_ENV="${install_dir}/.env" get__max_upload_size() { ynh_app_setting_get --key=max_upload_size } + set__max_upload_size() { ynh_replace --match='client_max_body_size [^"]*' --replace="client_max_body_size ${max_upload_size}M ;" --file="/etc/nginx/conf.d/$domain.d/$app.conf" ynh_replace --match='FILE_UPLOAD_SIZE_LIMIT=[^"]*' --replace="FILE_UPLOAD_SIZE_LIMIT=${max_upload_size}mb" --file="$BACKEND_ENV" diff --git a/scripts/install b/scripts/install index 6f23104..9d2792f 100755 --- a/scripts/install +++ b/scripts/install @@ -42,6 +42,7 @@ ynh_config_add --template=".env" --destination="$install_dir/.env" ynh_script_progression "Adding $app's dependencies..." pushd "$install_dir" + ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" pnpm install --frozen-lockfile @@ -49,6 +50,7 @@ ynh_script_progression "Building $app..." ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build + popd diff --git a/scripts/upgrade b/scripts/upgrade index 49dc405..b2e3da5 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -26,6 +26,7 @@ ynh_setup_source --dest_dir="$install_dir" --full_replace --keep=".env" ynh_script_progression "Adding $app's dependencies..." pushd "$install_dir" + ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" pnpm install --frozen-lockfile @@ -33,6 +34,7 @@ ynh_script_progression "Building $app..." ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build + popd ln -s "$data_dir" "$install_dir/data" From cbbe0130a4093895ff1783325d72ba585004a8a1 Mon Sep 17 00:00:00 2001 From: otm33GH Date: Sat, 21 Mar 2026 14:54:12 +0100 Subject: [PATCH 07/13] pnpm store prune --- scripts/install | 2 +- scripts/upgrade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 9d2792f..0e3cf31 100755 --- a/scripts/install +++ b/scripts/install @@ -50,7 +50,7 @@ ynh_script_progression "Building $app..." ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build - + pnpm store prune popd diff --git a/scripts/upgrade b/scripts/upgrade index b2e3da5..1faaa74 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -34,7 +34,7 @@ ynh_script_progression "Building $app..." ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build - + pnpm store prune popd ln -s "$data_dir" "$install_dir/data" From a96fc8f4f294a3b84005038952668a8fb885b0ac Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Sat, 21 Mar 2026 17:49:54 +0100 Subject: [PATCH 08/13] Auto-update READMEs --- ALL_README.md | 11 -------- README.md | 64 ++++++++++++++++++----------------------------- README_es.md | 58 ------------------------------------------ README_eu.md | 58 ------------------------------------------ README_fr.md | 58 ------------------------------------------ README_gl.md | 58 ------------------------------------------ README_id.md | 58 ------------------------------------------ README_nl.md | 58 ------------------------------------------ README_ru.md | 58 ------------------------------------------ README_zh_Hans.md | 58 ------------------------------------------ 10 files changed, 25 insertions(+), 514 deletions(-) delete mode 100644 ALL_README.md delete mode 100644 README_es.md delete mode 100644 README_eu.md delete mode 100644 README_fr.md delete mode 100644 README_gl.md delete mode 100644 README_id.md delete mode 100644 README_nl.md delete mode 100644 README_ru.md delete mode 100644 README_zh_Hans.md diff --git a/ALL_README.md b/ALL_README.md deleted file mode 100644 index df3708b..0000000 --- a/ALL_README.md +++ /dev/null @@ -1,11 +0,0 @@ -# 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) -- [Baca README dalam bahasa bahasa Indonesia](README_id.md) -- [Lees de README in het Nederlands](README_nl.md) -- [Прочитать README на русский](README_ru.md) -- [阅读中文(简体)的 README](README_zh_Hans.md) diff --git a/README.md b/README.md index 93870da..f99f8df 100644 --- a/README.md +++ b/README.md @@ -1,58 +1,44 @@ -# Docmost for YunoHost +

+ Logo of Docmost + Docmost, packaged for YunoHost +

-[![Integration level](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Working status](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) +Collaborative wiki and documentation -[![Install Docmost with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) +[![🌐 Official app website](https://img.shields.io/badge/Official_app_website-darkgreen?style=for-the-badge)](https://docmost.com/) +[![Version: 0.70.3~ynh1](https://img.shields.io/badge/Version-0.70.3~ynh1-rgb(18,138,11)?style=for-the-badge)](https://ci-apps.yunohost.org/ci/apps/docmost/) -*[Read this README in other languages.](./ALL_README.md)* +
+ + +
-> *This package allows you to install Docmost quickly and simply on a YunoHost server.* -> *If you don't have YunoHost, please consult [the guide](https://yunohost.org/install) to learn how to install it.* - -## Overview - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Shipped version:** 0.5.0~ynh1 ## Screenshots - ![Screenshot of Docmost](./doc/screenshots/screenshot.png) -## Documentation and resources +## 📦 Developer info -- Official app website: -- Official admin documentation: -- Upstream app code repository: -- YunoHost Store: -- Report a bug: +[![Automatic tests level](https://apps.yunohost.org/badge/cilevel/docmost)](https://ci-apps.yunohost.org/ci/apps/docmost/) -## Developer info +🛠️ Upstream Docmost repository: -Please send your pull request to the [`testing` branch](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). +Pull request are welcome and should target the [`testing` branch](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). -To try the `testing` branch, please proceed like that: +The `testing` branch can be tested using: +``` +# fresh install: +sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -or -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug +# upgrade an existing install: +sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing ``` -**More info regarding app packaging:** +### 📚 App packaging documentation + +Please see for more information. \ No newline at end of file diff --git a/README_es.md b/README_es.md deleted file mode 100644 index 0c053f6..0000000 --- a/README_es.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost para Yunohost - -[![Nivel de integración](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Instalar Docmost con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Leer este README en otros idiomas.](./ALL_README.md)* - -> *Este paquete le permite instalarDocmost 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 - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Versión actual:** 0.5.0~ynh1 - -## Capturas - -![Captura de Docmost](./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 [rama `testing`](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -Para probar la rama `testing`, sigue asÍ: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -o -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Mas informaciones sobre el empaquetado de aplicaciones:** diff --git a/README_eu.md b/README_eu.md deleted file mode 100644 index 9e193a5..0000000 --- a/README_eu.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost YunoHost-erako - -[![Integrazio maila](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Funtzionamendu egoera](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Mantentze egoera](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Instalatu Docmost YunoHost-ekin](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Irakurri README hau beste hizkuntzatan.](./ALL_README.md)* - -> *Pakete honek Docmost YunoHost zerbitzari batean azkar eta zailtasunik gabe instalatzea ahalbidetzen dizu.* -> *YunoHost ez baduzu, kontsultatu [gida](https://yunohost.org/install) nola instalatu ikasteko.* - -## Aurreikuspena - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Paketatutako bertsioa:** 0.5.0~ynh1 - -## Pantaila-argazkiak - -![Docmost(r)en pantaila-argazkia](./doc/screenshots/screenshot.png) - -## Dokumentazioa eta baliabideak - -- Aplikazioaren webgune ofiziala: -- Administratzaileen dokumentazio ofiziala: -- Jatorrizko aplikazioaren kode-gordailua: -- YunoHost Denda: -- Eman errore baten berri: - -## Garatzaileentzako informazioa - -Bidali `pull request`a [`testing` abarrera](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -`testing` abarra probatzeko, ondorengoa egin: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -edo -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Informazio gehiago aplikazioaren paketatzeari buruz:** diff --git a/README_fr.md b/README_fr.md deleted file mode 100644 index c9f2cef..0000000 --- a/README_fr.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost pour YunoHost - -[![Niveau d’intégration](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Installer Docmost avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Lire le README dans d'autres langues.](./ALL_README.md)* - -> *Ce package vous permet d’installer Docmost rapidement et simplement sur un serveur YunoHost.* -> *Si vous n’avez pas YunoHost, consultez [ce guide](https://yunohost.org/install) pour savoir comment l’installer et en profiter.* - -## Vue d’ensemble - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Version incluse :** 0.5.0~ynh1 - -## Captures d’écran - -![Capture d’écran de Docmost](./doc/screenshots/screenshot.png) - -## Documentations et ressources - -- Site officiel de l’app : -- Documentation officielle de l’admin : -- Dépôt de code officiel de l’app : -- YunoHost Store : -- Signaler un bug : - -## Informations pour les développeurs - -Merci de faire vos pull request sur la [branche `testing`](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -Pour essayer la branche `testing`, procédez comme suit : - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -ou -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Plus d’infos sur le packaging d’applications :** diff --git a/README_gl.md b/README_gl.md deleted file mode 100644 index a5e670c..0000000 --- a/README_gl.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost para YunoHost - -[![Nivel de integración](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Estado de funcionamento](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Estado de mantemento](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Instalar Docmost con YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Le este README en outros idiomas.](./ALL_README.md)* - -> *Este paquete permíteche instalar Docmost de xeito rápido e doado nun servidor YunoHost.* -> *Se non usas YunoHost, le a [documentación](https://yunohost.org/install) para saber como instalalo.* - -## Vista xeral - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Versión proporcionada:** 0.5.0~ynh1 - -## Capturas de pantalla - -![Captura de pantalla de Docmost](./doc/screenshots/screenshot.png) - -## Documentación e recursos - -- Web oficial da app: -- Documentación oficial para admin: -- Repositorio de orixe do código: -- Tenda YunoHost: -- Informar dun problema: - -## Info de desenvolvemento - -Envía a túa colaboración á [rama `testing`](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -Para probar a rama `testing`, procede deste xeito: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -ou -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Máis info sobre o empaquetado da app:** diff --git a/README_id.md b/README_id.md deleted file mode 100644 index eaf5db4..0000000 --- a/README_id.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost untuk YunoHost - -[![Tingkat integrasi](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Status kerja](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Status pemeliharaan](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Pasang Docmost dengan YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Baca README ini dengan bahasa yang lain.](./ALL_README.md)* - -> *Paket ini memperbolehkan Anda untuk memasang Docmost secara cepat dan mudah pada server YunoHost.* -> *Bila Anda tidak mempunyai YunoHost, silakan berkonsultasi dengan [panduan](https://yunohost.org/install) untuk mempelajari bagaimana untuk memasangnya.* - -## Ringkasan - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Versi terkirim:** 0.5.0~ynh1 - -## Tangkapan Layar - -![Tangkapan Layar pada Docmost](./doc/screenshots/screenshot.png) - -## Dokumentasi dan sumber daya - -- Website aplikasi resmi: -- Dokumentasi admin resmi: -- Depot kode aplikasi hulu: -- Gudang YunoHost: -- Laporkan bug: - -## Info developer - -Silakan kirim pull request ke [`testing` branch](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -Untuk mencoba branch `testing`, silakan dilanjutkan seperti: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -atau -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Info lebih lanjut mengenai pemaketan aplikasi:** diff --git a/README_nl.md b/README_nl.md deleted file mode 100644 index 02253f6..0000000 --- a/README_nl.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost voor Yunohost - -[![Integratieniveau](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Mate van functioneren](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Onderhoudsstatus](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Docmost met Yunohost installeren](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Deze README in een andere taal lezen.](./ALL_README.md)* - -> *Met dit pakket kun je Docmost snel en eenvoudig op een YunoHost-server installeren.* -> *Als je nog geen YunoHost hebt, lees dan [de installatiehandleiding](https://yunohost.org/install), om te zien hoe je 'm installeert.* - -## Overzicht - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Geleverde versie:** 0.5.0~ynh1 - -## Schermafdrukken - -![Schermafdrukken van Docmost](./doc/screenshots/screenshot.png) - -## Documentatie en bronnen - -- Officiele website van de app: -- Officiele beheerdersdocumentatie: -- Upstream app codedepot: -- YunoHost-store: -- Meld een bug: - -## Ontwikkelaarsinformatie - -Stuur je pull request alsjeblieft naar de [`testing`-branch](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -Om de `testing`-branch uit te proberen, ga als volgt te werk: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -of -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Verdere informatie over app-packaging:** diff --git a/README_ru.md b/README_ru.md deleted file mode 100644 index 2b09601..0000000 --- a/README_ru.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# Docmost для YunoHost - -[![Уровень интеграции](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![Состояние работы](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![Состояние сопровождения](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![Установите Docmost с YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[Прочтите этот README на других языках.](./ALL_README.md)* - -> *Этот пакет позволяет Вам установить Docmost быстро и просто на YunoHost-сервер.* -> *Если у Вас нет YunoHost, пожалуйста, посмотрите [инструкцию](https://yunohost.org/install), чтобы узнать, как установить его.* - -## Обзор - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**Поставляемая версия:** 0.5.0~ynh1 - -## Снимки экрана - -![Снимок экрана Docmost](./doc/screenshots/screenshot.png) - -## Документация и ресурсы - -- Официальный веб-сайт приложения: -- Официальная документация администратора: -- Репозиторий кода главной ветки приложения: -- Магазин YunoHost: -- Сообщите об ошибке: - -## Информация для разработчиков - -Пришлите Ваш запрос на слияние в [ветку `testing`](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing). - -Чтобы попробовать ветку `testing`, пожалуйста, сделайте что-то вроде этого: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -или -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**Больше информации о пакетировании приложений:** diff --git a/README_zh_Hans.md b/README_zh_Hans.md deleted file mode 100644 index c9bbffd..0000000 --- a/README_zh_Hans.md +++ /dev/null @@ -1,58 +0,0 @@ - - -# YunoHost 上的 Docmost - -[![集成程度](https://dash.yunohost.org/integration/docmost.svg)](https://ci-apps.yunohost.org/ci/apps/docmost/) ![工作状态](https://ci-apps.yunohost.org/ci/badges/docmost.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/docmost.maintain.svg) - -[![使用 YunoHost 安装 Docmost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=docmost) - -*[阅读此 README 的其它语言版本。](./ALL_README.md)* - -> *通过此软件包,您可以在 YunoHost 服务器上快速、简单地安装 Docmost。* -> *如果您还没有 YunoHost,请参阅[指南](https://yunohost.org/install)了解如何安装它。* - -## 概况 - -### Features - -- Real-time collaboration -- Diagrams (Draw.io, Excalidraw and Mermaid) -- Spaces -- Permissions management -- Groups -- Comments -- Page history -- Search -- File attachment - - -**分发版本:** 0.5.0~ynh1 - -## 截图 - -![Docmost 的截图](./doc/screenshots/screenshot.png) - -## 文档与资源 - -- 官方应用网站: -- 官方管理文档: -- 上游应用代码库: -- YunoHost 商店: -- 报告 bug: - -## 开发者信息 - -请向 [`testing` 分支](https://github.com/YunoHost-Apps/docmost_ynh/tree/testing) 发送拉取请求。 - -如要尝试 `testing` 分支,请这样操作: - -```bash -sudo yunohost app install https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -或 -sudo yunohost app upgrade docmost -u https://github.com/YunoHost-Apps/docmost_ynh/tree/testing --debug -``` - -**有关应用打包的更多信息:** From d6ec07d75568d5600ecb9a0bb38d2ef591d998f4 Mon Sep 17 00:00:00 2001 From: eric_G <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 21 Mar 2026 17:59:48 +0100 Subject: [PATCH 09/13] cleaning --- conf/systemd.service | 1 - config_panel.toml | 86 ++++++++++++++++++++++---------------------- manifest.toml | 4 +-- scripts/_common.sh | 7 ---- scripts/backup | 1 - scripts/change_url | 5 ++- scripts/install | 9 ++--- scripts/restore | 3 +- scripts/upgrade | 7 ++-- 9 files changed, 53 insertions(+), 70 deletions(-) delete mode 100644 scripts/_common.sh diff --git a/conf/systemd.service b/conf/systemd.service index 60e76f8..be3b2b1 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -18,7 +18,6 @@ StartLimitInterval=600s StartLimitBurst=10 # Sandboxing options to harden security - # Details for these options: https://www.freedesktop.org/software/systemd/man/systemd.exec.html NoNewPrivileges=yes PrivateTmp=yes diff --git a/config_panel.toml b/config_panel.toml index c0e123d..f5b89d6 100644 --- a/config_panel.toml +++ b/config_panel.toml @@ -9,54 +9,54 @@ services = ["__APP__", "nginx"] name.en = "Upload limit size" name.fr = "Téléchargement de fichiers" -[main.uploads.max_upload_size] -ask.fr = "Taille limite pour le téléchargement des fichiers en Mo" -ask.en = "Size limit file upload (Mb)" -type = "number" -bind = "null" + [main.uploads.max_upload_size] + ask.fr = "Taille limite pour le téléchargement des fichiers en Mo" + ask.en = "Size limit file upload (Mb)" + type = "number" + bind = "null" [main.smtp] name.en = "SMTP configuration" name.fr = "Paramètres SMTP" -[main.smtp.smtp_mail_from] -ask.en = "The 'mail from' address" -ask.fr = "Courriel d'envoi des e-mails" -type = "string" -bind = "MAIL_FROM_ADDRESS:__INSTALL_DIR__/.env" - -[main.smtp.smtp_user] -ask.en = "The SMTP user id" -ask.fr = "Id d'utilisateur SMTP" -type = "string" -bind = "SMTP_USERNAME:__INSTALL_DIR__/.env" - -[main.smtp.smtp_password] -ask.en = "user password or application token" -ask.fr = "Mot de passe ou jeton d’application SMTP." -type = "password" -bind = "SMTP_PASSWORD:__INSTALL_DIR__/.env" - -[main.smtp.smtp_host] -ask.en = "SMTP host" -ask.fr = "Nom d’hôte du serveur SMTP" -type = "string" -bind = "SMTP_HOST:__INSTALL_DIR__/.env" - -[main.smtp.smtp_port] -ask.en = "SMTP port" -ask.fr = "Port du serveur SMTP" -type = "select" -choices = ["25", "465", "587", "2525"] -optional = true -bind = "SMTP_PORT:__INSTALL_DIR__/.env" - -[main.smtp.smtp_secure] -ask.en = "SMTP secure" -ask.fr = "Sécurité SMTP" -type = "boolean" -optional = true -bind = "SMTP_SECURE:__INSTALL_DIR__/.env" + [main.smtp.smtp_mail_from] + ask.en = "The 'mail from' address" + ask.fr = "Courriel d'envoi des e-mails" + type = "string" + bind = "MAIL_FROM_ADDRESS:__INSTALL_DIR__/.env" + + [main.smtp.smtp_user] + ask.en = "The SMTP user id" + ask.fr = "Id d'utilisateur SMTP" + type = "string" + bind = "SMTP_USERNAME:__INSTALL_DIR__/.env" + + [main.smtp.smtp_password] + ask.en = "user password or application token" + ask.fr = "Mot de passe ou jeton d’application SMTP." + type = "password" + bind = "SMTP_PASSWORD:__INSTALL_DIR__/.env" + + [main.smtp.smtp_host] + ask.en = "SMTP host" + ask.fr = "Nom d’hôte du serveur SMTP" + type = "string" + bind = "SMTP_HOST:__INSTALL_DIR__/.env" + + [main.smtp.smtp_port] + ask.en = "SMTP port" + ask.fr = "Port du serveur SMTP" + type = "select" + choices = ["25", "465", "587", "2525"] + optional = true + bind = "SMTP_PORT:__INSTALL_DIR__/.env" + + [main.smtp.smtp_secure] + ask.en = "SMTP secure" + ask.fr = "Sécurité SMTP" + type = "boolean" + optional = true + bind = "SMTP_SECURE:__INSTALL_DIR__/.env" [main.storage] name.en = "Storage" diff --git a/manifest.toml b/manifest.toml index 7c75b01..f315930 100644 --- a/manifest.toml +++ b/manifest.toml @@ -69,8 +69,8 @@ ram.runtime = "500M" [resources.ports] - [resources.apt] - packages = "postgresql redis-server" + [resources.apt] + packages = "postgresql, redis-server" [resources.database] type = "postgresql" diff --git a/scripts/_common.sh b/scripts/_common.sh deleted file mode 100644 index e4f53e2..0000000 --- a/scripts/_common.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -#================================================= -# COMMON VARIABLES AND CUSTOM HELPERS -#================================================= - -nodejs_version="20" \ No newline at end of file diff --git a/scripts/backup b/scripts/backup index 59a04e1..1936b5d 100755 --- a/scripts/backup +++ b/scripts/backup @@ -23,7 +23,6 @@ ynh_backup "$data_dir" #================================================= # BACKUP THE POSTGRESQL DATABASE #================================================= - ynh_print_info "Backing up the PostgreSQL database..." ynh_psql_dump_db > db.sql diff --git a/scripts/change_url b/scripts/change_url index 6977c19..b50d9a6 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -1,6 +1,5 @@ #!/bin/bash -source _common.sh source /usr/share/yunohost/helpers #================================================= @@ -8,7 +7,7 @@ source /usr/share/yunohost/helpers #================================================= ynh_script_progression "Stopping $app's systemd service..." -ynh_systemctl --service="$app" --action="stop" --log_path="systemd" +ynh_systemctl --service="$app" --action="stop" #================================================= # MODIFY URL IN NGINX CONF @@ -22,7 +21,7 @@ ynh_config_change_url_nginx #================================================= ynh_script_progression "Starting $app's systemd service..." -ynh_systemctl --service="$app" --action="start" --log_path="systemd" +ynh_systemctl --service="$app" --action="start" #================================================= # END OF SCRIPT diff --git a/scripts/install b/scripts/install index 0e3cf31..5f46227 100755 --- a/scripts/install +++ b/scripts/install @@ -39,21 +39,17 @@ ynh_config_add --template=".env" --destination="$install_dir/.env" #================================================= # INSTALLATION #================================================= -ynh_script_progression "Adding $app's dependencies..." +ynh_script_progression "Building $app..." pushd "$install_dir" - ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" pnpm install --frozen-lockfile - -ynh_script_progression "Building $app..." ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build pnpm store prune popd - #================================================= # SYSTEM CONFIGURATION #================================================= @@ -75,10 +71,11 @@ ln -s "$data_dir" "$install_dir/data" ynh_script_progression "Starting $app's systemd service..." ynh_systemctl --service="$app" --action="start" + ynh_systemctl --service=postfix --action="restart" #================================================= # END OF SCRIPT #================================================= -ynh_script_progression "Installation of $app completed" \ No newline at end of file +ynh_script_progression "Installation of $app completed" diff --git a/scripts/restore b/scripts/restore index 872012e..b73a5e0 100755 --- a/scripts/restore +++ b/scripts/restore @@ -22,7 +22,6 @@ ynh_script_progression "Restoring data directory..." ynh_restore "$data_dir" - #================================================= # RESTORE THE POSTGRESQL DATABASE #================================================= @@ -58,4 +57,4 @@ ynh_systemctl --service=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression "Restoration completed for $app" \ No newline at end of file +ynh_script_progression "Restoration completed for $app" diff --git a/scripts/upgrade b/scripts/upgrade index 1faaa74..935610b 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -23,14 +23,11 @@ ynh_setup_source --dest_dir="$install_dir" --full_replace --keep=".env" #================================================= # INSTALLATION #================================================= -ynh_script_progression "Adding $app's dependencies..." +ynh_script_progression "Building $app..." pushd "$install_dir" - ynh_hide_warnings corepack enable && COREPACK_ENABLE_DOWNLOAD_PROMPT=0 corepack prepare pnpm@latest --activate ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" pnpm install --frozen-lockfile - -ynh_script_progression "Building $app..." ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run editor-ext:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run server:build ynh_exec_as_app NODE_OPTIONS="--max-old-space-size=4096" NX_DAEMON=false NX_DISABLE_NX_CACHE=true pnpm run client:build @@ -61,4 +58,4 @@ ynh_systemctl --service="$app" --action="start" # END OF SCRIPT #================================================= -ynh_script_progression "Upgrade of $app completed" \ No newline at end of file +ynh_script_progression "Upgrade of $app completed" From a42a39d7bf46de4e1c7916fc0499d39a61400359 Mon Sep 17 00:00:00 2001 From: eric_G <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 21 Mar 2026 20:54:15 +0100 Subject: [PATCH 10/13] Update screenshot.png --- doc/screenshots/screenshot.png | Bin 345839 -> 251799 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/doc/screenshots/screenshot.png b/doc/screenshots/screenshot.png index 7055295f53728da5d64b084712cce548186e13d6..aba36a0254df876a341d44f2fbc2c10893767a1a 100644 GIT binary patch literal 251799 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

1D8<4yJO=&V`*zq_`;z{N$nfp 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

9fSZvYvnGC!5RtHQ-FL;%q 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

+*k1~l)D^0xqNFLp(}?S^)_DNW#Q{wr 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