From b393eeb9b577feafc55c765c8594ce837492bb54 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Mon, 4 Jul 2022 17:59:51 -0400 Subject: [PATCH 01/11] Remove python-version from snapcraft.yaml because it's not supported in core20 --- snap/snapcraft.yaml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 58eb9ce2..5c85f6d4 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -12,9 +12,9 @@ grade: stable # stable or devel confinement: strict architectures: -- build-on: amd64 -- build-on: arm64 -- build-on: armhf + - build-on: amd64 + - build-on: arm64 + - build-on: armhf apps: onionshare: @@ -45,7 +45,6 @@ parts: onionshare: source: ./desktop plugin: python - python-version: python3 python-packages: - setuptools - qrcode @@ -121,7 +120,6 @@ parts: onionshare-cli: source: ./cli plugin: python - python-version: python3 python-packages: - poetry stage-packages: From 12295aa6935e9e7d052206782280b8d7032e22a9 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Mon, 4 Jul 2022 18:00:44 -0400 Subject: [PATCH 02/11] Update get-tor.py to use Tor Browser 11.0.15 --- RELEASE.md | 5 +++++ desktop/scripts/get-tor.py | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/RELEASE.md b/RELEASE.md index ece4851f..824c9467 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -46,6 +46,11 @@ Make sure snapcraft packaging works. In `snap/snapcraft.yaml`: - [ ] All python packages in the `onionshare` part should be updated to match `desktop/pyproject.toml` - [ ] Test the snap package, ensure it works +Update to the latest version of Tor: + +- [ ] Edit `desktop/scripts/get-tor.py` to use the latest version of Tor Browser, and the latest sha256 checksums. +- [ ] Update the version of `meek`, `obfs4proxy`, and `snowflake` in the `desktop/scripts/build-pt-*` scripts, both the bash and PowerShell scripts. + Finally: - [ ] There must be a PGP-signed git tag for the version, e.g. for OnionShare 2.1, the tag must be `v2.1` diff --git a/desktop/scripts/get-tor.py b/desktop/scripts/get-tor.py index edd47320..8a134320 100644 --- a/desktop/scripts/get-tor.py +++ b/desktop/scripts/get-tor.py @@ -9,18 +9,18 @@ import subprocess import requests import click -torbrowser_version = "11.0.14" +torbrowser_version = "11.0.15" expected_win32_sha256 = ( - "c14b979c81310ad039985e047dbb5b8058662bb3105b9022f7b9e0d18a29d0d6" + "c2e09fd10f07e4cb8c6050d0b2556af17ec2cc8efaba9abc0db413f7a058e189" ) expected_win64_sha256 = ( - "ced3de06d089fbbeb8cee309971ac26983aba8eaf948fedce472d40cdd572301" + "46b2731ba0e771a477516c0c13a43a7223a767b1a8a0e53506d199f870b2adf3" ) expected_macos_sha256 = ( - "558ae5ab188f62feb04c6b2e7f43eae2361e8ec1718e0f4f927801411d911e22" + "408f46f8680d79b3452d1668e69227e566ffc177f82a02ee7e3480b720e6ad77" ) expected_linux64_sha256 = ( - "b606924fdf8237e697cf95c229189da5875c190875d729769655c7b67aeb9aa6" + "74301bf40527933efa20b4af599a82daede70cf13ce9ed0cf9e5b937e22264bf" ) win32_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/torbrowser-install-{torbrowser_version}_en-US.exe" From 29707c97bb0672d7acc4598b084f5cb43eb6f937 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Mon, 4 Jul 2022 18:08:58 -0400 Subject: [PATCH 03/11] Try fixing go parts in snapcraft --- RELEASE.md | 2 +- snap/snapcraft.yaml | 16 ++++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/RELEASE.md b/RELEASE.md index 824c9467..19120468 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -44,7 +44,7 @@ Make sure snapcraft packaging works. In `snap/snapcraft.yaml`: - [ ] The `tor`, `libevent`, and `obfs4` parts should be updated if necessary - [ ] All python packages in the `onionshare` part should be updated to match `desktop/pyproject.toml` -- [ ] Test the snap package, ensure it works +- [ ] With every commit to the `develop` branch, Snapcraft's CI should trigger builds. Make sure the builds all succeeded at https://snapcraft.io/onionshare/builds (you must be logged in), and test them Update to the latest version of Tor: diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 5c85f6d4..9a0f8f77 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -151,13 +151,11 @@ parts: obfs4: plugin: go - go-importpath: gitlab.com/yawning/obfs4 - source: https://gitlab.com/yawning/obfs4 + source: https://gitlab.com/yawning/obfs4.git source-type: git snowflake-client: plugin: go - go-importpath: git.torproject.org/pluggable-transports/snowflake.git/client source: https://git.torproject.org/pluggable-transports/snowflake.git source-type: git source-tag: v2.2.0 @@ -166,13 +164,11 @@ parts: meek-client: plugin: go - go-channel: stable - go-importpath: git.torproject.org/pluggable-transports/meek.git/meek-client - # Not sure why I have to do this, but it works - override-build: | - cd meek-client - mkdir /root/parts/meek-client/install/bin - go build -o /root/parts/meek-client/install/bin/meek-client ./... source: https://git.torproject.org/pluggable-transports/meek.git source-type: git source-tag: v0.37.0 + # # Not sure why I have to do this, but it works + # override-build: | + # cd meek-client + # mkdir /root/parts/meek-client/install/bin + # go build -o /root/parts/meek-client/install/bin/meek-client ./... From e695ebc7b1a307fb0e70bc3cbce6007011e348d0 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Mon, 4 Jul 2022 18:17:20 -0400 Subject: [PATCH 04/11] Override the meek-client build in snapcraft --- snap/snapcraft.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 9a0f8f77..f4b91346 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -167,8 +167,7 @@ parts: source: https://git.torproject.org/pluggable-transports/meek.git source-type: git source-tag: v0.37.0 - # # Not sure why I have to do this, but it works - # override-build: | - # cd meek-client - # mkdir /root/parts/meek-client/install/bin - # go build -o /root/parts/meek-client/install/bin/meek-client ./... + override-build: | + cd meek-client + mkdir /root/parts/meek-client/install/bin + go build -o /root/parts/meek-client/install/bin/meek-client ./... From 448540b6d082117bbf0ec3b7c680619fd48dd597 Mon Sep 17 00:00:00 2001 From: Miguel Jacq Date: Tue, 5 Jul 2022 10:17:22 +1000 Subject: [PATCH 05/11] Update Changelog for v2.6. Add Keyboard shortcut info into documentation --- CHANGELOG.md | 8 +- docs/gettext/.doctrees/advanced.doctree | Bin 26229 -> 27578 bytes docs/gettext/.doctrees/connecting.doctree | Bin 0 -> 14668 bytes docs/gettext/.doctrees/develop.doctree | Bin 37910 -> 37622 bytes docs/gettext/.doctrees/environment.pickle | Bin 40468 -> 40608 bytes docs/gettext/.doctrees/features.doctree | Bin 49757 -> 49385 bytes docs/gettext/.doctrees/help.doctree | Bin 7838 -> 7686 bytes docs/gettext/.doctrees/index.doctree | Bin 3550 -> 3438 bytes docs/gettext/.doctrees/install.doctree | Bin 23584 -> 23222 bytes docs/gettext/.doctrees/security.doctree | Bin 13667 -> 13465 bytes docs/gettext/.doctrees/tor.doctree | Bin 45052 -> 44500 bytes docs/gettext/advanced.pot | 14 ++- docs/gettext/connecting.pot | 113 ++++++++++++++++++ docs/gettext/develop.pot | 2 +- docs/gettext/features.pot | 2 +- docs/gettext/help.pot | 2 +- docs/gettext/index.pot | 2 +- docs/gettext/install.pot | 2 +- docs/gettext/security.pot | 2 +- docs/gettext/sphinx.pot | 2 +- docs/gettext/tor.pot | 2 +- docs/source/advanced.rst | 18 +++ docs/source/locale/de/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/el/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/en/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/es/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/fr/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/it/LC_MESSAGES/advanced.po | 35 +++++- .../locale/nb_NO/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/pl/LC_MESSAGES/advanced.po | 35 +++++- .../locale/pt_BR/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/ru/LC_MESSAGES/advanced.po | 56 +++++++-- docs/source/locale/tr/LC_MESSAGES/advanced.po | 35 +++++- docs/source/locale/uk/LC_MESSAGES/advanced.po | 35 +++++- 34 files changed, 578 insertions(+), 32 deletions(-) create mode 100644 docs/gettext/.doctrees/connecting.doctree create mode 100644 docs/gettext/connecting.pot diff --git a/CHANGELOG.md b/CHANGELOG.md index 33c0efbe..aad10a24 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,13 @@ ## 2.6 -* TODO +* Major feature: a new 'Quickstart' screen, which enables toggling on or off an animated automatic connection to Tor. This allows configuring network settings prior to automatic connection. +* Major feature: Censorship circumvention. Use new features in the upstream Tor API to try to automatically obtain bridges depending on the user's location. +* New feature: automatically fetch the built-in bridges from the upstream Tor API rather than hardcode them in each release of OnionShare. +* New feature: keyboard shortcuts to access various modes and menus, and accessibility hints +* Bug fix: Temporary Directory for serving the OnionShare web pages was broken on Windows +* Miscellaneous: many dependency updates, web page theming improvements, and packaging automation improvements. + ## 2.5 diff --git a/docs/gettext/.doctrees/advanced.doctree b/docs/gettext/.doctrees/advanced.doctree index c1b506192ac20b9acd6336701acb5323e94f9124..2e2d6840d43fb473f93f17896340167c9714d506 100644 GIT binary patch literal 27578 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 delta 6499 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 IL*D58AM=&)*Z=?k delta 7464 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 diff --git a/docs/gettext/.doctrees/features.doctree b/docs/gettext/.doctrees/features.doctree index 30703f6ca475b55135e2e9b28529d15a0ce921d2..4b52764c34cca9c9c08b3984e21555ad0093b840 100644 GIT binary patch delta 10597 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 g=@zY2h6s=17RxD%>V!Z delta 11030 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 delta 782 zcmZ{i&ubGw6vx^8qDfP<2Sc$xY;3iyX|tP6+HCv*B4Q84fGFNVn4NjaTbt~zyR%5q zqKHsh_EKg%>dm{5Kf#0Ey?gg!Pu`uR+DcKF#|&@gz0do8nI9LwO{ZR^-+nzzeb2|) zHuGrI2baskqo;)#OyX>8=;-x9k3tA^>M;{<~324tw0j*f%??{n7*lRd|Ub`RVx z$9B)@J6zsBza&0qFHcP&=YDuy*M0EAvcJR8bIV@P71`Wo@#>#TMmXUCq1zCY9pIhe z3tjy)(aqJxm)yI;gwrQoh42V-+^&pMinuKW8!syke39UnruEAgNiVo~jTgOz+mTO4;>+Kbqb)0Hh5=NM2gAj9sm KIdm+t%fA3-O$hn` diff --git a/docs/gettext/.doctrees/install.doctree b/docs/gettext/.doctrees/install.doctree index 579c16499abf354017526d08e9b34fe5f7bf5c49..2d98ee43eb25c549311e127a565d29a22be45c43 100644 GIT binary patch literal 23222 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 z z#l4x6_NH)_p~SHVNY%G8huA9IbqJjEAfxbu;UpBK6Md0vSY zNncdmEMf*eUc!ECUyU2*#%NPbRlY3~wP^|k+D%^b%QTcaQc*CX7F11uXwqVvwnJ8nF{x5`5qo{!EweRH$c#`p zK+HCXH%X>Pw*@o5JE7)wuKAQ8gHRm@i7M$F+@)T`5M#R3G#huRukImTQ*gpP9d;Y+ zNJemY1}zR24{wwRBS+)YBhZ*SY?r8IoMuZfdV``*d(FZUYTugihvWDIdnZDIf$!Z; zD5Yg?{~chyIEp-RLHZ5@yd36*{ux*B6Z;v{INgGjQu{gXV1xe7y-`QxBqA-dK*~w7 zN%40@eCNsw-?v!Y)tDK@?jd2wEf$x)$fhPWj3QAgMknSLp)(u`X(lEIy9b!oQc0_n zE6C`U3#MK#o2+QDT0UPbl}iN*ouvbZGpSjT7MFb+FKGvRTNrL{r(YByWx-+6n?%5y zuhZJkG(SCng5f1@6o%VOdT?u7BWufQ#iCKK77O`W5!)w*%(jUN#XQxVl=OTtV{OB) zT*Dy_z7OIXD5p(zi7;*=_9cba5K-fmgU3eyp9u!>QDVLCh#7aleAmTRm@+1{{t5wRD17WBH* zf^))79|b?`)o@w<_zoZ*CjZU9MuXoRbMkyXTn7(vVLT>I-n#}62OgyoE$R*hXJVU8>3eW8!U32* z?TC5-B-2;<;W_$%1HjD7&0P0TSm14NAf&Y3l0w-hh0=}+qbAv`}@)MVLg5bik_T1So8=xKL8WPnm0LRJKM3VzFJoIVa|= zJ3c!fh4&~Ow$Lr{&Ibg+P0p zQzOI#wGFk>DY^f7FD4k~UyxT3S7Q<^ ze1GwYx1HYUBEla5U`Emj2OU!W6vUYluhPYEiad4~6#4vKF+JzZZP@;eJHO5u|BXAp zk+44BmyclnL`#Lgv{xYRnOts_uJQJv&q*qid{7fF9fYlusg&0+;d!}69@si5`| ziR3~yD-!-&EayB)jW`VAa$YB@F^9^6D<17fsq8CT+ZokRt>WGmp?Yw+n8R<;FcYxFI9hSWHIcM~$M)5kKosfgMs{D>pFYb29|@?;Yk<`m zlc?E#FNg0DbiE6K+?lpdrnJ3_aR=#p7)oLx))Eql={327q*%7gEd1O~R6d5Cc}9(- z#$?NNvE7)1Gt_KssCExTS!L_(v}KZrW;(`ot7SV;O8T76eSBo<}RIw z#bJcs0Tr5am?SxjKr=>fWFW)Y*b9&DN=t7*8hk%6>47NL!?PRvhdG?dEo!(x2(o`q zcoY_lZdq$2x2w&HH~jq0ayW%R9i8;T;!h+u!J)1ZJB|(x9rfTVXxb`>M1-*S2lDTbhZRteGGXfdV~BNf7751Q$yShhZ*Az z@nvz#;jG6fv(w-^l0I&7o3XW4@;DKmV7DFMDu9XiMWcyu!en}H71JH1lR>~0T6j!r z z!(&lUQ5t1}kJ1kx8u&6WMDyF=!tiJ`ZVH3weKz}HpmTVf*5CtCHc-^!0rMj*t+U!g z$`cqj5kTLM`vSvLbeWQ8HgJZ6E>!9mII#gd95URFg=GRGj@h8o(++NtIust&dV$+W zUxoYW;;SQOuib4Vj0eQ>7d+C1EEf%UjK2YPJ3f&=ebx0@&vY9I?4#9jgko{ZqapX? zT!K@fw;WtB$654P1NAE?Zls08P)-Vgu%8HLu^1mB5D6u?CT`Z?Wi|YY#4hWmr%VYJ zoR#Z>T`@KBc9_)7kd^Ol&Y-kL5iR}2es~}Cpb@D@17|9M<$$LpSa;!3T!{tc z<5|YQH1sB&CMlJODlr`vSbQ2gXtyxMbfD=F0W+}sSEs^z&iaV`1&vpF z5MLiXPx0sIv4NbChQcJm;6uofLQ)XPjKm5QBmL7r@3meR=kDkhN`AFuEbgy?NnC>t zj;8W|k~9L&>t@>>XKmaf0Fm6lTsFfMb+3i@8MvBot-)~auhqcKm=wF^@Eu^CTXeN# zI2CCEh#t6z!k*ykpb;JS;}D;~MBs`5S7QP<*wxVul;O$DTdIKKuQ8gHJkZU0bWbH+ z%lInJLw-!-XWu^3=cm&&ZjJCj_CmwWl+-V7-uweHB)^9r`*r&l>^0ktPBFh~f7AYk z{XP4;(Xlsv(ydMwrb0j5`f!8u+tmF_^m76st>#hs`CV%ATlDjf^z&`{`2qcWpME|` zO@5w!UZI~3{d|E2_%-@r^rO?yYxMIe{Pe!v@)dHBm+jY=?X^t~?56$AP5XPB z9Ma7uLAlH!+-wqb%N(+04%H@yXp=*;$st+hP;7Dtmig?PeCExbtpJ-5W@dqzoNe1W zPH%sv`Bg;Pa23%v?62D2wZFp=&5uY%sG-A>9N)Y`FhUKTF^W(_MT!w>ev|&(|ZSACatG4BTkE1d8d<^@nPY-fK2LrgJZ>C_JuQ0+J=jpn8-RE zHr!SV0s>Kh;hwx0zyB)fRtoy4Vcim1WhXL4~sk?x)3)rL#TIcSaE?Q_wt7;(Y*Q5_I_;aw1WkuHej zv7+}*&~9ybdC61oaMcm*I1g&Lvw*^!gw%u4`Qn4mEMLAxmOZ+77nUZv+4kxz#RY2^ zRlXhp7eLMen($;|^8~^OjdRU9+KcQfz^8-ONv1k}J{>;se#oUq{*^#mj4%<(O{{=9 zh>Z`8SS9(BgpHR*wA+G*=JV*W4Hl*a7La8eYjNkdE)I7NoEyEgUhW32KQM?f!D`RNhu#$Kh8u9Ag^6Sn0hbp|&);pR3{82x41y`YNs F{{W*;cbWhI literal 23584 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 diff --git a/docs/gettext/.doctrees/security.doctree b/docs/gettext/.doctrees/security.doctree index e0963fea491acc02da1b2b932552cfec48f16cd2..22f086917a80462daea1217a3598db1db6c7d3a6 100644 GIT binary patch delta 2463 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 M+`MAY?}m~8ABC=26951J diff --git a/docs/gettext/.doctrees/tor.doctree b/docs/gettext/.doctrees/tor.doctree index 44a1843b7ab3391233dd2d8b863dfdce1ed33aee..f1e97261a46de9c50fbe443ffd5623688a5304c9 100644 GIT binary patch literal 44500 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 literal 45052 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\n" "Language-Team: LANGUAGE \n" @@ -123,3 +123,15 @@ msgstr "" #: ../../source/advanced.rst:91 msgid "Browse the command-line documentation by running ``onionshare --help``::" msgstr "" + +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "The OnionShare desktop application contains some keyboard shortcuts, for convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" diff --git a/docs/gettext/connecting.pot b/docs/gettext/connecting.pot new file mode 100644 index 00000000..b065c439 --- /dev/null +++ b/docs/gettext/connecting.pot @@ -0,0 +1,113 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) Micah Lee, et al. +# This file is distributed under the same license as the OnionShare package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: OnionShare 2.5\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2022-03-31 16:39+1100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../../source/connecting.rst:2 +msgid "Getting connected to Tor" +msgstr "" + +#: ../../source/connecting.rst:4 +msgid "When OnionShare starts, it will present a screen asking you to connect to the Tor network." +msgstr "" + +#: ../../source/connecting.rst:8 +msgid "You have several choices. You can click Connect to Tor to begin the connection process. If there are no problems with your network, including any attempts to block your access to the Tor network, this should hopefully work the first time." +msgstr "" + +#: ../../source/connecting.rst:10 +msgid "If you want to manually configure Bridges or other Tor settings before you connect, you can click 'Network Settings'." +msgstr "" + +#: ../../source/connecting.rst:13 +msgid "Automatic censorship circumvention" +msgstr "" + +#: ../../source/connecting.rst:15 +msgid "When OnionShare fails to connect to Tor, it might be because Tor is censored in your country." +msgstr "" + +#: ../../source/connecting.rst:17 +msgid "If this occurs, a screen will be displayed that will offer you to either 'Use a Bridge' (automatically choosing one for you), or 'Try Again without a Bridge'." +msgstr "" + +#: ../../source/connecting.rst:22 +msgid "What 'Use a Bridge' does" +msgstr "" + +#: ../../source/connecting.rst:24 +msgid "Bridges are a way to connect to the Tor network via intermediate services that are hopefully not blocked by your network provider (whereas normal connections might be)." +msgstr "" + +#: ../../source/connecting.rst:26 +msgid "Clicking 'Use a Bridge' will temporarily use the `Meek `_ domain-fronting proxy to make a non-Tor connection from your computer to the Tor Project's Censorship Circumvention API. The use of the Meek proxy is to hide the fact that you are trying to find a way to connect to Tor." +msgstr "" + +#: ../../source/connecting.rst:28 +msgid "Before clicking 'Use a Bridge', you can choose either 'Automatically determine my country from my IP address' or 'Manually select my country'." +msgstr "" + +#: ../../source/connecting.rst:30 +msgid "If you choose the former option, the Censorship Circumvention API will consider your IP address (yes, your real IP address) to determine what country you might reside in." +msgstr "" + +#: ../../source/connecting.rst:32 +msgid "Based on the country information, the API will try to automatically find bridges that suit your location." +msgstr "" + +#: ../../source/connecting.rst:36 +msgid "If you choose to manually select a country, OnionShare will still make a request to the Censorship Circumvention API, but will tell the API the country code. The API will then try to fetch bridges for that country that you specified." +msgstr "" + +#: ../../source/connecting.rst:38 +msgid "If it finds any such bridges, OnionShare will try to reconnect to Tor using those bridges." +msgstr "" + +#: ../../source/connecting.rst:40 +msgid "If the API does not find any bridges for your location, OnionShare will ask the API for 'fallback' options. At the time of writing, this is likely to be the obfs4 built-in bridges." +msgstr "" + +#: ../../source/connecting.rst:42 +msgid "OnionShare will also attempt to use the obfs4 built-in bridges if for some reason it could not connect to the API itself, or the API returned an error." +msgstr "" + +#: ../../source/connecting.rst:44 +msgid "It's important to note that the requests to the Censorship Circumvention API do not go over the Tor Network (because if you could connect to Tor already, you wouldn't need to connect to the API)." +msgstr "" + +#: ../../source/connecting.rst:46 +msgid "Even though it is hard for an adversary to discover where the Meek request is going, this may still be risky for some users. Therefore, it is an opt-in feature. The use of Meek and non-torified network requests are limited only to making one or two requests to the Censorship Circumvention API. Then Meek is stopped, and all further network requests happen over the Tor network." +msgstr "" + +#: ../../source/connecting.rst:49 +msgid "What 'Try again without a Bridge' does" +msgstr "" + +#: ../../source/connecting.rst:51 +msgid "Clicking 'Try again without a Bridge' will retry the normal OnionShare connection attempt to Tor. It won't talk to the Tor Censorship Circumvention API or use Meek." +msgstr "" + +#: ../../source/connecting.rst:54 +msgid "Connect to Tor automatically" +msgstr "" + +#: ../../source/connecting.rst:56 +msgid "You can toggle on the switch 'Connect to Tor automatically' before clicking 'Connect to Tor'. This means that next time OnionShare starts, it will automatically connect with its Tor connection settings from the last session, instead of presenting you with the connection options." +msgstr "" + +#: ../../source/connecting.rst:58 +msgid "If the connection fails, you can still try bridges or reconfigure Tor via the 'Network Settings'." +msgstr "" diff --git a/docs/gettext/develop.pot b/docs/gettext/develop.pot index 1e32bebb..ca837eb4 100644 --- a/docs/gettext/develop.pot +++ b/docs/gettext/develop.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/features.pot b/docs/gettext/features.pot index fd0a19e8..06d10c19 100644 --- a/docs/gettext/features.pot +++ b/docs/gettext/features.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/help.pot b/docs/gettext/help.pot index 1d8f17c8..52109e8b 100644 --- a/docs/gettext/help.pot +++ b/docs/gettext/help.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/index.pot b/docs/gettext/index.pot index 38d84a7f..c5d3abe5 100644 --- a/docs/gettext/index.pot +++ b/docs/gettext/index.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/install.pot b/docs/gettext/install.pot index 1ec3098f..3d93498d 100644 --- a/docs/gettext/install.pot +++ b/docs/gettext/install.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/security.pot b/docs/gettext/security.pot index 3c41ebba..1138573a 100644 --- a/docs/gettext/security.pot +++ b/docs/gettext/security.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/sphinx.pot b/docs/gettext/sphinx.pot index 2459f0b0..4049399e 100644 --- a/docs/gettext/sphinx.pot +++ b/docs/gettext/sphinx.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/gettext/tor.pot b/docs/gettext/tor.pot index b41e70ce..169da936 100644 --- a/docs/gettext/tor.pot +++ b/docs/gettext/tor.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.6\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-04 17:16-0400\n" +"POT-Creation-Date: 2022-07-05 10:22+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/docs/source/advanced.rst b/docs/source/advanced.rst index 3f5a70ce..f76a2c6f 100644 --- a/docs/source/advanced.rst +++ b/docs/source/advanced.rst @@ -146,3 +146,21 @@ Browse the command-line documentation by running ``onionshare --help``:: --disable_csp Publish website: Disable the default Content Security Policy header (allows your website to use third-party resources) --custom_csp custom_csp Publish website: Set a custom Content Security Policy header -v, --verbose Log OnionShare errors to stdout, and web errors to disk + + + +Keyboard Shortcuts +------------------ + +The OnionShare desktop application contains some keyboard shortcuts, for convenience and accessibility:: + + Ctrl T - New Tab + Ctrl X - Closes current tab + +And from the main mode chooser screen:: + + Ctrl S - Share mode + Ctrl R - Receive mode + Ctrl W - Website mode + Ctrl C - Chat mode + Ctrl H - Settings tab diff --git a/docs/source/locale/de/LC_MESSAGES/advanced.po b/docs/source/locale/de/LC_MESSAGES/advanced.po index daf8fb71..a7038b1f 100644 --- a/docs/source/locale/de/LC_MESSAGES/advanced.po +++ b/docs/source/locale/de/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-12-04 15:52+0000\n" "Last-Translator: Jannes Leßmann \n" "Language: de\n" @@ -239,6 +239,20 @@ msgstr "" "Die Dokumentation zur Kommandozeile kann über den Befehl ``onionshare " "--help`` abgerufen werden::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -593,3 +607,22 @@ msgstr "" #~ "kannst du den Dienst deaktvieren, bevor" #~ " er gemäß Zeitsteuerung starten würde." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/el/LC_MESSAGES/advanced.po b/docs/source/locale/el/LC_MESSAGES/advanced.po index c7aa39af..1a23ac9a 100644 --- a/docs/source/locale/el/LC_MESSAGES/advanced.po +++ b/docs/source/locale/el/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-10-09 09:04+0000\n" "Last-Translator: george kitsoukakis \n" "Language: el\n" @@ -235,6 +235,20 @@ msgstr "" "Μπορείτε να περιηγηθείτε στην τεκμηρίωση της γραμμής εντολών με " "``onionshare --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -670,3 +684,22 @@ msgstr "" #~ "συμβεί τίποτα μπορείτε να ακυρώσετε την" #~ " υπηρεσία πριν αυτή ξεκινήσει." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/en/LC_MESSAGES/advanced.po b/docs/source/locale/en/LC_MESSAGES/advanced.po index 2f5879d3..f88b27f5 100644 --- a/docs/source/locale/en/LC_MESSAGES/advanced.po +++ b/docs/source/locale/en/LC_MESSAGES/advanced.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -181,6 +181,20 @@ msgstr "" msgid "Browse the command-line documentation by running ``onionshare --help``::" msgstr "" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -627,3 +641,22 @@ msgstr "" #~ "--help``::" #~ msgstr "" +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/es/LC_MESSAGES/advanced.po b/docs/source/locale/es/LC_MESSAGES/advanced.po index c410ae93..d823f099 100644 --- a/docs/source/locale/es/LC_MESSAGES/advanced.po +++ b/docs/source/locale/es/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-10-08 07:03+0000\n" "Last-Translator: Username1234567890 \n" "Language: es\n" @@ -235,6 +235,20 @@ msgstr "" "Puedes navegar la documentación de línea de comando ejecutando " "``onionshare --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "" #~ "By default, everything in OnionShare is" #~ " temporary. As soon as you close " @@ -594,3 +608,22 @@ msgstr "" #~ "pasa nada, puedes cancelarlo antes de" #~ " su inicio programado." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/fr/LC_MESSAGES/advanced.po b/docs/source/locale/fr/LC_MESSAGES/advanced.po index 08f4f1aa..f9027e3f 100644 --- a/docs/source/locale/fr/LC_MESSAGES/advanced.po +++ b/docs/source/locale/fr/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-10-23 18:43+0000\n" "Last-Translator: aezjrareareare \n" "Language: fr\n" @@ -209,6 +209,20 @@ msgstr "" "Vous pouvez consultez la documentation de l'interface en ligne de " "commande en lançant ``onionshare --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -638,3 +652,22 @@ msgstr "" #~ " in the git repository." #~ msgstr "" +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/it/LC_MESSAGES/advanced.po b/docs/source/locale/it/LC_MESSAGES/advanced.po index 148d3404..ee74c7e1 100644 --- a/docs/source/locale/it/LC_MESSAGES/advanced.po +++ b/docs/source/locale/it/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2020-12-02 19:29+0000\n" "Last-Translator: x \n" "Language: it\n" @@ -214,6 +214,20 @@ msgstr "" "Puoi sfogliare la documentazione della riga di comando eseguendo " "``onionshare --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -675,3 +689,22 @@ msgstr "" #~ " in the git repository." #~ msgstr "" +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/nb_NO/LC_MESSAGES/advanced.po b/docs/source/locale/nb_NO/LC_MESSAGES/advanced.po index 50d701d1..eb129751 100644 --- a/docs/source/locale/nb_NO/LC_MESSAGES/advanced.po +++ b/docs/source/locale/nb_NO/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2022-02-14 08:55+0000\n" "Last-Translator: Allan Nordhøy \n" "Language: nb_NO\n" @@ -233,6 +233,20 @@ msgstr "" "Du kan utforske kommandolinje-dokumentasjonen ved å kjøre ``onionshare " "--help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -653,3 +667,22 @@ msgstr "" #~ "du avbryte tjenesten før dens planlagte" #~ " oppstart." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/pl/LC_MESSAGES/advanced.po b/docs/source/locale/pl/LC_MESSAGES/advanced.po index 059cf9c5..70bbbb42 100644 --- a/docs/source/locale/pl/LC_MESSAGES/advanced.po +++ b/docs/source/locale/pl/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-10-16 21:34+0000\n" "Last-Translator: Rafał Godek \n" "Language: pl\n" @@ -234,6 +234,20 @@ msgstr "" "Możesz przeglądać dokumentację wiersza poleceń, uruchamiając ``onionshare" " --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -643,3 +657,22 @@ msgstr "" #~ "możesz anulować usługę przed planowanym " #~ "rozpoczęciem." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/pt_BR/LC_MESSAGES/advanced.po b/docs/source/locale/pt_BR/LC_MESSAGES/advanced.po index ccf2dd3b..922ec935 100644 --- a/docs/source/locale/pt_BR/LC_MESSAGES/advanced.po +++ b/docs/source/locale/pt_BR/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-12-02 14:52+0000\n" "Last-Translator: Venilson Carneiro \n" "Language: pt_BR\n" @@ -233,6 +233,20 @@ msgstr "" "Você pode navegar pela documentação da linha de comando executando `` " "onionshare --help`` ::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -649,3 +663,22 @@ msgstr "" #~ "pode cancelar o serviço antes do " #~ "programado para iniciar." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/ru/LC_MESSAGES/advanced.po b/docs/source/locale/ru/LC_MESSAGES/advanced.po index dfa982c8..20f27790 100644 --- a/docs/source/locale/ru/LC_MESSAGES/advanced.po +++ b/docs/source/locale/ru/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-09-23 15:36+0000\n" "Last-Translator: Alexander Tarasenko \n" "Language: ru\n" @@ -46,8 +46,8 @@ msgid "" msgstr "" "Чтобы сделать любую вкладку постоянной, отметьте пункт \"Сохранить эту " "вкладку, и открывать ее автоматически при открытии OnionShare\" перед " -"запуском сервера. При сохранении вкладки появится иконка сиреневого цвета с " -"изображением булавки слева от статуса сервера." +"запуском сервера. При сохранении вкладки появится иконка сиреневого цвета" +" с изображением булавки слева от статуса сервера." #: ../../source/advanced.rst:18 msgid "" @@ -63,8 +63,8 @@ msgid "" "If you save a tab, a copy of its onion service secret key is stored on " "your computer." msgstr "" -"При сохранении вкладки копия ключа onion-сервиса также будет сохранена на " -"компьютере вместе с настройками OnionShare." +"При сохранении вкладки копия ключа onion-сервиса также будет сохранена на" +" компьютере вместе с настройками OnionShare." #: ../../source/advanced.rst:26 msgid "Turn Off Private Key" @@ -75,8 +75,8 @@ msgid "" "By default, all OnionShare services are protected with a private key, " "which Tor calls \"client authentication\"." msgstr "" -"По умолчанию все сервисы OnionShare защищены секретным ключом, который на " -"сленге Tor называется \"клиентская аутентификация\"." +"По умолчанию все сервисы OnionShare защищены секретным ключом, который на" +" сленге Tor называется \"клиентская аутентификация\"." #: ../../source/advanced.rst:30 msgid "" @@ -135,10 +135,11 @@ msgid "" "set the respective desired dates and times." msgstr "" "OnionShare поддерживает возможность точного планирования, когда сервис " -"должен запуститься или остановиться. Перед запуском сервера, нажмите на его " -"вкладке кнопку \"Показать дополнительные настройки\", отметьте нужные пункты:" -" \"Запустить onion-сервис в назначенное время\", \"Остановить onion-сервис в " -"назначенное время\", и укажите нужную дату и время для каждого пункта." +"должен запуститься или остановиться. Перед запуском сервера, нажмите на " +"его вкладке кнопку \"Показать дополнительные настройки\", отметьте нужные" +" пункты: \"Запустить onion-сервис в назначенное время\", \"Остановить " +"onion-сервис в назначенное время\", и укажите нужную дату и время для " +"каждого пункта." #: ../../source/advanced.rst:53 msgid "" @@ -234,6 +235,20 @@ msgstr "" "Чтобы просмотреть документацию консольной версии OnionShare запустите " "команду: ``onionshare --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -661,3 +676,22 @@ msgstr "" #~ " исчезнет, отправитель сможет остановить " #~ "таймер до автоматического запуска." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/tr/LC_MESSAGES/advanced.po b/docs/source/locale/tr/LC_MESSAGES/advanced.po index d1e76085..efb205da 100644 --- a/docs/source/locale/tr/LC_MESSAGES/advanced.po +++ b/docs/source/locale/tr/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-10-02 12:36+0000\n" "Last-Translator: Kaya Zeren \n" "Language: tr\n" @@ -233,6 +233,20 @@ msgstr "" "``onionshare --help`` komutunu çalıştırarak komut satırı " "belgelendirmesine göz atabilirsiniz::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "Make a symbolic link to the OnionShare command line binary line this::" #~ msgstr "" @@ -663,3 +677,22 @@ msgstr "" #~ "olmazsa, hizmetin başlama zamanından önce " #~ "iptal edebilirsiniz." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + diff --git a/docs/source/locale/uk/LC_MESSAGES/advanced.po b/docs/source/locale/uk/LC_MESSAGES/advanced.po index 8c54601f..f25e8864 100644 --- a/docs/source/locale/uk/LC_MESSAGES/advanced.po +++ b/docs/source/locale/uk/LC_MESSAGES/advanced.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OnionShare 2.3\n" "Report-Msgid-Bugs-To: onionshare-dev@lists.riseup.net\n" -"POT-Creation-Date: 2022-03-31 16:26+1100\n" +"POT-Creation-Date: 2022-07-05 10:24+1000\n" "PO-Revision-Date: 2021-09-11 01:40+0000\n" "Last-Translator: Ihor Hordiichuk \n" "Language: uk\n" @@ -231,6 +231,20 @@ msgstr "" "Ви можете переглянути документацію командного рядка, запустивши " "``onionshare --help``::" +#: ../../source/advanced.rst:153 +msgid "Keyboard Shortcuts" +msgstr "" + +#: ../../source/advanced.rst:155 +msgid "" +"The OnionShare desktop application contains some keyboard shortcuts, for " +"convenience and accessibility::" +msgstr "" + +#: ../../source/advanced.rst:160 +msgid "And from the main mode chooser screen::" +msgstr "" + #~ msgid "" #~ "By default, everything in OnionShare is" #~ " temporary. As soon as you close " @@ -576,3 +590,22 @@ msgstr "" #~ " ви можете вимкнути службу до " #~ "запланованого запуску." +#~ msgid "" +#~ "The OnionShare desktop application contains" +#~ " some keyboard shortcuts, for convenience" +#~ " and accessibility." +#~ msgstr "" + +#~ msgid "Ctrl T - New Tab Ctrl X - Closes current tab" +#~ msgstr "" + +#~ msgid "And from the main mode chooser screen:" +#~ msgstr "" + +#~ msgid "" +#~ "Ctrl S - Share mode Ctrl R -" +#~ " Receive mode Ctrl W - Website " +#~ "mode Ctrl C - Chat mode Ctrl " +#~ "H - Settings tab" +#~ msgstr "" + From dd3a5484a29e86ea9575f850e2adf5f375f4d0f0 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Mon, 4 Jul 2022 17:30:09 -0700 Subject: [PATCH 06/11] Fix onionshare-cli and onionshare snapcraft packaging --- snap/snapcraft.yaml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index f4b91346..91671e41 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -46,13 +46,10 @@ parts: source: ./desktop plugin: python python-packages: - - setuptools - qrcode - pyside2 == 5.15.2.1 - # Force using setup.py, prevent using setup-freeze.py or poetry override-build: | - rm setup-freeze.py pyproject.toml poetry.lock || true - snapcraftctl build + python3 setup.py install --prefix $SNAPCRAFT_PART_INSTALL stage-packages: - libasound2 - libatk1.0-0 @@ -68,7 +65,7 @@ parts: - libglx0 - libgtk-3-0 - libharfbuzz0b - - libicu60 + - libicu66 - libjpeg8 - liblcms2-2 - libnspr4 @@ -127,10 +124,12 @@ parts: - libssl-dev - libffi-dev - python3-dev + - python3-pip - cargo - stage: - - -usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 - - -usr/share/doc/libssl1.1/changelog.Debian.gz + override-build: | + poetry install + poetry build + pip3 install ./dist/onionshare_cli-*.whl --prefix $SNAPCRAFT_PART_INSTALL after: [tor, obfs4, snowflake-client, meek-client] tor: @@ -138,6 +137,8 @@ parts: source-checksum: sha256/9e9a5c67ad2acdd5f0f8be14ed591fed076b1708abf8344066990a0fa66fe195 source-type: tar plugin: autotools + autotools-configure-parameters: + - "--with-libevent-dir=/root/parts/libevent/install/usr/local" build-packages: - libssl-dev - zlib1g-dev From d4bf90fe791884ffd0bde196087588316642e843 Mon Sep 17 00:00:00 2001 From: Saptak S Date: Sat, 13 Aug 2022 19:18:34 +0530 Subject: [PATCH 07/11] Updates tor browser versions and hashes --- desktop/scripts/get-tor.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/desktop/scripts/get-tor.py b/desktop/scripts/get-tor.py index 8a134320..d8610826 100644 --- a/desktop/scripts/get-tor.py +++ b/desktop/scripts/get-tor.py @@ -9,18 +9,18 @@ import subprocess import requests import click -torbrowser_version = "11.0.15" +torbrowser_version = "11.5.1" expected_win32_sha256 = ( - "c2e09fd10f07e4cb8c6050d0b2556af17ec2cc8efaba9abc0db413f7a058e189" + "364a13582236a4fb63db4af2b3508fe97eb4e9691463e306c4ba5e9b8a6f2434" ) expected_win64_sha256 = ( - "46b2731ba0e771a477516c0c13a43a7223a767b1a8a0e53506d199f870b2adf3" + "243d9a20b5af1de4be76bb6414a3feeffc0c928eb9b71ec82e4c4282bf5fc6be" ) expected_macos_sha256 = ( - "408f46f8680d79b3452d1668e69227e566ffc177f82a02ee7e3480b720e6ad77" + "616d719572e4917d1264c622033afb1b4dd98e2553a0d09fd72470c99bad48e5" ) expected_linux64_sha256 = ( - "74301bf40527933efa20b4af599a82daede70cf13ce9ed0cf9e5b937e22264bf" + "2e0cefa6d4284c71a7816e310d935f9b9b5e4a3a408dc53330a0db0474489e8a" ) win32_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/torbrowser-install-{torbrowser_version}_en-US.exe" From c9b3878f83c193891f06496a8411b3392d03af7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Tue, 5 Jul 2022 17:53:55 +0000 Subject: [PATCH 08/11] New strings reworked --- desktop/onionshare/resources/locale/en.json | 48 ++++++++++----------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/desktop/onionshare/resources/locale/en.json b/desktop/onionshare/resources/locale/en.json index 8c0a8470..76e51dc4 100644 --- a/desktop/onionshare/resources/locale/en.json +++ b/desktop/onionshare/resources/locale/en.json @@ -2,8 +2,8 @@ "not_a_readable_file": "{0:s} is not a readable file.", "other_page_loaded": "Address loaded", "incorrect_password": "Incorrect password", - "close_on_autostop_timer": "Stopped because auto-stop timer ran out", - "closing_automatically": "Stopped because transfer is complete", + "close_on_autostop_timer": "Stopped because the auto-stop timer ran out", + "closing_automatically": "Stopped because the transfer is complete", "large_filesize": "Warning: Sending a large share could take hours", "gui_drag_and_drop": "Drag and drop files and folders to start sharing", "gui_add": "Add", @@ -43,24 +43,24 @@ "zip_progress_bar_format": "Compressing: %p%", "gui_tor_settings_window_title": "Tor Settings", "gui_autoconnect_description": "OnionShare relies on the Tor Network, run by thousands of volunteers around the world.", - "gui_enable_autoconnect_checkbox": "Connect to Tor automatically", - "gui_autoconnect_failed_to_connect_to_tor": "Failed to Connect to Tor", - "gui_autoconnect_trying_to_connect_to_tor": "Trying to Connect to Tor...", - "gui_autoconnect_connection_error_msg": "Are you connected to the internet?", - "gui_autoconnect_bridge_description": "It's also possible that your internet is being censored. You might be able to bypass this using a bridge.", - "gui_autoconnect_bridge_detect_automatic": "Automatically determine my country from my IP address for bridge settings", - "gui_autoconnect_bridge_detect_manual": "Manually select my country for bridge settings", + "gui_enable_autoconnect_checkbox": "Auto-connect to Tor", + "gui_autoconnect_failed_to_connect_to_tor": "Could not connect to Tor", + "gui_autoconnect_trying_to_connect_to_tor": "Connecting to Tor…", + "gui_autoconnect_connection_error_msg": "Make sure you are connected to the Internet.", + "gui_autoconnect_bridge_description": "You might be able to connect using a bridge if your Internet connection is censored.", + "gui_autoconnect_bridge_detect_automatic": "Determine my country from my IP address for bridge settings", + "gui_autoconnect_bridge_detect_manual": "Select my country for bridge settings manually", "gui_autoconnect_bridge_setting_options": "Bridge Settings", "gui_autoconnect_start": "Connect to Tor", "gui_autoconnect_configure": "Network Settings", - "gui_autoconnect_no_bridge": "Try again without bridge", - "gui_autoconnect_try_again_without_a_bridge": "Try again without a Bridge", - "gui_autoconnect_circumventing_censorship": "Trying to resolve connectivity issues", - "gui_autoconnect_circumventing_censorship_starting_circumvention": "Starting censorship circumvention process", - "gui_autoconnect_circumventing_censorship_starting_meek": "Starting Meek for domain-fronting", - "gui_autoconnect_circumventing_censorship_requesting_bridges": "Requesting bridges from the Tor Censorship Circumvention API", - "gui_autoconnect_circumventing_censorship_got_bridges": "Got bridges! Trying to reconnect to Tor", - "gui_autoconnect_could_not_connect_to_tor_api": "Could not connect to the Tor API. Make sure you are connected to the internet before trying again.", + "gui_autoconnect_no_bridge": "Try again without bridges", + "gui_autoconnect_try_again_without_a_bridge": "Try again without bridges", + "gui_autoconnect_circumventing_censorship": "Resolving connectivity issues…", + "gui_autoconnect_circumventing_censorship_starting_circumvention": "Circumventing censorship…", + "gui_autoconnect_circumventing_censorship_starting_meek": "Establishing Meek bridge for domain-fronting…", + "gui_autoconnect_circumventing_censorship_requesting_bridges": "Requesting bridges from the Tor censorship circumvention API…", + "gui_autoconnect_circumventing_censorship_got_bridges": "Bridges established. Reconnecting to Tor…", + "gui_autoconnect_could_not_connect_to_tor_api": "Could not connect to the Tor API. Make sure you are connected to the Internet before trying again.", "gui_settings_window_title": "Settings", "gui_general_settings_window_title": "General", "gui_settings_autoupdate_label": "Check for new version", @@ -82,10 +82,10 @@ "gui_settings_authenticate_password_option": "Password", "gui_settings_password_label": "Password", "gui_settings_tor_bridges": "Connect using a Tor bridge?", - "gui_settings_tor_bridges_label": "Bridges helps your traffic enter the Tor Network where Tor access is blocked. Depending on where you are, one bridge may work better than another.", + "gui_settings_tor_bridges_label": "Bridges help your traffic enter the Tor Network if Tor access is blocked. Depending on where you connect from, one bridge may work better than another.", "gui_settings_bridge_use_checkbox": "Use a bridge", "gui_settings_bridge_radio_builtin": "Select a built-in bridge", - "gui_settings_bridge_none_radio_option": "Don't use a bridge", + "gui_settings_bridge_none_radio_option": "Don't use bridges", "gui_settings_meek_lite_expensive_warning": "Warning: The meek-azure bridges are very costly for the Tor Project to run.

Only use them if unable to connect to Tor directly, via obfs4 transports, or other normal bridges.", "gui_settings_bridge_moat_radio_option": "Request a bridge from torproject.org", "gui_settings_bridge_moat_button": "Request a New Bridge", @@ -115,7 +115,7 @@ "gui_server_autostop_timer_expired": "The auto-stop timer already ran out. Please adjust it to start sharing.", "gui_server_autostart_timer_expired": "The scheduled time has already passed. Please adjust it to start sharing.", "gui_autostop_timer_cant_be_earlier_than_autostart_timer": "The auto-stop time can't be the same or earlier than the auto-start time. Please adjust it to start sharing.", - "gui_server_doesnt_support_stealth": "Sorry, this version of Tor doesn't support stealth (Client Authentication). Please try with a newer version of Tor, or use 'public' mode if it doesn't need to be private.", + "gui_server_doesnt_support_stealth": "Sorry, this version of Tor doesn't support stealth (client authentication). Please try with a newer version of Tor, or use 'public' mode if it doesn't need to be private.", "share_via_onionshare": "Share via OnionShare", "gui_share_url_description": "Anyone with this OnionShare address and private key can download your files using the Tor Browser: ", "gui_share_url_public_description": "Anyone with this OnionShare address can download your files using the Tor Browser: ", @@ -199,21 +199,21 @@ "gui_tab_name_receive": "Receive", "gui_tab_name_website": "Website", "gui_tab_name_chat": "Chat", - "gui_close_tab_warning_title": "Are you sure?", + "gui_close_tab_warning_title": "Close tab?", "gui_close_tab_warning_persistent_description": "Close persistent tab and lose the onion address it is using?", "gui_close_tab_warning_share_description": "Close tab that is sending files?", "gui_close_tab_warning_receive_description": "Close tab that is receiving files?", "gui_close_tab_warning_website_description": "Close tab that is hosting a website?", "gui_close_tab_warning_close": "Close", "gui_close_tab_warning_cancel": "Cancel", - "gui_quit_warning_title": "Are you sure?", + "gui_quit_warning_title": "Quit OnionShare?", "gui_quit_warning_description": "Quit and close all tabs, even though sharing is active in some of them?", "gui_quit_warning_quit": "Quit", "gui_quit_warning_cancel": "Cancel", "mode_settings_advanced_toggle_show": "Show advanced settings", "mode_settings_advanced_toggle_hide": "Hide advanced settings", "mode_settings_title_label": "Custom title", - "mode_settings_persistent_checkbox": "Save this tab, and automatically open it when I open OnionShare", + "mode_settings_persistent_checkbox": "Always open this tab when OnionShare is started", "mode_settings_public_checkbox": "This is a public OnionShare service (disables private key)", "mode_settings_autostart_timer_checkbox": "Start onion service at scheduled time", "mode_settings_autostop_timer_checkbox": "Stop onion service at scheduled time", @@ -253,4 +253,4 @@ "moat_captcha_error": "Incorrect solution. Please try again.", "moat_solution_empty_error": "Enter the characters from the image", "mode_tor_not_connected_label": "OnionShare is not connected to the Tor network" -} \ No newline at end of file +} From a1bc2c19234c97ab2f96855268319bcf071cdebb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Tue, 5 Jul 2022 18:38:54 +0000 Subject: [PATCH 09/11] Reworked for v2.6 --- docs/source/advanced.rst | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/source/advanced.rst b/docs/source/advanced.rst index f76a2c6f..ea7482c2 100644 --- a/docs/source/advanced.rst +++ b/docs/source/advanced.rst @@ -6,12 +6,10 @@ Advanced Usage Save Tabs --------- -Everything in OnionShare is temporary by default. When OnionShare tabs are closed, addresses no longer exist and can't be used again. -Your OnionShare service can also be persistent. -If you host a website, persistence means it will be available on the same OnionShare address even if you reboot your computer. +Closing OnionShare tabs you host destroys them, preventing reuse. +Persistently hosted websites are available on the same address even if the computer they are shared from is rebooted. -To make any tab persistent, check the "Save this tab, and automatically open it when I open OnionShare" box before starting your server. -A purple pin icon appears to the left of its server status to tell you the tab is saved. +Make any tab persistent by checking the "Always open this tab when OnionShare is started" box before starting your server. .. image:: _static/screenshots/advanced-save-tabs.png From 296bee488cc73bcf332a2e5b599d756db6e73ffe Mon Sep 17 00:00:00 2001 From: Saptak Sengupta Date: Fri, 12 Aug 2022 12:47:36 +0530 Subject: [PATCH 10/11] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Allan Nordhøy --- desktop/onionshare/resources/locale/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desktop/onionshare/resources/locale/en.json b/desktop/onionshare/resources/locale/en.json index 76e51dc4..3adc1e46 100644 --- a/desktop/onionshare/resources/locale/en.json +++ b/desktop/onionshare/resources/locale/en.json @@ -42,7 +42,7 @@ "gui_please_wait": "Starting… Click to cancel.", "zip_progress_bar_format": "Compressing: %p%", "gui_tor_settings_window_title": "Tor Settings", - "gui_autoconnect_description": "OnionShare relies on the Tor Network, run by thousands of volunteers around the world.", + "gui_autoconnect_description": "OnionShare relies on the volunteer-operated Tor network.", "gui_enable_autoconnect_checkbox": "Auto-connect to Tor", "gui_autoconnect_failed_to_connect_to_tor": "Could not connect to Tor", "gui_autoconnect_trying_to_connect_to_tor": "Connecting to Tor…", From 14df2453d66d2a7676010d57e12ae0ad7ecd99f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Fri, 12 Aug 2022 12:01:52 +0000 Subject: [PATCH 11/11] Spelling: meek bridge --- desktop/onionshare/resources/locale/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desktop/onionshare/resources/locale/en.json b/desktop/onionshare/resources/locale/en.json index 3adc1e46..5dfb831e 100644 --- a/desktop/onionshare/resources/locale/en.json +++ b/desktop/onionshare/resources/locale/en.json @@ -57,7 +57,7 @@ "gui_autoconnect_try_again_without_a_bridge": "Try again without bridges", "gui_autoconnect_circumventing_censorship": "Resolving connectivity issues…", "gui_autoconnect_circumventing_censorship_starting_circumvention": "Circumventing censorship…", - "gui_autoconnect_circumventing_censorship_starting_meek": "Establishing Meek bridge for domain-fronting…", + "gui_autoconnect_circumventing_censorship_starting_meek": "Establishing meek bridge for domain-fronting…", "gui_autoconnect_circumventing_censorship_requesting_bridges": "Requesting bridges from the Tor censorship circumvention API…", "gui_autoconnect_circumventing_censorship_got_bridges": "Bridges established. Reconnecting to Tor…", "gui_autoconnect_could_not_connect_to_tor_api": "Could not connect to the Tor API. Make sure you are connected to the Internet before trying again.",