1PORTNAME=	bun-decompile
2DISTVERSION=	0.2.0
3CATEGORIES=	misc
4
5MAINTAINER=	ports@MidnightBSD.org
6COMMENT=	Extract and de-minify source code from Bun-compiled executables
7WWW=		https://github.com/shepherdjerred/monorepo/tree/main/packages/bun-decompile
8
9LICENSE=	gpl3
10LICENSE_FILE=	${WRKSRC}/node_modules/${PACKAGE_NAME}/LICENSE
11
12FETCH_DEPENDS=	curl:ftp/curl \
13		jq:textproc/jq \
14		npm:www/npm \
15		${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss
16
17RUN_DEPENDS=	bun:lang/bun
18
19NO_BUILD=	yes
20NO_ARCH=	yes
21
22WRKSRC=		${WRKDIR}/bun-decompile-${DISTVERSION}
23
24PACKAGE_NAME=	@shepherdjerred/bun-decompile
25
26FETCH_SCRIPT=	${PORTSDIR}/Tools/scripts/npmjs-fetch-with-dependencies.sh
27
28do-fetch:
29	@if ! [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \
30		${SETENV} TMPDIR=${WRKDIR} LOCALBASE=${LOCALBASE} ${FETCH_SCRIPT} \
31			${PACKAGE_NAME} ${DISTVERSION} \
32			${FILESDIR}/package-lock.json \
33			${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}; \
34	fi
35
36do-install:
37	# install node_modules
38	@${MKDIR} ${STAGEDIR}${PREFIX}/lib
39	@cd ${WRKSRC} && \
40		${COPYTREE_SHARE} node_modules ${STAGEDIR}${PREFIX}/lib
41	# create wrapper script
42	@${MKDIR} ${STAGEDIR}${PREFIX}/bin
43	@${ECHO_CMD} '#!/bin/sh' > ${STAGEDIR}${PREFIX}/bin/bun-decompile
44	@${ECHO_CMD} 'exec bun ${PREFIX}/lib/node_modules/${PACKAGE_NAME}/src/index.ts "$$@"' >> ${STAGEDIR}${PREFIX}/bin/bun-decompile
45	@${CHMOD} +x ${STAGEDIR}${PREFIX}/bin/bun-decompile
46
47.include <bsd.port.mk>
48