]> git.pld-linux.org Git - packages/proftpd.git/blob - proftpd.spec
- release 7: -standalone Prereq: /sbin/chkconfig
[packages/proftpd.git] / proftpd.spec
1
2 # Conditional builds:
3 # _without_pam - disable PAM support
4 # _with_ldap - enable LDAP suppoer
5 # _with_mysql - enable MySQL suppoer
6 # _with_quota - enable quota support
7 # _with_linuxprivs - enable libcap support
8 # _without_ipv6 - disable IPv6 and TCPD support
9 # _without_ssl - disbale TLS/SSL support
10 # --without pam --with ldap --with mysql --with quota --with linuxprivs
11 Summary:        PROfessional FTP Daemon with apache-like configuration syntax
12 Summary(pl):    PROfesionalny serwer FTP  
13 Name:           proftpd
14 Version:        1.2.2rc3
15 Release:        7
16 Epoch:          0
17 License:        GPL
18 Group:          Daemons
19 Group(de):      Server
20 Group(pl):      Serwery
21 Source0:        ftp://ftp.proftpd.org/distrib/source/%{name}-%{version}.tar.bz2
22 Source1:        %{name}.conf
23 Source2:        %{name}.logrotate
24 Source3:        ftp.pamd
25 Source4:        %{name}.inetd
26 Source5:        %{name}.sysconfig
27 Source6:        %{name}.init
28 Source7:        %{name}-mod_tcpd.c
29 Patch0:         %{name}-1.2.2rc3-v6-20010814.patch.gz
30 # ftp://ftp.runestig.com/pub/proftpd-tls/
31 Patch1:         %{name}-1.2.2rc3+v6-tls.20010505.patch.gz
32 Patch2:         %{name}-umode_t.patch
33 Patch3:         %{name}-glibc.patch
34 Patch4:         %{name}-paths.patch
35 Patch5:         %{name}-release.patch
36 Patch6:         %{name}-noautopriv.patch
37 Patch7:         %{name}-DESTDIR.patch
38 Patch8:         %{name}-wtmp.patch
39 Patch9:         %{name}-link.patch
40 Patch10:        %{name}-port-65535.patch
41 URL:            http://www.proftpd.org/
42 %{?!_without_pam:BuildRequires: pam-devel}
43 %{?_with_ldap:BuildRequires:            openldap-devel}
44 %{?_with_mysql:BuildRequires:   mysql-devel}
45 %{?!_without_ssl:BuildRequires: openssl-devel >= 0.9.6a}
46 BuildRequires:  libwrap-devel
47 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49 %define         _sysconfdir     /etc/ftpd
50 %define         _localstatedir  /var/run
51
52 %description
53 ProFTPD is a highly configurable ftp daemon for unix and unix-like
54 operating systems. ProFTPD is designed to be somewhat of a "drop-in"
55 replacement for wu-ftpd. Full online documentation is available at
56 http://www.proftpd.org/, including a server configuration directive
57 reference manual.
58
59 %description -l pl
60 ProFTPD jest wysoce konfigurowalnym serwerem ftp dla systemów Unix.
61 ProFTPD jest robiony jako bezpo¶redni zamiennik wu-ftpd. Pe³na
62 dokunentacja jest dostêpna on-line pod http://www.proftpd.org/
63 w³±cznie z dokumentacj± dotycz±c± konfigurowania.
64
65 %package common
66 Summary:        PROfessional FTP Daemon with apache-like configuration syntax - common files
67 Summary(pl):    PROfesionalny serwer FTP  - wspólne pliki
68 Group:          Daemons
69 Group(de):      Server
70 Group(pl):      Serwery
71 Prereq:         awk
72 Prereq:         fileutils
73 Requires:       logrotate
74 %{?!_without_pam:Requires:      pam >= 0.67}
75 Obsoletes:      proftpd < 0:1.2.2rc1-3
76
77 %description  common
78 ProFTPD is a highly configurable ftp daemon for unix and unix-like
79 operating systems. ProFTPD is designed to be somewhat of a "drop-in"
80 replacement for wu-ftpd. Full online documentation is available at
81 http://www.proftpd.org/, including a server configuration directive
82 reference manual.
83
84 %description -l pl common
85 ProFTPD jest wysoce konfigurowalnym serwerem ftp dla systemów Unix.
86 ProFTPD jest robiony jako bezpo¶redni zamiennik wu-ftpd. Pe³na
87 dokunentacja jest dostêpna on-line pod http://www.proftpd.org/
88 w³±cznie z dokumentacj± dotycz±c± konfigurowania.
89
90 %package inetd
91 Summary:        inetd configs for proftpd
92 Summary(pl):    Pliki konfiguracyjne do u¿ycia proftpd poprzez inetd
93 Group:          Daemons
94 Group(de):      Server
95 Group(pl):      Serwery
96 Prereq:         %{name}-common = %{epoch}:%{version}
97 Prereq:         rc-inetd
98 Provides:       proftpd = %{epoch}:%{version}-%{release}
99 Requires:       inetdaemon
100 Provides:       ftpserver
101 Obsoletes:      proftpd-standalone
102 Obsoletes:      ftpserver
103 Obsoletes:      anonftp
104 Obsoletes:      bftpd
105 Obsoletes:      ftpd-BSD
106 Obsoletes:      heimdal-ftpd
107 Obsoletes:      linux-ftpd
108 Obsoletes:      pure-ftpd
109 Obsoletes:      wu-ftpd
110
111 %description inetd
112 ProFTPD configs for running from inetd.
113
114 %description -l pl inetd
115 Pliki konfiguracyjna ProFTPD do startowania demona poprzez inetd.
116
117 %package standalone
118 Summary:        standalone daemon configs for proftpd
119 Summary(pl):    Pliki konfiguracyjne do startowania proftpd w trybie standalone
120 Group:          Daemons
121 Group(de):      Server
122 Group(pl):      Serwery
123 Prereq:         %{name}-common = %{version}
124 Prereq:         rc-scripts
125 Prereq:         /sbin/chkconfig
126 Provides:       proftpd = %{epoch}:%{version}-%{release}
127 Provides:       ftpserver
128 Obsoletes:      proftpd-inetd
129 Obsoletes:      ftpserver
130 Obsoletes:      anonftp
131 Obsoletes:      bftpd
132 Obsoletes:      ftpd-BSD
133 Obsoletes:      heimdal-ftpd
134 Obsoletes:      linux-ftpd
135 Obsoletes:      pure-ftpd
136 Obsoletes:      wu-ftpd
137
138 %description standalone
139 ProFTPD configs for running as a standalone daemon.
140
141 %description -l pl standalone
142 Pliki konfiguracyjne ProFTPD do startowania demona w trybie standalone.
143
144 %prep
145 %setup  -q 
146 %patch0 -p1
147 %patch1 -p1
148 %patch2 -p1
149 %patch3 -p1
150 %patch4 -p1
151 %patch5 -p1 
152 %patch6 -p1
153 %patch7 -p1
154 %patch8 -p1
155 %patch9 -p1
156 %patch10 -p0
157 install -m644 %{SOURCE7} contrib/mod_tcpd.c
158
159 %build
160 autoconf
161 RUN_DIR=%{_localstatedir} ; export RUN_DIR
162 %configure \
163         --enable-autoshadow \
164         --with-modules=mod_ratio:mod_readme%{?!_without_ipv6::mod_tcpd}%{?!_without_pam::mod_pam}%{?_with_ldap::mod_ldap}%{?_with_quota::mod_quota}%{?_with_linuxprivs::mod_linuxprivs}%{?_with_mysql::mod_sql:mod_sql_mysql} \
165         %{?!_without_ipv6:--enable-ipv6} \
166         %{?_without_ssl:--disable-tls} \
167         --enable-sendfile
168
169 %{__make}
170
171 %install
172 rm -rf $RPM_BUILD_ROOT
173
174 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,pam.d,security,sysconfig/rc-inetd,rc.d/init.d} \
175         $RPM_BUILD_ROOT/{home/ftp/pub/Incoming,var/log}
176
177 %{__make} install DESTDIR=$RPM_BUILD_ROOT \
178         INSTALL_USER=`id -u` \
179         INSTALL_GROUP=`id -g`
180
181 rm -f $RPM_BUILD_ROOT%{_sbindir}/in.proftpd
182
183 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
184 install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/ftpd
185 %{?!_without_pam:install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/ftp}
186 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/ftpd
187 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/proftpd
188 install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/proftpd
189 install contrib/xferstats.holger-preiss $RPM_BUILD_ROOT%{_bindir}/xferstat
190
191 mv -f contrib/README contrib/README.modules
192
193 :> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers.default
194 :> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers
195 :> $RPM_BUILD_ROOT/var/log/xferlog
196
197 ln -s proftpd $RPM_BUILD_ROOT%{_sbindir}/ftpd
198
199 :> $RPM_BUILD_ROOT/etc/security/blacklist.ftp
200
201 gzip -9nf sample-configurations/{virtual,anonymous}.conf ChangeLog README \
202         README.linux-* contrib/README.modules README.IPv6 README.PAM README.TLS
203  
204 %clean
205 rm -rf $RPM_BUILD_ROOT
206
207 %post 
208 touch /var/log/xferlog
209 awk 'BEGIN { FS = ":" }; { if(($3 < 1000)&&($1 != "ftp")) print $1; }' < /etc/passwd >> %{_sysconfdir}/ftpusers.default
210 if [ ! -f %{_sysconfdir}/ftpusers ]; then
211         ( cd %{_sysconfdir}; mv -f ftpusers.default ftpusers )
212 fi
213
214 %post inetd
215 if grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf ; then
216         cp -a %{_sysconfdir}/proftpd.conf %{_sysconfdir}/proftpd.conf.rpmorig
217         sed -e "s/^ServerType[[:space:]]\+standalone/ServerType                 inetd/g" \
218                 %{_sysconfdir}/proftpd.conf.rpmorig >%{_sysconfdir}/proftpd.conf
219 fi
220 if [ -f /var/lock/subsys/rc-inetd ]; then
221         /etc/rc.d/init.d/rc-inetd reload 1>&2
222 else
223         echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
224 fi
225
226 %postun inetd
227 if [ "$1" = "0" -a -f /var/lock/subsys/rc-inetd ]; then
228         /etc/rc.d/init.d/rc-inetd reload 1>&2
229 fi
230
231 %post standalone
232 /sbin/chkconfig --add proftpd
233 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf ; then
234         cp -a %{_sysconfdir}/proftpd.conf %{_sysconfdir}/proftpd.conf.rpmorig
235         sed -e "s/^ServerType[[:space:]]\+inetd/ServerType                      standalone/g" \
236                 %{_sysconfdir}/proftpd.conf.rpmorig >%{_sysconfdir}/proftpd.conf
237 fi
238 if [ -f /var/lock/subsys/proftpd ]; then
239         /etc/rc.d/init.d/proftpd restart 1>&2
240 else
241         echo "Run \"/etc/rc.d/init.d/proftpd start\" to start ProFTPD daemon."
242 fi
243
244 %preun standalone
245 if [ "$1" = "0" -a -f /var/lock/subsys/proftpd ]; then
246         /etc/rc.d/init.d/proftpd stop 1>&2
247 fi
248 /sbin/chkconfig --del proftpd
249
250 %files common
251 %defattr(644,root,root,755)
252 %doc {ChangeLog,README*}.gz contrib/README.modules.gz
253 %doc sample-configurations/{virtual,anonymous}.conf.gz 
254 %doc doc/*html
255
256 %attr(750,root,ftp) %dir %{_sysconfdir}
257 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
258 %attr(640,root,root) /etc/logrotate.d/*
259 %attr(640,root,root) %ghost /var/log/*
260 %{?!_without_pam:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*}
261
262 %attr(640,root,root) %{_sysconfdir}/ftpusers.default
263 %attr(640,root,root) %ghost %{_sysconfdir}/ftpusers
264 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.ftp
265
266 %attr(755,root,root) %{_bindir}/*
267 %attr(755,root,root) %{_sbindir}/*
268
269 %{_mandir}/man[158]/*
270
271 %dir /home/ftp/pub
272 %attr(711,root,root) %dir /home/ftp/pub/Incoming
273
274 %files inetd
275 %defattr(644,root,root,755)
276 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/ftpd
277
278 %files standalone
279 %defattr(644,root,root,755)
280 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/proftpd
281 %attr(754,root,root) /etc/rc.d/init.d/proftpd
This page took 0.679395 seconds and 4 git commands to generate.