diff options
author | Eli Schwartz <eschwartz93@gmail.com> | 2023-10-18 17:13:28 -0400 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-10-19 22:03:14 +0100 |
commit | ae0c81ea37d33d8d5ac629c212ec2ea57951862e (patch) | |
tree | 3a4e7b8a1ba7b5db01d9a383d18e28052f0aa603 /dev-lang | |
parent | dev-libs/libclc: Add 18.0.0_pre20231019 snapshot (diff) | |
download | gentoo-ae0c81ea37d33d8d5ac629c212ec2ea57951862e.tar.gz gentoo-ae0c81ea37d33d8d5ac629c212ec2ea57951862e.tar.bz2 gentoo-ae0c81ea37d33d8d5ac629c212ec2ea57951862e.zip |
dev-lang/rapydscript-ng: new package, add 0.7.22, 9999
build dependency of app-text/calibre, needed to rebuild javascript
assets from source when unbundling dev-libs/mathjax-3.
Because this is nodejs software, we must suffer. Upon advice, I have
taken the route of making a live ebuild that not ::gentoo-quality, which
is "acceptable" for a live ebuild even if maybe in an ideal world live
ebuilds would not need this either. ;) The live ebuild can then be used
to generate a release assets tarball that doesn't download totally
random content from the internet in a stable release ebuild that wants
to actually get keyworded.
[sam: Update SRC_URI.]
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/33419
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/rapydscript-ng/Manifest | 2 | ||||
-rw-r--r-- | dev-lang/rapydscript-ng/metadata.xml | 15 | ||||
-rw-r--r-- | dev-lang/rapydscript-ng/rapydscript-ng-0.7.22.ebuild | 75 | ||||
-rw-r--r-- | dev-lang/rapydscript-ng/rapydscript-ng-9999.ebuild | 75 |
4 files changed, 167 insertions, 0 deletions
diff --git a/dev-lang/rapydscript-ng/Manifest b/dev-lang/rapydscript-ng/Manifest new file mode 100644 index 000000000000..2bcf41ce830d --- /dev/null +++ b/dev-lang/rapydscript-ng/Manifest @@ -0,0 +1,2 @@ +DIST rapydscript-ng-0.7.22.tar.gz 437745 BLAKE2B 5720a24743b0276a179a8c5da4c0f890f7c91a07968df7ac1e9c3a830d003fb4da7cfb124410428afe20cbf98429d6985750c129ab9ad01316a97d92793385ec SHA512 301d83c3a6715d2ae0e45bf344c48070273f160c3dccd3396788be360768c5df228b12f58f2eca3daea499bf6994a6cd0afc14c5cc590855d585d39753e06e00 +DIST rapydscript-ng-node_modules-0.7.22.tar.xz 2340024 BLAKE2B 7b4683ef86f639b7898d4120414844b7da15c86bcaee569be12dea29581d2aa594db713bd3ee8837bb05ffdea9f831b12302643c31eded3abaf3f88c59ac17e1 SHA512 8b26ffc4748b99a698aaa93e7a8e858b0071613596228ce880ff24889bc66171b4030dc568f0d60e52846ecb3b530c1f3adafd1fd2377ace726ee91f0a2a3c41 diff --git a/dev-lang/rapydscript-ng/metadata.xml b/dev-lang/rapydscript-ng/metadata.xml new file mode 100644 index 000000000000..ff2fd6660875 --- /dev/null +++ b/dev-lang/rapydscript-ng/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>eschwartz93@gmail.com</email> + <name>Eli Schwartz</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <remote-id type="github">kovidgoyal/rapydscript-ng</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-lang/rapydscript-ng/rapydscript-ng-0.7.22.ebuild b/dev-lang/rapydscript-ng/rapydscript-ng-0.7.22.ebuild new file mode 100644 index 000000000000..467e239b5828 --- /dev/null +++ b/dev-lang/rapydscript-ng/rapydscript-ng-0.7.22.ebuild @@ -0,0 +1,75 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/kovidgoyal/rapydscript-ng" + # this is nodejs software, so possibly unfixable. I am sorry. + # Instead, we will have to generate this with the live ebuild and upload assets + # using EGIT_OVERRIDE_COMMIT for the tagged version we need. + BDEPEND="app-arch/libarchive" + + inherit git-r3 +else + SRC_URI=" + https://github.com/kovidgoyal/rapydscript-ng/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/rapydscript-ng-node_modules-${PV}.tar.xz + " + KEYWORDS="~amd64" +fi + +inherit edo + +DESCRIPTION="Pythonic JavaScript that doesn't suck" +HOMEPAGE="https://github.com/kovidgoyal/rapydscript-ng" + +LICENSE="BSD" +SLOT="0" + +BDEPEND+=" net-libs/nodejs" +RDEPEND="net-libs/nodejs" + +maint_pkg_create() { + cd "${S}" || die + + edo npm install --omit=optional + + local ver=$(git describe) + ver=${ver#v} + local tar="${T}/rapydscript-ng-node_modules-${ver}.tar.xz" + + bsdtar -s "#\(.*\)#${PN}-node_modules-${ver}/~#S" -caf "${tar}" package-lock.json node_modules/ || die + einfo "Packaged tar now available:" + einfo "$(du -b "${tar}")" +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + maint_pkg_create + else + unpack ${A} + cp -r "${WORKDIR}"/${PN}-node_modules-${PV}/{node_modules,package-lock.json} "${S}" || die + fi +} + +src_compile() { + edo bin/rapydscript self --complete + rm -r release/ || die + mv dev/ release/ || die +} + +src_test() { + edo bin/rapydscript test +} + +src_install() { + local modulesdir=/usr/$(get_libdir)/node_modules/rapydscript-ng + + insinto "${modulesdir}" + doins -r * + + fperms +x "${modulesdir}"/bin/rapydscript + dosym -r "${modulesdir}"/bin/rapydscript /usr/bin/rapydscript +} diff --git a/dev-lang/rapydscript-ng/rapydscript-ng-9999.ebuild b/dev-lang/rapydscript-ng/rapydscript-ng-9999.ebuild new file mode 100644 index 000000000000..467e239b5828 --- /dev/null +++ b/dev-lang/rapydscript-ng/rapydscript-ng-9999.ebuild @@ -0,0 +1,75 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/kovidgoyal/rapydscript-ng" + # this is nodejs software, so possibly unfixable. I am sorry. + # Instead, we will have to generate this with the live ebuild and upload assets + # using EGIT_OVERRIDE_COMMIT for the tagged version we need. + BDEPEND="app-arch/libarchive" + + inherit git-r3 +else + SRC_URI=" + https://github.com/kovidgoyal/rapydscript-ng/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/rapydscript-ng-node_modules-${PV}.tar.xz + " + KEYWORDS="~amd64" +fi + +inherit edo + +DESCRIPTION="Pythonic JavaScript that doesn't suck" +HOMEPAGE="https://github.com/kovidgoyal/rapydscript-ng" + +LICENSE="BSD" +SLOT="0" + +BDEPEND+=" net-libs/nodejs" +RDEPEND="net-libs/nodejs" + +maint_pkg_create() { + cd "${S}" || die + + edo npm install --omit=optional + + local ver=$(git describe) + ver=${ver#v} + local tar="${T}/rapydscript-ng-node_modules-${ver}.tar.xz" + + bsdtar -s "#\(.*\)#${PN}-node_modules-${ver}/~#S" -caf "${tar}" package-lock.json node_modules/ || die + einfo "Packaged tar now available:" + einfo "$(du -b "${tar}")" +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + maint_pkg_create + else + unpack ${A} + cp -r "${WORKDIR}"/${PN}-node_modules-${PV}/{node_modules,package-lock.json} "${S}" || die + fi +} + +src_compile() { + edo bin/rapydscript self --complete + rm -r release/ || die + mv dev/ release/ || die +} + +src_test() { + edo bin/rapydscript test +} + +src_install() { + local modulesdir=/usr/$(get_libdir)/node_modules/rapydscript-ng + + insinto "${modulesdir}" + doins -r * + + fperms +x "${modulesdir}"/bin/rapydscript + dosym -r "${modulesdir}"/bin/rapydscript /usr/bin/rapydscript +} |