Trying this out as it's typed. For background: I really want to love tools like i3 or awesome, but I always go back to Gnome because it juts gets stuff done. I liked Gnome 2, I like 3.
So: just like the site says. Top is the taskbar, which also has a left icon for the current tiling pattern (fullscreen, tiled vertically, etc). The left side panel starts at the top-left with the search button that does the Gnome activities overlay, then a globe icon for each workspace, and a button to create a new workspace. At the bottom of the left panel are the system icons (normally in the upper right in Gnome) and then the clock, crammed into bottom-left.
So I don't hate the tiling, and one of the layout options is "floating" so you can have a workspace full of floating windows. Cool.
My first thought was that the panels are too big -- 48px, which seemed overly large. Luckily this is easily configurable in the extension settings, and updates as you change it so there's no guesswork.
If I switch to floating, or a new workspace, I appear to have no wallpaper behind the windows or the "new workspace" launcher. I liked my wallpaper, and I miss it.
I was going to complain about the globe icons for the workspaces, but it turns out it only preselected those icons because I have browsers primarily in each workspace. It'll pick based on the first open app (I think?) or you can override the icon by right-clicking, or have it display a group of app icons for the open apps in that workspace. This is cool! It's not quite the thumbnail previews of virtual desktops I had in 2004 with Openbox, but It works well.
I'll keep on this for a little while -- I really like that I can turn the whole shebang on and off with a single extension toggle.
I've been using cinnamon as well but in 20.04 the new mac-ish taskbar that conflates the quick launch favorite apps and running apps in one widget turns me off. Starting to look for alternatives that aren't trying to copy Apple.
Installed apps and running instances of installed apps are different concepts, damnit, and I don't need a phone-like interface that fakes the idea that all apps are "always running" when they are not.
KDE really has become very bloated. First of all, I cannot uninstall any part of that huge list with the exception of kdeconnectd (don't want/need) or plasma-browser-integration-host (maybe want/need); AFAICT this problem is existing, but not at all pronounced in Xfce.
Due to lazy design choices by the responsible programmers, KDE fails to scale properly down to the user's circumstances or preferences.
• I do not have multiple desktops configured, yet I must spend 532M
• My computer chassis only has a power button that does something in the desktop environment when triggered, and any power saving settings are off, yet I must spend 389M for that
• I do not have any of the five accessibility features enabled, yet I must spend 277M
• I have only one monitor attached, yet I must spend 213M listening for an additional
Then there are many initialisation processes hanging around after the desktop environment has already started. Xfce does not have this problem.
A lot of the processes I cannot even identify in the sense of telling what use they are to me.
Some processes exist only due to their own doing where the responsible programmers painted themselves into a corner (like with the tray icons fiasco), or no one competent stepped in and stopped the submission of a solution that has a simple and superior equivalent.
• Why is there a 153M cache cleaner hanging around resident in memory? This is a job for periodic timer (cron/systemd). Even if real-time cleaning is needed for some bizarre reason, then one would attach an inotify listener to the cache directory, and every time a file is added or changed, a small <1M process executes that calculates the diskspace in use, and only when we are over the threshold, then execute the big cleaning process. Exit the process when done.
• Why is there a daemon for applying the colour scheme? I mean, it's only 7M, but this used to be a checkbox in the settings dialogue.
You're looking at virtual memory and not resident memory. I've never had KDE take up 3.5GB of memory on a machine with 4GB, 8GB or 32GB of memory. Right now, kwin_x11 occupies 110MB of resident memory on my machine while claiming 3.4GB of virtual memory. Similarly, konsole occupies 54MB of resident memory and 928MB of virtual memory on my machine.
Virtual memory is not at all the same thing as resident memory.
I've experienced similar amounts of memory usage to the stats in this article when it comes to KDE vs Xfce memory usage.
Cinnamon with Mint is very stable and tuned, very good to get job done. It has very low cpu consumption. I don't know why but gnome always eats lots of resources. Plus this very old famous bug, keep me away from gnome-shell for good.
Unfortunately not. Muffin, the compositor is based on a really old version of Mutter, and it’s missing a lot of performance work and fixes that make latency lower and output less likely to hitch, hidpi works better, etc. They need to just drop their fork and use the upstream version. They haven’t added anything significant to Muffin to justify keeping it—-the differences to gnome are done with other packages.
The free drivers work in the sense that you get a working desktop. But by no means can you get good performance on something that puts something other than light burden to your card. Nvidia gives no clues as to how to implement clock boost over the minimum base frequency in driver, so the free driver only uses the minimum available computing power, enough to get the desktop running.
same here. the 4 quadrants limited tiling works pretty well. Sometimes switch over to KDE as well just to have a change of pace but unsurprisingly it works a lot like cinnamon, just with a lot more options that I dont' really change from the default :)
Thanks for pointing out that it supports floating windows. I use a 55" 4k monitor so I manually lay out my app windows and would hate tiling (only rarely used stuff goes up top and I drag those down when needed). I use and like gnome but there are a few thing I hate about it so I'll give this a try.
Seconding this; the only thing I miss from i3 is the fact that yabai almost by definition can't be better integrated with the OS, so there's a slight increase in latency that's barely perceptible but enough to make me notice how much zippier my Linux boxes + i3 are. Small price to pay for how much more comfortable they make me on macOS, though.
I hacked something together several+ years ago (see below) based on someone else's config, and I've maybe edited it twice since then, so it likely can be substantially improved. Also, I'm sure it's not as slick as a true tiling manager, but I've certainly gotten a lot of mileage out of it:
Looks like between 2 and 3 feet - closer to 2. I use the huge monitor like the virtual desktop - we've all heard the metaphore but don't really use it. Spreading things out left to right is fine, but I don't like to tilt my head to look up (I have progressive lenses so that's worse for me than younger people), so the top is - like further away areas of a desk - where I shove things I don't need right now but want nearby. So if you're wondering how I can see the whole thing up close the answer is that I don't need to or try to. I might roll my chair back a bit if I want to watch a full-screen video.
i switched to regolith a few months ago on my desktop and +1 this; convenient defaults that are relatively close to what i previously built up on my own, and overall a nice preconfig for i3+rofi. the only real tweak it needs out of the box is enabling tray icons.
> I really want to love tools like i3 or awesome, but I always go back to Gnome because it juts gets stuff done. I liked Gnome 2, I like 3
My approach is to use the window manager best suited for the task, but all at the same time.
That means for my highly structured multi-desktop, multi-git-workspace programming tasks I use i3, which is ideal for those.
However for my less structured tasks like writing or consuming documentation, email, and personal web browsing, I use a more conventional, less constrained desktop environment (i.e gnome), which is more ideally suited for those tasks.
If I'm willing to abuse the term window manager a little further, Vim running inside i3 serves as a third window management environment I run in parallel, optimized specifically for code editing.
The trick is that I use i3 in its own separate Linux desktop window (In my case running on a remote machine, but you could just as well do this running in a local VM). this allows me to have both environment successful on the same screen at the same time.
This also has the added benefit of making it very easy to find my code editing window among the tons of other windows I have open.
Open up gnome tweak tool, go in the extensions tab, and on the "material shell", there is a little cog next to the switch. Click on it and there you have the available configuration options made available. Actually, this is how you can configure most shell extensions ;)
I find the app-based window navigation in vanilla GNOME 3 rather frustrating, and try as I might, I just can't get comfortable navigating between what I think of as applications.
This is because I have a few applications (Firefox, Terminal) that are really not applications in and of themselves; the applications are really Outlook, JIRA, Confluence, Slack, OpenShift (logged in as cluster admin), OpenShift (logged in as my regular user), that quick terminal session I opened to work on a script, the SSH connection to an OpenStack director, the 'oc rsh' command that I'm using to administrate a PostgreSQL database running in OpenShift, and so on.
This becomes far worse when using multiple monitors. Say I have teams hanging around on my secondary monitor to keep an eye on stuff. I literally just now alt-tabbed into a terminal and then alt-tabbed back to continue writing this comment. As a result, I'm back in Firefox on my primary monitor (as expected) but now I have an unwanted random Firefox window that I forgot was even open on top of Teams on my secondary monitor!
The only window manager I've ever been at home with while using multiple applications, workspaces and monitors has been i3. Specifically I love how it manages multiple monitors in that each has a current workspace, but workspaces are not bound to a particular monitor. So I was able to have my secondary monitor always showing my 'Slack and email' workspace, and switch between my multiple task-based workspaces on my primary monitor and never get confused like I with GNOME where I want to switch to my email tab but to get there I have to remember ahead of time that I have to switch to my first workspace, then switch applications to Firefox, then switch windows to the one with Outlook in it, and finally switch to the Outlook tab...
Anyway. This project looks awesome and I will try it out!
My mind is not app-centric. I want the shell where I'm looking at logs, the editor where I'm taking notes, the browser where I'm checking some doc. I don't care to think about which terminal application the shell is inside, select that, then find I've opened a different terminal window and have to search through the windows separately. I don't care whether the doc is loaded in Firefox or Chromium so don't ask me to choose based on that.
IMO app-centric task switching works much, much less effectively than window-centric task switching; I hate that all the major DEs have copied the same basic app-based dock design that has been failing in obvious ways since day one.
(Although Windows can at least configure grouping away, and there's the dash-to-panel extension to make GNOME tolerable again.)
I get that an app-centric view is attractive to app developers, who would love me to be engaging with their brand. And that mobile has its own reasons for putting apps in silos. Does nothing for me as a desktop user though.
It's interesting. Microsoft agreed with this philosophy and fought tooth and nail against tabbing in browsers, opting instead that each browser tab be it's own window and accessible from the task bar. After all other browsers had switched, they were forced to introduce that in IE as well.
The worst offender here is OSX. I still haven't figured out a good way to switch between multiple open windows of the same application, not even the file explorer (Finder). It's a huge pain.
They were wrong. Emphatically. Ridiculously wrong. Remember for context that virtually nobody was using virtual desktops for windows as it not part of the UI unless you installed it and it sucked besides. Also remember most people's internet was very very slow. Screens were also not that big. Not that they are much bigger now with everyone using laptops.
Grouping related windows in the task bar makes it frustrating to use it because everything involves multiple clicks. Once you got beyond a certain number of apps the task bar sucked without grouping because there wasn't enough text to display a long enough label to distinguish between windows.
When something takes a long time to load you are incentivized to create a new tab if you might want to come back to that resource rather than waiting for it to load again. This absolutely incentivizes using multiple tabs. If you have 8-12 browser windows + 2 or 3 other windows you are already past the threshold where you have to group windows in the task bar to use it and are now changing tabs by moving your mouse at the way to the bottom of the screen clicking on the browser icon and then hunting for the desired text then clicking again. This is in a word annoying.
if your browser supports tabs you can have 2-3 other windows and 2 browser windows and use an ungrouped taskbar. You can also hit one hotkey to open a new tab or use in browser tab switching in place of all desktop window switching to switch between several. This is much much much better.
Even if all other sins were removed the browser tabs represent a logical grouping and additional context that would be lost with just windows.
I can close them as a group I can book mark them as a group I can save them for later perusal as a group. I can use a side tab extension to more easily switch between a large number of tabs. I can right click on a link and open several links in the background without changing my current context.
They designed a user interface that was only useful for grandma opening 1 browser window at a time and maybe 2 apps at a time.
They weren't wrong, they just did an awful job of making it so individual apps wouldn't have to reinvent the wheel to get tabs. There's no reason browsers should have to implement it themselves or that other apps shouldn't be able to have the same semantics.
Ironically the pieces were there with MDI but that was also a bad implementation of the same semantic concept.
For whatever reason, only tiling wms like i3 have ever really delivered at all on the concept of making tabbing a universal thing.
I still use tabs in apps despite using i3 for years. This firefox window has 13 tabs and would be much much crappier if I used 13 i3 tabs.
I couldn't open new firefox windows in the background and opening others in the foreground within firefox.
I would have to use i3's horizontal tabs instead of tree style tabs making it harder to read the titles.
I couldn't switch tabs separately from switching windows. This would make having firefox alongside another window suck because it would trivially become hard to navigate. I would have to manually put only the firefox windows in a tabbed layout with the other window outside of it. I would have to focus parent and then focus direction to switch to the other. This would be so for any window I want to use alongside it even briefly.
I couldn't close entire trees of tabs at once. I couldn't close everything except the current tree.
I couldn't save a particular set of tabs as a session to be restored later.
In theory could these features be implemented in an i3 specific nature? Perhaps so long as you are willing to do so for every specific environment and for every individual app.
If we pick 100 apps and the most popular 10 environments and the most desired 10 features we will find we only have 10,000 tasks ahead of us!
Tabbed environments within i3 ARE useful but not as a replacement for tabbed interfaces within applications.
I didn't say they delivered perfectly either; i3's minimalistic nature isn't really well suited to a holistic approach to tabbing, either. I just said that it delivers on the concept at all.
My frustration, fundamentally, is that I don't want every app that wants to use some kind of tabbing interface to be different. Use different shortcuts, different models. I would rather the WM/DE provide a holistic approach that can be inclusive of all or at least most of the basic needs you keep listing, and that could be applied to other programs in a uniform way.
That's beyond the imagination of Microsoft apparently (I agree that just making taskbar items clump isn't the same), and beyond the scope of an x11 WM (which doesn't have any meaningful say over the client area of any program on its own). But it's not impossible, and it's not "the wrong way" just because no one's tried or managed to do it yet.
Note that on a US keyboard the ` (backtick) key is the one right below ESC.
If you have the keyboard in another locale (I use ES-intl) that hotkey doesn't make any sense at all: ` is next to "p" in my keyboard, and works only as a dead key. Cmd-` is literally impossible to use on it.
If you are in this situation, do yourself a favor and remap the "move focus to next window" hotkey . It is very useful and I couldn't live without it now.
> The worst offender here is OSX. I still haven't figured out a good way to switch between multiple open windows of the same application, not even the file explorer (Finder).
I use HyperSwitch on macOS to solve this issue. I use it to override the default Cmd+Tab behavior to cycle through windows on the current desktop. It's become one of the first things I install on a new machine.
So how do you solve this on other Desktops?
Do you use the window previews or is there any other way? Because Windows and Mac both only show icons as well and Youd have to look at the names or previews of the Windows to know exactly which one you'd want. The grouping of applications can be disabled in gnome tweak
Contexts gives additional 'switching' options on different hotkeys, fuzzy window searching+selection, history-based selection, and no mouse interaction required (but it is supported)
I dedicate spaces to tasks, eg communications, monitoring, and 3-4 development task spaces with tools/docs/terminals
I have Contexts setup as follows:
cmd-tab: cycle thru all visible windows of all apps on current space
opt-tab: cycle thru all windows of all apps on all spaces (include hidden/minimized)
cmd-~: cycle thru all windows of focused app on current space (include hidden/minimized)
opt-~: cycle all windows of focused app on all spaces (include hidden/minimized)
cmd-space: activate Alfred
opt-space: search/activate of all running apps on all spaces
Alfred then allows you to add effectively anything you can script/applescript for additional workflows and a complete, keyboard-driven navigation/switching experience, and total deprecation of the slow 10.7+ mission control gui
Each logical application (eg HN or ssh-to-example.com, not firefox or terminal) is in a separate window. The window list at the bottom of the screen shows a list of which windows (not physical applications) exist, and then I click on the window(-list-entry) button thingy for the (logical, not physical) application I want.
> Because Windows and Mac both only show icons as well
Windows (version Vista or worse, because this definitely wasn't a problem in XP) and Mac are defective by design then.
I recently switched to Sway because gnomes workspaces annoyed me too much. Let me choose a workspace independently on each monitor please! On i3 I was getting really bad screen tearing, even with conpton/picom otherwise I’d have just used that, but Sway/Wayland has no such problems.
Sadly a few things don’t work so well in Wayland. For example, Windows games under Proton work fine on X but not on Wayland/Xwayland (I guess since they’re not Wayland aware they can’t bypass the compositor?)
So, I too will try this project out as it looks like it may be a nice middleground where I can be productive in gnome on X.
Did you read the comment? What do you do when you have multiple windows of the same app? Do you write the name of said program and then Alt-backtick until you get to the correct window? Wouldn't it be better to have your windows grouped in a way more related to their purpose than to the app?
For example, say you're doing something (eg programming) that requires both the browser and the terminal. While you're at that, you want to do something that also requires both the browser and terminal (eg checking something in a terminal-based todo app to reply something to your coworkers in a web based chat app). Assuming you leave these things open, you now have to do 2 switches (app switch+tab/window switch) to get to whatever you're looking for in the worst case, 1.5 switches on average.
Talking about switching between programs, yes I thought that was a bit weird in the beginning but it came up so rarely that I eventually learned the habit of using alt+§ (on swedish layout). It's not so bad since the key is right above Tab.
Maybe if your screen real estate is limited (e.g. laptop) that is true.
I work on 3 monitors; two of them are 1920x1200, the third is a 40" 4K "TV". Nothing about the Gnome model is useful to me. I appreciate that my setup is unusual, and that I do sometimes find myself on a laptop. But I prefer to keep the paradigms consistent, and so 5 named workspaces at all times, thank you very much. I never move windows between workspaces. All of the windows in a given workspace are visible at all times.
It does, but the fact that the default is so braindead and annoying, and that I have to configure it to make it usable, is well.. very annoying. Like, why would they think that it is a good idea? No other desktop does this.
Just checked, and the equivalent of Cmd+~ on GNOME is Cmd+`.
That said, I rarely use Cmd+Tab anymore, I just move the mouse to the top left corner and pick, now that screen could use some UX improvements (i.e. hotkeys for the apps, and maybe grouping, since when you have a lot of open apps, it is hard to find what you are looking for).
This is incorrect; you can rebind the shell's keyboard shortcuts in Settings -> Keyboard Shortcuts. There are entries for "Switch applications", "Switch windows of an application", and "Switch windows of an app directly"; you want to switch the two that are bound to "Alt+Tab" and "Alt+`".
Without tweak tool and several plugins Gnome shell is unusable for me. Unfortunately Gnome shell plugins tend to see zero maintenance so they regularly break with new versions of Gnome shell. I fucking hate that DE.
Perhaps as a slight work around for gnome-3 users. I use workspaces across two monitors with the `window list` extension. To address your 'X window is not in Y workspace issue' you can assign a hotkey in gnome to move the currently active window up or down a workspace.
So I have ctrl-alt-shift-up and ctrl-alt-shift-down bound to move windows up and down.
"Use this gnome 3 extension" is never the answer to work around gnome 3 problems: in my experience extensions either don't work or stop working at the first 'apt-get update' you do, or just consume like 40 gigs of memory if left running for a week. Extensions are the devs way of saying "we don't care about you, but we're going to pretend to care by allowing you to write software that we're going to break".
Yes it actually is the answer because that's the design paradigm of gnome. You get a basic shell that implements Red Hats vision and everything that you find missing/don't like is what extensions are for.
gsettings set org.gnome.desktop.wm.keybindings switch-applications ''
gsettings set org.gnome.desktop.wm.keybindings switch-windows '["<Alt>Tab"]'
There are more settings like that which you can find in the manual, or from other frustrated users.
These settings seem to be stored in a binary format so the resulting rc-files can not easily be commited to git. I keep a dozen lines like the above in a script I run on any new gnome-like desktop to make it somewhat sane.
There's a config for that in the tweak tool. It makes secondary monitor workspaces static. It's not exactly what you want but it gets kinda close for me. Wayland does away with the shitty X conventions so maybe there is hope once X finally dies.
Please note that I never selected this random Firefox window. I wasn't even aware that it was open.
The problem is that when I tabbed back to Firefox, all Firefox windows on all monitors were raised.
And if you expect me to Alt-Tab to terminal, and then remember to use a _different_ keyboard shortcut, that is now no longer so short because I need to holt alt, press tab, release tab and keep holding alt while then pressing ` until the window with Hacker News is selected then... no way pal I'm not even going to go there, this is madness!
"Spatial" is, I think, a term of art. It refers to conceptual objects in the software having a 1:1 correspondence with a UI element with a single, stable location.
The metaphor is with the real world: If a put an object somewhere, it stays there. My notebook is in the front-right corner of my desk and nowhere else.
Notably, the "Finder" application in Mac OS used to be spatial. Opening a folder opened a window, and that window would be exactly where it was the last time you opened that folder. Conceptually, the window is the folder.
Aesthetic evolution is a fact in user interfaces as much as it is in other functional objects like automobiles, furniture, and architecture. Priorities in trade-offs between things like information density and rapid visual navigation are also subject to this kind of change. Part of that evolution is influenced by technical context, such as what has become possible or practical that wasn’t before. Part of that evolution is influenced by cultural context, including both art and the aesthetics of physical objects (or software). Successful UI in Japan is strikingly different than it is elsewhere, even allowing for differences in language.
One of the things that all user interfaces do is marshal user attention, and newness or freshness is one tool for that. That can be used to advantage or disadvantage users, but it is a constant pressure for change in user interfaces.
The term Modern in user interfaces tends to translate as “inspired by the Functionalist school of Industrial Design, particularly as exemplified by Dieter Rams at Braun and Apple’s Industrial Design team under Jonny Ive”. There’s functional value to freshness, so the definition isn’t static, but the term Modern means something other than new or contemporary.
It isn’t a waste of time for producers and critics (in the neutral sense) of user interfaces to learn some art history, architectural history, and history of Industrial Design.
You say this with authority. According to whom is web modern and everything else «quaint»? Not to be that guy again but electron-based apps feels nothing like modern, except maybe in the worst possible sense.
«Command line» is still very much alive as well by the way, and underpins a lot of things, say ci/cd.
Modern could mean technically not just stylistically. Like hackable in a contempirary language or use fancy tech like wayland. When we talk styles modern could mean anything, to some people it means minimalistic and functional, to some it means trendy
Modern is associated with your definition and has a positive connotation. However, it really just means it's new. That doesn't necessarily mean the things you listed. But it does mean that it's probably under active development, the creator has it fresh in their mind, and you can probably contact them.
The word Modern absolutely does not mean new, recent, or contemporary in the context of design (or really in reference to any visual presentation). The design of Walkman was innovative and new when it came out, but at no point in time did it qualify as Modern.
Modernism, as applied to the design of tools and other useful objects, was codified by Dieter Rams half a century ago. The recent resurgence of Modernism as applied to computer software and hardware is not the result of inevitable progress. It’s the result of Steve Jobs deliberately choosing Modernism in the early 90s (although this wasn’t apparent in products until his return).
It's hard to describe a complex program with one word but I would argue they are at least more informative than "modern". Unless you're intentionally using old technology or going for a "retro-style", pretty much anything written in 2020 could be described as "modern".
The alternatives listed as just examples, I would need to understand the program better to come up with a truly apt adjective.
Additionally, people seem to forget about the term CONTEMPORARY..
It annoys me out that I can't use the word 'contemporary' when talking to 50% (~a lot?) of people.
Somebody whose talking about some band they like and, I ask if they are a "CONTEMPORARY act?", they OFTEN reply, "No, they are a new/modern band".. lol
You are over analyzing the marketing pitch, and/or expecting it to be the exact specification. It’s not. IMO it’s fine for a project to pick a few vapid buzz words to get you interested, because a complete specification of the project certainly isn’t going to catch eyes.
It's clear from GP's post that the problem with 'modern' in this context is that it lacks semantic meaning within the given sentence. As 'modern' has no domain-specific denotative definition, one must turn to its connotation — of some quality that is only available in newer products, not prior ones.
On the other hand, to simply say that something is 'new' in technology is clear: it is a recently-developed or recently-published effort, free of insinuation that there is anything better or worse than what came before it. 'Modern', on the other hand, implies some sort of quality that might not be apparent in prior art.
> If they called it "postmodern", would that be acceptable?
Why would that be acceptable? That would carry even less clear meaning.
> BTW, do you propose renaming the Museums of Modern Art?
In that context, 'modern' has a domain-specific meaning — art made past 1860.
Tried it briefly, I currently use i3 on ubuntu and found it to be much much slower than that, the animations while pretty get pretty jarring once u start switching windows too often. I much prefer the i3 style of just showing a blinking cursor on switching windows.
The grid layout is interesting but I found it strange that the all tabs are shown along the left side in split mode.
It would be interesting to see how the grid differs from the tree layout that i3 uses.
I did like their default hot keys and the side bar for switching work spaces.
Ultimately though if you don't like gnome this isn't going to change that.
But if you do prefer i3 and want a more nicer environment with all the gnome system management ui's consider using https://regolith-linux.org/
I Ctrl+F'ed in this thread for Regolith, this should be higher.
Zero setup, incredible keybindings.
You can install it on top of your existing Distro, as an apt package. And then log out + log back in using new DE.
I had never used a tiling WM before Regolith, i3 seemed too difficult to configure for someone who didn't truly didn't understand the point/benefit of using tiling WM's.
A day into using Regolith on Ubuntu I was hooked. Been using it for years now and it's the best decision I've ever made, productivity skyrocketed and it looks nice.
I tried Pop_OS shell's tiling WM, as I was hopeful, but the keybindings and behavior aren't as nice as Regolith. It does a "swap" animation when changing tile positioning that slows stuff down, and I could never get the gap borders to disappear completely.
I'm going through a distro hopping phase, so recently hopped to Fedora spins (am currently on KDE)...but had heard of regolith separately and really liked the idea. So i went to DistroTest and took it for a spin, and it won me over. I still ant to finish my experiment with fedora spins, but right after, I'll be heading Regolith!
> Tried it briefly, I currently use i3 on ubuntu and found it to be much much slower than that, the animations while pretty get pretty jarring once u start switching windows too often. I much prefer the i3 style of just showing a blinking cursor on switching windows.
I've seen this complaint about GNOME in general before, so I want to mention that animations can be disabled or sped up in GNOME. There's a toggle to disable animations in GNOME completely (using the GNOME tweak tool, in the general setting). There are also add-ons to change their speed (I use Impatience ).
> […] the animations while pretty get pretty jarring once u start switching windows too often.
Agree. I have used i3 for several years, but tried GNOME again recently to experience with Pop_OS's tiling feature. It was OK-ish, but a bit slow when resizing windows when rearranging / opening / closing windows, even with animations disabled.
I have read about Material Shell before, but did not try it. Gave it a try today, and I am pleasantly surprised so far. The animations get old very quickly, so I do what I always do in GNOME – disable all animations in Tweak Tools. This made the experience as close to i3 as GNOME has ever been for me. I will keep using the Material Shell for a while and stress-test it a bit.
I'd actually somewhat given up trying to keep i3 working nicely and reverted to XFCE (which is at least far less obnoxious then Gnome 3) until I discovered Regolith and have been using it happily ever since.
Nice!!! This is the kind of thing I visit Hacker News for.
I wonder how this compares with the Gnome tiling Add-on from Pop!_OS that is becoming very popular. But this material shell sounds like a much more holistic approach than just adding tiling to Gnome. I'll definitely try this out.
Pop's tiling is great, and it doesn't force tiling like this does so you can turn it off if you don't want it. I mostly just use their keyboard navigation tools to snap, resize and move instead of the tiling functionality, though. I think I'll stick with Pop's, partly because I'm used to its keyboard navigation, and partly because I don't particularly like tiling.
Sold when I read tiling, yay.. maybe finally at some point I get rid of xmonad, which I loved to play with but do not understand anymore (nothing to complain, has been stable for years even across Ubuntu versions .. but also never touched the config in like 5+ years :D)
I have not looked into these things too much but I like how gnome keyring unlocks when I login to my fedora machine. After a simple initial setup, all my git commits are automatically signed by my gpg key. I don't even have to think about it. I haven't used this for anything serious but I think alternatives will need to achieve feature parity before I can seriously consider them.
Kind of like how I go back to x as opposed to wayland because obs can't capture screen (last time I checked).
Pop Shell from System76 also does something similar. That is a gnome shell extension that provides tiling window management. It's focus is keyboard driven window navigation and has the option to switch between tiling and floating mode.
I was going to mention the same thing. I liked the old Pop Shell and have now been experimenting with the new tiling interface.
Off topic, but System76 really seems like a great company. I enjoy my Linux laptop and their software support is good. I am stuck on Apple's platform for the Apple Watch and iPhone (and I like iPads), but I wonder if I would ever buy another Mac laptop. Turnkey Linux systems, like those of System76, Dell, etc. really make using Linux low overhead.
I tried this a couple years ago on a Atom tablet. If memory serves it had no tiling yet, but I liked it because it was the only working solution that would allow a tablet-like experience under Linux, all others being either buggy or incomplete (rotation not working or not consistent with mouse, etc.). I admit it was well thought, beautiful to look at and very usable, although they didn't resist the temptation to dumb down even further the config panels by removing more and more options, which is the reason I avoid Gnome in all my PCs. The only real problem is that it was slow, I mean really slow, and memory hungry. OK, in 2018 having 2GB RAM it's the users fault, although that tablet was impossible to upgrade, so I had no other choice than either reinstall Windows 10 (which was a lot more snappy) or give the tablet away, which I did.
I seem to have read somewhere that an open phone manufacturer (Librem?) is using a deeply optimized version of Gnome 3 to overcome its slugginess on less powerful hardware. Are there any chances their optimizations can be merged back so that every platform could take advantage of them?
> "Improve your user experience and get rid of the anarchy of traditional desktop workflows."
This usage of "anarchy" makes me wonder what is so satisfying to advocates of "tiling". I personally don't have a need for new windows to conform to a strict placement algorithm.
My usability requirement for new windows: a) open the window in a timely manner and make it distinct so I can identify it; b) don't fiddle with my visual field unnecessarily.
I use OpenBox. I make the "active" window distinct using a custom theme. I open what I need and hide the rest in a shaded window and/or virtual desktop until I need it. I find what I need in the menus.
(I won't debate the qualities of Gnome, but I prefer a lighter DE.)
I don't see why you would need such a complex system (spatial model) to switch between your apps.
In my opinion, this has been solved perfectly many years ago. I simply use Super+<num> to launch/switch to my 10 most important applications. Supported out-of-the box by both Windows and Gnome and 100% predictable. Every shortcut invocation will launch exactly the right application.
I've always wanted to try a tiling window system, but they just don't seem to gel with how I work at all. Rarely, if ever, do I want a window to take up some common percentage of the screen. My editor is ~100 columns, which will change depending on the font / font size. My terminal is all over the place. My browser is multiple widths, because I need to test responsiveness, or what fits in my current tab does not fit what's in my next tab.
Is there any sort of middle ground tiling solution for people like me?
In Pop OS the windows can have two states. Stickied to a part of the screen with auto-tiling with other stickied windows or free floating. I would guess many Linux flavors can do something like that. To me the ideal solution was Spectacle for MacOS - key shortcuts for a window to take up the space of a predetermined space. I just don't think automatic tiling makes all that much sense unless you're building some kind of a dashboard.
Tiling web browsers is especially bad since I use a lot of websites that flip to mobile mode or are just plain unusable when tiled into the wrong shape.
For certain websites forcing them into their mobile version can be pretty useful, but it takes a bit of playing around to make everything work nicely together. I have a group of browser windows and a layout defined in stumpwm that includes gmail, spotify, and a few other sites that have good responsive design.
Can the user merge the workspace panel into the the system panel and move all that to the bottom of the screen instead?
I honestly can't stand global top bars and "system panels" that are nothing more than always-visible launcher menus. They're just a waste of space. IMO Chrome looks ridiculous in the video, with a set of tabs directly underneath the workspace panel tabs.
What I'd really like to see is XFCE with automatic tiling. I can probably script a half-assed version of it myself without too much trouble, but it would be nice to have a full-assed version of that.
A few months ago I set up i3 to work within Xfce (essentially swapping out xfwm4 as the window manager), and I love it. It took a bit of tinkering to get the two to play nicely, as you might expect, but once I got it set up properly it was great. I wanted to use a tiling WM, but I had a setup I really liked with Xfce and didn't want to give up all the DE niceties with my panels, system tray, etc. This gives me the best of both worlds as far as I'm concerned.
That said, I agree with you that it would be nice to have a built-in option to switch between tiling and floating. I've seen that Pop_OS has this, but that's also using Gnome.
Gtk3's title bar / hamburger menu / tool bar / modal dialog hybrid thing is a great motivator for avoiding Gtk3 apps. I've been pretty successfully avoiding them since upgrading to Ubuntu 20 and discovering that horrorshow.
I'm having difficulty getting different colours on active vs inactive title bars on regular apps, though. Still working on it occasionally.
It's visually cluttered, the title bar is often missing an actual title, every control on there takes longer to respond to a click because it has to wait to see if you want to move the window instead, the menu takes an extra click to open and is also really slow, the menu doesn't include keyboard shortcuts ...
The applications which have been converted are much harder to use. For example, I found dconf-editor in particular is now extremely frustrating to use, since it doesn't have a treeview - it's impossible to explore more than one recursive path simultaneously, and the mouse distance between opening a folder to see its contents and going back to its parent is now quite large. The title bar doesn't have enough space to display a long path due to it having lots of other controls in there, and ends up showing something like '/ com / ubuntu / Ab...xy / ap...ons / ap...ons', or worse, only the most nested folder name.
It's also just really ugly: cluttered, busy.
The good thing is there are no - zero - gtk3 apps that I need to use.
I wouldn't go as far as calling it a horror show, but do find it genuinely unpleasant to use. In a default configuration GNOME's task switcher seems to assume that there is only one window open for each application. Switching between multiple windows in the same application is rather inconvenient. The title bar stuffs in frequently accessed options then hides the menu bar under the hamburger icon. Those frequently used options are the ones I am least likely to access from the title bar since they are bound to hotkeys that are common to most programs.
For anyone who is accustomed to other metaphors, I'm not terribly surprised by the description horror show. Even as someone who is willing to adapt to change, many of the changes seem to be contrary to usability or efficiency.
I would far prefer an organized UI to one that tries to look clean by tucking away functionality under a hamburger icon.
This is not to say that I insist upon menus. Since I never had much invested in Microsoft Office, I do appreciate the ribbon bar. It does a fairly good job of organizing and exposing functionality in an otherwise complex piece of software. Contrast that with GNOME's approach. It is rather difficult to design a complex piece of software when most of the functionality is hidden behind a single menu.
At the other extreme, you have software that is somehow command driven. The interface can be kept clean by hiding away all of the functionality. (An example of this would be vim.) Yet that is not what GNOME is trying to provide. GNOME is a graphical interface that is supposed to facilitate discoverability. Discoverability will always be a trade-off between visual clutter or a reduced feature set. The only other option is to hide functionality, which is dangerous in a GUI.
A "clean" UI is often a less functional or efficient UI; cleanliness is usually achieved by adding indirection or removing functionality. But Gtk3 isn't even clean; it's often cluttered. Just look at the title bar on dconf-editor when you're 5 levels deep in a config tree.
Menus are ideal for commands which are individually infrequently used, but collectively frequently used. That is, where any given menu item isn't used often enough to warrant learning the keyboard shortcut (not that Gtk3 menus show shortcuts, because they don't), but the menu as a total is visited to execute a command frequently. Consider things like IDEs, photo manipulation, video editing, sound editing, basically anything with a lot of tools to apply.
I find it particularly ironic that Gimp - the OG Gtk - doesn't use a hamburger menu, because that would be ludicrous.
Another point with menus is that the typical top-of-the screen, and nowadays "hamburger" menu is just dumping ground for all functionality, and should be at most of a secondary use to common and context-specific actions represented by buttons/context menus/etc.
I tried tiling WM: i3/i3gap for a year, then sway and bspwm for a few days but finally went back to Gnome.
I got fed-up spending way too much tweaking the UI to my "needs". (To be fair, most of the time was spent on the toolbar (polybar, i3bar) configuration). I also realized that I mostly needed tiling for the terminal.
Thus I embraced Gnome UI with a few extensions: unite, dash-to-dock, system-monitor, etc. and started using tmux for the terminal.
I might try Material Shell but I am actually happy with today's Gnome3. Performance is decent, and the level of configuration is enough for me with a few extensions. It is not as stable and polished as MacOSX but there is no blocking point.
N.B: I kept i3 for my work Linux VM due to very limited system resources.
Beg to differ that macOS is more stable and polished. macOS makes “arbitrary” UI changes over the major versions, including what I experience as regressions, while Gnome 3 keeps what works. And I experience more UI latency with macOS and a less-polished out of the box experience: Eg, macOS has no built-in tiling. Eg, macOS prohibits using the keyboard to interact with system modals unless you change settings. Eg, macOS hotkey for spotlight requires holding down a modifier key. Eg, macOS spotlight autocomplete is unbelievably brittle/dumb. Eg, macOS doesn’t allow changing the system font size, you must scale the whole viewport.
(Can you tell I am required to use macOS at work? /facepalm)
I can't speak about Material Shell, but on dedicated tiling WMs, you get to select a subset of apps that you want to always open in floating mode to accommodate the use case you are describing. Nonetheless, I find myself not using that at all, since in most cases the tiled view allows for optimum use of screen real-estate in my opinion. If I can't see the entirety of a window it's kind of useless to me, so i'd prefer it be on a different workspace. But of course, floating one window like your calculator while your browser and RSS feed reader are tiled on the desktop is entirely possible and probably quite common. I do, however, use a popup rofi window with a custom script as a calculator, so that does indeed float near the top of my screen.
I like the tiling. Unfortunately it breaks my beloved workflow with GNOME 3: I'm using an extension to switch workspaces via scrolling on the top panel, which makes the workspace approach very useful and fast for me.
I also rather would like the left panel at the top since window lists aren't important to me anymore (hot corner for overview is so much faster for me finding the window I am looking for)
Do you have a link to that scrolling extension handy? It sounds useful to me. And if you have any other recommendations I'd appreciate them too, as I tried some extensions but have none enabled myself currently (just stock with the animations off). Your scrolling one is the first one that sounds useful.
For the life of me, I can't understand why there are that many GNOME-based desktop environments. I personally dislike most of their approach to UI. Maybe the innards are very pleasant to work with, but it's GTK-based, isn't it? That a somewhat-dated C toolkit, even if it has bindings in other languages. So I kind of doubt that.
And yet - MATE, Cinnamon, XFCE (ok, that's just GTK, not GNOME proper), Unity.
This is not a rant, I'm actually curious why GNOME is that popular, and those projects did not choose some other basis. I mean, that should be possible, right? LXDE switched from GTK to Qt a few years back.
I will tell you why I use Gnome. Gnome/Fedora was the first distro that played nice with my 4k XPS display AND the various 2k and HD secondary displays I use. I switched from Ubuntu/XFCE about five years ago. As I get older, I look for applications and DE's that require as little mouse use as possible. In Gnome 3, it's super+space, type application name, enter and use. Super+arrow to snap around the screen. A minuscule top bar gives me the perfect amount of screen real estate. The only application that I like to tile is a terminal and tmux works just fine. So for my use, Gnome just seems to stay out of my way.
Looks really nice. I like how creative the Linux community is with their GUI experimentation.
My favourite feature is the ability to tile windows with a little gap between them. Having visibility (even a little) into the wallpaper when you're doing work makes a big difference for me. It's like it grounds you in a more natural frame of reference. I'm sure Mac users can relate to this due to the late introduction of true window maximisation, but as a Windows user I'm coming to appreciate the "non-fullscreen" or "edge-to-edge tiled" working environment.
I can't recommend AwesomeWM enough. You don't really have to customize it at all for the workspaces + basic tiling to be incredibly useful. And the workspaces can be per monitor!!! Or you can tie them together! Or use them as tags instead of workspaces! It's really just so good.
I think the only thing I really added was audio key support and I changed the menu shortcut...?
I'm not actually sure what the argument is to not use it. (it supports floating windows, if you want that as the default)
But really, someone went quite far a couple year ago. Unfortunately he lost interest before the finish line. There is no such thing as a WM port from X11 to wayland. It's a full backend rewrite.
The design that would have worked (after like 4 rewrite), but wasn't completed, was to have a WLroot process, then some custom protocols to talk to an awesome "client". This was a fork of the old codebase with the X11 code stripped out and the implementation of those little private protocols between the wlroot "server" and awesome "client".
Using this model, the event loops lived in different process and AwesomeWM could restart without losing all applications. It did render stuff, including the wibar and clients (without titlebars). But that's about it. It never got to the point you could dog-food it.
I have tried to like tiling window managers and for whatever reason, it just hasn't clicked for me. I have really come to like the way default Gnome works. That said, I have used material-shell for about 1/2 an hour, and so far this is the first time I can see myself actually liking a tiling window manager.
At the risk of being the guy who has used it for a minimal amount of time and starts complaining about it because it doesn't work like I'm used to...There are a couple preference things for me that I wish were a little different.
I like gnome's no-frills fullscreen. You only have the app and the top panel stuff. In material-shell, I can SUPER+ESC to get full screen, but I think I want to be able to just mouse-over to the left side to bring up the panel while in full screen. To get to anything at the panel I have to SUPER-ESC first. Which is ok, I'd just rather it optionally auto-hide.
Kind of the same as the left-panel, the top-panel workspace list looks especially jumbled when you have an app like a browser maximized. So you see the workspace list, then your titlebar, then your browser tabs. It just adds extra "business" that I would prefer to not see. And again, enabling fullscreen with SUPER+ESC basically gets me what I want so it's not that big of a deal.
Finally, I understand why people would like it, but for me I would prefer to not have the "+" in the workspace switcher at all. Or at least minimally have it skip being part of my SUPER+A/SUPER+D switching. I REALLY don't like it showing up when nothing is open on my workspace or when I have a vertical split workspace, and only one thing on the screen and it shows the "+" content window. I am so accustomed to just hitting SUPER and then typing the app that I want, its way faster to do that and I'd rather the whole "+" window go away.
All-in-all, I'm pretty satisfied with material-shell and will definitely be using it as my desktop.
It's moderately intimidating to jump into i3 or xmonad if you haven't used them before. This looks like a friendlier way for more people to get exposed to tiling, but doesn't seem to offer anything compelling for people already comfortable with one of the others.
This is so close to how I would want my shell to work! For instance, there is a floating mode which can be enabled per-workspace. Big fan of the persistency. I have a few nitpicks, but the author seems active on Discord and work is ongoing. Going to give this an extended ride for sure.
EDIT: For Fedora users, apparently the package is quite outdated and missing some features and fixes. The author is going to make a new release on GitHub and hopefully package maintainers will make an update.
I really like the idea, maybe this can make me back to GNOME, but it seems to me it lacks an absolutely vital feature of i3/Sway: the scratchpad, I always have an Emacs buffer opened to my org folder, and the scratchpad is very handy.
Installed and activated this morning. I'm already a fan. Easily revertible if I decide later that I hate it, but I like this workspace strategy much better than what's built-in with gnome.
I did find it a bit challenging to figure out where the settings were located (I don't use many GNOME extensions), but once I figured out the settings are on the extensions.gnome.org page for the extension it was lot easier.
It doesn't appear to work well with multiple monitors. I could open apps on different monitors but not move them between. The native GNOME shortcuts just caused the windows to flicker and their shortcuts don't have anything to do with monitors.
>We are currently only compatible with the one workspace per external monitor mode since it's was the most adapted to my vision of the ideal workflow and also because altering the behavior of GNOME Shell can be a bit complex and maintain multiple mode can be very time consuming.
Therefore step after step our code base is becoming more mature and I may be incline to work a second option if there enough demands.
But we also have other fundamental stone to build like window resizing.
Seems like figuring how it works across multiple monitors would be a rather basic building block but dev has different priorities it seems.
I switched from i3 to bspwm and never looked back. It’s more true to the Unix philosophy of doing one thing only and doing it well. I use sxhkd for the hotkey daemon and polybar for the status bar. It’s more initial work to set up though than i3 which just works out-of-the box which makes i3 good enough for most people.
There is just one thing I'm missing from Gnome which is the white dot on top of the time signifying there is an unread notification. With Material Shell I have to manually click the time to see if I have any unread emails or slack messages.
I know about that and it's a handy feature but I meant the typical window operations (moving in the tile grid, resizing of grid rows/columns possibly also sending to other workspaces or the scratchpad and toggling floating or fullscreen mode via a context menu on the title bar)
The way multiple monitors work out of the box is that a workspace is created when you first switch to it on the monitor that is focused. This means that even if you always use foo on monitor bar you must switch to monitor bar before hitting the hotkey to switch to foo.
If all you know is focus directional hotkeys you could trivially have to hit focus left 7 times to get to the left monitor for example before hitting super+3 to switch to 3. This is of course horrible.
Your life would be simplified if you had a hotkey to focus output right and focus output left. This makes it not TOO laborious however your life would be simplified MUCH MUCH more if you used the assign directive to assign particular workspaces to particular monitors for example 1-5 on left monitor and 6-0 on right.
You would accomplish this for example by using
workspace 1 output name
workspace 2 output name
Then if you watch to switch to 3 on left monitor you don't have to worry about where you are presently you can simply hit super+3 wherever you are.
I've worked very hard to get my multi-monitor experience not to suck. In the end I landed on using this: https://github.com/lpicanco/i3-autodisplay This and a couple of scripts that run to change my audio output to HDMI when a plug event happens. I have to admit that I hate the "cobbled together" experience.
This is a rather common issue for all OS, but even more annoying for tilling WMs since it messes up with the layouts.
The good news is that a lot have been made to fix this in AwesomeWM git-master and more is coming.
* If you set the `-- awesome_mode: api-level=5:screen=off` modeline at the top of `rc.lua`, all screens will be virtual rather than tied to a physical screen. In practice this means you can block and act upon physical screen removal. Previously, once the screen was gone, it was gone. Now you can either have full control or have the default handler
* Screen swap: You can swap your primary screen back yo your laptop screen when disconnecting. So at least you don't lose everything.
* Screen splitting: If you have a extra wide or double width monitor, you can split it in multiple virtual screens. This helps since it allows you to have the "main" virtual screen the same aspect ratio as the laptop screen. It means nothing moves when you switch back to the laptop mode.
* Full signals and handlers for everything: By default it's still not perfect, but at least there is sane ways to plug your own logic everywhere in the screen removal and addition process.
* Better mixed DPI: It is now easier to ignore the DPI X11 think it has and override it before the screen gets created. This way, you can ensure your laptop and main screen use something sane when in mirror/presentation mode.
* Tags (workspaces) have a `request::screen` to "save" them when a screen is gone. So you can send them to a screen that still exists without losing the layout.
* The ability to have "sets of workspaces" you can share across screens (XMonad style). This is an interesting solution to the problem. Since the same "state" can be shared by more than 1 screen, then adding and removing a screen doesn't destroy the state. However this is really complex to bolt on the current design and I have been trying for like 2 years to make it perfect and backward compatible.
looks okay, tried it and bang! everything is in disarray. I found organising windows to be a pain. suddenly everything is in full screen mode. I thought the search would've been like the search provided by kde, i.e search through open windows no matter what app. that's one thing I miss about kde. and wish I could get in gnome.
yes, for a project optimizing workflow a static page would be fitting, but with pngs or webp instead of gifs :-)
appearently lossless webp steals pngs crown now that iOS and MacOS support it and the computational costs on high compression are less:
That's a poor excuse given that a) mp4 support is pretty good these days and b) CSS already has responsive loading of assets. It's purely that to a man with a JS framework everything looks like a dynamic site. I highly recommend running Noscript to see how much of the Internet is broken because of this kind of nonsense.
Scrolling gives users a spatial feeling (ie. "what is where in relation to something else") in contrast to just magically letting things appear without animation or transition. There are plenty of UI designs which use scrolling. Sure you can debate whether they are a success or not but I've never head of "Scrolling is a 'no' in serious UI design". That sounds more like a personal preference.
> and tiling should be an option.
As far as I can tell there is nothing stopping you from simply using a workspace per app. Effectively disabling tiling.
Actually, I've used PaperWM for a bit (a Gnome Shell extension), and that one puts windows next to each other and scrolls left and right between them. (Each window is full height but not necessarily full width.) I find that very nice.
For example, I could have a 2/3 window on the left and parts of another 2/3 window on the right, and going from the left to the right window then scrolls 1/3 so that the full right window is visible.
somehow every app-selector I know (except a real terminal shell) uses scrolling. Imho this looks great for a tablet (and if this stabilizes I'd in fact buy a surface pro or similar instead of a new notebook, should my current private notebook die).
I love how beautiful i3-gaps is. I worked awfully hard to get i3, Dunst, Polybar and many other tools to give me a WM only experience. And frankly, I hate that part of it.
Simple things like configuring bluetooth, or switching audio... or working with multiple displays are just painful. I expected this when I started using Linux in 1996ish. That was part of the hobbiest experience. These days, I just want to get my work done, and if I can do it with a pretty experience, I'd prefer that.
So if I do i3 again, it'll probably be with XFCE underneath unifying some of the experience. Gnome on the other hand, has its own set of issues that make it annoying.
Agreed. I think Material as a design is flawed because the affordances to discover features are limited. It's OK for phones with small screens, but Material on a website on a desktop puts everything inside a hamburger or a gear.
The trick to not have gnome 3 crash (at least when I was on Ubuntu 18.04?) was to NOT connect it to heavy online accounts like if you have three google accounts all of which are perpetually teetering on the edge of your storage capacity of 15GB (or 17, if you did the security checkup) then the "factories" of Gnome will work themselves to death trying to synchronize everything. But we can't tell people "Just don't connect gnome to any online account if $special_conditions" feels like a gotcha.
I have it connected to 4 accounts with a lot of data/events, over ~3 years nothing happened. I did encounter crashes initially due to some nvidia driver issue :| and another time due to my ram stick, otherwise it's more stable than macos.
> Designed to simplify navigation and reduce the need to manipulate windows in order to improve productivity. It's meant to be 100% predictable and bring the benefits of tools coveted by professionals to everyone.
Oh dear. Now I remember why I keep using macOS which actually does it better than 'this'.