You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
1.8 KiB
76 lines
1.8 KiB
# Copyright 2023-2024 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 ~arm64"
|
|
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
|
|
}
|