MFH: r526535

mail/fetchmail: mail/fetchmailconf: update to 6.4.2, make Python 3 compatible

Fetchmail updated to new revision 6.4.2
- one bugfix
- manual page updates
- update of Chinese (simplified) translation
- massive fetchmailconf overhaul
  + Python 3 compatible (requires py-future)
  + Supports IPv6 and SSL probing
- remove two patches for fetchmail that are in the upstream release
- add a smoke test to fetchmailconf's post-install,
  and a patch to support that running without X11 $DISPLAY.

PR:		244130
Submitted by:	mandree@
Reviewed by:	Corey Halpin <chalpin@cs.wisc.edu> (maintainer)
Approved by:	Corey Halpin <chalpin@cs.wisc.edu> (maintainer)

Approved by:	ports-secteam@ (joneum@)
This commit is contained in:
Matthias Andree 2020-02-20 18:51:34 +00:00
parent 3f7a774106
commit 8d5f33c994
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/branches/2020Q1/; revision=526576
6 changed files with 47 additions and 30 deletions

View File

@ -2,9 +2,10 @@
# $FreeBSD$
PORTNAME?= fetchmail
PORTVERSION= 6.4.1
PORTREVISION= 1
PORTVERSION= 6.4.2
CATEGORIES= mail
# The next line is inherited by the fetchmailconf slave port,
# do NOT replace fetchmail by ${PORTNAME}
MASTER_SITES= SF/fetchmail/branch_6.4/
MAINTAINER= chalpin@cs.wisc.edu
@ -69,7 +70,7 @@ PATCH_STRIP= -p1
.if empty(MASTERDIR)
post-build:
${MAKE_CMD} -C ${WRKSRC} check ; { r=$$? ; ( set -x ; cat "${WRKSRC}/test-suite.log" ) ; exit $$r ; }
${MAKE_CMD} -C ${WRKSRC} check ; { r=$$? ; ( set -x ; ${CAT} "${WRKSRC}/test-suite.log" ) ; exit $$r ; }
post-install:
${INSTALL} -d ${STAGEDIR}/var/run/fetchmail

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1569677341
SHA256 (fetchmail-6.4.1.tar.xz) = 3f33f11dd08c3e8cc3e9d18eec686b1626d4818f4d5a72791507bbc4dce6a9a0
SIZE (fetchmail-6.4.1.tar.xz) = 1257488
TIMESTAMP = 1581675882
SHA256 (fetchmail-6.4.2.tar.xz) = e21f6b3326f29fdb0c4786b5602aa4b9e668805424d0708eb42be6395c1ca630
SIZE (fetchmail-6.4.2.tar.xz) = 1261472

View File

@ -1,10 +0,0 @@
--- a/fetchmail.man 2019-09-28 11:09:52.000000000 +0200
+++ b/fetchmail.man 2019-10-03 11:28:41.306247000 +0200
@@ -1891,7 +1891,6 @@
user[name] \-u \& T{
This is the user description and must come first after server
description and after possible server options, and before user options.
-.br
It sets the remote user name if by itself or followed by 'there', or the
local user name if followed by 'here'.
T}

View File

@ -1,10 +0,0 @@
--- fetchmail-6.4.1/t.smoke 2019-08-20 18:00:35.000000000 -0500
+++ fetchmail-6.4.1-patched/t.smoke 2019-09-30 19:20:23.633504000 -0500
@@ -4,6 +4,7 @@
# configuration and dump it in human-readable and machine-readable form.
set -e
+export HOME=/tmp
trap 'rm -f t.rc.$$' 0
cp "${srcdir}/t.rc" t.rc.$$
chmod 0400 t.rc.$$

View File

@ -2,6 +2,8 @@
PORTNAME= fetchmailconf
DISTNAME= fetchmail-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}
# NOTE: MASTER_SITES in ../fetchmail must NOT use the $PORTNAME variable,
# else _this_ port (fetchmailconf) becomes unfetchable
MAINTAINER= chalpin@cs.wisc.edu
COMMENT= Python-based GUI to configure fetchmail
@ -9,12 +11,18 @@ COMMENT= Python-based GUI to configure fetchmail
LICENSE= GPLv2 LGPL21
LICENSE_COMB= dual
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tkinter>=0:x11-toolkits/py-tkinter@${PY_FLAVOR} \
# minimum required version 6.4.2 - not codified, on the assumption
# that fetchmail port updated at the same time
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tkinter>=0:x11-toolkits/py-tkinter@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}future>=0:devel/py-future@${PY_FLAVOR} \
fetchmail>=${PORTVERSION}:mail/fetchmail
RUN_DEPENDS+= ${BUILD_DEPENDS}
USES= python:2.7 shebangfix tar:xz
USES= python shebangfix tar:xz
USE_PYTHON= py3kplist
FILESDIR= ${.CURDIR}/files
PATCHDIR= ${FILESDIR}
SUB_FILES= fetchmailconf
SUB_LIST= PYTHON_CMD=${PYTHON_CMD} PYTHON_SITELIBDIR=${PYTHON_SITELIBDIR}
@ -27,8 +35,12 @@ ALL_TARGET= fetchmailconf
INSTALL_TARGET= install-data-am install-nodist_binSCRIPTS install-man
post-install:
${INSTALL_SCRIPT} ${WRKDIR}/fetchmailconf ${STAGEDIR}${PREFIX}/bin
${RM} ${STAGEDIR}${PREFIX}/man/man1/fetchmail.1*
# first, run smoke tests - the version check makes sure we have all
# modules listed in the *_DEPENDS variables:
${PYTHON_CMD} ${WRKSRC}/fetchmailconf.py -V
# then install:
${INSTALL_SCRIPT} ${WRKDIR}/fetchmailconf ${STAGEDIR}${PREFIX}/bin
${RM} ${STAGEDIR}${PREFIX}/man/man1/fetchmail.1*
MASTERDIR= ${.CURDIR}/../fetchmail

View File

@ -0,0 +1,24 @@
--- fetchmailconf.py.orig 2020-01-31 20:22:54 UTC
+++ fetchmailconf.py
@@ -2132,10 +2132,6 @@ def copy_instance(toclass, fromdict):
if __name__ == '__main__':
- if "DISPLAY" not in os.environ:
- print("fetchmailconf must be run under X")
- sys.exit(1)
-
fetchmail_icon = """
R0lGODdhPAAoAPcAAP///wgICBAQEISEhIyMjJSUlKWlpa2trbW1tcbGxs7Ozufn5+/v7//39yEY
GNa9tUoxKZyEe1o5KTEQAN7OxpyMhIRjUvfn3pxSKYQ5EO/Wxv/WvWtSQrVzSmtCKWspAMatnP/e
@@ -2202,6 +2198,10 @@ fetchmailconf comes with ABSOLUTELY NO WARRANTY. This
welcome to redistribute it under certain conditions. Please see the file
COPYING in the source or documentation directory for details.""")
sys.exit(0)
+
+ if "DISPLAY" not in os.environ:
+ print("fetchmailconf must be run under X")
+ sys.exit(1)
# Get client host's FQDN
hostname = socket.gethostname()