From bf33ac997636c4b6c199cfff1e171ffaff437c91 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Tue, 13 Nov 2018 00:19:06 -0500 Subject: actually, let's make this shared again --- modules/conf/manifests/init.pp | 15 ++++++++++++ modules/conf/manifests/user.pp | 53 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 modules/conf/manifests/init.pp create mode 100644 modules/conf/manifests/user.pp (limited to 'modules/conf') diff --git a/modules/conf/manifests/init.pp b/modules/conf/manifests/init.pp new file mode 100644 index 0000000..36e5f22 --- /dev/null +++ b/modules/conf/manifests/init.pp @@ -0,0 +1,15 @@ +class conf { + include c_toolchain + include cron + include git + + package { + [ + "cmake", + "fortune-mod", + "less", + "vim", + ]: + ensure => installed, + } +} diff --git a/modules/conf/manifests/user.pp b/modules/conf/manifests/user.pp new file mode 100644 index 0000000..b5af5b2 --- /dev/null +++ b/modules/conf/manifests/user.pp @@ -0,0 +1,53 @@ +define conf::user($user=$name, $home=undef) { + $_home = $home ? { + undef => $user ? { + 'root' => '/root', + default => "/home/$user", + }, + default => $home, + } + + include conf + + package::cargo { "fancy-prompt for $user": + package => 'fancy-prompt', + user => $user, + ensure => installed, + require => Package["cmake"], + } + + exec { "git clone doy/conf for $user": + command => "/usr/bin/git clone git://github.com/doy/conf", + user => $user, + cwd => $_home, + creates => "$_home/conf", + require => [ + User[$user], + File[$_home], + Class['git'], + ]; + } + + exec { "conf make install for $user": + command => "/usr/bin/make install", + user => $user, + cwd => "$_home/conf", + environment => [ + "HOME=$_home", + "PWD=$_home/conf", + ], + creates => "$_home/.vimrc", + require => [ + Class['cron'], + Class['c_toolchain'], + User[$user], + Exec["git clone doy/conf for $user"], + Package["vim"], + Package["fortune-mod"], + Package["less"], + Package::Cargo["fancy-prompt for $user"], + ]; + } + + # XXX use the right branch +} -- cgit v1.2.3-54-g00ecf