9 ms·
GTK4 Matrix Client
- JCWasmx86 5y agoOr an alternative GTK4 Matrix client: https://gitlab.gnome.org/GNOME/fractal https://gitlab.gnome.org/GNOME/fractal written in Rust, although a bit of WIP
- ushakov 5y agothanks for sharing, i know fractal but didn’t knew they upgraded to GTK4
- JCWasmx86 5y agoThe client fractal was rewritten for GTK4 (Called fractal-next) and some days ago, the GTK3 Fractal is now the legacy one and Fractal-Next is the new Fractal
- smoldesu 5y agoDoesn't look like they've added any features with the GTK4 build, just from scrolling through the recent commit history. Much like a lot of these recent GTK4/Libadwaita apps, it looks like they're just maintaining feature parity with the old version while removing the flexibility the older versions had (eg. more packaging options, better customization, none of the reviled "flat button" nonsense, more accessibility options for people with vision impairments, etc). Kinda annoying, but at least the writing is on the wall that I need to find a new Matrix client.
- CameronNemo 5y agoThe new version was completely rewritten from scratch to use the new matrix rust SDK. As a result it supports E2EE, while the old version does not support that.
- NewJazz 5y agoThe featured go gtk4 client also seems wip. Doesn't even support e2ee, which fractal does support.
- IceWreck 5y agoThis still needs some dev (lacks E2EE and Notifications) but looks good otherwise. Its written in Go and it looks like the author generates their own gtk4 to go bindings. https://github.com/diamondburned/gotk4 https://github.com/diamondburned/gotk4
- Arathorn 5y agoThis looks really promising. I’d love to know why the author wrote their own SDK rather than using gomautrix or similar (and so getting E2EE for free)
- _abox 5y agoI wish there was a good high density client for matrix. Like an IRC client. All the ones I've seen emulate Whatsapp and signal. Big avatars, lots of spacing everywhere. This doesn't work well if you bridge lots of other networks with many channels. Discord, slacks etc. For now I still bridge that kind of network to IRC, and I use matrix just for my personal chats. Because there's just no good client that doesn't become a huge mess with that many channels open.
- JCWasmx86 5y agoElement has an IRC mode, at least for the messages
- GekkePrutser 5y agoYeah I know but the messages are exactly the part where I don't really need it. It's the channel list that becomes a mess. It could really do with threaded channel lists too, so I can have my slack groups and discord servers with their channels underneath without bunching them all together without any organization.
- the_duke 5y agoYou can sort of create or your own threaded channel list by using spaces. That use case was actually mentioned in the spaces announcements. Of course the UX for spaces isn't exactly great either atm.
- GekkePrutser 5y agoYeah I looked at spaces but it didn't seem to work for me. I couldn't set it up with my local bridges the way I want. And I don't want to micromanage everything. The old tags worked very well for this but the problem is that element shows each tag as its own independently scrolling list. So if you have many of them you have lots of tiny scroll zones. That doesn't work at all. Also they seem to be wanting to deprecate tags, most of the management features have been removed from element.
- jimmygrapes 5y agoI appreciate that there are more clients for matrix being developed, but I really wish there was more effort put into making a better server. Dendrite and Conduit are making progress, but it's excruciatingly slow. Synapse works but feels extremely clunky to set up and maintain, and that's not even counting the resource usage (which is admittedly getting better, but still harsh).
- Arathorn 5y agoDendrite development is literally going faster than ever, with major releases every 2 weeks, and 0.8 out last Friday (https://github.com/matrix-org/dendrite/releases https://github.com/matrix-org/dendrite/releases), and 83% CS API compliance and 95% SS API. (Edit: see also the commit graph: https://github.com/matrix-org/dendrite/graphs/contributors https://github.com/matrix-org/dendrite/graphs/contributors) The core team is depending on it to power the reference P2P matrix implementation as per https://arewep2pyet.com https://arewep2pyet.com, plus we currently have dedicated funding for Dendrite, avoiding the team getting sidetracked by other stuff as they have been in the past. Meanwhile Synapse is continuously getting more resource efficient too, with Fast Joins landing shortly - and Conduit looks to be making decent progress as well. In other words, i think we’re about to enter a golden age of Matrix servers :)
- j-james 5y agoAre there plans to switch the matrix.org homeservers over from Synapse to Dendrite once Dendrite is feature-complete?
- feanaro 5y ago> Synapse works but feels extremely clunky to set up and maintain, and that's not even counting the resource usage (which is admittedly getting better, but still harsh). What's clunky about Synapse setup? I can perhaps see setting up a worker (sharded) setup is a bit complicated, but a basic monolithic instance is pretty straightforward. Also, how much resource usage are you seeing? My monolithic Synapse instance uses about 300-500M of memory usage and 5-15% CPU isn't at all bad and it's in a lot of rooms.
- unicornporn 5y agoLike almost every client out there it has no support for e2ee. I was happy to find https://nheko-reborn.github.io https://nheko-reborn.github.io (Qt based).
- Arathorn 5y agoOff the top of my head, Matrix clients with full support for E2EE include: * Element Web (via matrix-js-sdk) * Element iOS (via matrix-ios-sdk) * Element Android (via matrix-android-sdk2) * ElementX iOS (via matrix-rust-sdk) * Fluffychat (via Dart Matrix SDK) * Fractal (via matrix-rust-sdk) * Hydrogen (via hydrogen-sdk) * Syphon (built into its Dart codebase) * Thunderbird (via matrix-js-sdk) * Cinny (via matrix-js-sdk) * weechat-matrix (matrix-nio) * weechat-matrix-rs (matrix-rust-sdk) * nheko-reborn (mtxclient) * mirage (matrix-nio) * gomuks (gomautrix) * ocrcc-chatbox (matrix-js-sdk) ...and a bunch of abandoned ones too, like Riot Android (matrix-android-sdk), Seaglass (matrix-ios-sdk) and Daydream (matrix-rust-sdk). Meanwhile any Matrix client can speak E2EE if you connect it via the pantalaimon E2EE proxy (powered by matrix-nio). In other words, the whole "almost every Matrix client out there has no support for E2EE" is really not true - there are loads of them, spanning many different platforms, built using different independent SDKs.
- blendergeek 5y ago> * Fractal (via matrix-rust-sdk) Not yet. The next major release of fractal will be based on matrix-rust-sdk (and presumably will have E2E encryption).
- torstenvl 5y agoI'm curious as to what the purpose is of making a network client AGPL? I don't quite understand how the author wants this license to apply to this software.
- karmanyaahm 5y agoWith remote computing (running the OS and even webapps remotely https://www.cloudflare.com/products/zero-trust/browser-isolation/ https://www.cloudflare.com/products/zero-trust/browser-isola...) becoming more and more popular, I'd imagine it's a case of better safe than sorry.
- Arathorn 5y agoMaking client code AGPL normally means the author is making an ideological statement that “even if any of this could be run serverside, you must still release your changes”. (Or they are cargoculting a restrictive license from elsewhere :)
- megous 5y agogtk apps can be run on the server via broadway.
- goodpoint 5y agoIt makes a lot of sense to use AGPL around anything network-related: very often client code is used in servers and viceversa. Especially libraries. Additionally, having the same license in the whole server/client ecosystem makes things simpler.
- pgcj_poster 5y agoPeople working at certain big companies aren't allowed to use AGPL software on their work machines, which some people might consider a feature.
- k8sToGo 5y agoI looked at setting up a matrix server. It looks way too complicated. There is an Ansible script but it has a list of billion optional items. Too much choice is overwhelming.
- CameronNemo 5y agoDoesn't support e2ee, so why would I use it over fractal?
- snvzz 5y agoInteresting, but with E2EE still unavailable, it is not yet ready for consideration.
- oxplot 5y agoI really dig the GTK's thick header bars and the widgets you can put there. Pretty sure Apple was the inspiration but it's a very elegant use of otherwise wasted space. I recently made a simple app in Go with GTK and it was quite pleasant: https://github.com/oxplot/pdfrankenstein https://github.com/oxplot/pdfrankenstein
- kevincox 5y agoIt is a bit of a tossup though. Some apps make good use of this space and some apps have a thick empty header bar which wastes more space. Overall I think it is good and hopefully apps adapt but it is definitely hit-and-miss at this point.