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>
This commit is contained in:
Eli Schwartz
2023-10-18 17:13:28 -04:00
committed by Sam James
parent 31bc24e3de
commit ae0c81ea37
5 changed files with 171 additions and 0 deletions

View File

@@ -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

View File

@@ -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>

View File

@@ -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
}

View File

@@ -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
}

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Eli Schwartz <eschwartz93@gmail.com> (2023-10-19)
# Requires net-libs/nodejs which is unavailable on amd64/x32.
dev-lang/rapydscript-ng
# Maciej Barć <xgqt@gentoo.org> (2023-10-07)
# Requires net-libs/nodejs which is unavailable on amd64/x32.
app-containers/devcontainer