this post was submitted on 17 Aug 2023
65 points (98.5% liked)

Linux

45513 readers
1265 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

My laptop is getting old and i can't have Element eat up half of my RAM. There are many more clients out there but which one is good? aka "the best? ;-)

My requirements: lightweight, encryption 100% supported, active development/community. runs neatly 24/7 in the background.

Should also support the latest features, let me customize when to get notifications: priorities / muted chatrooms. And ideally also look clean and run on the Pinephone. But that's optional.

I don't care which desktop environment or cli.

What do you use?

all 39 comments
sorted by: hot top controversial new old
[–] [email protected] 9 points 10 months ago

neochat has been my go to

[–] [email protected] 7 points 10 months ago (1 children)

If you are an Emacs user, then I suggest you try out Ement.el!

[–] [email protected] 2 points 10 months ago* (last edited 10 months ago) (1 children)

Emacs is such a weird Texteditor i must say.

[–] [email protected] 2 points 10 months ago

At this point, it would be insane to classify it as a text editor only. I personally refer to it as the "Emacs distribution"; a distribution that happens to have its own integrated text editor and other useful tools. But a more accurate description is, Emacs is an e-lisp interpreter and because of this it's a very extensible tool!

[–] [email protected] 7 points 10 months ago

i am currently testing https://iamb.chat/ it's a bit unique in how it does things but promising of you're into TUI and vim

[–] [email protected] 5 points 10 months ago (2 children)

Try gomuks. It's cli written in go. Highly configurable and if your terminal supports images, it'll show them too.

[–] [email protected] 2 points 10 months ago

This client is cool! Thanks for the suggestion!

[–] [email protected] 2 points 10 months ago

Thanks. I'm halfway through installing all of you people's recommendations. I'm a bit disappointed in the way encryption is handled in matrix. I'm again running into issues. gomuks gives me its fingerprint but element doesn't do that kind of verification any more. Guess I have to try more client until I find one that combines all kinds of verifications and I can get encryption set up and connected between them.

[–] [email protected] 4 points 10 months ago

I don't think it will meet all your requirements (besides being light-weight), but I've been using weechat-matrix for a week and it's been fine. Without this, I wouldn't use matrix at all.

[–] [email protected] 4 points 10 months ago* (last edited 10 months ago)

There's matrix-cli, but i don't know anything about it.

[–] [email protected] 3 points 10 months ago

Cinny on the desktop.

[–] [email protected] 2 points 10 months ago (1 children)

for the curious, how much RAM do you have?

[–] [email protected] 2 points 10 months ago (2 children)

8GB on my laptop but shared with a modern browser with 500 tabs open, an editor(/IDE), mail-client and whatever gnome likes to waste resources on (gnome-shell, gnome-software in the background etc). that accumulates to a bit less than 5GB. Plus whatever i currently need open to work on. And a computer needs a bit spare to buffer/cache things.

The pinephone has 3GB of RAM.

It's not nothing. But also not enough to have every other application written in Flutter.

[–] [email protected] 1 points 10 months ago (1 children)

Did gou look into what takes up the most memory? You could downgrade from the modern browser with 500 tabs to netsurf with 500 bookmarks, perhaps, or similar. Many modern websites don't work there, though.

Instead of Gnome, I'm using Sway, at the moment it's taking up 236MB resident.

Do you need that mail client to run 24x7? It's better for mental health to check mail when you decide (once in the morning), not when some rando wants to sell you cannabis oil (best cure for any ailment!) - or you might find something tiny that checks for email and shows a desktop notification, so you know to launch your mail client.

Alacritty likes to munch memory, Foot takes up much less, but Foot doesn't render some colors correctly, for whatever reason.

Shop around, there are more options than just changing the Matrix client.

[–] [email protected] 1 points 10 months ago* (last edited 10 months ago) (1 children)

Yeah, I know. And I'm scaling down with all of those, too (eventually). It's just ... I have to start somewhere. And I've decided Element is the first to go. Gnome is kind of nice. And works well on a touchscreen. And I sometimes need WebRTC, mic/camera and video in my browser.

I can use a more lightweight browser for my daily use and maybe get organized and close tabs and use bookmarks. I like the concept of tiling window managers, so maybe I'm going for something like Sway next. I've had used Xfce for a bit, but that also uses quite a lot of RAM (for something that claims to be lightweight?). And changing from KDE/Gnome comes with quite a lot of choices for alternative programs and new little helpers to get accustomed to. From the little thing that shows me the time in the US and the weather in front of my own door to the calculator to the default mail client. It's a bit more complicated and just takes a bit of time.

Using mail 24/7 was a bit of an exaggeration. I'm using it in a healthy way. But It is useful to get for example the notification that a parcel is getting delivered today, to talk to companies and people who don't own a proper messenger. At least I'm okay with the 5 spam mails while everybody around me is getting constant notifications because some friend sent some deep motivational quote on WhatsApp.

Thank you all for the suggestions. Now I have to have a closer look at each of them. It's just, I've been annoyed a bit lately. I think 8GB should be plenty and enough to not worry about RAM and just use any application and open as much as you like.

[–] [email protected] 2 points 10 months ago

An easy start would be Firefox + tree style tabs + auto tab discard, that way you can have your 500 tabs and keep only N loaded (you choose N).

[–] j4k3 2 points 10 months ago (1 children)

Only using Android for socials and only tried element. I want something different. Element has a settings overload, but no way to remove the status bar icon. I hate that so much I just leave it disabled in settings unless I need to use it.

[–] [email protected] 3 points 10 months ago (1 children)

what do you mean by status bar icon? if you mean the persistent notification, it's so element isn't killed by android and can receive push notifications without google play services

