diff --git a/misc/github-copilot-cli/Makefile b/misc/github-copilot-cli/Makefile index 58a46babdfcc..c94c5ede9b0a 100644 --- a/misc/github-copilot-cli/Makefile +++ b/misc/github-copilot-cli/Makefile @@ -1,132 +1,132 @@ PORTNAME= github-copilot-cli -DISTVERSION= 0.0.353 +DISTVERSION= 0.0.354 CATEGORIES= misc # machine-learning DISTFILES= ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} \ ${NODE_HEADERS}${EXTRACT_SUFX} DIST_SUBDIR= ${PORTNAME} MAINTAINER= yuri@FreeBSD.org COMMENT= GitHub Copilot CLI brings the power of the coding agent to terminal WWW= https://github.com/github/copilot-cli ONLY_FOR_ARCHS= amd64 ONLY_FOR_ARCHS_REASON= binaries are installed in folders with architecture encoded as x64, patches are welcome to fix this limitation FETCH_DEPENDS= npm:www/npm \ jq:textproc/jq BUILD_DEPENDS= npm:www/npm \ libsecret>0:security/libsecret \ vips>=8.17.2:graphics/vips RUN_DEPENDS= libsecret>0:security/libsecret \ vips>=8.17.2:graphics/vips USES= nodejs:run pkgconfig python:build WRKSRC= ${WRKDIR}/copilot-${DISTVERSION} PACKAGE_NAME= @github/copilot NODE_HEADERS= node-v22.19.0-headers DD= ${DISTDIR}/${DIST_SUBDIR} FETCH_SCRIPT= ${PORTSDIR}/Tools/scripts/npmjs-fetch-with-dependencies.sh DEP_MODULES= pty sharp keytar node_addon_api dep_pty_npm_name= @devm33/node-pty dep_pty_version= 1.0.9 dep_sharp_npm_name= sharp dep_sharp_version= 0.34.4 dep_keytar_npm_name= keytar dep_keytar_version= 7.9.0 dep_node_addon_api_npm_name= node-addon-api dep_node_addon_api_version= 8.5.0 .for dep in ${DEP_MODULES} DISTFILES+= ${dep:S/_/-/g}-${dep_${dep}_version}${EXTRACT_SUFX} .endfor do-fetch: @if ! [ -f ${DD}/${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} ] || \ ! [ -f ${DD}/${NODE_HEADERS}${EXTRACT_SUFX} ] || \ ! [ -f ${DD}/pty-${dep_pty_version}${EXTRACT_SUFX} ] || \ ! [ -f ${DD}/sharp-${dep_sharp_version}${EXTRACT_SUFX} ] || \ ! [ -f ${DD}/keytar-${dep_keytar_version}${EXTRACT_SUFX} ] || \ ! [ -f ${DD}/node-addon-api-${dep_node_addon_api_version}${EXTRACT_SUFX} ]; then \ ${MKDIR} ${DD} && \ ${ECHO} "====> Fetching ${NODE_HEADERS}${EXTRACT_SUFX}" && \ ${FETCH_CMD} -q https://nodejs.org/download/release/v22.19.0/${NODE_HEADERS}${EXTRACT_SUFX} -o ${DD}/${NODE_HEADERS}${EXTRACT_SUFX} && \ ${ECHO} "====> Fetching dependency pty" && \ ${SETENV} TMPDIR=${WRKDIR} ${FETCH_SCRIPT} \ ${dep_pty_npm_name} ${dep_pty_version} \ ${FILESDIR}/package-lock-pty.json \ ${DD}/pty-${dep_pty_version}${EXTRACT_SUFX} && \ ${ECHO} "====> Fetching dependency sharp" && \ ${SETENV} TMPDIR=${WRKDIR} ${FETCH_SCRIPT} \ ${dep_sharp_npm_name} ${dep_sharp_version} \ ${FILESDIR}/package-lock-sharp.json \ ${DD}/sharp-${dep_sharp_version}${EXTRACT_SUFX} && \ ${ECHO} "====> Fetching dependency keytar" && \ ${SETENV} TMPDIR=${WRKDIR} ${FETCH_SCRIPT} \ ${dep_keytar_npm_name} ${dep_keytar_version} \ ${FILESDIR}/package-lock-keytar.json \ ${DD}/keytar-${dep_keytar_version}${EXTRACT_SUFX} && \ ${ECHO} "====> Fetching dependency node-addon-api" && \ ${SETENV} TMPDIR=${WRKDIR} ${FETCH_SCRIPT} \ ${dep_node_addon_api_npm_name} ${dep_node_addon_api_version} \ ${FILESDIR}/package-lock-node-addon-api.json \ ${DD}/node-addon-api-${dep_node_addon_api_version}${EXTRACT_SUFX} && \ ${ECHO} "====> Fetching ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX}" && \ ${SETENV} TMPDIR=${WRKDIR} ${FETCH_SCRIPT} \ ${PACKAGE_NAME} ${DISTVERSION} \ ${FILESDIR}/package-lock.json \ ${DD}/${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX}; \ fi post-extract: # Extract node-addon-api and install into sharp/node_modules # the tarball has a nested structure, so we need to move the inner directory @${MV} \ ${WRKDIR}/${dep_node_addon_api_npm_name}-${dep_node_addon_api_version}/node_modules/${dep_node_addon_api_npm_name} \ ${WRKDIR}/${dep_sharp_npm_name}-${dep_sharp_version}/node_modules/${dep_sharp_npm_name}/node_modules/node-addon-api do-build: # Create directory for FreeBSD prebuilds @${MKDIR} ${WRKSRC}/node_modules/${PACKAGE_NAME}/prebuilds/freebsd-x64 @${ECHO_MSG} "====> Building pty..." @cd ${WRKDIR}/node-pty-${dep_pty_version}/node_modules/${dep_pty_npm_name} && \ ${SETENV} HOME=${WRKDIR} CFLAGS="-I${LOCALBASE}/include" CXXFLAGS="-I${LOCALBASE}/include" \ npm rebuild --nodedir=${LOCALBASE} && \ ${CP} build/Release/pty.node ${WRKSRC}/node_modules/${PACKAGE_NAME}/prebuilds/freebsd-x64/ @${ECHO_MSG} "====> Building sharp..." @cd ${WRKDIR}/sharp-${dep_sharp_version}/node_modules/${dep_sharp_npm_name}/src && \ ${SETENV} HOME=${WRKDIR} PYTHON=${PYTHON_CMD} CXXFLAGS="-I${LOCALBASE}/include" \ node-gyp configure build --nodedir=${WRKDIR}/node-v22.19.0 && \ ${MKDIR} ${WRKSRC}/node_modules/@img/sharp-freebsd-x64 && \ ${CP} build/Release/sharp-freebsd-x64.node ${WRKSRC}/node_modules/@img/sharp-freebsd-x64/sharp.node @${ECHO_MSG} "====> Building keytar..." @cd ${WRKDIR}/keytar-${dep_keytar_version}/node_modules/${dep_keytar_npm_name} && \ ${SETENV} HOME=${WRKDIR} CFLAGS="-I${LOCALBASE}/include" CXXFLAGS="-I${LOCALBASE}/include" \ npm rebuild --nodedir=${LOCALBASE} && \ ${CP} build/Release/keytar.node ${WRKSRC}/node_modules/${PACKAGE_NAME}/prebuilds/freebsd-x64/ do-install: # install files cd ${WRKSRC} && \ ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib # remove *.node files for other OSes - @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -name "*.node" | \ + @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -name "*\\.node" | \ ${GREP} -v freebsd | \ ${XARGS} ${RM} # update shebang to use system node @${REINPLACE_CMD} -i '' \ -e "s|#!/usr/bin/env node|#!${PREFIX}/bin/node|" \ ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME}/index.js # set exec bit @${CHMOD} +x ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME}/index.js # create symlink in bin @${RLN} -s ${STAGEDIR}${PREFIX}/lib/node_modules/.bin/copilot ${STAGEDIR}${PREFIX}/bin/copilot # strip binaries @${FIND} ${STAGEDIR}${PREFIX}/lib/node_modules/${PACKAGE_NAME} -path "*/build/*" -name *.node | ${XARGS} ${STRIP_CMD} .include diff --git a/misc/github-copilot-cli/distinfo b/misc/github-copilot-cli/distinfo index d75d9e45beeb..7ef8a28fd5af 100644 --- a/misc/github-copilot-cli/distinfo +++ b/misc/github-copilot-cli/distinfo @@ -1,13 +1,13 @@ -TIMESTAMP = 1762130200 -SHA256 (github-copilot-cli/github-copilot-cli-0.0.353.tar.gz) = 17679e6cdef17cbce4eb5d33305cc833ff56e8d3ca3393d548bc3ecaadf8affb -SIZE (github-copilot-cli/github-copilot-cli-0.0.353.tar.gz) = 69161966 +TIMESTAMP = 1762227141 +SHA256 (github-copilot-cli/github-copilot-cli-0.0.354.tar.gz) = acaaf4b4a3d94095620eda90d3f0631e4db3937f669e2522399aefc496bb7cd8 +SIZE (github-copilot-cli/github-copilot-cli-0.0.354.tar.gz) = 69173194 SHA256 (github-copilot-cli/node-v22.19.0-headers.tar.gz) = 183bdc17092336ad21e01a425d238e85db4ee077ae3caa0547ff1fbda07d9bd8 SIZE (github-copilot-cli/node-v22.19.0-headers.tar.gz) = 8750990 SHA256 (github-copilot-cli/pty-1.0.9.tar.gz) = 9058406ee09e52ac2b5511eff825c602aafeafe777bb1848450da3758392cb21 SIZE (github-copilot-cli/pty-1.0.9.tar.gz) = 14897481 SHA256 (github-copilot-cli/sharp-0.34.4.tar.gz) = 5241b3418b89dc75e70384f08d8189778748d895acab4d02d658002987fd6793 SIZE (github-copilot-cli/sharp-0.34.4.tar.gz) = 175066 SHA256 (github-copilot-cli/keytar-7.9.0.tar.gz) = 6350ad9a92ff693fabbf13199cc8762187641e59828a13debf0ea5d04cd2828f SIZE (github-copilot-cli/keytar-7.9.0.tar.gz) = 295200 SHA256 (github-copilot-cli/node-addon-api-8.5.0.tar.gz) = 800e8f46bd8433f8b1cddbb72fbc5befe133b4613bc5fc6026235adf700cb713 SIZE (github-copilot-cli/node-addon-api-8.5.0.tar.gz) = 62039 diff --git a/misc/github-copilot-cli/files/package-lock.json b/misc/github-copilot-cli/files/package-lock.json index d4236c3bbb88..7692866d264a 100644 --- a/misc/github-copilot-cli/files/package-lock.json +++ b/misc/github-copilot-cli/files/package-lock.json @@ -1,27 +1,27 @@ { "name": "@github/copilot-installer", "version": "1.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@github/copilot-installer", "version": "1.0.0", "dependencies": { - "@github/copilot": "^0.0.353" + "@github/copilot": "^0.0.354" } }, "node_modules/@github/copilot": { - "version": "0.0.353", - "resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-0.0.353.tgz", - "integrity": "sha512-OYgCB4Jf7Y/Wor8mNNQcXEt1m1koYm/WwjGsr5mwABSVYXArWUeEfXqVbx+7O87ld5b+aWy2Zaa2bzKV8dmqaw==", + "version": "0.0.354", + "resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-0.0.354.tgz", + "integrity": "sha512-vk/80NI1jlgSyCdNWBdVPMC0ZyI8PIGAswQga1OLu+BIGQAeI9oks1tp23OeXika2cFMJSVv3GJfTMRx/gqhHA==", "license": "SEE LICENSE IN LICENSE.md", "bin": { "copilot": "index.js" }, "engines": { "node": ">=22" } } } }