1PORTNAME=	certbot
2PORTVERSION=	${ACME_VERSION}
3PORTREVISION=	1
4PORTEPOCH=	1
5CATEGORIES=	security python
6MASTER_SITES=	PYPI \
7		https://github.com/certbot/certbot/releases/download/v${PORTVERSION}/
8PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
9
10MAINTAINER=	ports@MidnightBSD.org
11COMMENT=	Let's Encrypt client #'
12WWW=		https://certbot.eff.org/ \
13		https://github.com/certbot/certbot \
14		https://github.com/certbot/certbot/tree/master/certbot
15
16LICENSE=	Apache-2.0
17LICENSE_FILE=	${WRKSRC}/LICENSE.txt
18
19BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
20		${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
21RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}acme>=${ACME_VERSION},1:security/py-acme@${PY_FLAVOR} \
22		${PYTHON_PKGNAMEPREFIX}configargparse>=1.5.3:devel/py-configargparse@${PY_FLAVOR} \
23		${PYTHON_PKGNAMEPREFIX}configobj>=5.0.6:devel/py-configobj@${PY_FLAVOR} \
24		${PYTHON_PKGNAMEPREFIX}distro>=1.0.1:sysutils/py-distro@${PY_FLAVOR} \
25		${PYTHON_PKGNAMEPREFIX}josepy>=2.0.0:security/py-josepy@${PY_FLAVOR} \
26		${PYTHON_PKGNAMEPREFIX}parsedatetime>=2.4:devel/py-parsedatetime@${PY_FLAVOR} \
27		${PYTHON_PKGNAMEPREFIX}pyrfc3339>=0:devel/py-pyrfc3339@${PY_FLAVOR} \
28		${PYTHON_PKGNAMEPREFIX}pytz>=2019.3,1:devel/py-pytz@${PY_FLAVOR} \
29		${PYTHON_PKGNAMEPREFIX}setuptools>=41.6.0:devel/py-setuptools@${PY_FLAVOR}
30
31USES=		python
32USE_PYTHON=	autoplist concurrent cryptography pep517
33
34NO_TEST=	yes
35NO_ARCH=	yes
36
37PLIST_FILES=	etc/periodic/weekly/500.certbot-${PYTHON_VER}
38SUB_FILES=	500.certbot pkg-message
39SUB_LIST=	PYTHON_VER=${PYTHON_VER}
40
41OPTIONS_DEFINE=	MANPAGES
42OPTIONS_DEFAULT=MANPAGES
43
44MANPAGES_BUILD_DEPENDS=	${RUN_DEPENDS} \
45			${PYTHON_PKGNAMEPREFIX}sphinx>=1.2,1:textproc/py-sphinx@${PY_FLAVOR} \
46			${PYTHON_PKGNAMEPREFIX}sphinx_rtd_theme>=0:textproc/py-sphinx_rtd_theme@${PY_FLAVOR}
47MANPAGES_PLIST_FILES=	share/man/man1/certbot.1.gz \
48			share/man/man7/certbot.7.gz
49
50.include <bsd.port.pre.mk>
51
52.if ${PYTHON_REL} < 31000
53RUN_DEPENDS+=	${PYTHON_PKGNAMEPREFIX}importlib-metadata>=4.6:devel/py-importlib-metadata@${PY_FLAVOR}
54.endif
55
56post-patch:
57	@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|'  -e 's|freebsd|midnightbsd|g' \
58		${WRKSRC}/certbot/compat/misc.py \
59		${WRKSRC}/certbot/_internal/tests/cli_test.py \
60		${WRKSRC}/certbot/util.py
61
62post-build-MANPAGES-on:
63	# Avoid gmake / ${DO_MAKE_BUILD} -C ${WRKSRC}/docs man
64	cd ${WRKSRC}/docs && sphinx-build-${PYTHON_VER} -N -b man . _build/man
65
66post-install:
67	${MKDIR} ${PREFIX}/etc/periodic/weekly
68	${INSTALL_SCRIPT} ${WRKDIR}/500.certbot ${PREFIX}/etc/periodic/weekly/500.certbot-${PYTHON_VER}
69
70post-install-MANPAGES-on:
71	${MKDIR} ${FAKE_DESTDIR}${PREFIX}/share/man/man1 ${FAKE_DESTDIR}${PREFIX}/share/man/man7
72	${INSTALL_MAN} ${WRKSRC}/docs/_build/man/certbot.1 \
73		${FAKE_DESTDIR}${PREFIX}/share/man/man1
74	${INSTALL_MAN} ${WRKSRC}/docs/_build/man/certbot.7 \
75		${FAKE_DESTDIR}${PREFIX}/share/man/man7
76
77.include "${.CURDIR}/../py-acme/version.mk"
78.include <bsd.port.post.mk>
79