diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index da7ac335..911e0af5 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -15,7 +15,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: - python-version: "3.9" + python-version: "3.10" - name: Install dependencies run: | sudo apt-get update @@ -41,7 +41,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: - python-version: "3.9" + python-version: "3.10" - name: Install dependencies run: | sudo apt-get update diff --git a/cli/onionshare_cli/common.py b/cli/onionshare_cli/common.py index 7cb61b86..724122b5 100644 --- a/cli/onionshare_cli/common.py +++ b/cli/onionshare_cli/common.py @@ -19,6 +19,7 @@ along with this program. If not, see . """ import base64 import hashlib +import importlib.resources as importlib_resources import os import platform import random @@ -29,7 +30,6 @@ import threading import time import shutil import re -from pkg_resources import resource_filename import colorama from colorama import Fore, Back, Style @@ -313,9 +313,10 @@ class Common: """ Returns the absolute path of a resource """ - path = resource_filename("onionshare_cli", os.path.join("resources", filename)) - self.log("Common", "get_resource_path", f"filename={filename}, path={path}") - return path + ref = importlib_resources.files("onionshare_cli.resources") / filename + with importlib_resources.as_file(ref) as path: + self.log("Common", "get_resource_path", f"filename={filename}, path={str(path)}") + return str(path) def get_tor_paths(self): if self.platform == "Linux": diff --git a/cli/onionshare_cli/web/web.py b/cli/onionshare_cli/web/web.py index 3a15fdc1..94c95964 100644 --- a/cli/onionshare_cli/web/web.py +++ b/cli/onionshare_cli/web/web.py @@ -176,11 +176,17 @@ class Web: self.website_mode = WebsiteModeWeb(self.common, self) elif self.mode == "chat": if self.common.verbose: - self.socketio = SocketIO( - async_mode="gevent", logger=True, engineio_logger=True - ) + try: + self.socketio = SocketIO( + async_mode="gevent", logger=True, engineio_logger=True + ) + except ValueError: + self.socketio = SocketIO(logger=True, engineio_logger=True) else: - self.socketio = SocketIO(async_mode="gevent") + try: + self.socketio = SocketIO(async_mode="gevent") + except ValueError: + self.socketio = SocketIO() self.socketio.init_app(self.app) self.chat_mode = ChatModeWeb(self.common, self) diff --git a/cli/poetry.lock b/cli/poetry.lock index a00142d6..c4cba87f 100644 --- a/cli/poetry.lock +++ b/cli/poetry.lock @@ -507,7 +507,6 @@ files = [ [package.dependencies] blinker = ">=1.6.2" click = ">=8.1.3" -importlib-metadata = {version = ">=3.6.0", markers = "python_version < \"3.10\""} itsdangerous = ">=2.1.2" Jinja2 = ">=3.1.2" Werkzeug = ">=2.3.3" @@ -729,27 +728,6 @@ files = [ [package.extras] all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] -[[package]] -name = "importlib-metadata" -version = "7.0.1" -description = "Read metadata from Python packages" -optional = false -python-versions = ">=3.8" -groups = ["main"] -markers = "python_version < \"3.10\"" -files = [ - {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, - {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, -] - -[package.dependencies] -zipp = ">=0.5" - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] - [[package]] name = "iniconfig" version = "2.0.0" @@ -1263,27 +1241,6 @@ files = [ [package.dependencies] h11 = ">=0.9.0,<1" -[[package]] -name = "zipp" -version = "3.21.0" -description = "Backport of pathlib-compatible object wrapper for zip files" -optional = false -python-versions = ">=3.9" -groups = ["main"] -markers = "python_version < \"3.10\"" -files = [ - {file = "zipp-3.21.0-py3-none-any.whl", hash = "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931"}, - {file = "zipp-3.21.0.tar.gz", hash = "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4"}, -] - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] -type = ["pytest-mypy"] - [[package]] name = "zope-event" version = "5.0" @@ -1359,5 +1316,5 @@ testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] [metadata] lock-version = "2.1" -python-versions = ">=3.9,<3.13" -content-hash = "010d6517823f846fe752d72d6e90a7c6f6a056a8be7c473bfb2f466543f41276" +python-versions = ">=3.10,<3.13" +content-hash = "92dac9c4dbbdf94b9dc1f9bf5149be1e87be7d0c6b5a2773c6f10f54cb93e76d" diff --git a/cli/pyproject.toml b/cli/pyproject.toml index 5bc9df08..6ee7e64a 100644 --- a/cli/pyproject.toml +++ b/cli/pyproject.toml @@ -16,7 +16,7 @@ classifiers = [ ] [tool.poetry.dependencies] -python = ">=3.9,<3.13" +python = ">=3.10,<3.13" click = "*" flask = "2.3.2" flask-compress = "^1.13" diff --git a/desktop/onionshare/gui_common.py b/desktop/onionshare/gui_common.py index fcbf47f7..6e04c9f0 100644 --- a/desktop/onionshare/gui_common.py +++ b/desktop/onionshare/gui_common.py @@ -18,9 +18,9 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . """ +import importlib.resources as importlib_resources import os import shutil -from pkg_resources import resource_filename from PySide6 import QtCore, QtWidgets, QtGui from . import strings @@ -548,8 +548,10 @@ class GuiCommon: Returns the absolute path of a resource """ try: - return resource_filename("onionshare", os.path.join("resources", filename)) - except KeyError: + ref = importlib_resources.files("onionshare.resources") / filename + with importlib_resources.as_file(ref) as path: + return str(path) + except FileNotFoundError: return None @staticmethod diff --git a/desktop/onionshare/resources/locale/ia.json b/desktop/onionshare/resources/locale/ia.json index 0967ef42..d5970905 100644 --- a/desktop/onionshare/resources/locale/ia.json +++ b/desktop/onionshare/resources/locale/ia.json @@ -1 +1,38 @@ -{} +{ + "gui_remove": "Remover", + "gui_hide": "Hide", + "gui_settings_window_title": "Configurationes", + "gui_settings_autoupdate_timestamp_never": "Never", + "gui_settings_language_label": "Lingua", + "gui_settings_theme_light": "Clar", + "gui_settings_theme_dark": "Obscur", + "systray_menu_exit": "Quitar", + "gui_tab_name_website": "Website", + "gui_tab_name_chat": "Chat", + "gui_close_tab_warning_cancel": "Cancellar", + "gui_quit_warning_quit": "Quitar", + "gui_quit_warning_cancel": "Cancellar", + "mode_settings_receive_data_dir_browse_button": "Navigar", + "moat_captcha_submit": "Submitter", + "moat_captcha_reload": "Reload", + "gui_add": "Add", + "gui_choose_items": "Eliger", + "gui_please_wait_no_button": "Initiante…", + "gui_general_settings_window_title": "General", + "gui_settings_authenticate_password_option": "Contrasigno", + "gui_settings_password_label": "Contrasigno", + "gui_settings_button_save": "Salveguardar", + "gui_settings_button_cancel": "Cancellar", + "gui_settings_button_help": "Adjuta", + "gui_tor_connection_ask_open_settings": "Si", + "gui_tor_connection_ask_quit": "Quitar", + "gui_status_indicator_share_working": "Initiante…", + "gui_status_indicator_receive_working": "Initiante…", + "gui_status_indicator_chat_working": "Initiante…", + "gui_settings_theme_label": "Thema", + "gui_all_modes_history": "Chronologia", + "gui_all_modes_clear_history": "Rader toto", + "gui_new_tab": "Nove scheda", + "gui_main_page_share_button": "Comenciar a compartir", + "gui_tab_name_share": "Compartir" +} diff --git a/desktop/onionshare/resources/locale/is.json b/desktop/onionshare/resources/locale/is.json index 280c1578..6343f57c 100644 --- a/desktop/onionshare/resources/locale/is.json +++ b/desktop/onionshare/resources/locale/is.json @@ -131,7 +131,7 @@ "gui_website_mode_no_files": "Ennþá hefur engu vefsvæði verið deilt", "incorrect_password": "Rangt lykilorð", "history_requests_tooltip": "{} vefbeiðnir", - "mode_settings_persistent_checkbox": "Alltaf opna þennan flipa þegar OnionShare fer í gang", + "mode_settings_persistent_checkbox": "Alltaf opna þennan flipa þegar OnionShare fer í gang (onion-vistfangið helst það sama)", "gui_close_tab_warning_persistent_description": "Loka viðvarandi flipa og tapa onion-vistfanginu sem hann er að nota?", "gui_quit_warning_description": "Hætta og loka öllum flipum, jafnvel þó deiling sé virk í sumum þeirra?", "mode_settings_share_autostop_sharing_checkbox": "Hætta að deila eftir að skrár hafa verið sendar (taka merkið úr reitnum til að leyfa niðurhal á stökum skrám)", @@ -254,5 +254,6 @@ "gui_general_settings_window_title": "Almennt", "waitress_web_server_error": "Vandamál kom upp við að ræsa vefþjóninn", "gui_close_tab_warning_chat_description": "Loka flipa sem hýsir spjallþjón?", - "gui_chat_mode_explainer": "Spjallhamur gerir þér kleift að spjalla gagnvirkt við aðra í Tor-vafranum.

Spjallferillinn er ekki geymdur í OnionShare, hann mun hverfa þegar þú lokar Tor-vafranum." + "gui_chat_mode_explainer": "Spjallhamur gerir þér kleift að spjalla gagnvirkt við aðra í Tor-vafranum.

Spjallferillinn er ekki geymdur í OnionShare, hann mun hverfa þegar þú lokar Tor-vafranum.", + "mode_settings_persistent_autostart_on_launch_checkbox": "Ræsa sjálfkrafa þessa onion-þjónustu þegar OnionShare fer í gang" } diff --git a/desktop/onionshare/resources/locale/ja.json b/desktop/onionshare/resources/locale/ja.json index 89f98bcd..49fcfdbf 100644 --- a/desktop/onionshare/resources/locale/ja.json +++ b/desktop/onionshare/resources/locale/ja.json @@ -138,7 +138,7 @@ "mode_settings_autostop_timer_checkbox": "指定の日時に Onion Service を停止", "mode_settings_autostart_timer_checkbox": "指定の日時に Onion Service を開始", "mode_settings_public_checkbox": "公開の OnionShare のサービスとして設定(秘密鍵が無効となります)", - "mode_settings_persistent_checkbox": "OnionShare を開始する際に、このタブを常に開く", + "mode_settings_persistent_checkbox": "OnionShare の起動時に常にこのタブを開く (Onion アドレスは変更されません)", "mode_settings_advanced_toggle_hide": "詳細設定を非表示", "mode_settings_advanced_toggle_show": "詳細設定を表示", "gui_quit_warning_cancel": "キャンセル", @@ -254,5 +254,6 @@ "gui_general_settings_window_title": "基本設定", "gui_close_tab_warning_chat_description": "チャットサーバーをホスト中のタブを閉じてもよろしいですか?", "waitress_web_server_error": "ウェブサーバーを起動する際に問題が生じました", - "gui_chat_mode_explainer": "チャットモードを使用すると、Tor Browser で他のユーザーとチャットを行うことができるようになります。

チャットの履歴は OnionShare には保存されません。Tor Browser を終了すると、チャットの履歴は消去されます。" + "gui_chat_mode_explainer": "チャットモードを使用すると、Tor Browser で他のユーザーとチャットを行うことができるようになります。

チャットの履歴は OnionShare には保存されません。Tor Browser を終了すると、チャットの履歴は消去されます。", + "mode_settings_persistent_autostart_on_launch_checkbox": "OnionShare の起動時にこの Onion Service を自動的に開始する" } diff --git a/desktop/onionshare/resources/locale/kab.json b/desktop/onionshare/resources/locale/kab.json index 0967ef42..7c6c6ecf 100644 --- a/desktop/onionshare/resources/locale/kab.json +++ b/desktop/onionshare/resources/locale/kab.json @@ -1 +1,45 @@ -{} +{ + "gui_settings_window_title": "Iɣewwaṛen", + "gui_general_settings_window_title": "Amatu", + "gui_settings_autoupdate_timestamp_never": "Werǧin", + "gui_settings_authenticate_password_option": "Awal n uεeddi", + "gui_settings_password_label": "Awal n uεeddi", + "gui_settings_bridge_custom_placeholder": "type address:port (one per line)", + "gui_settings_button_save": "Sekles", + "gui_settings_button_cancel": "Sefsex", + "gui_settings_button_help": "Tallalt", + "gui_tor_connection_ask_open_settings": "Ih", + "gui_tor_connection_ask_quit": "Ffeɣ", + "gui_status_indicator_share_working": "Asenker…", + "gui_status_indicator_share_started": "Beṭṭu", + "gui_status_indicator_receive_working": "Asenker…", + "gui_new_tab": "Iccer amaynut", + "mode_settings_receive_data_dir_browse_button": "Snirem", + "gui_add": "Rnu", + "gui_add_files": "Rnu ifuyla", + "gui_add_folder": "Rnu akaram", + "gui_remove": "Kkes", + "gui_file_selection_remove_all": "Kkes-iten akk", + "gui_choose_items": "Fren", + "gui_qr_label_auth_string_title": "Tasarut tusligt", + "gui_hide": "Ffer", + "gui_please_wait_no_button": "Asenker…", + "gui_status_indicator_chat_working": "Asenker…", + "gui_settings_language_label": "Tutlayt", + "gui_settings_theme_label": "Asentel", + "gui_settings_theme_auto": "Awurman", + "gui_settings_theme_light": "Aceɛlal", + "gui_settings_theme_dark": "Ubrik", + "systray_menu_exit": "Ffeɣ", + "gui_all_modes_history": "Amazray", + "gui_all_modes_clear_history": "Sfeḍ kullec", + "gui_main_page_share_button": "Bdu beṭṭu", + "gui_tab_name_share": "Bḍu", + "gui_tab_name_website": "Asmel n web", + "gui_tab_name_chat": "Asqerdec", + "gui_quit_warning_quit": "Ffeɣ", + "gui_quit_warning_cancel": "Sefsex", + "gui_close_tab_warning_cancel": "Sefsex", + "moat_captcha_submit": "Azen", + "moat_captcha_reload": "Smiren" +} diff --git a/desktop/onionshare/resources/locale/sk.json b/desktop/onionshare/resources/locale/sk.json index 4814a729..14314b56 100644 --- a/desktop/onionshare/resources/locale/sk.json +++ b/desktop/onionshare/resources/locale/sk.json @@ -150,7 +150,7 @@ "gui_quit_warning_cancel": "Zrušiť", "mode_settings_advanced_toggle_show": "Zobraziť rozšírené nastavenia", "mode_settings_advanced_toggle_hide": "Skryť rozšírené nastavenia", - "mode_settings_persistent_checkbox": "Vždy otvoriť túto kartu pri spustení OnionShare", + "mode_settings_persistent_checkbox": "Vždy otvoriť túto kartu pri spustení služby OnionShare (adresa onion zostane rovnaká)", "mode_settings_public_checkbox": "Toto je verejná služba OnionShare ( vypne súkromný kľúč)", "mode_settings_autostart_timer_checkbox": "Spustiť onion službu v plánovanom čase", "mode_settings_autostop_timer_checkbox": "Zastaviť onion službu v plánovanom čase", @@ -254,5 +254,6 @@ "gui_autoconnect_circumventing_censorship_got_bridges": "Premostenie vytvorené. Opätovné pripájanie k Tor…", "gui_close_tab_warning_chat_description": "Zatvoriť kartu, ktorá je hostiteľom diskusného servera?", "moat_bridgedb_error": "Nepodarilo sa kontaktovať BridgeDB.", - "mode_tor_not_connected_label": "Služba OnionShare nie je pripojená k sieti Tor" + "mode_tor_not_connected_label": "Služba OnionShare nie je pripojená k sieti Tor", + "mode_settings_persistent_autostart_on_launch_checkbox": "Automaticky spustiť túto službu Onion pri spustení služby OnionShare" } diff --git a/desktop/onionshare/resources/locale/sq.json b/desktop/onionshare/resources/locale/sq.json index 995e09df..6267c5a3 100644 --- a/desktop/onionshare/resources/locale/sq.json +++ b/desktop/onionshare/resources/locale/sq.json @@ -212,7 +212,7 @@ "mode_settings_advanced_toggle_show": "Shfaq rregullime të mëtejshme", "mode_settings_advanced_toggle_hide": "Fshihi rregullimet e mëtejshme", "mode_settings_title_label": "Titull vetjak", - "mode_settings_persistent_checkbox": "Hape përherë këtë skedë, kur niset OnionShare", + "mode_settings_persistent_checkbox": "Hape përherë këtë skedë, kur niset OnionShare (adresa Onion do të mbetet po ajo)", "mode_settings_public_checkbox": "Ky është një shërbim OnionShare publik (çaktivizon kyç publik)", "mode_settings_autostart_timer_checkbox": "Nise shërbimin Onion në kohën e planifikuar", "mode_settings_autostop_timer_checkbox": "Ndale shërbimin Onion në kohën e planifikuar", @@ -254,5 +254,6 @@ "mode_tor_not_connected_label": "OnionShare s’është i lidhur me rrjetin Tor", "waitress_web_server_error": "Pati një problem me nisjen e shërbyesit", "gui_close_tab_warning_chat_description": "Të mbyllet skeda që strehon një shërbyes fjalosjeje?", - "gui_chat_mode_explainer": "Mënyra fjalosje ju lejon të bisedoni në mënyrë ndërvepruese me të tjerë, në Shfletuesin Tor.

Historiku i fjalosjes nuk depozitohet në OnionShare. Historiku i fjalosjes do të zhduket, kur të mbyllni Shfletuesin Tor." + "gui_chat_mode_explainer": "Mënyra fjalosje ju lejon të bisedoni në mënyrë ndërvepruese me të tjerë, në Shfletuesin Tor.

Historiku i fjalosjes nuk depozitohet në OnionShare. Historiku i fjalosjes do të zhduket, kur të mbyllni Shfletuesin Tor.", + "mode_settings_persistent_autostart_on_launch_checkbox": "Nise automatikisht këtë shërbim Onion, kur niset OnionShare" } diff --git a/desktop/onionshare/resources/locale/uk.json b/desktop/onionshare/resources/locale/uk.json index e9be41e1..03c034dc 100644 --- a/desktop/onionshare/resources/locale/uk.json +++ b/desktop/onionshare/resources/locale/uk.json @@ -140,7 +140,7 @@ "mode_settings_autostop_timer_checkbox": "Зупинити службу onion у запланований час", "mode_settings_autostart_timer_checkbox": "Запускати службу onion у запланований час", "mode_settings_public_checkbox": "Це загальнодоступна служба OnionShare (вимикає приватний ключ)", - "mode_settings_persistent_checkbox": "Завжди відкривати цю вкладку під час запуску OnionShare", + "mode_settings_persistent_checkbox": "Завжди відкривати цю вкладку під час запуску OnionShare (onion-адреса залишиться та ж сама)", "mode_settings_advanced_toggle_hide": "Сховати розширені налаштування", "mode_settings_advanced_toggle_show": "Показати розширені налаштування", "gui_quit_warning_description": "Вийти та закрити всі вкладки, навіть якщо спільний доступ активний на деяких з них?", @@ -254,5 +254,6 @@ "gui_autoconnect_no_bridge": "Спробувати ще раз без мосту", "waitress_web_server_error": "Під час запуску вебсервера сталася помилка", "gui_close_tab_warning_chat_description": "Закрити вкладку, на якій розміщено чат-сервер?", - "gui_chat_mode_explainer": "Режим бесіди дозволяє вам інтерактивно спілкуватися з іншими користувачами в Браузері Tor.

Історія бесід не зберігається в OnionShare. Історія бесід зникне, коли ви закриєте Браузер Tor." + "gui_chat_mode_explainer": "Режим бесіди дозволяє вам інтерактивно спілкуватися з іншими користувачами в Браузері Tor.

Історія бесід не зберігається в OnionShare. Історія бесід зникне, коли ви закриєте Браузер Tor.", + "mode_settings_persistent_autostart_on_launch_checkbox": "Автоматично запускати цю onion-службу під час запуску OnionShare" } diff --git a/docs/source/locale/bg/LC_MESSAGES/advanced.po b/docs/source/locale/bg/LC_MESSAGES/advanced.po index 6b39fce4..b76481b6 100644 --- a/docs/source/locale/bg/LC_MESSAGES/advanced.po +++ b/docs/source/locale/bg/LC_MESSAGES/advanced.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: OnionShare 2.5\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" "POT-Creation-Date: 2025-02-11 14:47+1100\n" -"PO-Revision-Date: 2025-02-12 22:02+0000\n" +"PO-Revision-Date: 2025-02-14 00:02+0000\n" "Last-Translator: 109247019824 <109247019824@users.noreply.hosted.weblate.org>" "\n" "Language-Team: none\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 5.10-dev\n" +"X-Generator: Weblate 5.10-rc\n" #: ../../source/advanced.rst:2 msgid "Advanced Usage" @@ -234,8 +234,8 @@ msgid "" "If you installed OnionShare using the Snap package, you can run ``onionshare." "cli`` to access the command-line interface version." msgstr "" -"Ако сте инсталирали OnionShare с помощта на пакета Snap, можете да изпълните " -"``onionshare.cli``, за да получите достъп до версията на интерфейса за " +"Ако сте инсталирали OnionShare с помощта на пакет от Snap, можете да " +"изпълните ``onionshare.cli``, за да получите достъп до интерфейса за " "команднден ред." #: ../../source/advanced.rst:95 @@ -259,6 +259,7 @@ msgid "" "In the Windows installation, the executable ``onionshare-cli.exe`` is " "available." msgstr "" +"В инсталацията за Windows е достъпен изпълнимият файл ``onionshare-cli.exe``." #: ../../source/advanced.rst:105 msgid "Usage" @@ -273,13 +274,14 @@ msgstr "" #: ../../source/advanced.rst:170 msgid "Running the CLI as a systemd unit file" -msgstr "" +msgstr "Работа с команден ред като файл на systemd" #: ../../source/advanced.rst:172 msgid "" "It is possible to automatically start OnionShare from the CLI using a " "systemd unit file." msgstr "" +"Възможно е OnionShare автоматично да бъде стартиран като файл на systemd." #: ../../source/advanced.rst:174 msgid "" @@ -287,10 +289,13 @@ msgid "" "mode, and want to start the same onion service every time your machine " "starts." msgstr "" +"Тази възможност е удачна ако целта ви е всеки път при стартиране на машината " +"да зареждат едни и същи услуги на Onion." #: ../../source/advanced.rst:176 msgid "To do this, you need to prepare some OnionShare json config first." msgstr "" +"За целта първо трябва да подготвите някои настройки на OnionShare в JSON." #: ../../source/advanced.rst:178 msgid "" @@ -299,6 +304,10 @@ msgid "" "the settings, but if you already have OnionShare installed, it probably " "looks much like this already::" msgstr "" +"Това е файлът с основните настройки на OnionShare. В този пример се намира в " +"``/home/user/.config/onionshare/onionshare.json``. Може да се наложи да " +"промените някои от настройките, но ако вече имате инсталирано приложението " +"OnionShare, вероятно файлът много прилича на този::" #: ../../source/advanced.rst:207 msgid "" @@ -306,6 +315,9 @@ msgid "" "user/.config/onionshare/persistent/my-persistent-onion.json``, that looks " "like this::" msgstr "" +"Забележете секцията „persistent_tabs“. Ще създадем файла ``/home/user/" +".config/onionshare/persistent/my-persistent-onion.json`` със следното " +"съдържание::" #: ../../source/advanced.rst:247 msgid "" diff --git a/docs/source/locale/ja/LC_MESSAGES/install.po b/docs/source/locale/ja/LC_MESSAGES/install.po index 382c2b76..e7e78bc8 100644 --- a/docs/source/locale/ja/LC_MESSAGES/install.po +++ b/docs/source/locale/ja/LC_MESSAGES/install.po @@ -6,9 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" -"Report-Msgid-Bugs-To: \n" +"Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" "POT-Creation-Date: 2025-02-11 14:47+1100\n" -"PO-Revision-Date: 2024-09-23 09:55+0000\n" +"PO-Revision-Date: 2025-02-14 00:02+0000\n" "Last-Translator: Himmel \n" "Language-Team: ja \n" "Language: ja\n" @@ -16,6 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 5.10-rc\n" "Generated-By: Babel 2.14.0\n" #: ../../source/install.rst:2 @@ -385,14 +386,12 @@ msgid "Signing key" msgstr "署名鍵" #: ../../source/install.rst:117 -#, fuzzy msgid "" "Packages are signed by the core developer who is responsible for the " "particular release. Here is the GPG key information for each of the core " "developers of OnionShare:" -msgstr "" -"パッケージは、特定のリリースを担当するコア開発者によって署名されます。以下は " -"OnionShare のコア開発者の署名に関する情報です。" +msgstr "パッケージは、特定のリリースを担当するコア開発者によって署名されます。" +"OnionShare の各コア開発者の GPG 鍵情報は次のとおりです。" #: ../../source/install.rst:122 msgid "Micah Lee:" @@ -436,25 +435,22 @@ msgstr "" #: ../../source/install.rst:130 msgid "Miguel Jacq:" -msgstr "" +msgstr "Miguel Jacq:" #: ../../source/install.rst:129 -#, fuzzy msgid "" "PGP public key fingerprint ``00AE817C24A10C2540461A9C1D7CDE0234DB458D``." -msgstr "" -"PGP公開鍵のフィンガープリント ``927F419D7EC82C2F149C1BD1403C2657CD994F73``." +msgstr "PGP 公開鍵のフィンガープリント ``00AE817C24A10C2540461A9C1D7CDE0234DB458D``." #: ../../source/install.rst:130 -#, fuzzy msgid "" "You can download Miguel's key `from the keys.openpgp.org keyserver `_." msgstr "" -"Micah の鍵は keys.openpgp.org の\\ `鍵サーバー`_\\ からダウン" -"ロードできます。" +"Miguel の鍵は keys.openpgp.org の`鍵サーバー `_ " +"からダウンロードできます。" #: ../../source/install.rst:132 msgid "" diff --git a/docs/source/locale/sq/LC_MESSAGES/install.po b/docs/source/locale/sq/LC_MESSAGES/install.po index 45c45991..15fd9b4e 100644 --- a/docs/source/locale/sq/LC_MESSAGES/install.po +++ b/docs/source/locale/sq/LC_MESSAGES/install.po @@ -6,9 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6.1\n" -"Report-Msgid-Bugs-To: \n" +"Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" "POT-Creation-Date: 2025-02-11 14:47+1100\n" -"PO-Revision-Date: 2024-12-17 19:38+0000\n" +"PO-Revision-Date: 2025-02-14 00:02+0000\n" "Last-Translator: Besnik Bleta \n" "Language-Team: none\n" "Language: sq\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 5.9.2-dev\n" +"X-Generator: Weblate 5.10-rc\n" #: ../../source/install.rst:2 msgid "Installation" @@ -453,15 +453,11 @@ msgstr "" "Shenja gishtash kyçi publik PGP ``927F419D7EC82C2F149C1BD1403C2657CD994F73``." #: ../../source/install.rst:130 -#, fuzzy msgid "" "You can download Miguel's key `from the keys.openpgp.org keyserver `_." msgstr "" -"Kyçin e Mikas mund ta shkarkoni `që nga shërbyesi keys.openpgp.org i kyçeve " -"`_." #: ../../source/install.rst:132 msgid "" diff --git a/docs/source/locale/uk/LC_MESSAGES/advanced.po b/docs/source/locale/uk/LC_MESSAGES/advanced.po index 7f78a310..c593bff5 100644 --- a/docs/source/locale/uk/LC_MESSAGES/advanced.po +++ b/docs/source/locale/uk/LC_MESSAGES/advanced.po @@ -6,17 +6,18 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" -"Report-Msgid-Bugs-To: \n" +"Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" "POT-Creation-Date: 2025-02-11 14:47+1100\n" -"PO-Revision-Date: 2022-10-03 23:25+0000\n" +"PO-Revision-Date: 2025-02-14 00:02+0000\n" "Last-Translator: Ihor Hordiichuk \n" "Language-Team: none\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "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" +"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 5.10-rc\n" "Generated-By: Babel 2.14.0\n" #: ../../source/advanced.rst:2 @@ -77,15 +78,14 @@ msgstr "" "«автентифікацією клієнта»." #: ../../source/advanced.rst:28 -#, fuzzy msgid "" "The Tor Browser will ask you to enter your private key when you load an " "OnionShare service. If you want to allow the public to use your service, " "it's better to disable the private key altogether." msgstr "" "Браузер Tor попросить вас ввести свій приватний ключ під час завантаження " -"служби OnionShare. Якщо ви хочете дозволити громадськості користуватися " -"вашою службою, краще взагалі вимкнути закритий ключ." +"служби OnionShare. Якщо ви хочете дозволити користуватися вашою службою " +"всім, краще взагалі вимкнути приватний ключ." #: ../../source/advanced.rst:31 msgid "" @@ -139,16 +139,15 @@ msgstr "" "встановіть бажані дати та час." #: ../../source/advanced.rst:51 -#, fuzzy msgid "" "Services scheduled to start in the future display a countdown timer when the " "\"Start sharing\" button is clicked. Services scheduled to stop in the " "future display a countdown timer when started." msgstr "" "Служби, заплановані до запуску в майбутньому, показуватимуть таймер " -"зворотного відліку, коли натиснена кнопка «Розпочати надсилання». Служби, " -"які планується припинити в майбутньому, показують таймер зворотного відліку, " -"коли вони запускаються." +"зворотного відліку, коли натиснена кнопка «Розпочати надсилання». Служби з " +"черги припинення, показують таймер зворотного відліку, коли вони " +"запускаються." #: ../../source/advanced.rst:54 msgid "" @@ -186,21 +185,22 @@ msgstr "" #: ../../source/advanced.rst:73 msgid "Installing the CLI version" -msgstr "" +msgstr "Встановлення CLI-версії" #: ../../source/advanced.rst:75 msgid "" "If you have installed the Snap, macOS or Windows package, you already have " "the CLI version installed." msgstr "" +"Якщо ви встановили пакунок Snap, macOS або Windows, у вас вже встановлена " +"версія CLI." #: ../../source/advanced.rst:77 -#, fuzzy msgid "" "Alternatively, you can install just the command-line version of OnionShare " "using ``pip3``::" msgstr "" -"Ви можете встановити версію для командного рядка OnionShare лише " +"Також ви можете встановити версію OnionShare лише для командного рядка " "використовуючи ``pip3``::" #: ../../source/advanced.rst:81 @@ -227,37 +227,37 @@ msgstr "" #: ../../source/advanced.rst:90 msgid "Running the CLI from Snap" -msgstr "" +msgstr "Запуск CLI зі Snap" #: ../../source/advanced.rst:92 -#, fuzzy msgid "" "If you installed OnionShare using the Snap package, you can run ``onionshare." "cli`` to access the command-line interface version." msgstr "" -"Якщо ви встановили OnionShare за допомогою пакунка Snap, ви можете просто " -"запустити ``onionshare.cli`` для доступу до версії інтерфейсу командного " -"рядка." +"Якщо ви встановили OnionShare за допомогою пакунка Snap, ви можете запустити " +"``onionshare.cli`` для доступу до версії інтерфейсу командного рядка." #: ../../source/advanced.rst:95 msgid "Running the CLI from macOS" -msgstr "" +msgstr "Запуск CLI з macOS" #: ../../source/advanced.rst:97 msgid "" "From Terminal, you can run ``/Applications/OnionShare.app/Contents/MacOS/" "onionshare-cli --help``" msgstr "" +"З термінала ви можете запустити ``/Applications/OnionShare.app/Contents/" +"MacOS/onionshare-cli --help``" #: ../../source/advanced.rst:100 msgid "Running the CLI from Windows" -msgstr "" +msgstr "Запуск CLI з Windows" #: ../../source/advanced.rst:102 msgid "" "In the Windows installation, the executable ``onionshare-cli.exe`` is " "available." -msgstr "" +msgstr "В установці Windows доступний виконуваний файл ``onionshare-cli.exe``." #: ../../source/advanced.rst:105 msgid "Usage" @@ -271,13 +271,15 @@ msgstr "" #: ../../source/advanced.rst:170 msgid "Running the CLI as a systemd unit file" -msgstr "" +msgstr "Запуск CLI у вигляді юніт-файлу systemd" #: ../../source/advanced.rst:172 msgid "" "It is possible to automatically start OnionShare from the CLI using a " "systemd unit file." msgstr "" +"Існує можливість автоматичного запуску OnionShare з CLI за допомогою юніт-" +"файлу systemd." #: ../../source/advanced.rst:174 msgid "" @@ -285,10 +287,14 @@ msgid "" "mode, and want to start the same onion service every time your machine " "starts." msgstr "" +"Це може виявитися особливо корисним, якщо ви працюєте в 'постійному' режимі " +"та хочете запускати одну й ту ж onion-службу за кожного запуску машини." #: ../../source/advanced.rst:176 msgid "To do this, you need to prepare some OnionShare json config first." msgstr "" +"Для цього вам потрібно спочатку підготувати певну json-конфігурацію " +"OnionShare." #: ../../source/advanced.rst:178 msgid "" @@ -297,6 +303,10 @@ msgid "" "the settings, but if you already have OnionShare installed, it probably " "looks much like this already::" msgstr "" +"Ось основна конфігурація OnionShare. У цьому прикладі вона розміщена у файлі " +"``/home/user/.config/onionshare/onionshare.json``. Можливо, вам доведеться " +"змінити деякі налаштування, але якщо у вас вже встановлений OnionShare, " +"вона, ймовірно, вже має такий вигляд::" #: ../../source/advanced.rst:207 msgid "" @@ -304,12 +314,17 @@ msgid "" "user/.config/onionshare/persistent/my-persistent-onion.json``, that looks " "like this::" msgstr "" +"Зверніть увагу на секцію persistent_tabs. Тепер ми створюємо файл за адресою " +"``/home/user/.config/onionshare/persistent/my-persistent-onion.json``, який " +"має такий вигляд::" #: ../../source/advanced.rst:247 msgid "" "**Don't actually use this private key, service_id or client_auth keys! They " "are shown only as an example. Never share the private_key with anyone.**" msgstr "" +"**Не використовуйте цей приватний ключ, ключі service_id або client_auth! " +"Вони показані лише для прикладу. Ніколи нікому не повідомляйте private_key.**" #: ../../source/advanced.rst:249 msgid "" @@ -320,6 +335,13 @@ msgid "" "unpin that tab once you've generated it the first time. Or, you can leave it " "where it is, and use that persistent file in your systemd unit file below." msgstr "" +"Найпростіший спосіб згенерувати адресу onion і приватний ключ — це спочатку " +"створити «закріплену» вкладку OnionShare у застосунку для комп'ютерів і " +"розпочати надсилання перший раз. Це збереже постійні налаштування у вашій " +"теці ``.config/onionshare/persistent/`` з довільною назвою. Ви можете " +"відкріпити цю вкладку після першого генерування. Або ви можете залишити її " +"там, де вона є, і використовувати цей постійний файл у вашому юніт-файлі " +"systemd нижче." #: ../../source/advanced.rst:251 msgid "" @@ -328,10 +350,15 @@ msgid "" "as well as changes to any paths to the onionshare-cli binary or the paths to " "your JSON configs and shares." msgstr "" +"Тепер ви можете створити юніт-файл systemd в ``/etc/systemd/system/" +"onionshare-cli.service``. Не забудьте відкоригувати User і Group відповідно " +"до ваших власних користувача/групи, а також змінити будь-які шляхи до " +"бінарного файлу onionshare-cli або шляхи до ваших JSON конфігурацій і " +"спільних файлів." #: ../../source/advanced.rst:253 msgid "The systemd unit file should look like this::" -msgstr "" +msgstr "Юніт-файл systemd повинен мати схожий вигляд::" #: ../../source/advanced.rst:268 msgid "" @@ -339,11 +366,16 @@ msgid "" "``filenames`` section of the ``my-persistent-onion.json`` file, it's still " "necessary to specify it as the argument to the onionshare-cli command." msgstr "" +"Зауважте, що хоча файл ``/home/user/my-shared-file.txt`` було визначено в " +"розділі ``filenames`` файлу ``my-persistent-onion.json``, його все одно " +"необхідно вказати аргументом команди onionshare-cli." #: ../../source/advanced.rst:270 msgid "" "Be sure to run ``sudo systemctl daemon-reload`` after creating the unit file." msgstr "" +"Обов'язково виконайте ``sudo systemctl daemon-reload`` після створення " +"юніт-файлу." #: ../../source/advanced.rst:272 msgid "" @@ -351,12 +383,18 @@ msgid "" "``journalctl`` installed, you can run ``sudo journalctl -f -t onionshare-" "cli``, and you should see some output of your service starting::" msgstr "" +"Тепер ви можете виконати ```sudo systemctl start onionshare-cli.service``. " +"Якщо у вас встановлено ``journalctl``, ви можете виконати ``sudo journalctl -" +"f -t onionshare-cli``, і ви побачите вивід вашої служби, що запускається::" #: ../../source/advanced.rst:282 msgid "" "If you don't want your users to use a Private Key, set ``public`` to be " "``true`` in the ``general`` settings of the my-persistent-onion.json file." msgstr "" +"Якщо ви не хочете, щоб ваші користувачі використовували приватний ключ, " +"встановіть для ``public`` значення ``true`` в налаштуваннях ``general`` " +"файлу my-persistent-onion.json." #: ../../source/advanced.rst:286 msgid "Keyboard Shortcuts" @@ -376,7 +414,7 @@ msgstr "І з головного екрана вибору режиму::" #: ../../source/advanced.rst:303 msgid "Migrating your OnionShare data to another computer" -msgstr "" +msgstr "Перенесення даних OnionShare на інший комп'ютер" #: ../../source/advanced.rst:305 msgid "" @@ -384,24 +422,29 @@ msgid "" "computer. This is especially true if you had a 'persistent' onion address " "and you want to preserve it." msgstr "" +"Можливо, ви захочете перенести дані OnionShare під час переходу на інший " +"комп'ютер. Це особливо актуально, якщо у вас була «постійна» адреса onion і " +"ви хочете її зберегти." #: ../../source/advanced.rst:307 msgid "" "OnionShare stores all such data in a specific folder. Copy the relevant " "folder for your operating system below, to your new computer:" msgstr "" +"OnionShare зберігає всі такі дані у спеціальній теці. Скопіюйте відповідну " +"теку для вашої операційної системи на новий комп'ютер:" #: ../../source/advanced.rst:309 msgid "Linux: ``~/.config/onionshare``" -msgstr "" +msgstr "Linux: ``~/.config/onionshare``" #: ../../source/advanced.rst:310 msgid "macOS: ``~/Library/Application Support/OnionShare``" -msgstr "" +msgstr "macOS: ``~/Library/Application Support/OnionShare``" #: ../../source/advanced.rst:311 msgid "Windows: ``%APPDATA%\\OnionShare``" -msgstr "" +msgstr "Windows: ``%APPDATA%\\OnionShare``" #~ msgid "" #~ "By default, everything in OnionShare is temporary. As soon as you close " diff --git a/docs/source/locale/uk/LC_MESSAGES/features.po b/docs/source/locale/uk/LC_MESSAGES/features.po index 744de616..5e1a9be3 100644 --- a/docs/source/locale/uk/LC_MESSAGES/features.po +++ b/docs/source/locale/uk/LC_MESSAGES/features.po @@ -6,17 +6,18 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" -"Report-Msgid-Bugs-To: \n" +"Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" "POT-Creation-Date: 2025-02-11 14:47+1100\n" -"PO-Revision-Date: 2022-12-17 19:48+0000\n" -"Last-Translator: Dan \n" +"PO-Revision-Date: 2025-02-14 00:02+0000\n" +"Last-Translator: Ihor Hordiichuk \n" "Language-Team: none\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "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" +"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 5.10-rc\n" "Generated-By: Babel 2.14.0\n" #: ../../source/features.rst:4 @@ -350,7 +351,7 @@ msgstr "" #: ../../source/features.rst:102 msgid "Other caveats to be aware of in Receive Mode" -msgstr "" +msgstr "Інші застереження, на які слід звернути увагу в режимі отримання" #: ../../source/features.rst:104 msgid "" @@ -359,6 +360,10 @@ msgid "" "mode. Try Bronze or Gold to see if you are able to upload a message or a " "file." msgstr "" +"Були повідомлення, що OnionBrowser на пристроях iOS не може завантажувати " +"файли до OnionShare в режимі отримання, коли він працює в режимі безпеки " +"«Срібло». Спробуйте «Бронзовий» або «Золотий», щоб перевірити, чи зможете ви " +"завантажити повідомлення або файл." #: ../../source/features.rst:107 msgid "Host a Website" diff --git a/docs/source/locale/uk/LC_MESSAGES/install.po b/docs/source/locale/uk/LC_MESSAGES/install.po index cf162fce..296afa7a 100644 --- a/docs/source/locale/uk/LC_MESSAGES/install.po +++ b/docs/source/locale/uk/LC_MESSAGES/install.po @@ -6,9 +6,9 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" -"Report-Msgid-Bugs-To: \n" +"Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" "POT-Creation-Date: 2025-02-11 14:47+1100\n" -"PO-Revision-Date: 2024-09-11 22:10+0000\n" +"PO-Revision-Date: 2025-02-14 00:02+0000\n" "Last-Translator: Ihor Hordiichuk \n" "Language-Team: none\n" "Language: uk\n" @@ -17,6 +17,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 5.10-rc\n" "Generated-By: Babel 2.14.0\n" #: ../../source/install.rst:2 @@ -390,14 +391,14 @@ msgid "Signing key" msgstr "Ключ підпису" #: ../../source/install.rst:117 -#, fuzzy msgid "" "Packages are signed by the core developer who is responsible for the " "particular release. Here is the GPG key information for each of the core " "developers of OnionShare:" msgstr "" "Пакунки підписуються основним розробником, який відповідає за конкретний " -"випуск. Нижче наведено інформацію про основних розробників OnionShare:" +"випуск. Ось ключова інформація GPG для кожного з основних розробників " +"OnionShare:" #: ../../source/install.rst:122 msgid "Micah Lee:" @@ -441,25 +442,23 @@ msgstr "" #: ../../source/install.rst:130 msgid "Miguel Jacq:" -msgstr "" +msgstr "Miguel Jacq:" #: ../../source/install.rst:129 -#, fuzzy msgid "" "PGP public key fingerprint ``00AE817C24A10C2540461A9C1D7CDE0234DB458D``." msgstr "" -"Відбиток відкритого ключа PGP ``927F419D7EC82C2F149C1BD1403C2657CD994F73``." +"Відбиток відкритого ключа PGP ``00AE817C24A10C2540461A9C1D7CDE0234DB458D``." #: ../../source/install.rst:130 -#, fuzzy msgid "" "You can download Miguel's key `from the keys.openpgp.org keyserver `_." msgstr "" -"Ви можете завантажити ключ Micah `із сервера ключів keys.openpgp.org " -"`_." +"Ви можете завантажити ключ Miguel `із сервера ключів keys.openpgp.org " +"`_." #: ../../source/install.rst:132 msgid ""