[–] j4k3 2 points 10 months ago (3 children)

Yeah. I like my home screen like Gnome's DE; nothing on it whatsoever. I only want my 3 button navigation, clock, WiFi status and battery. Absolute fine grain control over my notifications is very important to me. I'm extremely burned out on notifications used for user attention manipulation on the google framework. I an on Graphene with no google services. I only want notifications if they can be default opt-in and primarily peer to peer for things like DM. I don't want any visual indicator for such background services. Basically, I expect SMS like functionality; out of sight, out of mind until needed.

[–] [email protected] 4 points 10 months ago* (last edited 10 months ago) (1 children)

I think the way to handle this is to long-press on that notification and turn it off. This way the notification is there in theory so your app doesn't get killed in the background and you don't get a notification shown either. I did that with all the persistent notifications from several apps (including Element) and my phone looks clean. But don't disable all the notification categories. Just the persistent background one so that you'll still get notified of messages and so on.

[–] j4k3 2 points 10 months ago (2 children)

Interesting. Thanks for the info. I turned off the listening notification. Hopefully this is the one you meant. I hadn't thought about settings for the device itself.

I don't entirely understand the verification notice and all. I don't understand the context of verification. I generally avoid making any external internet connections (finger printing) between my phone and other hardware. They are on separate VPNs and firewalls. I get the message about no verification every time I open element. I don't know what it is trying to verify exactly. I imagine it is a copy of the keys and hashes, but like, I don't want to connect social across devices and I am given no options or context details. I don't mind backing up or storing keys, but I'm not installing the software on my workstation or punching holes in that firewall.

[–] [email protected] 3 points 10 months ago

Anyone with access to your homeserver can change your password and log into your account. That's why by default, when someone logs into account, their session is unverified and doesn't have access to encryption keys. To verify it and sync encryption keys, you have to mark it as trusted from another device you own (which sends the encryption keys from the old device), or if it's the first session it becomes the only trusted device (and generates new encryption keys).

Note that the homeserver owner can always reset all of your sessions and encryption keys, then log in as the first session. They won't be able to read your past encrypted messages obviously, but they will be able to impersonate you. To prevent that, you can additionally perform the same verification process for the devices of those you chat with - that way they will also know which devices you marked as trusted.

[–] [email protected] 2 points 10 months ago* (last edited 10 months ago)

Yeah. That's the correct one. You can also do that with other apps that rely on a background connection to some server. I also don't use google and their cloud messaging. So that's the way around it.

Regarding the verification: It's an additional layer of security for you. To make sure all the devices logged in into your account actually belong to you. Otherwise someone with access to your computer or password (or matrix-server(?)) could in theory read your messages. To prevent that, they make you verify it's actually you who registered that additional device. I think Element has an option to not sync encryption keys with unverified devices. So you could end up with malfunctioning encryption. But in case it's working fine for you, you can skip the verification. You're just missing out on the extra security this way.

[–] [email protected] 3 points 10 months ago

thing is what you want is impossible (background services with no notification). However, Android has per-app notification settings where you can toggle notification categories, so the app can request to not be killed by showing a persistent notification, and you won't see it because you've hidden it

[–] [email protected] 3 points 10 months ago (1 children)

so turn off notifications??

[–] j4k3 2 points 10 months ago

Yes, for social type stuff. I'm disabled. Interruptions are very counter productive for me. If I have the strength to work on something, the last thing I need is some excuse for distraction. It will only be a short time before I will need to take a break, and will inevitably see whatever pending dot notifications I am interested in checking. Or I'll just check them manually if I care. I don't mind when notifications are from individuals sending direct messages. I don't want any other form of notifications by default. I'm fine with something like a dot notification on the app only, like if there is a direct comment reply to something I posted on a general thread, but this is not a phone call, sms or equivalent type of priority to me. It is peripheral, and something that has limited import. It shouldn't demand my attention with a sound in the real analog world, or shove itself in my face the moment I view a device. Like a student in a classroom, it should quietly raise its hand and wait for its turn if time allows.

[–] [email protected] -5 points 10 months ago (1 children)

The matrix website has an extensive list of matrix clients out there. Idk why this question is still asked when the answer is very easily found.

https://matrix.org/ecosystem/clients/

[–] [email protected] 7 points 10 months ago* (last edited 10 months ago) (1 children)

Two of the top answers here are missing from that list and, to be frank, that list does not really contain any useful information. For example, where do I see on that list which clients can display images?

[–] [email protected] -4 points 10 months ago (1 children)

You just click on the links and go to their pages... This is literally such little effort dude.

[–] [email protected] 4 points 10 months ago* (last edited 10 months ago)

I was specifically asking for recommendations by actual humans. I didn't write a lengthy essay about all of my previous life but I'm pretty aware of that list and even tried several clients but never found anything I fell in love with.

You sometimes simply (and politely) ask other people. And you learn. The main benefits are: You get real-world info. There are several clients out there that are only good 'in theory' but are lacking in every day use. And second, if you get the answer that everyone is happy with something and you're the only one with a certain problem, you get to learn that you do something wrong or have a weird use-case.

You don't get that info from that list. And how would I even do this? Start a spreadsheet with the 19 mentioned clients, have 20 features I need and go through the source code to see what's implemented for every client that hasn't a proper list on their github Readme? How long would that take me? And then install all the 20 clients and measure their resource usage or infer it from the programming language/framework? No, no. Sometimes asking people is just the way. And word-of-mouth is exceptionally good when you're directly speaking with people and recommending them some distro or good piece of software out of the hundreds of possible choices.

I'm sorry for being a bit rude myself. My main point was just to explain myself.