X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=dovecot.spec;h=bbad5369672189dc4a6df38d62948aefe08b57ee;hb=672ffb70e47f0e63388e577310582fee6155387d;hp=eaaaa7c3edf0b1293b34713fcb27ff0a42c2e14b;hpb=b8f6d56a1c1e1156a0fd793fcc7d4cd629d5fba1;p=packages%2Fdovecot.git diff --git a/dovecot.spec b/dovecot.spec index eaaaa7c..bbad536 100644 --- a/dovecot.spec +++ b/dovecot.spec @@ -1,12 +1,52 @@ +# +# Conditional build: +%bcond_with gssapi # with GSSAPI support +%bcond_without ldap # without LDAP auth +%bcond_without mysql # without MySQL auth +%bcond_without pgsql # without PostgreSQL auth +%bcond_without sqlite # without SQLite3 auth +%bcond_without sasl # without SASL auth +# Summary: IMAP and POP3 server written with security primarily in mind +Summary(pl.UTF-8): Serwer IMAP i POP3 pisany głównie z myślą o bezpieczeństwie Name: dovecot -Version: 0.99.10 -Release: 0.1 -License: LGPL v2.1 +Version: 1.1.7 +Release: 1 +Epoch: 1 +License: MIT (libraries), LGPL v2.1 (the rest) Group: Networking/Daemons -Source0: http://dovecot.procontrol.fi/%{name}-%{version}.tar.gz -# Source0-md5: 26d8452366a28418cc8a114781a721b6 -URL: http://dovecot.procontrol.fi/ +Source0: http://dovecot.org/releases/1.1/%{name}-%{version}.tar.gz +# Source0-md5: ea83ea2000a5b2e1744c7c97eb5585d1 +Source1: %{name}.pamd +Source2: %{name}.init +Source3: %{name}.sysconfig +Patch0: %{name}-config.patch +URL: http://dovecot.org/ +BuildRequires: autoconf +BuildRequires: automake +%{?with_sasl:BuildRequires: cyrus-sasl-devel >= 2.0} +BuildRequires: gettext-devel +%{?with_gssapi:BuildRequires: krb5-devel} +BuildRequires: libtool +%{?with_mysql:BuildRequires: mysql-devel} +%{?with_ldap:BuildRequires: openldap-devel >= 2.3.3} +BuildRequires: openssl-devel >= 0.9.7d +BuildRequires: pam-devel +BuildRequires: pkgconfig +%{?with_pgsql:BuildRequires: postgresql-devel} +BuildRequires: sed >= 4.0 +%{?with_sqlite:BuildRequires: sqlite3-devel} +Requires(post,preun): /sbin/chkconfig +Requires(postun): /usr/sbin/groupdel +Requires(postun): /usr/sbin/userdel +Requires(pre): /bin/id +Requires(pre): /usr/bin/getgid +Requires(pre): /usr/sbin/groupadd +Requires(pre): /usr/sbin/useradd +Requires: pam >= 0.79.0 +Provides: group(dovecot) +Provides: imapdaemon +Provides: user(dovecot) BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -26,49 +66,202 @@ your users are in /etc/passwd there's hardly anything you have to do. Dovecot should be pretty fast, mostly because of index files that Dovecot maintains; instead of having to scan through all the data in -mailbox, Dovecot can get most of the wanted information from index with -little effort. +mailbox, Dovecot can get most of the wanted information from index +with little effort. Status: - - should be quite ready for use with normal IMAP clients - - complete IMAP4rev1 support - - supports THREAD and SORT extensions, required by many IMAP webmails - - complete TLS/SSL support, using either GNUTLS or OpenSSL - - IPv6 ready - - shared mailboxes aren't yet supported - - Maildir++ quota isn't yet supported. Hard filesystem quota can also - be problematic. - - mbox support isn't yet perfect - there's a few more or less - theoretical problems, but nothing too bad. +- should be quite ready for use with normal IMAP clients +- complete IMAP4rev1 and POP3 support +- supports THREAD, SORT and IDLE extensions, required by many IMAP + webmails +- complete TLS/SSL support +- IPv6 ready +- shared mailboxes aren't yet supported +- Maildir++ quota is supported, bad hard filesystem quota can be + problematic + +%description -l pl.UTF-8 +Dovecot to serwer IMAP i POP3 dla systemów linuksowych/uniksowych, +pisany głównie z myślą o bezpieczeństwie. Chociaż jest pisany w C, +używa kilku technik kodowania zapobiegających większości popularnych +pułapek. + +Dovecot może działać ze standardowymi formatami mbox i maildir, jest +całkowicie kompatybilny z serwerami UW-IMAP i Courier IMAP, a także z +klientami pocztowymi bezpośrednio dostającymi się do skrzynek. +Planowana jest także obsługa przechowywania listów w bazach SQL. + +Dovecot jest łatwy do skonfigurowania i nie wymaga specjalnego +nadzoru. Wystarczy tylko doprowadzić do działania uwierzytelnianie - +jeśli użytkownicy są w /etc/passwd, to właściwie nie trzeba nic +zmieniać. + +Dovecot powinien być w miarę szybki, głównie z powodu plików +indeksowych utrzymywanych przez serwer; zamiast potrzeby skanowania +wszystkich danych w skrzynce, Dovecot może małym kosztem uzyskać +większość potrzebnych informacji z indeksu. + +Stan: +- powinien być gotowy do użycia ze zwykłymi klientami IMAP +- pełna obsługa IMAP4rev1 i POP3 +- obsługa rozszerzeń THREAD, SORT i IDLE, wymaganych przez wiele + webmaili IMAP +- obsługa IPv6 +- pełna obsługa TLS/SSL +- quota Maildir++ jest obsługiwana, ale twarda quota na systemach + plików może być problematyczna + +%package devel +Summary: Development package for dovecot plugins +Summary(pl.UTF-8): Pakiet programistyczny do tworzenia wtyczek dla dovecota +Group: Development/Libraries +# doesn't require base + +%description devel +Development package for dovecot plugins. + +%description devel -l pl.UTF-8 +Pakiet programistyczny do tworzenia wtyczek dla dovecota. %prep %setup -q +%patch0 -p1 + +%{__sed} -i 's,/usr/lib/dovecot,%{_libdir}/dovecot,g' dovecot-example.conf %build +touch config.rpath %{__libtoolize} %{__aclocal} %{__autoconf} %{__autoheader} %{__automake} -%configure +%configure \ + --disable-static \ + %{?debug:--enable-debug} \ + --enable-header-install \ + %{?with_ldap:--with-ldap} \ + %{?with_mysql:--with-mysql} \ + %{?with_pgsql:--with-pgsql} \ + %{?with_sasl:--with-cyrus-sasl2} \ + %{?with_sqlite:--with-sqlite} \ + %{?with_gssapi:--with-gssapi} \ + --with-ssl=openssl \ + --with-ssl-dir=/var/lib/openssl \ + --sysconfdir=/etc/%{name} %{__make} %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,sysconfig,security} +install -d $RPM_BUILD_ROOT{/var/lib/dovecot,/var/run/dovecot/login} %{__make} install \ + moduledir=%{_libdir}/%{name}/plugins \ DESTDIR=$RPM_BUILD_ROOT -mv -f $RPM_BUILD_ROOT%{_sysconfdir}/{dovecot-example.conf,dovecot.conf} +mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{dovecot-example.conf,dovecot.conf} + +install %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/%{name} +install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} +install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name} + +touch $RPM_BUILD_ROOT/etc/security/blacklist.imap + +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins{,/imap}/*.la + +# devel +for folder in deliver imap lib lib-imap lib-mail lib-storage; do + install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/$folder + install -p -m644 src/$folder/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/$folder/ +done +for dir in lib lib-imap lib-mail lib-storage; do + install -d $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/src/$dir + install -p -m644 src/$dir/*.a $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/src/$dir +done +mv $RPM_BUILD_ROOT%{_libdir}/%{name}/dovecot-config $RPM_BUILD_ROOT%{_libdir}/%{name}-devel + +rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name} %clean rm -rf $RPM_BUILD_ROOT +%pre +%groupadd -g 172 dovecot +%useradd -u 172 -d /usr/share/empty -s /bin/false -c "Dovecot server" -g dovecot dovecot + +%post +/sbin/chkconfig --add dovecot +if [ -f /var/lock/subsys/dovecot ]; then + /etc/rc.d/init.d/dovecot restart >&2 +else + echo "Run \"/etc/rc.d/init.d/dovecot start\" to start dovecot daemon." +fi + +%preun +if [ "$1" = "0" ]; then + if [ -f /var/lock/subsys/dovecot ]; then + /etc/rc.d/init.d/dovecot stop >&2 + fi + /sbin/chkconfig --del dovecot +fi + +%postun +if [ "$1" = "0" ]; then + %userremove dovecot + %groupremove dovecot +fi + +%triggerpostun -- dovecot < 1:1.1 +echo "Configuration change default_mail_env -> mail_location" +%{__sed} -i -e "s/^default_mail_env/mail_location/" /etc/dovecot/dovecot.conf + %files %defattr(644,root,root,755) # COPYING contains some notes, not actual LGPL text -%doc AUTHORS COPYING ChangeLog NEWS README TODO doc/*.txt doc/*.c*f -%attr(755,root,root) %{_sbindir}/dovecot -%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/dovecot.conf -%attr(755,root,root) %{_libdir}/dovecot +%doc AUTHORS COPYING ChangeLog NEWS README TODO doc/*.txt doc/*.c*f doc/wiki/*.txt +%attr(755,root,root) %{_sbindir}/%{name} +%attr(755,root,root) %{_sbindir}/%{name}pw +%attr(750,root,root) %dir %{_sysconfdir}/%{name} +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}-ldap-example.conf +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}-sql-example.conf +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/%{name} +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.imap +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} +%attr(754,root,root) /etc/rc.d/init.d/%{name} +%dir %{_libdir}/%{name} +%attr(755,root,root) %{_libdir}/%{name}/checkpassword-reply +%attr(755,root,root) %{_libdir}/%{name}/deliver +%attr(755,root,root) %{_libdir}/%{name}/dict +%attr(755,root,root) %{_libdir}/%{name}/dovecot-auth +%attr(755,root,root) %{_libdir}/%{name}/gdbhelper +%attr(755,root,root) %{_libdir}/%{name}/idxview +%attr(755,root,root) %{_libdir}/%{name}/imap +%attr(755,root,root) %{_libdir}/%{name}/imap-login +%attr(755,root,root) %{_libdir}/%{name}/convert-tool +%attr(755,root,root) %{_libdir}/%{name}/expire-tool +%attr(755,root,root) %{_libdir}/%{name}/listview +%attr(755,root,root) %{_libdir}/%{name}/logview +%attr(755,root,root) %{_libdir}/%{name}/maildirlock +%attr(755,root,root) %{_libdir}/%{name}/pop3 +%attr(755,root,root) %{_libdir}/%{name}/pop3-login +%attr(755,root,root) %{_libdir}/%{name}/rawlog +%attr(755,root,root) %{_libdir}/%{name}/ssl-build-param +%dir %{_libdir}/%{name}/plugins +%attr(755,root,root) %{_libdir}/%{name}/plugins/*.so +%dir %{_libdir}/%{name}/plugins/imap +%attr(755,root,root)%{_libdir}/%{name}/plugins/imap/*.so +%dir %{_libdir}/%{name}/plugins/lda +%attr(755,root,root) %{_libdir}/%{name}/plugins/lda/*.so +%dir %{_libdir}/%{name}/plugins/pop3 +%attr(755,root,root) %{_libdir}/%{name}/plugins/pop3/*.so +%dir /var/lib/dovecot +%dir /var/run/dovecot +%attr(750,root,dovecot) %dir /var/run/dovecot/login + +%files devel +%defattr(644,root,root,755) +%{_libdir}/%{name}-devel +%{_includedir}/%{name}