From 91d58766946c7b6d114bf3009f3e7f5f77bdc4bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leonardo=20Hern=C3=A1ndez=20Hern=C3=A1ndez?= Date: Thu, 14 Apr 2022 18:52:20 -0500 Subject: [PATCH] www-apps/code-server-bin: add 4.3.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Leonardo Hernández Hernández --- www-apps/code-server-bin/Manifest | 2 + .../code-server-bin-4.3.0.ebuild | 124 ++++++++++++++++++ 2 files changed, 126 insertions(+) create mode 100644 www-apps/code-server-bin/code-server-bin-4.3.0.ebuild diff --git a/www-apps/code-server-bin/Manifest b/www-apps/code-server-bin/Manifest index f3cbca1bd8..e28bc2a7ff 100644 --- a/www-apps/code-server-bin/Manifest +++ b/www-apps/code-server-bin/Manifest @@ -1,2 +1,4 @@ DIST code-server-4.1.0-linux-amd64.tar.gz 189936485 BLAKE2B 002f90ffd550061cb9161776559a4ca2562c682aa7737bb5213bfb657d792b8ba92f8132d33b741d53c0f6eb2988f1e5703af3380b184bc97e44d4e29053bb97 SHA512 33d77d08e7401c7d7b87da6c217e4504b813aa2a6045bff4aaacda7b1ff73cbcddeeb6e4b844d6ddfbde26cce42179098c60bec5ecc960a6c54b2ebc7a726c6a DIST code-server-4.1.0-linux-arm64.tar.gz 186692988 BLAKE2B 6379d9bbcea11f3c68eb281abe820c4740bdc19699292c80b7aa42a442478f5964a06a965aac0719f110b9e08431d5a9359484130203cedcc3ad3b38e3a70388 SHA512 a3750e7468037951342772d578a08defd65de1694c649161c6027980920fba9b079ecf63ac7ae05731afc209e4fa4020be857a563a4b599c22bb5d867c5d47c7 +DIST code-server-4.3.0-linux-amd64.tar.gz 95902305 BLAKE2B 37fd4c821c2d9fde01c483cba9657632d8d07ce7af3a884aa959c7ff722d25300d822dac84e0a173e9f8eedc0e49f5f52ca7779b850e5b3007516f7c6bf2e569 SHA512 9f7fc56b69a928dcd348cf27ce65a93b2732b9001cc51388807aa78e68a31ba4a8c891b93b079efe27196069c5a4530c0c15e78070b86922262fa4f61adbda83 +DIST code-server-4.3.0-linux-arm64.tar.gz 87052785 BLAKE2B 0255e8779e3e9b4ad74f512e2ae70a40bc1b72ee43140d095a7cc5d4444337b4b8b61d6d4d1408b5abd6d8e36d0e5911732c0330cdd8a2667c70b9cde47ca9fd SHA512 8df885698addff944afc4b69f743ec14f464eb00d3ddd61e8e9665a130aaacb6487db65d549ec401bbda2c81631c9b088c3950551e26672f3be93a804913787e diff --git a/www-apps/code-server-bin/code-server-bin-4.3.0.ebuild b/www-apps/code-server-bin/code-server-bin-4.3.0.ebuild new file mode 100644 index 0000000000..461b610d71 --- /dev/null +++ b/www-apps/code-server-bin/code-server-bin-4.3.0.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN="${PN/-bin/}" +MY_P="${MY_PN}-${PV}" +BASE_URI="https://github.com/coder/${MY_PN}/releases/download/v${PV}/${MY_P}-linux" + +inherit systemd + +DESCRIPTION="VS Code in the browser (binary version with unbundled node and ripgrep)" +HOMEPAGE="https://coder.com/" +SRC_URI=" + amd64? ( ${BASE_URI}-amd64.tar.gz ) + arm64? ( ${BASE_URI}-arm64.tar.gz ) +" +RESTRICT="test" +LICENSE="MIT 0BSD ISC PYTHON BSD-2 BSD Apache-2.0 Unlicense LGPL-2.1+ + || ( BSD-2 MIT Apache-2.0 ) + || ( MIT CC0-1.0 ) + || ( MIT WTFPL ) +" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="gnome-keyring" + +RDEPEND=" + ${DEPEND} + >=net-libs/nodejs-14.0[ssl] + sys-apps/ripgrep + gnome-keyring? ( + app-crypt/libsecret + ) +" + +S="${WORKDIR}/${MY_P}-linux-${ARCH}" + +PATCHES=( "${FILESDIR}/${PN}-node.patch" ) + +DOCS=( "README.md" "ThirdPartyNotices.txt" "LICENSE" ) + +# Relative to parent +VSCODE_MODULES="lib/vscode/node_modules" + +QA_PREBUILT=" + /opt/${PN}/lib/coder-cloud-agent + /opt/${PN}/node_modules/argon2/lib/binding/napi-v3/argon2.node + /opt/${PN}/node_modules/argon2/build-tmp-napi-v3/Release/argon2.node + /opt/${PN}/node_modules/argon2/build-tmp-napi-v3/Release/obj.target/argon2.node + /opt/${PN}/node_modules/@node-rs/argon2-linux-x64-musl/argon2.linux-x64-musl.node + /opt/${PN}/node_modules/@node-rs/argon2-linux-x64-gnu/argon2.linux-x64-gnu.node + /opt/${PN}/${VSCODE_MODULES}/native-is-elevated/build/Release/obj.target/iselevated.node + /opt/${PN}/${VSCODE_MODULES}/native-is-elevated/build/Release/iselevated.node + /opt/${PN}/${VSCODE_MODULES}/node-pty/build/Release/pty.node + /opt/${PN}/${VSCODE_MODULES}/native-watchdog/build/Release/obj.target/watchdog.node + /opt/${PN}/${VSCODE_MODULES}/native-watchdog/build/Release/watchdog.node + /opt/${PN}/${VSCODE_MODULES}/@parcel/watcher/prebuilds/linux-x64/node.napi.musl.node + /opt/${PN}/${VSCODE_MODULES}/@parcel/watcher/prebuilds/linux-x64/node.napi.glibc.node + /opt/${PN}/${VSCODE_MODULES}/spdlog/build/Release/obj.target/spdlog.node + /opt/${PN}/${VSCODE_MODULES}/spdlog/build/Release/spdlog.node + /opt/${PN}/${VSCODE_MODULES}/vscode-nsfw/build/Release/obj.target/nsfw.node + /opt/${PN}/${VSCODE_MODULES}/vscode-nsfw/build/Release/nsfw.node + /opt/${PN}/${VSCODE_MODULES}/@vscode/sqlite3/build/Release/obj.target/sqlite.node + /opt/${PN}/${VSCODE_MODULES}/@vscode/sqlite3/build/Release/sqlite.node + /opt/${PN}/${VSCODE_MODULES}/@parcel/watcher/build/Release/watcher.node + /opt/${PN}/${VSCODE_MODULES}/@parcel/watcher/build/Release/obj.target/watcher.node +" + +QA_PRESTRIPPED=" + /opt/${PN}/node_modules/@node-rs/argon2-linux-x64-musl/argon2.linux-x64-musl.node + /opt/${PN}/${VSCODE_MODULES}/@parcel/watcher/prebuilds/linux-x64/node.napi.musl.node + /opt/${PN}/${VSCODE_MODULES}/@parcel/watcher/prebuilds/linux-x64/node.napi.glibc.node +" + +src_prepare() { + default + + # We remove as much precompiled code as we can, + # node modules not written in JS cannot be removed + # thus "-bin". + + # use system node + rm ./node ./lib/node \ + || die "Failed to remove bundled nodejs" + + # remove bundled ripgrep binary + rm ./"${VSCODE_MODULES}"/@vscode/ripgrep/bin/rg \ + || die "Failed to remove bundled ripgrep" + + # not needed + rm ./code-server || die + rm ./postinstall.sh || die + + # For windows + rm -rf ./"${VSCODE_MODULES}"/windows-foreground-love || die + rm -rf ."${VSCODE_MODULES}"/@parcel/watcher/prebuilds/win32-x64 || die + + if [[ $ELIBC != "musl" ]]; then + rm -rf ./node_modules/@node-rs/argon2-linux-x64-musl || die + rm ./"${VSCODE_MODULES}"/@parcel/watcher/prebuilds/linux-x64/node.napi.musl.node || die + elif [[ $ELIBC != "glibc" ]]; then + rm ./"${VSCODE_MODULES}"/@parcel/watcher/prebuilds/linux-x64/node.napi.glibc.node || die + fi +} + +src_install() { + einstalldocs + + insinto "/opt/${PN}" + doins -r . + fperms +x "/opt/${PN}/bin/${MY_PN}" + dosym -r "/opt/${PN}/bin/${MY_PN}" "${EPREFIX}/usr/bin/${PN}" + + dosym -r "/usr/bin/rg" \ + "${EPREFIX}/opt/${PN}/${VSCODE_MODULES}/@vscode/ripgrep/bin/rg" + + systemd_douserunit "${FILESDIR}/${MY_PN}.service" +} + +pkg_postinst() { + elog "When using code-server systemd service run it as a user" + elog "For example: 'systemctl --user enable --now code-server'" +}