Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How should I setup my M1 mac for software development
4 points by mraza007 67 days ago | hide | past | favorite | 5 comments
Hello everyone, I recently got a M1 powered mac and I would love to hear how to set it up as a software developer machine.

I did install iTerm2 so far but tried installing Kitty some how its not supported on M1 yet so I’m sticking to iTerm2

1) Install XCode and the associated command line utilities. This will get you all of Apple's tooling.

2) Install Homebrew. That will let you get (and stay current with) just about anything else you need. Homebrew has supported M1 for a while now.

At least for now, MacOS does come with some stuff like Ruby and Python already installed, but that's not going to be the case forever, and the versions that come with the system tend to be pretty far out of date. You many want to install node and npm too.

I recommend installing newer ones using Homebrew (or some other package manager of your choice) unless you have some strong reason for wanting to use the version that comes with MacOS.

Ruby, Python, and Node are often used as scripting glue for other developer tools (even ones that don't specifically use those languages) so I think it's good to have current versions of all of those.

Depending on what you're doing, you may or may not want to install gcc. Apple's C (which comes with XCode) is LLVM-based these days.

For many things it doesn't matter, but for a few packages only gcc can build them properly. I'm holding off on installing that until I need it, personally. So far I haven't, but I've only had my M1 for about a month and have mostly been doing Node stuff with it. I did have gcc on my old machine, because there were a couple of things I used from time to time that needed it.

Unless you're doing iOS/macOS application development, you should not install XCode. It takes up tens of gigs of space.

Instead, run "sudo xcode-select --install" to install the basic build tools.

Then, use Homebrew or MacPorts to install modern versions of whatever software you're developing with.

You are very lucky that you weren't part of the November 2020 launch day chaos. Lots of software used by the developer ecosystem completely didn't work at all.

Now some of the most of the essentials should work completely out of the box.

But it depends, what sort of work do you wish to use it for? Backend, Frontend, Mobile, Web? It all depends, but more generally at the time of launch last year, you would be very disappointed.

Docker/Chrome/Vscode/Github Desktop/brew & friends all work great now. Having one of the fastest single-threaded speed was worth the launch day problems.

> Having one of the fastest single-threaded speed was worth the launch day problems.

Strongly disagree. So waiting 6 months to do your work after purchase was worth it?

One of the reasons developers get these Macs is to do mobile development for iOS (Because a Mac is required for this). Turns out that the 'launch day problems' wasn't worth it for this person (and many others) [0]

When I saw those launch day issues, I knew it would take more than a year to get the software ecosystem fully supported. At that point, I would just skip it and go for M1X or M2 instead. Which ever comes first.

[0] https://medium.com/mobile-app-development-publication/apple-...

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact