Ask HN: What's THE way to setup a OS X dev machine 2015?
I'm going to replace my 5 year old MBP with a new machine in a week. What is considered a good way to setup a machine from scratch for web and mobile development nowadays?
I'm familiar with Github's boxen but would love something more "macish". As far as I'm concerned I would ideally click some packages hit install and the magic system does the rest and always keeps that stuff updated ;)
12 comments
[ 3.3 ms ] story [ 33.6 ms ] threadWhen possible I use boxcutter released boxes, as they generally have good support for providers besides virtual box.
So e.g. on new projects, I use one of the boxcutter Debian boxes, but for a client I have with a legacy environment, I'm using a centos box.
Vagrant's docs are pretty decent on how to create a custom box.
Check out Github's tools as they seem to use OS X heavily.
Homebrew - http://brew.sh/
Also the ~/.osx dotfiles in this repo (https://github.com/mathiasbynens/dotfiles) are quite handy especially space order locking. That used to drive me mad.
Finally Amethyst (https://github.com/ianyh/Amethyst) is still a lil buggy but so nice to have. If you want to go the 'more OS X route' check out BetterTouchTool instead.
Using a combination of Vagrant for project environments, and a generic Debian VM (which could also be handled by vagrant but has much less need for it) for miscellaneous stuff, I am not missing brew.
The other advantage to this approach is your mac will likely remain stable and fast for much longer. Running a web server and a database server and an app server and who knows what else constantly (and by default, at startup) can make for a lot of RAM usage and ridiculously slow startup/logins.
Move that shit all into VMs, and keep your host as simple as possible. Sure, run your IDE, editor, debugger, what have you, but you should be able to quickly and easily just stop everything related to any given project/app.
Edit:
Also, and I know this will probably not be a popular opinion around here:
Whenever possible I use Mac App Store versions of apps. After a couple of clean-installs since the inception of the MAS, I am absolutely in favour of this approach. I can generally queue up all my MAS sourced apps for download + install quicker than I can open site, download, install & add license details for probably ONE app from outside the MAS. I know it has limitations and some apps will likely never be available in it, but those that are, are so much simpler to re-install on a clean OS.
If you don't want to pay $5/month for an EC2 instance, just run everything in a docker container.
I write a bash script to install standard development tools for developers in my company. I put most of the application on local server inside company network so I don't have to re-download the application from internet. I plan to release this script sometime this month