From 8f6a31ca0727dbb896a54e791781ffdce2903931 Mon Sep 17 00:00:00 2001 From: qvsojBJGiEnR <138215483+qvsojBJGiEnR@users.noreply.github.com> Date: Fri, 17 Nov 2023 23:29:25 +0000 Subject: [PATCH 01/13] Update app-settings.md (#3379) --- docs/guide/app-settings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guide/app-settings.md b/docs/guide/app-settings.md index 26817a20f2..5482a1297f 100644 --- a/docs/guide/app-settings.md +++ b/docs/guide/app-settings.md @@ -8,7 +8,7 @@ title: App settings To open app settings: - Open the app. -- Tap on your user profile image in the upper right-hand of the screen. +- Tap on your user profile image in the upper left-hand of the screen. - If you have more than one profile, tap the current profile again or choose Settings. ## Your profile settings From e91a1f151d1aee7a9a0b6dc1fe022cc01176e8e7 Mon Sep 17 00:00:00 2001 From: Stanislav Dmitrenko <7953703+avently@users.noreply.github.com> Date: Sat, 25 Nov 2023 03:24:16 +0800 Subject: [PATCH 02/13] desktop: hide profiles screen on remote host change (#3454) --- .../simplex/common/views/usersettings/UserProfilesView.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/usersettings/UserProfilesView.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/usersettings/UserProfilesView.kt index ec6d4e196e..401c3afedd 100644 --- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/usersettings/UserProfilesView.kt +++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/usersettings/UserProfilesView.kt @@ -21,14 +21,13 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import chat.simplex.common.model.* -import chat.simplex.common.platform.chatPasswordHash +import chat.simplex.common.platform.* import chat.simplex.common.ui.theme.* import chat.simplex.common.views.chat.item.ItemAction import chat.simplex.common.views.chatlist.UserProfilePickerItem import chat.simplex.common.views.chatlist.UserProfileRow import chat.simplex.common.views.database.PassphraseField import chat.simplex.common.views.helpers.* -import chat.simplex.common.platform.appPlatform import chat.simplex.common.views.CreateProfile import chat.simplex.res.MR import dev.icerock.moko.resources.StringResource @@ -138,6 +137,9 @@ fun UserProfilesView(m: ChatModel, search: MutableState, profileHidden: } } ) + KeyChangeEffect(remember { m.currentRemoteHost }.value) { + ModalManager.start.closeModal() + } } @Composable @@ -169,7 +171,7 @@ private fun UserProfilesLayout( } SectionSpacer() } - AppBarTitle(stringResource(MR.strings.your_chat_profiles)) + AppBarTitle(stringResource(MR.strings.your_chat_profiles), hostDevice(remember { chatModel.remoteHostId() })) SectionView { for (user in filteredUsers) { From fe9953fc4945f7b07abf1ebb8b0b8f5c64ec565a Mon Sep 17 00:00:00 2001 From: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com> Date: Fri, 24 Nov 2023 22:00:20 +0200 Subject: [PATCH 03/13] desktop: remove GC flag when building on windows (#3455) * desktop: remove GC flag when building on windows * add correct define --- .../common/src/commonMain/cpp/desktop/simplex-api.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c b/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c index e2cd7ed55c..1c4ad1142e 100644 --- a/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c +++ b/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c @@ -8,8 +8,13 @@ void hs_init_with_rtsopts(int * argc, char **argv[]); JNIEXPORT void JNICALL Java_chat_simplex_common_platform_CoreKt_initHS(JNIEnv *env, jclass clazz) { +#ifdef _WIN32 + int argc = 4; + char *argv[] = {"simplex", "+RTS", "-A16m", "-H64m", NULL}; // non-moving GC is broken on windows with GHC 9.4-9.6.3 +#else int argc = 5; char *argv[] = {"simplex", "+RTS", "-A16m", "-H64m", "-xn", NULL}; // see android/simplex-api.c for details +#endif char **pargv = argv; hs_init_with_rtsopts(&argc, &pargv); } From 4572fec61d3744ed849bb0701304cd5deb800903 Mon Sep 17 00:00:00 2001 From: Stanislav Dmitrenko <7953703+avently@users.noreply.github.com> Date: Sat, 25 Nov 2023 04:05:41 +0800 Subject: [PATCH 04/13] desktop (windows): fix lib build (#3456) --- .../common/src/commonMain/cpp/android/simplex-api.c | 7 +++++++ .../common/src/commonMain/cpp/desktop/simplex-api.c | 7 +++++++ libsimplex.dll.def | 1 + 3 files changed, 15 insertions(+) diff --git a/apps/multiplatform/common/src/commonMain/cpp/android/simplex-api.c b/apps/multiplatform/common/src/commonMain/cpp/android/simplex-api.c index 54478425f1..4fd62524de 100644 --- a/apps/multiplatform/common/src/commonMain/cpp/android/simplex-api.c +++ b/apps/multiplatform/common/src/commonMain/cpp/android/simplex-api.c @@ -49,6 +49,13 @@ Java_chat_simplex_common_platform_CoreKt_initHS(__unused JNIEnv *env, __unused j // from simplex-chat typedef long* chat_ctrl; +/* + When you start using any new function from Haskell libraries, + you have to add the function name to the file libsimplex.dll.def in the root directory. + And do the same by adding it into flake.nix file in the root directory, + Otherwise, Windows and Android libraries cannot be built. +*/ + extern char *chat_migrate_init(const char *path, const char *key, const char *confirm, chat_ctrl *ctrl); extern char *chat_send_cmd(chat_ctrl ctrl, const char *cmd); extern char *chat_send_remote_cmd(chat_ctrl ctrl, const int rhId, const char *cmd); diff --git a/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c b/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c index 1c4ad1142e..fb561dc38d 100644 --- a/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c +++ b/apps/multiplatform/common/src/commonMain/cpp/desktop/simplex-api.c @@ -22,6 +22,13 @@ Java_chat_simplex_common_platform_CoreKt_initHS(JNIEnv *env, jclass clazz) { // from simplex-chat typedef long* chat_ctrl; +/* + When you start using any new function from Haskell libraries, + you have to add the function name to the file libsimplex.dll.def in the root directory. + And do the same by adding it into flake.nix file in the root directory, + Otherwise, Windows and Android libraries cannot be built. +*/ + extern char *chat_migrate_init(const char *path, const char *key, const char *confirm, chat_ctrl *ctrl); extern char *chat_send_cmd(chat_ctrl ctrl, const char *cmd); extern char *chat_send_remote_cmd(chat_ctrl ctrl, const int rhId, const char *cmd); diff --git a/libsimplex.dll.def b/libsimplex.dll.def index 2d6e813d77..4255f4409c 100644 --- a/libsimplex.dll.def +++ b/libsimplex.dll.def @@ -1,6 +1,7 @@ LIBRARY libsimplex EXPORTS hs_init + hs_init_with_rtsopts chat_migrate_init chat_send_cmd chat_send_remote_cmd From da64b2e3cd07c49a3dcac49269bdee55967fc508 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Fri, 24 Nov 2023 20:37:14 +0000 Subject: [PATCH 05/13] android, desktop: fix translation --- .../common/src/commonMain/resources/MR/ru/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml b/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml index 6f13b3cf5d..91a37196ff 100644 --- a/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml +++ b/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml @@ -1575,7 +1575,7 @@ Чтобы скрыть нежелательные сообщения. Забыть компьютер? Видео невозможно декодировать. Пожалуйста, попробуйте другое видео или свяжитесь с разработчиками. - %@ соединен(а) + %s соединен(а) %s, %s и %d членов группы Это устройство Разблокировать члена группы From 3d09073bfc36d0875847b7013eb775d4952940f5 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Fri, 24 Nov 2023 20:46:00 +0000 Subject: [PATCH 06/13] ios: update core lib to 5.4.0.6 --- apps/ios/SimpleX.xcodeproj/project.pbxproj | 40 +++++++++++----------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/apps/ios/SimpleX.xcodeproj/project.pbxproj b/apps/ios/SimpleX.xcodeproj/project.pbxproj index 3326dc0601..3d78512e3f 100644 --- a/apps/ios/SimpleX.xcodeproj/project.pbxproj +++ b/apps/ios/SimpleX.xcodeproj/project.pbxproj @@ -120,6 +120,11 @@ 5CCD403727A5F9A200368C90 /* ScanToConnectView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CCD403627A5F9A200368C90 /* ScanToConnectView.swift */; }; 5CD67B8F2B0E858A00C510B1 /* hs_init.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CD67B8D2B0E858A00C510B1 /* hs_init.h */; settings = {ATTRIBUTES = (Public, ); }; }; 5CD67B902B0E858A00C510B1 /* hs_init.c in Sources */ = {isa = PBXBuildFile; fileRef = 5CD67B8E2B0E858A00C510B1 /* hs_init.c */; }; + 5CD67B962B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B912B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a */; }; + 5CD67B972B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B922B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a */; }; + 5CD67B982B11416700C510B1 /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B932B11416600C510B1 /* libffi.a */; }; + 5CD67B992B11416700C510B1 /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B942B11416600C510B1 /* libgmp.a */; }; + 5CD67B9A2B11416700C510B1 /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B952B11416700C510B1 /* libgmpxx.a */; }; 5CDCAD482818589900503DA2 /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CDCAD472818589900503DA2 /* NotificationService.swift */; }; 5CE2BA702845308900EC33A6 /* SimpleXChat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CE2BA682845308900EC33A6 /* SimpleXChat.framework */; }; 5CE2BA712845308900EC33A6 /* SimpleXChat.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 5CE2BA682845308900EC33A6 /* SimpleXChat.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; @@ -145,11 +150,6 @@ 5CEACCED27DEA495000BD591 /* MsgContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEACCEC27DEA495000BD591 /* MsgContentView.swift */; }; 5CEBD7462A5C0A8F00665FE2 /* KeyboardPadding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEBD7452A5C0A8F00665FE2 /* KeyboardPadding.swift */; }; 5CEBD7482A5F115D00665FE2 /* SetDeliveryReceiptsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEBD7472A5F115D00665FE2 /* SetDeliveryReceiptsView.swift */; }; - 5CF077FB2B0D60C100105111 /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CF077F62B0D60C000105111 /* libgmpxx.a */; }; - 5CF077FC2B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CF077F72B0D60C000105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2.a */; }; - 5CF077FD2B0D60C100105111 /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CF077F82B0D60C000105111 /* libgmp.a */; }; - 5CF077FE2B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CF077F92B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2-ghc9.6.3.a */; }; - 5CF077FF2B0D60C100105111 /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CF077FA2B0D60C100105111 /* libffi.a */; }; 5CFA59C42860BC6200863A68 /* MigrateToAppGroupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CFA59C32860BC6200863A68 /* MigrateToAppGroupView.swift */; }; 5CFA59D12864782E00863A68 /* ChatArchiveView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CFA59CF286477B400863A68 /* ChatArchiveView.swift */; }; 5CFE0921282EEAF60002594B /* ZoomableScrollView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CFE0920282EEAF60002594B /* ZoomableScrollView.swift */; }; @@ -403,6 +403,11 @@ 5CCD403627A5F9A200368C90 /* ScanToConnectView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScanToConnectView.swift; sourceTree = ""; }; 5CD67B8D2B0E858A00C510B1 /* hs_init.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = hs_init.h; sourceTree = ""; }; 5CD67B8E2B0E858A00C510B1 /* hs_init.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = hs_init.c; sourceTree = ""; }; + 5CD67B912B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a"; sourceTree = ""; }; + 5CD67B922B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a"; sourceTree = ""; }; + 5CD67B932B11416600C510B1 /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = ""; }; + 5CD67B942B11416600C510B1 /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = ""; }; + 5CD67B952B11416700C510B1 /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = ""; }; 5CDCAD452818589900503DA2 /* SimpleX NSE.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "SimpleX NSE.appex"; sourceTree = BUILT_PRODUCTS_DIR; }; 5CDCAD472818589900503DA2 /* NotificationService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationService.swift; sourceTree = ""; }; 5CDCAD492818589900503DA2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -429,11 +434,6 @@ 5CEACCEC27DEA495000BD591 /* MsgContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MsgContentView.swift; sourceTree = ""; }; 5CEBD7452A5C0A8F00665FE2 /* KeyboardPadding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyboardPadding.swift; sourceTree = ""; }; 5CEBD7472A5F115D00665FE2 /* SetDeliveryReceiptsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SetDeliveryReceiptsView.swift; sourceTree = ""; }; - 5CF077F62B0D60C000105111 /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = ""; }; - 5CF077F72B0D60C000105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2.a"; sourceTree = ""; }; - 5CF077F82B0D60C000105111 /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = ""; }; - 5CF077F92B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2-ghc9.6.3.a"; sourceTree = ""; }; - 5CF077FA2B0D60C100105111 /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = ""; }; 5CFA59C32860BC6200863A68 /* MigrateToAppGroupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MigrateToAppGroupView.swift; sourceTree = ""; }; 5CFA59CF286477B400863A68 /* ChatArchiveView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatArchiveView.swift; sourceTree = ""; }; 5CFE0920282EEAF60002594B /* ZoomableScrollView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = ZoomableScrollView.swift; path = Shared/Views/ZoomableScrollView.swift; sourceTree = SOURCE_ROOT; }; @@ -511,13 +511,13 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 5CF077FB2B0D60C100105111 /* libgmpxx.a in Frameworks */, - 5CF077FD2B0D60C100105111 /* libgmp.a in Frameworks */, - 5CF077FE2B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2-ghc9.6.3.a in Frameworks */, + 5CD67B972B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a in Frameworks */, 5CE2BA93284534B000EC33A6 /* libiconv.tbd in Frameworks */, - 5CF077FF2B0D60C100105111 /* libffi.a in Frameworks */, - 5CF077FC2B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2.a in Frameworks */, 5CE2BA94284534BB00EC33A6 /* libz.tbd in Frameworks */, + 5CD67B982B11416700C510B1 /* libffi.a in Frameworks */, + 5CD67B992B11416700C510B1 /* libgmp.a in Frameworks */, + 5CD67B962B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a in Frameworks */, + 5CD67B9A2B11416700C510B1 /* libgmpxx.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -579,11 +579,11 @@ 5C764E5C279C70B7000C6508 /* Libraries */ = { isa = PBXGroup; children = ( - 5CF077FA2B0D60C100105111 /* libffi.a */, - 5CF077F82B0D60C000105111 /* libgmp.a */, - 5CF077F62B0D60C000105111 /* libgmpxx.a */, - 5CF077F92B0D60C100105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2-ghc9.6.3.a */, - 5CF077F72B0D60C000105111 /* libHSsimplex-chat-5.4.0.5-AEaxUB19STC3bOtqr9BLL2.a */, + 5CD67B932B11416600C510B1 /* libffi.a */, + 5CD67B942B11416600C510B1 /* libgmp.a */, + 5CD67B952B11416700C510B1 /* libgmpxx.a */, + 5CD67B922B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a */, + 5CD67B912B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a */, ); path = Libraries; sourceTree = ""; From d148ce4cbbb2aff283b170e16d95e4437f9f2597 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Fri, 24 Nov 2023 23:20:28 +0000 Subject: [PATCH 07/13] ui: translations (#3459) * Translated using Weblate (Russian) Currently translated at 100.0% (1500 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/ * Translated using Weblate (Russian) Currently translated at 100.0% (1346 of 1346 strings) Translation: SimpleX Chat/SimpleX Chat iOS Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/ * Translated using Weblate (Russian) Currently translated at 100.0% (1500 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ru/ * Translated using Weblate (Russian) Currently translated at 100.0% (1346 of 1346 strings) Translation: SimpleX Chat/SimpleX Chat iOS Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/ru/ * Translated using Weblate (Hungarian) Currently translated at 22.1% (332 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/ * Translated using Weblate (German) Currently translated at 100.0% (1346 of 1346 strings) Translation: SimpleX Chat/SimpleX Chat iOS Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/de/ * Translated using Weblate (Hungarian) Currently translated at 22.3% (335 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/ * Translated using Weblate (Polish) Currently translated at 96.9% (1454 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/ * Translated using Weblate (French) Currently translated at 100.0% (1500 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/fr/ * Translated using Weblate (French) Currently translated at 100.0% (1346 of 1346 strings) Translation: SimpleX Chat/SimpleX Chat iOS Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/fr/ * Translated using Weblate (Dutch) Currently translated at 100.0% (1346 of 1346 strings) Translation: SimpleX Chat/SimpleX Chat iOS Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/nl/ * Translated using Weblate (Polish) Currently translated at 100.0% (1500 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/pl/ * Translated using Weblate (Polish) Currently translated at 100.0% (1346 of 1346 strings) Translation: SimpleX Chat/SimpleX Chat iOS Translate-URL: https://hosted.weblate.org/projects/simplex-chat/ios/pl/ * Translated using Weblate (Hungarian) Currently translated at 28.6% (429 of 1500 strings) Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/hu/ * Update translation files Updated by "Remove blank strings" hook in Weblate. Translation: SimpleX Chat/SimpleX Chat Android Translate-URL: https://hosted.weblate.org/projects/simplex-chat/android/ * import/export/update --------- Co-authored-by: Istvan Novak Co-authored-by: mlanp Co-authored-by: B.O.S.S Co-authored-by: Ophiushi <41908476+ishi-sama@users.noreply.github.com> Co-authored-by: M1K4 Co-authored-by: Hosted Weblate --- .../de.xcloc/Localized Contents/de.xliff | 6 + .../fr.xcloc/Localized Contents/fr.xliff | 6 + .../nl.xcloc/Localized Contents/nl.xliff | 6 + .../pl.xcloc/Localized Contents/pl.xliff | 48 +++++++ .../ru.xcloc/Localized Contents/ru.xliff | 6 + apps/ios/de.lproj/Localizable.strings | 18 +++ apps/ios/fr.lproj/Localizable.strings | 18 +++ apps/ios/nl.lproj/Localizable.strings | 18 +++ apps/ios/pl.lproj/Localizable.strings | 135 ++++++++++++++++++ .../pl.lproj/SimpleX--iOS--InfoPlist.strings | 3 + apps/ios/ru.lproj/Localizable.strings | 18 +++ .../commonMain/resources/MR/fr/strings.xml | 5 + .../commonMain/resources/MR/hu/strings.xml | 112 +++++++++++++++ .../commonMain/resources/MR/pl/strings.xml | 63 ++++++++ .../commonMain/resources/MR/ru/strings.xml | 11 +- 15 files changed, 471 insertions(+), 2 deletions(-) diff --git a/apps/ios/SimpleX Localizations/de.xcloc/Localized Contents/de.xliff b/apps/ios/SimpleX Localizations/de.xcloc/Localized Contents/de.xliff index 29f5dd4e3f..75f70f7ad1 100644 --- a/apps/ios/SimpleX Localizations/de.xcloc/Localized Contents/de.xliff +++ b/apps/ios/SimpleX Localizations/de.xcloc/Localized Contents/de.xliff @@ -1196,6 +1196,7 @@ Connect automatically + Automatisch verbinden No comment provided by engineer. @@ -1914,6 +1915,7 @@ Das kann nicht rückgängig gemacht werden! Discover via local network + Lokales Netzwerk durchsuchen No comment provided by engineer. @@ -2558,6 +2560,7 @@ Das kann nicht rückgängig gemacht werden! Found desktop + Gefundener Desktop No comment provided by engineer. @@ -3527,6 +3530,7 @@ Das ist Ihr Link für die Gruppe %@! Not compatible! + Nicht kompatibel! No comment provided by engineer. @@ -5501,6 +5505,7 @@ Bitten Sie Ihren Kontakt darum einen weiteren Verbindungs-Link zu erzeugen, um s Waiting for desktop... + Es wird auf den Desktop gewartet... No comment provided by engineer. @@ -6050,6 +6055,7 @@ SimpleX-Server können Ihr Profil nicht einsehen. author + Autor member role diff --git a/apps/ios/SimpleX Localizations/fr.xcloc/Localized Contents/fr.xliff b/apps/ios/SimpleX Localizations/fr.xcloc/Localized Contents/fr.xliff index af54b7ceb9..153d98be3c 100644 --- a/apps/ios/SimpleX Localizations/fr.xcloc/Localized Contents/fr.xliff +++ b/apps/ios/SimpleX Localizations/fr.xcloc/Localized Contents/fr.xliff @@ -1196,6 +1196,7 @@ Connect automatically + Connexion automatique No comment provided by engineer. @@ -1914,6 +1915,7 @@ Cette opération ne peut être annulée ! Discover via local network + Rechercher sur le réseau No comment provided by engineer. @@ -2558,6 +2560,7 @@ Cette opération ne peut être annulée ! Found desktop + Bureau trouvé No comment provided by engineer. @@ -3527,6 +3530,7 @@ Voici votre lien pour le groupe %@ ! Not compatible! + Non compatible ! No comment provided by engineer. @@ -5501,6 +5505,7 @@ Pour vous connecter, veuillez demander à votre contact de créer un autre lien Waiting for desktop... + En attente du bureau... No comment provided by engineer. @@ -6050,6 +6055,7 @@ Les serveurs SimpleX ne peuvent pas voir votre profil. author + auteur member role diff --git a/apps/ios/SimpleX Localizations/nl.xcloc/Localized Contents/nl.xliff b/apps/ios/SimpleX Localizations/nl.xcloc/Localized Contents/nl.xliff index d2be34ec6c..094a30677a 100644 --- a/apps/ios/SimpleX Localizations/nl.xcloc/Localized Contents/nl.xliff +++ b/apps/ios/SimpleX Localizations/nl.xcloc/Localized Contents/nl.xliff @@ -1196,6 +1196,7 @@ Connect automatically + Automatisch verbinden No comment provided by engineer. @@ -1914,6 +1915,7 @@ Dit kan niet ongedaan gemaakt worden! Discover via local network + Ontdek via het lokale netwerk No comment provided by engineer. @@ -2558,6 +2560,7 @@ Dit kan niet ongedaan gemaakt worden! Found desktop + Desktop gevonden No comment provided by engineer. @@ -3527,6 +3530,7 @@ Dit is jouw link voor groep %@! Not compatible! + Niet compatibel! No comment provided by engineer. @@ -5501,6 +5505,7 @@ Om verbinding te maken, vraagt u uw contact om een andere verbinding link te mak Waiting for desktop... + Wachten op desktop... No comment provided by engineer. @@ -6050,6 +6055,7 @@ SimpleX servers kunnen uw profiel niet zien. author + auteur member role diff --git a/apps/ios/SimpleX Localizations/pl.xcloc/Localized Contents/pl.xliff b/apps/ios/SimpleX Localizations/pl.xcloc/Localized Contents/pl.xliff index 61147d7f98..ad1924f4c4 100644 --- a/apps/ios/SimpleX Localizations/pl.xcloc/Localized Contents/pl.xliff +++ b/apps/ios/SimpleX Localizations/pl.xcloc/Localized Contents/pl.xliff @@ -299,10 +299,12 @@ (new) + (nowy) No comment provided by engineer. (this device v%@) + (to urządzenie v%@) No comment provided by engineer. @@ -397,6 +399,9 @@ - optionally notify deleted contacts. - profile names with spaces. - and more! + - opcjonalnie powiadamiaj usunięte kontakty. +- nazwy profili ze spacją. +- i wiele więcej! No comment provided by engineer. @@ -885,6 +890,7 @@ Bad desktop address + Zły adres komputera No comment provided by engineer. @@ -899,6 +905,7 @@ Better groups + Lepsze grupy No comment provided by engineer. @@ -913,6 +920,7 @@ Block group members + Blokuj członków grupy No comment provided by engineer. @@ -1188,6 +1196,7 @@ Connect automatically + Łącz automatycznie No comment provided by engineer. @@ -1197,6 +1206,7 @@ Connect to desktop + Połącz do komputera No comment provided by engineer. @@ -1245,10 +1255,12 @@ To jest twój jednorazowy link! Connected desktop + Połączony komputer No comment provided by engineer. Connected to desktop + Połączony do komputera No comment provided by engineer. @@ -1263,6 +1275,7 @@ To jest twój jednorazowy link! Connecting to desktop + Łączenie z komputerem No comment provided by engineer. @@ -1287,6 +1300,7 @@ To jest twój jednorazowy link! Connection terminated + Połączenie zakończone No comment provided by engineer. @@ -1371,6 +1385,7 @@ To jest twój jednorazowy link! Create a group using a random profile. + Utwórz grupę używając losowego profilu. No comment provided by engineer. @@ -1785,14 +1800,17 @@ To nie może być cofnięte! Desktop address + Adres komputera No comment provided by engineer. Desktop app version %@ is not compatible with this app. + Wersja aplikacji komputerowej %@ nie jest kompatybilna z tą aplikacją. No comment provided by engineer. Desktop devices + Urządzenia komputerowe No comment provided by engineer. @@ -1887,6 +1905,7 @@ To nie może być cofnięte! Disconnect desktop? + Rozłączyć komputer? No comment provided by engineer. @@ -1896,6 +1915,7 @@ To nie może być cofnięte! Discover via local network + Odkryj przez sieć lokalną No comment provided by engineer. @@ -2070,10 +2090,12 @@ To nie może być cofnięte! Encryption re-negotiation error + Błąd renegocjacji szyfrowania message decrypt error item Encryption re-negotiation failed. + Renegocjacja szyfrowania nie powiodła się. No comment provided by engineer. @@ -2108,6 +2130,7 @@ To nie może być cofnięte! Enter this device name… + Podaj nazwę urządzenia… No comment provided by engineer. @@ -2437,6 +2460,7 @@ To nie może być cofnięte! Faster joining and more reliable messages. + Szybsze dołączenie i bardziej niezawodne wiadomości. No comment provided by engineer. @@ -2536,6 +2560,7 @@ To nie może być cofnięte! Found desktop + Znaleziono komputer No comment provided by engineer. @@ -2865,6 +2890,7 @@ To nie może być cofnięte! Incognito groups + Grupy incognito No comment provided by engineer. @@ -2899,6 +2925,7 @@ To nie może być cofnięte! Incompatible version + Niekompatybilna wersja No comment provided by engineer. @@ -3073,6 +3100,7 @@ To jest twój link do grupy %@! Keep the app open to use it from desktop + Zostaw aplikację otwartą i używaj ją z komputera No comment provided by engineer. @@ -3137,14 +3165,17 @@ To jest twój link do grupy %@! Link mobile and desktop apps! 🔗 + Połącz mobile i komputerowe aplikacje! 🔗 No comment provided by engineer. Linked desktop options + Połączone opcje komputera No comment provided by engineer. Linked desktops + Połączone komputery No comment provided by engineer. @@ -3499,6 +3530,7 @@ To jest twój link do grupy %@! Not compatible! + Nie kompatybilny! No comment provided by engineer. @@ -3722,6 +3754,7 @@ To jest twój link do grupy %@! Paste desktop address + Wklej adres komputera No comment provided by engineer. @@ -4321,6 +4354,7 @@ To jest twój link do grupy %@! Scan QR code from desktop + Zeskanuj kod QR z komputera No comment provided by engineer. @@ -4545,6 +4579,7 @@ To jest twój link do grupy %@! Session code + Kod sesji No comment provided by engineer. @@ -5046,6 +5081,7 @@ Może się to zdarzyć z powodu jakiegoś błędu lub gdy połączenie jest skom This device name + Nazwa tego urządzenia No comment provided by engineer. @@ -5085,6 +5121,7 @@ Może się to zdarzyć z powodu jakiegoś błędu lub gdy połączenie jest skom To hide unwanted messages. + Aby ukryć niechciane wiadomości. No comment provided by engineer. @@ -5248,10 +5285,12 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc Unlink + Odłącz No comment provided by engineer. Unlink desktop? + Odłączyć komputer? No comment provided by engineer. @@ -5346,6 +5385,7 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc Use from desktop + Użyj z komputera No comment provided by engineer. @@ -5380,10 +5420,12 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc Verify code with desktop + Zweryfikuj kod z komputera No comment provided by engineer. Verify connection + Zweryfikuj połączenie No comment provided by engineer. @@ -5393,6 +5435,7 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc Verify connections + Zweryfikuj połączenia No comment provided by engineer. @@ -5407,6 +5450,7 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc Via secure quantum resistant protocol. + Dzięki bezpiecznemu protokołowi odpornego kwantowo. No comment provided by engineer. @@ -5461,6 +5505,7 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc Waiting for desktop... + Oczekiwanie na komputer... No comment provided by engineer. @@ -6010,6 +6055,7 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu. author + autor member role @@ -6596,6 +6642,7 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu. v%@ + v%@ No comment provided by engineer. @@ -6737,6 +6784,7 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu. SimpleX uses local network access to allow using user chat profile via desktop app on the same network. + SimpleX używa sieci lokalnej aby pozwolić na dostęp profilom czatu użytkownika przez aplikację komputerową na tej samej sieci. Privacy - Local Network Usage Description diff --git a/apps/ios/SimpleX Localizations/ru.xcloc/Localized Contents/ru.xliff b/apps/ios/SimpleX Localizations/ru.xcloc/Localized Contents/ru.xliff index abd3d01d87..f4970446ae 100644 --- a/apps/ios/SimpleX Localizations/ru.xcloc/Localized Contents/ru.xliff +++ b/apps/ios/SimpleX Localizations/ru.xcloc/Localized Contents/ru.xliff @@ -1196,6 +1196,7 @@ Connect automatically + Соединяться автоматически No comment provided by engineer. @@ -1914,6 +1915,7 @@ This cannot be undone! Discover via local network + Обнаружение по локальной сети No comment provided by engineer. @@ -2558,6 +2560,7 @@ This cannot be undone! Found desktop + Компьютер найден No comment provided by engineer. @@ -3527,6 +3530,7 @@ This is your link for group %@! Not compatible! + Несовместимая версия! No comment provided by engineer. @@ -5501,6 +5505,7 @@ To connect, please ask your contact to create another connection link and check Waiting for desktop... + Ожидается подключение компьютера... No comment provided by engineer. @@ -6050,6 +6055,7 @@ SimpleX серверы не могут получить доступ к Ваше author + автор member role diff --git a/apps/ios/de.lproj/Localizable.strings b/apps/ios/de.lproj/Localizable.strings index c860a24998..febd4c06a5 100644 --- a/apps/ios/de.lproj/Localizable.strings +++ b/apps/ios/de.lproj/Localizable.strings @@ -545,6 +545,9 @@ /* No comment provided by engineer. */ "Authentication unavailable" = "Authentifizierung nicht verfügbar"; +/* member role */ +"author" = "Autor"; + /* No comment provided by engineer. */ "Auto-accept" = "Automatisch akzeptieren"; @@ -786,6 +789,9 @@ /* server test step */ "Connect" = "Verbinden"; +/* No comment provided by engineer. */ +"Connect automatically" = "Automatisch verbinden"; + /* No comment provided by engineer. */ "Connect incognito" = "Inkognito verbinden"; @@ -1287,6 +1293,9 @@ /* No comment provided by engineer. */ "Discover and join groups" = "Gruppen entdecken und ihnen beitreten"; +/* No comment provided by engineer. */ +"Discover via local network" = "Lokales Netzwerk durchsuchen"; + /* No comment provided by engineer. */ "Do it later" = "Später wiederholen"; @@ -1722,6 +1731,9 @@ /* No comment provided by engineer. */ "For console" = "Für Konsole"; +/* No comment provided by engineer. */ +"Found desktop" = "Gefundener Desktop"; + /* No comment provided by engineer. */ "French interface" = "Französische Bedienoberfläche"; @@ -2397,6 +2409,9 @@ /* copied message info in history */ "no text" = "Kein Text"; +/* No comment provided by engineer. */ +"Not compatible!" = "Nicht kompatibel!"; + /* No comment provided by engineer. */ "Notifications" = "Benachrichtigungen"; @@ -3671,6 +3686,9 @@ /* No comment provided by engineer. */ "waiting for confirmation…" = "Warten auf Bestätigung…"; +/* No comment provided by engineer. */ +"Waiting for desktop..." = "Es wird auf den Desktop gewartet..."; + /* No comment provided by engineer. */ "Waiting for file" = "Warte auf Datei"; diff --git a/apps/ios/fr.lproj/Localizable.strings b/apps/ios/fr.lproj/Localizable.strings index b71d510e72..470e23b4fc 100644 --- a/apps/ios/fr.lproj/Localizable.strings +++ b/apps/ios/fr.lproj/Localizable.strings @@ -545,6 +545,9 @@ /* No comment provided by engineer. */ "Authentication unavailable" = "Authentification indisponible"; +/* member role */ +"author" = "auteur"; + /* No comment provided by engineer. */ "Auto-accept" = "Auto-accepter"; @@ -786,6 +789,9 @@ /* server test step */ "Connect" = "Se connecter"; +/* No comment provided by engineer. */ +"Connect automatically" = "Connexion automatique"; + /* No comment provided by engineer. */ "Connect incognito" = "Se connecter incognito"; @@ -1287,6 +1293,9 @@ /* No comment provided by engineer. */ "Discover and join groups" = "Découvrir et rejoindre des groupes"; +/* No comment provided by engineer. */ +"Discover via local network" = "Rechercher sur le réseau"; + /* No comment provided by engineer. */ "Do it later" = "Faites-le plus tard"; @@ -1722,6 +1731,9 @@ /* No comment provided by engineer. */ "For console" = "Pour la console"; +/* No comment provided by engineer. */ +"Found desktop" = "Bureau trouvé"; + /* No comment provided by engineer. */ "French interface" = "Interface en français"; @@ -2397,6 +2409,9 @@ /* copied message info in history */ "no text" = "aucun texte"; +/* No comment provided by engineer. */ +"Not compatible!" = "Non compatible !"; + /* No comment provided by engineer. */ "Notifications" = "Notifications"; @@ -3671,6 +3686,9 @@ /* No comment provided by engineer. */ "waiting for confirmation…" = "en attente de confirmation…"; +/* No comment provided by engineer. */ +"Waiting for desktop..." = "En attente du bureau..."; + /* No comment provided by engineer. */ "Waiting for file" = "En attente du fichier"; diff --git a/apps/ios/nl.lproj/Localizable.strings b/apps/ios/nl.lproj/Localizable.strings index ac1f8b03d3..784acf1a9b 100644 --- a/apps/ios/nl.lproj/Localizable.strings +++ b/apps/ios/nl.lproj/Localizable.strings @@ -545,6 +545,9 @@ /* No comment provided by engineer. */ "Authentication unavailable" = "Verificatie niet beschikbaar"; +/* member role */ +"author" = "auteur"; + /* No comment provided by engineer. */ "Auto-accept" = "Automatisch accepteren"; @@ -786,6 +789,9 @@ /* server test step */ "Connect" = "Verbind"; +/* No comment provided by engineer. */ +"Connect automatically" = "Automatisch verbinden"; + /* No comment provided by engineer. */ "Connect incognito" = "Verbind incognito"; @@ -1287,6 +1293,9 @@ /* No comment provided by engineer. */ "Discover and join groups" = "Ontdek en sluit je aan bij groepen"; +/* No comment provided by engineer. */ +"Discover via local network" = "Ontdek via het lokale netwerk"; + /* No comment provided by engineer. */ "Do it later" = "Doe het later"; @@ -1722,6 +1731,9 @@ /* No comment provided by engineer. */ "For console" = "Voor console"; +/* No comment provided by engineer. */ +"Found desktop" = "Desktop gevonden"; + /* No comment provided by engineer. */ "French interface" = "Franse interface"; @@ -2397,6 +2409,9 @@ /* copied message info in history */ "no text" = "geen tekst"; +/* No comment provided by engineer. */ +"Not compatible!" = "Niet compatibel!"; + /* No comment provided by engineer. */ "Notifications" = "Meldingen"; @@ -3671,6 +3686,9 @@ /* No comment provided by engineer. */ "waiting for confirmation…" = "Wachten op bevestiging…"; +/* No comment provided by engineer. */ +"Waiting for desktop..." = "Wachten op desktop..."; + /* No comment provided by engineer. */ "Waiting for file" = "Wachten op bestand"; diff --git a/apps/ios/pl.lproj/Localizable.strings b/apps/ios/pl.lproj/Localizable.strings index 3eb86d2a12..e0f4c4dee0 100644 --- a/apps/ios/pl.lproj/Localizable.strings +++ b/apps/ios/pl.lproj/Localizable.strings @@ -25,6 +25,9 @@ /* No comment provided by engineer. */ "- more stable message delivery.\n- a bit better groups.\n- and more!" = "- bardziej stabilne dostarczanie wiadomości.\n- nieco lepsze grupy.\n- i więcej!"; +/* No comment provided by engineer. */ +"- optionally notify deleted contacts.\n- profile names with spaces.\n- and more!" = "- opcjonalnie powiadamiaj usunięte kontakty.\n- nazwy profili ze spacją.\n- i wiele więcej!"; + /* No comment provided by engineer. */ "- voice messages up to 5 minutes.\n- custom time to disappear.\n- editing history." = "- wiadomości głosowe do 5 minut.\n- niestandardowy czas zniknięcia.\n- historia edycji."; @@ -43,6 +46,12 @@ /* No comment provided by engineer. */ "(" = "("; +/* No comment provided by engineer. */ +"(new)" = "(nowy)"; + +/* No comment provided by engineer. */ +"(this device v%@)" = "(to urządzenie v%@)"; + /* No comment provided by engineer. */ ")" = ")"; @@ -536,6 +545,9 @@ /* No comment provided by engineer. */ "Authentication unavailable" = "Uwierzytelnianie niedostępne"; +/* member role */ +"author" = "autor"; + /* No comment provided by engineer. */ "Auto-accept" = "Automatycznie akceptuj"; @@ -548,6 +560,9 @@ /* No comment provided by engineer. */ "Back" = "Wstecz"; +/* No comment provided by engineer. */ +"Bad desktop address" = "Zły adres komputera"; + /* integrity error chat item */ "bad message hash" = "zły hash wiadomości"; @@ -560,12 +575,18 @@ /* No comment provided by engineer. */ "Bad message ID" = "Zły identyfikator wiadomości"; +/* No comment provided by engineer. */ +"Better groups" = "Lepsze grupy"; + /* No comment provided by engineer. */ "Better messages" = "Lepsze wiadomości"; /* No comment provided by engineer. */ "Block" = "Zablokuj"; +/* No comment provided by engineer. */ +"Block group members" = "Blokuj członków grupy"; + /* No comment provided by engineer. */ "Block member" = "Zablokuj członka"; @@ -768,9 +789,15 @@ /* server test step */ "Connect" = "Połącz"; +/* No comment provided by engineer. */ +"Connect automatically" = "Łącz automatycznie"; + /* No comment provided by engineer. */ "Connect incognito" = "Połącz incognito"; +/* No comment provided by engineer. */ +"Connect to desktop" = "Połącz do komputera"; + /* No comment provided by engineer. */ "connect to SimpleX Chat developers." = "połącz się z deweloperami SimpleX Chat."; @@ -801,9 +828,15 @@ /* No comment provided by engineer. */ "connected" = "połączony"; +/* No comment provided by engineer. */ +"Connected desktop" = "Połączony komputer"; + /* rcv group event chat item */ "connected directly" = "połącz bezpośrednio"; +/* No comment provided by engineer. */ +"Connected to desktop" = "Połączony do komputera"; + /* No comment provided by engineer. */ "connecting" = "łączenie"; @@ -828,6 +861,9 @@ /* No comment provided by engineer. */ "Connecting server… (error: %@)" = "Łączenie z serwerem... (błąd: %@)"; +/* No comment provided by engineer. */ +"Connecting to desktop" = "Łączenie z komputerem"; + /* chat list item title */ "connecting…" = "łączenie…"; @@ -846,6 +882,9 @@ /* No comment provided by engineer. */ "Connection request sent!" = "Prośba o połączenie wysłana!"; +/* No comment provided by engineer. */ +"Connection terminated" = "Połączenie zakończone"; + /* No comment provided by engineer. */ "Connection timeout" = "Czas połączenia minął"; @@ -900,6 +939,9 @@ /* No comment provided by engineer. */ "Create" = "Utwórz"; +/* No comment provided by engineer. */ +"Create a group using a random profile." = "Utwórz grupę używając losowego profilu."; + /* No comment provided by engineer. */ "Create an address to let people connect with you." = "Utwórz adres, aby ludzie mogli się z Tobą połączyć."; @@ -1173,6 +1215,15 @@ /* No comment provided by engineer. */ "Description" = "Opis"; +/* No comment provided by engineer. */ +"Desktop address" = "Adres komputera"; + +/* No comment provided by engineer. */ +"Desktop app version %@ is not compatible with this app." = "Wersja aplikacji komputerowej %@ nie jest kompatybilna z tą aplikacją."; + +/* No comment provided by engineer. */ +"Desktop devices" = "Urządzenia komputerowe"; + /* No comment provided by engineer. */ "Develop" = "Deweloperskie"; @@ -1236,9 +1287,15 @@ /* server test step */ "Disconnect" = "Rozłącz"; +/* No comment provided by engineer. */ +"Disconnect desktop?" = "Rozłączyć komputer?"; + /* No comment provided by engineer. */ "Discover and join groups" = "Odkrywaj i dołączaj do grup"; +/* No comment provided by engineer. */ +"Discover via local network" = "Odkryj przez sieć lokalną"; + /* No comment provided by engineer. */ "Do it later" = "Zrób to później"; @@ -1374,6 +1431,12 @@ /* chat item text */ "encryption re-negotiation allowed for %@" = "renegocjacja szyfrowania dozwolona dla %@"; +/* message decrypt error item */ +"Encryption re-negotiation error" = "Błąd renegocjacji szyfrowania"; + +/* No comment provided by engineer. */ +"Encryption re-negotiation failed." = "Renegocjacja szyfrowania nie powiodła się."; + /* chat item text */ "encryption re-negotiation required" = "renegocjacja szyfrowania wymagana"; @@ -1404,6 +1467,9 @@ /* No comment provided by engineer. */ "Enter server manually" = "Wprowadź serwer ręcznie"; +/* No comment provided by engineer. */ +"Enter this device name…" = "Podaj nazwę urządzenia…"; + /* placeholder */ "Enter welcome message…" = "Wpisz wiadomość powitalną…"; @@ -1605,6 +1671,9 @@ /* No comment provided by engineer. */ "Fast and no wait until the sender is online!" = "Szybko i bez czekania aż nadawca będzie online!"; +/* No comment provided by engineer. */ +"Faster joining and more reliable messages." = "Szybsze dołączenie i bardziej niezawodne wiadomości."; + /* No comment provided by engineer. */ "Favorite" = "Ulubione"; @@ -1662,6 +1731,9 @@ /* No comment provided by engineer. */ "For console" = "Dla konsoli"; +/* No comment provided by engineer. */ +"Found desktop" = "Znaleziono komputer"; + /* No comment provided by engineer. */ "French interface" = "Francuski interfejs"; @@ -1866,6 +1938,9 @@ /* No comment provided by engineer. */ "Incognito" = "Incognito"; +/* No comment provided by engineer. */ +"Incognito groups" = "Grupy incognito"; + /* No comment provided by engineer. */ "Incognito mode" = "Tryb incognito"; @@ -1893,6 +1968,9 @@ /* No comment provided by engineer. */ "Incompatible database version" = "Niekompatybilna wersja bazy danych"; +/* No comment provided by engineer. */ +"Incompatible version" = "Niekompatybilna wersja"; + /* PIN entry */ "Incorrect passcode" = "Nieprawidłowy pin"; @@ -2028,6 +2106,9 @@ /* No comment provided by engineer. */ "Joining group" = "Dołączanie do grupy"; +/* No comment provided by engineer. */ +"Keep the app open to use it from desktop" = "Zostaw aplikację otwartą i używaj ją z komputera"; + /* No comment provided by engineer. */ "Keep your connections" = "Zachowaj swoje połączenia"; @@ -2064,6 +2145,15 @@ /* No comment provided by engineer. */ "Limitations" = "Ograniczenia"; +/* No comment provided by engineer. */ +"Link mobile and desktop apps! 🔗" = "Połącz mobile i komputerowe aplikacje! 🔗"; + +/* No comment provided by engineer. */ +"Linked desktop options" = "Połączone opcje komputera"; + +/* No comment provided by engineer. */ +"Linked desktops" = "Połączone komputery"; + /* No comment provided by engineer. */ "LIVE" = "NA ŻYWO"; @@ -2319,6 +2409,9 @@ /* copied message info in history */ "no text" = "brak tekstu"; +/* No comment provided by engineer. */ +"Not compatible!" = "Nie kompatybilny!"; + /* No comment provided by engineer. */ "Notifications" = "Powiadomienia"; @@ -2462,6 +2555,9 @@ /* No comment provided by engineer. */ "Paste" = "Wklej"; +/* No comment provided by engineer. */ +"Paste desktop address" = "Wklej adres komputera"; + /* No comment provided by engineer. */ "Paste image" = "Wklej obraz"; @@ -2846,6 +2942,9 @@ /* No comment provided by engineer. */ "Scan QR code" = "Zeskanuj kod QR"; +/* No comment provided by engineer. */ +"Scan QR code from desktop" = "Zeskanuj kod QR z komputera"; + /* No comment provided by engineer. */ "Scan security code from your contact's app." = "Zeskanuj kod bezpieczeństwa z aplikacji Twojego kontaktu."; @@ -2990,6 +3089,9 @@ /* No comment provided by engineer. */ "Servers" = "Serwery"; +/* No comment provided by engineer. */ +"Session code" = "Kod sesji"; + /* No comment provided by engineer. */ "Set 1 day" = "Ustaw 1 dzień"; @@ -3299,6 +3401,9 @@ /* notification title */ "this contact" = "ten kontakt"; +/* No comment provided by engineer. */ +"This device name" = "Nazwa tego urządzenia"; + /* No comment provided by engineer. */ "This group has over %lld members, delivery receipts are not sent." = "Ta grupa ma ponad %lld członków, potwierdzenia dostawy nie są wysyłane."; @@ -3320,6 +3425,9 @@ /* No comment provided by engineer. */ "To connect, your contact can scan QR code or use the link in the app." = "Aby się połączyć, Twój kontakt może zeskanować kod QR lub skorzystać z linku w aplikacji."; +/* No comment provided by engineer. */ +"To hide unwanted messages." = "Aby ukryć niechciane wiadomości."; + /* No comment provided by engineer. */ "To make a new connection" = "Aby nawiązać nowe połączenie"; @@ -3416,6 +3524,12 @@ /* No comment provided by engineer. */ "Unless your contact deleted the connection or this link was already used, it might be a bug - please report it.\nTo connect, please ask your contact to create another connection link and check that you have a stable network connection." = "O ile Twój kontakt nie usunął połączenia lub ten link był już użyty, może to być błąd - zgłoś go.\nAby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połączenia i sprawdź, czy masz stabilne połączenie z siecią."; +/* No comment provided by engineer. */ +"Unlink" = "Odłącz"; + +/* No comment provided by engineer. */ +"Unlink desktop?" = "Odłączyć komputer?"; + /* No comment provided by engineer. */ "Unlock" = "Odblokuj"; @@ -3470,6 +3584,9 @@ /* No comment provided by engineer. */ "Use for new connections" = "Użyj dla nowych połączeń"; +/* No comment provided by engineer. */ +"Use from desktop" = "Użyj z komputera"; + /* No comment provided by engineer. */ "Use iOS call interface" = "Użyj interfejsu połączeń iOS"; @@ -3491,12 +3608,24 @@ /* No comment provided by engineer. */ "Using SimpleX Chat servers." = "Używanie serwerów SimpleX Chat."; +/* No comment provided by engineer. */ +"v%@" = "v%@"; + /* No comment provided by engineer. */ "v%@ (%@)" = "v%@ (%@)"; +/* No comment provided by engineer. */ +"Verify code with desktop" = "Zweryfikuj kod z komputera"; + +/* No comment provided by engineer. */ +"Verify connection" = "Zweryfikuj połączenie"; + /* No comment provided by engineer. */ "Verify connection security" = "Weryfikuj bezpieczeństwo połączenia"; +/* No comment provided by engineer. */ +"Verify connections" = "Zweryfikuj połączenia"; + /* No comment provided by engineer. */ "Verify security code" = "Weryfikuj kod bezpieczeństwa"; @@ -3515,6 +3644,9 @@ /* No comment provided by engineer. */ "via relay" = "przez przekaźnik"; +/* No comment provided by engineer. */ +"Via secure quantum resistant protocol." = "Dzięki bezpiecznemu protokołowi odpornego kwantowo."; + /* No comment provided by engineer. */ "Video call" = "Połączenie wideo"; @@ -3554,6 +3686,9 @@ /* No comment provided by engineer. */ "waiting for confirmation…" = "oczekiwanie na potwierdzenie…"; +/* No comment provided by engineer. */ +"Waiting for desktop..." = "Oczekiwanie na komputer..."; + /* No comment provided by engineer. */ "Waiting for file" = "Oczekiwanie na plik"; diff --git a/apps/ios/pl.lproj/SimpleX--iOS--InfoPlist.strings b/apps/ios/pl.lproj/SimpleX--iOS--InfoPlist.strings index 92f6ba7764..8c0f71f744 100644 --- a/apps/ios/pl.lproj/SimpleX--iOS--InfoPlist.strings +++ b/apps/ios/pl.lproj/SimpleX--iOS--InfoPlist.strings @@ -7,6 +7,9 @@ /* Privacy - Face ID Usage Description */ "NSFaceIDUsageDescription" = "SimpleX używa Face ID do lokalnego uwierzytelniania"; +/* Privacy - Local Network Usage Description */ +"NSLocalNetworkUsageDescription" = "SimpleX używa sieci lokalnej aby pozwolić na dostęp profilom czatu użytkownika przez aplikację komputerową na tej samej sieci."; + /* Privacy - Microphone Usage Description */ "NSMicrophoneUsageDescription" = "SimpleX potrzebuje dostępu do mikrofonu, w celu połączeń audio i wideo oraz nagrywania wiadomości głosowych."; diff --git a/apps/ios/ru.lproj/Localizable.strings b/apps/ios/ru.lproj/Localizable.strings index 7d094fcf20..03e4c4c508 100644 --- a/apps/ios/ru.lproj/Localizable.strings +++ b/apps/ios/ru.lproj/Localizable.strings @@ -545,6 +545,9 @@ /* No comment provided by engineer. */ "Authentication unavailable" = "Аутентификация недоступна"; +/* member role */ +"author" = "автор"; + /* No comment provided by engineer. */ "Auto-accept" = "Автоприем"; @@ -786,6 +789,9 @@ /* server test step */ "Connect" = "Соединиться"; +/* No comment provided by engineer. */ +"Connect automatically" = "Соединяться автоматически"; + /* No comment provided by engineer. */ "Connect incognito" = "Соединиться Инкогнито"; @@ -1287,6 +1293,9 @@ /* No comment provided by engineer. */ "Discover and join groups" = "Найдите и вступите в группы"; +/* No comment provided by engineer. */ +"Discover via local network" = "Обнаружение по локальной сети"; + /* No comment provided by engineer. */ "Do it later" = "Отложить"; @@ -1722,6 +1731,9 @@ /* No comment provided by engineer. */ "For console" = "Для консоли"; +/* No comment provided by engineer. */ +"Found desktop" = "Компьютер найден"; + /* No comment provided by engineer. */ "French interface" = "Французский интерфейс"; @@ -2397,6 +2409,9 @@ /* copied message info in history */ "no text" = "нет текста"; +/* No comment provided by engineer. */ +"Not compatible!" = "Несовместимая версия!"; + /* No comment provided by engineer. */ "Notifications" = "Уведомления"; @@ -3671,6 +3686,9 @@ /* No comment provided by engineer. */ "waiting for confirmation…" = "ожидается подтверждение…"; +/* No comment provided by engineer. */ +"Waiting for desktop..." = "Ожидается подключение компьютера..."; + /* No comment provided by engineer. */ "Waiting for file" = "Ожидается прием файла"; diff --git a/apps/multiplatform/common/src/commonMain/resources/MR/fr/strings.xml b/apps/multiplatform/common/src/commonMain/resources/MR/fr/strings.xml index 82217745f7..a9d315f680 100644 --- a/apps/multiplatform/common/src/commonMain/resources/MR/fr/strings.xml +++ b/apps/multiplatform/common/src/commonMain/resources/MR/fr/strings.xml @@ -1519,4 +1519,9 @@ Veuillez patienter le temps que le fichier soit chargé depuis le mobile lié. La version de l\'application de bureau %s n\'est pas compatible avec cette application. Vérifier la connexion + Connexion automatique + En attente du bureau… + Bureau trouvé + Non compatible ! + Accessible via le réseau local \ No newline at end of file diff --git a/apps/multiplatform/common/src/commonMain/resources/MR/hu/strings.xml b/apps/multiplatform/common/src/commonMain/resources/MR/hu/strings.xml index eb28386e5d..21a56d7e99 100644 --- a/apps/multiplatform/common/src/commonMain/resources/MR/hu/strings.xml +++ b/apps/multiplatform/common/src/commonMain/resources/MR/hu/strings.xml @@ -356,4 +356,116 @@ Adatbázis downgrade? Chat kiürítése Adatbázis titkosítási jelmondat meg lesz változtatva. + Kapcsolódás automatikusan + Adatbázis hiba + Adatbázis titkosítási jelmondat frissül és eltárolásra kerül a beállításokban. + Adatbázis ID + Adatbázis ID: %d + Adatbázis azonosítók és \"Transport Isolation\" opciók. + Az adatbázis titkosítás jelmondata megváltoztatásra és elmentésre kerül a Keystore-ban. + Az adatbázis titkosításra kerül és a jelmondat eltárolásra a beállításokban. + Szerver törlése + Eszközhitelesítés kikapcsolva. SimpleX zár kikapcsolása. + Letiltás + Letiltás minden csoportnak + Engedélyezve minden csoportnak + engedélyezve az ismerősnek + Eltűnő üzenetek tiltottak ebben a csoportban. + Azonosító törlés + %d hét + PC címe + %ds + Kézbesítési izagolások! + Eszközhitelesítés nincs bekapcsolva. Bekapcsolhatod a SimpleX zárat a Beállításokon keresztük, miután bekapcsoltad az eszközhitelesítést. + Titkosítás visszafejtési hiba + Eltűnik ekkor: %s + szerkesztve + Törlés + %d óra + %d hónap + Azonosító törlése? + Igazolások letiltása? + Az adatbázis jelmondat eltérő a Keystore-ba elmentettől. + Közvetlen üzenetek + E-mail + Letiltás mindenkinek + Fejlesztői eszközök + Adatbázis jelmondat + %d napok + Szétkapcsolva + Az adatbázis egy véletlenszerű jelmondattal van titkosítva, lecserélheted. + %dó + %dhét + Felfedezés helyi hálózatomn keresztül + Helyi csoportok felfedezése és csatolakozás + %d üzenet moderálva %s által + Eltűnő üzenet + Ne hozz létre azonosítót + Ne mutasd ismét + SimpleX Zár kikapcsolása + e2e titkosított + ESZKÖZ + e2e titkosított videóhívás + közvetlen + PC + %d perc + %d ismerős(-ök) kiválasztva + Engedélyez + %dhónap + A közvetlen üzenetek tagok között titltottak ebben a csoportban. + %d perc + Az adatbázis egy véletlenszerű jelmondattal van titkosítva. Kérlek cseréld le exportálás előtt! + Igazolások letiltása csoportoknak? + nap + %d nap + Chat archív törlése? + Duplikálódott megjelenítési név! + Letiltás(felülírások megtartásával) + "Adatbázis upgrade" + %d üzenet blokkolva + Eltűnik ekkor + %d hét + engedélyezve számodra + Eltűnő üzenetek + Törlés + Törlés és ismerős értesítése + letiltva + %d másodperc + Minden fájl törlése + Az adatbázis titkosításra kerül. + Adatbázis jelmondat és exportálás + Az adatbázis titkosításra kerül és a jelmondat eltárolásra a Keystore-ban. + Automatikus üzenet törlés engedélyezve? + Törlés + az adatbázis verzió újabb, mint az app, de nincs lefelé migráció eddig: %s + Leírás + %d óra + %dp + Szétkapcsolás + Szerkesztés + Letiltás(csoport felülírások megtartásával) + %d csoportesemény + %d hónap + Csoport profil szerkesztése + e2e titkosított hanghívás + %d s + Decentralizált + Dekódolási hiba + Kép szerkesztése + Értesítéásek letiltása + Eszközök + Látható helyi hálózaton + Ne engedélyezd + Archívum törlése + Eltűnő üzenetek tiltottak ebben a chatben. + alap (%s) + duplikálódott üzenet + Számítógép leválasztása? + A számítógépes app verzió %s inem kompatibilis ezzel az appal. + Kézbesítés + %d fájl %s összméretben + Adatbázis jelmondat szükséges chat megnyitásához. + %dn + Engedélyeve mindenki számára + Kézbesítési izagolások kikapcsolva! \ No newline at end of file diff --git a/apps/multiplatform/common/src/commonMain/resources/MR/pl/strings.xml b/apps/multiplatform/common/src/commonMain/resources/MR/pl/strings.xml index e61f040a89..a9549080a8 100644 --- a/apps/multiplatform/common/src/commonMain/resources/MR/pl/strings.xml +++ b/apps/multiplatform/common/src/commonMain/resources/MR/pl/strings.xml @@ -1461,4 +1461,67 @@ Pokaż konsolę w nowym oknie Błąd renegocjacji szyfrowania Renegocjacja szyfrowania nie powiodła się. + Blokuj członków grupy + Utwórz grupę używając losowego profilu. + Połączony komputer + Łącz automatycznie + Adres komputera + Lepsze grupy + Komputer + Połączony do komputera + Łączenie z komputerem + Połączony telefon + Połączenie zakończone + Połącz do komputera + autor + Połączony do telefonu + Zły adres komputera + Aplikacja komputerowa %s nie jest kompatybilna z tą aplikacją. + Nowy urządzenie mobilne + Tylko jedno urządzenie może działać w tym samym czasie + Połącz mobile i komputerowe aplikacje! 🔗 + Dzięki bezpiecznemu protokołowi odpornego kwantowo. + Użyj z komputera w aplikacji mobilnej i zeskanuj kod QR.]]> + Aby ukryć niechciane wiadomości. + Niekompatybilna wersja + (nowy)]]> + Odłączyć komputer? + Połączone opcje komputera + Połączone komputery + Odkryj przez sieć lokalną + Grupy incognito + To urządzenie + %s został rozłączony]]> + Oczekiwanie na komputer… + Szybsze dołączenie i bardziej niezawodne wiadomości. + Połączone telefony + Nazwa tego urządzenia + %s]]> + Ładowanie pliku + Znaleziono komputer + Urządzenia komputerowe + Nie kompatybilny! + Połącz z telefonem + Użyj z komputera + Kod sesji + (to urządzenie v%s)]]> + Odłącz + Nazwa urządzenia zostanie udostępniona z połączonym klientem mobilnym. + Zweryfikuj kod na telefonie + Podaj nazwę urządzenia… + Błąd + Rozłącz + Wklej adres komputera + Zweryfikuj kod z komputera + Zeskanuj kod QR z komputera + Urządzenia + Odkrywane przez sieć lokalna + - opcjonalnie powiadamiaj usunięte kontakty. +\n- nazwy profili ze spacją. +\n- i wiele więcej! + Zeskanuj z telefonu + Zweryfikuj połączenia + Rozłączyć komputer? + Proszę poczekać na załadowanie pliku z połączonego telefonu + Zweryfikuj połączenie \ No newline at end of file diff --git a/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml b/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml index 91a37196ff..dc5771316c 100644 --- a/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml +++ b/apps/multiplatform/common/src/commonMain/resources/MR/ru/strings.xml @@ -1507,7 +1507,7 @@ Свяжите мобильное и настольное приложения! 🔗 %d сообщений помечено удалёнными Группа уже существует! - Использовать с компьютера в мобильном приложении и сосканируйте QR код]]> + Использовать с компьютера в мобильном приложении и сосканируйте QR код.]]> Уже соединяется! Несовместимая версия (новое)]]> @@ -1520,7 +1520,7 @@ Инкогнито группы Вступление в группу уже начато! %d сообщений модерировано членом %s - %s]]> + %s был отключен]]> Быстрое вступление и надежная доставка сообщений. Соединиться с самим собой? Связанные мобильные @@ -1599,4 +1599,11 @@ Показывать консоль в новом окне Проверять соединения Проверить соединение + Соединяться автоматически + Ожидается подключение… + %s]]> + Компьютер найден + Несовместимая версия! + автор + Найти через локальную сеть \ No newline at end of file From 6c05eb0ff3616fd44d5ff5d955bdd5f4af920936 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Fri, 24 Nov 2023 23:21:38 +0000 Subject: [PATCH 08/13] directory: support group names with spaces (#3458) --- .../src/Directory/Events.hs | 12 +++++- .../src/Directory/Service.hs | 4 +- tests/Bots/DirectoryTests.hs | 42 ++++++++++++++----- 3 files changed, 44 insertions(+), 14 deletions(-) diff --git a/apps/simplex-directory-service/src/Directory/Events.hs b/apps/simplex-directory-service/src/Directory/Events.hs index dab9ceb77e..89231e4db1 100644 --- a/apps/simplex-directory-service/src/Directory/Events.hs +++ b/apps/simplex-directory-service/src/Directory/Events.hs @@ -14,6 +14,7 @@ module Directory.Events DirectoryRole (..), SDirectoryRole (..), crDirectoryEvent, + viewName, ) where @@ -158,4 +159,13 @@ directoryCmdP = DCListLastGroups_ -> DCListLastGroups <$> (A.space *> A.decimal <|> pure 10) DCExecuteCommand_ -> DCExecuteCommand . T.unpack <$> (A.space *> A.takeText) where - gc f = f <$> (A.space *> A.decimal <* A.char ':') <*> A.takeTill (== ' ') + gc f = f <$> (A.space *> A.decimal <* A.char ':') <*> displayNameP + displayNameP = quoted '\'' <|> takeNameTill (== ' ') + takeNameTill p = + A.peekChar' >>= \c -> + if refChar c then A.takeTill p else fail "invalid first character in display name" + quoted c = A.char c *> takeNameTill (== c) <* A.char c + refChar c = c > ' ' && c /= '#' && c /= '@' + +viewName :: String -> String +viewName n = if ' ' `elem` n then "'" <> n <> "'" else n diff --git a/apps/simplex-directory-service/src/Directory/Service.hs b/apps/simplex-directory-service/src/Directory/Service.hs index a30638249f..fb187bbebe 100644 --- a/apps/simplex-directory-service/src/Directory/Service.hs +++ b/apps/simplex-directory-service/src/Directory/Service.hs @@ -156,7 +156,7 @@ directoryService st DirectoryOpts {superUsers, serviceName, testing} user@User { askConfirmation = do ugrId <- addGroupReg st ct g GRSPendingConfirmation sendMessage cc ct $ T.unpack $ "The group " <> displayName <> " (" <> fullName <> ") is already submitted to the directory.\nTo confirm the registration, please send:" - sendMessage cc ct $ "/confirm " <> show ugrId <> ":" <> T.unpack displayName + sendMessage cc ct $ "/confirm " <> show ugrId <> ":" <> viewName (T.unpack displayName) badRolesMsg :: GroupRolesStatus -> Maybe String badRolesMsg = \case @@ -301,7 +301,7 @@ directoryService st DirectoryOpts {superUsers, serviceName, testing} user@User { msg = maybe (MCText text) (\image -> MCImage {text, image}) image' withSuperUsers $ \cId -> do sendComposedMessage' cc cId Nothing msg - sendMessage' cc cId $ "/approve " <> show dbGroupId <> ":" <> T.unpack displayName <> " " <> show gaId + sendMessage' cc cId $ "/approve " <> show dbGroupId <> ":" <> viewName (T.unpack displayName) <> " " <> show gaId deContactRoleChanged :: GroupInfo -> ContactId -> GroupMemberRole -> IO () deContactRoleChanged g@GroupInfo {membership = GroupMember {memberRole = serviceRole}} ctId contactRole = diff --git a/tests/Bots/DirectoryTests.hs b/tests/Bots/DirectoryTests.hs index 36b990ba35..b31d6f36fe 100644 --- a/tests/Bots/DirectoryTests.hs +++ b/tests/Bots/DirectoryTests.hs @@ -11,6 +11,7 @@ import ChatTests.Utils import Control.Concurrent (forkIO, killThread, threadDelay) import Control.Exception (finally) import Control.Monad (forM_) +import Directory.Events (viewName) import Directory.Options import Directory.Service import Directory.Store @@ -28,6 +29,7 @@ directoryServiceTests = do it "should register group" testDirectoryService it "should suspend and resume group" testSuspendResume it "should join found group via link" testJoinGroup + it "should support group names with spaces" testGroupNameWithSpaces describe "de-listing the group" $ do it "should de-list if owner leaves the group" testDelistedOwnerLeaves it "should de-list if owner is removed from the group" testDelistedOwnerRemoved @@ -243,6 +245,24 @@ testJoinGroup tmp = cath <## "#privacy: new member dan is connected" ] +testGroupNameWithSpaces :: HasCallStack => FilePath -> IO () +testGroupNameWithSpaces tmp = + withDirectoryService tmp $ \superUser dsLink -> + withNewTestChat tmp "bob" bobProfile $ \bob -> do + bob `connectVia` dsLink + registerGroup superUser bob "Privacy & Security" "" + groupFound bob "Privacy & Security" + superUser #> "@SimpleX-Directory /suspend 1:'Privacy & Security'" + superUser <# "SimpleX-Directory> > /suspend 1:'Privacy & Security'" + superUser <## " Group suspended!" + bob <# "SimpleX-Directory> The group ID 1 (Privacy & Security) is suspended and hidden from directory. Please contact the administrators." + groupNotFound bob "privacy" + superUser #> "@SimpleX-Directory /resume 1:'Privacy & Security'" + superUser <# "SimpleX-Directory> > /resume 1:'Privacy & Security'" + superUser <## " Group listing resumed!" + bob <# "SimpleX-Directory> The group ID 1 (Privacy & Security) is listed in the directory again!" + groupFound bob "Privacy & Security" + testDelistedOwnerLeaves :: HasCallStack => FilePath -> IO () testDelistedOwnerLeaves tmp = withDirectoryServiceCfg tmp testCfgCreateGroupDirect $ \superUser dsLink -> @@ -840,16 +860,16 @@ registerGroupId su u n fn gId ugId = do submitGroup :: TestCC -> String -> String -> IO () submitGroup u n fn = do - u ##> ("/g " <> n <> " " <> fn) - u <## ("group #" <> n <> " (" <> fn <> ") is created") - u <## ("to add members use /a " <> n <> " or /create link #" <> n) - u ##> ("/a " <> n <> " SimpleX-Directory admin") - u <## ("invitation to join the group #" <> n <> " sent to SimpleX-Directory") + u ##> ("/g " <> viewName n <> if null fn then "" else " " <> fn) + u <## ("group #" <> viewName n <> (if null fn then "" else " (" <> fn <> ")") <> " is created") + u <## ("to add members use /a " <> viewName n <> " or /create link #" <> viewName n) + u ##> ("/a " <> viewName n <> " SimpleX-Directory admin") + u <## ("invitation to join the group #" <> viewName n <> " sent to SimpleX-Directory") groupAccepted :: TestCC -> String -> IO String groupAccepted u n = do u <# ("SimpleX-Directory> Joining the group " <> n <> "…") - u <## ("#" <> n <> ": SimpleX-Directory joined the group") + u <## ("#" <> viewName n <> ": SimpleX-Directory joined the group") u <# ("SimpleX-Directory> Joined the group " <> n <> ", creating the link…") u <# "SimpleX-Directory> Created the public link to join the group via this directory service that is always online." u <## "" @@ -869,7 +889,7 @@ completeRegistrationId su u n fn welcomeWithLink gId ugId = do updateProfileWithLink :: TestCC -> String -> String -> Int -> IO () updateProfileWithLink u n welcomeWithLink ugId = do - u ##> ("/set welcome " <> n <> " " <> welcomeWithLink) + u ##> ("/set welcome " <> viewName n <> " " <> welcomeWithLink) u <## "description changed to:" u <## welcomeWithLink u <# ("SimpleX-Directory> Thank you! The group link for ID " <> show ugId <> " (" <> n <> ") is added to the welcome message.") @@ -879,13 +899,13 @@ notifySuperUser :: TestCC -> TestCC -> String -> String -> String -> Int -> IO ( notifySuperUser su u n fn welcomeWithLink gId = do uName <- userName u su <# ("SimpleX-Directory> " <> uName <> " submitted the group ID " <> show gId <> ":") - su <## (n <> " (" <> fn <> ")") + su <## (n <> if null fn then "" else " (" <> fn <> ")") su <## "Welcome message:" su <## welcomeWithLink su .<## "members" su <## "" su <## "To approve send:" - let approve = "/approve " <> show gId <> ":" <> n <> " 1" + let approve = "/approve " <> show gId <> ":" <> viewName n <> " 1" su <# ("SimpleX-Directory> " <> approve) approveRegistration :: TestCC -> TestCC -> String -> Int -> IO () @@ -894,7 +914,7 @@ approveRegistration su u n gId = approveRegistrationId :: TestCC -> TestCC -> String -> Int -> Int -> IO () approveRegistrationId su u n gId ugId = do - let approve = "/approve " <> show gId <> ":" <> n <> " 1" + let approve = "/approve " <> show gId <> ":" <> viewName n <> " 1" su #> ("@SimpleX-Directory " <> approve) su <# ("SimpleX-Directory> > " <> approve) su <## " Group approved!" @@ -948,7 +968,7 @@ groupFoundN count u name = do u #> ("@SimpleX-Directory " <> name) u <# ("SimpleX-Directory> > " <> name) u <## " Found 1 group(s)" - u <#. ("SimpleX-Directory> " <> name <> " (") + u <#. ("SimpleX-Directory> " <> name) u <## "Welcome message:" u <##. "Link to join the group " u <## (show count <> " members") From 1902b692f5354541e1ddb310ff82c0681dd12b52 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Sat, 25 Nov 2023 00:13:31 +0000 Subject: [PATCH 09/13] 5.4: ios 183, android 162, desktop 18 --- apps/ios/SimpleX.xcodeproj/project.pbxproj | 12 ++++++------ apps/multiplatform/gradle.properties | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/apps/ios/SimpleX.xcodeproj/project.pbxproj b/apps/ios/SimpleX.xcodeproj/project.pbxproj index 3d78512e3f..a9990f56b3 100644 --- a/apps/ios/SimpleX.xcodeproj/project.pbxproj +++ b/apps/ios/SimpleX.xcodeproj/project.pbxproj @@ -1502,7 +1502,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 182; + CURRENT_PROJECT_VERSION = 183; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; ENABLE_PREVIEWS = YES; @@ -1545,7 +1545,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 182; + CURRENT_PROJECT_VERSION = 183; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; ENABLE_PREVIEWS = YES; @@ -1626,7 +1626,7 @@ CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 182; + CURRENT_PROJECT_VERSION = 183; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; GENERATE_INFOPLIST_FILE = YES; @@ -1658,7 +1658,7 @@ CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 182; + CURRENT_PROJECT_VERSION = 183; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; GENERATE_INFOPLIST_FILE = YES; @@ -1690,7 +1690,7 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 182; + CURRENT_PROJECT_VERSION = 183; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5NN7GUYB6T; DYLIB_COMPATIBILITY_VERSION = 1; @@ -1736,7 +1736,7 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 182; + CURRENT_PROJECT_VERSION = 183; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5NN7GUYB6T; DYLIB_COMPATIBILITY_VERSION = 1; diff --git a/apps/multiplatform/gradle.properties b/apps/multiplatform/gradle.properties index 9c817f08f4..570e982e22 100644 --- a/apps/multiplatform/gradle.properties +++ b/apps/multiplatform/gradle.properties @@ -25,11 +25,11 @@ android.nonTransitiveRClass=true android.enableJetifier=true kotlin.mpp.androidSourceSetLayoutVersion=2 -android.version_name=5.4-beta.4 -android.version_code=161 +android.version_name=5.4 +android.version_code=162 -desktop.version_name=5.4-beta.4 -desktop.version_code=17 +desktop.version_name=5.4 +desktop.version_code=18 kotlin.version=1.8.20 gradle.plugin.version=7.4.2 From de1c8855015a191cc31547c67c405b972619e3ff Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Sat, 25 Nov 2023 11:22:02 +0000 Subject: [PATCH 10/13] ios: 5.4 build 184: switch to GHC 8.10.7 (9.6.3 crashes on older iPhone models), fix Connect to desktop closing when switching to QR code scan --- .../RemoteAccess/ConnectDesktopView.swift | 2 +- apps/ios/SimpleX.xcodeproj/project.pbxproj | 52 +++++++++---------- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/apps/ios/Shared/Views/RemoteAccess/ConnectDesktopView.swift b/apps/ios/Shared/Views/RemoteAccess/ConnectDesktopView.swift index 1f120860e2..e934bbc89a 100644 --- a/apps/ios/Shared/Views/RemoteAccess/ConnectDesktopView.swift +++ b/apps/ios/Shared/Views/RemoteAccess/ConnectDesktopView.swift @@ -208,7 +208,7 @@ struct ConnectDesktopView: View { Section("Found desktop") { Text("Waiting for desktop...").italic() Button { - disconnectDesktop(.dismiss) + disconnectDesktop() } label: { Label("Scan QR code", systemImage: "qrcode") } diff --git a/apps/ios/SimpleX.xcodeproj/project.pbxproj b/apps/ios/SimpleX.xcodeproj/project.pbxproj index a9990f56b3..e799041d04 100644 --- a/apps/ios/SimpleX.xcodeproj/project.pbxproj +++ b/apps/ios/SimpleX.xcodeproj/project.pbxproj @@ -120,11 +120,11 @@ 5CCD403727A5F9A200368C90 /* ScanToConnectView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CCD403627A5F9A200368C90 /* ScanToConnectView.swift */; }; 5CD67B8F2B0E858A00C510B1 /* hs_init.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CD67B8D2B0E858A00C510B1 /* hs_init.h */; settings = {ATTRIBUTES = (Public, ); }; }; 5CD67B902B0E858A00C510B1 /* hs_init.c in Sources */ = {isa = PBXBuildFile; fileRef = 5CD67B8E2B0E858A00C510B1 /* hs_init.c */; }; - 5CD67B962B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B912B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a */; }; - 5CD67B972B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B922B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a */; }; - 5CD67B982B11416700C510B1 /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B932B11416600C510B1 /* libffi.a */; }; - 5CD67B992B11416700C510B1 /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B942B11416600C510B1 /* libgmp.a */; }; - 5CD67B9A2B11416700C510B1 /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B952B11416700C510B1 /* libgmpxx.a */; }; + 5CD67BA02B120ADF00C510B1 /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B9B2B120ADF00C510B1 /* libgmp.a */; }; + 5CD67BA12B120ADF00C510B1 /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B9C2B120ADF00C510B1 /* libgmpxx.a */; }; + 5CD67BA22B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B9D2B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u.a */; }; + 5CD67BA32B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u-ghc8.10.7.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B9E2B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u-ghc8.10.7.a */; }; + 5CD67BA42B120ADF00C510B1 /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CD67B9F2B120ADF00C510B1 /* libffi.a */; }; 5CDCAD482818589900503DA2 /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CDCAD472818589900503DA2 /* NotificationService.swift */; }; 5CE2BA702845308900EC33A6 /* SimpleXChat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CE2BA682845308900EC33A6 /* SimpleXChat.framework */; }; 5CE2BA712845308900EC33A6 /* SimpleXChat.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 5CE2BA682845308900EC33A6 /* SimpleXChat.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; @@ -403,11 +403,11 @@ 5CCD403627A5F9A200368C90 /* ScanToConnectView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScanToConnectView.swift; sourceTree = ""; }; 5CD67B8D2B0E858A00C510B1 /* hs_init.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = hs_init.h; sourceTree = ""; }; 5CD67B8E2B0E858A00C510B1 /* hs_init.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = hs_init.c; sourceTree = ""; }; - 5CD67B912B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a"; sourceTree = ""; }; - 5CD67B922B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a"; sourceTree = ""; }; - 5CD67B932B11416600C510B1 /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = ""; }; - 5CD67B942B11416600C510B1 /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = ""; }; - 5CD67B952B11416700C510B1 /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = ""; }; + 5CD67B9B2B120ADF00C510B1 /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = ""; }; + 5CD67B9C2B120ADF00C510B1 /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = ""; }; + 5CD67B9D2B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u.a"; sourceTree = ""; }; + 5CD67B9E2B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u-ghc8.10.7.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u-ghc8.10.7.a"; sourceTree = ""; }; + 5CD67B9F2B120ADF00C510B1 /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = ""; }; 5CDCAD452818589900503DA2 /* SimpleX NSE.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "SimpleX NSE.appex"; sourceTree = BUILT_PRODUCTS_DIR; }; 5CDCAD472818589900503DA2 /* NotificationService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationService.swift; sourceTree = ""; }; 5CDCAD492818589900503DA2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -511,13 +511,13 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 5CD67B972B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a in Frameworks */, + 5CD67BA12B120ADF00C510B1 /* libgmpxx.a in Frameworks */, + 5CD67BA22B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u.a in Frameworks */, 5CE2BA93284534B000EC33A6 /* libiconv.tbd in Frameworks */, + 5CD67BA02B120ADF00C510B1 /* libgmp.a in Frameworks */, + 5CD67BA42B120ADF00C510B1 /* libffi.a in Frameworks */, + 5CD67BA32B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u-ghc8.10.7.a in Frameworks */, 5CE2BA94284534BB00EC33A6 /* libz.tbd in Frameworks */, - 5CD67B982B11416700C510B1 /* libffi.a in Frameworks */, - 5CD67B992B11416700C510B1 /* libgmp.a in Frameworks */, - 5CD67B962B11416700C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a in Frameworks */, - 5CD67B9A2B11416700C510B1 /* libgmpxx.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -579,11 +579,11 @@ 5C764E5C279C70B7000C6508 /* Libraries */ = { isa = PBXGroup; children = ( - 5CD67B932B11416600C510B1 /* libffi.a */, - 5CD67B942B11416600C510B1 /* libgmp.a */, - 5CD67B952B11416700C510B1 /* libgmpxx.a */, - 5CD67B922B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9-ghc9.6.3.a */, - 5CD67B912B11416600C510B1 /* libHSsimplex-chat-5.4.0.6-95eerlCBwIgI8jyla1GCr9.a */, + 5CD67B9F2B120ADF00C510B1 /* libffi.a */, + 5CD67B9B2B120ADF00C510B1 /* libgmp.a */, + 5CD67B9C2B120ADF00C510B1 /* libgmpxx.a */, + 5CD67B9E2B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u-ghc8.10.7.a */, + 5CD67B9D2B120ADF00C510B1 /* libHSsimplex-chat-5.4.0.6-9DfazyElTA72omjHp0C93u.a */, ); path = Libraries; sourceTree = ""; @@ -1502,7 +1502,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 183; + CURRENT_PROJECT_VERSION = 184; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; ENABLE_PREVIEWS = YES; @@ -1545,7 +1545,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 183; + CURRENT_PROJECT_VERSION = 184; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; ENABLE_PREVIEWS = YES; @@ -1626,7 +1626,7 @@ CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 183; + CURRENT_PROJECT_VERSION = 184; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; GENERATE_INFOPLIST_FILE = YES; @@ -1658,7 +1658,7 @@ CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 183; + CURRENT_PROJECT_VERSION = 184; DEVELOPMENT_TEAM = 5NN7GUYB6T; ENABLE_BITCODE = NO; GENERATE_INFOPLIST_FILE = YES; @@ -1690,7 +1690,7 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 183; + CURRENT_PROJECT_VERSION = 184; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5NN7GUYB6T; DYLIB_COMPATIBILITY_VERSION = 1; @@ -1736,7 +1736,7 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 183; + CURRENT_PROJECT_VERSION = 184; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5NN7GUYB6T; DYLIB_COMPATIBILITY_VERSION = 1; From b9dd2f45c92f73615be745f3c81079ac81d16587 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Sat, 25 Nov 2023 12:51:05 +0000 Subject: [PATCH 11/13] rfc: post-quantum resistant augmented double ratchet algorithm (#3463) * rfc: post-quantum resistant augmented double ratchet algorithm * update doc * replace Kyber with "some KEM" --- docs/rfcs/2023-09-30-pq-double-ratchet.md | 224 ++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 docs/rfcs/2023-09-30-pq-double-ratchet.md diff --git a/docs/rfcs/2023-09-30-pq-double-ratchet.md b/docs/rfcs/2023-09-30-pq-double-ratchet.md new file mode 100644 index 0000000000..255051320d --- /dev/null +++ b/docs/rfcs/2023-09-30-pq-double-ratchet.md @@ -0,0 +1,224 @@ +# Post-quantum resistant augmented double ratchet algorithm + +- [Overview](#overview) +- [Problem](#problem) +- [Comparison of the proposed solutions](#comparison-of-the-proposed-solutions) + - [PQXDH for post-quantum key agreement](#pqxdh-for-post-quantum-key-agreement) (Signal) + - [Hybrid Signal protocol for post-quantum encryption](#hybrid-signal-protocol-for-post-quantum-encryption) (Tutanota) + - [Problems with ML-KEM / Kyber](#problems-with-ml-kem--kyber) +- [Proposed solution: augmented double ratchet algorithm](#proposed-solution-augmented-double-ratchet-algorithm) +- [Double ratchet with encrypted headers augmented with double PQ KEM](#double-ratchet-with-encrypted-headers-augmented-with-double-pq-kem) + - [Initialization](#initialization) + - [Encrypting messages](#encrypting-messages) + - [Decrypting messages](#decrypting-messages) +- [Alternative approach: CTIDH](#alternative-approach-ctidh) +- [Implementation considerations for SimpleX Chat](#implementation-considerations-for-simplex-chat) +- [Summary](#summary) +- [Notes](#notes) + +## 1. Overview + +Currently SimpleX Chat uses [double-ratchet with header encryption](https://signal.org/docs/specifications/doubleratchet/#double-ratchet-with-header-encryption) to provide end-to-end encryption to messages and files. This document proposes a way to augment this algorithm with post-quantum key encapsulation mechanism (KEM) to make it resistant to quantum computers. + +This document is purposefully written in an informal style to make it understandable for general audience with some technical, but without mathematical background. It does not compromise on the technical accuracy though. + +## 2. Problem + +It is a reasonable assumption that "record-now-decrypt-later" attacks are ongoing, so the users want to use cryptographic schemes for end-to-end encryption that are augmented with some post-quantum algorithm that is believed to be resistant to quantum computers. + +Double-ratchet algorithm is a state of the art solution for end to end encryption offering a set of qualities that is unmatched by any other algorithm: + +- perfect forward secrecy, i.e. compromise of session or long term keys does not lead to the ability to decrypt any of the past messages. +- deniability (also known as repudiation), i.e. the fact that the recipient of the message cannot prove to a third party that the sender actually sent this message [1]. +- break-in recovery [2] (also know as post-compromise security or future secrecy), i.e. the ability of the end-to-end encryption security to recover from the compromise of the long term keys. This is achieved by generating a new random key pair whenever a new DH key is received (DH ratchet step). + +It is desirable to preserve all these qualities when augmenting the algorithm with a post-quantum algorithm, and having these qualities resistant (or "believed to be" resistant [3]) to both conventional and quantum computers. + +## Comparison of the proposed solutions + +### PQXDH for post-quantum key agreement + +[The solution](https://signal.org/docs/specifications/pqxdh/) recently [introduced by Signal](https://signal.org/blog/pqxdh/) augments the initial key agreement ([X3DH](https://signal.org/docs/specifications/x3dh/)) that is made prior to double ratchet algorithm. This is believed to provide protection from "record-now-decrypt-later" attack, but if the attacker at any point obtains long term keys from any of the devices, the break-in recovery will not be post-quantum resistant, and the attacker would be able to decrypt all the subsequent messages. + +In addition to that, the authentication of parties in the proposed scheme is also not post-quantum resistant, although this is not part of double ratchet algorithm. + +### Hybrid Signal protocol for post-quantum encryption + +[The solution](https://eprint.iacr.org/2021/875.pdf) [proposed by Tutanota](https://tutanota.com/blog/posts/pqmail-update/) aims to preserve the break-in recovery property of double ratchet, but in doing so it: +- replaces rather than augments DH key agreement with post-quantum KEM mechanism, making it potentially vulnerable to conventional computers. +- adds signature to the DH ratchet step, to compensate for not keeping DH key agreement, but losing the deniability property for some of the messages. + +### Problems with ML-KEM / Kyber + +ML-KEM / Kyber used in both Signal and Tutanota schemes is the chosen algorithm by NIST, but its standardisation process raised some concerns amongst the experts: + +- hashing of random numbers that was present in the original submission was removed from the standardised version of the algorithm. See lines 304-314 in the published spec (https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.203.ipd.pdf) and also the linked discussion on the subject: https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/WFRDl8DqYQ4. This decision polarised the experts, with some of them saying that it effectively created a backdoor. +- calculation of security levels of Kyber appears to have been done incorrectly, and overall, the chosen Kyber seems worse than rejected NTRU according to [the analysis by Daniel Bernstein](https://blog.cr.yp.to/20231003-countcorrectly.html). + +## Proposed solution: augmented double ratchet algorithm + +We will augment the double ratchet algorithm with post-quantum KEM mechanism, preserving all properties of the double ratchet algorithm. + +It is possible, because although double ratchet uses DH (which is a non-interactive key exchange [4]), it uses it "interactively", when the new DH keys are generated by both parties in turns. Parties of double-ratchet encrypted communication can run one or two post-quantum key encapsulation mechanisms in parallel with DH key agreement on each DH ratchet step, making break-in recovery of double ratchet algorithm post-quantum resistant (unlike Signal PQXDH scheme), without losing deniability or resistance to conventional computers (unlike Tutanota scheme). + +Specifically, it is proposed to augment [double ratchet with encrypted headers](https://signal.org/docs/specifications/doubleratchet/#double-ratchet-with-header-encryption) with some post-quantum key encapsulation mechanism (KEM) as described below. A possible algorithm for PQ KEM is [NTRU-prime](https://ntruprime.cr.yp.to), that is currently adopted in SSH and has available implementations. It is important though that the proposed scheme can be used with any PQ KEM algorithm. + +The downside of the proposed scheme is its substantial size overhead, as the encapsulation key and/or encapsulated shared secret are added to the header of each message. For the scheme described below, when both the encapsulation key and encapsulated secret are added to each message header, NTRU-prime adds ~2-4kb to each message (depending on the key size and the chosen variant). See [this table](https://ntruprime.cr.yp.to/security.html) for key and ciphertext sizes and the assessment of the security level for various key sizes. + +## Double ratchet with encrypted headers augmented with double PQ KEM + +Algorithm below assumes that in addition to shared secret from the initial key agreement, there will be an encapsulation key available from the party that published its keys (Bob). + +### Initialization + +The double ratchet initialization is defined in pseudocode as follows: + +``` +// Alice obtained Bob's keys and initializes ratchet first +def RatchetInitAlicePQ2HE(state, SK, bob_dh_public_key, shared_hka, shared_nhkb, bob_pq_kem_encapsulation_key): + state.DHRs = GENERATE_DH() + state.DHRr = bob_dh_public_key + // below added for post-quantum KEM + state.PQRs = GENERATE_PQKEM() + state.PQRr = bob_pq_kem_encapsulation_key + state.PQRss = random // shared secret for KEM + state.PQRenc_ss = PQKEM-ENC(state.PQRr.encaps, state.PQRss) // encapsulated additional shared secret + // above added for KEM + // below augments DH key agreement with PQ shared secret + state.RK, state.CKs, state.NHKs = KDF_RK_HE(SK, DH(state.DHRs, state.DHRr) || state.PQRss) + state.CKr = None + state.Ns = 0 + state.Nr = 0 + state.PN = 0 + state.MKSKIPPED = {} + state.HKs = shared_hka + state.HKr = None + state.NHKr = shared_nhkb + +// Bob initializes ratchet second, having received Alice's connection request +def RatchetInitBobPQ2HE(state, SK, bob_dh_key_pair, shared_hka, shared_nhkb, bob_pq_kem_key_pair): + state.DHRs = bob_dh_key_pair + state.DHRr = None + // below added for KEM + state.PQRs = bob_pq_kem_key_pair + state.PQRr = None + state.PQRss = None + state.PQRenc_ss = None + // above added for KEM + state.RK = SK + state.CKs = None + state.CKr = None + state.Ns = 0 + state.Nr = 0 + state.PN = 0 + state.MKSKIPPED = {} + state.HKs = None + state.NHKs = shared_nhkb + state.HKr = None + state.NHKr = shared_hka +``` + +`GENERATE_PQKEM` generates decapsulation/encapsulation key pair. + +`PQKEM-ENC` is key encapsulation algorithm. + +Other than commented lines, the above adds parameters `bob_pq_kem_encapsulation_key` and `bob_pq_kem_key_pair` to the ratchet intialization. Otherwise it is identical to the original double ratchet initialization. + +### Encrypting messages + +``` +def RatchetEncryptPQ2HE(state, plaintext, AD): + state.CKs, mk = KDF_CK(state.CKs) + // encapsulation key from PQRs and encapsulated shared secret is added to header + header = HEADER_PQ2( + dh = state.DHRs.public, + pn = state.PN, + n = state.Ns, + encaps = state.PQRs.encaps, // added for KEM #1 + enc_ss = state.PQRenc_ss // added for KEM #2 + ) + enc_header = HENCRYPT(state.HKs, header) + state.Ns += 1 + return enc_header, ENCRYPT(mk, plaintext, CONCAT(AD, enc_header)) +``` + +Other than adding encapsulation key and encapsulated shared secret into the header, the above is identical to the original double ratchet message encryption step. + +As an optimization, to save space, it might be possible to add encapsulation key and encapsulated secret only when they change. The downside of this optimization would be that it will be impossible to decrypt the message when the message that has them is skipped or lost, compromising the ability of double ratchet to manage skipped messages. + +### Decrypting messages + +``` +def RatchetDecryptPQ2HE(state, enc_header, ciphertext, AD): + plaintext = TrySkippedMessageKeysHE(state, enc_header, ciphertext, AD) + if plaintext != None: + return plaintext + header, dh_ratchet = DecryptHeader(state, enc_header) // DecryptHeader is the same as in double ratchet specification + if dh_ratchet: + SkipMessageKeysHE(state, header.pn) // SkipMessageKeysHE is the same as in double ratchet specification + DHRatchetPQ2HE(state, header) + SkipMessageKeysHE(state, header.n) + state.CKr, mk = KDF_CK(state.CKr) + state.Nr += 1 + return DECRYPT(mk, ciphertext, CONCAT(AD, enc_header)) + +def DHRatchetPQ2HE(state, header): + state.PN = state.Ns + state.Ns = 0 + state.Nr = 0 + state.HKs = state.NHKs + state.HKr = state.NHKr + state.DHRr = header.dh + // save new encapsulation key from header + state.PQRr = header.encaps + // decapsulate shared secret from header - KEM #2 + ss = PQKEM-DEC(state.PQRs.decaps, header.enc_ss) + // use decapsulated shared secret with receiving ratchet + state.RK, state.CKr, state.NHKr = KDF_RK_HE(state.RK, DH(state.DHRs, state.DHRr) || ss) + state.DHRs = GENERATE_DH() + // below is added for KEM + state.PQRs = GENERATE_PQKEM() // generate new PQ key pair + state.PQRss = random // shared secret for KEM + state.PQRenc_ss = PQKEM-ENC(state.PQRr.encaps, state.PQRss) // encapsulated additional shared secret KEM #1 + // above is added for KEM + // use new shared secret with sending ratchet + state.RK, state.CKs, state.NHKs = KDF_RK_HE(state.RK, DH(state.DHRs, state.DHRr) || state.PQRss) +``` + +`PQKEM-DEC` is key decapsulation algorithm. + +`DHRatchetPQ2HE` augments both DH agreements with decapsulated shared secret from the received header and with the new shared secret, respectively. The new shared secret together with the new encapsulation key are saved in the state and will be added to the header in the next sent message. + +Other than augmenting DH key agreements with the shared secrets from KEM, the above is identical to the original double ratchet DH ratchet step. + +It is worth noting that while DH agreements work as ping-pong, when the new received DH key is used for both DH agreements (and only the sent DH key is updated for the second DH key agreement), PQ KEM agreements in the proposed scheme work as a "parallel ping-pong", with two balls in play all the time (two KEM agreements run in parallel). + +## Alternative approach: CTIDH + +Instead of using KEM, we can consider using [CTIDH](https://ctidh.isogeny.org). The advantage is a smaller key size, and also as CTIDH is non-interactive [4], there is no need to run two key agreements in parallel, the PQ keys would simply augment DH keys and would be used in the same way. + +The main downside is the absense of performance-efficient implementation for aarch64 architecture. + +## Implementation considerations for SimpleX Chat + +As SimpleX Chat pads messages to a fixed size, using 16kb transport blocks, the size increase introduced by this scheme will not cause additional traffic in most cases. For large texts it may require additional messages to be sent. Similarly, for media previews it may require either reducing the preview size (and quality) or sending additional messages. + +That might be the primary reason why this scheme was not adopted by Signal, as it would have resulted in substantial traffic growth – to the best of our knowledge, Signal messages are not padded to a fixed size. + +Sharing the initial keys in case of SimpleX Chat it is equivalent to sharing the invitation link. As encapsulation key is large, it may be inconvenient to share it in the link in some contexts. + +It is possible to postpone sharing the encapsulation key until the first message from Alice (confirmation message in SMP protocol), the party sending connection request. The upside here is that the invitation link size would not increase. The downside is that the user profile shared in this confirmation will not be encrypted with PQ-resistant algorithm. To mitigate it, the hadnshake protocol can be modified to postpone sending the user profile until the second message from Alice (HELLO message in SMP protocol). + +## Summary + +If chosen PQ KEM proves secure against quantum computer attacks, then the proposed augmented double ratchet will also be secure against quantum computer attack, including break-in recovery property, while keeping deniability and forward secrecy, because the [same proof](https://eprint.iacr.org/2016/1013.pdf) as for double ratchet algorithm would hold here, provided KEM is secure. + +## Notes + +[1] This is often misunderstood to mean that the recipient cannot prove that the sender sent the message at all, which is incorrect, as the recipient has the proof that either themselves or the sender encrypted the message, and as they know that the recipient themselves did not encrypt it, therefore the sender did. So the communication is secure and authenticated for the parties, without providing a proof to a third party. + +[2] The term "break-in recovery" is used in this document, consistent with the terminology of the double ratchet algorithm specification, and also because it can be used to mean both the quality of being able to recover from the compromise and the actual process used to recover. + +[3] This is important to remember that no existing post-quantum algorithms are proven to be resistant to quantum or even conventional computers, therefore the correct approach is to augment rather than replace existing algorithms with the post-quantum ones. + +[4] Non-interactive key exchange is a type of key agreement that allows both parties to generate key pairs independently, without input from another parties, and then use the public keys from each other to compute the same shared secret. From 962964a73d3fe9a2a83bbccebc7e15e4335629e7 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Sat, 25 Nov 2023 14:15:41 +0000 Subject: [PATCH 12/13] docs: update downloads page --- docs/DOWNLOADS.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/DOWNLOADS.md b/docs/DOWNLOADS.md index a1576c355e..a43a694097 100644 --- a/docs/DOWNLOADS.md +++ b/docs/DOWNLOADS.md @@ -1,13 +1,13 @@ --- title: Download SimpleX apps permalink: /downloads/index.html -revision: 01.10.2023 +revision: 25.11.2023 --- -| Updated 01.10.2023 | Languages: EN | +| Updated 25.11.2023 | Languages: EN | # Download SimpleX apps -The latest stable version is v5.3.2. +The latest stable version is v5.4.0. You can get the latest beta releases from [GitHub](https://github.com/simplex-chat/simplex-chat/releases). @@ -21,24 +21,24 @@ You can get the latest beta releases from [GitHub](https://github.com/simplex-ch Using the same profile as on mobile device is not yet supported – you need to create a separate profile to use desktop apps. -**Linux**: [AppImage](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-desktop-x86_64.AppImage) (most Linux distros), [Ubuntu 20.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-desktop-ubuntu-20_04-x86_64.deb) (and Debian-based distros), [Ubuntu 22.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-desktop-ubuntu-22_04-x86_64.deb). +**Linux**: [AppImage](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-desktop-x86_64.AppImage) (most Linux distros), [Ubuntu 20.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-desktop-ubuntu-20_04-x86_64.deb) (and Debian-based distros), [Ubuntu 22.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-desktop-ubuntu-22_04-x86_64.deb). -**Mac**: [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-desktop-macos-x86_64.dmg) (Intel), [aarch64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.1/simplex-desktop-macos-aarch64.dmg) (Apple Silicon). +**Mac**: [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-desktop-macos-x86_64.dmg) (Intel), [aarch64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-desktop-macos-aarch64.dmg) (Apple Silicon). -**Windows**: [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0-beta.3/simplex-desktop-windows-x86-64.msi) (BETA). +**Windows**: [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-desktop-windows-x86_64.msi). ## Mobile apps **iOS**: [App store](https://apps.apple.com/us/app/simplex-chat/id1605771084), [TestFlight](https://testflight.apple.com/join/DWuT2LQu). -**Android**: [Play store](https://play.google.com/store/apps/details?id=chat.simplex.app), [F-Droid](https://simplex.chat/fdroid/), [APK aarch64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex.apk), [APK armv7](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-armv7a.apk). +**Android**: [Play store](https://play.google.com/store/apps/details?id=chat.simplex.app), [F-Droid](https://simplex.chat/fdroid/), [APK aarch64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex.apk), [APK armv7](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-armv7a.apk). ## Terminal (console) app See [Using terminal app](/docs/CLI.md). -**Linux**: [Ubuntu 20.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-chat-ubuntu-20_04-x86-64), [Ubuntu 22.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-chat-ubuntu-22_04-x86-64). +**Linux**: [Ubuntu 20.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-chat-ubuntu-20_04-x86-64), [Ubuntu 22.04](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-chat-ubuntu-22_04-x86-64). -**Mac** [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-chat-macos-x86-64), aarch64 - [compile from source](./CLI.md#). +**Mac** [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-chat-macos-x86-64), aarch64 - [compile from source](./CLI.md#). -**Windows**: [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.3.2/simplex-chat-windows-x86-64). +**Windows**: [x86_64](https://github.com/simplex-chat/simplex-chat/releases/download/v5.4.0/simplex-chat-windows-x86-64). From 1e6891e222837cdac990a7187978b10c988f4d40 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com> Date: Sat, 25 Nov 2023 18:27:41 +0000 Subject: [PATCH 13/13] blog: v5.4 announcement (#3457) * blog: v5.4 announcement * update * corrections Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com> * add images, CLI section * images * preview, readme * correction --------- Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com> --- README.md | 10 +- ...desktop-quantum-resistant-better-groups.md | 128 ++++++++++++++---- blog/README.md | 22 +++ blog/images/20231125-block.png | Bin 0 -> 1137734 bytes blog/images/20231125-desktop1.png | Bin 0 -> 43571 bytes blog/images/20231125-desktop2.png | Bin 0 -> 31992 bytes blog/images/20231125-desktop3.png | Bin 0 -> 115839 bytes blog/images/20231125-desktop4.png | Bin 0 -> 450951 bytes blog/images/20231125-group1.png | Bin 0 -> 798614 bytes blog/images/20231125-group2.png | Bin 0 -> 548108 bytes blog/images/20231125-mobile1.png | Bin 0 -> 400610 bytes blog/images/20231125-mobile1a.png | Bin 0 -> 268967 bytes blog/images/20231125-mobile2.png | Bin 0 -> 766821 bytes blog/images/20231125-mobile3.png | Bin 0 -> 204927 bytes blog/images/20231125-mobile4.png | Bin 0 -> 204082 bytes blog/images/arrow.png | Bin 0 -> 8789 bytes .../src/_includes/blog_previews/20231125.html | 15 ++ 17 files changed, 147 insertions(+), 28 deletions(-) create mode 100644 blog/images/20231125-block.png create mode 100644 blog/images/20231125-desktop1.png create mode 100644 blog/images/20231125-desktop2.png create mode 100644 blog/images/20231125-desktop3.png create mode 100644 blog/images/20231125-desktop4.png create mode 100644 blog/images/20231125-group1.png create mode 100644 blog/images/20231125-group2.png create mode 100644 blog/images/20231125-mobile1.png create mode 100644 blog/images/20231125-mobile1a.png create mode 100644 blog/images/20231125-mobile2.png create mode 100644 blog/images/20231125-mobile3.png create mode 100644 blog/images/20231125-mobile4.png create mode 100644 blog/images/arrow.png create mode 100644 website/src/_includes/blog_previews/20231125.html diff --git a/README.md b/README.md index 66465926dd..254a66c2bc 100644 --- a/README.md +++ b/README.md @@ -232,6 +232,8 @@ You can use SimpleX with your own servers and still communicate with people usin Recent and important updates: +[Nov 25, 2023. SimpleX Chat v5.4 released: link mobile and desktop apps via quantum resistant protocol, and much better groups](./blog/20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.md). + [Sep 25, 2023. SimpleX Chat v5.3 released: desktop app, local file encryption, improved groups and directory service](./blog/20230925-simplex-chat-v5-3-desktop-app-local-file-encryption-directory-service.md). [Jul 22, 2023. SimpleX Chat: v5.2 released with message delivery receipts](./blog/20230722-simplex-chat-v5-2-message-delivery-receipts.md). @@ -366,13 +368,13 @@ Please also join [#simplex-devs](https://simplex.chat/contact#/?v=1-2&smp=smp%3A - ✅ Message delivery confirmation (with sender opt-out per contact). - ✅ Desktop client. - ✅ Encryption of local files stored in the app. -- 🏗 Using mobile profiles from the desktop app. +- ✅ Using mobile profiles from the desktop app. +- 🏗 Improve experience for the new users. +- 🏗 Post-quantum resistant key exchange in double ratchet protocol. +- 🏗 Large groups, communities and public channels. - Message delivery relay for senders (to conceal IP address from the recipients' servers and to reduce the traffic). -- Post-quantum resistant key exchange in double ratchet protocol. -- Large groups, communities and public channels. - Privacy & security slider - a simple way to set all settings at once. - Improve sending videos (including encryption of locally stored videos). -- Improve experience for the new users. - SMP queue redundancy and rotation (manual is supported). - Include optional message into connection request sent via contact address. - Improved navigation and search in the conversation (expand and scroll to quoted message, scroll to search results, etc.). diff --git a/blog/20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.md b/blog/20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.md index aef4dddf64..4fbfc400ad 100644 --- a/blog/20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.md +++ b/blog/20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.md @@ -2,48 +2,128 @@ layout: layouts/article.html title: "SimpleX Chat v5.4 - link mobile and desktop apps via quantum resistant protocol, and much better groups." date: 2023-11-25 -preview: SimpleX Chat v5.4 - link mobile and desktop apps via quantum resistant protocol, and much better groups. -# image: images/20231125-remote-desktop.jpg -draft: true -imageWide: true -permalink: "/blog/20231125-simplex-chat-v5-4-quantum-resistant-mobile-from-desktop-better-groups.html" +previewBody: blog_previews/20231125.html +image: images/20231125-mobile2.png +permalink: "/blog/20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.html" --- -TODO stub for release announcement - # SimpleX Chat v5.4 - link mobile and desktop apps via quantum resistant protocol, and much better groups. **Published:** Nov 25, 2023 -- [Quick start: control SimpleX Chat mobile app from CLI](#⚡️-quick-start-use-profiles-in-SimpleX-Chat-mobile-from-desktop-app) -- [What's the problem](#whats-the-problem) -- [Why didn't we use some existing solution?](#why-didnt-we-use-some-existing-solution) +**What's new in v5.4:** +- [Link mobile and desktop apps via secure quantum-resistant protocol](#link-mobile-and-desktop-apps-via-secure-quantum-resistant-protocol). + - ⚡️ Quick start - how to use it. + - How does it work? + - 🤖 Connecting to remote CLI. +- [Better groups](#better-groups). + - [Faster to join and more reliable](#faster-to-join-with-more-reliable-message-delivery). + - [New group features](#new-group-features): + - create groups with incognito profile, + - block group members to reduce noise, + - prohibit files and media in a group. +- [Better calls](#better-calls): faster to connect, with screen sharing on desktop. -## ⚡️ Quick start: use profiles in SimpleX Chat mobile from desktop app +There are many [other improvements](#other-improvements) and fixes in this release: + - profile names now allow spaces. + - when you delete contacts, they are optionally notified. + - previously used and your own SimpleX links are recognized by the app. + - and more - see the [release notes](https://github.com/simplex-chat/simplex-chat/releases/tag/v5.4.0). -## What's the problem? +## Link mobile and desktop apps via secure quantum-resistant protocol -Currently you cannot use the same SimpleX Chat profile on mobile and desktop devices. Even though you can use small groups instead of direct conversations as a workaround, it is quite inconvenient – read status and delivery receipts become much less useful. +This release allows to use chat profiles you have in mobile app from desktop app. -So, we need a way to use the same profile on desktop as we use on mobile. +This is only possible when both devices are connected to the same local network. To send and receive messages mobile app has to be connected to the Internet. -If SimpleX Chat profile was stored on the server, the problem would have been simpler - you can just connect to it from another device. But even in this case, accessing the conversation history without compromising the security of double ratchet end-to-end encryption is not really possible. +### ⚡️ Quick start - how to use it -So we decided to implement the solution that is similar to what WhatsApp and WeChat did in early days - allowing a desktop device access profile on mobile via network. Unlike these big apps, we don't use the server to connect to mobile, but instead use the connection over the local network. +**On desktop** -The downside of this approach is that mobile device has to be with you and connected to the same local network (and in case of iOS, the app has to be in the foreground as well). But the upside is that we the connection can be secure, and that you do not have to have a copy of your profiles on the desktop, which usually has lower security. +If you don't have desktop app installed yet, [download it](https://simplex.chat/downloads/) and create any chat profile - you don't need to use it, and when you create it there are no server requests sent and no accounts are created. Think about it as about user profile on your computer. -## Why didn't we use some existing solution? +Then in desktop app settings choose *Link a mobile* - it will show a QR code. -While there are several existing protocols for remote access, all of them are vulnerable to spoofing and man + - in many cases support of sending files and images is not very good, and sending videos and large files is simply impossible. There are currently these problems: +**On mobile** -- the sender has to be online for file transfer to complete, once it was confirmed by the recipient. -- when the file is sent to the group, the sender will have to transfer it separately to each member, creating a lot of traffic. -- the file transfer is slow, as it is sent in small chunks - approximately 16kb per message. +In mobile app settings choose *Use from desktop*, scan the QR code and verify session code when it appears on both devices - it should be the same. Verifying session code confirms that the devices are connected directly via a secure encrypted connection. There is an option to verify this code on subsequent connections too, but by default it is only required once. -As a result, we limited the supported size of files in the app to 8mb. Even for supported files, it is quite inefficient for sending any files to large groups. + + +The devices are now paired, and you can continue using all mobile profiles from desktop. + +If it is an Android app, you can move the app to background, but iOS app has to remain open. In both cases, while you are using mobile profiles from desktop, you won't be able to use mobile app. + +The subsequent connections happen much faster - by default, the desktop app broadcasts its session address to the network, in encrypted form, and mobile app connects to it once you choose *Use from desktop* in mobile app settings. + +### How does it work? + +The way we designed this solution avoided any security compromises, and the end-to-end encryption remained as secure as it was - it uses [double-ratchet algorithm](../docs/GLOSSARY.md#double-ratchet-algorithm), with [perfect forward secrecy](../docs/GLOSSARY.md#forward-secrecy), [post-compromise security](../docs/GLOSSARY.md#post-compromise-security) and deniability. + +This solution is similar to WhatsApp and WeChat. But unlike these apps, no server is involved in the connection between mobile and desktop. The connection itself uses a new SimpleX Remote Control Protocol (XRCP) based on secure TLS 1.3 and additional quantum-resistant encryption inside TLS. You can read XRCP protocol specification and threat model in [this document](https://github.com/simplex-chat/simplexmq/blob/master/rfcs/2023-10-25-remote-control.md). We will soon be [augmenting double ratchet](https://github.com/simplex-chat/simplex-chat/blob/master/docs/rfcs/2023-09-30-pq-double-ratchet.md) to be resistant to quantum computers as well. + +The downside of this approach is that mobile device has to be connected to the same local network as desktop. But the upside is that the connection is secure, and you do not need to have a copy of all your data on desktop, which usually has lower security than mobile. + +Please note, that the files you send, save or play from desktop app, and also images you view are automatically saved on your desktop device (encrypted by default except videos). To remove all these files you can unlink the paired mobile device from the desktop app settings – there will be an option soon allowing to remove the files without unlinking the mobile. + +### 🤖 Connecting to remote SimpleX CLI + +*Warning*: this section is for technically advanced users! + +If you run SimpleX CLI on a computer in another network - e.g., in the cloud VM or on a Raspberry Pi at home while you are at work, you can also use if from desktop via SSH tunnel. Below assumes that you have remote machine connected via SSH and CLI running there - you can use `tmux` for it to keep running when you are not connected via ssh. + +Follow these steps to use remote CLI from desktop app: +1. On the remote machine add the IP address of your desktop to the firewall rules, so that when CLI tries to connect to this address, it connects to `localhost` instead: `iptables -t nat -A OUTPUT -p all -d 192.168.1.100 -j DNAT --to-destination 127.0.0.1` (replace `192.168.1.100` with the actual address of your desktop, and make sure it is not needed for something else on your remote machine). +2. Also on the remote machine, run Simplex CLI with the option `--device-name 'SimpleX CLI'`, or any other name you like. You can also use the command `/set device name ` to set it for the CLI. +3. Choose *Link a mobile* in desktop app settings, note the port it shows under the QR code, and click "Share link". +4. Run ssh port forwarding on desktop computer to let your remote machine connect to desktop app: `ssh -R 12345:127.0.0.1:12345 -N user@example.com` where `12345` is the port on which desktop app is listening for the connections from step 3, `example.com` is the hostname or IP address of your remote machine, and `user` is some username on remote machine. You can run port forwarding in the background by adding `-f` option. +5. On the remote machine, run CLI command `/connect remote ctrl `, where `` is the desktop session address copied in step 3. You should run this command within 1 minute from choosing *Link a mobile*. +6. If the connection is successful, the CLI will ask you to verify the session code (you need to copy and paste the command) with the one shown in desktop app. Once you use `/verify remote ctrl ` command, CLI can be used from desktop app. +7. To stop remote session use `/stop remote ctrl` command. + +## Better groups + +### Faster to join, with more reliable message delivery + +We improved the protocols for groups, by making joining groups much faster, and also by adding message forwarding. Previously, the problem was that until a new member connects directly with each existing group member, they did not see each other messages in the group. The problem is explained in detail in [this video](https://www.youtube.com/watch?v=7yjQFmhAftE&t=1104s) at 18:23. + +With v5.4, the admin who added members to the group forwards messages to and from the new members until they connect to the existing members. So you should no longer miss any messages and be surprised with replies to messages you have never seen once you and new group members upgrade. + +### New group features + + + +**Create groups with incognito profile** + +Previously, you could only create groups with your main profile. This version allows creating groups with incognito profile directly. You will not be able to add your contacts, they can only join via group link. + +**Block group members to reduce noise** + +You now can block messages from group members that send too many messages, or the messages you don't won't to see. Blocked members won't know that you blocked their messages. When they send messages they will appear in the conversation as one line, showing how many messages were blocked. You can reveal them, or delete all sequential blocked messages at once. + +**Prohibit files and media in a group** + +Group owners now have an option to prohibit sending files and media. This can be useful if you don't won't any images shared, and only want to allow text messages. + +## Better calls + +Calls in SimpleX Chat still require a lot of work to become stable, but this version improved the speed of connecting calls, and they should work for more users. + +We also added screen sharing in video calls to desktop app. + +## Other improvements + +This version also has many small and large improvements to make the app more usable and reliable. + +The new users and group profiles now allow spaces in the names, to make them more readable. To message these contacts in CLI you need to use quotes, for example, `@'John Doe' Hello!`. + +When you delete contacts, you can notify them - to let them know they can't message you. + +When you try to connect to the same contact or join the same group, or connect via your own link, the app will recognize it and warn you, or simply open the correct conversation. + +You can find the full list of fixed bugs and small improvements in the [release notes](https://github.com/simplex-chat/simplex-chat/releases/tag/v5.4.0). ## SimpleX platform diff --git a/blog/README.md b/blog/README.md index 129ba2c80d..815009139f 100644 --- a/blog/README.md +++ b/blog/README.md @@ -1,5 +1,27 @@ # Blog +Nov 25, 2023 [SimpleX Chat v5.4 released](./20231125-simplex-chat-v5-4-link-mobile-desktop-quantum-resistant-better-groups.md) + +- Link mobile and desktop apps via secure quantum-resistant protocol. 🔗 +- Better groups: + - faster to join and more reliable. + - create groups with incognito profile. + - block group members to reduce noise. + - prohibit files and media in a group. +- Better calls: faster to connect, with screen sharing on desktop. +- Many other improvements. + +--- + +Sep 25, 2023 [SimpleX Chat v5.3 released](./20230925-simplex-chat-v5-3-desktop-app-local-file-encryption-directory-service.md) + +- new desktop app! 💻 +- directory service and other group improvements. +- encrypted local files and media with forward secrecy. +- simplified incognito mode. + +--- + July 22, 2023 [SimpleX Chat v5.2 released](./20230722-simplex-chat-v5-2-message-delivery-receipts.md) **What's new in v5.2:** diff --git a/blog/images/20231125-block.png b/blog/images/20231125-block.png new file mode 100644 index 0000000000000000000000000000000000000000..1928b7a6fd2d59a486798ae05a774a6b7c1f54dc GIT binary patch literal 1137734 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