Linux vs. Mac
Have any long term Linux users here switched to Mac?
What problems did you have, what do better than expected?
I am seriously considering switching. I have been using Linux for like 10+ years, but this month have been rough. I was using Mint in the start of the month, but an upgrade broke so many things - even "Shutdown" and "restart" was not possible.
I switched to Ubuntu 22.10, and now every 30 minutes I get a crash. I bought a new Microphone that kinda works, but not really.
87 comments
[ 4.4 ms ] story [ 84.5 ms ] threadI use four personal machines pretty frequently (a few hours, a few time a week), one Mac Mini, a recent all-AMD Asus laptop running Ubuntu 22.10, an old Dell laptop (with a discreet nVidia card) running Ubuntu 22.10, and a really old Toshiba ultrabook running Pop_OS! None of them break regularly, though the Asus (probably from being the newest) has a fingerprint sensor that has never quite worked right under Ubuntu. Other than the slowness and clunkiness of snaps, Ubuntu seems fine to me? Going forward I will probably stick to Pop, it seems a little better thought out than plain ol' Ubuntu, but the differences aren't night and day.
Just some weird things with Snaps that made me "snap" :P Like, Installing Chromium with snap, and then it doesn't have access to file drop which is something I use like 20 times a day. This easily adds 30 minutes to my work. Or sharing my screen I have to click 4 buttons in a slow and clunky manner.
The issue with your friend and their M1 was probably because he was running linux on it and not OSX? he surely could have watched a movie with the native OSX apps if that was not the case.
Software must communicate with the OS to work and Apple does not seem to care much about doing things which will break software from the linux/OSS community. This is actually one the primary reasons I gave up OSX/Apple, the other being they dropped support for classic apps, in one update they rendered 75% of the software I used unusable.
Linux has many redeeming features but it can be a full time job just to keep it running. By contrast, Mac comes in one size and configurability is limited, but out of the box it just works.
Tried this again for good measure just in case, but unsurprisingly with the same effect.
Many gray hairs later, it turns out the system update installs a new kernel which has a bug to do with Nvidia drivers causing the whole thing to crash and burn. So if I downgrade the kernel (is that even a good idea?) and install Nvidia drivers there, it's ok. Some more random-commands-from-internet and this is done. Nvidia drivers installed, computer works.
Now I'll "just" install MATE instead of the default desktop env which I dislike. Some warnings about display manager..? Hmm let's see what happens in a mo. Install complete, reboot, machine is fucked again.
I'm getting desperate now, for a week I did nothing but type various cryptic commands, prepending sudo if they didn't work. I mean, I'm a decent Linux user, but I don't know what the lshw command I just typed in does. But never mind. On an Estonian Linux forum I find someone who has the same issue, and has a fix: boot in safe mode, get a terminal, disable some obscure MATE option via cli, then reboot. Yes! That worked - but why..? I breathe a sigh of relief and think fondly of my Mac at home.
There are or course the Nouveau drivers, but they get my PC hot if I wiggle.the mouse too much so that's not an option.
If it happened once, maybe I was unlucky, but happened on two different boxes in the span of months from each other.
Linux-related maintenance time on all these machines is measured in minutes: sudo apt update && sudo apt dist-upgrade, wait a few seconds (gigabit fibre helps here), look through the list of updates, check that it doesn't want to remove something important on those machines which run Sid ("Debian unstable" - this problem does not occur on stable distributions) and let it rip. That's it.
Maybe try a different distribution? I'm using mostly Debian, there are a few machines running Mint, the Raspberries run whatever I happen to experiment with. On the server I'm running Proxmox with a flock of containers running Debian and a few VMs for things-not-Linux. Here, too, I have none of the problems you describe.
Try Debian?
I've been using Manjaro with a cheap Samsung laptop with an integrated Intel iris GPU for the last two years. Performance is not amazing but very usable. I hear AMD drivers are pretty OK and that's probably what I'd get if I needed more performance on Linux. The whole deal with Nivia sounds like it's just not a great experience. Manjaro is an Arch linux derivative so you need to be pretty hands on to fix things once in a while. That goes without saying.
Though I must say, I don't seem to have a need to fix a lot of things lately and I think the Arch approach of not trying to bend a lot of packages their way and just compiling them as is while keeping on top of upstream improvements, optimizations, etc. is doing a lot of good. Keeps things simple. If things break, they usually get fixed pretty rapidly too. The package manager actually takes btrfs snapshots when it runs. So, that makes trying out new stuff pretty safe.
Mostly stuff just works on Manjaro. Stability has been fine for me. Manjaro defaulted to Wayland when I installed it and I did not have to fix anything to get that working. Just worked out of the box. I had some issues with the Intel sound driver that seem to have resolved itself with kernel updates. Bluetooth is a bit of a mess on Linux sadly. Just very flaky. So, I tend to rely less on that.
I use snap (mostly) and flatpak for running all the usual suspects in terms of electron apps for various video call tools. Steam works great on Manjaro (the steam deck of course uses Arch Linux as well), and I use that for some light gaming on the laptop. And Darktable, which I use for photo editing. The latter two are of course what I'd like a faster GPU for.
I also have a mac for work and it's nice and fast. And while the M1 has a great GPU, a lot of the older Intel macbooks had even slower intel GPUs than my Samsung. And of course while the M1 GPU is fast, you can forget about running most Steam games on it. Darktable works on it but without hardware acceleration. So, there's that.
Whether you enjoy switching to Mac OS is going to depend on what you use your machine for. In general, for my main work machine I use Mac and I have very little to no downtime ever. However, much of the benefit of going Mac is gained if you go all in on the ecosystem across devices.
I really enjoy Linux and the freedom it gives me, but using 30 hours last month getting things to work so I can do work... is not how I want to spend my time.
Opinion on Mac book after using it for barely 3 weeks:
Excellent:
- battery life
- sound
sucks, out of top of my head:
- when you press Enter it wants to rename a file (?? lol)
- terminal hotkeys don't always work (Ctrl + back doesn't delete a word...)
- "fn" is the most left key... instead of control...
- windows management is trash, i cant "magnet" to borders of the screen
- I wasn't able to plug a LG usb mouse (?? apparently I need a tutorial to plug a mouse)
- hotkeys in Pycharm/Intellij are different and not interchangeable
- brew is not as good as zypper
- need to use AppleStore for some applications
- when installing applications they don't seem to be available in terminal ...
[1]https://rectangleapp.com/
Instead of running an OS with a ton of little tools and hacks, why not just run on that lets you configure it how you want?
Mac has defaults, and they seem off when you don't use Mac.
Once you accept Mac as your system, you either adopt those defaults or start tweaking them.
I think of Mac as a UNIX with an average window manager, but with excellent integrations.
And sure, to some extent Mac has a different paradigm, and if you are used to it it won't seem strange.
But on top of all of that, objectively, the mac UI is still incredibly limiting and frustrating in ways that no other DE is, even with being familiar with it.
That really depends on what you mean by Linux. A feature-rich desktop Linux like Ubuntu, Fedora or openSUSE? These are comparable to MacOS: You may like the defaults, you may not, but the premise is the same.
If you’re using anything highly customisable, chances are you have to tweak the system, otherwise there is no system. E.g. Arch not shipping with X11/Wayland by default.
The MacOS UI is one of the better desktop environments I’ve encountered and I prefer it over almost any non-tiling desktop environment in Linux. Only i3, xmonad, etc. have a better setup, in my experience, but they require installing and customising.
See that's just hard for me to understand. At every point it seems to get in the way. Someone else in this thread made a list of the UI behaviors that they thought were odd, e.g. pressing enter on a file results in a prompt to rename it.
I think it's hard to measure and compare UI stuff though, because we become so biased by what we're used and what we find easiest or most comfortable to use.
Don’t you want M-DEL? Terminal (actually, all text fields in cocoa applications IIRC) use gnu readline commands.
https://www.gnu.org/software/bash/manual/html_node/Readline-...
- the OS uses Emacs key bindings throughout in standard input fields. Try it.
- Search for “Magnet” or, if you’re a tiling person, “Amethyst”
- Mice just work. You may get a dialog for weird HID devices, but I don’t get why you mention a tutorial
- hot keys are configurable in every single application - check the system preferences.
- brew is not the only option, you can also look into MacPorts (but I wouldn’t recommend it)
- there is an “open” CLI command that you can use for to invoke non-CLI apps that do not register themselves in PATH. Use “man open”.
Also, look into native CLI tools like sips, etc. There is a lot of CLI goodness in macOS that impatient people overlook.
I have a music production hobby and the main obstacle for me in using Linux is no drivers for hardware and no VSTs.
If there is anything that
a) just works
b) is pretty
c) allows me to run all the software
d) doesn't sell my private data to the highest bidder
that would be nice.
My Mac just works, upgrades are seamless (but do wait a few months before major os upgrades), the battery lasts all day, the audio and video quality are good, lid close suspends the system correctly every time. And everything syncs with my phone.
I spend most of my time in the terminal anyway, and just ssh to my linux dev host. I don't worry about trying to set up a full dev environment on my laptop, I prefer to do that on a linux server
Have you considered an Arch based distro?
Personally I switched from 15 years with Apple products to Linux land and while it's a lot different I like it.
I now have the option to use whatever computer I'd like and (for now at least) I'm still sticking with the Macbook. The main things that keep me on it are: - Excellent hardware. The build quality is higher than any non-Apple laptop I've tried and the display is really good. - Performance and battery usage with the Apple silicon chip is great. - iCloud sync. I use an iPhone and frequently make use of iMessage, photos, and clipboard syncing between devices. I know that you can replicate a lot of that with Android and Linux, but at this point I'm pretty deep in Apple's ecosystem and am unlikely to switch away anytime soon.
The biggest thing I miss is having a good tiling window manager experience. I have a desktop running Sway[0] and really love it. I've tried a handful of tiling window managers for mac and none of them have felt really good to use. They all feel like I'm fighting the OS more than working with it.
If there were a lightweight laptop with good linux compatibility, a high-dpi, high refresh rate display, and competitive battery life, I'd be very tempted to switch back to linux just to have a good window manager again. I'm hoping that Asahi on the MBP can give me that, but it seems like it's not quite ready for daily driving yet.
[0] https://swaywm.org/
Its about the same size. The screen, keyboard, trackpad... all comparable. It has more ports. The cooling system in the G14 blows the mac away, hence it can run passively and sip battery just piddling around the desktop.
The mac has 3 big advantages as far as I can tell:
- Power efficiency under heavy GPU/AI loads. If you even sniff the dGPU in a PC, you can kiss your battery goodby.
- A large RAM pool for GPU/AI stuff.
- No fussing around with different power settings/fan profiles for different situations.
As for the PC laptop
- It has a huge gaming advantage
-"native nvidia" is often easier for ML stuff.
Software differences are a whole other can of worms.
It's slightly thicker and heavier than the MPB and I'd really like to go lighter rather than heavier if I were to switch. If gaming were a priority for me though, something like this seems like it would be the way to go.
I've ended up finding that for me personally though, it feels slightly better to give in to the way macOS wants me to do window management, working with the designers' intent, than it does to work against it with yabai.
Here’s my list: https://taoofmac.com/space/apps/window_managers
You will never have the kind of control you have in Sway, but you can get really close.
The biggest drawback was that running FOSS was something I cared about and no longer doing so made me feel sad for a bit. The filesystem layout is slightly different but still UNIX-y and newer versions of MacOS don't let you put files wherever you want (which makes sense from a security perspective but is nonetheless an adjustment). I struggle to think of much more than that. The operating system just gets out of my way now and I appreciate that, and we still run Linux on all of our servers for everything so I've got that at least.
It's much more rare now that I've created $HOME/.bin and added it to my $PATH and nearly all 3rd party apps have been updated to not install to SIP directories.
Hardware is hands down the best in terms of battery life. It's hilarious compared to pretty much anything else I have tried.
Software is... Meh. But the part that really is the window management. What is there currently in mac (and Windows) is, mildly put, a joke.
- Inability to set up your /home/ (which is /Users/ on a mac) the way you like it. There are default folders for Documents, Pictures, Music, etc and they cannot be deleted. If you delete them they are recreated either immediately or on reboot. My hack-of-a-solution was to alias ls to hide them [1].
- There are also applications that you cannot delete. One such application is Chess - a program that let's you play chess. No idea why it's there by default and why it's impossible to delete it.
- .DS_Store files. Whenever you open a folder in a Finder (default file browser on a Mac) it will add a hidden .DS_Store file within that folder. This file stores and remembers how you chose to arrange your folders in a graphical file manager. But these files often get in a way: you will find them in tarballs, git repositories, etc. Just like with removing folders, I don't think there is a solution that can turn them off.
- Recent OS update made system-settings look like you are on a phone. Apple probably wants to push an interface for system settings that is common to iPads, iPhones, MacBooks and even Apple Watches, but for me it's hard to get used to that.
Good:
- Default Applications are quite tasteful. In particular the Mail client, and default Apple Terminal. They have everything I need without being full of toy features
- Stable. Both hardware and Software. My MacBook pro is 5 years old now, but I never had an issue with hangs, reboots, crashes or anything of this kind.
- Third-party package managers. Homebrew is more popular, but I prefer MacPorts. Whichever you choose, you can set up your system to use linux compilers, shells, coreutils, etc. By default Apple command line arsenal is a bit dated and opinionated so to me this is a must. Once you have this done the command-line experience is almost indistinguishable from Linux (well, apart from /home/ stuff and .DS_Store things).
[1]: http://karolis.koncevicius.lt/posts/cleaning_home_on_macos/i...
But of course there are also feature for people who do things differently. One good example is Stage Manager [1]. There are also things like "Mission Control" and multiple desktops, but I am not the right person to talk about these.
Oh one more thing - seems like Apple likes to reverse things on purpose. So the "x" for closing windows is on the left, and not on the right. The desktop icons appear on the right, not on the left. If you use trackpad to scroll it's also reversed - when your fingers slide down the page slides down as well. Takes some time getting used to this.
[1]: https://www.youtube.com/watch?v=B7t_BCmY-lg
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
Also, check if dot_clean is in your system.
Buying a Mac will certainly solve any hardware issue you're currently experiencing. But so would buying a new PC. Mac's have their own issues, as does Windows and BSD. It's a pick-your-poison situation.
I am running CachyOS now and love it, but for a "stable" distro I would probably pick Fedora Kionite, or maybe Clear Linux, and augment their package selection with flatpack.
I use a windows laptop for my work because I work at Microsoft. At the end of the day most of us spend 90% of our time in a browser, vs code, and bash or powershell. The experience between the 3 major OSs is not that different.
I agree, for programming tasks (though I really came to hate everything about macOS UX for everything else). The one major difference I've noticed is that docker runs great on Linux, runs great on Windows with Docker Desktop/WSL2, and runs like mollases on my company issues 8gb macbook pro
Personally I love the ease of machine learning stuff in linux, but thats now a strong suit of Apple hardware too. If you are buying a GPU/NPU-less laptop, I would probably go with Apple, if only so you can run LLMs and stuff locally.
I won’t switch because I don’t trust a closed source black box with my life. I can understand what Linux does, and suitably lock it down and customize it.
I support FOSS, and Linux in particular. Freedom is amazing!
Advantages:
- Biggest one without a doubt is battery life. This is both a hardware and software issue, but it's such a deal breaker for me who used to work remotely and was always frustrated with Linux because of this.
- High quality hardware. When I used linux I basically chose the closest laptop possible to mac anyway, since they ARE the highest quality in hardware (body case, touchpad, keyboard, etc.). Still nothing comes close by a mile in PC-land. I used to use the Zenbook line.
- The programming transition is super-smooth. As a front-end dev, I did not notice at all the transition from the coding point of view. As you probably know, the new Apple Silicon also is great for dev.
- Better UI consistency. In Linux you have different distros, each with it's own style that in 2023 are pretty great TBH. But then each program will use a different style, so it's a bit of a mess. With Mac you have a consistent UI across all apps.
- As you said, everything (even with the Apple Silicon) basically works out of the box smoothly.
Problems:
- Pushing for Apple services. In the end, it's a platform and they push for their own services. Be it Safari, or having to go through XCode, or the Apple Store, yeah I am not too happy with that.
- In Linux-land there's usually mid-range programs that do the job well, while with mac you have either the super-specialized ones or the not-enough ones. Example: light editing a pic with GIMP, light video editing with KDEnlive, etc.
- Filesystem compatibility, I have my external backup drives encrypted with EXT3/4, and of course that doesn't work with Mac.
- When you do manage to break something (I did in the past by installing python 3 and renaming `python` to point to `python3`) it's a lot harder to fix, in Linux it's easy to just burn a USB and reinstall it all.
- Bunch of punctual problems that were fixed eventually; but point to the flaw that Apple is a single system and you are at their mercy. Couple of generations of all their laptops had terrible keyboards, the Apple Silicon was a lot smoother than I expected but still ofc it was a transition so was a bit painful, etc.
Apple hardware is definitely better though!
It will also depend on how good you are at switching your "muscle memory" at the keyboard. But this is the same for all three of the main oses (linux, macos and windows). It can be very frustrating when you hit a keystroke combination and either it does nothing or something completely different
Ubuntu / Mint is rock solid. I run Ubuntu 22.04 and have had no problems despite heavy customisation on old hardware (Dell Optiplex 3040). If you can install Ubuntu (or Mint) I would expect to run it without issue
I use two computers. A Fedora Linux workstation and a M1 Macbook Pro. I've been using Linux daily for about 15 years and macOS daily for about 10. My experience will be highly subjective, and it's rare to talk about them without striking up a debate.
I could very feasibly only use my MBP. It could do all of my workloads. I choose to have a Linux desktop and use it as my primary computing device because I prefer working on Linux. This is something I pay extra for because I get more joy and experience less frustration from using Linux than macOS. The reason I choose to own a MBP is because I think Apple makes the best laptop hardware. The Apple silicon chips generation of MBPs are easily my favorite. I find it really convenient to have the ability to compute somewhere that is not my desk. If Linux had the same level of support for Apple hardware as macOS has, I would not use macOS.
A lot of skills used in Linux will transfer over to macOS. The biggest ones are the command line. Homebrew and Ports are both capable package managers and will have most of the tools you need. I personally find APT/RPM to be both faster and more complete, but I have no data to back this up. Your bash scripts, python workflows, or whatever will mostly be intact. Anything operating on the OS layer will probably be broken, and you might be surprised about some command line applications missing in macOS because they relay on OS layer. I can make macOS work for me here, and do real development on it, but find Linux to be slightly more comfortable and full of features. iterm2 is a great terminal emulator for macOS.
For the GUI userspace I find I still prefer the Linux options after years of exposure to macOS. I feel limited in my options for basic tools like file managers or clipboards. Many applications will try to do things in a certain style I refer to as "the mac way". It's fine, and easy to get use to. I feel it often leads to too many files in my desktop folder or Applications folder for my taste. Some tools, like firefox or emacs feel largely the same where the only differences are the areas in which the tool interacts with the OS layer. I am sometimes pleased to see that commercial software has better macOS support than Linux support, and I will rarely use macOS for specific software unavailable on Linux.
On the OS layer of things, macOS generally has better stability and simpler upgrades than desktop Linux. I do like the iCloud integration, and find the MBP to be more in sync with my iPhone than my Linux desktop. I find the security and permissions layer of macOS to be more focused on non-expert users than Linux is. I am often asked to confirm before running binaries, and occasionally have to go into system settings to give an application specific permissions. The operating system is also very protective of some folders, and will ask for user permission before writing to what I would consider user-space folders. I find this is type of thing is generally tending towards being more annoying over time.
I tend to think macs are a decent value. They are the highest quality laptop built, and operating one feels like it takes less system maintenance than a Linux laptop would. It seems like they often charge more for ram and storage than you would expect on a Linux system, so I focus on my actual needs more on my laptop. I spend about $3000 for a MBP and $3000 for a Linux workstation, and fully upgrade both about every 3 years. I could go much longer between upgrades. I could use cheaper computers too. These are tools that get thousands of hours of use each, and am happy to pay a premium for tools I enjoy using. I usually donate my old computers to family members. They usually receive a long lifespan of use. The Linux desktops seem to receive longer periods of use, because teenagers will upgrade a few parts and use them as gaming PCs.
My take? I'd scrap Mac OS X and put Linux on that Macbook in a heartbeat if it were allowed by company policy. I can't find a single thing that OS X does bette than Linux, and there are plenty of things that it doesn't do as well (by my personal standards). And that's before even getting into the ideological aspect, and the fact that I fundamentally hate Apple and their entire "walled garden, locked down, proprietary bullshit" world-view.
The Mac hardware is nice, no doubt. But for my money, give me Linux any day of the week.
Relax. Touch grass. Figure out why it is that way. You may not like it all the same, but you’ll be able to understand why it’s that way.