3 %bcond_without ldap # without LDAP map module
4 %bcond_without mysql # without MySQL map module
5 %bcond_without pgsql # without PostgreSQL map module
6 %bcond_without sasl # without SMTP AUTH support
7 %bcond_without ssl # without SSL/TLS support
8 %bcond_without cdb # without cdb map support
9 %bcond_with vda # with VDA patch
10 %bcond_with hir # with Beeth's header_if_reject patch
11 #%bcond_with polish # with double English+Polish messages
14 # - check/fix 'polish' bcond
16 Summary: Postfix Mail Transport Agent
17 Summary(cs): Postfix - program pro pøepravu po¹ty (MTA)
18 Summary(es): Postfix - Un MTA (Mail Transport Agent) de alto desempeño
19 Summary(fr): Agent de transport de courrier Postfix
20 Summary(pl): Serwer SMTP Postfix
21 Summary(pt_BR): Postfix - Um MTA (Mail Transport Agent) de alto desempenho
22 Summary(sk): Agent prenosu po¹ty Postfix
27 License: distributable
28 Group: Networking/Daemons
29 Source0: ftp://ftp.porcupine.org/mirrors/postfix-release/official/%{name}-%{version}.tar.gz
30 # Source0-md5: 440a4702182a79ac2f51e8974fb742c9
31 Source1: %{name}.aliases
34 Source4: %{name}.sysconfig
37 Source7: http://web.onda.com.br/nadal/postfix/VDA/%{name}-%{version}-vda.patch.gz
38 # Source7-md5: 8237cd654eb116d35785b11de6e5ca9c
39 Patch0: %{name}-config.patch
40 Patch1: %{name}-conf_msg.patch
41 Patch2: %{name}-dynamicmaps.patch
42 Patch3: %{name}-master.cf_cyrus.patch
43 # from http://akson.sgh.waw.pl/~chopin/unix/postfix-2.1.5-header_if_reject.diff
44 Patch4: %{name}-header_if_reject.patch
45 #Patch5: %{name}-pl.patch
46 Patch6: %{name}-setsid.patch
47 Patch7: %{name}-size-check-before-proxy.patch
48 Patch8: %{name}-log-proxy-rejects.patch
49 Patch9: %{name}-ident.patch
50 URL: http://www.postfix.org/
52 %{?with_sasl:BuildRequires: cyrus-sasl-devel}
53 BuildRequires: db-devel
54 # getifaddrs() with IPv6 support
55 BuildRequires: glibc-devel >= 6:2.3.4
57 %{?with_mysql:BuildRequires: mysql-devel}
58 %{?with_ldap:BuildRequires: openldap-devel >= 2.3.0}
59 %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
60 BuildRequires: pcre-devel
61 %{?with_pgsql:BuildRequires: postgresql-devel}
62 BuildRequires: rpmbuild(macros) >= 1.268
63 %{?with_cdb:BuildRequires: tinycdb-devel}
64 Requires(post): /bin/hostname
65 Requires(post,postun): /sbin/ldconfig
66 Requires(post,preun): /sbin/chkconfig
67 Requires(postun): /usr/sbin/groupdel
68 Requires(postun): /usr/sbin/userdel
69 Requires(pre): /bin/id
70 Requires(pre): /usr/bin/getgid
71 Requires(pre): /usr/sbin/groupadd
72 Requires(pre): /usr/sbin/useradd
73 Requires: /sbin/chkconfig
78 %{?with_cdb:Requires:tinycdb}
79 Provides: group(postfix)
81 Provides: user(postfix)
89 Obsoletes: sendmail-cf
90 Obsoletes: sendmail-doc
95 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
98 Postfix is attempt to provide an alternative to the widely-used
99 Sendmail program. Postfix attempts to be fast, easy to administer, and
100 hopefully secure, while at the same time being sendmail compatible
101 enough to not upset your users. This version has IPv6 support.
104 Postfix es una alternativa para el mundialmente utilizado sendmail. Si
105 desea tener un servidor SMTP *rápido*, debe instalar este paquete.
108 Postfix (voir http://www.postfix.org/) se veut une alternative à
109 sendmail, responsable de l'acheminement de 70% des courriers
110 électroniques sur Internet. IBM en a suppotré le développement, mais
111 ne contrôle pas son évolution. Le but est d'installer Postfix sur le
112 plus grand nombre de systèmes possible. Dans cette optique, il a été
113 écrit pour être totalement sous le contrôle de l'utilisateur.
116 Postfix (http://www.postfix.org/) e' un'alternativa al programma
117 sendmail utilizzato per la gestione del 70 per cento della posta
120 Seppur IBM supporti lo sviluppo di Postfix, non controlla la sua
123 Consultate la pagine web http://www.moongroup.com/how-to.phtml nella
124 quale troverete le indicazioni per una corretta installazione e
125 configurazione di questo programma.
128 Postfix jest prób± dostarczenia alternatywnego MTA w stosunku do
129 szeroko u¿ywanego sendmaila. Postfix w zamierzeniu ma byæ szybki,
130 ³atwy w administrowaniu, bezpieczny oraz ma byæ na tyle kompatybilny z
131 sendmailem by nie denerwowaæ u¿ytkowników. Ta wersja obs³uguje IPv6.
133 %description -l pt_BR
134 O Postfix é uma alternativa para o mundialmente utilizado sendmail. Se
135 você deseja um servidor SMTP *rápido*, instale este pacote.
138 Postfix (pozri http://www.postfix.org/) má za cieµ by» alternatívou k
139 ¹iroko roz¹írenému programu sendmail, zodpovednému za 70% v¹etkej
140 elektronickej po¹ty doruèenej na Internete.
142 Aj keï IBM podporovala vývoj Postfixu, zdr¾iava sa vplyvu na jeho
143 vývoj. Cieµom je in¹talácia Postfixu na èo najväè¹om poète systémov.
144 Do tohoto momentu je softvér poskytovaný bez ovplyvòovania, tak¾e sa
145 mô¾e vyvíja» podµa jeho pou¾ívateµov.
147 Urèite si preèítajte http://www.moongroup.com/how-to.phtml, kde sú
148 popísané kroky potrebné pred a po in¹talácii Postfixu.
151 Summary: Postfix loadable modules development package
152 Summary(pl): Pakiet dla programistów ³adowanych modu³ów do postfiksa
153 Group: Development/Libraries
154 Requires: %{name} = %{epoch}:%{version}-%{release}
157 Header files to build additional map types for Postfix.
159 %description devel -l pl
160 Pliki nag³ówkowe do tworzenia dodatkowych typów map dla Postfiksa.
163 Summary: LDAP map support for Postfix
164 Summary(pl): Obs³uga map LDAP dla Postfiksa
165 Group: Networking/Daemons
166 Requires: %{name} = %{epoch}:%{version}-%{release}
167 Requires: openldap >= 2.3.0
169 %description dict-ldap
170 This package provides support for LDAP maps in Postfix.
172 %description dict-ldap -l pl
173 Ten pakiet dodaje obs³ugê map LDAP do Postfiksa.
176 Summary: MySQL map support for Postfix
177 Summary(pl): Obs³uga map MySQL dla Postfiksa
178 Group: Networking/Daemons
179 Requires: %{name} = %{epoch}:%{version}-%{release}
181 %description dict-mysql
182 This package provides support for MySQL maps in Postfix.
184 %description dict-mysql -l pl
185 Ten pakiet dodaje obs³ugê map MySQL do Postfiksa.
188 Summary: PCRE map support for Postfix
189 Summary(pl): Obs³uga map PCRE dla Postfiksa
190 Group: Networking/Daemons
191 Requires: %{name} = %{epoch}:%{version}-%{release}
193 %description dict-pcre
194 This package provides support for PCRE maps in Postfix.
196 %description dict-pcre -l pl
197 Ten pakiet dodaje obs³ugê map PCRE do Postfiksa.
200 Summary: PostgreSQL map support for Postfix
201 Summary(pl): Obs³uga map PostgreSQL dla Postfiksa
202 Group: Networking/Daemons
203 Requires: %{name} = %{epoch}:%{version}-%{release}
205 %description dict-pgsql
206 This package provides support for PostgreSQL maps in Postfix.
208 %description dict-pgsql -l pl
209 Ten pakiet dodaje obs³ugê map PostgreSQL do Postfiksa.
213 %{?with_vda:zcat %{SOURCE7} | patch -p1 -s}
218 %{?with_hir:%patch4 -p0}
219 #%{?with_polish:%patch5 -p1}
226 %{__make} -f Makefile.init makefiles
231 %{!?with_ldap:LDAPSO=""} \
232 %{!?with_mysql:MYSQLSO=""} \
233 %{!?with_pgsql:PGSQLSO=""} \
234 CCARGS="%{?with_ldap:-DHAS_LDAP} -DHAS_PCRE %{?with_sasl:-DUSE_SASL_AUTH -I/usr/include/sasl} %{?with_mysql:-DHAS_MYSQL -I/usr/include/mysql} %{?with_pgsql:-DHAS_PGSQL -I/usr/include/postgresql} %{?with_ssl:-DUSE_TLS -I/usr/include/openssl} -DMAX_DYNAMIC_MAPS %{?with_cdb:-DHAS_CDB} -DHAVE_GETIFADDRS" \
235 AUXLIBS="-ldb -lresolv %{?with_sasl:-lsasl} %{?with_ssl:-lssl -lcrypto} %{?with_cdb:-lcdb}"
238 rm -rf $RPM_BUILD_ROOT
239 install -d $RPM_BUILD_ROOT/etc/{cron.daily,rc.d/init.d,sysconfig,pam.d} \
240 $RPM_BUILD_ROOT%{_sysconfdir}/{mail,sasl} \
241 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/postfix,/usr/lib}\
242 $RPM_BUILD_ROOT{%{_includedir}/postfix,%{_mandir}/man{1,5,8}} \
243 $RPM_BUILD_ROOT%{_var}/spool/postfix/{active,corrupt,deferred,maildrop,private,saved,bounce,defer,incoming,pid,public}
245 rm -f {html,man}/Makefile.in conf/{LICENSE,main.cf.default}
247 install bin/* $RPM_BUILD_ROOT%{_sbindir}
248 install libexec/* $RPM_BUILD_ROOT%{_libdir}/postfix
249 install conf/* $RPM_BUILD_ROOT%{_sysconfdir}/mail
250 sed -e's,^daemon_directory = .*,daemon_directory = %{_libdir}/postfix,' \
251 conf/main.cf > $RPM_BUILD_ROOT%{_sysconfdir}/mail/main.cf
253 for f in dns global master util ; do
254 install lib/lib${f}.a $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so.1
255 ln -sf lib${f}.so.1 $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so
257 install lib/dict*.so $RPM_BUILD_ROOT%{_libdir}/postfix
258 install include/*.h $RPM_BUILD_ROOT%{_includedir}/postfix
260 (cd man; tar cf - .) | (cd $RPM_BUILD_ROOT%{_mandir}; tar xf -)
262 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mail/aliases
263 install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.daily/postfix
264 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/postfix
265 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/postfix
266 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/sasl/smtpd.conf
267 install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/smtp
268 install auxiliary/rmail/rmail $RPM_BUILD_ROOT%{_bindir}/rmail
270 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/mailq
271 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/newaliases
272 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT/usr/lib/sendmail
274 touch $RPM_BUILD_ROOT%{_sysconfdir}/mail/\
275 {aliases,access,canonical,relocated,transport,virtual}{,.db}
277 > $RPM_BUILD_ROOT/var/spool/postfix/.nofinger
279 rm -rf $RPM_BUILD_ROOT/etc/mail/makedefs.out $RPM_BUILD_ROOT/usr/share/man/cat*
282 rm -rf $RPM_BUILD_ROOT
285 %groupadd -g 62 postfix
286 %groupadd -g 63 maildrop
287 %useradd -u 62 -d /var/spool/postfix -s /bin/false -c "Postfix User" -g postfix postfix
291 if ! grep -q "^postmaster:" /etc/mail/aliases; then
292 echo "Adding Entry for postmaster in /etc/mail/aliases" >&2
293 echo "postmaster: root" >>/etc/mail/aliases
295 if [ "$1" = "1" ]; then
296 # only on installation, not upgrade
297 if ! grep -q "^myhostname" /etc/mail/main.cf; then
298 postconf -e myhostname=`/bin/hostname -f`
301 postfix upgrade-configuration
305 /sbin/chkconfig --add postfix
306 %service postfix restart "postfix daemon"
309 if [ "$1" = "0" ]; then
310 %service postfix stop
311 /sbin/chkconfig --del postfix
316 if [ "$1" = "0" ]; then
317 %groupremove maildrop
323 %defattr(644,root,root,755)
324 %doc html *README COMPATIBILITY HISTORY LICENSE RELEASE_NOTES TLS_*
325 %doc README_FILES/*README
326 %doc examples/smtpd-policy
327 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/access
328 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/aliases
329 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/canonical
330 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/generic
331 #%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/pcre_table
332 #%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/regexp_table
333 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/relocated
334 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/transport
335 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/virtual
336 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/header_checks
337 #%ghost %{_sysconfdir}/mail/*.db
338 %dir %{_sysconfdir}/mail
339 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/dynamicmaps.cf
340 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/main.cf
341 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/master.cf
342 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mail/postfix-script
343 %attr(755,root,root) %{_sysconfdir}/mail/post-install
344 %{_sysconfdir}/mail/postfix-files
345 %attr(740,root,root) /etc/cron.daily/postfix
346 %attr(754,root,root) /etc/rc.d/init.d/postfix
347 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postfix
348 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/smtp
349 %{?with_sasl:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/smtpd.conf}
350 %attr(755,root,root) %{_libdir}/libpostfix-*.so.*
351 %attr(755,root,root) %{_bindir}/*
352 %attr(755,root,root) %{_sbindir}/s*
353 %attr(755,root,root) %{_sbindir}/postfix
354 %attr(755,root,root) %{_sbindir}/postalias
355 %attr(755,root,root) %{_sbindir}/postkick
356 %attr(755,root,root) %{_sbindir}/postl*
357 %attr(755,root,root) %{_sbindir}/postc*
358 %attr(755,root,root) %{_sbindir}/postmap
359 %attr(2755,root,maildrop) %{_sbindir}/postqueue
360 %attr(755,root,root) %{_sbindir}/postsuper
361 %attr(2755,root,maildrop) %{_sbindir}/postdrop
362 %attr(755,root,root) %{_sbindir}/qmqp-sink
363 %attr(755,root,root) %{_sbindir}/qmqp-source
364 %attr(755,root,root) /usr/lib/sendmail
365 %dir %{_libdir}/postfix
366 %attr(755,root,root) %{_libdir}/postfix/[!d]*
367 %attr(755,root,root) %{_libdir}/postfix/discard
368 %attr(755,root,root) %dir %{_var}/spool/postfix
369 %attr(700,postfix,root) %dir %{_var}/spool/postfix/active
370 %attr(700,postfix,root) %dir %{_var}/spool/postfix/bounce
371 %attr(700,postfix,root) %dir %{_var}/spool/postfix/corrupt
372 %attr(700,postfix,root) %dir %{_var}/spool/postfix/defer
373 %attr(700,postfix,root) %dir %{_var}/spool/postfix/deferred
374 %attr(700,postfix,root) %dir %{_var}/spool/postfix/incoming
375 %attr(1730,postfix,maildrop) %dir %{_var}/spool/postfix/maildrop
376 %attr(755,postfix,root) %dir %{_var}/spool/postfix/pid
377 %attr(700,postfix,root) %dir %{_var}/spool/postfix/private
378 %attr(710,postfix,maildrop) %dir %{_var}/spool/postfix/public
379 %attr(700,postfix,root) %dir %{_var}/spool/postfix/saved
380 %attr(644,postfix,root) %{_var}/spool/postfix/.nofinger
384 %defattr(644,root,root,755)
385 %attr(755,root,root) %{_libdir}/libpostfix-*.so
386 %{_includedir}/postfix
390 %defattr(644,root,root,755)
391 %attr(755,root,root) %{_libdir}/postfix/dict_ldap.so
396 %defattr(644,root,root,755)
397 %attr(755,root,root) %{_libdir}/postfix/dict_mysql.so
401 %defattr(644,root,root,755)
402 %attr(755,root,root) %{_libdir}/postfix/dict_pcre.so
406 %defattr(644,root,root,755)
407 %attr(755,root,root) %{_libdir}/postfix/dict_pgsql.so