I’ve just taken a job where I get a Macbook, and here I’m going to keep track of some problems I hit and what their solutions are. Some have no solutions yet – I’m keen to hear them if you know them!
This is not a flamey list of things that are awful about MacOS so much as a list of things macos does that are unlike what I’m used to (Gnome3 on Debian). A lot of it is here to remind myself if I ever have to set it up again :)
There’s an App Store for MacOS but it doesn’t have much of what I want in it (vscode, awscli, authy etc.). There’s a great many different package managers for MacOS and Homebrew seems to be the one that all others claim to be better than, so is probably best. Also a past employer used to host it so I’ve some good feelings towards it:
I’ve also installed homebrew-autoupdate to get it to update its package lists in the background.
It can also operate like Debian’s
unattended-upgrades and upgrade all the packages regularly, but I’ve had problems caused by apps being surprised by being upgraded in the background.
“It’s Unix underneath”
Lots of people talk about how MacOS is ‘Unix underneath’ and so it’s very familiarly linux-like.
I’ve found that by it’s unlike any modern Linux I’ve used, and the shell feels a bit like a ’90s BSD tribute act; it’s a very old bash, and MacOS’ BSD heritage means none of the coreutils are GNU; they’re BSD.
This project does a really good job at getting your GNU stuff and making it all more familiar (it uses Homebrew):
The common workaround for the ancient Bash is to use Zsh instead. It’s quite similar to bash but my .bashrc doesn’t work in zsh so I use the linuxify-installed bash as my shell (
chsh /opt/homebrew/bin/bash ).
I keep being surprised by what I paste. I think a little bit of this is that there’s no middle-click-paste clipboard that’s the norm in Linux thanks to X11, but I don’t think it’s entirely that. I think some apps try to be smart and emulate middle-click-paste, by invoking a copy on highlight so perhaps it sometimes works and sometimes doesn’t.
Either way, I use jumpcut to get a list to choose from whenever I try to paste, so I’m less surprised. It adds a step but that’s not as annoying as accidentally pasting thousands of lines of text into a shell.
I’ve never wanted this before, but now I’ve got used to it I think I’ll use this on Linuxes, too, in future. It’s very nice to be able to go back over your clipboard history.
cmd-c and cmd-v working as copy and paste everywhere is wonderful, though. I do not like the idea of re-getting used to ctrl-shift-insert :/
System tray icons
The right-hand end of the menu bar feels like the system trays of old, where you might have little icons representing apps that are open and might want to notify you of things – chat and email clients, say.
MacOS doesn’t do this (the norm is to have the icon in the dock showing the notifications, optionally flashing at you), but there’s an app for that: doll
I’d assumed this was a trick that Gnome and friends had nicked from MacOS; dragging a window to an edge of the screen can snap it to take that quarter or half of the screen, really handy when you want to have two or three windows visible at a time.
Always on top
You just can’t do it. Windows are able to make themselves be always-on-top but the user can’t toggle it, though helpfully Slack’s Huddles do this by themselves, and Firefox’s pull-out video thingy helps.
There’s bodges and apps to do it but most of them involve creating another window that is always-on-top and replicating what’s in the one you want to keep present. I’ve just got used to not being able to do it and it’s not a massive loss.
It’s clearly not a thing Apple want you to do with a mac, and definitely not multiple monitors. At home it’ll often not-see one or the other of the monitors on my dock.
Also there’s no way to have the macbook open but the screen off – when you want to use two external monitors, but the built-in webcam. Camo Camera lets you use some other (Android or iOS) device on the same network as a webcam, so I do this with my iPad (iOS and MacOS natively support using an iPhone camera from a Macbook, but not using an iPad camera)
Some people’s issues with displays are fixed with Better Display, but mine aren’t
I’ve used Guake forever as my main terminal, I hit ctrl-space and it drops down from the top of the screen over whatever else is there.
iTerm2 is historically the go-to better-shell for MacOS, and there is a way to make it do the same but I found it really clunky and unreliable so I now use Tabby which is still not as polished as Guake, but works reliably.
Often when I hit the ‘play/pause’ button on my keyboard Apple Music opens, though I always wanted to actually control the media playing in my browser.
Apple News and Apple Stocks similarly occasionally just pop up and take focus and have no apparent uninstall route.
I’ve found no good fix for this, and even root’s not allowed to delete the involved binaries.
No ‘move’ in Finder
I don’t know why:
Apparently a common fix is to use Alfred to improve Finder generally, but this hasn’t yet annoyed me enough to do that.
There is a notch surrounding the webcam, but the display doesn’t know about it so draws things underneath it. I’ve not had much cause to fix this for menu items, but my system tray notfications above make this much worse for the app icons.
I use Dozer to change the order and set a bunch of them to autohide.
Audio Routing is unreliable
Often, this will automatically switch to a bluetooth device when it connects, but frequently not. Most apps will honour this change most of the time, but sometimes some won’t, and especially Zoom just completely ignores it.
When this dropdown loses control of where audio is going, there is no apparent pavucontrol equivalent to override it, you just need to reboot.
Auth prompts for every upgrade
I’ve got into the habit of rebooting frequently to resolve the audio and other issues, but most of the time on login I get one or a few of these:
I’m guessing this is an artefact of there not being a package manager, but some brew installed things do this, too. I don’t really know what a ‘helper tool’ is, but I’ve not found a way to get this to just use the same credentials every time without prompting.