freedombox Debian release 23.2

-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmPGC9sACgkQd8DHXntl
 CAiWfA/9EtEcuVFJS3/geTAb39nQoS/VdW0enMWPbUcSc77/XiyHixriSLHLqJOe
 IWw/tdI5y47gdGBgDsIZgURXICk5RAqnMKopubGV9aIA2YtMbfZnKpVevfD3emkZ
 eYrYfPO9RQT/rd83aKMALua360Gmr20rr/3zNjicclCoL3mXmMWhMhTfwt5QR0bc
 0gL0bkUndyPt3hUaT/Ij1E1g+iKles5XVJpvk4ifcgvhWSMFms7Yln/+l7a9mHDj
 Jl6JZEbdKFCTTA2L4xbKovabA0IpNVicGmoFB9HbJ84GDFeNBMEO2yohPHZLBqxM
 /h5ov/Qnn0Kt2zbRq30U8jCSjtTGZacki2N2BgPhUAju8JEc9ytfHUnT8rWnJD7E
 THP9QqKh5ue7X7CfJgiaCjdEGG0LGuF1G1LZfJ0CgS/roLsNizSYHYl/AqCIO8Mz
 4rpBDKMN0yIPrgqNyr0UN5GX26bVITh48vr01niqLFyOKw4kYNecrLWyd1nlMlp7
 zDKU0yIUoDe//sg9JOSWUJrGsZP8em6W7sXcz6b5gra4vJ3pcZKZx8k0uprKR9kx
 r4TJrltJCha5rmc+NYMu6w1POJeoP0UDm2SnXHMjZNvIbDzyiNbZXiTN3kuAaDEV
 QkwSVJJvCm38ffRErqjTQtnvGyp1lDGdKGXQeE7IUc1w+HXf9Cg=
 =phy/
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEfWrbdQ+RCFWJSEvmd8DHXntlCAgFAmPKgmUACgkQd8DHXntl
 CAhf1xAAlz2JqoyCTojJ+W58+zVqav9WoZ1bqDu1fyWbTeZXm5PoexEmZoNXjTDs
 3TMQgfx/bwukzBiiRJMXjjMqS+WzMqTs6FBsrskAW7zxHlaw71OeuFS/QFJ4SI2N
 yoVDptI7qULXt4dAvromS5ew6tNx5WO73fwofQyPr0Y/huuLXXA/uERfgxRBOjWH
 uNYfKDaD5Bbym/vCXy5mQAHoXnKKrOvfEHA6RDfnfarvW6kLCHN/CgZkqYeS2+aP
 gOsgdNsVuBtz4sjMtzTZHG3GZzrn5jy+NdioL94KDTCiBcjuInG1EGnE2iDlEMGE
 HALIyGWsbKCqJ+5Z1Sob8essriQzj8TlAJgyyh2Z8Pb2Qfh90xrESp9hNNq+eCqD
 syT6sok0vkUvlMEuKjAn9DcWXpXeRGU6skSIdctu98s5WXKL7tz56qPqU1tezsfJ
 7grVLCpU6GlZ5VeePDnHf3PJ3/1/CUic876uxQodRa8KHdQkHrtmmfrMppgs9uEf
 UXyJDaZlMtTLJcoAUaIZY3hHdU3B1QyOjy0Bfmb5cwo28/pkkYGFT5G+XE8VaxYy
 zRQ3Wg/PWHkEmU/ojyQCH26toA7USXZSbyFJSH2P3d2JJ27zukCgsntBby+vCEa6
 qlSo6dRhSw+L7QM8uJmB8wav9lsa0Xj9n8w96BRf4z5WTd5YIBk=
 =ilbZ
 -----END PGP SIGNATURE-----

Merge tag 'v23.2' into debian/bullseye-backports

freedombox Debian release 23.2

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
James Valleroy 2023-01-20 07:00:36 -05:00
commit 3390fe97df
9 changed files with 112 additions and 41 deletions

18
debian/changelog vendored
View File

@ -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 <jvalleroy@mailbox.org> Mon, 16 Jan 2023 20:33:02 -0500
freedombox (23.1~bpo11+1) bullseye-backports; urgency=medium
* Rebuild for bullseye-backports.

View File

@ -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 ===

View File

@ -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 ===

View File

@ -3,4 +3,4 @@
Package init file.
"""
__version__ = '23.1'
__version__ = '23.2'

View File

@ -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 <stoyan@gmx.com>\n"
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/bg/>\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"

View File

@ -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 <besnik@programeshqip.org>\n"
"Language-Team: Albanian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/sq/>\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 sqe "
"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 tu lidhur me VPN-në e %(box_name)s-it, duhet të shkarkoni një profil "
"dhe tia 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</a>. 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 <a href=\"https://popcon.debian.org/\" target=\"_blank\">popcon."
"debian.org</a>. 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ë skanë 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 <a href=\"{deluge_url}\">Deluge</a>, Transmission is simpler and "
"lightweight but is less customizable."
msgstr ""
"Krahasuar me <a href=\"{deluge_url}\">Deluge</a>, 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 ""
"<a href=\"{samba_url}\">Samba</a> shares can be set as the default download "
"directory from the dropdown menu below."
msgstr ""
"Pjesë <a href=\"{samba_url}\">Samba</a> 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"

View File

@ -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)

View File

@ -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')

View File

@ -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'])