I have a lot of packages and configurations done to setup my dev machine. I have other developers in my team and want them to have the same setup to start with to ensure compatibility and availability of tools.
How do I automate configuring the other dev machines?
I found Puppet and Chef which do the same for multiple servers. I won't hesitate to learn them or use them unless they are overkill for my use case.
I also found Remastersys to repeat my installation with a custom live disc, but I look forward to:
- Run my setup on an already installed systems.
- Be distro agnostic.
- Remastersys doesn't seem to fit.
So, what tool should I be looking at to get it done?
Sample Use case:
- Want x, y, z packages to be installed after a fresh install of Ubuntu or Arch.
- Can I go distro agnostic? [Giving my devs the choice of distro - still keeping the same packages with no extra effort.]
- Configure simple servers like MySQL or PostgreSQL.
- Have often used tools like Meld, Google Chrome, Firefox, etc.
My use case is not a server-like use case. All I want is to repeat my setup keeping me decoupled from underlying system details.
Shell scripting can be an option, but its really hard to maintain something so low level like a shell script.
I suppose this a general problem to solve. There must be something I am missing.