source: trunk/samhain.spec.in@ 19

Last change on this file since 19 was 1, checked in by katerina, 19 years ago

Initial import

File size: 8.1 KB
Line 
1#
2# Accepted parameters for 'rpmbuild':
3#
4# --with tests - make tests before building
5
6Summary: File integrity and host-based IDS
7Name: @install_name@
8Version: @VERSION@
9Release: 1
10License: GPL
11Group: System Environment/Base
12Source: samhain-%{version}.tar.gz
13BuildRoot: %{_tmppath}/samhain-%{version}-root
14Packager: Andre Oliveira da Costa <brblueser@uol.com.br>
15Provides: %{name}
16
17# no quotes here - aparently will be expanded literally
18
19%define withpwd_prg x@clmytclient@
20%define withstg_prg x@stegin_prg@
21
22# disable automatic stripping of binaries upon installation
23%define __spec_install_post %{nil}
24# required because DeadRat wants to package some debug info otherwise
25# (this debug info would be created by debug_install_post called
26# from spec_install_post)
27%define debug_package %{nil}
28# Use internal dependency generator rather than external helpers?
29%define _use_internal_dependency_generator 0
30
31%description
32@install_name@ is an open source file integrity and host-based intrusion
33detection system for Linux and Unix. It can run as a daemon process, and
34and thus can remember file changes -- contrary to a tool that runs from
35cron, if a file is modified you will get only one report, while
36subsequent checks of that file will ignore the modification as it is
37already reported (unless the file is modified again).
38
39@install_name@ can optionally be used as client/server system to provide
40centralized monitoring for multiple host. Logging to a (MySQL or
41PostgreSQL) database is supported.
42
43NOTE: for security reasons, if you distribute binary executables to
44third parties you should point out the use of the --add-key option to
45modify the key material within the executable.
46This spec file is intended to facilitate installation on YOUR system.
47If you use this spec file to build a SRPM for distribution to third parties,
48make sure to remove the --enable-base configure option below.
49
50%prep
51%setup -q -n samhain-%{version}
52
53%build
54%if %{?_with_tests:1}%{!?_with_tests:0}
55# test installation (test #7 is only included if --with gpg has been
56# specified)
57for i in `seq 6` %{?_with_gpg:7}; do ./test/test.sh $i; done
58%endif
59#
60# configure with the user-supplied arguments to './configure'
61#
62./configure @mydefargs@
63make
64
65%install
66
67rm -rf ${RPM_BUILD_ROOT}
68# sstrip shouldn't be used since binaries will be stripped later
69## cat << EOF > sstrip
70## #!/bin/sh
71## echo "*** SSTRIP DISABLED ***"
72## EOF
73make DESTDIR=${RPM_BUILD_ROOT} install
74# copy script files to /var/lib/samhain so that we can use them right
75# after the package is installed
76#
77install -m 700 samhain-install.sh init/samhain.startLinux init/samhain.startLSB ${RPM_BUILD_ROOT}@mydataroot@
78#
79# file list (helpful advice from Lars Kellogg-Stedman)
80#
81echo "@sbindir@/@install_name@" > sh_file_list
82find %{buildroot}/lib/modules \! -type d -print | \
83 sed 's,%{buildroot},,' >> sh_file_list
84
85%clean
86rm -rf ${RPM_BUILD_ROOT}
87
88%post
89if test "x@sh_lkm@" = x; then
90 :
91else
92 if test -f /sbin/depmod; then
93 /sbin/depmod -a
94 fi
95fi
96if [ "$1" -ge 1 ]; then
97 # Activate boot-time start up
98 cd @mydataroot@
99 ./samhain-install.sh --verbose install-boot
100 rm -f ./samhain.startLSB
101 rm -f ./samhain.startLinux
102 if [ -f @sbindir@/@install_name@_stealth ]; then
103 rm -f samhain-install.sh
104 fi
105 shkeep=yes
106 if test x"$shkeep" = xno; then
107 rm -f ./samhain-install.sh
108 rm -f @sbindir@/@install_name@_stealth
109 fi
110fi
111if [ "$1" = 1 ]; then
112 if test -f /usr/lib/lsb/install_initd; then
113 /usr/lib/lsb/install_initd /etc/init.d/@install_name@
114 fi
115fi
116
117%if "%{name}" != "yule"
118cat << EOF
119
120Samhain is installed but is NOT running yet, and the database of
121file signatures is NOT initialized yet. Read the documentation,
122review configuration files, and then (i) initialize it
123(@sbindir@/samhain -t init)
124and (ii) start it manually
125(@sbindir@/samhain start).
126
127It is configured to start automatically on the next boot for runlevels
128[2-5].
129
130EOF
131%endif
132%if "%{name}" == "yule"
133cat << EOF
134
135Yule is installed but is NOT running yet, read the documentation,
136review configuration files, and then start it
137(@sbindir@/yule)
138
139It is configured to start automatically on the next boot for runlevels
140[2-5].
141
142EOF
143%endif
144
145%preun
146# stop running instance of samhain, if any
147if [ -f @mylockdir@/%{name}.pid ]; then
148 @sbindir@/@install_name@ stop
149fi
150if [ "$1" = 0 ]; then
151 # remove boot-time scripts and links
152 cd @mydataroot@
153 if [ -f ./samhain-install.sh ]; then
154 ./samhain-install.sh --verbose uninstall-boot
155 else
156 if test -f /usr/lib/lsb/remove_initd; then
157 /usr/lib/lsb/remove_initd /etc/init.d/@install_name@
158 fi
159 rm -f /etc/init.d/@install_name@
160 fi
161fi
162
163%postun
164if [ "$1" = 0 ]; then
165 # remove any kernel modules that might have been installed
166 RVER=`uname -r`
167 MODFILES=`ls /lib/modules/$RVER/@install_name@* 2>/dev/null`
168 if test "x$MODFILES" = x; then
169 :
170 else
171 rm -f /lib/modules/$RVER/@install_name@*
172 fi
173fi
174
175
176%files -f sh_file_list
177%defattr(-,root,root)
178%dir @mylockdir@
179%dir @mylogdir@
180%doc docs/BUGS COPYING docs/Changelog docs/TODO
181%doc LICENSE docs/FAQ.html docs/HOWTO* docs/MANUAL-2_0.* docs/README*
182@mydataroot@
183%if "%{withstg_prg}" == "xsamhain_stealth"
184 @sbindir@/@install_name@_stealth
185%endif
186%if "%{withpwd_prg}" == "xDSH_WITH_CLIENT"
187 @sbindir@/@install_name@_setpwd
188%endif
189%if "%{withpwd_prg}" == "xDSH_WITH_SERVER"
190 @sbindir@/@install_name@ctl
191 %exclude @sbindir@/@install_name@_setpwd
192%endif
193%attr(644,root,root) @mandir@/man5/@install_name@*
194%attr(644,root,root) @mandir@/man8/@install_name@*
195%config(noreplace) @myrpmconffile@
196
197%changelog
198* Tue Apr 05 2005 Rainer Wichmann
199- disable automatic stripping, use sstrip
200
201* Thu Mar 17 2005 Rainer Wichmann
202- fixes for enable-khide
203
204* Wed Oct 20 2004 Rainer Wichmann
205- more fixes for client/server detection
206- fix for samhain_stealth
207
208* Sun Aug 15 2004 Rainer Wichmann
209- fix detection of client/server
210
211* Sat Jun 19 2004 Rainer Wichmann
212- replace ./test.sh $i with make test$i
213- add logic for rpm-light (remove some more files after install)
214- make postun posix compliant (avoid empty argument list for rm -f)
215
216* Wed Dec 31 2003 Stijn Jonker <sjcjonker@sjc.nl>
217- Fixed correctly build of yule-*-rpm
218- Fixed excluding of yule_setpwd, and including of yulectl on yule build
219- Fixed including of samhain_setpwd in samhain client build
220- Above changes required for correct build in newer rpms,
221 with defaults for abort on unpacked files due to
222 %_unpackaged_files_terminate_build 1 setting
223- Fixed installation text for yule, not to display samhain text
224- Added /sbin/chkconfig install_name on to enable the rc scripts
225
226* Thu Dec 11 2003 Christian Vanguers <cva at molis dot be>
227- Fixed typo in samhain.spec
228- Compiled on RedHat Enterprise Linux ES 3
229
230* Thu Mar 26 2003 Rainer Wichmann
231- strip REQ_FROM_SERVER in config file path (%config(noreplace) ...)
232
233* Sun Jan 12 2003 Rainer Wichmann <support at la-samhna dot de>
234- replace %configure with ./configure
235
236* Tue Dec 24 2002 Rainer Wichmann <support at la-samhna dot de>
237- backported applicable changes to samhain.spec.in
238- warn user that database must be initialized
239- fix version of MANUAL in '%files'
240- test for chkconfig, use only if found
241
242* Sun Dec 22 2002 Andre Oliveira da Costa <brblueser@uol.com.br> 1.7.0
243- fixed typo with _usr macro on ./configure
244- stops running samhain before uninstall
245- implemented conditionals to allow proper uninstalls/upgrades
246- 'BuildPreReq: gpg' is considered only if '--with gpg' is provided
247- run 'chkconfig' to activate samhain after installation
248- warn user that samhain must be manually started after
249 install/upgrade
250
251* Fri Dec 20 2002 Rainer Wichmann <support at la-samhna dot de>
252- backported to samhain.spec.in (take over user's choices from configure)
253- also save samhain.startLSB and samhain.startSuSE for install-boot
254
255* Thu Dec 19 2002 Andre Oliveira da Costa <brblueser@uol.com.br> 1.6.6
256- optional parameters '--with gpg' and '--with tests'
257- use of pre-defined macros whenever possible
258
259* Wed Dec 18 2002 Andre Oliveira da Costa <brblueser@uol.com.br> 1.6.6
260- Fixed installation process, avoiding hardcoded paths on the binaries
261 (thks to samhain's author Rainer Wichmann)
262
263* Mon Dec 16 2002 Andre Oliveira da Costa <brblueser@uol.com.br> 1.6.6
264- First attempt to build from sources
265
Note: See TracBrowser for help on using the repository browser.