2a55c18fa5579be0d64e1bf891b6c2e9b4293425
[mirror/dsa-puppet.git] / modules / debian_org / lib / facter / software.rb
1 Facter.add("apache2") do
2         setcode do
3                 if FileTest.exist?("/usr/sbin/apache2")
4                         true
5                 else
6                         false
7                 end
8         end
9 end
10 Facter.add("apache2deb9") do
11         setcode do
12                 # jessie (deb8) has 2.4.10-.., stretch (deb9) will have 2.4.23 or later.
13                 if FileTest.exist?("/usr/sbin/apache2") and system("dpkg --compare-versions $(dpkg-query -W -f='${Version}\n' apache2-bin) gt 2.4.15")
14                         true
15                 else
16                         false
17                 end
18         end
19 end
20 Facter.add("clamd") do
21         setcode do
22                 if FileTest.exist?("/usr/sbin/clamd")
23                         true
24                 else
25                         false
26                 end
27         end
28 end
29 Facter.add("exim4") do
30         setcode do
31                 if FileTest.exist?("/usr/sbin/exim4")
32                         true
33                 else
34                         false
35                 end
36         end
37 end
38 Facter.add("postfix") do
39         setcode do
40                 if FileTest.exist?("/usr/sbin/postfix")
41                         true
42                 else
43                         false
44                 end
45         end
46 end
47 Facter.add("postgres") do
48         setcode do
49                 pg = (FileTest.exist?("/usr/lib/postgresql/9.1/bin/postgres") or
50                 FileTest.exist?("/usr/lib/postgresql/9.4/bin/postgres") or
51                 FileTest.exist?("/usr/lib/postgresql/9.6/bin/postgres"))
52                 if pg
53                         true
54                 else
55                         false
56                 end
57         end
58 end
59 Facter.add("postgrey") do
60         setcode do
61                 if FileTest.exist?("/usr/sbin/postgrey")
62                         true
63                 else
64                         false
65                 end
66         end
67 end
68 Facter.add("greylistd") do
69         setcode do
70                 FileTest.exist?("/usr/sbin/greylistd")
71         end
72 end
73 Facter.add("policydweight") do
74         setcode do
75                 if FileTest.exist?("/usr/sbin/policyd-weight")
76                         true
77                 else
78                         false
79                 end
80         end
81 end
82 Facter.add("spamd") do
83         setcode do
84                 if FileTest.exist?("/usr/sbin/spamd")
85                         true
86                 else
87                         false
88                 end
89         end
90 end
91 Facter.add("php5") do
92         php =   (FileTest.exist?("/usr/lib/apache2/modules/libphp5.so") or
93                 FileTest.exist?("/usr/bin/php5") or
94                 FileTest.exist?("/usr/bin/php5-cgi") or
95                 FileTest.exist?("/usr/lib/cgi-bin/php5"))
96         setcode do
97                 if php
98                         true
99                 else
100                         false
101                 end
102         end
103 end
104 Facter.add("php5suhosin") do
105         suhosin=(FileTest.exist?("/usr/lib/php5/20060613/suhosin.so") or
106                 FileTest.exist?("/usr/lib/php5/20060613+lfs/suhosin.so"))
107         setcode do
108                 if suhosin
109                         true
110                 else
111                         false
112                 end
113         end
114 end
115 Facter.add("syslogversion") do
116         setcode do
117                 %x{dpkg-query -W -f='${Version}\n' syslog-ng | cut -b1-3}.chomp
118         end
119 end
120 Facter.add("unbound") do
121         unbound=(FileTest.exist?("/usr/sbin/unbound") and
122                 FileTest.exist?("/var/lib/unbound/root.key"))
123         setcode do
124                 if unbound
125                         true
126                 else
127                         false
128                 end
129         end
130 end
131 Facter.add("munin_async") do
132         setcode do
133                 FileTest.exist?("/usr/share/munin/munin-async")
134         end
135 end
136 Facter.add("samhain") do
137         setcode do
138                 if FileTest.exist?("/usr/sbin/samhain")
139                         true
140                 else
141                         false
142                 end
143         end
144 end
145 Facter.add("systemd") do
146         setcode do
147                 init = '/sbin/init'
148                 if File.symlink?(init) and File.readlink(init) == "/lib/systemd/systemd"
149                         true
150                 else
151                         false
152                 end
153         end
154 end
155 Facter.add("tor_ge_0_2_9") do
156         setcode do
157                 system(%{test -n "$(dpkg-query -W -f='${Version}' tor 2>/dev/null)" && dpkg --compare-versions "$(dpkg-query -W -f='${Version}' tor)" ge 0.2.9})
158         end
159 end
160 Facter.add("haveged") do
161         setcode do
162                 FileTest.exist?("/usr/sbin/haveged")
163         end
164 end
165 Facter.add("bgpd") do
166         setcode do
167                 FileTest.exist?("/usr/sbin/bgpd")
168         end
169 end
170 Facter.add("zebra") do
171         setcode do
172                 FileTest.exist?("/usr/sbin/zebra")
173         end
174 end
175 Facter.add("update_grub") do
176         setcode do
177                 FileTest.exist?("/usr/sbin/update-grub")
178         end
179 end
180 Facter.add("haproxy") do
181         setcode do
182                 FileTest.exist?("/usr/sbin/haproxy")
183         end
184 end