public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Nicolas Bock <nicolasbock@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] New package neomutt
Date: Thu, 10 Aug 2017 06:37:53 +0200	[thread overview]
Message-ID: <20170810043753.pr2o5rk7ilwenyjg@rubberducky.suse.de> (raw)
In-Reply-To: <20170731083453.GI8732@patriceclement.me>

[-- Attachment #1: Type: text/plain, Size: 8546 bytes --]

On Mon, Jul 31, 2017 at 10:34:53AM +0200, Patrice Clement wrote:
>Hi Nicolas
>
>See my comments inline.
>
>Monday 31 Jul 2017 09:23:51, Nicolas Bock wrote :
>> On Mon, Jul 31, 2017 at 09:11:19AM +0200, Nicolas Bock wrote:
>> >Hi,
>> >
>> >I would like to add neomutt to the tree. This new package is meant as
>> >an alternative and not a replacement of the existing mutt package.
>>
>> I should have inlined the patch. Sorry.
>>
>>
>>
>> From 63f5d569aec514d67645b1c2e891e51810bb7ab5 Mon Sep 17 00:00:00 2001
>> From: Nicolas Bock <nicolasbock@gentoo.org>
>> Date: Mon, 31 Jul 2017 09:06:07 +0200
>> Subject: [PATCH] mail-client/neomutt: New package mail-client/neomutt-20170714
>>
>> Package-Manager: Portage-2.3.6, Repoman-2.3.1
>> ---
>>  mail-client/neomutt/Manifest                |   1 +
>>  mail-client/neomutt/metadata.xml            |  24 +++++
>>  mail-client/neomutt/neomutt-20170714.ebuild | 161 ++++++++++++++++++++++++++++
>>  3 files changed, 186 insertions(+)
>>  create mode 100644 mail-client/neomutt/Manifest
>>  create mode 100644 mail-client/neomutt/metadata.xml
>>  create mode 100644 mail-client/neomutt/neomutt-20170714.ebuild
>>
>> diff --git a/mail-client/neomutt/Manifest b/mail-client/neomutt/Manifest
>> new file mode 100644
>> index 00000000000..2b38484e24d
>> --- /dev/null
>> +++ b/mail-client/neomutt/Manifest
>> @@ -0,0 +1 @@
>> +DIST neomutt-20170714.tar.gz 2509160 SHA256 40d48920f95ca49ab96eb109b658f5cf6e1c222320c58bdd03769c1355d7a383 SHA512 eb31d2f23b7211904cd66ba293c008f953778b37f13fd09d4db571d013f1c8e6449fccd827872f3ad0a2c8e62555f92b3f9591a1f0f4ac37ab362a4681abaaa0 WHIRLPOOL 455495501a2ab1989d5f3bfa75aa2370896956cdfd7d2e852e225c96aa23a1abdaf2dbb9d886d1d96486d19b2b38c225e8263f268ebafcef8cbd0024885189f3
>> diff --git a/mail-client/neomutt/metadata.xml b/mail-client/neomutt/metadata.xml
>> new file mode 100644
>> index 00000000000..081f253b3a1
>> --- /dev/null
>> +++ b/mail-client/neomutt/metadata.xml
>> @@ -0,0 +1,24 @@
>> +<?xml version="1.0" encoding="UTF-8"?>
>> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
>> +<pkgmetadata>
>> +	<maintainer type="person">
>> +		<email>nicolasbock@gentoo.org</email>
>> +		<name>Nicolas Bock</name>
>> +	</maintainer>
>> +	<maintainer type="project">
>> +		<email>net-mail@gentoo.org</email>
>> +		<name>Net-Mail</name>
>> +	</maintainer>
>> +	<use>
>> +		<flag name="gpg">Enable support for <pkg>app-crypt/gpgme</pkg></flag>
>> +		<flag name="notmuch">Enable support for <pkg>net-mail/notmuch</pkg></flag>
>> +		<flag name="smime">Enable support for S/MIME</flag>
>> +		<flag name="tokyocabinet">Enable <pkg>dev-db/tokyocabinet</pkg>
>> +			database backend for header caching</flag>
>> +	</use>
>> +	<longdescription lang="en">
>> +	</longdescription>
>> +	<upstream>
>> +		<remote-id type="github">neomutt/neomutt</remote-id>
>> +	</upstream>
>> +</pkgmetadata>
>> diff --git a/mail-client/neomutt/neomutt-20170714.ebuild b/mail-client/neomutt/neomutt-20170714.ebuild
>> new file mode 100644
>> index 00000000000..9bcf72e7479
>> --- /dev/null
>> +++ b/mail-client/neomutt/neomutt-20170714.ebuild
>> @@ -0,0 +1,161 @@
>> +# Copyright 1999-2017 Gentoo Foundation
>> +# Distributed under the terms of the GNU General Public License v2
>> +# $Id$
>> +
>> +EAPI=6
>> +
>> +inherit autotools eutils flag-o-matic
>> +
>> +DESCRIPTION="A small but very powerful text-based mail client"
>> +HOMEPAGE="https://www.neomutt.org/"
>> +SRC_URI="https://github.com/${PN}/${PN}/archive/${P}.tar.gz"
>> +
>> +LICENSE="GPL-2"
>> +SLOT="0"
>> +KEYWORDS="~amd64 ~x86"
>> +IUSE="berkdb crypt debug doc gdbm gnutls gpg idn kerberos libressl mbox nls
>> +	notmuch qdbm sasl selinux slang smime ssl tokyocabinet vanilla"
>> +
>> +CDEPEND="
>> +	!mail-client/mutt
>> +	app-misc/mime-types
>> +	nls? ( virtual/libintl )
>> +	tokyocabinet?  ( dev-db/tokyocabinet )
>> +	!tokyocabinet? (
>> +		qdbm?  ( dev-db/qdbm )
>> +		!qdbm? (
>> +			gdbm?  ( sys-libs/gdbm )
>> +			!gdbm? ( berkdb? ( >=sys-libs/db-4:= ) )
>> +		)
>> +	)
>> +	gnutls?  ( >=net-libs/gnutls-1.0.17 )
>> +	!gnutls? (
>> +		ssl? (
>> +			!libressl? ( >=dev-libs/openssl-0.9.6:0 )
>> +			libressl? ( dev-libs/libressl )
>> +		)
>> +	)
>> +	sasl?    ( >=dev-libs/cyrus-sasl-2 )
>> +	kerberos? ( virtual/krb5 )
>> +	idn?     ( net-dns/libidn )
>> +	gpg?     ( >=app-crypt/gpgme-0.9.0 )
>> +	smime?   (
>> +		!libressl? ( >=dev-libs/openssl-0.9.6:0 )
>> +		libressl? ( dev-libs/libressl )
>> +	)
>> +	notmuch? ( net-mail/notmuch )
>> +	slang? ( sys-libs/slang )
>> +	!slang? ( >=sys-libs/ncurses-5.2:0 )
>> +"
>> +DEPEND="${CDEPEND}
>> +	net-mail/mailbase
>> +	doc? (
>> +		dev-libs/libxml2
>> +		dev-libs/libxslt
>> +		app-text/docbook-xsl-stylesheets
>> +		|| ( www-client/lynx www-client/w3m www-client/elinks )
>> +	)"
>> +RDEPEND="${CDEPEND}
>> +	selinux? ( sec-policy/selinux-mutt )
>> +"
>> +
>> +S="${WORKDIR}/${PN}-${P}"
>> +
>> +src_prepare() {
>> +	eapply_user
>> +	eautoreconf
>> +}
>> +
>> +src_configure() {
>> +	local myconf=(
>> +		"$(use_enable crypt pgp)"
>> +		"$(use_enable debug)"
>> +		"$(use_enable doc)"
>> +		"$(use_enable gpg gpgme)"
>> +		"$(use_enable nls)"
>> +		"$(use_enable smime)"
>> +		"$(use_enable notmuch)"
>> +		"$(use_with idn)"
>> +		"$(use_with kerberos gss)"
>> +		"--with-$(use slang && echo slang || echo curses)=${EPREFIX}/usr"
>> +		"--sysconfdir=${EPREFIX}/etc/${PN}"
>> +		"--with-docdir=${EPREFIX}/usr/share/doc/${PN}-${PVR}"
>> +	)
>> +
>> +	if [[ ${CHOST} == *-solaris* ]] ; then
>> +		# arrows in index view do not show when using wchar_t
>> +		myconf+=( "--without-wc-funcs" )
>> +	fi
>> +
>> +	# mutt prioritizes gdbm over bdb, so we will too.
>> +	# hcache feature requires at least one database is in USE.
>> +	local hcaches=(
>> +		"tokyocabinet"
>> +		"qdbm"
>> +		"gdbm"
>> +		"berkdb:bdb"
>> +	)
>> +	local ucache hcache lcache
>> +	for hcache in "${hcaches[@]}" ; do
>> +		if use ${hcache%%:*} ; then
>> +			ucache=${hcache}
>> +			break
>> +		fi
>> +	done
>> +	for hcache in "${hcaches[@]}" ; do
>> +		[[ ${hcache} == ${ucache} ]] \
>> +			&& myconf+=( "--with-${hcache#*:}" ) \
>> +			|| myconf+=( "--without-${hcache#*:}" )
>> +	done
>Can you simplify this code a little?

Fixed.

>> +
>> +	# there's no need for gnutls, ssl or sasl without socket support
>> +	if use gnutls; then
>> +		myconf+=( "--with-gnutls" )
>> +	elif use ssl; then
>> +		myconf+=( "--with-ssl" )
>> +	fi
>> +	# not sure if this should be mutually exclusive with the other two
>> +	myconf+=( "$(use_with sasl)" )
>> +
>> +	if use mbox; then
>> +		myconf+=( "--with-mailpath=${EPREFIX}/var/spool/mail" )
>> +	else
>> +		myconf+=( "--with-homespool=Maildir" )
>> +	fi
>> +
>> +	econf "${myconf[@]}" || die "configure failed"
>econf dies on its own, please nix || die.

Fixed.

>> +}
>> +
>> +src_install() {
>> +	emake DESTDIR="${D}" install || die "install failed"
>> +	if use mbox; then
>> +		insinto /etc/neomutt
>> +		newins "${FILESDIR}"/Muttrc.mbox Muttrc
>> +	else
>> +		insinto /etc/neomutt
>> +		doins "${FILESDIR}"/Muttrc
>> +	fi
>> +
>> +	# A newer file is provided by app-misc/mime-types. So we link it.
>> +	rm "${ED}"/etc/${PN}/mime.types
>Please append || die here.

Fixed.

>> +	dosym /etc/mime.types /etc/${PN}/mime.types
>> +
>> +	# A man-page is always handy, so fake one
>> +	if use !doc; then
>> +		emake -C doc DESTDIR="${D}" muttrc.man || die
>emake dies on its own.

Fixed.

>> +		# make the fake slightly better, bug #413405
>> +		sed -e 's#@docdir@/manual.txt#http://www.mutt.org/doc/devel/manual.html#' \
>> +			-e 's#in @docdir@,#at http://www.mutt.org/,#' \
>> +			-e "s#@sysconfdir@#${EPREFIX}/etc/${PN}#" \
>> +			-e "s#@bindir@#${EPREFIX}/usr/bin#" \
>> +			doc/mutt.man > mutt.1
>Ditto, append || die here as well.

Fixed.

>> +		cp doc/muttrc.man muttrc.5
>Ditto.

Fixed.

>> +		doman mutt.1 muttrc.5
>> +	else
>> +		# nuke manpages that should be provided by an MTA, bug #177605
>> +		rm "${ED}"/usr/share/man/man5/{mbox,mmdf}.5 \
>> +			|| ewarn "failed to remove files, please file a bug"
>> +	fi
>> +
>> +	dodoc COPYRIGHT ChangeLog.md OPS* README*
>> +}
>> --
>> 2.13.0
>>
>>
>> --
>> Nicolas Bock <nicolasbock@gentoo.org>
>
>
>
>-- 
>Patrice Clement
>Gentoo Linux developer
>http://www.gentoo.org



-- 
Nicolas Bock <nicolasbock@gentoo.org>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 981 bytes --]

  reply	other threads:[~2017-08-10  4:38 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-31  7:11 [gentoo-dev] New package neomutt Nicolas Bock
2017-07-31  7:23 ` Nicolas Bock
2017-07-31  8:34   ` Patrice Clement
2017-08-10  4:37     ` Nicolas Bock [this message]
2017-07-31 12:15   ` Floyd Anderson
2017-08-10  4:34     ` Nicolas Bock
2017-07-31  7:44 ` Michał Górny
2017-07-31  7:59   ` Nicolas Bock
2017-07-31  9:55 ` Matthew Thode
2017-07-31 10:52   ` Fabian Groffen
2017-08-05 20:13     ` Matthew Marchese
2017-08-10  4:58 ` Nicolas Bock
2017-08-10  7:40   ` Michał Górny
2017-08-10  7:54     ` Fabian Groffen
2017-08-10  8:10       ` Michał Górny
2017-08-10  9:35         ` Nicolas Bock
2017-08-10 12:13           ` Marc Schiffbauer
2017-08-10 12:16             ` Fabian Groffen
2017-08-10 14:09               ` Michał Górny
2017-08-10 14:32                 ` Fabian Groffen
2017-08-10 13:59           ` Michał Górny
2017-08-17  5:07         ` Daniel Campbell
2017-08-17  7:48           ` Michał Górny
2017-08-18  1:01             ` Daniel Campbell
2017-09-18 12:02     ` Nicolas Bock
2017-08-10 18:25   ` William Hubbs
2017-09-18 12:08 ` Nicolas Bock
2017-10-03 12:36   ` Nicolas Bock
2017-10-03 20:09     ` Marty E. Plummer
2017-10-03 20:33       ` Nicolas Bock

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170810043753.pr2o5rk7ilwenyjg@rubberducky.suse.de \
    --to=nicolasbock@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox