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