--- /dev/null
+# Puppet manifests for a 'hackers GMAIL replacement' based on
+# http://dbpmail.net/essays/2013-06-29-hackers-replacement-for-gmail.html
+
+class hgr {
+
+ package {
+ "postfix" :
+ ensure => installed;
+ "dovecot" :
+ ensure => installed;
+ "sasl2-bin":
+ ensure => installed;
+
+ "spamassassin":
+ ensure => installed;
+ "pyzor":
+ ensure => installed;
+
+ "incron" :
+ ensure => installed;
+
+ "notmuch" :
+ ensure => installeD;
+ }
+
+ service {
+ "postfix":
+ ensure => running,
+ enable => true,
+ require => Package["postfix"];
+ "dovecot":
+ ensure => running,
+ enable => true,
+ require => Package["dovecot"];
+ "saslauthd"
+ ensure => running,
+ enable => true,
+ require => Package["sasl2-bin"]
+ }
+
+# Beter support for pulling a github repo ?
+# support for running 'sudo python setup.py install' to build afew
+
+ package {
+ "python-dev":
+ ensure => installed;
+ "gcc" :
+ ensure => installed;
+ "git":
+ ensure => installed;
+ }
+
+ file {
+ "/var/tmp/git":
+ ensure => directory;
+ }
+
+ exec {
+ "clone-afew-repo":
+ cwd => "/var/tmp/git"
+ command => "git clone https://github.com/teythoon/afew /var/tmp/git/afew"
+ creates => "/var/tmp/git/afew/setup.py";
+ requires => [File["/var/tmp/git"],Package["git"]]
+ "install-afew":
+ cwd => "/var/tmp/git/afew";
+ command => "/usr/bin/python /var/tmp/git/afew/setup.py install",
+ creates => "/usr/local/bin/afew",
+ requires => [Exec["clone-afew-repo"],Package["python-dev"],Package["gcc"]];
+ }
+
+ file {
+ "/usr/local/bin/afew":
+ ensure => present,
+ require => Exec["install-afew"];
+ "/usr/local/bin/my-notmuch-new.sh":
+ ensure => present,
+ mode => "0755",
+ source => "puppet:///module/hgr/my-notmuch-new.sh",
+ require => [Package["notmuch"], File["/usr/local/bin/afew"]];
+ }
+
+}