84
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 06 Dec 2023
84 points (74.7% liked)
Linux
48335 readers
437 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
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
That's the state of computing in 2023: a browser disguised as a native app running 15 layers of Javascript is used as a friggin terminal. And nobody bats an eyelids, as if the utter insanity of it made any sense.
And the installer is 117M compressed. That's MEGABYTES... For a terminal!
The mind boggles...
I've been using Alacritty for the last 4 years, it's kinda the opposite of this nonsense. It's written in Rust, it's super light weight, highly optimised, and uses hardware acceleration to render the terminal. It's top of the chart for every terminal performance benchmark conceived.
However, that lightness and fastness comes at a cost. There are some basic features they just won't add because they're outside the scope of the project. Eg, tabs ("just use a tiling wm and do your own tabs in the wm") or a scrollbar ("just use a shell with a scrolling screen buffer like Tmux"), or different coloured backgrounds for each opened window ("why would anyone ever want to do that?").
My holy grail terminal would be something like Alacritty, written in Rust, blisteringly fast and light weight, but with tabs, scrollbar, bookmarks, etc.
I find myself falling back to using Konsole a lot these days, it's got all the features I want, is fast enough, and already installed on every system I use Plasma on.
Me too. I just ran time tree across my home directory a few times. Native console (ie C-A-F3) - 54 seconds, Konsole - eight seconds.
Waveterm is still installing (Arch AUR). The fan has a Gentooesque sound to it as a suspiciously complicated thing gets built. Oh God ... electon ... terminal shaking ... golang ... fans whining ... lap melting ..... the Old Ones are stirring.
The deps for this thing are many. " I watched Firefox builds on Gentoo glitter in the dark near the Tannhäuser Gate". OK, its now arrived and my laptop case is making ping noises as it cools.
It takes 10 seconds or so to start up. Look pretty. Accept license agreement (wtf). Now what? Hmm lets try typing in that box. OK. time tree. Go back to Lemmy to type the last two paras of this comment, get bored and uninstall waveterm.
You nailed it. Too bloated (300 MB, wtf), too slow, incompatible with zsh and fish, no tiling, too few keyboard shortcuts, and way, WAY too much wasted screen space.
Back to my sweet, sweet Konsole.
I've been a KDE lover since 2.0 or so. I recall compiling it from a tarball for a laugh and it mostly working, which was quite a surprise. I think I had Slackware installed at the time on my desktop and KDE 1.x on it.
Anyway, 23 or so years later ... I'm looking forward to 6. Things have changed a bit 8)
♥️ KDE default apps ♥️
Dolphin, Konsole, Okular, Skanpage are so nice and I wouldn't be able to live without them. They feel so polished and solid, and somehow manage to have all the features I want without feeling cluttered
Haha Dolphin and solid. Currently having some memory issues due to kde connect, yayy gdb backtraces for all!
Try this rawhide Fedora Kinoite image! I am so close to just switching as it just works?
Ooh, don't mind if I do. Luckily I happen to have a tame VMware cluster and rather a lot of laptops ("mwaaa, mwaaa, won't run Windows 11") to play with.
One of my employees has actually expressed an interest in Linux as a daily driver, which has only taken 23 years. I'm looking for my corp standard distro and I don't think Gentoo or Arch are going to do the job. I'm leaning towards Fedora at the moment but there's no rush, I only get one chance to bring the kids into the light, despite being the MD 8)
If it should be corporation stuff with central accounts and all I think GNOME is really good. Fedora GNOME could for sure be an option and I would recommend Silverblue from ublue.it in that case, as it has all the drivers and codecs
Have a look at wezterm
+1 on this, I switched to Wezterm on my windows work machine to get most of the features missing from alacrity without having to go through the hoops to get a tmux like experience on windows.
I used to do Windows -> Alacrity -> WSL2 -> Tmux then launch my Windows powershell core session inside that terminal.
I never understand the whole thing around "fast" terminals. How can a terminal be "slow"? Surely the terminal you're using has no effect on the programs you're calling, so what's being measured here?
I get what you mean, it is an interesting question to explore.
For me, it think it appeals to my obsessive engineer-brain, I am hooked on chasing efficiency.
Eg, if one tool uses 10MB ram and takes 1second to complete a task, and another tool takes 50MB ram and 5 seconds to complete the same task, then clearly I want to use the more efficient one. The other must be wasting resources, right?
When it comes to real life software and real tasks, it is a lot more complicated than that, there are hundreds of variables to take into account and compare. But if one tool stands out among the others, optimising to achieve the best number (fastest time, lowest power draw, lowest ram use, etc) in each comparable variable, then I absolutely must use that one, it would be irresponsible not to, right?
Throw hardware acceleration into the mix, and it takes the situation to a new level. Why make my poor CPU render the text on the screen 60 times per second, when I can get the GPU to do it? It's just sitting there doing nothing, and it's better at the job anyway, and as a bonus you get even lower CPU utilisation and lower ram usage.
However, as I described in my previous post, chasing these numbers can come at the cost of usability. That's the case with Alacritty, and why I will be switching to wezterm.
The very few times your programs end up spamming a ton to stdout I guess
Konsole is my second favorite terminal app. Wezterm may be your holy grail.
Wow, just had a look at the Wezterm GitHub page, read the features and the docs. I think you're right, it does look like it will replace Alacritty for me.
For anyone else wondering about the differences between Alacritty and wezterm, or still on the fence, read this thread, particularly the comment from wez: https://github.com/wez/wezterm/discussions/1769
Give tmux or emacs a try. Or just use Kitty.
I am using Konsole currently, as it works best in KDE. Should I switch to Alacritty? I like to have one window and the rest in tabs, its pretty great. I guess alacritty doesnt have that right? What all does fit in the config? Konsole has tabs with special descriptors using path, host, program etc. You can change the color scheme, its pretty nice.
If you're happy with your tools just keep using them.
I like using kitty personally. I mostly chose it because of the cute name but it does everything I need.
I swear. I quit using iTerm and moved to Kitty because it was too inefficient and was eating up my battery on the go. There are so many apps that are just diguised browsers that eat too much memory and processing power and they make needing a powerful machine a requirement if you want to have multiple apps open. It's getting to a ridiculous point and it's inconvenient.
I don't understand why desktop JS apps don't use React Native at least. It's still JavaScript but doesn't use a browser, and renders to native UI widgets. Far lighter than Electron.
Well with react native you still have to deal with the native problem which a developer doesn't want to deal with, you know... You could... But if they really cared about making the app efficient and well they would have had a different decision making process... People nowadays don't really just the right tool for the job, they just have a tool and try to turn it in a universal hammer and solve everything with it
The disadvantage with React Native is that you still have to maintain a UI for each platform because it maps to native widgets while a web UI works the same on every platform.
Business/application logic can be 80-90% of an app's code, and all of it can be reused across platforms. The actual UI rendering is just a small part of it.
In the UI code, some of it does have to differ across platforms but it's mostly the lower level components like buttons, text fields, etc. Some product UI code built on top of those abstractions can be reused across platforms.
Sure, but it's still more work than a web UI, and using a web UI is a lot more flexible. For example, say you want to render a chart or some other visualization. It's trivial to do with a web UI, but can be a tricky problem with native widgets, especially if you want to keep the UX consistent across platforms. I agree that using React Native can work fine in a lot of cases, but I can also understand the appeal of using the web UI stack. Another aspect is likely familiarity, people use the tools they know, and if somebody is already comfortable with a particular ecosystem they're likely to leverage it.
But wasted ram is still wasted, unlike if the ram was actually used for caching or actually speeding things up, not bootstrapping a freaking browser
Oh that one pisses me off so much... they act like its the only damn thing i have open.
Exactly, your program using the minimum of RAM allows more for other programs to run and gives more memory for the OS to cache literally anything that isnt their web app, likely the filesystem, and that is a much better use of the RAM then letting electron or some such eat it all.
Except it's not: free ram is where disk cache lives, so the more free ram you have - the faster your system is (kinda)
I mean, at least for Linux, I was under the impression that the disk cache only stores programs that have already been loaded once, since there's not much point loading something from disk to cache if you never actually load it later.
Yap, that's my understanding too
The only stupid part is bundling a whole browser for a webpage. HTML5 as an executable format is fantastic - all the bullshit Java promised, except people actually use it. But for some godforsaken reason, everybody ships a platform-specific... portable OS... with every single program.
Electron and whatnot have turned "Java but good" into "Docker but awful."
This is why I use WezTerm and Guake. iTerm2 is okay on OSX.