From 45ee9dd4f24b272ab13c13b3e2e0779693451262 Mon Sep 17 00:00:00 2001 From: Dietmar Date: Mon, 1 Mar 2021 19:48:08 +0000 Subject: [PATCH 01/22] Translated using Weblate (German) Currently translated at 100.0% (1449 of 1449 strings) --- plinth/locale/de/LC_MESSAGES/django.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po index 046ca3453..b9284f4e8 100644 --- a/plinth/locale/de/LC_MESSAGES/django.po +++ b/plinth/locale/de/LC_MESSAGES/django.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-19 15:50+0000\n" +"POT-Creation-Date: 2021-02-11 17:23-0500\n" +"PO-Revision-Date: 2021-03-03 16:50+0000\n" "Last-Translator: Dietmar \n" "Language-Team: German \n" @@ -19,7 +19,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5\n" +"X-Generator: Weblate 4.5.1-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -5584,7 +5584,7 @@ msgstr "" #: plinth/modules/radicale/manifest.py:28 msgid "GNOME Calendar" -msgstr "GNOME Calendar" +msgstr "GNOME Kalender" #: plinth/modules/radicale/manifest.py:36 msgid "Mozilla Thunderbird" From ad184e8bea4fc1ae76933faff760f6f02caad1f9 Mon Sep 17 00:00:00 2001 From: Karol Werner Date: Tue, 2 Mar 2021 15:58:48 +0000 Subject: [PATCH 02/22] Translated using Weblate (Polish) Currently translated at 34.9% (506 of 1449 strings) --- plinth/locale/pl/LC_MESSAGES/django.po | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/plinth/locale/pl/LC_MESSAGES/django.po b/plinth/locale/pl/LC_MESSAGES/django.po index e62a0f514..e523526a0 100644 --- a/plinth/locale/pl/LC_MESSAGES/django.po +++ b/plinth/locale/pl/LC_MESSAGES/django.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-01 18:42+0000\n" -"Last-Translator: Stanisław Stefan Krukowski \n" +"POT-Creation-Date: 2021-02-11 17:23-0500\n" +"PO-Revision-Date: 2021-03-03 16:50+0000\n" +"Last-Translator: Karol Werner \n" "Language-Team: Polish \n" "Language: pl\n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 4.5.1-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -2637,7 +2637,7 @@ msgstr "" #: plinth/modules/i2p/templates/i2p.html:21 #: plinth/modules/i2p/templates/i2p.html:34 plinth/templates/clients.html:28 msgid "Launch" -msgstr "" +msgstr "Uruchom" #: plinth/modules/i2p/templates/i2p.html:25 msgid "Anonymous Torrents" @@ -7720,7 +7720,7 @@ msgstr "" #: plinth/templates/index.html:143 plinth/templates/toolbar.html:19 msgid "Donate" -msgstr "" +msgstr "Przekaż darowiznę" #: plinth/templates/index.html:147 msgid "FreedomBox Foundation" From fef06f1d3c936b07d2d73e8029c50fb18352f559 Mon Sep 17 00:00:00 2001 From: Michalis Date: Mon, 1 Mar 2021 21:02:23 +0000 Subject: [PATCH 03/22] Translated using Weblate (Greek) Currently translated at 73.4% (1064 of 1449 strings) --- plinth/locale/el/LC_MESSAGES/django.po | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plinth/locale/el/LC_MESSAGES/django.po b/plinth/locale/el/LC_MESSAGES/django.po index a5d51c33b..c9ba05fb8 100644 --- a/plinth/locale/el/LC_MESSAGES/django.po +++ b/plinth/locale/el/LC_MESSAGES/django.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-09 23:50+0000\n" +"POT-Creation-Date: 2021-02-11 17:23-0500\n" +"PO-Revision-Date: 2021-03-03 16:50+0000\n" "Last-Translator: Michalis \n" "Language-Team: Greek \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 4.5.1-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -278,7 +278,7 @@ msgstr "Επιλέξτε τις εφαρμογές που θέλετε να επ #: plinth/modules/backups/forms.py:137 msgid "Upload File" -msgstr "Ανέβασμα αρχείου" +msgstr "Αποστολή αρχείου" #: plinth/modules/backups/forms.py:139 msgid "Backup files have to be in .tar.gz format" @@ -625,7 +625,7 @@ msgstr "" #: plinth/modules/backups/templates/backups_upload.html:41 msgid "Upload file" -msgstr "Ανέβασμα αρχείου" +msgstr "Αποστολή αρχείου" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:18 #, python-format From 2618d77d93f09941e2629dea39b3fa1d564cb34f Mon Sep 17 00:00:00 2001 From: Fioddor Superconcentrado Date: Fri, 5 Mar 2021 13:12:54 +0000 Subject: [PATCH 04/22] Generating developer documentation. --- HACKING.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/HACKING.md b/HACKING.md index 630f96e11..99bd25ed7 100644 --- a/HACKING.md +++ b/HACKING.md @@ -5,7 +5,7 @@ This document provides reference information for FreedomBox **contribution** hac 1. [Setting up and using development environments](#development-environments-setting-up-and-their-usage) 1. [Contributing translations + how to make/keep FreedomBox international](#makingkeeping-freedombox-international) 1. [Testing](#testing) -1. [Building user documentation](#building-the-user-documentation-separately) +1. [Documentation](#documentation) 1. [Submitting your changes](#submitting-your-changes) 1. [Other related stuff](#miscelanea) @@ -465,7 +465,9 @@ $ py.test-3 -n 4 --dist=loadfile --include-functional -m essential [back to index](#hacking) -## Building the User Documentation Separately +## Documentation + +### Building the User Documentation Separately FreedomBox Service (Plinth) man page is built from DocBook source in the `doc/` directory. FreedomBox manual is downloaded from the wiki is also available @@ -477,6 +479,10 @@ To build the documentation separately, run: guest$ make -C doc ``` +### Building Developer documentation + +See [README.rst](doc/dev/README.rst) in `doc/dev` directory. + [back to index](#hacking) From f514d6cfa25f1fbff51ddbd91ec29124da9113a4 Mon Sep 17 00:00:00 2001 From: ikmaak Date: Wed, 3 Mar 2021 18:21:40 +0000 Subject: [PATCH 05/22] Translated using Weblate (Dutch) Currently translated at 100.0% (1453 of 1453 strings) --- plinth/locale/nl/LC_MESSAGES/django.po | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/plinth/locale/nl/LC_MESSAGES/django.po b/plinth/locale/nl/LC_MESSAGES/django.po index d272a38df..2fb2f22b0 100644 --- a/plinth/locale/nl/LC_MESSAGES/django.po +++ b/plinth/locale/nl/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-14 10:50+0000\n" +"PO-Revision-Date: 2021-03-05 18:50+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Dutch \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 4.5.1-dev\n" "X-Language: nl_NL\n" "X-Source-Language: C\n" @@ -3078,6 +3078,9 @@ msgid "" "Matrix Synapse needs a STUN/TURN server for audio/video calls. Install the " "Coturn app or configure an external server." msgstr "" +"Matrix Synapse heeft een STUN/TURN-server nodig voor audio- en " +"videogesprekken. Installeer de Coturn " +"toepassing of configureer een externe server." #: plinth/modules/matrixsynapse/__init__.py:76 msgid "Matrix Synapse" @@ -3099,7 +3102,7 @@ msgstr "" #: plinth/modules/matrixsynapse/forms.py:21 msgid "Automatically manage audio/video call setup" -msgstr "" +msgstr "Automatisch beheer van audio/video-oproepinstellingen" #: plinth/modules/matrixsynapse/forms.py:23 #, python-brace-format @@ -3108,24 +3111,27 @@ msgid "" "server for Matrix Synapse. Disable this if you want to use a different STUN/" "TURN server." msgstr "" +"Hiermee wordt de lokale coturn toepassing " +"geconfigureerd als de STUN/TURN-server voor Matrix Synapse. Schakel dit uit " +"als een andere STUN/TURN-server gebruikt moet worden." #: plinth/modules/matrixsynapse/forms.py:30 msgid "STUN/TURN Server URIs" -msgstr "" +msgstr "STUN/TURN-server URI's" #: plinth/modules/matrixsynapse/forms.py:32 msgid "List of public URIs of the STUN/TURN server, one on each line." -msgstr "" +msgstr "Lijst van publieke URI's van de STUN/TURN-server, één per regel." #: plinth/modules/matrixsynapse/forms.py:36 -#, fuzzy -#| msgid "Authentication Mode" msgid "Shared Authentication Secret" -msgstr "Authentificatiemodus" +msgstr "Gedeeld Authenticatiegeheim" #: plinth/modules/matrixsynapse/forms.py:37 msgid "Shared secret used to compute passwords for the TURN server." msgstr "" +"Gedeeld geheim dat wordt gebruikt om wachtwoorden voor de TURN-server te " +"berekenen." #: plinth/modules/matrixsynapse/manifest.py:12 msgid "Element" From 378b2bdaba8af3cd640eb651b8ae12a5d5642f0b Mon Sep 17 00:00:00 2001 From: Burak Yavuz Date: Thu, 4 Mar 2021 18:45:43 +0000 Subject: [PATCH 06/22] Translated using Weblate (Turkish) Currently translated at 100.0% (1453 of 1453 strings) --- plinth/locale/tr/LC_MESSAGES/django.po | 34 ++++++++++++++++---------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po index 97cdffc84..10d726774 100644 --- a/plinth/locale/tr/LC_MESSAGES/django.po +++ b/plinth/locale/tr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-14 10:50+0000\n" +"PO-Revision-Date: 2021-03-05 18:50+0000\n" "Last-Translator: Burak Yavuz \n" "Language-Team: Turkish \n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 4.5.1-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -2561,9 +2561,9 @@ msgid "" "channel using the IRC web interface." msgstr "" "Birçok %(box_name)s katılımcısı ve kullanıcısı da irc.oftc.net IRC ağında " -"olabilir. IRC web arayüzünü kullanarak #freedombox kanalına katılın " -"ve yardım isteyin." +"olabilir. IRC web arayüzünü kullanarak #freedombox " +"kanalına katılın ve yardım isteyin." #: plinth/modules/help/templates/help_manual.html:18 msgid "Download as PDF" @@ -3058,6 +3058,9 @@ msgid "" "Matrix Synapse needs a STUN/TURN server for audio/video calls. Install the " "Coturn app or configure an external server." msgstr "" +"Matrix Synapse, sesli/görüntülü aramalar için bir STUN/TURN sunucusuna " +"ihtiyaç duyar. Coturn uygulamasını yükleyin veya " +"harici bir sunucu yapılandırın." #: plinth/modules/matrixsynapse/__init__.py:76 msgid "Matrix Synapse" @@ -3079,7 +3082,7 @@ msgstr "" #: plinth/modules/matrixsynapse/forms.py:21 msgid "Automatically manage audio/video call setup" -msgstr "" +msgstr "Sesli/görüntülü arama kurulumunu otomatik olarak yönetin" #: plinth/modules/matrixsynapse/forms.py:23 #, python-brace-format @@ -3088,24 +3091,29 @@ msgid "" "server for Matrix Synapse. Disable this if you want to use a different STUN/" "TURN server." msgstr "" +"Yerel coturn uygulamasını, Matrix Synapse için STUN/" +"TURN sunucusu olarak yapılandırır. Farklı bir STUN/TURN sunucusu kullanmak " +"istiyorsanız bunu etkisizleştirin." #: plinth/modules/matrixsynapse/forms.py:30 msgid "STUN/TURN Server URIs" -msgstr "" +msgstr "STUN/TURN Sunucu URI'leri" #: plinth/modules/matrixsynapse/forms.py:32 msgid "List of public URIs of the STUN/TURN server, one on each line." msgstr "" +"Her satırda bir tane olmak üzere STUN/TURN sunucusunun ortak URI'lerinin " +"listesi." #: plinth/modules/matrixsynapse/forms.py:36 -#, fuzzy -#| msgid "Authentication Mode" msgid "Shared Authentication Secret" -msgstr "Kimlik Doğrulama Kipi" +msgstr "Paylaşılan Kimlik Doğrulama Gizli Anahtarı" #: plinth/modules/matrixsynapse/forms.py:37 msgid "Shared secret used to compute passwords for the TURN server." msgstr "" +"TURN sunucusu için parolaları hesaplamak amacıyla kullanılan paylaşılan " +"gizli anahtar." #: plinth/modules/matrixsynapse/manifest.py:12 msgid "Element" @@ -7122,14 +7130,14 @@ msgstr "" #: plinth/modules/upgrades/__init__.py:223 msgid "Distribution update started" -msgstr "Dağıtım güncellemesi başladı" +msgstr "Dağıtım güncellemesi başlatıldı" #: plinth/modules/upgrades/__init__.py:225 msgid "" "Started update to next stable release. This may take a long time to complete." msgstr "" -"Bir sonraki kararlı sürüme güncelleme başladı. Bunun tamamlanması uzun zaman " -"alabilir." +"Bir sonraki kararlı yayıma güncelleme başlatıldı. Bunun tamamlanması uzun " +"zaman alabilir." #: plinth/modules/upgrades/forms.py:15 msgid "Enable auto-update" From 64b3fb98b28eb5972b01f7f6729a68909c135baa Mon Sep 17 00:00:00 2001 From: Fioddor Superconcentrado Date: Thu, 4 Mar 2021 16:40:47 +0100 Subject: [PATCH 07/22] config: Fix tests related to user home directory Closes: #2014 - test_homepage_mapping_skip_ci: Don't expect fbx to run the test. - test_homepage_field: Check additional precondition. Signed-off-by: Fioddor Superconcentrado [sunil: Minor refactoring to avoid flake8 warnings] Signed-off-by: Sunil Mohan Adapa Reviewed-by: Sunil Mohan Adapa --- plinth/modules/config/tests/test_config.py | 128 ++++++++++++--------- 1 file changed, 73 insertions(+), 55 deletions(-) diff --git a/plinth/modules/config/tests/test_config.py b/plinth/modules/config/tests/test_config.py index 850d10575..68115528e 100644 --- a/plinth/modules/config/tests/test_config.py +++ b/plinth/modules/config/tests/test_config.py @@ -3,15 +3,15 @@ Tests for config module. """ -import pytest import os +from unittest.mock import MagicMock, patch -from unittest.mock import (patch, MagicMock) +import pytest from plinth import __main__ as plinth_main -from plinth.modules.apache import uws_directory_of_user -from plinth.modules.config import (home_page_url2scid, get_home_page, - _home_page_scid2url, change_home_page) +from plinth.modules.apache import uws_directory_of_user, uws_url_of_user +from plinth.modules.config import (_home_page_scid2url, change_home_page, + get_home_page, home_page_url2scid) from plinth.modules.config.forms import ConfigurationForm @@ -71,46 +71,53 @@ def test_domainname_field(): def test_homepage_mapping(): """Basic tests for homepage functions.""" - f = home_page_url2scid - assert f(None) is None - assert f('/unknown/url') is None - assert 'plinth' == f('/plinth/') - assert 'plinth' == f('/plinth') - assert 'plinth' == f('plinth') - assert 'apache-default' == f('/index.html') - assert 'uws-user' == f('/~user') - assert 'uws-user' == f('/~user/whatever/else') - # assert 'config' == f('/plinth/apps/sharing/') + func = home_page_url2scid + assert func(None) is None + assert func('/unknown/url') is None + assert func('/plinth/') == 'plinth' + assert func('/plinth') == 'plinth' + assert func('plinth') == 'plinth' + assert func('/index.html') == 'apache-default' + assert func('/~user') == 'uws-user' + assert func('/~user/whatever/else') == 'uws-user' - f = _home_page_scid2url - assert f(None) is None - assert '/plinth/' == f('plinth') - assert '/index.html' == f('apache-default') + func = _home_page_scid2url + assert func(None) is None + assert func('plinth') == '/plinth/' + assert func('apache-default') == '/index.html' def test_homepage_mapping_skip_ci(): """Special tests for homepage functions.""" - try: - UWS_DIRECTORY = uws_directory_of_user(os.getlogin()) + user = os.getlogin() except OSError: + # See msg383161 in https://bugs.python.org/issue40821 reason = "Needs access to ~/ directory. " \ + "CI sandboxed workspace doesn't provide it." pytest.skip(reason) + uws_directory = uws_directory_of_user(user) + uws_url = uws_url_of_user(user) + uws_scid = home_page_url2scid(uws_url) - if os.path.exists(UWS_DIRECTORY): - reason = "UWS dir {} exists already.".format(UWS_DIRECTORY) + # Check test's precondition: + if os.path.exists(uws_directory): + # Don't blindly remove a pre-existing directory. Just skip the test. + reason = "UWS directory {} exists already.".format(uws_directory) pytest.skip(reason) - f = _home_page_scid2url + # AC: Return scid if UWS directory exists: try: - os.mkdir(UWS_DIRECTORY) - except FileNotFoundError: - pytest.skip('Home folder cannot be accessed on buildd.') + os.mkdir(uws_directory) + except Exception: + reason = "Needs access to ~/ directory. " \ + + "CI sandboxed workspace doesn't provide it." + pytest.skip(reason) + assert _home_page_scid2url(uws_scid) == uws_url - assert '/~fbx/' == f('uws-fbx') - os.rmdir(UWS_DIRECTORY) - assert f('uws-fbx') is None + # AC: Return None if it doesn't: + os.rmdir(uws_directory) + assert _home_page_scid2url(uws_scid) is None class Dict2Obj(object): @@ -147,39 +154,50 @@ def test_homepage_field(): Note: If run on a pristine unconfigured FreedomBox, this test will leave the homepage default-configured. (Imperfect cleanup in such case). - Pending: Specific test cases to distiguish 4.1,2,3. - Currently they share the same test case. + Note: We take fbx as website user because of our testing container. + + Pending: - Specific test cases to distinguish 4.1,2,3. + Currently they share the same test case. + - Search for another valid user apart from fbx. """ + user = 'fbx' + uws_directory = uws_directory_of_user(user) + uws_url = uws_url_of_user(user) + uws_scid = home_page_url2scid(uws_url) + + default_home_page = 'plinth' + original_home_page = get_home_page() or default_home_page + + # Check test's preconditions: + if original_home_page not in (default_home_page, None): + reason = "Unexpected home page {}.".format(original_home_page) + pytest.skip(reason) + + if os.path.exists(uws_directory): + # Don't blindly remove a pre-existing directory. Just skip the test. + reason = "UWS directory {} exists already.".format(uws_directory) + pytest.skip(reason) + + # AC: invalid changes fall back to default: + for scid in ('uws-unexisting', uws_scid, 'missing_app'): + change_home_page(scid) + assert get_home_page() == default_home_page + + # AC: valid changes actually happen: try: - UWS_DIRECTORY = uws_directory_of_user(os.getlogin()) - except OSError: - reason = "Needs access to ~/ directory, etc. " \ + os.mkdir(uws_directory) + except Exception: + reason = "Needs access to ~/ directory. " \ + "CI sandboxed workspace doesn't provide it." pytest.skip(reason) - - DEFAULT_HOME_PAGE = 'plinth' - ORIGINAL_HOME_PAGE = get_home_page() or DEFAULT_HOME_PAGE - - if ORIGINAL_HOME_PAGE not in (DEFAULT_HOME_PAGE, None): - reason = "Unexpected home page {}.".format(ORIGINAL_HOME_PAGE) - pytest.skip(reason) - - # invalid changes fall back to default: - for scid in ('uws-unexisting', 'uws-fbx', 'missing_app'): - change_home_page(scid) - assert get_home_page() == DEFAULT_HOME_PAGE - - os.mkdir(UWS_DIRECTORY) - - # valid changes actually happen: - for scid in ('b', 'a', 'uws-fbx', 'apache-default', 'plinth'): + for scid in ('b', 'a', uws_scid, 'apache-default', 'plinth'): change_home_page(scid) assert get_home_page() == scid # cleanup: - change_home_page(ORIGINAL_HOME_PAGE) - os.rmdir(UWS_DIRECTORY) - assert get_home_page() == ORIGINAL_HOME_PAGE + change_home_page(original_home_page) + os.rmdir(uws_directory) + assert get_home_page() == original_home_page def test_locale_path(): From 8df60f596ed3f27c5b11589e2adf357048b5d100 Mon Sep 17 00:00:00 2001 From: Veiko Aasa Date: Tue, 2 Mar 2021 16:36:51 +0200 Subject: [PATCH 08/22] deluge, mldonkey, syncthing, transmission: Depend on nslcd.service Add nslcd.service as a dependency to the services that depend on users and groups defined in LDAP. deluged, mldonkey-server, syncthing@syncthing and transmission-daemon services depend on freedombox-share LDAP group. Closes #2061 Tests done with apps deluge, mldonkey, syncthing and transmission, in both debian stable and testing dev containers, after applying changes: - After installing an app and after reboot, the daemon user is a member of the freedombox-share group. - Checked with the `systemctl show` command that nslcd.service is added to After=... dependencies. - All the functional tests pass (in Debian stable, closed manually the syncthing usage reporting form - #2059). Signed-off-by: Veiko Aasa Reviewed-by: Sunil Mohan Adapa --- .../data/lib/systemd/system/deluged.service.d/freedombox.conf | 3 +++ .../systemd/system/mldonkey-server.service.d/freedombox.conf | 2 +- .../system/syncthing@syncthing.service.d/freedombox.conf | 3 +++ .../system/transmission-daemon.service.d/freedombox.conf | 3 +++ 4 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 plinth/modules/deluge/data/lib/systemd/system/deluged.service.d/freedombox.conf create mode 100644 plinth/modules/syncthing/data/lib/systemd/system/syncthing@syncthing.service.d/freedombox.conf create mode 100644 plinth/modules/transmission/data/lib/systemd/system/transmission-daemon.service.d/freedombox.conf diff --git a/plinth/modules/deluge/data/lib/systemd/system/deluged.service.d/freedombox.conf b/plinth/modules/deluge/data/lib/systemd/system/deluged.service.d/freedombox.conf new file mode 100644 index 000000000..749d0d636 --- /dev/null +++ b/plinth/modules/deluge/data/lib/systemd/system/deluged.service.d/freedombox.conf @@ -0,0 +1,3 @@ +# The service depends on users and groups defined in LDAP +[Unit] +After=nslcd.service diff --git a/plinth/modules/mldonkey/data/lib/systemd/system/mldonkey-server.service.d/freedombox.conf b/plinth/modules/mldonkey/data/lib/systemd/system/mldonkey-server.service.d/freedombox.conf index ef27515fa..d0256a633 100644 --- a/plinth/modules/mldonkey/data/lib/systemd/system/mldonkey-server.service.d/freedombox.conf +++ b/plinth/modules/mldonkey/data/lib/systemd/system/mldonkey-server.service.d/freedombox.conf @@ -1,6 +1,6 @@ [Unit] Description=MLDonkey: Multi-protocol, peer-to-peer file sharing server -After=syslog.target network.target +After=syslog.target network.target nslcd.service ConditionPathExists=/var/lib/mldonkey/downloads.ini Documentation=man:mlnet(1) http://mldonkey.sourceforge.net/Main_Page diff --git a/plinth/modules/syncthing/data/lib/systemd/system/syncthing@syncthing.service.d/freedombox.conf b/plinth/modules/syncthing/data/lib/systemd/system/syncthing@syncthing.service.d/freedombox.conf new file mode 100644 index 000000000..749d0d636 --- /dev/null +++ b/plinth/modules/syncthing/data/lib/systemd/system/syncthing@syncthing.service.d/freedombox.conf @@ -0,0 +1,3 @@ +# The service depends on users and groups defined in LDAP +[Unit] +After=nslcd.service diff --git a/plinth/modules/transmission/data/lib/systemd/system/transmission-daemon.service.d/freedombox.conf b/plinth/modules/transmission/data/lib/systemd/system/transmission-daemon.service.d/freedombox.conf new file mode 100644 index 000000000..749d0d636 --- /dev/null +++ b/plinth/modules/transmission/data/lib/systemd/system/transmission-daemon.service.d/freedombox.conf @@ -0,0 +1,3 @@ +# The service depends on users and groups defined in LDAP +[Unit] +After=nslcd.service From 631e10c09e7625018088c16fb128a4443468267c Mon Sep 17 00:00:00 2001 From: Veiko Aasa Date: Tue, 2 Mar 2021 18:20:57 +0200 Subject: [PATCH 09/22] deluge: Fix daemon user not in freedombox-share group after installation Add the debian-deluged user to the freedombox-share group *before* running app setup. The app setup process restarts the deluged daemon after which the process has correct group ownerships. Tests done in Debian stable and testing dev containers: - After installing the deluge app, checked from /proc/--process-id--/status that the deluged daemon process has the freedombox-share group. Signed-off-by: Veiko Aasa Reviewed-by: Sunil Mohan Adapa --- plinth/modules/deluge/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plinth/modules/deluge/__init__.py b/plinth/modules/deluge/__init__.py index 15bc3962b..3e82bd30d 100644 --- a/plinth/modules/deluge/__init__.py +++ b/plinth/modules/deluge/__init__.py @@ -98,6 +98,6 @@ class DelugeApp(app_module.App): def setup(helper, old_version=None): """Install and configure the module.""" helper.install(managed_packages) - helper.call('post', actions.superuser_run, 'deluge', ['setup']) add_user_to_share_group(SYSTEM_USER) + helper.call('post', actions.superuser_run, 'deluge', ['setup']) helper.call('post', app.enable) From 06dc5192a7e78821f24b855c6830ce06a5199d69 Mon Sep 17 00:00:00 2001 From: Michael Breidenbach Date: Sun, 7 Mar 2021 12:58:23 +0000 Subject: [PATCH 10/22] Translated using Weblate (Swedish) Currently translated at 99.9% (1452 of 1453 strings) --- plinth/locale/sv/LC_MESSAGES/django.po | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/plinth/locale/sv/LC_MESSAGES/django.po b/plinth/locale/sv/LC_MESSAGES/django.po index 9c8f49351..0401ae20e 100644 --- a/plinth/locale/sv/LC_MESSAGES/django.po +++ b/plinth/locale/sv/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-16 04:50+0000\n" +"PO-Revision-Date: 2021-03-08 13:16+0000\n" "Last-Translator: Michael Breidenbach \n" "Language-Team: Swedish \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 4.5.1\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -3054,6 +3054,8 @@ msgid "" "Matrix Synapse needs a STUN/TURN server for audio/video calls. Install the " "Coturn app or configure an external server." msgstr "" +"Matrix Synapse behöver en STUN/TURN-server för ljud-/videosamtal. Installera " +"Coturn-appen eller konfigurera en extern server." #: plinth/modules/matrixsynapse/__init__.py:76 msgid "Matrix Synapse" @@ -3075,7 +3077,7 @@ msgstr "" #: plinth/modules/matrixsynapse/forms.py:21 msgid "Automatically manage audio/video call setup" -msgstr "" +msgstr "Hantera konfiguration av ljud-/videosamtal automatiskt" #: plinth/modules/matrixsynapse/forms.py:23 #, python-brace-format @@ -3084,20 +3086,21 @@ msgid "" "server for Matrix Synapse. Disable this if you want to use a different STUN/" "TURN server." msgstr "" +"Konfigurerar den lokala coturn-appen som STUN/" +"TURN-servern för Matrix Synapse. Inaktivera detta om du vill använda en " +"annan STUN/TURN-server." #: plinth/modules/matrixsynapse/forms.py:30 msgid "STUN/TURN Server URIs" -msgstr "" +msgstr "URL:er för STUN/TURN-servrar" #: plinth/modules/matrixsynapse/forms.py:32 msgid "List of public URIs of the STUN/TURN server, one on each line." -msgstr "" +msgstr "Lista över offentliga URI: er för STUN / TURN-servrar, en på varje rad." #: plinth/modules/matrixsynapse/forms.py:36 -#, fuzzy -#| msgid "Authentication Mode" msgid "Shared Authentication Secret" -msgstr "Autentiseringsläge" +msgstr "Delad autentiseringshemlighet" #: plinth/modules/matrixsynapse/forms.py:37 msgid "Shared secret used to compute passwords for the TURN server." From 22ba14ee56320bc80db2d96d5879ed60fbc9a74e Mon Sep 17 00:00:00 2001 From: Michalis Date: Sat, 6 Mar 2021 18:39:01 +0000 Subject: [PATCH 11/22] Translated using Weblate (Greek) Currently translated at 73.0% (1062 of 1453 strings) --- plinth/locale/el/LC_MESSAGES/django.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plinth/locale/el/LC_MESSAGES/django.po b/plinth/locale/el/LC_MESSAGES/django.po index c9ba05fb8..8c9d1c390 100644 --- a/plinth/locale/el/LC_MESSAGES/django.po +++ b/plinth/locale/el/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-11 17:23-0500\n" -"PO-Revision-Date: 2021-03-03 16:50+0000\n" +"PO-Revision-Date: 2021-03-08 13:16+0000\n" "Last-Translator: Michalis \n" "Language-Team: Greek \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5.1-dev\n" +"X-Generator: Weblate 4.5.1\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -6610,7 +6610,7 @@ msgstr "Αλγόριθμος" #: plinth/modules/ssh/templates/ssh.html:25 msgid "Fingerprint" -msgstr "Αποτύπωμα" +msgstr "Ψηφιακό αποτύπωμα" #: plinth/modules/ssh/views.py:48 msgid "SSH authentication with password disabled." From 88f9edc50869fcee095b6a092311e2ac340e6dbb Mon Sep 17 00:00:00 2001 From: Fioddor Superconcentrado Date: Thu, 11 Mar 2021 12:59:18 +0000 Subject: [PATCH 12/22] Translated using Weblate (Spanish) Currently translated at 99.9% (1452 of 1453 strings) --- plinth/locale/es/LC_MESSAGES/django.po | 74 ++++++++++++++------------ 1 file changed, 41 insertions(+), 33 deletions(-) diff --git a/plinth/locale/es/LC_MESSAGES/django.po b/plinth/locale/es/LC_MESSAGES/django.po index 9f63b79a7..fb671a704 100644 --- a/plinth/locale/es/LC_MESSAGES/django.po +++ b/plinth/locale/es/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-02-11 18:50+0000\n" +"PO-Revision-Date: 2021-03-12 13:03+0000\n" "Last-Translator: Fioddor Superconcentrado \n" "Language-Team: Spanish \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5-dev\n" +"X-Generator: Weblate 4.5.2-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -3067,6 +3067,9 @@ msgid "" "Matrix Synapse needs a STUN/TURN server for audio/video calls. Install the " "Coturn app or configure an external server." msgstr "" +"Matrix Synapse necesita un servidor STUN/TURN para llamadas de audio/video. " +"Instalar la app Coturn o configurar un servidor " +"externo." #: plinth/modules/matrixsynapse/__init__.py:76 msgid "Matrix Synapse" @@ -3088,7 +3091,7 @@ msgstr "" #: plinth/modules/matrixsynapse/forms.py:21 msgid "Automatically manage audio/video call setup" -msgstr "" +msgstr "Administrar la configuración de llamada de audio/video automáticamente" #: plinth/modules/matrixsynapse/forms.py:23 #, python-brace-format @@ -3097,24 +3100,25 @@ msgid "" "server for Matrix Synapse. Disable this if you want to use a different STUN/" "TURN server." msgstr "" +"Configura la app local coturn como servidor " +"STUN/TURN para Matrix Synapse. Deshabilita esto si quieres usar un servidor " +"STUN/TURN diferente." #: plinth/modules/matrixsynapse/forms.py:30 msgid "STUN/TURN Server URIs" -msgstr "" +msgstr "URIs de servidor STUN/TURN" #: plinth/modules/matrixsynapse/forms.py:32 msgid "List of public URIs of the STUN/TURN server, one on each line." -msgstr "" +msgstr "Lista de URIs públicas de servidor STUN/TURN, una en cada línea." #: plinth/modules/matrixsynapse/forms.py:36 -#, fuzzy -#| msgid "Authentication Mode" msgid "Shared Authentication Secret" -msgstr "Modo de autenticación" +msgstr "Secreto compartido de autenticación" #: plinth/modules/matrixsynapse/forms.py:37 msgid "Shared secret used to compute passwords for the TURN server." -msgstr "" +msgstr "Secreto compartido para resolver contraseñas para el servidor TURN." #: plinth/modules/matrixsynapse/manifest.py:12 msgid "Element" @@ -6087,10 +6091,8 @@ msgid "Make files in this folder available to anyone with the link." msgstr "Dar acceso a los archivos de esta carpeta a quien tenga el enlace." #: plinth/modules/sharing/forms.py:34 -#, fuzzy -#| msgid "User groups that can read the files in the share" msgid "User groups that can read the files in the share:" -msgstr "Grupos de usuarias/os que pueden leer los archivos compartidos" +msgstr "Grupos de usuarias/os que pueden leer los archivos compartidos:" #: plinth/modules/sharing/forms.py:36 msgid "" @@ -6230,7 +6232,7 @@ msgstr "" #: plinth/modules/snapshot/forms.py:32 msgid "Hourly Snapshots Limit" -msgstr "Límite de instantáneas por hora" +msgstr "Límite de instantáneas horarias" #: plinth/modules/snapshot/forms.py:33 msgid "Keep a maximum of this many hourly snapshots." @@ -6238,7 +6240,7 @@ msgstr "Conservar el máximo número de instantáneas por hora." #: plinth/modules/snapshot/forms.py:36 msgid "Daily Snapshots Limit" -msgstr "Límite diario de instantáneas" +msgstr "Límite de instantáneas diarias" #: plinth/modules/snapshot/forms.py:37 msgid "Keep a maximum of this many daily snapshots." @@ -6246,7 +6248,7 @@ msgstr "Conservar el máximo número de instantáneas diarias." #: plinth/modules/snapshot/forms.py:40 msgid "Weekly Snapshots Limit" -msgstr "Límite semanal de instantáneas" +msgstr "Límite de instantáneas semanales" #: plinth/modules/snapshot/forms.py:41 msgid "Keep a maximum of this many weekly snapshots." @@ -6254,7 +6256,7 @@ msgstr "Conservar el máximo número de instantáneas semanales." #: plinth/modules/snapshot/forms.py:44 msgid "Monthly Snapshots Limit" -msgstr "Límite mensual de instantáneas" +msgstr "Límite de instantáneas mensuales" #: plinth/modules/snapshot/forms.py:45 msgid "Keep a maximum of this many monthly snapshots." @@ -6262,7 +6264,7 @@ msgstr "Conservar el máximo número de instantáneas mensuales." #: plinth/modules/snapshot/forms.py:48 msgid "Yearly Snapshots Limit" -msgstr "Límite anual de instantáneas" +msgstr "Límite de instantáneas anuales" #: plinth/modules/snapshot/forms.py:49 msgid "" @@ -7113,21 +7115,15 @@ msgid "Could not start distribution update" msgstr "No se pudo iniciar la actualización de la distribución" #: plinth/modules/upgrades/__init__.py:212 -#, fuzzy -#| msgid "" -#| "There is not enough free space in the root partition to start the " -#| "distribution update. Please ensure at least 5 GB, and at least 10% of the " -#| "total space, is free. Distribution update will be retried after 24 hours, " -#| "if enabled." msgid "" "There is not enough free space in the root partition to start the " "distribution update. Please ensure at least 5 GB is free. Distribution " "update will be retried after 24 hours, if enabled." msgstr "" "No hay suficiente espacio libre en la partición raíz para iniciar la " -"actualización de la distrbución. Por favor, asegure que al menos 5 GB y un " -"10% del espacio libre total están libres. Si está habilitada, la " -"actualización de la distribución se reintentará tras 24h ." +"actualización de la distribución. Por favor, asegure que hay al menos 5 GB " +"libres. Si está habilitada, la actualización de la distribución se " +"reintentará tras 24h ." #: plinth/modules/upgrades/__init__.py:223 msgid "Distribution update started" @@ -7954,6 +7950,15 @@ msgid "" "location using search, map and calendar views. Individual photos can be " "shared with others by sending a direct link." msgstr "" +"Zoph administra tu colección de fotografías. Las fotos se almacenan en tu " +"{box_name}, bajo tu control. En vez de centrarse en galerías para exposición " +"pública Zoph se centra en administrarlas para tu propio uso, organizándolas " +"por quién las tomó, dónde se tomaron y quién aparece en ellas. Las fotos se " +"pueden enlazar a múltiples álbumes y categorías jerárquicos. Es fácil " +"encontrar fotos en las que aparezca determinada persona , o tomadas un día " +"determinado, o en determinada ubicación empleando la búsqueda y las vistas " +"de mapa y calendario. Se pueden compartir fotos sueltas con otras personas " +"enviándoles un enlace directo." #: plinth/modules/zoph/__init__.py:44 #, python-brace-format @@ -7962,38 +7967,41 @@ msgid "" "Zoph. For additional users, accounts must be created both in {box_name} and " "in Zoph with the same user name." msgstr "" +"El usuario de {box_name} que instaló Zoph será el administrador en Zoph. " +"Para añadir más usuarios hay que crear cuentas con el mismo nombre tanto en " +"Zoph como en {box_name} ." #: plinth/modules/zoph/__init__.py:62 plinth/modules/zoph/manifest.py:6 msgid "Zoph" -msgstr "" +msgstr "Zoph" #: plinth/modules/zoph/__init__.py:63 msgid "Photo Organizer" -msgstr "" +msgstr "Organizador de fotografías" #: plinth/modules/zoph/forms.py:14 msgid "Enable OpenStreetMap for maps" -msgstr "" +msgstr "Habilitar mapas OpenStreetMap" #: plinth/modules/zoph/forms.py:15 msgid "" "When enabled, requests will be made to OpenStreetMap servers from user's " "browser. This impacts privacy." msgstr "" +"Si se habilita se harán peticiones a los servidores OpenStreetMap desde el " +"navegador del usuario. Esto impacta en la privacidad." #: plinth/modules/zoph/templates/zoph-pre-setup.html:15 #: plinth/modules/zoph/templates/zoph-pre-setup.html:28 -#, fuzzy -#| msgid "Start Setup" msgid "Setup" -msgstr "Iniciar configuración" +msgstr "Configurar" #: plinth/modules/zoph/templates/zoph-pre-setup.html:18 #, python-format msgid "" "User account %(username)s will become the administrator " "account for Zoph." -msgstr "" +msgstr "El usuario %(username)s será el administrador de Zoph." #: plinth/network.py:29 msgid "PPPoE" From 3dbbd1d642c8f59ce058ad13fa01592b0b502acf Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sat, 13 Mar 2021 11:55:23 -0500 Subject: [PATCH 13/22] doc: Fetch latest manual Signed-off-by: James Valleroy --- doc/manual/en/ReleaseNotes.raw.wiki | 12 ++++++++++++ doc/manual/es/ReleaseNotes.raw.wiki | 12 ++++++++++++ doc/manual/es/Zoph.raw.wiki | 2 +- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/doc/manual/en/ReleaseNotes.raw.wiki b/doc/manual/en/ReleaseNotes.raw.wiki index 704edeb9d..32b9ea125 100644 --- a/doc/manual/en/ReleaseNotes.raw.wiki +++ b/doc/manual/en/ReleaseNotes.raw.wiki @@ -10,6 +10,18 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 21.4.1 (2021-03-13) == + +=== Highlights === + + * deluge, mldonkey, syncthing, transmission: Ensure nslcd is running before the service is started + * deluge: Fix daemon user not in freedombox-share group after installation + +=== Other Changes === + + * config: Fix tests related to user home directory + * locale: Update translations for Dutch, German, Greek, Polish, Spanish, Swedish, Turkish + == FreedomBox 21.4 (2021-02-28) == === Highlights === diff --git a/doc/manual/es/ReleaseNotes.raw.wiki b/doc/manual/es/ReleaseNotes.raw.wiki index 704edeb9d..32b9ea125 100644 --- a/doc/manual/es/ReleaseNotes.raw.wiki +++ b/doc/manual/es/ReleaseNotes.raw.wiki @@ -10,6 +10,18 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 21.4.1 (2021-03-13) == + +=== Highlights === + + * deluge, mldonkey, syncthing, transmission: Ensure nslcd is running before the service is started + * deluge: Fix daemon user not in freedombox-share group after installation + +=== Other Changes === + + * config: Fix tests related to user home directory + * locale: Update translations for Dutch, German, Greek, Polish, Spanish, Swedish, Turkish + == FreedomBox 21.4 (2021-02-28) == === Highlights === diff --git a/doc/manual/es/Zoph.raw.wiki b/doc/manual/es/Zoph.raw.wiki index be354c20b..4def9aedd 100644 --- a/doc/manual/es/Zoph.raw.wiki +++ b/doc/manual/es/Zoph.raw.wiki @@ -29,7 +29,7 @@ Solo la primera ver se te pedirá introducir tu usuario y contraseña. Las sigui El menú de solapas se mostrará en la parte superior de cada página. Desde ahí puedes cargar fotos desde cualquier ordenador, administrar Zoph para añadir usuarios, etc. -Actualmente deberás ir primero a la pestaña "preferencias" para establecerlas porque el primer usuario creado automáticamente no las tiene. +Ahora puedes ir a la pestaña "preferencias" para establecerlas, p. ej. las cantidades de filas y columnas en los resultados, cuanta información mostrar acerca de la cámara con la que se tomó la foto, etc. {{attachment:FreedomBox/Manual/Zoph/zoph-prefs.png|Zoph User Preferences Screen|width=606}} From 80327ad792bd23f9fb2b5eb08c230364eec4360b Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sat, 13 Mar 2021 11:56:46 -0500 Subject: [PATCH 14/22] Release v21.4.1 to unstable Signed-off-by: James Valleroy --- debian/changelog | 35 +++++++++++++++++++++++++++++++++++ plinth/__init__.py | 2 +- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index a264abb1c..bc3e27d41 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,38 @@ +freedombox (21.4.1) unstable; urgency=medium + + [ Dietmar ] + * Translated using Weblate (German) + + [ Karol Werner ] + * Translated using Weblate (Polish) + + [ Michalis ] + * Translated using Weblate (Greek) + * Translated using Weblate (Greek) + + [ Fioddor Superconcentrado ] + * Generating developer documentation. + * config: Fix tests related to user home directory + * Translated using Weblate (Spanish) + + [ ikmaak ] + * Translated using Weblate (Dutch) + + [ Burak Yavuz ] + * Translated using Weblate (Turkish) + + [ Veiko Aasa ] + * deluge, mldonkey, syncthing, transmission: Depend on nslcd.service + * deluge: Fix daemon user not in freedombox-share group after installation + + [ Michael Breidenbach ] + * Translated using Weblate (Swedish) + + [ James Valleroy ] + * doc: Fetch latest manual + + -- James Valleroy Sat, 13 Mar 2021 11:55:40 -0500 + freedombox (21.4) unstable; urgency=medium [ Petter Reinholdtsen ] diff --git a/plinth/__init__.py b/plinth/__init__.py index 51cd7a79a..8564f8198 100644 --- a/plinth/__init__.py +++ b/plinth/__init__.py @@ -3,4 +3,4 @@ Package init file. """ -__version__ = '21.4' +__version__ = '21.4.1' From 93ce37808a5fde72eb315f0389204c2c67f84453 Mon Sep 17 00:00:00 2001 From: Burak Yavuz Date: Sun, 14 Mar 2021 07:58:31 +0000 Subject: [PATCH 15/22] Translated using Weblate (Turkish) Currently translated at 100.0% (1453 of 1453 strings) --- plinth/locale/tr/LC_MESSAGES/django.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po index 10d726774..b8ad395a4 100644 --- a/plinth/locale/tr/LC_MESSAGES/django.po +++ b/plinth/locale/tr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-03-05 18:50+0000\n" +"PO-Revision-Date: 2021-03-15 08:03+0000\n" "Last-Translator: Burak Yavuz \n" "Language-Team: Turkish \n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.5.1-dev\n" +"X-Generator: Weblate 4.5.2-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -6029,7 +6029,7 @@ msgstr "Shadowsocks" #: plinth/modules/shadowsocks/__init__.py:53 msgid "Socks5 Proxy" -msgstr "Socks5 Vekil Sunucu" +msgstr "Socks5 Vekil Sunucusu" #: plinth/modules/shadowsocks/forms.py:12 #: plinth/modules/shadowsocks/forms.py:13 @@ -6842,7 +6842,7 @@ msgstr "Tor Onion Hizmeti" #: plinth/modules/tor/__init__.py:71 msgid "Tor Socks Proxy" -msgstr "Tor Socks Vekil Sunucu" +msgstr "Tor Socks Vekil Sunucusu" #: plinth/modules/tor/__init__.py:75 msgid "Tor Bridge Relay" From 108760c39c4f20465250fd4bf25443eb49a540c5 Mon Sep 17 00:00:00 2001 From: nautilusx Date: Sat, 20 Mar 2021 22:35:31 +0000 Subject: [PATCH 16/22] Translated using Weblate (German) Currently translated at 100.0% (1453 of 1453 strings) --- plinth/locale/de/LC_MESSAGES/django.po | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po index b9284f4e8..82a04af1f 100644 --- a/plinth/locale/de/LC_MESSAGES/django.po +++ b/plinth/locale/de/LC_MESSAGES/django.po @@ -10,8 +10,8 @@ msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-11 17:23-0500\n" -"PO-Revision-Date: 2021-03-03 16:50+0000\n" -"Last-Translator: Dietmar \n" +"PO-Revision-Date: 2021-03-22 18:29+0000\n" +"Last-Translator: nautilusx \n" "Language-Team: German \n" "Language: de\n" @@ -19,7 +19,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5.1-dev\n" +"X-Generator: Weblate 4.5.2-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -3103,6 +3103,9 @@ msgid "" "Matrix Synapse needs a STUN/TURN server for audio/video calls. Install the " "Coturn app or configure an external server." msgstr "" +"Matrix Synapse benötigt einen STUN/TURN-Server für Audio-/Videoanrufe. " +"Installiere die Coturn-App oder konfiguriere " +"einen externen Server." #: plinth/modules/matrixsynapse/__init__.py:76 msgid "Matrix Synapse" @@ -3125,7 +3128,7 @@ msgstr "" #: plinth/modules/matrixsynapse/forms.py:21 msgid "Automatically manage audio/video call setup" -msgstr "" +msgstr "Automatischer Aufbau von Audio-/Videoanrufen" #: plinth/modules/matrixsynapse/forms.py:23 #, python-brace-format @@ -3134,24 +3137,27 @@ msgid "" "server for Matrix Synapse. Disable this if you want to use a different STUN/" "TURN server." msgstr "" +"Konfiguriert die lokale coturn-App als STUN/" +"TURN-Server für Matrix Synapse. Deaktiviere dies, wenn du einen anderen STUN/" +"TURN-Server verwenden möchtest." #: plinth/modules/matrixsynapse/forms.py:30 msgid "STUN/TURN Server URIs" -msgstr "" +msgstr "STUN/TURN Server URIs" #: plinth/modules/matrixsynapse/forms.py:32 msgid "List of public URIs of the STUN/TURN server, one on each line." -msgstr "" +msgstr "Liste der öffentlichen URIs des STUN/TURN-Servers, eine in jeder Zeile." #: plinth/modules/matrixsynapse/forms.py:36 -#, fuzzy -#| msgid "Authentication Mode" msgid "Shared Authentication Secret" -msgstr "Authentifizierungsmodus" +msgstr "Gemeinsames Authentifizierungsgeheimnis" #: plinth/modules/matrixsynapse/forms.py:37 msgid "Shared secret used to compute passwords for the TURN server." msgstr "" +"Gemeinsames Geheimnis, das zur Berechnung von Passwörtern für den TURN-" +"Server verwendet wird." #: plinth/modules/matrixsynapse/manifest.py:12 msgid "Element" From 5c76fe89ecab06290f8d1e27ef175fe9a69c561b Mon Sep 17 00:00:00 2001 From: Michalis Date: Sun, 21 Mar 2021 17:57:49 +0000 Subject: [PATCH 17/22] Translated using Weblate (Greek) Currently translated at 73.5% (1068 of 1453 strings) --- plinth/locale/el/LC_MESSAGES/django.po | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/plinth/locale/el/LC_MESSAGES/django.po b/plinth/locale/el/LC_MESSAGES/django.po index 8c9d1c390..8c3a1aced 100644 --- a/plinth/locale/el/LC_MESSAGES/django.po +++ b/plinth/locale/el/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-11 17:23-0500\n" -"PO-Revision-Date: 2021-03-08 13:16+0000\n" +"PO-Revision-Date: 2021-03-22 18:29+0000\n" "Last-Translator: Michalis \n" "Language-Team: Greek \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.5.1\n" +"X-Generator: Weblate 4.5.2-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -1401,7 +1401,7 @@ msgstr "" #: plinth/modules/coturn/__init__.py:57 msgid "Coturn" -msgstr "" +msgstr "Coturn" #: plinth/modules/coturn/__init__.py:58 msgid "VoIP Helper" @@ -2181,7 +2181,7 @@ msgstr "" #: plinth/modules/networks/templates/networks_configuration.html:22 #: plinth/modules/storage/templates/storage.html:93 msgid "Advanced" -msgstr "" +msgstr "Για προχωρημένους" #: plinth/modules/firewall/templates/firewall.html:104 msgid "" @@ -3846,7 +3846,7 @@ msgstr "Mumblefly" #: plinth/modules/mumble/manifest.py:43 msgid "Mumla" -msgstr "" +msgstr "Mumla" #: plinth/modules/mumble/views.py:39 msgid "SuperUser password successfully updated." @@ -4574,7 +4574,7 @@ msgstr "" #: plinth/modules/upgrades/templates/update-firstboot-progress.html:38 #: plinth/modules/upgrades/templates/update-firstboot.html:33 msgid "Next" -msgstr "" +msgstr "Επόμενο" #: plinth/modules/networks/templates/internet_connectivity_main.html:9 #, fuzzy @@ -4917,7 +4917,7 @@ msgstr "Ιnterface" #: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49 #: plinth/modules/wireguard/manifest.py:14 msgid "WireGuard" -msgstr "" +msgstr "WireGuard" #: plinth/modules/networks/views.py:110 #, fuzzy @@ -6208,7 +6208,7 @@ msgstr "" #: plinth/modules/sharing/__init__.py:39 msgid "Sharing" -msgstr "Sharing" +msgstr "Κοινή χρήση" #: plinth/modules/sharing/forms.py:18 msgid "Name of the share" @@ -7406,7 +7406,7 @@ msgstr "" #: plinth/modules/upgrades/templates/upgrades-new-release.html:22 #: plinth/templates/notifications.html:44 msgid "Dismiss" -msgstr "" +msgstr "Κλείσιμο" #: plinth/modules/upgrades/templates/upgrades_configure.html:30 #: plinth/modules/upgrades/templates/upgrades_configure.html:100 From 23757db9ecb22a531934166643627a79293760ca Mon Sep 17 00:00:00 2001 From: Reza Almanda Date: Tue, 23 Mar 2021 23:17:56 +0000 Subject: [PATCH 18/22] Translated using Weblate (Indonesian) Currently translated at 10.6% (155 of 1453 strings) --- plinth/locale/id/LC_MESSAGES/django.po | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/plinth/locale/id/LC_MESSAGES/django.po b/plinth/locale/id/LC_MESSAGES/django.po index 6727c0d86..83483e948 100644 --- a/plinth/locale/id/LC_MESSAGES/django.po +++ b/plinth/locale/id/LC_MESSAGES/django.po @@ -3,20 +3,20 @@ msgstr "" "Project-Id-Version: Indonesian (FreedomBox)\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2018-11-02 00:44+0000\n" -"Last-Translator: ButterflyOfFire \n" +"PO-Revision-Date: 2021-03-24 23:29+0000\n" +"Last-Translator: Reza Almanda \n" "Language-Team: Indonesian \n" +"freedombox/id/>\n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 3.3-dev\n" +"X-Generator: Weblate 4.5.2-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" -msgstr "" +msgstr "Sumber halaman" #: plinth/context_processors.py:23 plinth/views.py:78 msgid "FreedomBox" @@ -25,7 +25,7 @@ msgstr "FreedomBox" #: plinth/daemon.py:103 #, python-brace-format msgid "Service {service_name} is running" -msgstr "" +msgstr "Layanan {service_name} sedang berjalan" #: plinth/daemon.py:130 #, python-brace-format @@ -532,10 +532,8 @@ msgid "Remove Backup Location. This will not delete the remote backup." msgstr "" #: plinth/modules/backups/templates/backups_repository.html:83 -#, fuzzy -#| msgid "{box_name} Manual" msgid "Download" -msgstr "Panduan {box_name}" +msgstr "Unduh" #: plinth/modules/backups/templates/backups_repository.html:87 #: plinth/modules/backups/templates/backups_restore.html:27 From 7e599958fe2568c869ed16fcf8ccf7ed6b06d410 Mon Sep 17 00:00:00 2001 From: Kirill Schmidt Date: Fri, 26 Mar 2021 22:17:03 +0100 Subject: [PATCH 19/22] first_boot: Use session to verify first boot welcome step Closes: #2074 sunil's changes: - Ensure that secret is not asked for a second time after creating admin user and logging in (this happens due to discarding of old session and creating new one). - Ensure that this logic is not applied to user using FreedomBox images who are not required to input the first wizard secret. - Change the name of the session variable for readability. Tests performed: - Without the patch, start first boot wizard on the first browser on a FreedomBox image (or run the file `base64 < /dev/urandom | head -c 16 | sed -e 's+$+\n+' > /var/lib/plinth/firstboot-wizard-secret`). Finish the welcome step with first wizard secret. Then open a second browser or from another computer visit the web interface. The first wizard secret is not asked and user can create an admin account. - Repeat with fresh image again with the patch. To mimic fresh image, one may run `sudo rm -f /var/lib/plinth/plinth.sqlite3` and `echo "password" | | sudo /freedombox/actions/users remove-user tester`. This time when a different browser other than the one that provided the first wizard secret try to access the account creation page, a redirection will occur to welcome page. Providing the first wizard secret takes the user to account creation page. - Accessing network first wizard page or internal pages on second browser also takes one back to the welcome page. - Accessing help pages from second browser requires login. - Accessing account login page from second browser is allowed. After creating the account from first browser, second browser can login and continue the wizard. - Clearing cookies in the middle of the wizard takes the user back to welcome page. - Clear cookies in the middles of the wizard. Visit the wizard, go to first boot welcome page. Provide secret and the wizard will continue where it was left off. - Clear cookies in the middles of the wizard. Visit the wizard, go to first boot welcome page. Access login page, login as admin. Then first wizard secret is not asked. First wizard can be continued. - On a fresh image, simply complete the first wizard. No change to earlier flow is noticed. First wizard secret is only asked once at the beginning. - On a fresh image, remove the file /var/lib/plinth/firstboot-wizard-secret. First wizard can be completed without the secret. [sunil: improvements to original patch by Kirill Schmidt] Signed-off-by: Sunil Mohan Adapa Reviewed-by: Sunil Mohan Adapa Tested-by: Sunil Mohan Adapa --- plinth/modules/first_boot/middleware.py | 10 ++++++++++ plinth/modules/first_boot/views.py | 1 + 2 files changed, 11 insertions(+) diff --git a/plinth/modules/first_boot/middleware.py b/plinth/modules/first_boot/middleware.py index 23c696db2..9135bf62e 100644 --- a/plinth/modules/first_boot/middleware.py +++ b/plinth/modules/first_boot/middleware.py @@ -12,6 +12,7 @@ from django.urls import reverse from django.utils.deprecation import MiddlewareMixin from plinth.modules import first_boot +from plinth.utils import is_user_admin LOGGER = logging.getLogger(__name__) @@ -35,6 +36,15 @@ class FirstBootMiddleware(MiddlewareMixin): firstboot_completed = first_boot.is_completed() user_requests_firstboot = first_boot.is_firstboot_url(request.path) + # If user requests a step other than the welcome step, verify that they + # indeed completed the secret verification by looking at the session. + if (user_requests_firstboot and + not request.path.startswith(reverse('first_boot:welcome')) and + first_boot.firstboot_wizard_secret_exists() and + not request.session.get('firstboot_secret_provided', False) and + not is_user_admin(request)): + return HttpResponseRedirect(reverse('first_boot:welcome')) + # Redirect to first boot if requesting normal page and first # boot is not complete. if not firstboot_completed and not user_requests_firstboot: diff --git a/plinth/modules/first_boot/views.py b/plinth/modules/first_boot/views.py index 57c9238e7..542f23eb0 100644 --- a/plinth/modules/first_boot/views.py +++ b/plinth/modules/first_boot/views.py @@ -18,6 +18,7 @@ class WelcomeView(FormView): def form_valid(self, form): """If form is valid, mark this step as done and move to next step.""" + self.request.session['firstboot_secret_provided'] = True first_boot.mark_step_done('firstboot_welcome') return http.HttpResponseRedirect(reverse(first_boot.next_step())) From d10b22c6ad8864a48d618c641a0bd3b560df3322 Mon Sep 17 00:00:00 2001 From: Burak Yavuz Date: Sun, 28 Mar 2021 10:20:31 +0000 Subject: [PATCH 20/22] Translated using Weblate (Turkish) Currently translated at 100.0% (1453 of 1453 strings) --- plinth/locale/tr/LC_MESSAGES/django.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po index b8ad395a4..485ca8d6c 100644 --- a/plinth/locale/tr/LC_MESSAGES/django.po +++ b/plinth/locale/tr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-02-28 20:13-0500\n" -"PO-Revision-Date: 2021-03-15 08:03+0000\n" +"PO-Revision-Date: 2021-03-28 13:10+0000\n" "Last-Translator: Burak Yavuz \n" "Language-Team: Turkish \n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.5.2-dev\n" +"X-Generator: Weblate 4.6-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -5771,8 +5771,8 @@ msgid "" "Searx is a privacy-respecting Internet metasearch engine. It aggregrates and " "displays results from multiple search engines." msgstr "" -"Searx, gizliliğe saygılı bir İnternet üst arama motorudur. Birden çok arama " -"motorundan gelen sonuçları toplar ve görüntüler." +"Searx, gizliliğe saygılı bir İnternet üstbilgi arama motorudur. Birden çok " +"arama motorundan gelen sonuçları toplar ve görüntüler." #: plinth/modules/searx/__init__.py:27 msgid "" From 5c55610234245bb66abe42d02c18aa1b362378ef Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sun, 28 Mar 2021 10:54:23 -0400 Subject: [PATCH 21/22] doc: Fetch latest manual Signed-off-by: James Valleroy --- doc/manual/en/Contribute.raw.wiki | 139 ++++++++++++++++---------- doc/manual/en/MatrixSynapse.raw.wiki | 14 ++- doc/manual/en/ReleaseNotes.raw.wiki | 11 +++ doc/manual/en/Rock64.raw.wiki | 2 +- doc/manual/es/Contribute.raw.wiki | 142 +++++++++++++++++---------- doc/manual/es/MatrixSynapse.raw.wiki | 14 ++- doc/manual/es/ReleaseNotes.raw.wiki | 11 +++ doc/manual/es/Rock64.raw.wiki | 2 +- 8 files changed, 223 insertions(+), 112 deletions(-) diff --git a/doc/manual/en/Contribute.raw.wiki b/doc/manual/en/Contribute.raw.wiki index c74c674cc..9098b0465 100644 --- a/doc/manual/en/Contribute.raw.wiki +++ b/doc/manual/en/Contribute.raw.wiki @@ -24,34 +24,106 @@ From code, design and translation to spreading the word and donation, here are a As a new contributor, you are more than welcome to introduce yourself to others on the !FreedomBox [[https://discuss.freedombox.org/c/development|discussion forum]], [[http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss|mailing list]] or on the [[irc://irc.debian.org/freedombox|#freedombox IRC]] channel. In addition to make useful contacts, you can start reporting bugs and translate (see below) the wiki website and the !FreedomBox web interface. -== Development priorities == -Upcoming priorities are discussed on an regular basis. You find the progress of the !FreedomBox Service with its priorities here: [[https://salsa.debian.org/groups/freedombox-team/-/boards|issues board]] and [[https://salsa.debian.org/groups/freedombox-team/-/milestones|milestones]]. += Contributions needed = -Please check next [[FreedomBox/ProgressCalls|progress calls]] to keep yourself on track and meet members of the release team. A [[FreedomBox/TODO|TODO page]] aggregates the complete list of the items to work on for !FreedomBox. +Sorted by ascending difficulty -== Contributions needed == +== Donate == -=== Add an Application === +Obviously, donating is the easiest way to contribute. -If you are a developer and wish to see an application available in !FreedomBox, you can contribute by adding the application to !FreedomBox. See the [[https://docs.freedombox.org/|FreedomBox Developer Manual]]. Many applications that can be added to !FreedomBox have been identified on the [[FreedomBox/LeavingTheCloud|leaving the cloud]] page. +You can help the project financially by donating via !PayPal, Bitcoin or by mailing a check. Please see the [[https://www.freedomboxfoundation.org/donate/|donation page]] for details on how to donate. -=== Bugs === +!FreedomBox project is run by volunteers. The [[https://freedomboxfoundation.org|FreedomBox Foundation]] is a 501(c)(3) federal nonprofit corporation with recognition from the IRS. -List of bugs, feature requests and improvements are tracked on the !FreedomBox [[https://salsa.debian.org/freedombox-team/freedombox/issues/|issue tracker]]. In addition to that, see [[FreedomBox/Contribute/Bugs|list of bugs]] to help out the Debian package we depend on. Also see the !FreedomBox [[https://qa.debian.org/developer.php?login=freedombox-pkg-team%40lists.alioth.debian.org&comaint=yes|packaging team's dashboard]] for status of various packages that we use. -=== Code === +== Spread the Word == + +Spreading the word about !FreedomBox only requires to know about the basic goals of the project and an overall description of the product. + +Speak to your family, friends, local community or at global conferences about the importance of !FreedomBox. To be a successful project we need much more awareness and many more participants, be it users or contributors. Write about your efforts on the [[FreedomBox/TalksAndPresentations|wiki]]. + +If you are into marketing, you can get in touch with the marketing team through the [[https://discuss.freedombox.org/c/community/marketing/14|marketing section of our forum]]. + + +== Feed Us Back (Comment) == + +After some time, we lose the fresh view of newcomers. Just providing your feedback helps us a lot. + +Browse our websites and documentation and play with !FreedomBox and comment your impressions on the [[https://discuss.freedombox.org/c/feedback/2|feedback section of our forum]]. + + +== Request applications == + +Check our [[https://wiki.debian.org/FreedomBox/LeavingTheCloud|applications wishlist]] and help us extend it by searching the web for other interesting free software to include in !FreedomBox. + + +== Translate == + +All text visible to users of !FreedomBox needs to be localized to various languages. If you know english and speak another language you can contribute translating. Translating is a nice way to get familiar with the project while contributing. + +This translation work includes: + + * [[FreedomBox/Plinth|Web Interface]] of !FreedomBox + * !FreedomBox documentation, including the !FreedomBox [[FreedomBox|wiki]] + * !FreedomBox [[https://freedombox.org|website]] and [[https://freedomboxfoundation.org|foundation website]]. + * [[https://docs.djangoproject.com/en/dev/internals/contributing/localizing/|Django web framework]] that !FreedomBox uses. + * Individual [[https://wiki.debian.org/FreedomBox/Manual/#Apps|applications]] that !FreedomBox exposes to users. + +The localization of !FreedomBox web interface happens mainly on the web-based tool at [[https://hosted.weblate.org/projects/freedombox/|Weblate]]. + +If you wish to see !FreedomBox available for one of your languages, please start a discussion on the !FreedomBox discussion forum's [[https://discuss.freedombox.org/c/development|development category]] to work with others translating for that language. + +For more information, please visit the !FreedomBox [[FreedomBox/Translate|translators]] page. + + +== Document: User Manual, Website and Wiki == + +!FreedomBox needs better documentation for users and contributors. Sometimes, just rewording or presenting the information another way, already helps. Others, a certain knowledge is needed. + +!FreedomBox manual is prepared by aggregating various pages on the wiki and exporting to various formats. The manual is then used in !FreedomBox Service and elsewhere. + +If you wish to contribute to the !FreedomBox [[FreedomBox|wiki]] (and consequently the !FreedomBox manual), you can create a wiki account and start editing. + +For contributing to the website please start a discussion on the !FreedomBox discussion forum's [[https://discuss.freedombox.org/c/development|development category]]. + + +== Assure Quality (Test and Check) == + + * !FreedomBox already runs on many platforms and it is not possible for developers to test all possible platforms. If you have one of the supported hardware you can help with testing !FreedomBox on the platform. + + * When an application is made available on !FreedomBox, not all of its functionality is tested in the real world by developer doing the work. Deploying the application and testing it will help ensure high quality applications in !FreedomBox. + +See the [[FreedomBox/QualityAssurance|quality assurance]] page for a basic list of test cases to check for and information on reporting bugs. + + +== Code == If you are a developer, you can contribute code to one of the sub-projects of !FreedomBox. Step-by-step process of [[/Code|contributing code]] to !FreedomBox is available. * [[FreedomBox/Plinth|FreedomBox Service]]: a web interface to administer the functions of !FreedomBox. * [[FreedomBox/Maker|Freedom Maker]]: a script to build !FreedomBox disk images for use on various hardware devices or virtual machines. -You can pickup a task from one of the [[FreedomBox/TODO|TODO]] lists. The individual page project pages contain information availabily of the code, how to build and TODO lists. +You can pick up a task from one of the [[FreedomBox/TODO|TODO]] lists. The individual page project pages contain information availabily of the code, how to build and TODO lists. -=== Design === +=== Fix Bugs === -==== User Experience Design ==== +List of bugs, feature requests and improvements are tracked on the !FreedomBox [[https://salsa.debian.org/freedombox-team/freedombox/issues/|issue tracker]]. In addition to that, see [[FreedomBox/Contribute/Bugs|list of bugs]] to help out the Debian package we depend on. Also see the !FreedomBox [[https://qa.debian.org/developer.php?login=freedombox-pkg-team%40lists.alioth.debian.org&comaint=yes|packaging team's dashboard]] for status of various packages that we use. + +=== Add an Application === + +If you are a developer and wish to see an application available in !FreedomBox, you can contribute by adding the application to !FreedomBox. See the [[https://docs.freedombox.org/|FreedomBox Developer Manual]]. Many applications that can be added to !FreedomBox have been identified on the [[FreedomBox/LeavingTheCloud|leaving the cloud]] page. + +=== Development priorities === + +Upcoming priorities are discussed on an regular basis. You find the progress of the !FreedomBox Service with its priorities here: [[https://salsa.debian.org/groups/freedombox-team/-/boards|issues board]] and [[https://salsa.debian.org/groups/freedombox-team/-/milestones|milestones]]. + +Please check next [[FreedomBox/ProgressCalls|progress calls]] to keep yourself on track and meet members of the release team. A [[FreedomBox/TODO|TODO page]] aggregates the complete list of the items to work on for !FreedomBox. + +== Design == + +=== User Experience Design === If you are a user experience designer, you can help !FreedomBox with the following items: @@ -61,51 +133,16 @@ If you are a user experience designer, you can help !FreedomBox with the followi * Possible designs for custom !FreedomBox cases on single board computers * [[../Design|User experience design]] -==== Technical Design ==== +=== Technical Design === -!FreedomBox needs your technical expertise to devise implementation plans for upcoming features. You can contribute to the discussion on various technical design and implementation aspects of !FreedomBox. See !FreedomBox discussion forum's [[https://discuss.freedombox.org/c/development|development category]]. +!FreedomBox needs your technical expertise to devise implementation plans for upcoming features. You can contribute to the discussion on various technical design and implementation aspects of !FreedomBox. See !FreedomBox discussion forum's [[https://discuss.freedombox.org/c/development|development category]]. -=== Donate === -The [[https://freedomboxfoundation.org|FreedomBox Foundation]] is a 501(c)(3) federal nonprofit corporation with recognition from the IRS. !FreedomBox project is run by volunteers. You can help the project financially by donating via !PayPal, Bitcoin or by mailing a check. Please see the [[https://www.freedomboxfoundation.org/donate/|donation page]] for details on how to donate. +== Package Applications == -=== Document: User Manual, Website and Wiki === +!FreedomBox is a Debian Pure Blend. In order to add applications to !FreedomBox we need applications first to be Debian-packaged. Check our [[https://wiki.debian.org/FreedomBox/LeavingTheCloud|applications wishlist]]. -!FreedomBox needs better documentation for users and contributors. !FreedomBox manual is prepared by aggregating various pages on the wiki and exporting to various formats. The manual is then used in !FreedomBox Service and elsewhere. -If you wish to contribute to the !FreedomBox [[FreedomBox|wiki]] (and consequently the !FreedomBox manual), you can create a wiki account and start editing. - -For contributing to the website please start a discussion on the !FreedomBox discussion forum's [[https://discuss.freedombox.org/c/development|development category]]. - -=== Quality Assurance === - - * !FreedomBox already runs on many platforms and it is not possible for developers to test all possible platforms. If you have one of the supported hardware you can help with testing !FreedomBox on the platform. - - * When an application is made available on !FreedomBox, not all of its functionality is tested in the real world by developer doing the work. Deploying the application and testing it will help ensure high quality applications in !FreedomBox. - -See the [[FreedomBox/QualityAssurance|quality assurance]] page for a basic list of test cases to check for and information on reporting bugs. - -=== Localization === - -All text visible to users of !FreedomBox needs to be localized to various languages. This translation work includes: - - * [[FreedomBox/Plinth|Web Interface]] for !FreedomBox - * !FreedomBox documentation - * !FreedomBox [[FreedomBox|wiki]], [[https://freedombox.org|website]] and [[https://freedomboxfoundation.org|foundation website]]. - * [[https://docs.djangoproject.com/en/dev/internals/contributing/localizing/|Django web framework]] that !FreedomBox uses. - * Individual applications that !FreedomBox exposes to users. - -You can contribute to the localization effort using the web-based tool at [[https://hosted.weblate.org/projects/freedombox/|Weblate]] or directly to the source tree via [[https://salsa.debian.org/freedombox-team/freedombox/tree/master/plinth/locale|Salsa]]. - -If you wish to see !FreedomBox available for one of your languages, please start a discussion on the !FreedomBox discussion forum's [[https://discuss.freedombox.org/c/development|development category]] to work with others translating for that language. - -For more information, please visit the !FreedomBox [[FreedomBox/Translate|translators]] page. - -=== Spread the Word === - -Speak to your family, friends, local community or at global conferences about -the importance of !FreedomBox. To be a successful project we need many more -participants, be it users or contributors. Write about your efforts at the [[https://www.freedomboxfoundation.org/appearances/index.en.html|talks page]] and on the [[FreedomBox/TalksAndPresentations|wiki]]. ## END_INCLUDE diff --git a/doc/manual/en/MatrixSynapse.raw.wiki b/doc/manual/en/MatrixSynapse.raw.wiki index 29b61a7f6..133a7303a 100644 --- a/doc/manual/en/MatrixSynapse.raw.wiki +++ b/doc/manual/en/MatrixSynapse.raw.wiki @@ -14,8 +14,8 @@ '''Available since''': version 0.14.0 === What is Matrix? === -[[https://matrix.org/|Matrix]] is an open standard for interoperable, decentralized, real-time communication over IP. Synapse is the reference implementation of a Matrix server. It can be used to setup instant messaging on !FreedomBox to host large chat rooms, end-to-end encrypted communication and audio/video calls. -Matrix Synapse is a federated application where chat rooms can exist on any server and users from any server in the federated network can join them. [[https://matrix.org/docs/guides/faq.html|Learn more]] about Matrix. +[[https://matrix.org/|Matrix]] is an open protocol for interoperable, decentralized, real-time communication over IP. Synapse is the reference implementation of a Matrix server. It can be used to setup instant messaging on !FreedomBox to host chat rooms with end-to-end encrypted communication and audio/video calls. +Matrix Synapse is a federated application where chat rooms can exist on any server and users from any server in the federated network can join them. [[https://matrix.org/docs/guides/faq.html|Learn more]] about Matrix. === How to access your Matrix Synapse server? === @@ -28,13 +28,19 @@ If your !FreedomBox is behind a router, you will need to set up port forwarding === Setting up Matrix Synapse on your FreedomBox === -To enable Matrix, first navigate to the Chat Server (Matrix Synapse) page and install it. Matrix needs a valid domain name to be configured. After installation, you will be asked to configure it. You will be able to select a domain from a drop down menu of available domains. Domains are configured using [[FreedomBox/Manual/Configure|System -> Configure page]]. After configuring a domain, you will see that the service is running. The service will be accessible on the configured !FreedomBox domain. Currently, you will not be able to change the domain once is it configured. +To enable Matrix Synapse, first navigate to the Chat Server (Matrix Synapse) page and install it. Matrix needs a valid domain name to be configured. After installation, you will be asked to configure it. You will be able to select a domain from a drop down menu of available domains. Domains are configured using [[FreedomBox/Manual/Configure|System -> Configure]] page. After configuring a domain, you will see that the service is running. The service will be accessible on the configured !FreedomBox domain. Currently, you will not be able to change the domain once is it configured. Your router has to be configured to forward port 8448. All the registered users of your !FreedomBox will have their Matrix IDs as `@username:domain`. If public registration is enabled, also your chosen client can be used to register a user account. -If your !FreedomBox is behind a router (NAT) you might need [[FreedomBox/Manual/Coturn|Coturn]] for Voice over IP calls. +=== Setting up Audio/Video calls === + +The Matrix Synapse server is only responsible for establishing calls between participants in rooms. Matrix clients such as Element are actually responsible for the transfer of the audio/video traffic. Element supports calling in both one-to-one conversations and in groups. + +For one-to-one conversations, Element tries to make a peer-to-peer connection between the two participants. This works when both the participants are using Element on computers with a public IP address or if they're on the same network. If both the participants are behind different NAT devices, establishing a direct peer-to-peer connection between them will not be possible. This problem can be solved by configuring Matrix Synapse with a STUN/TURN server. !FreedomBox provides an app called [[FreedomBox/Manual/Coturn|Coturn]] for this purpose. !FreedomBox doesn't automatically install Coturn on installing Matrix Synapse. However, as soon as Coturn app is installed, !FreedomBox automatically configures Matrix Synapse to use it for audio/video calls. It is possible to override this configuration with a different STUN/TURN server in the web interface. + +For calling groups with more than two participants (i.e. not one-on-one conversations), Element uses an external Jitsi Meet instance. Element uses jitsi.riot.im as its default Jitsi Meet instance. If the Matrix Synapse server is configured to use a different Jitsi Meet instance as the default, Element will use it instead for all users on that server. === Federating with other Matrix instances === diff --git a/doc/manual/en/ReleaseNotes.raw.wiki b/doc/manual/en/ReleaseNotes.raw.wiki index 32b9ea125..bdc0283c5 100644 --- a/doc/manual/en/ReleaseNotes.raw.wiki +++ b/doc/manual/en/ReleaseNotes.raw.wiki @@ -10,6 +10,17 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 21.4.2 (2021-03-28) == + +=== Highlights === + + * firstboot: Use session to verify first boot welcome step + +=== Other Changes === + + * locale: Update translations for German, Greek, Indonesian, Turkish + * manual: Update Contributing and Matrix Synapse pages + == FreedomBox 21.4.1 (2021-03-13) == === Highlights === diff --git a/doc/manual/en/Rock64.raw.wiki b/doc/manual/en/Rock64.raw.wiki index 0eef1c1ae..1a89362b6 100644 --- a/doc/manual/en/Rock64.raw.wiki +++ b/doc/manual/en/Rock64.raw.wiki @@ -24,7 +24,7 @@ An alternative to downloading these images is to [[InstallingDebianOn|install De === Hardware === * Open Source Hardware (OSHW): No - * CPU: Rockchip RK3328 Quad-Core SOC (4x Cortex A53@1.5Ghz) + * CPU: Rockchip RK3328 Quad-Core SOC (4x Cortex A53 @ 1.5Ghz) * GPU: Mali 450MP2 * RAM: 1 GiB or 2 GiB or 4 GiB LPDDR3 * Storage: eMMC module slot, microSD slot, 16 MiB SPI Flash diff --git a/doc/manual/es/Contribute.raw.wiki b/doc/manual/es/Contribute.raw.wiki index 516ce1fdb..7b76838f2 100644 --- a/doc/manual/es/Contribute.raw.wiki +++ b/doc/manual/es/Contribute.raw.wiki @@ -23,23 +23,83 @@ Desde la codificación, el diseño y la traducción hasta la divulgación y las Como nuevo contribuyente, eres más que bienvenido a presentarte a otros en el [[https://discuss.freedombox.org/c/development|foro de debate]], la [[http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss|lista de correo]] o el [[irc://irc.debian.org/freedombox|canal de IRC]] de !FreedomBox. Además de hacer contactos útiles, puedes empezar a informar fallos y traducir (ver abajo) el wiki y el interfaz de !FreedomBox. -== Prioridades de Desarrollo == -Las prioridades se discuten regularmente. Encontrarás el avance del Servicio !FreedomBox con sus prioridades aquí: [[https://salsa.debian.org/groups/freedombox-team/-/boards|panel de tareas]] e [[https://salsa.debian.org/groups/freedombox-team/-/milestones|hitos]]. -Por favor, asiste a las próximas [[FreedomBox/ProgressCalls|reuniones de avance]] para mantenerte al día y tratar con los miembros del equipo de publicación (release). La [[FreedomBox/TODO|Página de trabajos pendientes]] recopila la lista completa de los elementos en los que trabajar para !FreedomBox. += Se necesitan contribuciones = -== Se necesitan Contribuciones == +Ordenadas por dificultad ascencente. -=== Añadir una Aplicación === +== Donar == -Si eres desarrollador y quieres ver disponible en !FreedomBox alguna aplicación, puedes contribuir añadiéndola a !FreedomBox. Mira el [[https://docs.freedombox.org/|Manual del Desarrollador de FreedomBox]]. +Obviamente donar es la manera más fácil de contribuir. -=== Defectos === +Puedes ayudar a su financiación donando mediante !PayPal, Bitcoin o enviando un cheque. Mira por favor la [[https://www.freedomboxfoundation.org/donate/|página de donación]] para más detalles acerca de cómo donar. -Las listas de defectos, peticiones de funcionalidad y mejoras se controlan en el [[https://salsa.debian.org/freedombox-team/freedombox/issues/|gestor de tiquets]] de !FreedomBox. Mira también la [[FreedomBox/Contribute/Bugs|lista de defectos]] para ayudar al paquete Debian del que dependemos y el [[https://qa.debian.org/developer.php?login=freedombox-pkg-team%40lists.alioth.debian.org&comaint=yes|cuadro de mando del equipo de paquetizado]] de !FreedomBox para ver el estado los paquetes que usamos. +El proyecto !FreedomBox lo llevan voluntarios. La ''[[https://freedomboxfoundation.org|FreedomBox Foundation]]'' es una corporación federal 501(c)(3) reconocida por el IRS. -=== Codificar === + +== Correr la voz == + +Correr la voz acerca de !FreedomBox solo requiere saber acerca de los objetivos básicos del proyecto y una descripción general del producto. + +Cuenta a tu familia, amistades, comunidad local o en conferencias globales la importancia de !FreedomBox. Para ser un proyecto exitoso necesitamos muchos más +participantes, ya sean usuarios o contribuyentes. Comenta tus esfuerzos de divulgación en la [[https://www.freedomboxfoundation.org/appearances/index.en.html|página de charlas]] y en el [[FreedomBox/TalksAndPresentations|wiki]]. + +Si sabes algo de márketing, puedes ponerte en contacto con el equipo de marketing mediante la [[https://discuss.freedombox.org/c/community/marketing/14|sección de ''Marketing'' de nuestro foro]]. + + +== Darnos tus impresiones (Comentar) == + +Tras cierto tiempo perdemos la visión fresca de quienes acaban de llegar. Solo con hacernos llegar tus impresiones ya nos ayudas un montón. + +Navega por nuestros sitios web y por la documentación, y juega con !FreedomBox y comenta tus impresiones en la [[https://discuss.freedombox.org/c/feedback/2|sección de ''Feedback'' de nuestro foro]]. + + +== Pedir aplicaciones == + +Mira nuestra [[https://wiki.debian.org/FreedomBox/LeavingTheCloud|lista de aplicaciones deseadas]] y ayúdanos a extenderla buscando en la web otras aplicaciones de software libre para incluír en !FreedomBox. + + +== Traducir == + +Todo texto visible por los usuarios de !FreedomBox necesita ser localizado a varios idiomas. Si entiendes inglés y escribes otro idioma puedes contribuír traduciendo. Traducir es una forma estupenda de familiarizarse con el proyecto mientras contribuyes. + +Este trabajo de traducción incluye: + + * El [[FreedomBox/Plinth|Interfaz web]] de !FreedomBox. + * La documentación de !FreedomBox, incluyendo el [[es/FreedomBox|wiki]]. + * Los sitios web de [[https://freedombox.org|FreedomBox]] y la ''[[https://freedomboxfoundation.org|Freedombox Foundation]]''. + * El [[https://docs.djangoproject.com/en/dev/internals/contributing/localizing/|framework Django]] que emplea !FreedomBox. + * Cada [[es/FreedomBox/Manual#Apps|aplicación]] que !FreedomBox expone a sus usuarios. + +La localización del interfaz web de !FreedomBox ocurre principalmente en la herramienta web [[https://hosted.weblate.org/projects/freedombox/|Weblate]]. + +Si quieres ver a !FreedomBox disponible en alguno de tus idiomas, por favor abre un debate en la [[https://discuss.freedombox.org/c/development|sección de desarrollo]] del foro de !FreedomBox para trabajar con otros traduciendo para ese idioma. + +Para más información, por favor visita la página de [[FreedomBox/Translate|traductores]]. + + +== Documentar: Manual de Usuario, Sitio Web y Wiki == + +!FreedomBox necesita mejor documentación para usuarios y contribuyentes. A veces re-redactar o presentar la información de otra manera ya ayuda. Otras se necesita cierto conocimiento. + +El manual de !FreedomBox se prepara agregando diferentes páginas del wiki y exportando a various formatos. El manual se usa en el Servicio !FreedomBox y en otros sitios. + +Si quieres contribuir al [[es/FreedomBox|wiki]] (y por extensión al manual) de !FreedomBox, puedes crear una cuenta en el wiki y empezar a editar. + +Para contribuir al sitio web por favor inicia un debate en la [[https://discuss.freedombox.org/c/development|sección de desarrollo]] del foro de !FreedomBox. + + +== Asegurar la calidad (probar y comprobar) == + + * !FreedomBox ya funciona sobre muchas plataformas y a los desarrolladores les resulta imposible probar en todas. Si tienes algún hardware soportado puedes ayudar probando !FreedomBox en tu platforma. + + * Cuando se integra una nueva aplicación en !FreedomBox, el desarrollador que hace el trabajo no prueba toda la functionalidad en el mundo real. Desplegar la aplicación y probarla ayudará a tener aplicaciones de alta calidad en !FreedomBox. + +Mira en la página de [[FreedomBox/QualityAssurance|aseguramiento de la calidad]] la lista de casos de prueba que hay que verificar y la información acerca de cómo informar defectos. + + +== Codificar == Si eres desarrollador puedes contribuir código a algún sub-proyecto de !FreedomBox. Éste es el procedimiento paso a paso para [[FreedomBox/Contribute/Code|contribuir código]]. @@ -48,9 +108,24 @@ Si eres desarrollador puedes contribuir código a algún sub-proyecto de !Freedo Puedes tomar una tarea de la [[FreedomBox/TODO|Página de trabajos pendientes]]. Las páginas de cada proyecto contienen información acerca de acceso al código, cómo construir y listas de trabajos pendientes. -=== Diseño === +=== Arreglar defectos === -==== Diseño de Experiencia de Usuario (UX) ==== +Las listas de defectos, peticiones de funcionalidad y mejoras se controlan en el [[https://salsa.debian.org/freedombox-team/freedombox/issues/|gestor de tiquets]] de !FreedomBox. Mira también la [[FreedomBox/Contribute/Bugs|lista de defectos]] para ayudar al paquete Debian del que dependemos y el [[https://qa.debian.org/developer.php?login=freedombox-pkg-team%40lists.alioth.debian.org&comaint=yes|cuadro de mando del equipo de paquetizado]] de !FreedomBox para ver el estado los paquetes que usamos. + +=== Añadir una aplicación === + +Si eres desarrollador y quieres ver disponible en !FreedomBox alguna aplicación, puedes contribuir añadiéndola a !FreedomBox. Mira el [[https://docs.freedombox.org/|Manual del Desarrollador de FreedomBox]]. + +=== Prioridades de desarrollo === + +Las prioridades se discuten regularmente. Encontrarás el avance del Servicio !FreedomBox con sus prioridades aquí: [[https://salsa.debian.org/groups/freedombox-team/-/boards|panel de tareas]] e [[https://salsa.debian.org/groups/freedombox-team/-/milestones|hitos]]. + +Por favor, asiste a las próximas [[FreedomBox/ProgressCalls|reuniones de avance]] para mantenerte al día y tratar con los miembros del equipo de publicación (release). La [[FreedomBox/TODO|Página de trabajos pendientes]] recopila la lista completa de los elementos en los que trabajar para !FreedomBox. + + +== Diseño == + +=== Diseño de Experiencia de Usuario (UX) === Si eres diseñador de UX, puedes ayudar a !FreedomBox con esto: @@ -60,51 +135,16 @@ Si eres diseñador de UX, puedes ayudar a !FreedomBox con esto: * Propuestas de diseño para casos de uso de !FreedomBox sobre SBCs personalizados. * [[FreedomBox/Design|Diseño de UX]] -==== Diseño Técnico ==== +=== Diseño Técnico === -!FreedomBox necesita tu conocimiento técnico para elaborar planes de implementación de nuevas funcionalidades. Puedes contribuir a los debates acerca de varios aspectos de diseño técnico e implementación de !FreedomBox. Mira la [[https://discuss.freedombox.org/c/development|sección de desarrollo]] de los foros de discusión. +!FreedomBox necesita tu conocimiento técnico para elaborar planes de implementación de nuevas funcionalidades. Puedes contribuir a los debates acerca de varios aspectos de diseño técnico e implementación de !FreedomBox. Mira la [[https://discuss.freedombox.org/c/development|sección de Desarrollo]] de los foros de debate. -=== Donar === -La ''[[https://freedomboxfoundation.org|FreedomBox Foundation]]'' es una corporación federal 501(c)(3) reconocida por el IRS. El proyecto !FreedomBox lo llevan voluntarios. Puedes ayudar a su financiación donando mediante !PayPal, Bitcoin o enviando un cheque. Mira por favor la [[https://www.freedomboxfoundation.org/donate/|página de donación]] para más detalles acerca de cómo donar. +== Empaquetar aplicaciones == -=== Documentar: Manual de Usuario, Sitio Web y Wiki === - -!FreedomBox necesita mejor documentación para usuarios y contribuyentes. El manual de !FreedomBox se prepara agregando diferentes páginas del wiki y exportando a various formatos. El manual se usa en el Servicio !FreedomBox y en otros sitios. - -Si quieres contribuir al [[FreedomBox|wiki]] (y por extensión al manual) de !FreedomBox, puedes crear una cuenta en el wiki y empezar a editar. - -Para contribuir al sitio web por favor inicia un debate en la [[https://discuss.freedombox.org/c/development|sección de desarrollo]] del foro de !FreedomBox. - -=== Asegurar la Calidad === - - * !FreedomBox ya funciona sobre muchas plataformas y a los desarrolladores les resulta imposible probar en todas. Si tienes algún hardware soportado puedes ayudar probando !FreedomBox en tu platforma. - - * Cuando se integra una nueva aplicación en !FreedomBox, el desarrollador que hace el trabajo no prueba toda la functionalidad en el mundo real. Desplegar la aplicación y probarla ayudará a tener aplicaciones de alta calidad en !FreedomBox. - -Mira en la página de [[FreedomBox/QualityAssurance|aseguramiento de la calidad]] la lista de casos de prueba que hay que verificar y la información acerca de cómo informar defectos. - -=== Localizar (l10n) === - -Todo texto visible por los usuarios de !FreedomBox necesita ser localizado a varios idiomas. Este trabajo de traducción incluye: - - * El [[FreedomBox/Plinth|Interfaz web]] de !FreedomBox - * La documentación de !FreedomBox - * El [[FreedomBox|wiki]] y los sitios web de [[https://freedombox.org|FreedomBox]] y la ''[[https://freedomboxfoundation.org|Freedombox Foundation]]''. - * El [[https://docs.djangoproject.com/en/dev/internals/contributing/localizing/|framework Django]] que emplea !FreedomBox. - * Cada aplicación que !FreedomBox expone a sus usuarios. - -Puedes contribuir al esfuerzo de localización usando la herramienta web [[https://hosted.weblate.org/projects/freedombox/|Weblate]] o directamente en el repositorio de código mediante [[https://salsa.debian.org/freedombox-team/freedombox/tree/master/plinth/locale|Salsa]]. - -Si quieres ver a !FreedomBox disponible en alguno de tus idiomas, por favor abre un debate en la [[https://discuss.freedombox.org/c/development|sección de desarrollo]] del foro de !FreedomBox para trabajar con otros traduciendo para ese idioma. - -Para más información, por favor visita la página de [[FreedomBox/Translate|traductores]]. - -=== Correr la Voz === - -Cuenta a tu familia, amistades, comunidad local o en conferencias globales la importancia de !FreedomBox. Para ser un proyecto exitoso necesitamos muchos más -participantes, ya sean usuarios o contribuyentes. Comenta tus esfuerzos de divulgación en la [[https://www.freedomboxfoundation.org/appearances/index.en.html|página de charlas]] y en el [[FreedomBox/TalksAndPresentations|wiki]]. +!FreedomBox es una ''variante pura'' de Debian. Para añadir aplicaciones a !FreedomBox necesitames primero que estén empaquetadas para Debian. Mira nuestra [[https://wiki.debian.org/FreedomBox/LeavingTheCloud|lista de aplicaciones deseadas]]. + ## END_INCLUDE <> diff --git a/doc/manual/es/MatrixSynapse.raw.wiki b/doc/manual/es/MatrixSynapse.raw.wiki index b70b01297..ef9fbb744 100644 --- a/doc/manual/es/MatrixSynapse.raw.wiki +++ b/doc/manual/es/MatrixSynapse.raw.wiki @@ -12,8 +12,8 @@ '''Disponible desde:''' versión 0.14.0 === ¿Qué es Matrix? === -[[https://matrix.org/|Matrix]] es un estándar abierto para comunicaciones sobre IP en tiempo real interoperables y descentralizadas. ''Synapse'' es la implementación de referencia de un servidor Matrix. Se puede usar para montar mensajería instantánea sobre !FreedomBox para albergar grandes salones de chat, comunicaciones cifradas punto a punto y llamadas de audio/vídeo. -Matrix Synapse es una aplicación federada en la que puede haber salas de chat en un servidor y los usuarios de cualquier otro servidor de la red federada pueden unirse a ellas. [[https://matrix.org/docs/guides/faq.html|Más información]] acerca de Matrix. +[[https://matrix.org/|Matrix]] es un protocolo abierto para comunicaciones sobre IP en tiempo real interoperables y descentralizadas. ''Synapse'' es la implementación de referencia de un servidor Matrix. Se puede usar para montar mensajería instantánea sobre !FreedomBox para albergar salas de chat con comunicaciones cifradas punto a punto y llamadas de audio/vídeo. +Matrix Synapse es una aplicación federada en la que puede haber salas de chat en un servidor y los usuarios de cualquier otro servidor de la red federada pueden unirse a ellas. [[https://matrix.org/docs/guides/faq.html|Más información]] acerca de Matrix. === ¿Cómo acceder a tu servidor Matrix Synapse? === @@ -21,13 +21,19 @@ Para acceder al servidor Matrix Synapse recomendamos el cliente [[https://elemen === Configurar Matrix Synapse en tu FreedomBox === -Para habilitar Matrix, primero navega a la página de tu servidor de chat (Matrix Synapse) e instálalo. Matrix necesita un nombre de dominio válido configurado. Tras la instalación, se te pedirá que lo configures seleccionandolo de entre un menú desplegable con dominios disponibles. Los dominios se configuran en la página [[es/FreedomBox/Manual/Configure|Sistema -> Configuración]] y '''actualmente no podrás cambiar el dominio''' una vez esté configurado. Tras configurar un dominio verás que el servicio se está ejecutando. El servicio estará accesible en el dominio de !FreedomBox configurado. +Para habilitar Matrix Synapse, primero navega a la página de tu servidor de chat (Matrix Synapse) e instálalo. Matrix necesita un nombre de dominio válido configurado. Tras la instalación, se te pedirá que lo configures seleccionandolo de entre un menú desplegable con dominios disponibles. Los dominios se configuran en la página [[es/FreedomBox/Manual/Configure| Sistema -> Configuración]] y '''actualmente no podrás cambiar el dominio''' una vez esté configurado. Tras configurar un dominio verás que el servicio se está ejecutando. El servicio estará accesible en el dominio de !FreedomBox configurado. Tendrás que configurar tu router para que reenvíe el puerto 8448 a tu !FreedomBox. Todos los usuarios registrados en tu !FreedomBox tendrán sus IDs Matrix `@usuario:dominio`. Si está habilitado el registro público tu cliente se puede usar también para registrar una cuenta de usuario nueva. -Si tu !FreedomBox está detrás de un router (NAT), quizá necesites [[es/FreedomBox/Manual/Coturn|Coturn]] para hacer llamadas de voz sobre IP. +=== Configurar llamadas de audio/vídeo === + +El servidor Matrix Synapse solo es responsable de establecer las conexiones entre los participantes de la sala. Los clientes Matrix como Element son los responsables de transmitir el audio/vídeo. Element soporta tanto llamadas individuales como de grupo. + +Para conversaciones individuales, Element intenta establecer una conexión directa entre ambos participantes. Esto funciona cuando ambos participantes están empleando Element en máquinas con una IP pública o si están en la misma red (local). Si ambos participantes están detrás de diferentes NATs no será posible establecer una conexión directa entre ellos. Esta dificultad se resuelve configurando Matrix Synapse contra un servidor STUN/TURN. !FreedomBox proporciona una app llamada [[es/FreedomBox/Manual/Coturn|Coturn]] para este propósito. !FreedomBox no instala Coturn automaticamente al instalar Matrix Synapse. No obstante, en cuanto se instala la app Coturn !FreedomBox automáticamente reconfigura Matrix Synapse para usarla en llamadas de audio/vídeo. Se puede ajustar esta configuración en la interfaz web para emplear otro servidor STUN/TURN. + +Para llamadas de grupo Element emplea una instancia de Jitsi Meet externa; por omisión, `jitsi.riot.im`. Si se configura el servidor Matrix Synapse para usar una instancia Jitsi Meet diferente Element la usará para todos los usuarios del servidor. === Federarse con otras instancias Matrix === diff --git a/doc/manual/es/ReleaseNotes.raw.wiki b/doc/manual/es/ReleaseNotes.raw.wiki index 32b9ea125..bdc0283c5 100644 --- a/doc/manual/es/ReleaseNotes.raw.wiki +++ b/doc/manual/es/ReleaseNotes.raw.wiki @@ -10,6 +10,17 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 21.4.2 (2021-03-28) == + +=== Highlights === + + * firstboot: Use session to verify first boot welcome step + +=== Other Changes === + + * locale: Update translations for German, Greek, Indonesian, Turkish + * manual: Update Contributing and Matrix Synapse pages + == FreedomBox 21.4.1 (2021-03-13) == === Highlights === diff --git a/doc/manual/es/Rock64.raw.wiki b/doc/manual/es/Rock64.raw.wiki index 0eef1c1ae..1a89362b6 100644 --- a/doc/manual/es/Rock64.raw.wiki +++ b/doc/manual/es/Rock64.raw.wiki @@ -24,7 +24,7 @@ An alternative to downloading these images is to [[InstallingDebianOn|install De === Hardware === * Open Source Hardware (OSHW): No - * CPU: Rockchip RK3328 Quad-Core SOC (4x Cortex A53@1.5Ghz) + * CPU: Rockchip RK3328 Quad-Core SOC (4x Cortex A53 @ 1.5Ghz) * GPU: Mali 450MP2 * RAM: 1 GiB or 2 GiB or 4 GiB LPDDR3 * Storage: eMMC module slot, microSD slot, 16 MiB SPI Flash From afd737d956137912868a5e394178bda1da7be8b2 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sun, 28 Mar 2021 10:54:53 -0400 Subject: [PATCH 22/22] Release v21.4.2 to unstable Signed-off-by: James Valleroy --- debian/changelog | 23 +++++++++++++++++++++++ plinth/__init__.py | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index bc3e27d41..b83cbf355 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,26 @@ +freedombox (21.4.2) unstable; urgency=high + + [ Burak Yavuz ] + * Translated using Weblate (Turkish) + * Translated using Weblate (Turkish) + + [ nautilusx ] + * Translated using Weblate (German) + + [ Michalis ] + * Translated using Weblate (Greek) + + [ Reza Almanda ] + * Translated using Weblate (Indonesian) + + [ Kirill Schmidt ] + * first_boot: Use session to verify first boot welcome step + + [ James Valleroy ] + * doc: Fetch latest manual + + -- James Valleroy Sun, 28 Mar 2021 09:23:46 -0400 + freedombox (21.4.1) unstable; urgency=medium [ Dietmar ] diff --git a/plinth/__init__.py b/plinth/__init__.py index 8564f8198..aefa0154a 100644 --- a/plinth/__init__.py +++ b/plinth/__init__.py @@ -3,4 +3,4 @@ Package init file. """ -__version__ = '21.4.1' +__version__ = '21.4.2'