]> git.pld-linux.org Git - packages/pure-ftpd.git/blob - pure-ftpd.spec
- enabled all bconds by default; include missing configs
[packages/pure-ftpd.git] / pure-ftpd.spec
1 #
2 # Conditional build:
3 # _without_mysql - disable MySQL auth but disables PAM auth
4 # _without_ldap  - disable LDAP auth
5 # _without_pgsql - disable PostgreSQL support
6 # _without_tls   - support SSL/TLS
7 #
8 Summary:        Small, fast and secure FTP server
9 Summary(pl):    Ma³y, szybki i bezpieczny serwer FTP
10 Name:           pure-ftpd
11 Version:        1.0.16a
12 Release:        2
13 Epoch:          0
14 License:        BSD-like
15 Group:          Daemons
16 Source0:        ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/%{name}-%{version}.tar.bz2
17 # Source0-md5:  9bb8e85367bda9a63afdcbe6e2d26c71
18 Source1:        %{name}.pamd
19 Source2:        %{name}.init
20 Source3:        ftpusers.tar.bz2
21 # Source3-md5:  76c80b6ec9f4d079a1e27316edddbe16
22 URL:            http://www.pureftpd.org/
23 BuildRequires:  libcap-devel
24 %{!?_without_mysql:BuildRequires:       mysql-devel}
25 %{!?_without_ldap:BuildRequires:        openldap-devel}
26 %{!?_without_tls:BuildRequires:         openssl-devel}
27 %{!?_without_pgsql:BuildRequires:       postgresql-devel}
28 BuildRequires:  pam-devel
29 Prereq:         rc-scripts
30 Requires(post,preun):/sbin/chkconfig
31 Provides:       ftpserver
32 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33 Obsoletes:      ftpserver
34 Obsoletes:      anonftp
35 Obsoletes:      bftpd
36 Obsoletes:      ftpd-BSD
37 Obsoletes:      heimdal-ftpd
38 Obsoletes:      linux-ftpd
39 Obsoletes:      muddleftpd
40 Obsoletes:      proftpd
41 Obsoletes:      proftpd-common
42 Obsoletes:      proftpd-inetd
43 Obsoletes:      proftpd-standalone
44 Obsoletes:      troll-ftpd
45 Obsoletes:      vsftpd
46 Obsoletes:      wu-ftpd
47 Conflicts:      man-pages < 1.51
48
49 %define         _sysconfdir     /etc/ftpd
50
51 %description
52 Pure-FTPd is a fast, production-quality, standard-comformant FTP
53 server, based upon Troll-FTPd. Unlike other popular FTP servers, it
54 has no known security flaw, it is really trivial to set up and it is
55 especially designed for modern Linux kernels (setfsuid, sendfile,
56 capabilities) . Features include PAM support, IPv6, chroot()ed home
57 directories, virtual domains, built-in LS, anti-warez system, bounded
58 ports for passive downloads...
59
60 %description -l pl
61 Pure-FTPD to szybki, wysokiej jako¶ci, odpowiadaj±cy standardom serwer
62 FTP bazuj±cy na Troll-FTPd. W przeciwieñstwie do innych serwerów FTP
63 nie ma znanych luk w bezpieczeñstwie. Ponadto jest trywialny w
64 konfiguracji i specjalnie zaprojektowany dla nowych kerneli Linuksa
65 (setfsuid, sendfile, capabilibies). Mo¿liwo¶ci to wsparcie dla PAMa,
66 IPv6, chroot()owanych katalogów domowych, virtualne domeny, wbudowany
67 LS, system anty-warezowy, ograniczanie portów dla pasywnych
68 po³±czeñ...
69
70 %prep
71 %setup -q
72
73 %build
74 %configure \
75         --with-altlog \
76         --with-puredb \
77         --with-extauth \
78         --with-pam \
79         --with-cookie \
80         --with-throttling \
81         --with-ratios \
82         --with-quotas \
83         --with-ftpwho \
84         --with-largefile \
85         --with-uploadscript \
86         --with-virtualhosts \
87         --with-virtualchroot \
88         --with-diraliases \
89         --with-peruserlimits \
90         %{!?_without_mysql:CPPFLAGS="-I%{_includedir}/mysql" --with-mysql} \
91         %{!?_without_pgsql:--with-pgsql} \
92         %{!?_without_ldap:--with-ldap} \
93         %{!?_without_tls: --with-tls} \
94         --with-language=english \
95         --with-privsep
96
97 echo '#define   TLS_CERTIFICATE_PATH    "%{_sysconfdir}/ssl/pure-ftpd.pem"' >> config.h
98
99 %install
100 rm -rf $RPM_BUILD_ROOT
101 install -d $RPM_BUILD_ROOT/etc/{pam.d,sysconfig,security,rc.d/init.d} \
102         $RPM_BUILD_ROOT{%{_sysconfdir}/{vhosts,ssl},/home/services/ftp/Incoming}
103
104 %{__make} install DESTDIR=$RPM_BUILD_ROOT
105
106 install %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/%{name}
107 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
108
109 %{!?_without_ldap:install pureftpd-ldap.conf $RPM_BUILD_ROOT%{_sysconfdir}/pureftpd-ldap.conf}
110 %{!?_without_mysql:install pureftpd-mysql.conf $RPM_BUILD_ROOT%{_sysconfdir}/pureftpd-mysql.conf}
111 %{!?_without_pgsql:install pureftpd-pgsql.conf $RPM_BUILD_ROOT%{_sysconfdir}/pureftpd-pgsql.conf}
112 install configuration-file/pure-ftpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/pureftpd.conf
113 install configuration-file/pure-config.pl $RPM_BUILD_ROOT%{_sbindir}
114 touch $RPM_BUILD_ROOT/etc/security/blacklist.ftp
115
116 ln -s vhosts $RPM_BUILD_ROOT%{_sysconfdir}/pure-ftpd
117
118 bzip2 -dc %{SOURCE3} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
119
120 %clean
121 rm -rf $RPM_BUILD_ROOT
122
123 %post
124 /sbin/chkconfig --add %{name}
125 if [ -f %{_var}/lock/subsys/%{name} ]; then
126         /etc/rc.d/init.d/%{name} restart 1>&2
127 else
128         echo "Run \"/etc/rc.d/init.d/%{name} start\" to start PureFTPD daemon."
129 fi
130
131 %preun
132 if [ "$1" = "0" ]; then
133         if [ -f %{_var}/lock/subsys/%{name} ]; then
134                 /etc/rc.d/init.d/%{name} stop 1>&2
135         fi
136         /sbin/chkconfig --del %{name}
137 fi
138
139 %files
140 %defattr(644,root,root,755)
141 %doc README* AUTHORS ChangeLog HISTORY NEWS THANKS pure*.conf
142 %attr(755,root,root) %{_bindir}/*
143 %attr(755,root,root) %{_sbindir}/*
144 %attr(754,root,root) /etc/rc.d/init.d/%{name}
145 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/*
146 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/security/blacklist.ftp
147 %{!?_without_ldap:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pureftpd-ldap.conf}
148 %{!?_without_mysql:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pureftpd-mysql.conf}
149 %{!?_without_pgsql:%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pureftpd-pgsql.conf}
150 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pureftpd.conf
151 %attr(710,root,ftp) %dir %{_sysconfdir}
152 %dir %{_sysconfdir}/vhosts
153 %dir %{_sysconfdir}/pure-ftpd
154 %{!?_without_tls:%dir %{_sysconfdir}/ssl}
155 %dir /home/services/ftp
156 %attr(775,root,ftp) %dir /home/services/ftp/Incoming
157 %{_mandir}/man?/*
158 %lang(ja) %{_mandir}/ja/man5/ftpusers*
159 %lang(pl) %{_mandir}/pl/man5/ftpusers*
160 %lang(pt_BR) %{_mandir}/pt_BR/man5/ftpusers*
161 %lang(ru) %{_mandir}/ru/man5/ftpusers*
This page took 0.06154 seconds and 4 git commands to generate.