puppet 4 foo
[mirror/dsa-puppet.git] / modules / debian_org / lib / facter / software.rb
diff --git a/modules/debian_org/lib/facter/software.rb b/modules/debian_org/lib/facter/software.rb
new file mode 100644 (file)
index 0000000..5c07912
--- /dev/null
@@ -0,0 +1,162 @@
+Facter.add("apache2") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/apache2")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("apache2deb9") do
+       setcode do
+               # jessie (deb8) has 2.4.10-.., stretch (deb9) will have 2.4.23 or later.
+               if FileTest.exist?("/usr/sbin/apache2") and system("dpkg --compare-versions $(dpkg-query -W -f='${Version}\n' apache2-bin) gt 2.4.15")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("clamd") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/clamd")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("exim4") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/exim4")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("postfix") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/postfix")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("postgres") do
+       setcode do
+               pg = (FileTest.exist?("/usr/lib/postgresql/8.1/bin/postgres") or
+               FileTest.exist?("/usr/lib/postgresql/8.3/bin/postgres") or
+               FileTest.exist?("/usr/lib/postgresql/8.4/bin/postgres") or
+               FileTest.exist?("/usr/lib/postgresql/9.0/bin/postgres") or
+               FileTest.exist?("/usr/lib/postgresql/9.1/bin/postgres") or
+               FileTest.exist?("/usr/lib/postgresql/9.2/bin/postgres"))
+               if pg
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("postgrey") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/postgrey")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("greylistd") do
+       setcode do
+               FileTest.exist?("/usr/sbin/greylistd")
+       end
+end
+Facter.add("policydweight") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/policyd-weight")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("spamd") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/spamd")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("php5") do
+       php =   (FileTest.exist?("/usr/lib/apache2/modules/libphp5.so") or
+               FileTest.exist?("/usr/bin/php5") or
+               FileTest.exist?("/usr/bin/php5-cgi") or
+               FileTest.exist?("/usr/lib/cgi-bin/php5"))
+       setcode do
+               if php
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("php5suhosin") do
+       suhosin=(FileTest.exist?("/usr/lib/php5/20060613/suhosin.so") or
+               FileTest.exist?("/usr/lib/php5/20060613+lfs/suhosin.so"))
+       setcode do
+               if suhosin
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("syslogversion") do
+       setcode do
+               %x{dpkg-query -W -f='${Version}\n' syslog-ng | cut -b1-3}.chomp
+       end
+end
+Facter.add("unbound") do
+       unbound=(FileTest.exist?("/usr/sbin/unbound") and
+               FileTest.exist?("/var/lib/unbound/root.key"))
+       setcode do
+               if unbound
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("munin_async") do
+       setcode do
+               FileTest.exist?("/usr/share/munin/munin-async")
+       end
+end
+Facter.add("samhain") do
+       setcode do
+               if FileTest.exist?("/usr/sbin/samhain")
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("systemd") do
+       setcode do
+               init = '/sbin/init'
+               if File.symlink?(init) and File.readlink(init) == "/lib/systemd/systemd"
+                       true
+               else
+                       false
+               end
+       end
+end
+Facter.add("tor_ge_0_2_9") do
+       setcode do
+               system(%{dpkg -l tor >/dev/null 2>&1 && dpkg --compare-versions $(dpkg-query -W -f='${Version}' tor) ge 0.2.9})
+       end
+end