It's an incredibly personal choice. I've daily driven macOS for well over a decade, but periodically dip my toe into the Linux world just to get a feel of it's "there" yet or not. Unfortunately for my purposes, it never is, and so I end up returning to macOS.
The biggest problem is that none of the DEs really fit my tastes — they all have to be poked and prodded into kinda doing what I want them to do, but they're never quite there and it's incredibly frustrating. I've also faced similar issues with starting with a bare WM and snapping together smaller pieces.
To get what I want I'd likely have to build my own DE from scratch, which I'm not even necessarily averse to, but I have no idea where to start with the mess that is X11 and Wayland and all the "build your own WM" tutorials that could be used as a springboard are written for building hyperminimal borderless tiling WMs, which aren't straightforward to adapt for a more "typical" floating WM with titlebars and the like.
So I guess the endpoint of this rant is that it's frustrating that building one's ideal Linux desktop from the ground up isn't all that accessible in reality. The configurability and openness is there on principle but it's difficult to take advantage of past a skin-deep level.
If X11 had a future I would've recommended xmonad to you. It's advertised as a tiling WM configured in Haskell, but in reality it's more of a library to make your own WM, as it abstracts most of the low-level details but still lets you change almost anything. It's still quite focused on tiling, yes, so it probably wouldn't be a good fit for you, but the idea of having an abstraction layer above low-level X11/Xlib stuff enabling you to easily build a custom WM is, in my opinion, absolutely awesome.
I find it really sad that in the Wayland world all the window managers are coupled with compositors (and possibly even more than that), which makes it that much harder to roll your own. I wish there was a generic compositor/input server/whatever with some sort of window management RPC interface that would allow running a separate window manager in a subprocess. This would make it so much easier to port xmonad over to the Wayland world and take it from there...
(I'm aware of waymonad's existence, but I believe the process barrier between compositor and WM is really practical, especially during development where the WM rapidly changes, sometimes crashes, but the session still survives.)
i use mac and linux and I really like the mac finder less. But it is a personal choice. I miss the macos8 windowshades...
I feel sometimes linux almost has too many choices. There are a few main stream ones and a bunch of others that have bunch of fans/developers so the end product feels very rough. When the other choices (Windows/mac) are good enough but consistent.
> "typical" floating WM with titlebars and the like
My preference also. Currently maintaining a script of calls to 'gsettings set ...', plus a patch to gtk.css, on top of Ubuntu 18.04 Gnome Adwaita.
Doesn't quite get me back to what gtk-2 could do with a bit of its well supported, (even encouraged!) customization options. So the struggle continues.
I am not surprised. I've been using Linux for a while, and there a lot of things I miss. I keep an old Mac around to reminisce.
• menu bar: one, at the top of the screen. I think KDE had this, and there might have been a somewhat working extension for GTK that doesn't exist anymore.
• keys: CTRL is mapped to Alt; Alt is mapped to Win. This is a start. ⌘C and ⌘V: work as Copy and Paste in Terminal, ^C and all the other "control" keys work as expected in Terminal. I used to configure Terminal keys using AutoKey. I haven't been able to make ⌘← and ⌘→ work in text boxes - sadly it's hard-coded in X11 to do what Windows does.
• windows: Smarter window positioning and sizing especially with multiple monitors. I miss Zoom: the button that sizes the window to perfectly and minimally fit the content without scroll bars.
• too many additional items to count like ⌥8 to type bullet characters.
This is one of those things that I geek out on as a former macOS user.
> menu bar: one, at the top of the screen. I think KDE had this, and there might have been a somewhat working extension for GTK that doesn't exist anymore.
KDE has this if you use the Window Buttons[1], Window Title[2], and Window AppMenu[3] plugins.
> • keys:
Plasma Desktop lets you remap keys easily, and you can use setxkbmap elsewhere. I haven't tried remapping the ⌘ key for terminal usage, though, but I've remapped most of the macOS shortcuts I used to use.
Maybe you should try out the Ubuntu Budgie distro with my http://kinto.sh project added to handle your key mappings. I've tried countless distros and it is the most mac like experience you will find. EnsoOS would follow it, but of course I'd mention elementaryOS and Pop_OS! if they'd keep support for the global menu like Budgie or EnsoOS(xfce).
Totally agree. Some would point to elementary OS/Pantheon as being that, but it’s only really “maclike” superficially and brings some unique annoyances that don’t exist in macOS.
The biggest problem is that none of the DEs really fit my tastes — they all have to be poked and prodded into kinda doing what I want them to do, but they're never quite there and it's incredibly frustrating. I've also faced similar issues with starting with a bare WM and snapping together smaller pieces.
To get what I want I'd likely have to build my own DE from scratch, which I'm not even necessarily averse to, but I have no idea where to start with the mess that is X11 and Wayland and all the "build your own WM" tutorials that could be used as a springboard are written for building hyperminimal borderless tiling WMs, which aren't straightforward to adapt for a more "typical" floating WM with titlebars and the like.
So I guess the endpoint of this rant is that it's frustrating that building one's ideal Linux desktop from the ground up isn't all that accessible in reality. The configurability and openness is there on principle but it's difficult to take advantage of past a skin-deep level.