Here's a few pain points:
- Scroll direction can only be set globally so either touchpad or mouse scrolling feels awkward for me
- You need an extra click on another window before you can interact with it
- No focus-follows-mouse (there used to be 3rd party plugins but those seem to be gone now)
- While basic split screen tiling works and you can set up a global kb shortcut to move windows to left/right of the screen, Firefox seems to completely ignore those
- If you're running multiple displays macos for some reason always picks the most awkward display to open new windows in
- I really miss being able to grab and resize windows using a modifier key like in XFCE
I'm sure I'd get used to many of those, but the lack of focus-follows-mouse and easy window manipulation are the big one for me and I don't think that'll change much. Actually I think those were already pain points when I last tried out Mac OS in the late PPC days.
There's of course plenty of things that I like, especially the tight integration with my iphone and trackpad gestures (although I'm not sure how ergonomic using the trackpad all day is).
I was hoping it could become my main driver at home, but now I ordered a Ryzen mini PC for that.
edit: Oh, I completely forgot the biggest deal breaker for me at the moment. As of now the GUI version of Emacs (either downloaded through brew or from https://emacsformacosx.com/) doesn't work. MacOS simply refuses to start the binary.
- No focus-follows-mouse (there used to be 3rd party plugins but those seem to be gone now)
- While basic split screen tiling works and you can set up a global kb shortcut to move windows to left/right of the screen, Firefox seems to completely ignore those
- If you're running multiple displays macos for some reason always picks the most awkward display to open new windows in
- I really miss being able to grab and resize windows using a modifier key like in XFCE
All of these things can be done with yabai https://github.com/koekeishiya/yabai
I don't have this issue, I can interact with a window just by hovering over it with the mouse pointer
> - If you're running multiple displays macos for some reason always picks the most awkward display to open new windows in
You can set the default display in the settings (under arrangement, drag the white bar to the display you want to make the default)
Agree about the other issues though.
Hm, maybe it's just Firefox that's a bad citizen here, like with the global shortcuts.
I think the other poster has some addon installed and forgot about it.
But, having clicks work on hover instead of after focus is fine, and simply has a different set of trade offs.
You can also switch focus to a window without raising it by holding down Control+Option and clicking the window.
At any rate, a lot of these things can be chalked up to different philosophies, I think. Personally, I really don't like focus follows mouse; when I was using FreeBSD and Linux many years ago, I would try it and then end up disabling it after a short while.
It is worth noting that Terminal has a hidden preference for focus-follows-mouse:
defaults write com.apple.Terminal FocusFollowsMouse -bool true
You can also change that setting, along with those of some other quirky system things, in third-party apps like TinkerTool and Onyx.- resize and move windows with shortcuts: https://rectangleapp.com/
both free and open source
Personally I consider the stock macOS desktop experience to be perfectly fine.
I fully understand if you find this to be not really good enough, but this is the only way to make them work for you.
Under macOS, windows just kind of exist as they want to be and pile up until you intentionally change them, and the environment doesn't push you to manage it, so you end up not putting much thought into anything but the 1-3 windows you're using at that exact moment.
The mac approach taps a bit into spatial memory too, which makes auto-tiling like with i3 irritating because then windows no longer have an inherent size or position — it all continually changes as windows open and close unless I start maintaining window sets, so at the end of the day I'm still putting more thought into management than I would've under macOS.
Because of this it's long been a desire of mine to have a Linux DE that closely mimics macOS. Some will point to GNOME, but it's more like iPadOS if it were adapted to the desktop. Elementary gets closer but still misses the mark. It would be a neat hobby project to take up but figuring out how to get started is rough, especially with all Wayland example WMs and tutorials being for tiling instead of traditional floating.
The fact that many online Linux users take offense to lack of customization is not really something to worry about in my opinion. I used to customize Linux installs endlessly, but only truly found zen when I stopped worrying committed to stick to Fedora's default install.
[1]: Besides the point but Gnome is arguably far and away the most customizable desktop shell on Linux, as its extension "mechanism" consists of literally overwriting the JS code that powers its shell interface. For better and worse.
Because Apple interfaces are highly opinionated and generally fairly consistent, learning to do things the Apple way is a valid life choice for many people.
brew tap d12frosted/emacs-plus
brew install emacs-plus@27
Edit: codeIn any case I guess it'll get fixed eventually.
cd /Applications/Emacs.app/Contents/MacOS
./Emacs-arm64-11_2
There are some gaps in Wayland - screen sharing being the obvious one. But these gaps are in the process of being closed (pipewire being part of the picture). Give it another year and I believe that Wayland will be a solid solution for all the major use cases (multi-monitor, high-dpi, screen sharing).
My other issue with Linux as a workstation solution is OOM handling, and even that is being worked on!
I'm going to be sad that a lot of little WMs are probably never going to make the jump. I'm not sure Wayland is ever going to get that many.
The best way is just to take the plunge. Immerse yourself by removing other OSes from your own PC. In a few weeks you'll be flying.
> And then it still needs a centralized way to monetize the development work.
I disagree: once you put money into the equation, the quality of packages will go down as programmers try to shake as much money out of the users. Compare programs like MATLAB vs GNU Octave or Photoshop vs GIMP for example.
> And to get all that, you need a ton of paying users, not a bunch of freeloading tinkerers.
Do you really? I mean you are basically saying that the only way linux can compete is if it sacrifices most of what makes it good in the first place. I really doubt that users think "hmm today i'm going to pay for a bunch of crappy apps that each do some trivial thing for me while uploading my data to the cloud, then watch some ads, and then wade through a bunch of graphical menus to disable this one stupid feature I don't like, i love using iWinux this is so much better than other OS's".
There's GTK2, GTK3, vanilla Qt, KDE-Qt with additional tooling... The problem in Linux is the lack of integration between these tools. The fragmentation of the GNU/Linux ecosystem forbids the possibility of an unified API like HaikuOS kits. (https://www.haiku-os.org/docs/api/)
And are you saying that gimp is a superior product to photoshop? It’s not like you can’t get gimp or octave on non-free OSes, but for some (good) reasons illustrators and scientists and engineers choose to pay for photoshop and matlab.
After that, cd’ing around my minimal - yet blazing fast - thinkpad w/ void linux felt nearly exhilirating. Didn’t have to touch the mouse for many minutes at a time.
These businesses have no interest in trying to develop a desktop UI when Mac OS and Windows work fine already and someone else is doing all the work for it already.
Not everyone is like that but that's definitely the prevailing attitude. A good example is the regular hate that SystemD receives. Nobody wants a modern system that supports hotplugging and GUI configuration. They think you should edit init.rc files by hand and reboot your desktop (laptop? what's that?) whenever you plug something in.
I personally hate SystemD also, but that's more because it makes it such a pain to stuff like look at logs. I never remember the correct journalctl command. Just let me cat/tail a file like everything else. I don't know anyone who hates SystemD because it allows GUI configuration. It's just that SystemD made some other changes also that people don't like.
While it's great that we can boot it on pretty much every device out there, I would much prefer if it was a viable Windows alternative on a few devices instead.
Just yesterday, I plugged an external screen into my Ubuntu laptop. And then I had to duck-duck for like an hour to figure out how to make the fonts large enough to be readable again.
And why doesn't the file browser reliably show me all the files in a folder? Sometimes, the first file in alphabetical order is just omitted.
I sincerely want to like Linux for Desktop as much as I love it on servers. But the fact is, OSX and Windows just make you so much more productive, because things just work.