I recently bailed out of Apple into Linux. I put this transition off for a long time because i've used Linux (Desktop) in the past and it was rough, so i knew i'd have some hills to clime... but.. my life on Apple was rough, too. Ultimately i didn't switch because i could get a better UX on Linux, i switched because the huge market i'd pay Apple for a beefy Tower was not worth the degrading user experience i was receiving.

In my past experiences a big frustration was configuring/debugging some random thing and ending up with a solution that - given 12 months of time - i needed to tweak and cannot remember what i did. Or worse, i upgrade software and something breaks. I identified that this effort was wasted if i couldn't roll back easily, or incrementally document my steps through the OS.

To tackle this i chose to go with NixOS. It's got a lot of rough edges, but a few days of dedicated learning time was enough to make me feel mostly productive. I still have a lot of hanging questions, but with NixOS + Flakes + Home Manager i have a system that i feel confident about stability and my ability to roll back as needed. This softens the blow for me personally of needing to figure stuff out that i otherwise wouldn't of had to on OSX.

Since my focus is building a beast PC (that i don't want to pay Apple for) i might still use Mac Laptops, and as a bonus my Nix setup can still be applied on Apple. From NixPkgs to Home Manager dotfiles i plan on using my setup on both Mac and NixOS.

I switched fully ~4 weeks ago, and my only real complaints are (as a Linux Desktop beginner):

1. X11 seems awful. Notably i have one 4k Monitor and two 1080p Monitors and .. it's annoying to setup. I'm using XFCE because it was notably faster than KDE and especially GNOME, and so i set XFCE to 2x Window Scaling but that scales all 3 monitors. So i have to use xrandr to tweak the scalings, and that has been a chore. Lots of experimentation for a janky experience, but i've got it working good enough for me. Wayland will hopefully improve this, but that's a long ways out it seems.

2. Basic features like scaling seem hit or miss. On KDE i recall it working pretty well with all my normal windows. On XFCE if i set 2x Scaling, Spotify and Zoom don't recognize the scaling. Resulting in very small text. I'm willing to overlook a lot of the Mac "pretty" - but i really wish Desktop Environments would perfect the basics.

3. Discoverability on Linux (any distro, imo) is .. bad. We all know the trend of immediately going to Google for everything if you're unfamiliar with the toolset or the domain, but i feel like there's got to be a better way to navigate a OS from both CLI and UI. Linux has the same discoverability problem that Windows has, it's just easier to Google things.. and that feels bad. For a hacker friendly OS i think we could do better here. NixOS, while equally terrible on this front, strikes me as something uniquely fit to be discoverable - given that nearly the entire experience is immutably configured.

All in all, so far i'm quite happy with my switch and looking forward to buying a Zen3 to build a new workstation. Hope this summary of my month long journey is of use to someone lol. It's far from over.