cinny icon indicating copy to clipboard operation
cinny copied to clipboard

[crash] import buttons try to force a GTK dialog despite having none available

Open Tcll opened this issue 2 years ago • 8 comments

Describe the bug

I happily do not have GTK installed on my system, so anything that tries to force open a dialog for anything crashes my browser:

(librewolf:18117): GLib-GIO-ERROR **: 11:35:11.622: No GSettings schemas are installed on the system
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.

The bug is Cinny doesn't detect this and provide an alternative text input

Reproduction

1: remove GTK from your system 2: try to import an emoji, avatar, or key export 3: watch your browser crash

Expected behavior

you're shown an alternate text prompt for the URI you want to import (or at least given an option to alternatively specify the returned URI from the dialog)

Platform and versions

OS: Linux 5.19.10-artix1-1
Browser: LibreWolf 102.0
Cinny: v2.2.6

Additional context

I've removed most of the garbage from my system, such as dbus (integrations should be program-native), Qt, and other web-based backends... I'm ultimately working on removing glib2 and even going as far as glibc (the kernel is more stable), and potentially my init system (I start any daemons myself at login), so I can finally have a sane, stable, and actually secure and private (no integrations or even telemetry) system I actually own without any web garbage or other bloat. (no that doesn't mean I use a CLI for everything I do, my goal is to have a GUI like Win7 (or Vista) without any BS)

currently I only have a total of 342 packages installed, but that's being reduced as I go... but Gnome is specifically noted here because everything they do breaks stability, so don't expect me to reinstall it ;) (the lore was needed so you have an idea of where you need to focus on)

PS: remove the potential fingerprinting please, your canvases are setting off my alarms.

Tcll avatar Aug 21 '23 12:08 Tcll

LibreWolf depends on gtk3.

There's nothing to do with Cinny.

Kimiblock avatar Sep 08 '23 14:09 Kimiblock

You should remove WASM, which is bloated, and use native binaries instead. Cinny should detect that it can't run megolm (which is implemented in WASM), and offer to send the message in plaintext instead. Also, you should remove Gecko from the system, which is bloated (and offers endless tracking possibilities) and Cinny should detect it, and offer to use a TUI instead. Finally, you should remove Python which is bloated too (and slow) from your Matrix server, also remove Postgres, which eats like 90 MiB RAM when running empty. Also, the Matrix protocol abuse the bloated HTTP protocol by sending an entire HTTP request for a single message, most probably consisting of a single line, so you should ditch it too. Cinny should auto-detect it, and offer to use an IRC connection.

notramo avatar Oct 11 '23 07:10 notramo

There's nothing to do with Cinny.

so Cinny provides a text input now for file uploads and accepts mxc URLs for avatars already? GREAT! where is that located so I can change my ava and import my session keys?? :)

Tcll avatar Dec 25 '23 16:12 Tcll

Hey I'm still not finding any text input for these:

The problem, as mentioned prior, and in the title, is these strictly open a GTK dialog... There's no text input for me to enter a file path into.

Are you sure there's nothing to do with Cinny??

Tcll avatar Jan 12 '24 14:01 Tcll

It's not possible for webapps to access any path on your system. Webapps don't even know where the file was in your directory structure (what was the path), before opening it in browser. The webapps only see the file content and filename. Otherwise any webapp could scan your directory structure, or at least know where you stored the file. You have to patch Gecko to enable this functionality. After you have finished patching Gecko, come back here, and describe your new JS API for it, then the Cinny devs can implement it if you provide your Gecko patches as open source, so they can use locally to test the new feature while developing it.

notramo avatar Jan 12 '24 18:01 notramo

Hey, thanks for negotiating

... but couldn't you just allow me to change value in this with a text input??

... at least then it wouldn't be some malicious code capable of scanning your filesystem since the browser would still handle all that stuff within it's core (there's still no way to actually scan the filesystem through that)

This would probably be easier to implement for the "Import Keys" button since the ava upload uses some special flex stuff... but you could probably make that flex wrapper modify a hidden <input to achieve a text input for that...

Tcll avatar Jan 13 '24 00:01 Tcll

if it makes the work easier

not being able to change my account avatar is really not that big of an issue

but it would be nice to be able to import keys just by specifying the path

Tcll avatar Feb 08 '24 13:02 Tcll

Well I have news I fixed the schemas on my end so dialogs work for me now

but Cinny's UI is still poorly designed when it comes to inputs on forms that could absolutely be used for entering file paths I may not be a web developer, but I've at least done that before...

it's also good for if you want to set your global ava to an old mxc:// url

Tcll avatar Feb 20 '24 16:02 Tcll

Specifying path should be on browser not cinny so closing as we can't do much here.

kfiven avatar Aug 13 '24 07:08 kfiven