briar issueshttps://code.briarproject.org/groups/briar/-/issues2022-01-06T17:04:05Zhttps://code.briarproject.org/briar/briar-desktop/-/issues/150README: Link to milestones → empty list2022-01-06T17:04:05ZSebastianREADME: Link to milestones → empty listWe could link here instead: https://code.briarproject.org/groups/briar/-/milestones?search_title=desktop&state=&sort=We could link here instead: https://code.briarproject.org/groups/briar/-/milestones?search_title=desktop&state=&sort=Desktop 0.1.0https://code.briarproject.org/briar/briar-desktop/-/issues/147Update milestones in wiki and derive tickets for first release2022-01-06T17:04:06ZSebastianUpdate milestones in wiki and derive tickets for first releaseDesktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/145Inform contacts about supported features such as groups, forums, blogs etc2022-01-18T16:24:05ZSebastianInform contacts about supported features such as groups, forums, blogs etcNow that we know, that the first Desktop release is not going to support forums, group chats and blogs, we need to inform contacts about that. @akwizgran any guidance on what we need to do there?Now that we know, that the first Desktop release is not going to support forums, group chats and blogs, we need to inform contacts about that. @akwizgran any guidance on what we need to do there?Desktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/144Add Features flags like in briar2022-01-07T21:38:07ZSebastianAdd Features flags like in briarSo that we can disable forums, group chats and blogsSo that we can disable forums, group chats and blogsDesktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/142Bump Compose to stable v1.0.12022-01-07T22:43:51ZMikolai GütschowBump Compose to stable v1.0.1Desktop 0.1.0Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/140Check TODO notes in code before release2022-01-18T21:03:04ZSebastianCheck TODO notes in code before releaseAt some point, we should check whether any of the TODO notes in code needs to be resolved before the first release for example. Create issues for them or might solve them direct.At some point, we should check whether any of the TODO notes in code needs to be resolved before the first release for example. Create issues for them or might solve them direct.Desktop 0.1.0NicoNicohttps://code.briarproject.org/briar/briar-desktop/-/issues/139Write Transifex announcement about Briar Desktop2021-12-22T15:56:16ZNicoWrite Transifex announcement about Briar DesktopDesktop 0.1.0NicoNico2021-12-22https://code.briarproject.org/briar/briar-desktop/-/issues/138Add Contact Dialog TextBox Visual Bug2022-01-06T22:00:22ZpaulAdd Contact Dialog TextBox Visual BugOn Trisquel Linux, with the default Briar desktop window size, the bottom textbox's content is not visible.
![dialog-bug](/uploads/e0c98ac0c82e3564208d4100e157f285/dialog-bug.gif)On Trisquel Linux, with the default Briar desktop window size, the bottom textbox's content is not visible.
![dialog-bug](/uploads/e0c98ac0c82e3564208d4100e157f285/dialog-bug.gif)Desktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/136IDEA formatting and ktlintFormat disagreement2021-12-06T14:25:10ZSebastianIDEA formatting and ktlintFormat disagreementDesktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/135Display pending contacts in contact list2022-01-18T16:38:42ZSebastianDisplay pending contacts in contact listDesktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/134KDoc formatting2021-12-06T14:25:10ZSebastianKDoc formattingI just noticed the KDoc in DeterministicTestDataCreator as a bit strangely indented. ktlintFormat and the IDEA formatter don't seem to care, but they both allow us to format multi-line `@param` descriptions on the second line as we like....I just noticed the KDoc in DeterministicTestDataCreator as a bit strangely indented. ktlintFormat and the IDEA formatter don't seem to care, but they both allow us to format multi-line `@param` descriptions on the second line as we like. I've looked through the kotlin codebase to find examples on how the do it and found [at least this](https://github.com/JetBrains/kotlin/blob/master/libraries/stdlib/src/kotlin/reflect/KProperty.kt#L63). In the same file there's also an example of different style, so apparently they didn't agree on or enforce something either.Desktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/127Fix license for deb packages2022-01-07T21:41:32ZSebastianFix license for deb packagesAs noticed in !44 we cannot specify a license file for the deb files yet
There is an upstream ticket with compose-jb now:
https://github.com/JetBrains/compose-jb/issues/1405As noticed in !44 we cannot specify a license file for the deb files yet
There is an upstream ticket with compose-jb now:
https://github.com/JetBrains/compose-jb/issues/1405Desktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/125Ability to select and delete single messages in chat history2022-01-08T17:42:43ZMikolai GütschowAbility to select and delete single messages in chat historyOn Android, the selection is instantiated by a long press. Not sure what is the best practice for desktop applications nowadays: Right-click on the message, activate an option in the context menu and show checkbox next to each message, o...On Android, the selection is instantiated by a long press. Not sure what is the best practice for desktop applications nowadays: Right-click on the message, activate an option in the context menu and show checkbox next to each message, or something else?Desktop 0.1.0Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/124Option to delete all messages in chat history2022-01-07T22:09:08ZMikolai GütschowOption to delete all messages in chat historyBasically an implementation of the context menu entry "Delete all messages"Basically an implementation of the context menu entry "Delete all messages"Desktop 0.1.0Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/123Show Briar logo in taskbar and window header2021-12-06T14:25:10ZMikolai GütschowShow Briar logo in taskbar and window headerCurrently a (quite ugly) Java placeholder logo is shown in both places: ![image](/uploads/55814d0d6002f34cd45e82d7de658531/image.png)Currently a (quite ugly) Java placeholder logo is shown in both places: ![image](/uploads/55814d0d6002f34cd45e82d7de658531/image.png)Desktop 0.1.0Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/122Category for .desktop file2022-01-06T17:04:06ZSebastianCategory for .desktop fileWhen installing the deb, a beautiful launcher is created for the desktop environment's application launcher.
On my system it looks like this:
![Screenshot_from_2021-11-16_12-14-02](/uploads/87b95977cd678ece1a52ab11f9c6678b/Screenshot_f...When installing the deb, a beautiful launcher is created for the desktop environment's application launcher.
On my system it looks like this:
![Screenshot_from_2021-11-16_12-14-02](/uploads/87b95977cd678ece1a52ab11f9c6678b/Screenshot_from_2021-11-16_12-14-02.png)
Sweet!
The only pity is it is created in the "Other" category, I'd say "Internet" would be more appropriate.
Looking at `/opt/briar-desktop/lib/briar-desktop-Briar.desktop`:
```
[Desktop Entry]
Name=Briar
Comment=Secure messaging, anywhere
Exec=/opt/briar-desktop/bin/Briar
Icon=/opt/briar-desktop/lib/Briar.png
Terminal=false
Type=Application
Categories=Unknown
MimeType=
```
I think we should add something meaningful to the Categories entry. No idea yet how to configure that, but let's hope there is some way :DDesktop 0.1.0SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/121Write proposal for at least one funding opportunity2021-12-06T14:25:09ZSebastianWrite proposal for at least one funding opportunityDesktop 0.1.0https://code.briarproject.org/briar/briar-desktop/-/issues/119[jar] SecurityException: Invalid signature file digest for Manifest main attr...2021-12-06T14:25:09ZNico[jar] SecurityException: Invalid signature file digest for Manifest main attributesWhen executing the .jar file (with the correct Java version, i.e., 15+), the following error appears. This comes from signatures of daughter .jar files we're shipping, if I understand it correctly, and can be solved by simply stripping t...When executing the .jar file (with the correct Java version, i.e., 15+), the following error appears. This comes from signatures of daughter .jar files we're shipping, if I understand it correctly, and can be solved by simply stripping those signatures. I already have a commit for this, MR incoming...
I don't think it's a problem to strip the signatures, as we already verify the dependencies integrity with gradle-witness. Once we publish "real" .jar files, we should sign them somehow, though.
```
➜ /tmp cd jdk-17.0.1
➜ jdk-17.0.1 cd bin
➜ bin ./java -jar /home/briar/Documents/briar-desktop/build/compose/jars/Briar-linux-x64-0.0.1.jar
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
at java.base/sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:340)
at java.base/sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:282)
at java.base/java.util.jar.JarVerifier.processEntry(JarVerifier.java:277)
at java.base/java.util.jar.JarVerifier.update(JarVerifier.java:234)
at java.base/java.util.jar.JarFile.initializeVerifier(JarFile.java:762)
at java.base/java.util.jar.JarFile.ensureInitialization(JarFile.java:1033)
at java.base/java.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:72)
at java.base/jdk.internal.loader.URLClassPath$JarLoader$2.getManifest(URLClassPath.java:883)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:848)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:467)
at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:780)
```Desktop 0.1.0NicoNicohttps://code.briarproject.org/briar/briar-desktop/-/issues/118[deb] NoClassDefFoundError: java/sql/SQLException2022-09-01T11:18:53ZNico[deb] NoClassDefFoundError: java/sql/SQLExceptionExecuting the .deb package currently fails with the following error:
```
➜ ~ /opt/briar-desktop/bin/Briar
Exception in thread "main" java.lang.NoClassDefFoundError: java/sql/SQLException
at org.briarproject.bramble.db.DatabaseModule.p...Executing the .deb package currently fails with the following error:
```
➜ ~ /opt/briar-desktop/bin/Briar
Exception in thread "main" java.lang.NoClassDefFoundError: java/sql/SQLException
at org.briarproject.bramble.db.DatabaseModule.provideDatabase(DatabaseModule.java:27)
at org.briarproject.bramble.db.DatabaseModule_ProvideDatabaseFactory.provideDatabase(DatabaseModule_ProvideDatabaseFactory.java:47)
at org.briarproject.bramble.db.DatabaseModule_ProvideDatabaseFactory.get(DatabaseModule_ProvideDatabaseFactory.java:36)
at org.briarproject.bramble.db.DatabaseModule_ProvideDatabaseFactory.get(DatabaseModule_ProvideDatabaseFactory.java:12)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at org.briarproject.bramble.db.DatabaseModule_ProvideDatabaseComponentFactory.get(DatabaseModule_ProvideDatabaseComponentFactory.java:40)
at org.briarproject.bramble.db.DatabaseModule_ProvideDatabaseComponentFactory.get(DatabaseModule_ProvideDatabaseComponentFactory.java:13)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl_Factory.get(LifecycleManagerImpl_Factory.java:30)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl_Factory.get(LifecycleManagerImpl_Factory.java:10)
at org.briarproject.bramble.lifecycle.LifecycleModule_ProvideLifecycleManagerFactory.get(LifecycleModule_ProvideLifecycleManagerFactory.java:26)
at org.briarproject.bramble.lifecycle.LifecycleModule_ProvideLifecycleManagerFactory.get(LifecycleModule_ProvideLifecycleManagerFactory.java:9)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at org.briarproject.bramble.cleanup.CleanupModule_ProvideCleanupManagerFactory.get(CleanupModule_ProvideCleanupManagerFactory.java:35)
at org.briarproject.bramble.cleanup.CleanupModule_ProvideCleanupManagerFactory.get(CleanupModule_ProvideCleanupManagerFactory.java:11)
at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
at org.briarproject.briar.desktop.DaggerBriarDesktopApp.injectEagerSingletons(DaggerBriarDesktopApp.java:1428)
at org.briarproject.briar.desktop.DaggerBriarDesktopApp.inject(DaggerBriarDesktopApp.java:1320)
at org.briarproject.bramble.BrambleCoreEagerSingletons$Helper.injectEagerSingletons(BrambleCoreEagerSingletons.java:48)
at org.briarproject.briar.desktop.Main.run(Main.kt:75)
at com.github.ajalt.clikt.parsers.Parser.parse(Parser.kt:198)
at com.github.ajalt.clikt.parsers.Parser.parse(Parser.kt:18)
at com.github.ajalt.clikt.core.CliktCommand.parse(CliktCommand.kt:395)
at com.github.ajalt.clikt.core.CliktCommand.parse$default(CliktCommand.kt:392)
at com.github.ajalt.clikt.core.CliktCommand.main(CliktCommand.kt:410)
at com.github.ajalt.clikt.core.CliktCommand.main(CliktCommand.kt:435)
at org.briarproject.briar.desktop.MainKt.main(Main.kt:102)
Caused by: java.lang.ClassNotFoundException: java.sql.SQLException
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 27 more
Failed to launch JVM
```Desktop 0.1.0NicoNicohttps://code.briarproject.org/briar/briar-desktop/-/issues/117Add copyright notices to all files2022-01-18T16:34:18ZNicoAdd copyright notices to all filesFollow-up to https://code.briarproject.org/briar/briar-desktop/-/merge_requests/38#note_56628.
At Briar GTK I respected https://reuse.software/, with file headers looking like this:
```python
# Copyright (c) 2019 Nico Alt
# Copyright (c...Follow-up to https://code.briarproject.org/briar/briar-desktop/-/merge_requests/38#note_56628.
At Briar GTK I respected https://reuse.software/, with file headers looking like this:
```python
# Copyright (c) 2019 Nico Alt
# Copyright (c) 2014-2018 Cedric Bellegarde <cedric.bellegarde@adishatz.org>
# SPDX-License-Identifier: AGPL-3.0-only
# License-Filename: LICENSE.md
#
# Initial version based on GNOME Lollypop
# https://gitlab.gnome.org/World/lollypop/blob/1.0.2/lollypop/define.py
```
https://code.briarproject.org/briar/briar-gtk/-/blob/0.1.0-beta3/briar-gtk/briar_gtk/define.py
For our project I would suggest something like this:
```kotlin
/*
* SPDX-FileCopyrightText: 2021 The Briar Project <contact@briarproject.org>
* SPDX-License-Identifier: AGPL-3.0-only
* License-Filename: LICENSE.md
*/
```Desktop 0.1.0SebastianSebastian