#
+# TODO:
+# - finish -folder_columns.patch
+#
# Conditional build:
%bcond_with slang # use slang library instead of ncurses
%bcond_with nntp # use VVV's NNTP patch
-%bcond_with esmtp # use esmtp patch
%bcond_with folder_column # build with folder_column patch
+%bcond_with imap_recent # show IMAP RECENT messages as new (instead of UNSEEN)
%bcond_without sasl # don't use sasl
%bcond_without home_etc # don't use home_etc
#
Summary(tr.UTF-8): Mutt elektronik posta programı
Summary(uk.UTF-8): Поштова клієнтська програма Mutt
Name: mutt
-Version: 1.4.2.2
-Release: 1
+Version: 1.5.19
+Release: 2
Epoch: 6
-License: GPL
+License: GPL v2+
Group: Applications/Mail
-Source0: ftp://ftp.mutt.org/mutt/%{name}-%{version}i.tar.gz
-# Source0-md5: 51a08429c5bd5c34af3f4268b8cbcda3
+Source0: ftp://ftp.mutt.org/mutt/devel/%{name}-%{version}.tar.gz
+# Source0-md5: 73b3747bc7f7c805921e8d24ebac693f
Source1: %{name}.desktop
Source2: %{name}.png
Source3: %{name}.1.pl
-Patch0: %{name}-paths.patch
+Patch0: %{name}-pl.po-update.patch
Patch1: %{name}-forcedotlock.patch
-Patch2: %{name}-muttbug-tmp.patch
-Patch3: %{name}-rr.compressed.patch
-Patch4: %{name}-cd.edit_threads.patch
-Patch5: %{name}-bj.status-time.patch
-Patch6: %{name}-devl.narrow_tree.patch
-Patch7: %{name}-vvv.quote.gz
-Patch8: %{name}-null_name.patch
-Patch9: %{name}-cd.trash_folder.patch
-Patch10: %{name}-cd.purge_message.patch
-Patch11: %{name}-cd.signatures_menu.patch
-Patch12: %{name}-folder_columns.patch
-Patch13: %{name}-nr.tag_prefix_cond.patch
-Patch14: %{name}-pgp_hook.patch
-Patch15: %{name}-manual.patch
-Patch16: %{name}-send_charset.patch
-Patch17: %{name}-xface.patch
-Patch18: %{name}-sasl2.patch
-Patch19: %{name}-nntp.patch
-Patch20: %{name}-esmtp.patch
-Patch21: %{name}-home_etc.patch
-Patch22: %{name}-kill_warnings.patch
-Patch23: %{name}-Muttrc_mbox_path.patch
-Patch24: %{name}-po.patch
-Patch25: %{name}-sasl-fixes.patch
+# http://mutt.org.ua/download/
+Patch2: %{name}-rr.compressed.patch
+Patch3: %{name}-bj.status-time.patch
+# http://mutt.org.ua/download/
+Patch4: %{name}-vvv.quote.patch
+Patch5: %{name}-null_name.patch
+Patch6: %{name}-cd.trash_folder.patch
+Patch7: %{name}-cd.purge_message.patch
+Patch8: %{name}-cd.signatures_menu.patch
+# http://www.mutt.ca/patches/ (dw.crypt-autoselectkey)
+Patch9: %{name}-crypt-autoselectkey.patch
+# http://www.mutt.ca/patches/ (dw.crypt-hook-both)
+Patch10: %{name}-pgp_hook.patch
+Patch11: %{name}-manual.patch
+Patch12: %{name}-xface.patch
+Patch13: %{name}-Muttrc_mbox_path.patch
+Patch14: %{name}-po.patch
+# http://mutt.org.ua/download/
+Patch15: %{name}-vvv.nntp.patch
+Patch16: %{name}-home_etc.patch
+Patch17: %{name}-Muttrc.patch
+Patch18: %{name}-muttbug-tmp.patch
+Patch19: %{name}-folder_columns.patch
+Patch20: %{name}-imap_mxcmp.patch
+Patch21: %{name}-imap_recent.patch
+Patch22: %{name}-Muttrc.head.patch
+Patch23: %{name}-smime.rc.patch
URL: http://www.mutt.org/
-%{!?with_slang:BuildRequires: ncurses-devel >= 5.4-0.7}
BuildRequires: autoconf
BuildRequires: automake
%{?with_sasl:BuildRequires: cyrus-sasl-devel >= 2.1.0}
-BuildRequires: gettext-devel
-BuildRequires: groff
+BuildRequires: db-devel >= 4.0
+BuildRequires: docbook-dtd42-xml
+BuildRequires: docbook-style-xsl
%{?with_home_etc:BuildRequires: home-etc-devel >= 1.0.8}
-%{?with_esmtp:BuildRequires: libesmtp-devel}
+BuildRequires: gettext-devel
+BuildRequires: gpgme-devel >= 1:1.1.0
+BuildRequires: libidn-devel
+BuildRequires: lynx
+%{!?with_slang:BuildRequires: ncurses-devel >= 5.0}
BuildRequires: openssl-devel >= 0.9.7d
-BuildRequires: sgml-tools >= 1.0.9-20
-BuildRequires: sgml-tools-dtd
%{?with_slang:BuildRequires: slang-devel}
-%{?with_home_etc:Requires: home-etc >= 1.0.8}
+BuildRequires: libxslt-progs
Requires: iconv
-Requires: mailcap
+%{?with_home_etc:Requires: home-etc >= 1.0.8}
+Suggests: mailcap
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define specflags_ia32 -fomit-frame-pointer
+%define specflags_ia32 -fomit-frame-pointer
%description
Mutt is a small but very poweful full-screen Unix mail client.
експериментальну) підтримку NNTP.
%prep
-%setup -q -n %{name}-%(echo %{version} | sed 's/i$//')
+%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
-# breaks display if arrow_cursor is set
-%{?with_folder_column:%patch12 -p1}
-# disabled - changes default behaviour
-##%patch13 -p0
+%patch12 -p1
+%patch13 -p1
%patch14 -p1
-%patch15 -p1
-%patch16 -p1
+%{?with_nntp:%patch15 -p1}
+%{?with_home_etc:%patch16 -p1}
%patch17 -p1
-%{?with_sasl:%patch18 -p1}
-%{?with_nntp:%patch19 -p1}
-%{?with_esmtp:%patch20 -p1}
-%{?with_home_etc:%patch21 -p1}
+%patch18 -p1
+# breaks display if arrow_cursor is set
+%{?with_folder_column:%patch19 -p1}
+%patch20 -p1
+%{?with_imap_recent:%patch21 -p1}
%patch22 -p1
%patch23 -p1
-%patch24 -p1
-%patch25 -p1
# force regeneration (manual.sgml is modified by some patches)
rm -f doc/{manual*.html,manual.txt}
%{__autoheader}
%{__automake}
%configure \
- --%{?debug:en}%{!?debug:dis}able-debug \
- %{!?with_slang:--with-curses} \
- %{?with_slang:--with-slang} \
+ mutt_cv_groupwrite=yes \
+ mutt_cv_worldwrite=no \
+ %{!?debug:--disable-debug} %{?debug:--enable-debug} \
+ --disable-warnings \
--enable-compressed \
--enable-external-dotlock \
+ --enable-gpgme \
+ --enable-hcache \
--enable-imap \
- --without-included-gettext \
--enable-mailtool \
- --with-mixmaster \
- --enable-pop \
%{?with_nntp:--enable-nntp} \
- --with-regex \
- --with%{!?with_sasl:out}-sasl \
- --with%{!?with_home_etc:out}-home-etc \
- %{?with_esmtp:--enable-libesmtp --with-libesmtp=/usr} \
- --with-ssl \
- --disable-warnings \
+ --enable-pop \
+ --enable-smtp \
+ --with-bdb=/usr \
+ --without-gdbm \
+ %{!?with_slang:--with-curses} \
--with-docdir=%{_docdir}/%{name} \
- --with-homespool=Maildir \
+ %{?with_home_etc:--with-home-etc} \
--with-mailpath=/var/mail \
- --with-sharedir=%{_datadir} \
- --prefix=%{_prefix} \
- --bindir=%{_bindir} \
- --datadir=%{_datadir} \
- --mandir=%{_mandir} \
- --sysconfdir=%{_sysconfdir}
+ --with-mixmaster \
+ --with-regex \
+ %{?with_sasl:--with-sasl} \
+ %{?with_slang:--with-slang} \
+ --with-ssl
+%{__make} -j1 -C doc
%{__make}
-%{__make} manual.txt -C doc
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},%{_mandir}/pl/man1}
+install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},%{_mandir}/pl/man1} \
+ $RPM_BUILD_ROOT%{_sysconfdir}/Muttrc.d
%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+ DESTDIR=$RPM_BUILD_ROOT \
+ DOTLOCK_GROUP=
-%{__patch} -p0 -d $RPM_BUILD_ROOT%{_sysconfdir} < %{PATCH16}
+%{__patch} -p2 -d $RPM_BUILD_ROOT%{_sysconfdir} < %{PATCH17}
+
+install contrib/gpg.rc $RPM_BUILD_ROOT%{_sysconfdir}/Muttrc.d
+install contrib/smime.rc $RPM_BUILD_ROOT%{_sysconfdir}/Muttrc.d
+install contrib/colors.linux $RPM_BUILD_ROOT%{_sysconfdir}/Muttrc.d/colors.rc
install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
install %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/pl/man1
+cat <<'EOF' >$RPM_BUILD_ROOT%{_bindir}/mutt_source-muttrc.d
+#!/bin/sh -e
+for rc in /etc/Muttrc.d/*.rc; do
+ [ ! -r "$rc" ] || echo "source \"$rc\""
+done
+EOF
+
# keep manual.txt.gz, the rest is installed as %doc
rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/[!m]*
gzip -9nf $RPM_BUILD_ROOT%{_docdir}/%{name}/manual.txt
# conflict with qmail
rm -f $RPM_BUILD_ROOT%{_mandir}/man5/mbox.5*
-rm -f $RPM_BUILD_ROOT%{_sysconfdir}/mime.types
+rm -f $RPM_BUILD_ROOT/etc/mime.types
%find_lang %{name}
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc contrib/{*rc*,*cap*} ChangeLog README TODO NEWS README.SECURITY README.SSL README.xface %{?with_esmtp:Muttrc.esmtp}
-%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/Muttrc
+%doc contrib/{*rc*,*cap*} ChangeLog README TODO NEWS README.SECURITY README.SSL README.xface
+%dir %{_sysconfdir}/Muttrc.d
+%config(noreplace,missingok) %verify(not md5 size mtime) %{_sysconfdir}/Muttrc
+%config(noreplace,missingok) %verify(not md5 size mtime) %{_sysconfdir}/Muttrc.d/*.rc
%attr(755,root,root) %{_bindir}/mutt
+%attr(755,root,root) %{_bindir}/mutt_source-muttrc.d
%attr(755,root,root) %{_bindir}/flea
%attr(755,root,root) %{_bindir}/muttbug
%attr(755,root,root) %{_bindir}/pgp*
+%attr(755,root,root) %{_bindir}/smime_keys
%attr(2755,root,mail) %{_bindir}/mutt_dotlock
%{_docdir}/%{name}