]> git.pld-linux.org Git - packages/proftpd.git/blob - proftpd.spec
- rel.2.
[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(es):    Servidor FTP profesional, con sintaxis de configuración semejante a la del apache
13 Summary(pl):    PROfesionalny serwer FTP
14 Summary(pt_BR): Servidor FTP profissional, com sintaxe de configuração semelhante à do apache
15 Name:           proftpd
16 Version:        1.2.5rc1
17 Release:        2
18 Epoch:          0
19 License:        GPL
20 Group:          Daemons
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 Patch11:        %{name}-v6_fix.patch
42 URL:            http://www.proftpd.org/
43 %{?!_without_pam:BuildRequires: pam-devel}
44 %{?_with_ldap:BuildRequires:            openldap-devel}
45 %{?_with_mysql:BuildRequires:   mysql-devel}
46 %{?!_without_ssl:BuildRequires: openssl-devel >= 0.9.6a}
47 BuildRequires:  libwrap-devel
48 BuildRequires:  autoconf
49 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50
51 %define         _sysconfdir     /etc/ftpd
52 %define         _localstatedir  /var/run
53
54 %description
55 ProFTPD is a highly configurable ftp daemon for unix and unix-like
56 operating systems. ProFTPD is designed to be somewhat of a "drop-in"
57 replacement for wu-ftpd. Full online documentation is available at
58 http://www.proftpd.org/, including a server configuration directive
59 reference manual.
60
61 %description -l es
62 ProFTPD es un servidor ftp altamente configurable para sistemas
63 operativos unix. Está proyectado para ser un substituto directo al
64 wu-ftpd. La documentación completa está disponible en
65 http://www.proftpd.org, incluido el manual de referencia para las
66 directivas de configuración del servidor.
67
68 %description -l pl
69 ProFTPD jest wysoce konfigurowalnym serwerem ftp dla systemów Unix.
70 ProFTPD jest robiony jako bezpo¶redni zamiennik wu-ftpd. Pe³na
71 dokunentacja jest dostêpna on-line pod http://www.proftpd.org/
72 w³±cznie z dokumentacj± dotycz±c± konfigurowania.
73
74 %description -l pt_BR
75 O ProFTPD é um servidor ftp altamente configurável para sistemas
76 operacionais unix.
77
78 É projetado para ser um substituto direto para o wu-ftpd. A
79 documentação completa está disponível em http://www.proftpd.org,
80 incluindo o manual de referência para as diretivas de configuração do
81 servidor.
82
83 %package common
84 Summary:        PROfessional FTP Daemon with apache-like configuration syntax - common files
85 Summary(pl):    PROfesionalny serwer FTP  - wspólne pliki
86 Group:          Daemons
87 Prereq:         awk
88 Prereq:         fileutils
89 Requires:       logrotate
90 %{?!_without_pam:Requires:      pam >= 0.67}
91 Obsoletes:      proftpd < 0:1.2.2rc1-3
92
93 %description  common
94 ProFTPD is a highly configurable ftp daemon for unix and unix-like
95 operating systems. ProFTPD is designed to be somewhat of a "drop-in"
96 replacement for wu-ftpd. Full online documentation is available at
97 http://www.proftpd.org/, including a server configuration directive
98 reference manual.
99
100 %description common -l pl
101 ProFTPD jest wysoce konfigurowalnym serwerem ftp dla systemów Unix.
102 ProFTPD jest robiony jako bezpo¶redni zamiennik wu-ftpd. Pe³na
103 dokunentacja jest dostêpna on-line pod http://www.proftpd.org/
104 w³±cznie z dokumentacj± dotycz±c± konfigurowania.
105
106 %package inetd
107 Summary:        inetd configs for proftpd
108 Summary(pl):    Pliki konfiguracyjne do u¿ycia proftpd poprzez inetd
109 Group:          Daemons
110 Prereq:         %{name}-common = %{epoch}:%{version}
111 Prereq:         rc-inetd
112 Provides:       proftpd = %{epoch}:%{version}-%{release}
113 Requires:       inetdaemon
114 Provides:       ftpserver
115 Obsoletes:      proftpd-standalone
116 Obsoletes:      ftpserver
117 Obsoletes:      anonftp
118 Obsoletes:      bftpd
119 Obsoletes:      ftpd-BSD
120 Obsoletes:      heimdal-ftpd
121 Obsoletes:      linux-ftpd
122 Obsoletes:      muddleftpd
123 Obsoletes:      pure-ftpd
124 Obsoletes:      troll-ftpd
125 Obsoletes:      wu-ftpd
126
127 %description inetd
128 ProFTPD configs for running from inetd.
129
130 %description inetd -l pl
131 Pliki konfiguracyjna ProFTPD do startowania demona poprzez inetd.
132
133 %package standalone
134 Summary:        standalone daemon configs for proftpd
135 Summary(pl):    Pliki konfiguracyjne do startowania proftpd w trybie standalone
136 Group:          Daemons
137 Prereq:         %{name}-common = %{version}
138 Prereq:         rc-scripts
139 Prereq:         /sbin/chkconfig
140 Provides:       proftpd = %{epoch}:%{version}-%{release}
141 Provides:       ftpserver
142 Obsoletes:      proftpd-inetd
143 Obsoletes:      ftpserver
144 Obsoletes:      anonftp
145 Obsoletes:      bftpd
146 Obsoletes:      ftpd-BSD
147 Obsoletes:      heimdal-ftpd
148 Obsoletes:      linux-ftpd
149 Obsoletes:      muddleftpd
150 Obsoletes:      pure-ftpd
151 Obsoletes:      troll-ftpd
152 Obsoletes:      wu-ftpd
153
154 %description standalone
155 ProFTPD configs for running as a standalone daemon.
156
157 %description standalone -l pl
158 Pliki konfiguracyjne ProFTPD do startowania demona w trybie
159 standalone.
160
161 %prep
162 %setup  -q
163 %patch0 -p1
164 %patch1 -p1
165 %patch2 -p1
166 %patch3 -p1
167 %patch4 -p1
168 %patch5 -p1
169 %patch6 -p1
170 %patch7 -p1
171 %patch8 -p1
172 %patch9 -p1
173 %patch10 -p0
174 %patch11 -p1
175 install -m644 %{SOURCE7} contrib/mod_tcpd.c
176
177 %build
178 autoconf
179 RUN_DIR=%{_localstatedir} ; export RUN_DIR
180 %configure \
181         --enable-autoshadow \
182         --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} \
183         %{?!_without_ipv6:--enable-ipv6} \
184         %{?_without_ssl:--disable-tls} \
185         --enable-sendfile
186
187 %{__make}
188
189 %install
190 rm -rf $RPM_BUILD_ROOT
191
192 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,pam.d,security,sysconfig/rc-inetd,rc.d/init.d} \
193         $RPM_BUILD_ROOT/{home/ftp/pub/Incoming,var/log}
194
195 %{__make} install DESTDIR=$RPM_BUILD_ROOT \
196         INSTALL_USER=`id -u` \
197         INSTALL_GROUP=`id -g`
198
199 rm -f $RPM_BUILD_ROOT%{_sbindir}/in.proftpd
200
201 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
202 install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/ftpd
203 %{?!_without_pam:install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/ftp}
204 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/ftpd
205 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/proftpd
206 install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/proftpd
207 install contrib/xferstats.holger-preiss $RPM_BUILD_ROOT%{_bindir}/xferstat
208
209 mv -f contrib/README contrib/README.modules
210
211 :> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers.default
212 :> $RPM_BUILD_ROOT%{_sysconfdir}/ftpusers
213 :> $RPM_BUILD_ROOT/var/log/xferlog
214
215 ln -sf proftpd $RPM_BUILD_ROOT%{_sbindir}/ftpd
216
217 :> $RPM_BUILD_ROOT/etc/security/blacklist.ftp
218
219 gzip -9nf sample-configurations/{virtual,anonymous}.conf ChangeLog README \
220         README.linux-* contrib/README.modules README.IPv6 README.PAM README.TLS
221
222 %clean
223 rm -rf $RPM_BUILD_ROOT
224
225 %post
226 touch /var/log/xferlog
227 awk 'BEGIN { FS = ":" }; { if(($3 < 1000)&&($1 != "ftp")) print $1; }' < /etc/passwd >> %{_sysconfdir}/ftpusers.default
228 if [ ! -f %{_sysconfdir}/ftpusers ]; then
229         ( cd %{_sysconfdir}; mv -f ftpusers.default ftpusers )
230 fi
231
232 %post inetd
233 if grep -iEqs "^ServerType[[:space:]]+standalone" %{_sysconfdir}/proftpd.conf ; then
234         cp -a %{_sysconfdir}/proftpd.conf %{_sysconfdir}/proftpd.conf.rpmorig
235         sed -e "s/^ServerType[[:space:]]\+standalone/ServerType                 inetd/g" \
236                 %{_sysconfdir}/proftpd.conf.rpmorig >%{_sysconfdir}/proftpd.conf
237 fi
238 if [ -f /var/lock/subsys/rc-inetd ]; then
239         /etc/rc.d/init.d/rc-inetd reload 1>&2
240 else
241         echo "Type \"/etc/rc.d/init.d/rc-inetd start\" to start inet server" 1>&2
242 fi
243
244 %postun inetd
245 if [ "$1" = "0" -a -f /var/lock/subsys/rc-inetd ]; then
246         /etc/rc.d/init.d/rc-inetd reload 1>&2
247 fi
248
249 %post standalone
250 /sbin/chkconfig --add proftpd
251 if grep -iEqs "^ServerType[[:space:]]+inetd" %{_sysconfdir}/proftpd.conf ; then
252         cp -a %{_sysconfdir}/proftpd.conf %{_sysconfdir}/proftpd.conf.rpmorig
253         sed -e "s/^ServerType[[:space:]]\+inetd/ServerType                      standalone/g" \
254                 %{_sysconfdir}/proftpd.conf.rpmorig >%{_sysconfdir}/proftpd.conf
255 fi
256 if [ -f /var/lock/subsys/proftpd ]; then
257         /etc/rc.d/init.d/proftpd restart 1>&2
258 else
259         echo "Run \"/etc/rc.d/init.d/proftpd start\" to start ProFTPD daemon."
260 fi
261
262 %preun standalone
263 if [ "$1" = "0" -a -f /var/lock/subsys/proftpd ]; then
264         /etc/rc.d/init.d/proftpd stop 1>&2
265 fi
266 /sbin/chkconfig --del proftpd
267
268 %files common
269 %defattr(644,root,root,755)
270 %doc {ChangeLog,README*}.gz contrib/README.modules.gz
271 %doc sample-configurations/{virtual,anonymous}.conf.gz
272 %doc doc/*html
273
274 %attr(750,root,ftp) %dir %{_sysconfdir}
275 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
276 %attr(640,root,root) /etc/logrotate.d/*
277 %attr(640,root,root) %ghost /var/log/*
278 %{?!_without_pam:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*}
279
280 %attr(640,root,root) %{_sysconfdir}/ftpusers.default
281 %attr(640,root,root) %ghost %{_sysconfdir}/ftpusers
282 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.ftp
283
284 %attr(755,root,root) %{_bindir}/*
285 %attr(755,root,root) %{_sbindir}/*
286
287 %{_mandir}/man[158]/*
288
289 %dir /home/ftp/pub
290 %attr(711,root,root) %dir /home/ftp/pub/Incoming
291
292 %files inetd
293 %defattr(644,root,root,755)
294 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/ftpd
295
296 %files standalone
297 %defattr(644,root,root,755)
298 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/proftpd
299 %attr(754,root,root) /etc/rc.d/init.d/proftpd
This page took 0.07997 seconds and 4 git commands to generate.