From 4ab27eaee910719b9c0f0de39e4078356e0d0081 Mon Sep 17 00:00:00 2001 From: Besnik Bleta Date: Wed, 4 Jan 2023 14:39:13 +0000 Subject: [PATCH 1/7] Translated using Weblate (Albanian) Currently translated at 99.7% (1481 of 1484 strings) --- plinth/locale/sq/LC_MESSAGES/django.po | 80 +++++++++++++++----------- 1 file changed, 46 insertions(+), 34 deletions(-) diff --git a/plinth/locale/sq/LC_MESSAGES/django.po b/plinth/locale/sq/LC_MESSAGES/django.po index 8fdd0501c..52c421bd2 100644 --- a/plinth/locale/sq/LC_MESSAGES/django.po +++ b/plinth/locale/sq/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-03 10:41-0500\n" -"PO-Revision-Date: 2022-10-10 13:34+0000\n" +"PO-Revision-Date: 2023-01-05 15:50+0000\n" "Last-Translator: Besnik Bleta \n" "Language-Team: Albanian \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.14.1\n" +"X-Generator: Weblate 4.15.1-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -2128,6 +2128,8 @@ msgid "" "The following DNS records must be added manually on your primary domain for " "the mail server to work properly." msgstr "" +"Që shërbyesi i postës të funksionojë si duhet, zërat DNS vijues duhen shtuar " +"dorazi te përkatësia juaj parësore." #: plinth/modules/email/templates/email.html:36 msgid "TTL" @@ -3718,6 +3720,8 @@ msgid "" "Set the name of the main channel of your mumble server. If the name was " "never changed, the channel is named Root." msgstr "" +"Caktoni emrin e kanalit parësor të shërbyesit tuaj Mumble. Nëse emri s’qe " +"ndryshuar ndonjëherë, kanali është i emërtuar Root." #: plinth/modules/mumble/manifest.py:34 msgid "Mumblefly" @@ -4991,12 +4995,7 @@ msgid "Profile" msgstr "Profil" #: plinth/modules/openvpn/templates/openvpn.html:15 -#, fuzzy, python-format -#| msgid "" -#| "To connect to %(box_name)s's VPN, you need to download a profile and feed " -#| "it to an OpenVPN client on your mobile or desktop machine. OpenVPN " -#| "Clients are available for most platforms. Click \"Learn more...\" above " -#| "for recommended clients and instructions on how to configure them." +#, python-format msgid "" "To connect to %(box_name)s's VPN, you need to download a profile and feed it " "to an OpenVPN client on your mobile or desktop machine. OpenVPN Clients are " @@ -5005,16 +5004,14 @@ msgid "" msgstr "" "Për t’u lidhur me VPN-në e %(box_name)s-it, duhet të shkarkoni një profil " "dhe t’ia jepni atë një klienti OpenVPN në celularin tuaj apo makinën tuaj " -"desktop. Ka klientë OpenVPN për shumicën e platformave. Për klientë të " +"desktop. Ka klientë OpenVPN për shumicën e platformave. Për klientë të " "rekomanduar dhe udhëzime se si të formësohen ata, klikoni “Mësoni më tepër…”." #: plinth/modules/openvpn/templates/openvpn.html:24 -#, fuzzy, python-format -#| msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." +#, python-format msgid "Profile is specific to each user of %(box_name)s. Keep it a secret." msgstr "" -"Profili është specifik për çdo përdorues të %(box_name)s. Mbajeni të " -"fshehtë." +"Profili është specifik për çdo përdorues të %(box_name)s. Mbajeni të fshehtë." #: plinth/modules/openvpn/templates/openvpn.html:34 msgid "Download my profile" @@ -5331,25 +5328,27 @@ msgstr "Fike Tani" #: plinth/modules/privacy/__init__.py:14 msgid "Manage system-wide privacy settings." -msgstr "" +msgstr "Administroni rregullime privatësie për krejt sistemin." #: plinth/modules/privacy/__init__.py:31 plinth/modules/privacy/__init__.py:63 -#, fuzzy -#| msgid "Privoxy" msgid "Privacy" -msgstr "Privoxy" +msgstr "Privatësi" #: plinth/modules/privacy/__init__.py:61 msgid "Please update privacy settings to match your preferences." msgstr "" +"Ju lutemi, përditësoni rregullime privatësie që të përputhen me parapëlqimet " +"tuaja." #: plinth/modules/privacy/__init__.py:66 msgid "Review privacy setting" -msgstr "" +msgstr "Shqyrtoni rregullim privatësie" #: plinth/modules/privacy/forms.py:15 msgid "Periodically submit a list of apps used (suggested)" msgstr "" +"Parashtroni në mënyrë periodike një listë aplikacionesh të përdorur (e " +"sugjeruar)" #: plinth/modules/privacy/forms.py:17 #, python-brace-format @@ -5361,6 +5360,13 @@ msgid "" "target=\"_blank\">popcon.debian.org. Submission happens over the Tor " "network for additional anonymity if Tor app is enabled." msgstr "" +"Ndihmoni zhvilluesit e Debian/{box_name} duke marrë pjesë te anketimi " +"Konkurs Popullariteti progamesh. Kur aktivizohet, te Debian do të " +"parashtrohet në mënyrë anonime çdo javë një listë e aplikacioneve të " +"përdorura në këtë sistem. Statistikat për të dhënat e grumbulluara janë " +"publike, te popcon." +"debian.org. Parashtrimi bëhet përmes rrjetit Tor, për anonimitet shtesë, " +"nëse është i aktivizuar aplikacioni Tor." #: plinth/modules/privoxy/__init__.py:23 msgid "" @@ -5619,6 +5625,8 @@ msgid "" "RSS-Bridge generates RSS and Atom feeds for websites that do not have one. " "Generated feeds can be consumed by any feed reader." msgstr "" +"RSS-Bridge prodhon prurje RSS dhe Atom për sajte që s’kanë të tillë. Prurjet " +"e prodhuara mund të përdoren nga çfarëdo lexuesi prurjesh." #: plinth/modules/rssbridge/__init__.py:23 #, python-brace-format @@ -6465,10 +6473,8 @@ msgid "Secure Shell (SSH) Server" msgstr "Shërbyes Shelli të Sigurt (SSH)" #: plinth/modules/ssh/__init__.py:61 -#, fuzzy -#| msgid "Secure Shell (SSH)" msgid "Remotely login using Secure Shell (SSH)" -msgstr "Shell i Sigurt (SSH)" +msgstr "Hyrje së largëti duke përdorur Shell të Sigurt (SSH)" #: plinth/modules/ssh/forms.py:13 msgid "Disable password authentication" @@ -6486,7 +6492,7 @@ msgstr "" #: plinth/modules/ssh/forms.py:21 msgid "Allow all users to login remotely" -msgstr "" +msgstr "Lejojuni krejt përdoruesve të hyjnë së largëti" #: plinth/modules/ssh/forms.py:22 msgid "" @@ -6494,6 +6500,9 @@ msgid "" "disabled, only users of groups root, admin and freedombox-ssh can login via " "SSH." msgstr "" +"Lejojuni krejt përdoruesve që janë një llogari të vlefshme të hyjnë së " +"largëti, përmes SSH-je. Kur çaktivizohet, hyrje përmes SSH-je mund të bëjnë " +"vetëm përdorues të grupit rrënjë, përgjegjës dhe freedombox-ssh." #: plinth/modules/ssh/templates/ssh.html:11 msgid "Server Fingerprints" @@ -6678,7 +6687,7 @@ msgstr "Nëndrejtori (opsionale)" #: plinth/modules/storage/forms.py:136 msgid "Share" -msgstr "" +msgstr "Ndajeni me të tjerë" #: plinth/modules/storage/forms.py:144 msgid "Other directory (specify below)" @@ -7016,6 +7025,9 @@ msgid "" "Compared to Deluge, Transmission is simpler and " "lightweight but is less customizable." msgstr "" +"Krahasuar me Deluge, Transmission është më i " +"thjeshtë dhe i peshës së lehtë, por mund të përshtatet në shkallë më të " +"vogël." #: plinth/modules/transmission/__init__.py:33 #, python-brace-format @@ -7032,6 +7044,8 @@ msgid "" "Samba shares can be set as the default download " "directory from the dropdown menu below." msgstr "" +"Pjesë Samba mund të caktohen si drejtori " +"parazgjedhje shkarkimesh që nga menuja hapmbyll më poshtë." #: plinth/modules/transmission/__init__.py:41 #, python-brace-format @@ -7555,13 +7569,7 @@ msgid "The following administrator accounts exist in the system." msgstr "Në sistem ekzistojnë llogaritë vijuese përgjegjësish." #: plinth/modules/users/templates/users_firstboot.html:50 -#, fuzzy, python-format -#| msgid "" -#| "Delete these accounts from command line and refresh the page to create an " -#| "account that is usable with %(box_name)s. On the command line run the " -#| "command 'echo \"{password}\" | /usr/share/plinth/actions/users remove-" -#| "user {username}'. If an account is already usable with %(box_name)s, skip " -#| "this step." +#, python-format msgid "" "Delete these accounts from command line and refresh the page to create an " "account that is usable with %(box_name)s. On the command line run the " @@ -7570,10 +7578,11 @@ msgid "" "already usable with %(box_name)s, skip this step." msgstr "" "Fshijini këto llogari që nga rreshti i urdhrave dhe rifreskoni faqen, që të " -"krijohet një llogari e cila të jetë e përdorushme me %(box_name)s. Te " -"rreshti i urdhrave jepni urdhrin 'echo \"{password}\" | /usr/share/plinth/" -"actions/users remove-user {username}'. Nëse ka tashmë një llogari të " -"përdorshme me %(box_name)s, anashkalojeni këtë hap." +"krijohet një llogari e cila të jetë e përdorshme me %(box_name)s. Te rreshti " +"i urdhrave jepni urdhrin “echo '{\"args\": [EMËR PËRDORUESI”, “FJALËKALIM”], " +"\"kwargs\": {}}' | sudo /usr/share/plinth/actions/actions users remove_user”" +". Nëse një llogari është tashmë e përdorshme me %(box_name)s, anashkaloje " +"këtë hap." #: plinth/modules/users/templates/users_list.html:11 #: plinth/modules/users/views.py:64 @@ -8285,6 +8294,9 @@ msgid "" "FreedomBox is a personal server designed for privacy and data ownership. It " "is free software that lets you install and manage server apps with ease." msgstr "" +"FreedomBox është një shërbyes personal i konceptuar për privatësi dhe " +"pronësi të dhënash. Është software i lirë, që ju lejon të instaloni dhe " +"administroni kollaj aplikacione shërbyesi." #: plinth/templates/base.html:110 msgid " Home" From 695138d4d63ed34bbba3da5cb10e8b21ef5295d7 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Fri, 6 Jan 2023 21:40:50 -0500 Subject: [PATCH 2/7] upgrades: Stop quassel during dist upgrade Fixes: #2098. Tests: - Install quassel in bullseye system. - Start dist upgrade. Check that quassel service is stopped during the dist upgrade. - Finish dist upgrade. Quassel service is running again. Signed-off-by: James Valleroy Reviewed-by: Sunil Mohan Adapa --- plinth/modules/upgrades/privileged.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/plinth/modules/upgrades/privileged.py b/plinth/modules/upgrades/privileged.py index 1573b3006..7403f7dc8 100644 --- a/plinth/modules/upgrades/privileged.py +++ b/plinth/modules/upgrades/privileged.py @@ -12,7 +12,8 @@ from typing import List, Tuple, Union from plinth.action_utils import (apt_hold, apt_hold_flag, apt_hold_freedombox, apt_unhold_freedombox, debconf_set_selections, is_package_manager_busy, run_apt_command, - service_daemon_reload, service_restart) + service_daemon_reload, service_is_running, + service_restart, service_start, service_stop) from plinth.actions import privileged from plinth.modules.apache.components import check_url from plinth.modules.snapshot import is_apt_snapshots_enabled @@ -469,6 +470,15 @@ def _perform_dist_upgrade(): reenable_snapshots = _take_snapshot_and_disable() reenable_searx = _disable_searx() + # If quassel is running during dist upgrade, it may be restarted + # several times. This causes IRC users to rapidly leave/join + # channels. Stop quassel for the duration of the dist upgrade. + quassel_service = 'quasselcore' + quassel_was_running = service_is_running(quassel_service) + if quassel_was_running: + print('Stopping quassel service before dist upgrade...', flush=True) + service_stop(quassel_service) + # Hold freedombox package during entire dist upgrade. print('Holding freedombox package...', flush=True) with apt_hold_freedombox(): @@ -512,6 +522,11 @@ def _perform_dist_upgrade(): _update_searx(reenable_searx) + if quassel_was_running: + print('Re-starting quassel service after dist upgrade...', + flush=True) + service_start(quassel_service) + print('Running apt autoremove...', flush=True) run_apt_command(['autoremove']) From 09d8ee1b8e4f94fe959d6e29a9a98955b792c125 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Sat, 7 Jan 2023 09:27:16 -0500 Subject: [PATCH 3/7] ssh: Add sudo to allowed groups This is to allow vagrant user to login, as well as a normal sudo user that was created before installing FreedomBox. For most FreedomBoxes, the sudo group is empty, so it will have no impact. I do not update the existing file. But if someone needs this update, they can disable and then re-enable the restrict option. Signed-off-by: James Valleroy Reviewed-by: Sunil Mohan Adapa --- plinth/modules/ssh/privileged.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plinth/modules/ssh/privileged.py b/plinth/modules/ssh/privileged.py index 5d7cf1ed1..eb34fd559 100644 --- a/plinth/modules/ssh/privileged.py +++ b/plinth/modules/ssh/privileged.py @@ -58,11 +58,11 @@ def setup(): @privileged def restrict_users(should_restrict: bool): - """Restrict SSH logins to groups root, admin and freedombox-ssh.""" + """Restrict SSH logins to groups root, sudo, admin and freedombox-ssh.""" if not should_restrict: config_file.unlink(missing_ok=True) else: - config_file.write_text('AllowGroups root admin freedombox-ssh\n', + config_file.write_text('AllowGroups root sudo admin freedombox-ssh\n', encoding='utf-8') action_utils.service_reload('sshd') From 4769c1c861bed760d5aee1f8feb910e75c5a043a Mon Sep 17 00:00:00 2001 From: Sunil Mohan Adapa Date: Fri, 13 Jan 2023 07:48:12 -0800 Subject: [PATCH 4/7] ssh: Update existing setups to add sudo group to allowed SSH groups Tests: - On a setup with the patch, disable and re-enable the restricted users feature. sudo is not part of allowed users. Apply the patch and restart the service. SSH app will be updated and sudo is added to SSH allowed groups. - Add a fresh unprivileged user to sudo group. SSH using that user to the system. Signed-off-by: Sunil Mohan Adapa --- plinth/modules/ssh/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plinth/modules/ssh/__init__.py b/plinth/modules/ssh/__init__.py index 88c18df5e..03c277ee3 100644 --- a/plinth/modules/ssh/__init__.py +++ b/plinth/modules/ssh/__init__.py @@ -30,7 +30,7 @@ class SSHApp(app_module.App): app_id = 'ssh' - _version = 2 + _version = 3 def __init__(self): """Create components for the app.""" @@ -73,6 +73,8 @@ class SSHApp(app_module.App): privileged.setup() if not old_version: self.enable() + elif old_version == 2 and privileged.are_users_restricted(): + privileged.restrict_users(True) elif old_version == 1: privileged.restrict_users(True) From be7a1e8af6a8f7c2872a1fc793f256f8219e1e0b Mon Sep 17 00:00:00 2001 From: 109247019824 Date: Sun, 15 Jan 2023 08:31:54 +0000 Subject: [PATCH 5/7] Translated using Weblate (Bulgarian) Currently translated at 41.7% (620 of 1484 strings) --- plinth/locale/bg/LC_MESSAGES/django.po | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/plinth/locale/bg/LC_MESSAGES/django.po b/plinth/locale/bg/LC_MESSAGES/django.po index 4426c9b41..c5a87ac9c 100644 --- a/plinth/locale/bg/LC_MESSAGES/django.po +++ b/plinth/locale/bg/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-01-03 10:41-0500\n" -"PO-Revision-Date: 2022-12-07 20:48+0000\n" +"PO-Revision-Date: 2023-01-16 08:48+0000\n" "Last-Translator: 109247019824 \n" "Language-Team: Bulgarian \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.15-dev\n" +"X-Generator: Weblate 4.15.1-dev\n" #: doc/dev/_templates/layout.html:11 msgid "Page source" @@ -6055,6 +6055,11 @@ msgid "" "deletion of files on one device will be automatically replicated on all " "other devices that also run Syncthing." msgstr "" +"Syncthing е приложение за синхронизиране на файлове между няколко " +"устройства, например настолен компютър и мобилен телефон. Създаването, " +"модифицирането или изтриването на файлове на едно устройство ще бъде " +"автоматично възпроизведено на всички останали устройства, на които също е " +"стартиран Syncthing." #: plinth/modules/syncthing/__init__.py:27 #, python-brace-format @@ -6067,6 +6072,13 @@ msgid "" "{box_name} is only available for users belonging to the \"admin\" or " "\"syncthing-access\" group." msgstr "" +"Работата на Syncthing на {box_name} осигурява допълнителна точка за " +"синхронизиране на данни, която е налична през повечето време, което " +"позволява на устройствата ви да се синхронизират по-често. {box_name} " +"стартира един екземпляр на Syncthing, който може да се използва от няколко " +"потребители. Наборът от устройства на всеки потребител може да се " +"синхронизира с отделен набор от папки. Интерфейсът на {box_name} е достъпен " +"само за потребители, принадлежащи към групата „admin“ или „syncthing-access“." #: plinth/modules/syncthing/__init__.py:54 msgid "Administer Syncthing application" From 0f828207ea1f60772fd62c4bbb5b43d17b37603f Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Mon, 16 Jan 2023 20:32:16 -0500 Subject: [PATCH 6/7] doc: Fetch latest manual Signed-off-by: James Valleroy --- doc/manual/en/ReleaseNotes.raw.wiki | 6 ++++++ doc/manual/es/ReleaseNotes.raw.wiki | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/doc/manual/en/ReleaseNotes.raw.wiki b/doc/manual/en/ReleaseNotes.raw.wiki index 78b988f2a..c85465fa1 100644 --- a/doc/manual/en/ReleaseNotes.raw.wiki +++ b/doc/manual/en/ReleaseNotes.raw.wiki @@ -8,6 +8,12 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 23.2 (2023-01-16) == + + * locale: Update translations for Albanian, Bulgarian + * ssh: Add sudo to allowed groups + * upgrades: Stop quassel during dist upgrade + == FreedomBox 23.1 (2023-01-03) == === Highlights === diff --git a/doc/manual/es/ReleaseNotes.raw.wiki b/doc/manual/es/ReleaseNotes.raw.wiki index 78b988f2a..c85465fa1 100644 --- a/doc/manual/es/ReleaseNotes.raw.wiki +++ b/doc/manual/es/ReleaseNotes.raw.wiki @@ -8,6 +8,12 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 23.2 (2023-01-16) == + + * locale: Update translations for Albanian, Bulgarian + * ssh: Add sudo to allowed groups + * upgrades: Stop quassel during dist upgrade + == FreedomBox 23.1 (2023-01-03) == === Highlights === From 0d27d10811297b7d6f5c5614f09bbbd3985684b1 Mon Sep 17 00:00:00 2001 From: James Valleroy Date: Mon, 16 Jan 2023 20:33:13 -0500 Subject: [PATCH 7/7] Release v23.2 to unstable Signed-off-by: James Valleroy --- debian/changelog | 18 ++++++++++++++++++ plinth/__init__.py | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 7e573a91b..5e6efc4d6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,21 @@ +freedombox (23.2) unstable; urgency=medium + + [ Besnik Bleta ] + * Translated using Weblate (Albanian) + + [ James Valleroy ] + * upgrades: Stop quassel during dist upgrade + * ssh: Add sudo to allowed groups + * doc: Fetch latest manual + + [ Sunil Mohan Adapa ] + * ssh: Update existing setups to add sudo group to allowed SSH groups + + [ 109247019824 ] + * Translated using Weblate (Bulgarian) + + -- James Valleroy Mon, 16 Jan 2023 20:33:02 -0500 + freedombox (23.1) unstable; urgency=medium [ gallegonovato ] diff --git a/plinth/__init__.py b/plinth/__init__.py index 0a85ea03f..c0c44fcbd 100644 --- a/plinth/__init__.py +++ b/plinth/__init__.py @@ -3,4 +3,4 @@ Package init file. """ -__version__ = '23.1' +__version__ = '23.2'