Peter Lyons

Tips for Switching from Linux to Mac

July 20, 2024

I've run the full matrix of combinations of linux and macos between my work and personal setups. At this point I'm pretty comfortable switching. Linux will always have my heart but periodically I get fed up and just want a laptop that goes to sleep when you close the lid. I've recently seen some posts and since I did my most recent round of switching from an all-linux setup to linux-at-home + mac-at-work, I wanted to share a short list of key apps. These are mostly from my personal toolbelt with a few picked from some online discussions I saw recently.

Window Management

Since I run awesomewm on linux, which is configured with lua code, I run Hammerspoon on mac. It's the same philosophy and approach - use real code to get highly precise customization. The hammerspoon API is way way nicer than awesomewm though. When I joined Mailchimp in 2020 and had to use mac for work, I ended up doing a nearly feature-for-feature port of my awesomewm config to Hammerspoon and surprisingly my basic approach has been so stable that I have been maintaining both of them in parallel for about 4 years now. I know how I want my desktop environment to work and they both can acheive it.

If you just want basic window arrangements there are many good tools available including the ones below. I don't personally use these since Hammerspoon handles window management for me, but I know many folks like these:

Launchers & Omnibar Thingies

Raycast and Alfred are popular. I have a home-grown thing based on scripts and choose-gui which works identically for me on linux and mac so I haven't looked at this category much.

GOAT Meeting Reminder App: MeetingBar

Get MeetingBar. It's amazing. Perfect in every way and solves a longstanding problem for me. I barely need to look at my calendar anymore.

Closing

The differences between linux and mac for developers are as minimal now as they have ever been. We spend so much time in browsers and other cross-platform developer tools that it's pretty straightforward to have high similarity. It may take a fair amount of tweaking and futzing, but you should be able to get something that feels comfortable.