This is possibly the oldest repository that I have continued to make regular changes to.
Originally I used it to keep track of configuration and automation of various systems. I then referenced it when I was trying to reconfigure a system.
At one point I converted it into a full bash automation system.
I tried several different forms of automation, and dozens of different configurations before settling on putting the entire process into a single file and copying configuration files from the repository.
I made an effort to make it something you can run from the command line of a freshly installed system.
I also documented a handful of alternative linux distributions, and also windows and osx. However, I stopped using windows, and decided to stick with just one linux distribution, which keeps the repository thinner and lets me get some sleep once in a while.
I favor bash scripts because they are identical to what you would do in the terminal, and validating each step is a simple matter of copying and pasting the command. It has no dependencies and is far less complex than the made-up syntax used by various configuration management software. Just remember, if you aren’t specifying the package manager, chances are someone else had to, and if it ever changes you’ll have to hope they fix what they wrote for you.
There is no such thing as a free lunch.
written on 2017-04-13