Ask HN: How do you handle your local machine OS build?
I've noticed among tech communities that there is an apathy towards rebuilding/reinstalling your local machine's OS. Common explanations are that it would be too complicated, time consuming, or that people don't want to lose config files, etc.
It seems that many of us can rebuild servers in minutes due to solutions such as Ansible, but why is the same effort not applied to your desktop device?
Do you have an Ansible playbook for setting up your Linux/Mac/Windows PC?
Do you back up config files manually, or have some sort of 'install guide' for everything?
Do you just use full disk snapshots and hope you'll never have to actually reinstall?
I'm interested to hear about how the HN community approaches this, as I've seen people who deploy hundreds of servers with Ansible and have an automated/resilient infrastructure still have trouble with rebuilding their local dev machine.
2 comments
[ 4.3 ms ] story [ 9.8 ms ] threadIf your machine failed, you restore from backup, you don’t rebuild.
If you are upgrading OS, you’ll want to carefully review all the changes you do. There is a lot of churn in desktop linuxes, and that hack you did five years ago to get your mouse to work is likely no longer necessary. You may want to keep notes in text format about what you did, but each step is still manual.
If you need to install suspicious software which bypasses your package manager and cannot be uninstalled easily, you don’t risk your primary machine, you do it in VM to begin with.
Your selected config files that you have carried with you over the years, like .bashrc and .emacs, should be in some sort of source control anyway.
The projects you are working on should have dependency install instructions - config for your package manager, and install_deps.sh script for your C/C++ stuff.
With all this, I do not see much point for Ansible playbooks.