From 2e700ec04541bdb744827efbb259f976e6c416e7 Mon Sep 17 00:00:00 2001 From: squeak Date: Thu, 9 Sep 2021 10:49:43 +0200 Subject: [PATCH 1/4] Added missing links to dato website and repo. --- README.md | 4 ++-- README_fr.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 819f4c5..3af9b78 100644 --- a/README.md +++ b/README.md @@ -93,8 +93,8 @@ For now, dato needs a full domain, it doesn't support being set to a subpath. ## Links * Report a bug: https://github.com/YunoHost-Apps/dato_ynh/issues - * App website: Link to the official website of this app. - * Upstream app repository: Link to the official repository of the upstream app. + * App website: https://squeak.eauchat.org/dato/ + * Upstream app repository: https://framagit.org/squeak/dato/ * YunoHost website: https://yunohost.org/ --- diff --git a/README_fr.md b/README_fr.md index 9a007a0..b53ac8b 100644 --- a/README_fr.md +++ b/README_fr.md @@ -80,8 +80,8 @@ Pour le moment, dato a besoin d'un domaine/sous-domaine complet et ne peut être ## Liens * Signaler un bug : https://github.com/YunoHost-Apps/dato_ynh/issues - * Site de l'application : Lien vers le site officiel de cette application. - * Dépôt de l'application principale : Lien vers le dépôt officiel de l'application principale. + * Site de l'application : https://squeak.eauchat.org/dato/ + * Dépôt de l'application principale : https://framagit.org/squeak/dato/ * Site web YunoHost : https://yunohost.org/ --- From 23b7484e1e7c320cb482818d12b127cde56c7625 Mon Sep 17 00:00:00 2001 From: squeak Date: Thu, 9 Sep 2021 19:42:21 +0200 Subject: [PATCH 2/4] Restart couchdb service before editing _users db security document. --- scripts/install | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/scripts/install b/scripts/install index a320a76..ea2fffc 100755 --- a/scripts/install +++ b/scripts/install @@ -165,6 +165,9 @@ if [[ $autosynchronize == true ]]; then # make sure that couchdb has CORS enabled and that it accepts requests from dato domain ynh_add_config --template="../conf/couch.ini" --destination="/opt/couchdb/etc/local.d/$app.ini" + # restart couchdb service so that it takes into consideration the changes + yunohost service restart couchdb + #================================================= # SETUP A COUCHDB DATO ADMIN USER #================================================= @@ -187,20 +190,20 @@ if [[ $autosynchronize == true ]]; then ynh_print_err --message="Please make sure that your couchdb instance is accessible from the url you provided, with a proper SSL certificate (not a self-signed one), otherwise you will not be able to login to dato!" fi - # modify _users db _security document - usersSecDoc=$(curl -X GET "$couch_pw_url/_users/_security") - usersSecDocModified=$(echo $usersSecDoc | jq '.members.roles += ["dato", "dato-admin"]') - usersSecDocChange_curlResult=$(curl -X PUT "$couch_pw_url/_users/_security" \ - -H "Accept: application/json" \ - -H "Content-Type: application/json" \ - -d "$usersSecDocModified" 2> /dev/null) + # modify _users db _security document + usersSecDoc=$(curl -X GET "$couch_pw_url/_users/_security") + usersSecDocModified=$(echo $usersSecDoc | jq '.members.roles += ["dato", "dato-admin"]') + usersSecDocChange_curlResult=$(curl -X PUT "$couch_pw_url/_users/_security" \ + -H "Accept: application/json" \ + -H "Content-Type: application/json" \ + -d "$usersSecDocModified" 2> /dev/null) - # display error message if there was an error modifying _users db _security document - if [[ $usersSecDocChange_curlResult != '{"ok":true,'* ]]; then - ynh_print_err --message="There was an error enabling dato users to access their user profile in couch. You will have to do it manually (check the 'Configure couchdb so that it accepts requests from dato' section in the following page for instructions: https://squeak.eauchat.org/apps/dato/?setups)." - ynh_print_err --message="Here is the error message from couchdb:" - ynh_print_err --message="$usersSecDocChange_curlResult" - fi + # display error message if there was an error modifying _users db _security document + if [[ $usersSecDocChange_curlResult != '{"ok":true,'* ]]; then + ynh_print_err --message="There was an error enabling dato users to access their user profile in couch. You will have to do it manually (check the 'Configure couchdb so that it accepts requests from dato' section in the following page for instructions: https://squeak.eauchat.org/apps/dato/?setups)." + ynh_print_err --message="Here is the error message from couchdb:" + ynh_print_err --message="$usersSecDocChange_curlResult" + fi fi From fdbe4c27f8f17d0337e4e8853e53f1e425bdf84e Mon Sep 17 00:00:00 2001 From: squeak Date: Thu, 9 Sep 2021 19:45:52 +0200 Subject: [PATCH 3/4] 1.5.17~ynh1 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- manifest.json | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 3af9b78..8843b35 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ The purpose of dato is not to propose a UI specific to some purpose, but somethi Dato is a progressive webapp, which means that you can install it from the browser in computer and phones, and use it offline. -**Shipped version:** 1.5.16 +**Shipped version:** 1.5.17 ## Screenshots diff --git a/README_fr.md b/README_fr.md index b53ac8b..b8eec6a 100644 --- a/README_fr.md +++ b/README_fr.md @@ -18,7 +18,7 @@ Le but de dato n'est pas de proposer l'interface idéale pour chaque outil, mais Dato est une application web progressive, ce qui veut dire que vous pouvez l'installer sur ordinateur et téléphone facilement et l'utiliser hors connexion. -**Version incluse :** 1.5.16 +**Version incluse :** 1.5.17 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 4866584..3b31a99 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://framagit.org/squeak/dato/-/archive/v1.5.16/dato-v1.5.16.tar.gz -SOURCE_SUM=5b66a0389659878a9e75c06fc5dd6de376644acfd4708c9982ae28ee970340cb +SOURCE_URL=https://framagit.org/squeak/dato/-/archive/v1.5.17/dato-v1.5.17.tar.gz +SOURCE_SUM=a7c918be766259f907ce1837aed3acd0e0c81542548a1ef3201eed6b7e76eb5d SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index e68e46b..5fde7e0 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Store all kinds of data with an extremely customizable interface.", "fr": "Stockez tous types de données avec une interface complètement customizable." }, - "version": "1.5.16~ynh2", + "version": "1.5.17~ynh1", "url": "https://squeak.eauchat.org/dato", "upstream": { "license": "AGPL-3.0-or-later", From 8c97592713ec4c9b5d8a0711e7394bb6821e11ce Mon Sep 17 00:00:00 2001 From: squeak Date: Thu, 9 Sep 2021 20:04:42 +0200 Subject: [PATCH 4/4] Corrected some missing infos in READMEs. --- README.md | 1 + README_fr.md | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/README.md b/README.md index 8843b35..7182e64 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,7 @@ You can also make modifications in `config/private.js`, but be sure to know what By default all data you create with dato is stored only in your browser. Users can manually enable per-database synchronization with any remote couch server, but this process is not obvious to users. Therefore dato provide an autosynchronization mechanism. To enable it, you need to setup a couchdb server (you can do this using the [couchdb yunohost package](https://github.com/YunoHost-Apps/couchdb_ynh)). You should do this before installing dato. Then when installing dato, set the url to your couchdb server when prompted (you will also need to fill your couchdb admin password, and info about the dato admin user to create). Dato will automatically setup the dato administrator account in your couchdb server. You can then easily add users from the user interface, as specified below. +Please note that you can install couchdb in a different server than dato, but you'll have to enable CORS and edit the _users security document of you couchdb server manually. Check [this page](https://squeak.eauchat.org/apps/dato/?setups) for details on how to do all that. If you want to allow both a free usage of the app by anyone, and autosynchronization for some users, you can install the dato package multiple times with different setups. diff --git a/README_fr.md b/README_fr.md index b8eec6a..997c03e 100644 --- a/README_fr.md +++ b/README_fr.md @@ -37,6 +37,16 @@ Cette application peut être personnalisée en modifiant le fichier `config/publ Il est aussi possible de modifier `config/private.js`, mais à vos risques et périls. +## Autosynchronisation + +Par défaut toutes les données que vous créez dans dato ne sont stockées que dans votre navigateur. L'utilisateur peut manuellement mettre en place des synchronisations pour chaque base de données vers n'importe quel serveur couchdb, mais ce n'est pas un processus évident pour l'utilisateur. Dato propose donc un mécanisme d'autosynchronisation. +Pour l'activer, il vous faut mettre en place un serveur couchdb (vous pouvez faire cela en utiisant le [paquet yunohost couchdb](https://github.com/YunoHost-Apps/couchdb_ynh)). Vous devez faire cela avant d'installer dato. +Ensuite, lors de l'installation de dato, renseignez l'url de votre serveur couchdb quand c'est demandé (vous devrez également renseigner votre mot de passe d'administration de couchdb, et les informations de l'administrateur de dato à créer). Dato créera l'utilisateur d'administration ce qui vous permettra d'ajouter des utilisateurs en suivant les instructions ci-dessous. +Notez que vous pouvez installer couchdb sur un autre serveur que celui qui héberge dato, mais vous devrez activer CORS et éditer le document de sécurité de la base de donnée _users de couchdb manuellement. Consultez [cette page](https://squeak.eauchat.org/apps/dato/?setups) pour plus de détails sur comment faire cela. + +Si vous souhaitez utiliser dato avec et sans autosynchronisation simultanément pour différents utilisateurs, vous pouvez installer l'application plusieurs fois avec différentes configurations. + + ## Ajouter des utilisateurs Si vous activez l'autosynchronisation, les utilisateurs auront besoin d'un compte pour utiliser l'application. Dato ne supporte pas LDAP pour le moment, vous devrez donc ajouter des utilisateurs séparément dans sa base de données.