]> code.citadel.org Git - citadel.git/blob - citadel/citadel.spec
* citadel.spec: BuildRequire redhat-rpm-config
[citadel.git] / citadel / citadel.spec
1 # $Id$
2 Summary: Citadel/UX, the flexible, powerful way to build online communities
3 Name: citadel
4 Version: 6.20p1
5 Release: 3
6 Copyright: GPL
7 Group: Applications/Communications
8 Source0: http://my.citadel.org/download/citadel-ux-%{PACKAGE_VERSION}.tar.gz
9 Buildroot: /var/tmp/citadel-%{PACKAGE_VERSION}-root
10 #Icon: citux-64x64.xpm
11 Vendor: Citadel/UX Development Team
12 URL:  http://uncensored.citadel.org/citadel/
13
14 # I don't think we should actually Require this because we can be configured
15 # not to connect to an LDAP server. So we really only require the client
16 # libraries, and the runtime dependency on that is detected automatically by
17 # RPM.
18 #Requires: openldap-servers
19
20 # Note some of these BuildRequire's are Linux specific and possibly even
21 # distribution specific, but I am adding them FOR NOW just to document the
22 # dependencies and make it more likely that everyone is building identical
23 # packages.
24 BuildRequires: gcc
25 BuildRequires: bison
26 BuildRequires: glibc-devel
27 BuildRequires: openldap-devel
28 BuildRequires: db4-devel >= 4.1
29 BuildRequires: pam-devel
30
31 # Newt is not supported by redhat for binary compatibility with future
32 # distributions, so we've disabled it.
33 #BuildRequires: newt-devel
34
35 BuildRequires: openssl-devel
36 BuildRequires: ncurses-devel
37 BuildRequires: zlib-devel
38
39 # debuginfo packages don't get built unless this packages is installed:
40 BuildRequires: redhat-rpm-config
41
42 #Autoprov: false
43 ExcludeOS: hpux
44
45 %description
46 An advanced messaging system which can be used for BBS, groupware, and
47 online community applications.  It is multithreaded, client/server, database
48 driven, and accessible via a growing selection of front ends.
49
50 %prep
51 %setup -n citadel
52
53 %build
54 CFLAGS="$RPM_OPT_FLAGS" ./configure --with-pam --enable-autologin --with-ldap --without-newt --with-libical
55 make
56
57 %install
58 rm -rf $RPM_BUILD_ROOT
59 mkdir -p $RPM_BUILD_ROOT/etc/pam.d
60 make root=$RPM_BUILD_ROOT install
61 touch $RPM_BUILD_ROOT/usr/local/citadel/.hushlogin
62 # Things that shouldn't be "installed" but were anyway
63 rm -f $RPM_BUILD_ROOT/"/usr/local/citadel/help/?"
64 rm -f $RPM_BUILD_ROOT/usr/local/citadel/README.txt
65 rm -rf $RPM_BUILD_ROOT/usr/local/citadel/docs
66 rm -rf $RPM_BUILD_ROOT/usr/local/citadel/techdoc
67
68 %clean
69 rm -rf "$RPM_BUILD_ROOT"
70
71 %package server
72 Summary: Citadel/UX, the flexible, powerful way to build online communities
73 Group: System Environment/Daemons
74 Requires: citadel-data
75 Obsoletes: citadel
76 Obsoletes: citadel-ux
77 Obsoletes: citadel-smtp
78 Obsoletes: citadel-pop3
79 Obsoletes: citadel-imap
80 Obsoletes: citadel-mrtg
81 Obsoletes: citadel-calendar
82 %description server
83 Citadel/UX is an advanced messaging system which can be used for BBS, email,
84 groupware and online community applications.  It is multithreaded,
85 client/server, database driven, and accessible via a growing selection of
86 front ends.
87 %defattr(-,root,root)
88 %files server
89 /etc/pam.d/citadel
90 %doc docs/*
91 %doc techdoc
92 %doc README.txt
93 %dir /usr/local/citadel/bio
94 %dir /usr/local/citadel/bitbucket
95 %dir /usr/local/citadel/files
96 %dir /usr/local/citadel/images
97 %dir /usr/local/citadel/info
98 %dir /usr/local/citadel/userpics
99 /usr/local/citadel/aidepost
100 /usr/local/citadel/base64
101 %attr(4755,root,root) /usr/local/citadel/chkpwd
102 /usr/local/citadel/citmail
103 /usr/local/citadel/citserver
104 /usr/local/citadel/msgform
105 /usr/local/citadel/sendcommand
106 /usr/local/citadel/setup
107 /usr/local/citadel/stress
108 /usr/local/citadel/userlist
109 /usr/local/citadel/utilsmenu
110 %pre server
111 # Add the "bbs" user
112 /usr/sbin/useradd -c "Citadel" -s /bin/false -r -d /usr/local/citadel \
113                 citadel 2> /dev/null || :
114 %post server
115 if [ -f /etc/inittab ]; then
116         if ! grep 'citserver' /etc/inittab > /dev/null; then
117                 echo "c1:2345:respawn:/usr/local/citadel/citserver -h/usr/local/citadel -x7 -llocal4" >> /etc/inittab
118         fi
119 fi
120 if [ -f /etc/services ]; then
121         if ! grep '^citadel' /etc/services > /dev/null; then
122                 echo "citadel           504/tcp         # citadel" >> /etc/services
123         fi
124 fi
125 cd /usr/local/citadel
126 /usr/local/citadel/setup -q
127 %postun server
128 if [ -f /etc/inittab ]; then
129         grep -v 'citserver' < /etc/inittab > /etc/inittab.new && \
130         mv -f /etc/inittab.new /etc/inittab
131         /sbin/init q
132 fi
133
134 %package data
135 Summary: Data files for the Citadel/UX messaging system.
136 Group: System Environment/Daemons
137 %description data
138 Default data files for the Citadel/UX messaging system.  These files are
139 required by the Citadel/UX server.
140 %defattr(-,root,root)
141 %files data
142 /usr/local/citadel/.hushlogin
143 #%dir /usr/local/citadel/netconfigs
144 %dir /usr/local/citadel/network
145 %dir /usr/local/citadel/network/spoolin
146 %dir /usr/local/citadel/network/spoolout
147 %dir /usr/local/citadel/network/systems
148 %config(noreplace) /usr/local/citadel/network/filterlist
149 %config(noreplace) /usr/local/citadel/network/mail.aliases
150 %config(noreplace) /usr/local/citadel/network/mailinglists
151 %config(noreplace) /usr/local/citadel/network/rnews.xref
152 %config(noreplace) /usr/local/citadel/public_clients
153 %config /usr/local/citadel/help/aide
154 %config /usr/local/citadel/help/software
155 %config /usr/local/citadel/help/floors
156 %config(noreplace) /usr/local/citadel/help/hours
157 %config /usr/local/citadel/help/intro
158 %config /usr/local/citadel/help/mail
159 %config /usr/local/citadel/help/network
160 %config /usr/local/citadel/help/nice
161 %config(noreplace) /usr/local/citadel/help/policy
162 %config /usr/local/citadel/help/summary
163 %config(noreplace) /usr/local/citadel/messages/changepw
164 %config /usr/local/citadel/messages/aideopt
165 %config(noreplace) /usr/local/citadel/messages/entermsg
166 %config /usr/local/citadel/messages/dotopt
167 %config /usr/local/citadel/messages/mainmenu
168 %config /usr/local/citadel/messages/entopt
169 %config(noreplace) /usr/local/citadel/messages/goodbye
170 %config(noreplace) /usr/local/citadel/messages/hello
171 %config /usr/local/citadel/messages/help
172 %config(noreplace) /usr/local/citadel/messages/register
173 %config(noreplace) /usr/local/citadel/messages/newuser
174 %config /usr/local/citadel/messages/readopt
175 %config(noreplace) /usr/local/citadel/messages/roomaccess
176 %config(noreplace) /usr/local/citadel/messages/unlisted
177 %post data
178 # Yes, this is supposed to be executed twice; as ? might not yet exist
179 # but we want it to be listed.  It's kludgey; sue me.
180 /bin/ls /usr/local/citadel/help > "/usr/local/citadel/help/?"
181 /bin/ls /usr/local/citadel/help > "/usr/local/citadel/help/?"
182
183 %package client
184 Summary: Client for the Citadel/UX messaging system
185 Group: Applications/Communications
186 %description client
187 This is the text client software for the Citadel/UX messaging system.
188 Install this software if you need to connect to a Citadel/UX server.
189 %defattr(-,root,root)
190 %files client
191 /usr/local/citadel/citadel
192 /usr/local/citadel/citadel.rc
193 /usr/local/citadel/whobbs
194 %post client
195 if [ -f /etc/services ]; then
196         if ! grep '^citadel' /etc/services > /dev/null; then
197                 echo "citadel           504/tcp         # citadel" >> /etc/services
198         fi
199 fi