Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: mail-client/mutt/
Date: Tue, 13 Jul 2021 17:02:45
Message-Id: 1626195608.72e1f5979dc65231d78167eb47eceffae3077075.grobian@gentoo
1 commit: 72e1f5979dc65231d78167eb47eceffae3077075
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jul 13 06:46:53 2021 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Tue Jul 13 17:00:08 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72e1f597
7
8 mail-client/mutt-2.1.1: version bump
9
10 Package-Manager: Portage-3.0.20, Repoman-3.0.2
11 Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
12
13 mail-client/mutt/Manifest | 2 +
14 mail-client/mutt/mutt-2.1.1.ebuild | 261 +++++++++++++++++++++++++++++++++++++
15 2 files changed, 263 insertions(+)
16
17 diff --git a/mail-client/mutt/Manifest b/mail-client/mutt/Manifest
18 index 3fa7d2b8d85..10890bd1975 100644
19 --- a/mail-client/mutt/Manifest
20 +++ b/mail-client/mutt/Manifest
21 @@ -1,4 +1,6 @@
22 DIST mutt-2.0.7.tar.gz 5299366 BLAKE2B 587679d3580a55084312b4bd26083c85fb1b3d07b4a08ea5e2081f475d37a0e283ecfd647555519fc6deccb4bdfdd46234ede4669a9abc6fc2cde778f76bf656 SHA512 1eb689fb9e6aa3cf0bcd0b696c25477cd04b74d8ec93404df071de6dc051e46bbad88131cdf610eb01df4789984707f3791366ae2fda28de2d2739aeb9d34e30
23 DIST mutt-2.1.0.tar.gz 5405519 BLAKE2B cb7c08f6a27376abed26a208f7c3a756046cfdf40967dd8222aec3655e33ae85e2a450ddf98ff454601b19e6672c1168a8d19e479f15745213dc971e250de688 SHA512 b4bcbb9d02712f211e2cb1542e1e8a5e09648fc22f724ff771f1e99d2016fb258d64d3384740427c9fe731cff8817f633f0034329ad2d7dd505b0689ccc9499c
24 +DIST mutt-2.1.1.tar.gz 5406187 BLAKE2B c27bae8d4a050026282cd373e747d6406cbbc3c6bbc3f2463580ec76ad104629e6429d68a70f59e570c9b2d4b53c8a92d767fd53746e251a0713a920df5c29ff SHA512 8ae69353b820d97186996aec83a77722f4e0a45f881e1893ab93a2f183baf9087c0d3d7ff0d1596853617be27670cc36a2fa88b141860080e7ffd47d59ddb1a8
25 DIST mutt-gentoo-2.0.7-patches-r0.tar.xz 26416 BLAKE2B dd03fd2a29f4c2e8681c4413ca430b65beb2036b73fa95430f5f06e7c2948fb4e3256be89d922646731245672cb2900d6b7ce6bda16cb9306d5531064cfaf8a1 SHA512 cb72df8f6fa3436f134f66772f82ba95ebc92462cf145d21e01ad5b277f13294948c1d03c9c6671e58c655776a6112f2af065df79a56a135ab70c28b37e43334
26 DIST mutt-gentoo-2.1.0-patches-r0.tar.xz 25928 BLAKE2B 8b16e856ef4c19d5f9e10d747390f03b3b26619671999ef9a39c222496da9976fc82362f15168dc1913480dbe1ffce33847ee7df1d6f1a1df6e8fff2697f3c45 SHA512 8b95be60b8fbbe9c1faf861e483b7627ccb2e5db97c6b18c6017d5aa6bb3d49b791a5c2aa3bf1fa2f1342690f5c81a887f4fbef25fa7d649cf182187c15fa663
27 +DIST mutt-gentoo-2.1.1-patches-r0.tar.xz 25880 BLAKE2B 21092f17f7d4b96c9f7b50afc620995ffae0cdb382fbe73d91252105db0989bdb9208e48d031e127fce2431e637af537ab216bb4a1c6c20b402c58282ab93dd1 SHA512 69ca83a62b2b8a7461aae4f1e78cdec3b315d635716ff89f9a37db36fcf57b5323d459c9ad4885978018076118da62901a5f79ac29709e9e7dfddd2570c90c64
28
29 diff --git a/mail-client/mutt/mutt-2.1.1.ebuild b/mail-client/mutt/mutt-2.1.1.ebuild
30 new file mode 100644
31 index 00000000000..28cffe8c94b
32 --- /dev/null
33 +++ b/mail-client/mutt/mutt-2.1.1.ebuild
34 @@ -0,0 +1,261 @@
35 +# Copyright 1999-2021 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI="7"
39 +
40 +inherit flag-o-matic autotools
41 +
42 +PATCHREV="r0"
43 +PATCHSET="gentoo-${PVR}/${PATCHREV}"
44 +
45 +DESCRIPTION="A small but very powerful text-based mail client"
46 +HOMEPAGE="http://www.mutt.org/"
47 +MUTT_G_PATCHES="mutt-gentoo-${PV}-patches-${PATCHREV}.tar.xz"
48 +SRC_URI="ftp://ftp.mutt.org/pub/mutt/${P}.tar.gz
49 + https://bitbucket.org/${PN}/${PN}/downloads/${P}.tar.gz
50 + https://dev.gentoo.org/~grobian/distfiles/${MUTT_G_PATCHES}"
51 +IUSE="autocrypt berkdb debug doc gdbm gnutls gpgme +hcache idn +imap kerberos +lmdb mbox nls pgp-classic pop qdbm +sasl selinux slang smime-classic +smtp +ssl tokyocabinet vanilla prefix"
52 +# hcache: allow multiple, bug #607360
53 +REQUIRED_USE="
54 + hcache? ( || ( berkdb gdbm lmdb qdbm tokyocabinet ) )
55 + imap? ( ssl )
56 + pop? ( ssl )
57 + smime-classic? ( ssl !gnutls )
58 + smtp? ( ssl sasl )
59 + sasl? ( || ( imap pop smtp ) )
60 + kerberos? ( || ( imap pop smtp ) )
61 + autocrypt? ( gpgme )"
62 +SLOT="0"
63 +LICENSE="GPL-2"
64 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
65 +# yes, we overdepend on the backend impls here, hopefully one day we can
66 +# have REQUIRED_USE do what it is made for again. bug #607360
67 +CDEPEND="
68 + app-misc/mime-types
69 + virtual/libiconv
70 +
71 + berkdb? ( >=sys-libs/db-4:= )
72 + gdbm? ( sys-libs/gdbm )
73 + lmdb? ( dev-db/lmdb:= )
74 + qdbm? ( dev-db/qdbm )
75 + tokyocabinet? ( dev-db/tokyocabinet )
76 +
77 + ssl? (
78 + gnutls? ( >=net-libs/gnutls-1.0.17:= )
79 + !gnutls? ( >=dev-libs/openssl-0.9.6:0= )
80 + )
81 +
82 + nls? ( virtual/libintl )
83 + sasl? ( >=dev-libs/cyrus-sasl-2 )
84 + kerberos? ( virtual/krb5 )
85 + idn? ( net-dns/libidn2 )
86 + gpgme? ( >=app-crypt/gpgme-0.9.0:= )
87 + autocrypt? ( >=dev-db/sqlite-3 )
88 + slang? ( sys-libs/slang )
89 + !slang? ( >=sys-libs/ncurses-5.2:0= )
90 +"
91 +DEPEND="${CDEPEND}
92 + net-mail/mailbase
93 + doc? (
94 + dev-libs/libxml2
95 + dev-libs/libxslt
96 + app-text/docbook-xsl-stylesheets
97 + || ( www-client/lynx www-client/w3m www-client/elinks )
98 + )"
99 +RDEPEND="${CDEPEND}
100 + selinux? ( sec-policy/selinux-mutt )
101 + smime-classic? ( >=dev-libs/openssl-0.9.6:0 )
102 + pgp-classic? ( app-crypt/gnupg )
103 +"
104 +
105 +src_prepare() {
106 + local PATCHDIR="${WORKDIR}"/mutt-gentoo-${PV}-patches-${PATCHREV}
107 +
108 + if use !vanilla ; then
109 + # apply patches
110 + # http://hg.code.sf.net/p/gentoomuttpatches/code/file/mutt-1.10
111 + local patches=(
112 + patches-mutt
113 + bugs-gentoo
114 + features-common
115 + features-extra
116 + gentoo
117 + )
118 + local patchset p
119 + for patchset in "${patches[@]}" ; do
120 + [[ -d "${PATCHDIR}/${patchset}" ]] || continue
121 + einfo "Patches for ${PATCHSET} patchset ${patchset}"
122 + for p in "${PATCHDIR}/${patchset}"/*.patch ; do
123 + eapply "${p}" || die
124 + done
125 + done
126 + # add some explanation as to why not to go upstream
127 + sed -i \
128 + -e '/ReachingUs = N_(/aThis release of Mutt is heavily enriched with patches.\\nFor this reason, any bugs are better reported at https://bugs.gentoo.org/\\nor re-emerge with USE=vanilla and try to reproduce your problem.\\n\\' \
129 + main.c || die "Failed to add bug instructions"
130 + fi
131 +
132 + local upatches=
133 + # allow user patches
134 + eapply_user && upatches=" with user patches"
135 +
136 + # patch version string for bug reports
137 + local patchset=
138 + use vanilla || patchset=", ${PATCHSET}"
139 + sed -i -e 's|"Mutt %s (%s)"|"Mutt %s (%s'"${patchset}${upatches}"')"|' \
140 + muttlib.c || die "failed patching in Gentoo version"
141 +
142 + # many patches touch the buildsystem, we always need this
143 + AT_M4DIR="m4" eautoreconf
144 +
145 + # the configure script contains some "cleverness" whether or not to setgid
146 + # the dotlock program, resulting in bugs like #278332
147 + sed -i -e 's/@DOTLOCK_GROUP@//' Makefile.in || die "sed failed"
148 +}
149 +
150 +src_configure() {
151 + local myconf=(
152 + # signing and encryption
153 + $(use_enable autocrypt) $(use_with autocrypt sqlite3)
154 + $(use_enable pgp-classic pgp)
155 + $(use_enable smime-classic smime)
156 + $(use_enable gpgme)
157 +
158 + # features
159 + $(use_enable debug)
160 + $(use_enable doc)
161 + $(use_enable nls)
162 +
163 + # protocols
164 + $(use_enable imap)
165 + $(use_enable pop)
166 + $(use_enable smtp)
167 +
168 + $(use ssl && use gnutls && echo --with-gnutls --without-ssl)
169 + $(use ssl && use !gnutls && echo --without-gnutls --with-ssl )
170 + $(use !ssl && echo --without-gnutls --without-ssl)
171 +
172 + $(use_with sasl)
173 + $(use_with idn idn2) --without-idn # avoid automagic libidn dep
174 + $(use_with kerberos gss)
175 + "$(use slang && echo --with-slang="${EPREFIX}"/usr || echo a=b)"
176 + "$(use_with !slang curses "${EPREFIX}"/usr)"
177 +
178 + "--enable-compressed"
179 + "--enable-external-dotlock"
180 + "--enable-iconv"
181 + "--enable-nfs-fix"
182 + "--enable-sidebar"
183 + "--sysconfdir=${EPREFIX}/etc/${PN}"
184 + "--with-docdir=${EPREFIX}/usr/share/doc/${PN}-${PVR}"
185 + "--without-bundled-regex" # use the implementation from libc
186 + "--with-exec-shell=${EPREFIX}/bin/sh"
187 + )
188 +
189 + if [[ ${CHOST} == *-solaris2.* && ${CHOST#*-solaris2.} -le 10 ]] ; then
190 + # arrows in index view do not show when using wchar_t
191 + # or misalign due to wrong computations
192 + myconf+=( "--without-wc-funcs" )
193 + fi
194 +
195 + # note: REQUIRED_USE should have selected only one of these, but for
196 + # bug #607360 we're forced to allow multiple. For that reason, this
197 + # list is ordered to preference, and only the first is taken.
198 + local hcaches=(
199 + "lmdb"
200 + "qdbm"
201 + "tokyocabinet"
202 + "gdbm"
203 + "berkdb:bdb"
204 + )
205 + local ucache hcache lcache
206 + for hcache in "${hcaches[@]}" ; do
207 + if use ${hcache%%:*} ; then
208 + ucache=${hcache}
209 + break
210 + fi
211 + done
212 + if [[ -n ${ucache} ]] ; then
213 + myconf+=( "--enable-hcache" )
214 + else
215 + myconf+=( "--disable-hcache" )
216 + fi
217 + for hcache in "${hcaches[@]}" ; do
218 + [[ ${hcache} == ${ucache} ]] \
219 + && myconf+=( "--with-${hcache#*:}" ) \
220 + || myconf+=( "--without-${hcache#*:}" )
221 + done
222 +
223 + if use mbox; then
224 + myconf+=( "--with-mailpath=${EPREFIX}/var/spool/mail" )
225 + else
226 + myconf+=( "--with-homespool=Maildir" )
227 + fi
228 +
229 + econf "${myconf[@]}"
230 +}
231 +
232 +src_install() {
233 + emake DESTDIR="${D}" install
234 + insinto /etc/${PN}
235 + if use mbox; then
236 + newins "${FILESDIR}"/Muttrc.mbox Muttrc
237 + else
238 + doins "${FILESDIR}"/Muttrc
239 + fi
240 +
241 + # include attachment settings, it's mandatory and shouldn't harm
242 + # when not being referenced (index_format using %X)
243 + {
244 + echo
245 + echo "# mandatory attachments settings, not setting these is a BUG!"
246 + echo "# see https://marc.info/?l=mutt-dev&m=158347284923517&w=2"
247 + grep '^attachments' "${ED}"/etc/${PN}/Muttrc.dist
248 + } >> "${ED}"/etc/${PN}/Muttrc
249 +
250 + # add setting to actually enable gpgme usage
251 + if use gpgme || use autocrypt ; then
252 + {
253 + echo
254 + echo "# this setting enables the gpgme backend (via USE=gpgme)"
255 + # https is broken due to a certificate mismatch :(
256 + echo "# see http://www.mutt.org/doc/manual/#crypt-use-gpgme"
257 + echo "set crypt_use_gpgme = yes"
258 + } >> "${ED}"/etc/${PN}/Muttrc
259 + fi
260 +
261 + # similar for autocrypt
262 + if use autocrypt ; then
263 + {
264 + echo
265 + echo "# enables autocrypt (via USE=autocrypt)"
266 + echo "# see http://www.mutt.org/doc/manual/#autocryptdoc"
267 + echo "set autocrypt = yes"
268 + } >> "${ED}"/etc/${PN}/Muttrc
269 + fi
270 +
271 + # A newer file is provided by app-misc/mime-types. So we link it.
272 + rm "${ED}"/etc/${PN}/mime.types
273 + dosym ../mime.types /etc/${PN}/mime.types
274 +
275 + # nuke manpages that should be provided by an MTA, bug #177605
276 + rm "${ED}"/usr/share/man/man5/{mbox,mmdf}.5 \
277 + || ewarn "failed to remove files, please file a bug"
278 +
279 + if use !prefix ; then
280 + fowners root:mail /usr/bin/mutt_dotlock
281 + fperms g+s /usr/bin/mutt_dotlock
282 + fi
283 +
284 + dodoc COPYRIGHT ChangeLog NEWS OPS* PATCHES README* TODO VERSION
285 +}
286 +
287 +pkg_postinst() {
288 + if [[ -z ${REPLACING_VERSIONS} ]] ; then
289 + echo
290 + elog "If you are new to mutt you may want to take a look at"
291 + elog "the Gentoo QuickStart Guide to Mutt E-Mail:"
292 + elog " https://wiki.gentoo.org/wiki/Mutt"
293 + echo
294 + fi
295 +}