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