Skip to content

Attempting to automate the installation and configuration of my personal laptop with Puppet.

Notifications You must be signed in to change notification settings

mudge/puppet-workstation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Puppet-Workstation

This is an attempt to use Puppet to manage applications and configuration on my personal laptop.

As I use a Mac, applications mostly come in the form of disk images from the Internet (files ending in .dmg) or in some sort of archive (e.g. MacVim which comes in a .tgz). Development tools (such as git) are installed via Homebrew and Ruby is installed via rbenv and ruby-build.

To accommodate all of the above, I have written a few Puppet package providers:

  • dmg: To download disk images from a URL and then extract specific applications from them into /Applications;
  • tar: To download tarballs from a URL and then extract specific applications from them into /Applications;
  • homebrew: To install packages via Homebrew;
  • ruby_build: To install versions of Ruby through ruby-build.

I use the excellent vcsrepo resource type via a git submodule to manage the installation of Homebrew, rbenv and ruby-build (as they are all just git repositories).

This is very experimental at this point though I am using it personally. If you would like to try it out, you will need to clone this repo and pull in the vcsrepo git submodule like so:

$ git clone https://github.com/mudge/puppet-workstation.git
$ cd puppet-workstation
$ git submodule init
$ git submodule update

And then you can run it with:

$ ./workstation.rb

To perform the necessary one-time setup as root, you can simply do:

$ sudo ./workstation.rb

About

Attempting to automate the installation and configuration of my personal laptop with Puppet.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages