pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/mail/meli



Module Name:    pkgsrc
Committed By:   vins
Date:           Thu Aug 31 15:55:39 UTC 2023

Modified Files:
        pkgsrc/mail/meli: DESCR Makefile PLIST
Added Files:
        pkgsrc/mail/meli: options.mk
        pkgsrc/mail/meli/files: README.pkgsrc

Log Message:
mail/meli: package revision.

* Make support for dbus, gpgme, notmuch and sqlite3 optional (enabled by
  default).
* Add optional support for debug tracing and html rendering via w3m
  (disabled by default.
* Add dependency on curl (required by melib).
* Install official documentation, themes and sample files.
* Simplify DESCR. Move any additional information in a README.pkgsrc
  and integrate it with recent upstream additions.
* Simplify RUSTFLAGS handling, avoiding redundancy.
* Allow package to build on any 64-bit arch (supported by rust),
  but those inherently unsupported by the package.
* Bump revision.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 pkgsrc/mail/meli/DESCR
cvs rdiff -u -r1.10 -r1.11 pkgsrc/mail/meli/Makefile
cvs rdiff -u -r1.2 -r1.3 pkgsrc/mail/meli/PLIST
cvs rdiff -u -r0 -r1.1 pkgsrc/mail/meli/options.mk
cvs rdiff -u -r0 -r1.1 pkgsrc/mail/meli/files/README.pkgsrc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/mail/meli/DESCR
diff -u pkgsrc/mail/meli/DESCR:1.1 pkgsrc/mail/meli/DESCR:1.2
--- pkgsrc/mail/meli/DESCR:1.1  Wed Sep  8 13:58:27 2021
+++ pkgsrc/mail/meli/DESCR      Thu Aug 31 15:55:38 2023
@@ -1,19 +1,6 @@
-meli aims for configurability and extensibility with sane defaults.
-It seeks to be a mail client for both new and power users of the terminal, but
-built today.
+BSD/Linux terminal email client with support for multiple accounts and
+backends: Maildir / mbox / notmuch / IMAP / JMAP / NNTP.
 
-A variety of email workflows and software stacks should be usable with meli.
-Integrate e-mail storage, sync, tagging system, SMTP client, contact management
-and editor of your choice to replace the defaults.
-
-features:
--email threads
--multithreaded
--embed your own editor
--plain text configuration
--multi-tasking with UI tabs
--IMAP, Maildir, notmuch, JMAP, mbox
--optional sqlite3 index search
--fast and minimal account configuration
--contact list (+read-only vCard support)
--forced UTF-8 - other encodings are read-only
+A variety of email workflows and software stacks should be usable with
+meli. Integrate e-mail storage, sync, tagging system, SMTP client,
+contact management and editor of your choice to replace the defaults.

Index: pkgsrc/mail/meli/Makefile
diff -u pkgsrc/mail/meli/Makefile:1.10 pkgsrc/mail/meli/Makefile:1.11
--- pkgsrc/mail/meli/Makefile:1.10      Wed Aug 30 19:56:21 2023
+++ pkgsrc/mail/meli/Makefile   Thu Aug 31 15:55:38 2023
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.10 2023/08/30 19:56:21 vins Exp $
+# $NetBSD: Makefile,v 1.11 2023/08/31 15:55:38 vins Exp $
 
 DISTNAME=      v0.8.0
+PKGREVISION=   1
 PKGNAME=       ${DISTNAME:S|^v|meli-|}
 CATEGORIES=    mail
 DIST_SUBDIR=   ${PKGNAME_NOREV}
@@ -11,30 +12,39 @@ HOMEPAGE=   https://meli.delivery/
 COMMENT=       Terminal mail client
 LICENSE=       gnu-gpl-v3
 
-# Possibly working on other 64-bit processors but, not tested
-ONLY_FOR_PLATFORM=     *-*-x86_64
+# ring-v0.16.20 does not support these archs
+BROKEN_ON_PLATFORM=    *-*-powerpc64 *-*-sparc64
+# error[E0308]: mismatched types
+ONLY_FOR_PLATFORM=     ${LP64PLATFORMS}
 
-TOOL_DEPENDS+= ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
+USE_TOOLS+=    pax pkg-config
 
-.include "cargo-depends.mk"
-
-WRKSRC=                ${WRKDIR}/meli
-
-USE_TOOLS+=                    pkg-config
+TOOL_DEPENDS+=                 ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
 PYTHON_VERSIONS_INCOMPATIBLE=  27
 PYTHON_FOR_BUILD_ONLY=         tool
 
-INSTALLATION_DIRS+=    bin ${PKGMANDIR}/man1
-INSTALLATION_DIRS+=    ${PKGMANDIR}/man5 ${PKGMANDIR}/man7
+CARGO_NO_DEFAULT_FEATURES=     yes
+CARGO_FEATURES=                        cli-docs jmap regexp smtp
+
+.include "options.mk"
+.include "cargo-depends.mk"
+
+PKG_DOCS=      meli/docs/external-tools.md meli/docs/mail.vim
+DOCDIR=                share/doc/${PKGBASE}
+
+WRKSRC=        ${WRKDIR}/meli
 
 MAKE_ENV+=     OPENSSL_DIR=${SSLBASE:Q}
 
-RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.openssl}/lib
-RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.libxcb}/lib
-RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.dbus}/lib
-RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.sqlite3}/lib
-RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.pcre2}/lib
-RUSTFLAGS+=    -C link-arg=-L${BUILDLINK_PREFIX.pcre2}/lib
+RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${SSLBASE}/lib
+RUSTFLAGS+=    -C link-arg=-L${SSLBASE}/lib
+RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${X11BASE}/lib
+RUSTFLAGS+=    -C link-arg=-L${X11BASE}/lib
+RUSTFLAGS+=    -C link-arg=${COMPILER_RPATH_FLAG}${PREFIX}/lib
+RUSTFLAGS+=    -C link-arg=-L${PREFIX}/lib
+
+INSTALLATION_DIRS+=    bin ${PKGMANDIR}/man1 ${PKGMANDIR}/man5
+INSTALLATION_DIRS+=    ${PKGMANDIR}/man7 ${DOCDIR}
 
 do-install:
        ${INSTALL_PROGRAM} ${WRKSRC}/target/release/managesieve-client \
@@ -50,13 +60,19 @@ do-install:
        ${INSTALL_MAN} ${WRKSRC}/meli/docs/meli.conf.5          \
                ${DESTDIR}${PREFIX}/${PKGMANDIR}/man5/meli.conf.5
 
-.include "../../lang/rust/cargo.mk"
-.include "../../lang/python/tool.mk"
+post-install:
+       ${INSTALL_DATA} ${PKG_DOCS:S|^|${WRKSRC}/|}             \
+               ${DESTDIR}${PREFIX}/${DOCDIR}
+       ${INSTALL_DATA} ${FILESDIR}/README.pkgsrc               \
+               ${DESTDIR}${PREFIX}/${DOCDIR}
+       ${RUN}cd ${WRKSRC}/meli/docs &&                         \
+               ${PAX} -rw -pm samples ${DESTDIR}${PREFIX}/${DOCDIR}
+
 .include "../../security/openssl/buildlink3.mk"
-.include "../../x11/libxcb/buildlink3.mk"
-.include "../../security/gpgme/buildlink3.mk"
-.include "../../sysutils/dbus/buildlink3.mk"
-.include "../../databases/sqlite3/buildlink3.mk"
-.include "../../mail/notmuch/buildlink3.mk"
 .include "../../devel/pcre2/buildlink3.mk"
+.include "../../x11/libxcb/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
+.include "../../lang/python/tool.mk"
+.include "../../lang/rust/cargo.mk"
+
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/mail/meli/PLIST
diff -u pkgsrc/mail/meli/PLIST:1.2 pkgsrc/mail/meli/PLIST:1.3
--- pkgsrc/mail/meli/PLIST:1.2  Wed Aug 30 17:06:37 2023
+++ pkgsrc/mail/meli/PLIST      Thu Aug 31 15:55:38 2023
@@ -1,7 +1,16 @@
-@comment $NetBSD: PLIST,v 1.2 2023/08/30 17:06:37 pin Exp $
+@comment $NetBSD: PLIST,v 1.3 2023/08/31 15:55:38 vins Exp $
 bin/managesieve-client
 bin/meli
 man/man1/meli.1
 man/man5/meli-themes.5
 man/man5/meli.conf.5
 man/man7/meli.7
+share/doc/meli/README.pkgsrc
+share/doc/meli/external-tools.md
+share/doc/meli/mail.vim
+share/doc/meli/samples/sample-config.toml
+share/doc/meli/samples/themes/nord.toml
+share/doc/meli/samples/themes/orca.toml
+share/doc/meli/samples/themes/sail.toml
+share/doc/meli/samples/themes/spooky.toml
+share/doc/meli/samples/themes/watermelon.toml

Added files:

Index: pkgsrc/mail/meli/options.mk
diff -u /dev/null pkgsrc/mail/meli/options.mk:1.1
--- /dev/null   Thu Aug 31 15:55:39 2023
+++ pkgsrc/mail/meli/options.mk Thu Aug 31 15:55:38 2023
@@ -0,0 +1,61 @@
+# $NetBSD: options.mk,v 1.1 2023/08/31 15:55:38 vins Exp $
+
+PKG_OPTIONS_VAR=       PKG_OPTIONS.meli
+
+PKG_SUPPORTED_OPTIONS+=        dbus debug gpgme notmuch sqlite3 w3m
+PKG_SUGGESTED_OPTIONS= dbus gpgme notmuch sqlite3
+
+.include "../../mk/bsd.options.mk"
+
+##
+## D-Bus support
+## Enable showing notification via dbus.
+##
+.if !empty(PKG_OPTIONS:Mdbus)
+CARGO_FEATURES+=       dbus-notifications
+.include "../../sysutils/dbus/buildlink3.mk"
+.endif
+
+##
+## GPG support
+##
+.if !empty(PKG_OPTIONS:Mgpgme)
+CARGO_FEATURES+=       gpgme
+.include "../../security/gpgme/buildlink3.mk"
+.endif
+
+##
+## Notmuch support
+## Use notmuch database as a mail backend.
+##
+.if !empty(PKG_OPTIONS:Mnotmuch)
+CARGO_FEATURES+=       notmuch
+.include "../../mail/notmuch/buildlink3.mk"
+.endif
+
+##
+## SQLite support
+## Build fast search indexes in local sqlite3 databases.
+##
+.if !empty(PKG_OPTIONS:Msqlite3)
+CARGO_FEATURES+=       sqlite3
+RUSTFLAGS+=            -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.sqlite3}/lib
+RUSTFLAGS+=             -C link-arg=-L${BUILDLINK_PREFIX.sqlite3}/lib
+.include "../../databases/sqlite3/buildlink3.mk"
+.endif
+
+##
+## Debug
+## Enable various trace debug logs
+##
+.if !empty(PKG_OPTIONS:Mdebug)
+CARGO_FEATURES+=       debug-tracing
+.endif
+
+##
+## HTML Rendering
+## Use w3m to render HTML pages.
+##
+.if !empty(PKG_OPTIONS:Mw3m)
+DEPENDS+=      w3m-[0-9]*:../../www/w3m
+.endif

Index: pkgsrc/mail/meli/files/README.pkgsrc
diff -u /dev/null pkgsrc/mail/meli/files/README.pkgsrc:1.1
--- /dev/null   Thu Aug 31 15:55:39 2023
+++ pkgsrc/mail/meli/files/README.pkgsrc        Thu Aug 31 15:55:39 2023
@@ -0,0 +1,64 @@
++----------------------------------------------------------------------
+| INTRO to meli
++----------------------------------------------------------------------
+
+meli aims for configurability, extensibility with sane defaults, and
+modern practices. It is a mail client for both casual and power users of
+the terminal.
+
+A variety of email workflows and software stacks should be usable with
+meli.  Integrate e-mail storage, sync, tagging system, SMTP client,
+contact management and editor of your choice to replace the defaults.
+
+
+E-mail backends
+---------------
+
+               +-----------------+
+               | Support         |
++--------------+-----------------+
+| IMAP         | full            |
+| Maildir      | full            |
+| notmuch      | full*           |
+| mbox         | read-only       |
+| JMAP         | functional      |
+| NNTP / Usenet| functional      |
++--------------+-----------------+
+
+* there's no support for searching through all email directly, you'd
+  have to create a mailbox with a notmuch query that returns everything
+  and search inside that mailbox.
+
+E-mail Submission backends
+--------------------------
+
+- SMTP                   
+- Pipe to shell script   
+- Server-side submission 
+
+
+Non-exhaustive List of Features
+-------------------------------
+
+- TLS
+- email threading support
+- multithreaded, async operation
+- optionally run your editor of choice inside meli, with an embedded
+  xterm-compatible terminal emulator
+- plain text configuration in TOML
+- ability to open emails in UI tabs and switch to them
+- optional sqlite3 index search
+- override almost any setting per mailbox, per account
+- contact list (+read-only vCard and mutt alias file support)
+- forced UTF-8 (other encodings are read-only)
+- configurable shortcuts
+- theming
+- NO_COLOR support
+- ascii-only drawing characters option
+- view text/html attachments through an html filter command 
+  (w3m by default)
+- pipe attachments/mail to stuff
+- use external attachment file picker instead of typing in an 
+  attachment's full path
+- GPG signing, encryption, signing + encryption
+- GPG signature verification



Home | Main Index | Thread Index | Old Index