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 polish # with double English+Polish messages
11 %define _tls_ipv6_ver 1.23-pf-2.0.20
12 Summary: Postfix Mail Transport Agent
13 Summary(cs): Postfix - program pro pøepravu po¹ty (MTA)
14 Summary(es): Postfix - Un MTA (Mail Transport Agent) de alto desempeño
15 Summary(fr): Agent de transport de courrier Postfix
16 Summary(pl): Serwer SMTP Postfix
17 Summary(pt_BR): Postfix - Um MTA (Mail Transport Agent) de alto desempenho
18 Summary(sk): Agent prenosu po¹ty Postfix
23 Group: Networking/Daemons
24 License: distributable
25 Source0: ftp://ftp.porcupine.org/mirrors/postfix-release/official/%{name}-%{version}.tar.gz
26 # Source0-md5: 92479b64d132262be505a17ec02bc2a8
27 Source1: %{name}.aliases
30 Source5: %{name}.sysconfig
32 Source7: ftp://ftp.corpit.ru/pub/postfix/%{name}-dict_cdb-1.1.11-20021104.tar.gz
33 # Source7-md5: 5731b5081725f4688dc6fae119d617e4
34 Source8: http://www.ipnet6.org/postfix/download/tls+ipv6-%{_tls_ipv6_ver}.patch.gz
35 # Source8-md5: f22ddc33b8fc103c0ab953579e90ecd0
36 Patch0: %{name}-config.patch
37 Patch1: %{name}-conf_msg.patch
38 Patch2: %{name}-dynamicmaps.patch
39 Patch3: %{name}-pgsql.patch
40 Patch4: %{name}-master.cf_cyrus.patch
41 Patch5: %{name}-pl.patch
42 Patch6: %{name}-cdb_man.patch
43 Patch7: %{name}-ns-mx-acl.patch
44 Patch8: %{name}-kill_warnings.patch
45 Patch9: %{name}-ipv6-kill_warnings.patch
46 Patch10: %{name}-dict_ldap.patch
47 URL: http://www.postfix.org/
49 %{?with_sasl:BuildRequires: cyrus-sasl-devel}
50 BuildRequires: db-devel
52 BuildRequires: libinet6 >= 0.20030228-1
53 %{?with_mysql:BuildRequires: mysql-devel}
54 %{?with_ldap:BuildRequires: openldap-devel >= 2.2.0}
55 %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
56 BuildRequires: pcre-devel
57 %{?with_pgsql:BuildRequires: postgresql-devel}
58 %{?with_cdb:BuildRequires: tinycdb-devel}
61 Requires(pre): /usr/sbin/useradd
62 Requires(pre): /usr/sbin/groupadd
63 Requires(pre): /usr/bin/getgid
64 Requires(pre): /bin/id
65 Requires(post): /bin/hostname
66 Requires(post,postun): /sbin/ldconfig
67 Requires(post,preun): /sbin/chkconfig
68 Requires(postun): /usr/sbin/userdel
69 Requires(postun): /usr/sbin/groupdel
72 %{?with_cdb:Requires:tinycdb}
81 Obsoletes: sendmail-cf
82 Obsoletes: sendmail-doc
87 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
90 Postfix is attempt to provide an alternative to the widely-used
91 Sendmail program. Postfix attempts to be fast, easy to administer, and
92 hopefully secure, while at the same time being sendmail compatible
93 enough to not upset your users. This version has IPv6 support.
96 O Postfix é uma alternativa para o mundialmente utilizado sendmail. Se
97 você deseja um servidor SMTP *rápido*, instale este pacote.
100 Postfix es una alternativa para el mundialmente utilizado sendmail. Si
101 desea tener un servidor SMTP *rápido*, debe instalar este paquete.
104 Postfix (voir http://www.postfix.org/) se veut une alternative à
105 sendmail, responsable de l'acheminement de 70% des courriers
106 électroniques sur Internet. IBM en a suppotré le développement, mais
107 ne contrôle pas son évolution. Le but est d'installer Postfix sur le
108 plus grand nombre de systèmes possible. Dans cette optique, il a été
109 écrit pour être totalement sous le contrôle de l'utilisateur.
112 Postfix (http://www.postfix.org/) e' un'alternativa al programma
113 sendmail utilizzato per la gestione del 70 per cento della posta
116 Seppur IBM supporti lo sviluppo di Postfix, non controlla la sua
119 Consultate la pagine web http://www.moongroup.com/how-to.phtml nella
120 quale troverete le indicazioni per una corretta installazione e
121 configurazione di questo programma.
124 Postfix jest prób± dostarczenia alternatywnego MTA w stosunku do
125 szeroko u¿ywanego sendmaila. Postfix w zamierzeniu ma byæ szybki,
126 ³atwy w administrowaniu, bezpieczny oraz ma byæ na tyle kompatybilny z
127 sendmailem by nie denerwowaæ Twoich u¿ytkowników. Ta wersja wspiera IPv6.
129 %description -l pt_BR
130 O Postfix é uma alternativa para o mundialmente utilizado sendmail. Se
131 você deseja um servidor SMTP *rápido*, instale este pacote.
134 Postfix (pozri http://www.postfix.org/) má za cieµ by» alternatívou k
135 ¹iroko roz¹írenému programu sendmail, zodpovednému za 70% v¹etkej
136 elektronickej po¹ty doruèenej na Internete.
138 Aj keï IBM podporovala vývoj Postfixu, zdr¾iava sa vplyvu na jeho
139 vývoj. Cieµom je in¹talácia Postfixu na èo najväè¹om poète systémov.
140 Do tohoto momentu je softvér poskytovaný bez ovplyvòovania, tak¾e sa
141 mô¾e vyvíja» podµa jeho pou¾ívateµov.
143 Urèite si preèítajte http://www.moongroup.com/how-to.phtml, kde sú
144 popísané kroky potrebné pred a po in¹talácii Postfixu.
147 Summary: Postfix loadable modules development package
148 Summary(pl): Pakiet dla programistów ³adowanych modu³ów do postfiksa
149 Group: Development/Libraries
150 Requires: %{name} = %{epoch}:%{version}
153 Header files to build additional map types for Postfix.
155 %description devel -l pl
156 Pliki nag³ówkowe do tworzenia dodatkowych typów map dla Postfiksa.
159 Summary: LDAP map support for Postfix
160 Summary(pl): Obs³uga map LDAP dla Postfiksa
161 Group: Networking/Daemons
162 Requires: %{name} = %{epoch}:%{version}
163 Requires: openldap >= 2.0.0
165 %description dict-ldap
166 This package provides support for LDAP maps in Postfix.
168 %description dict-ldap -l pl
169 Ten pakiet dodaje obs³ugê map LDAP do Postfiksa.
172 Summary: MySQL map support for Postfix
173 Summary(pl): Obs³uga map MySQL dla Postfiksa
174 Group: Networking/Daemons
175 Requires: %{name} = %{epoch}:%{version}
177 %description dict-mysql
178 This package provides support for MySQL maps in Postfix.
180 %description dict-mysql -l pl
181 Ten pakiet dodaje obs³ugê map MySQL do Postfiksa.
184 Summary: PCRE map support for Postfix
185 Summary(pl): Obs³uga map PCRE dla Postfiksa
186 Group: Networking/Daemons
187 Requires: %{name} = %{epoch}:%{version}
189 %description dict-pcre
190 This package provides support for PCRE maps in Postfix.
192 %description dict-pcre -l pl
193 Ten pakiet dodaje obs³ugê map PCRE do Postfiksa.
196 Summary: PostgreSQL map support for Postfix
197 Summary(pl): Obs³uga map PostgreSQL dla Postfiksa
198 Group: Networking/Daemons
199 Requires: %{name} = %{epoch}:%{version}
201 %description dict-pgsql
202 This package provides support for PostgreSQL maps in Postfix.
204 %description dict-pgsql -l pl
205 Ten pakiet dodaje obs³ugê map PostgreSQL do Postfiksa.
208 %setup -q %{?with_cdb:-a7}
209 zcat %{SOURCE8} | patch -p1 -s
215 %{?with_polish:%patch5 -p1}
216 %{?with_cdb:%patch6 -p1}
220 %{?with_cdb:sh dict_cdb.sh}
224 %{__make} -f Makefile.init makefiles
226 %{__make} DEBUG="" OPT="%{rpmcflags}" \
227 %{!?with_ldap:LDAPSO=""} \
228 %{!?with_mysql:MYSQLSO=""} \
229 %{!?with_pgsql:PGSQLSO=""} \
230 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:-DHAS_SSL -I/usr/include/openssl} -DMAX_DYNAMIC_MAPS %{?with_cdb:-DHAS_CDB}" \
231 AUXLIBS="-ldb -lresolv %{?with_sasl:-lsasl} %{?with_ssl:-lssl -lcrypto} %{?with_cdb:-lcdb}"
234 rm -rf $RPM_BUILD_ROOT
235 install -d $RPM_BUILD_ROOT/etc/{cron.daily,rc.d/init.d,sysconfig} \
236 $RPM_BUILD_ROOT%{_sysconfdir}/{mail,sasl} \
237 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/postfix,/usr/lib}\
238 $RPM_BUILD_ROOT{%{_includedir}/postfix,%{_mandir}/man{1,5,8}} \
239 $RPM_BUILD_ROOT%{_var}/spool/postfix/{active,corrupt,deferred,maildrop,private,saved,bounce,defer,incoming,pid,public} \
242 rm -f {html,man}/Makefile.in conf/{LICENSE,main.cf.default}
244 install -d sample-conf; mv -f conf/sample* sample-conf || :
246 install bin/* $RPM_BUILD_ROOT%{_sbindir}
247 install libexec/* $RPM_BUILD_ROOT%{_libdir}/postfix
248 install conf/* $RPM_BUILD_ROOT%{_sysconfdir}/mail
249 sed -e's,^daemon_directory = .*,daemon_directory = %{_libdir}/postfix,' \
250 conf/main.cf > $RPM_BUILD_ROOT%{_sysconfdir}/mail/main.cf
252 for f in dns global master util ; do
253 install lib/lib${f}.a $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so.1
254 ln -sf lib${f}.so.1 $RPM_BUILD_ROOT%{_libdir}/libpostfix-${f}.so
256 install lib/dict*.so $RPM_BUILD_ROOT%{_libdir}/postfix
257 install include/*.h $RPM_BUILD_ROOT%{_includedir}/postfix
259 (cd man; tar cf - .) | (cd $RPM_BUILD_ROOT%{_mandir}; tar xf -)
261 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mail/aliases
262 install %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.daily/postfix
263 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/postfix
264 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/postfix
265 install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/sasl/smtpd.conf
266 install auxiliary/rmail/rmail $RPM_BUILD_ROOT%{_bindir}/rmail
268 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/mailq
269 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT%{_bindir}/newaliases
270 ln -sf /usr/sbin/sendmail $RPM_BUILD_ROOT/usr/lib/sendmail
272 touch $RPM_BUILD_ROOT%{_sysconfdir}/mail/\
273 {aliases,access,canonical,relocated,transport,virtual}{,.db}
275 > $RPM_BUILD_ROOT/var/spool/postfix/.nofinger
278 rm -rf $RPM_BUILD_ROOT
281 if [ -n "`/usr/bin/getgid postfix`" ]; then
282 if [ "`getgid postfix`" != "62" ]; then
283 echo "Error: group postfix doesn't have gid=62. Correct this before installing postfix." 1>&2
287 /usr/sbin/groupadd -g 62 -r -f postfix
289 if [ -n "`/usr/bin/getgid maildrop`" ]; then
290 if [ "`/usr/bin/getgid maildrop`" != "63" ]; then
291 echo "Error: group maildrop doesn't have gid=63. Correct this before installing postfix." 1>&2
295 /usr/sbin/groupadd -g 63 -r -f maildrop
297 if [ -n "`/bin/id -u postfix 2>/dev/null`" ]; then
298 if [ "`/bin/id -u postfix`" != "62" ]; then
299 echo "Error: user postfix doesn't have uid=62. Correct this before installing postfix." 1>&2
303 /usr/sbin/useradd -u 62 -r -d /var/spool/postfix -s /bin/false -c "Postfix User" -g postfix postfix 1>&2
308 if ! grep -q "^postmaster:" /etc/mail/aliases; then
309 echo "Adding Entry for postmaster in /etc/mail/aliases" >&2
310 echo "postmaster: root" >>/etc/mail/aliases
312 if [ "$1" = "1" ]; then
313 # only on installation, not upgrade
314 if ! grep -q "^myhostname" /etc/mail/main.cf; then
315 postconf -e myhostname=`/bin/hostname -f`
320 /sbin/chkconfig --add postfix
321 if [ -f /var/lock/subsys/postfix ]; then
322 /etc/rc.d/init.d/postfix restart >&2
324 echo "Run \"/etc/rc.d/init.d/postfix start\" to start postfix daemon." >&2
328 if [ "$1" = "0" ]; then
329 if [ -f /var/lock/subsys/postfix ]; then
330 /etc/rc.d/init.d/postfix stop >&2
332 /sbin/chkconfig --del postfix
337 if [ "$1" = "0" ]; then
338 /usr/sbin/groupdel maildrop 2> /dev/null
339 /usr/sbin/userdel postfix 2> /dev/null
340 /usr/sbin/groupdel postfix 2> /dev/null
343 %triggerpostun -- postfix < 1:1.1.2
345 sed -e 's/^\(pickup[ ]\+fifo[ ]\+[^ ]\+[ ]\+\)[^ ]\+\([ ]\)/\1-\2/;
346 s/^\(cleanup[ ]\+unix[ ]\+\)[^ ]\+\([ ]\)/\1n\2/' /etc/mail/master.cf \
347 > /etc/mail/master.cf.rpmtmp
348 mv -f /etc/mail/master.cf.rpmtmp /etc/mail/master.cf
351 %defattr(644,root,root,755)
352 %doc html *README COMPATIBILITY HISTORY LICENSE RELEASE_NOTES
353 %doc README_FILES/*README
355 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/access
356 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/aliases
357 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/canonical
358 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/pcre_table
359 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/regexp_table
360 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/relocated
361 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/transport
362 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/virtual
363 #%ghost %{_sysconfdir}/mail/*.db
364 %dir %{_sysconfdir}/mail
365 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/dynamicmaps.cf
366 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/main.cf
367 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/master.cf
368 %attr(755,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/mail/postfix-script
369 %attr(755,root,root) %{_sysconfdir}/mail/post-install
370 %{_sysconfdir}/mail/postfix-files
371 %attr(740,root,root) /etc/cron.daily/postfix
372 %attr(754,root,root) /etc/rc.d/init.d/postfix
373 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/postfix
374 %{?with_sasl:%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/sasl/smtpd.conf}
375 %attr(755,root,root) %{_libdir}/libpostfix-*.so.*
376 %attr(755,root,root) %{_bindir}/*
377 %attr(755,root,root) %{_sbindir}/s*
378 %attr(755,root,root) %{_sbindir}/postfix
379 %attr(755,root,root) %{_sbindir}/postalias
380 %attr(755,root,root) %{_sbindir}/postkick
381 %attr(755,root,root) %{_sbindir}/postl*
382 %attr(755,root,root) %{_sbindir}/postc*
383 %attr(755,root,root) %{_sbindir}/postmap
384 %attr(2755,root,maildrop) %{_sbindir}/postqueue
385 %attr(755,root,root) %{_sbindir}/postsuper
386 %attr(2755,root,maildrop) %{_sbindir}/postdrop
387 %attr(755,root,root) %{_sbindir}/qmqp-source
388 %attr(755,root,root) /usr/lib/sendmail
389 %dir %{_libdir}/postfix
390 %attr(755,root,root) %{_libdir}/postfix/[!d]*
391 %attr(755,root,root) %dir %{_var}/spool/postfix
392 %attr(700, postfix,root) %dir %{_var}/spool/postfix/active
393 %attr(700, postfix,root) %dir %{_var}/spool/postfix/bounce
394 %attr(700, postfix,root) %dir %{_var}/spool/postfix/corrupt
395 %attr(700, postfix,root) %dir %{_var}/spool/postfix/defer
396 %attr(700, postfix,root) %dir %{_var}/spool/postfix/deferred
397 %attr(700, postfix,root) %dir %{_var}/spool/postfix/incoming
398 %attr(1730,postfix,maildrop) %dir %{_var}/spool/postfix/maildrop
399 %attr(755, postfix,root) %dir %{_var}/spool/postfix/pid
400 %attr(700, postfix,root) %dir %{_var}/spool/postfix/private
401 %attr(710, postfix,maildrop) %dir %{_var}/spool/postfix/public
402 %attr(700, postfix,root) %dir %{_var}/spool/postfix/saved
403 %attr(644, postfix,root) %{_var}/spool/postfix/.nofinger
407 %defattr(644,root,root,755)
408 %attr(755,root,root) %{_libdir}/libpostfix-*.so
409 %{_includedir}/postfix
413 %defattr(644,root,root,755)
414 %attr(755,root,root) %{_libdir}/postfix/dict_ldap.so
419 %defattr(644,root,root,755)
420 %attr(755,root,root) %{_libdir}/postfix/dict_mysql.so
424 %defattr(644,root,root,755)
425 %attr(755,root,root) %{_libdir}/postfix/dict_pcre.so
429 %defattr(644,root,root,755)
430 %attr(755,root,root) %{_libdir}/postfix/dict_pgsql.so