aboutsummaryrefslogtreecommitdiffstats
path: root/net-im/thelounge/Makefile
blob: 2b13cf180d2e17e3e73204c76a8f4f6e616ea553 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
PORTNAME=	thelounge
DISTVERSION=	4.5.2
CATEGORIES=	net-im

MAINTAINER=	jan@jantuomi.fi
COMMENT=	Modern, responsive, cross-platform, self-hosted IRC client
WWW=		https://thelounge.chat/

LICENSE=	MIT
LICENSE_FILE=	${WRKSRC}/LICENSE

USE_GITHUB=	yes
GH_ACCOUNT=	thelounge
GH_PROJECT=	thelounge
GH_TAGNAME=	v${DISTVERSION}

NO_CHECKSUM=	yes

USES=		nodejs:24,build,run \
		npm:yarn1,fetch,extract,build

NPM_PREFETCH=	yes
NPM_EXTRACT=	yes

USE_RC_SUBR=	thelounge
SUB_FILES=	pkg-message

APPDIR=		${PREFIX}/libexec/${PORTNAME}
STAGE_APPDIR=	${STAGEDIR}${APPDIR}

do-build:
	cd ${WRKSRC} && \
		${SETENV} ${MAKE_ENV} NODE_ENV=production \
		${NPM_EXEC_CMD} ${NPM_EXEC_FLAGS} -- run-p --aggregate-output build:client build:server

do-install:
	${MKDIR} ${STAGE_APPDIR}
	${INSTALL_DATA} ${WRKSRC}/package.json ${STAGE_APPDIR}/
	${INSTALL_DATA} ${WRKSRC}/index.js ${STAGE_APPDIR}/
	(cd ${WRKSRC} && ${COPYTREE_SHARE} dist ${STAGE_APPDIR})
	(cd ${WRKSRC} && ${COPYTREE_SHARE} public ${STAGE_APPDIR})
	(cd ${WRKSRC} && ${COPYTREE_SHARE} defaults ${STAGE_APPDIR})
	cd ${WRKSRC} && ${TAR} -cf - node_modules | ${TAR} -xf - -C ${STAGE_APPDIR}
	${LN} -sf ${APPDIR}/index.js ${STAGEDIR}${PREFIX}/bin/thelounge
	${MKDIR} ${STAGEDIR}/var/db/thelounge
	${INSTALL_DATA} ${FILESDIR}/config.js.sample \
		${STAGEDIR}${PREFIX}/etc/thelounge.conf.sample

post-install:
	@(cd ${STAGEDIR}${PREFIX} && \
		${FIND} libexec/${PORTNAME} \( -type f -o -type l \) | \
		${SORT}) >> ${TMPPLIST}

.include <bsd.port.mk>