Hacker News new | ask | show | jobs
by smoldesu 1251 days ago
For me:

- No nagware (no Apple Music pop-ups, advertisements for safari, login nag in settings, et. al)

- Built-in package manager

- Having (relative) parity between production and development

Between those three, you probably couldn't pay me to go back to MacOS. Adding my own package manager, disabling ads and making my Mac into a Linux-equivalent machine is possible, but it's a lot of work to maintain and set up.

If I was a creative and used Adobe/Microsoft tools, I might be a little nicer to MacOS. As a programmer though? I haven't felt the desire to use a Mac since Mojave existed.

3 comments

I have an M1 Pro MBP and Linux running on a Framework laptop.

The Linux built in package manager is only ok. It often lags behind in versions of things I need. I ended up using Homebrew on both Mac and Linux. For the cases the Linux built-in package manager is too out of date I use Homebrew. It's not perfect on either system.

> - Having (relative) parity between production and development

For certain classes of development this is a big deal.

For my container work it doesn't really matter. I'm running Rancher Desktop and doing container based dev in the VM. Windows, Linux, or Mac doesn't matter as the host.

> - No nagware (no Apple Music pop-ups, advertisements for safari, login nag in settings, et. al)

I must have learned to ignore this as I've had Macs for a couple decades now.

On the flip side, a lot of business software I must use for work isn't available on Linux. I think this is the biggest problem for GNU/Linux as a general OS. There's some biz software that just doesn't run there.

I have a 13" Macbook Pro and a Thinkpad model I forget the name of.

Homebrew is down-right bad. There are certainly worse Linux package managers (pacman... looking at you), but if you're using MacOS I'd highly recommend giving Nix a try. Less muss-and-fuss, and stopped me from sending my Macbook on a swim in the local river.

> For my container work it doesn't really matter.

That's fine, it doesn't really for me either. The nice part (for me) is the native Docker and fantastic filesystem support. Whereas MacOS feels like a product I'm turning into a tool, Linux systems tend to feel like a tool out-of-box. Different strokes for different folks though, it really just depends on what you want out of a computer.

> I must have learned to ignore this

I must have learned to appreciate living without it, then. It's pretty jarring returning to a monetized OS like Windows 11 or Monterey for me.

> a lot of business software I must use for work isn't available on Linux

Oh yeah, for sure. Like I said in my previous comment, I wouldn't use Linux if I was a lawyer or a video editor. That being said though, pretty much everything I've used in the modern enterprise is browser-based. You don't need a native Jira app or a custom .DMG to run git. Arguably, everything you need is shipped right with most Linux distros.

I won't (and haven't) argued that Linux is perfect, but MacOS is converging with the Windows and Google school of desktop design. It worries me, and it's part of why I left MacOS in the first place. Photoshop is nice, but living on a computer that feels like a rented hotel room isn't very satisfying to me. Again, different strokes.

> Homebrew is down-right bad.

Curious why? I used to dabble with it and others.

A few macs ago (maybe around 2017), I switched to a strategy of “either the AppStore or brew”. I’ve never had a problem with anything from brew since. I install some productivity tools, standard OS tooling (Inkscape, Gimp, Libre), everything I need to develop for Python, Android, various embedded arm platforms, Elixir/Erlang. I even add some extra tools for Swift development.

I'd recommend checking out some other package managers for Mac. I'm being a bit harsh on Homebrew, but Macports is generally a better option IMO. The real crown-jewel is truly what everyone says; Nix. It's just a brilliant, next-generation package management tool that does what it says on the tin. It works on MacOS, allows for granular package installation/upgrading, ephemeral shell-based dev environments, declarative system management and more.

It's a bit like comparing cakes. Homebrew is a frosted sheet cake, whereas Macports is that nice double-layer box mix your mom used to make. Nix is a coconut-dusted 6-layer wedding cake that hides a 10 course meal under the fondant. They're all delicious, but I have a hard time going back to the sheet cake nowadays.

The thing that gets me about Linux package managers is how easily they can wreck your desktop. Granted mac package managers aren’t perfect here either but I think it would make a lot of sense for there to be some way to designate things like audio systems or your DE as “system” packages and as such be protected and very difficult to accidentally screw up with e.g. dependency resolution gone awry.

I’d also not be opposed to a package manager more geared towards making sure things work without fuss than trying to reduce redundancy. I don’t really mind if there’s multiple versions of whatever lib installed if that’s what it takes. Storage is cheap, my patience isn’t.

In theory flatpak and such should meet that need, but the implementation is so much more quirky and troublesome compared to e.g. Mac application bundles.

> some way to designate things like audio systems or your DE as “system” packages and as such be protected and very difficult to accidentally screw up with e.g. dependency resolution gone awry.

I do this on NixOS (and used Nix to do the same thing on MacOS). It's really great, but the up-front work of configuring everything can be a bit steep. The end result is pretty nice though - your environments are all sym-linked together from a common package store, and you can group together certain environments/package sets to update independently of one another. The icing on the cake is the rollback feature, where you can go back through the generations of your environment (until the packages get GCed).

It's not perfect (and it would test your patience), but Nix is an interesting commitment to the philosophy of using as much disk space as possible. I'm hopeful that someday it will be the de-facto package manager for Mac systems.

There's no such thing as "the Linux package manager". If you want something traditional, dnf runs circles around anything available on macOS, and nixpkg is from another universe altogether.
> The Linux built in package manager is only ok. It often lags behind in versions of things I need

No such thing. What distributions did you have experience with? And what distributions are you running on your production systems?

Apple nagware is a pain in the arse.

On my old MBP I get regularly nagged to update to Monterey. Despite it not being supported.

On my iPhone it wouldn't stop nagging me to accept changes to the iCloud T&Cs. There was no permanent opt out. You could say no for a bit and then it would go back to nagging you.

Same with Apple Music.

Currently my iPhone nags me to disable background running of Garmin Connect, so that I loose integration with my Garmin watch.

None of this endears Apple to me and is definitely a consideration for my next purchase.

For me:

I have a Macbook Air M1 2020 and a Thinkpad X1 Carbon 7th Gen (4 years old!) running Linux Mint.

I have upgraded the Thinkpad's Battery, RAM (16GB), and SSD (500GB) for the cost of the parts. I will not be able to do that on the Macbook. Ever.

For what I do (browsing, videos, some writing and research) the only benefit to the Macbook is slightly better battery life. I have more software option on the Thinkpad for sure and it does not want to control everything I do.

I paid WAY less for the thinkpad and I get pretty much the same performance for my needs.

The THRUTH is that most people are being way oversold computing power and paying a premium for it because they are locked into the platform.

And just yesterday for some reason Safari vanished and re-arranged my bookmarks for no reason.

Getting my MacBook ready to sell as a matter of fact.

In my mind it is stupid (and poor marketing) that the linux community is not crushing Apple with cheap, fast laptops.

> In my mind it is stupid (and poor marketing) that the linux community is not crushing Apple with cheap, fast laptops.

That is not how the economics of laptops work.

Most people don't want a Linux laptop. Call it inertia, but it is a fact that most people buy Windows laptops.

Most of the premium market consumers prefer Apple.

And most people who prefer Linux aren't paying a premium right now.

So you have three sets that do not overlap, and there is nothing the community can do about that in the short to medium term, anyway.