diff --git a/debian/changelog b/debian/changelog
index 7d41e7050..d94bc4099 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,17 @@
+freedombox (23.6.2) unstable; urgency=medium
+
+ [ James Valleroy ]
+ * upgrades: Check apt result during dist-upgrade
+ * doc: Fetch latest manual
+
+ [ 109247019824 ]
+ * Translated using Weblate (Bulgarian)
+
+ [ Ihor Hordiichuk ]
+ * Translated using Weblate (Ukrainian)
+
+ -- James Valleroy Mon, 01 May 2023 08:49:06 -0400
+
freedombox (23.6.1~bpo11+1) bullseye-backports; urgency=medium
* Rebuild for bullseye-backports.
diff --git a/doc/manual/en/ReleaseNotes.raw.wiki b/doc/manual/en/ReleaseNotes.raw.wiki
index 677b443a7..7eae427d3 100644
--- a/doc/manual/en/ReleaseNotes.raw.wiki
+++ b/doc/manual/en/ReleaseNotes.raw.wiki
@@ -8,6 +8,57 @@ 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.6.2 (2023-05-01) ==
+
+ * upgrades: Check apt result during dist-upgrade
+ * locale: Update translations for Bulgarian, Ukrainian
+
+== FreedomBox 23.8 (2023-04-24) ==
+
+=== Highlights ===
+
+ * coturn: Prevent package removal when roundcube is uninstalled
+ * datetime: Re-implement backup/restore for timezone
+ * gitweb: Disable snapshot feature
+
+=== Other Changes ===
+
+ * HACKING: Force pip to install packages to system environment
+ * bepasty: When uninstalling, remove all data and configuration
+ * calibre: Remove libraries during uninstallation
+ * ci: Force pip install for functional tests
+ * coturn: When uninstalling, remove all data and configuration
+ * datetime: Use unique component ID for related daemon
+ * deluge: When uninstalling, remove all data and configuration
+ * gitweb: When uninstalling, remove all data and configuration, remove repositories
+ * gitweb: Make globally configured features overridable per-repository
+ * gitweb: Simplify handling shortcut for front page
+ * ikiwiki: When uninstalling, remove all data and configuration
+ * infinoted: When uninstalling, remove all data and configuration
+ * locale: Update translations for Bulgarian, French, Ukrainian
+ * matrixsynapse: When uninstalling, remove all data and configuration
+ * mediawiki: When uninstalling, remove all data and configuration
+ * mediawiki: Fix broken view on Bullseye due to language selection
+ * openvpn: When uninstalling, remove all data and configuration
+ * roundcube: When uninstalling, remove all data and configuration
+ * rssbridge: When uninstalling, remove all data and configuration
+ * samba: When uninstalling, remove all data and configuration
+ * searx: When uninstalling, remove all data and configuration
+ * searx: Simplify handling shortcut for front page
+ * shaarli: When uninstalling, remove all data and configuration
+ * shadowsocks: When uninstalling, remove all data and configuration
+ * sharing: When uninstalling, remove all data and configuration
+ * syncthing: When uninstalling, remove all data and configuration
+ * syncthing: Remove unused pathlib import so job code-quality can pass
+ * tests: Don't error during collection if selenium is not installed
+ * tests: functional: Make install script work for Bullseye
+ * tests: functional: Remove handling for custom enable/disable buttons
+ * tests: functional: Update detecting page changes
+ * tor: When uninstalling, remove all data and configuration
+ * ttrss: When uninstalling, remove all data and configuration
+ * upgrades: Check apt result during dist-upgrade
+ * wordpress: When uninstalling, remove all data and configuration
+
== FreedomBox 23.6.1 (2023-04-10) ==
* coturn: Prevent package removal when roundcube is uninstalled
diff --git a/doc/manual/es/ReleaseNotes.raw.wiki b/doc/manual/es/ReleaseNotes.raw.wiki
index 677b443a7..7eae427d3 100644
--- a/doc/manual/es/ReleaseNotes.raw.wiki
+++ b/doc/manual/es/ReleaseNotes.raw.wiki
@@ -8,6 +8,57 @@ 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.6.2 (2023-05-01) ==
+
+ * upgrades: Check apt result during dist-upgrade
+ * locale: Update translations for Bulgarian, Ukrainian
+
+== FreedomBox 23.8 (2023-04-24) ==
+
+=== Highlights ===
+
+ * coturn: Prevent package removal when roundcube is uninstalled
+ * datetime: Re-implement backup/restore for timezone
+ * gitweb: Disable snapshot feature
+
+=== Other Changes ===
+
+ * HACKING: Force pip to install packages to system environment
+ * bepasty: When uninstalling, remove all data and configuration
+ * calibre: Remove libraries during uninstallation
+ * ci: Force pip install for functional tests
+ * coturn: When uninstalling, remove all data and configuration
+ * datetime: Use unique component ID for related daemon
+ * deluge: When uninstalling, remove all data and configuration
+ * gitweb: When uninstalling, remove all data and configuration, remove repositories
+ * gitweb: Make globally configured features overridable per-repository
+ * gitweb: Simplify handling shortcut for front page
+ * ikiwiki: When uninstalling, remove all data and configuration
+ * infinoted: When uninstalling, remove all data and configuration
+ * locale: Update translations for Bulgarian, French, Ukrainian
+ * matrixsynapse: When uninstalling, remove all data and configuration
+ * mediawiki: When uninstalling, remove all data and configuration
+ * mediawiki: Fix broken view on Bullseye due to language selection
+ * openvpn: When uninstalling, remove all data and configuration
+ * roundcube: When uninstalling, remove all data and configuration
+ * rssbridge: When uninstalling, remove all data and configuration
+ * samba: When uninstalling, remove all data and configuration
+ * searx: When uninstalling, remove all data and configuration
+ * searx: Simplify handling shortcut for front page
+ * shaarli: When uninstalling, remove all data and configuration
+ * shadowsocks: When uninstalling, remove all data and configuration
+ * sharing: When uninstalling, remove all data and configuration
+ * syncthing: When uninstalling, remove all data and configuration
+ * syncthing: Remove unused pathlib import so job code-quality can pass
+ * tests: Don't error during collection if selenium is not installed
+ * tests: functional: Make install script work for Bullseye
+ * tests: functional: Remove handling for custom enable/disable buttons
+ * tests: functional: Update detecting page changes
+ * tor: When uninstalling, remove all data and configuration
+ * ttrss: When uninstalling, remove all data and configuration
+ * upgrades: Check apt result during dist-upgrade
+ * wordpress: When uninstalling, remove all data and configuration
+
== FreedomBox 23.6.1 (2023-04-10) ==
* coturn: Prevent package removal when roundcube is uninstalled
diff --git a/plinth/__init__.py b/plinth/__init__.py
index 5e52acec7..28154b1ab 100644
--- a/plinth/__init__.py
+++ b/plinth/__init__.py
@@ -3,4 +3,4 @@
Package init file.
"""
-__version__ = '23.6.1'
+__version__ = '23.6.2'
diff --git a/plinth/locale/bg/LC_MESSAGES/django.po b/plinth/locale/bg/LC_MESSAGES/django.po
index 7ff09a5a5..4e7965a40 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-03-13 21:32-0400\n"
-"PO-Revision-Date: 2023-04-11 00:02+0000\n"
+"PO-Revision-Date: 2023-04-19 09:52+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.17-dev\n"
+"X-Generator: Weblate 4.18-dev\n"
#: doc/dev/_templates/layout.html:11
msgid "Page source"
@@ -3713,6 +3713,10 @@ msgid ""
"adapter. {box_name} is directly connected to the Internet and all your "
"devices connect to {box_name} for their Internet connectivity.
"
msgstr ""
+"{box_name} е маршрутизатор {box_name} има множество "
+"мрежови интерфейси, като например множество Ethernet портове или безжичен "
+"адаптер. {box_name} е устройство, директно свързано с интернет и всички "
+"устройства се свързват с {box_name}, за да получат достъп до интернет.
"
#: plinth/modules/networks/forms.py:333
#, python-brace-format
@@ -3721,10 +3725,13 @@ msgid ""
"connection is directly attached to your {box_name} and there are no other "
"devices on the network. This can happen on community or cloud setups."
msgstr ""
+"Директно свързано към интернет Връзката към интернет "
+"е директно свързана към {box_name} и няма други устройства в мрежата. Това "
+"се получава при общностни или облачни настройки.
"
#: plinth/modules/networks/forms.py:352
msgid "Choose your internet connection type"
-msgstr ""
+msgstr "Изберете вида на връзката с интернет"
#: plinth/modules/networks/forms.py:356
msgid ""
@@ -3736,6 +3743,14 @@ msgid ""
"connectivity. If you have a public IP address but are unsure if it changes "
"over time or not, it is safer to choose this option."
msgstr ""
+"Имам публичен адрес по IP, който може да се променя с течение на времетоТова означава, че устройствата в интернет могат да се "
+"свържат с вас, когато сте свързани към интернет. Всеки път, когато се "
+"свързвате към интернет с вашия доставчик на интернет услуги (ISP), може да "
+"получите различен адрес по IP. Много доставчици на интернет услуги предлагат "
+"този тип свързаност. Ако разполагате с публичен адрес по IP, но не сте "
+"сигурни дали той се променя с течение на времето, по-безопасно е да изберете "
+"тази възможност.
"
#: plinth/modules/networks/forms.py:368
#, python-brace-format
@@ -3748,6 +3763,14 @@ msgid ""
"but very few ISPs offer this. You may be able to get this service from your "
"ISP by making an additional payment."
msgstr ""
+"Имам публичен адрес по IP, който не се променя с времето (препоръчително)Това означава, че устройствата в интернет могат да ви "
+"достигнат, когато сте свързани към интернет. Всеки път, когато се свързвате "
+"към интернет с вашия доставчик на интернет услуги (ISP), винаги получавате "
+"един и същи адрес по IP. Това е най-безпроблемната настройка за много услуги "
+"на {box_name}, но много малко доставчици на интернет предлагат такава "
+"възможност. Възможно е да можете да получите такава услуга от вашия "
+"доставчик на интернет, срещу заплащане.
"
#: plinth/modules/networks/forms.py:381
#, python-brace-format
@@ -3760,16 +3783,26 @@ msgid ""
"troublesome situation for hosting services at home. {box_name} provides many "
"workaround solutions but each solution has some limitations."
msgstr ""
+"Нямам публичен адрес по IPТова означава, че "
+"устройствата в интернет не могат да се свържат с вас, когато сте свързани "
+"към интернет. Всеки път, когато се свързвате към интернет с вашия доставчик "
+"на интернет услуги (ISP), получавате IP адрес, който е от значение само за "
+"локалната мрежа. Много доставчици на интернет услуги предлагат този вид "
+"свързаност. Това е най-неприятната ситуация за поддържане на услуги у дома. "
+"{box_name} предлага много решения за заобикаляне на ситуацията, но всяко "
+"решение има своите ограничения.
"
#: plinth/modules/networks/forms.py:394
msgid ""
"I do not know the type of connection my ISP provides You will be suggested the most conservative actions.
"
msgstr ""
+"Не зная каъв вид връзка предоставя доставчикът на интернетЩе бъдат предложени най-консервативните действия.
"
#: plinth/modules/networks/forms.py:411
msgid "Preferred router configuration"
-msgstr ""
+msgstr "Предпочитана настройка за маршрутизатор"
#: plinth/modules/networks/forms.py:416
#, python-brace-format
diff --git a/plinth/locale/uk/LC_MESSAGES/django.po b/plinth/locale/uk/LC_MESSAGES/django.po
index 721f9db0c..3249d425f 100644
--- a/plinth/locale/uk/LC_MESSAGES/django.po
+++ b/plinth/locale/uk/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-03-13 21:32-0400\n"
-"PO-Revision-Date: 2023-02-16 19:39+0000\n"
+"PO-Revision-Date: 2023-04-23 12:48+0000\n"
"Last-Translator: Ihor Hordiichuk \n"
"Language-Team: Ukrainian \n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.16-dev\n"
+"X-Generator: Weblate 4.18-dev\n"
#: doc/dev/_templates/layout.html:11
msgid "Page source"
@@ -1294,7 +1294,7 @@ msgstr "Зберігати дещо в памʼяті до перезапуск
#: plinth/modules/config/forms.py:110
msgid "Write to disk, useful for debugging"
-msgstr "Записати на диск, зручно під час зневадження"
+msgstr "Записати на диск, зручно під час налагодження"
#: plinth/modules/config/forms.py:112
msgid ""
@@ -1302,7 +1302,7 @@ msgid ""
"from various services"
msgstr ""
"Журнали містять інформацію про те, хто мав доступ до системи та інформацію "
-"про зневадження від різних сервісів"
+"про налагодження від різних служб"
#: plinth/modules/config/views.py:49
#, python-brace-format
diff --git a/plinth/modules/upgrades/privileged.py b/plinth/modules/upgrades/privileged.py
index 7403f7dc8..b537702ae 100644
--- a/plinth/modules/upgrades/privileged.py
+++ b/plinth/modules/upgrades/privileged.py
@@ -518,7 +518,13 @@ def _perform_dist_upgrade():
', '.join(DIST_UPGRADE_PACKAGES_WITH_PROMPTS) + '...', flush=True)
with apt_hold(DIST_UPGRADE_PACKAGES_WITH_PROMPTS):
print('Running apt full-upgrade...', flush=True)
- run_apt_command(['full-upgrade'])
+ returncode = run_apt_command(['full-upgrade'])
+
+ # Check if apt upgrade was successful.
+ if returncode:
+ raise RuntimeError(
+ 'Apt full-upgrade was not successful. Distribution upgrade '
+ 'will be retried at a later time.')
_update_searx(reenable_searx)