verdaccio: Initial import

Signed-off-by: Stefan Knoblich <stkn@bitplumber.de>
This commit is contained in:
2023-09-26 18:25:39 +02:00
parent 77835f954b
commit d451158e73
8 changed files with 150 additions and 0 deletions

View File

@@ -0,0 +1 @@
EBUILD verdaccio-0.ebuild 194 BLAKE2B 17096873100c81380415895fdddfc0d8cddeda8ec9ea4c658ed5e0737e0163e8e891f0137df7dc042294b3d334c7feb41f54857cdbc9a44807f746187cf5d9c7 SHA512 d6ab3e00012f99e80779a84c7a686eafe99f0b52e4a85e1c3f8e4ee6fb354d57eb75112141e38394e02b45c1f7d97d977938b3398bfcb24e0bbfab97501609b2

View File

@@ -0,0 +1,9 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
DESCRIPTION="Verdaccio NPM registry group"
ACCT_GROUP_ID=987

View File

@@ -0,0 +1 @@
EBUILD verdaccio-0.ebuild 301 BLAKE2B 16b5f22bb0735127881041c9fab3412bd681e012f7de662b1f9736c2e7531d942938dcac3689c8bb28c5fd821ad46dc0318e0bed3419fb01b14388bcc653b178 SHA512 7967a8710f17b4ac862c63e2398446d1a45cb68c9d7b8954e220db86a20c8a4f45d75b2835d216260c9768a2eb994f91840d60ce2bfb438909ebb2ffdbdd1a9c

View File

@@ -0,0 +1,13 @@
# Copyright 2019-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
DESCRIPTION="Verdaccio NPM registry user"
ACCT_USER_ID=987
ACCT_USER_HOME=/var/lib/verdaccio
ACCT_USER_HOME_PERMS=0750
ACCT_USER_GROUPS=( verdaccio )
acct-user_add_deps

View File

@@ -0,0 +1,4 @@
AUX verdaccio.confd 332 BLAKE2B 30fc255502a5a6ab21eef31097b899143d38494b768ce66ce9b611b283caac7fa3232bd0512a1a450b3187948a78ff89e29767a121bea86c6f1448ff372acc23 SHA512 6b9efae2fca93a3ec1a74b3fc6ae07f31df48916d14d56b22c5ce225f22d8bc3bee23a6ef8b1dc6dd8b13b0f2469a73d139096a76330fb891f564d1983e84af1
AUX verdaccio.initd 897 BLAKE2B 8dee494d5fe8d9f186549d542adf19553d1d9e8b1b10cc416ab40774584f23fd09118f84976f03db8450c57731bdfe038b1ae5fc8010816ef027d90f60bc3bbb SHA512 df70d528293415a5ca3f461f349d7aaca5496757e1c28a78c16889c5172cdb305f0cee6fcd85fe5514eaad18bd32caa2beb57bbea49e3a22eb0b73aed9bfd082
DIST verdaccio-4.13.2.tgz 2220664 BLAKE2B 06b430d099b8640872f0f8cb31058603a16f5087480818b07c1ebda6abaf514c3b7280c0a0f3eaa252c6fe69552f43e40ec0cc414810b1f91d5276d502ba17dd SHA512 965330363d5603b0d2575fcbdecbd26e7e1ad023d7c351f09f1ff19373efa9a59f085ff9d56773842b880ab1a0a60189f1f2c93a8ec2eebb39efcfab20200503
EBUILD verdaccio-4.13.2.ebuild 1933 BLAKE2B a76409a55382edee029c22d31c335a2fe5a7c03b53aa10dcf13a91cdc95a31872a2624b5ebdf8e0c3520b8dd9d52fbff3bf9c54b5a2ed25206d66c41bda201e2 SHA512 745d5e973f8d6d0fe700e56607b36fea12283be987127ec13184faaef1283af8e2469b2e0c72476c2e104f1cde2a89ca29a90e8e96ece43b57dbd444b2680235

View File

@@ -0,0 +1,16 @@
#
#
#
# User and group to run under
#VERDACCIO_USER=verdaccio
#VERDACCIO_GROUP=verdaccio
# Additional options passed on startup
#VERDACCIO_OPTS="--listen 127.0.0.1:4873"
# Location of storage and database files
#VERDACCIO_DATA_DIR=/var/lib/verdaccio
# Configuration file to use
#VERDACCIO_CONFIGFILE=/etc/verdaccio/config.yaml

View File

@@ -0,0 +1,25 @@
#!/sbin/openrc-run
: ${VERDACCIO_CONFIGFILE_DIR:=/etc/verdaccio}
: ${VERDACCIO_CONFIGFILE:=${VERDACCIO_CONFIGFILE_DIR}/config.yaml}
: ${VERDACCIO_DATA_DIR:=/var/lib/${RC_SVCNAME}}
: ${VERDACCIO_PIDFILE_DIR:=/run}
: ${VERDACCIO_PIDFILE:=${VERDACCIO_PIDFILE_DIR}/${RC_SVCNAME}.pid}
: ${VERDACCIO_LOGFILE_DIR:=/var/log/verdaccio}
: ${VERDACCIO_LOGFILE:=${VERDACCIO_LOGFILE_DIR}/${RC_SVCNAME}.log}
: ${VERDACCIO_GROUP:=verdaccio}
: ${VERDACCIO_USER:=verdaccio}
directory="${VERDACCIO_DATA_DIR}"
pidfile="${VERDACCIO_PIDFILE}"
required_files="${VERDACCIO_CONFIGFILE}"
required_dirs="${VERDACCIO_PIDFILE_DIR} ${VERDACCIO_DATA_DIR} ${VERDACCIO_LOGFILE_DIR}"
command="/usr/sbin/verdaccio"
command_args="--config ${VERDACCIO_CONFIGFILE} ${VERDACCIO_OPTS}"
command_user="${VERDACCIO_USER}:${VERDACCIO_GROUP}"
command_background="true"
output_log="${VERDACCIO_LOGFILE}"
error_log="${VERDACCIO_LOGFILE}"

View File

@@ -0,0 +1,81 @@
#
#
#
EAPI=7
MY_P="${PN}-${PV/_beta/-beta.}"
HOMEPAGE="https://www.verdaccio.org/"
DESCRIPTION="A lightweight private npm proxy registry"
SRC_URI="https://registry.npmjs.org/${PN}/-/${MY_P}.tgz"
RESTRICT="network-sandbox"
SLOT="0"
KEYWORDS="~amd64 ~x86"
LICENSE="MIT"
S="${WORKDIR}/package"
RDEPEND="
>=net-libs/nodejs-16.0.0
acct-user/verdaccio
acct-group/verdaccio
"
DEPEND="${RDEPEND}
sys-apps/yarn"
DOCS=(
conf/default.yaml
conf/full.yaml
)
src_unpack() {
# Unpack top-level project
default_src_unpack
# Fetch dependencies
if [[ -d "${PORTAGE_ACTUAL_DISTDIR}/yarn-cache" ]]
then
addwrite "${PORTAGE_ACTUAL_DISTDIR}/yarn-cache"
else
addwrite "${PORTAGE_ACTUAL_DISTDIR}"
fi
yarn --cache-folder "${PORTAGE_ACTUAL_DISTDIR}/yarn-cache" --cwd "${S}" \
--prefer-offline --pure-lockfile --prod install \
|| die "Failed to install dependencies"
}
src_prepare() {
default_src_prepare
# Fix location of include files
sed -i -e "s:../build/:${EPREFIX}/usr/share/verdaccio/build/:" \
bin/verdaccio || die ""
# Locations in configuration files are relative to config file path, convert to absolute
sed -i -E -e "s|^(storage\|plugins):.+|\1: ${EPREFIX}/var/lib/verdaccio/\1|" \
conf/*.yaml || die ""
}
src_install() {
default_src_install
keepdir /etc/verdaccio
insinto /etc/verdaccio
newins conf/default.yaml config.yaml
insinto /usr/share/verdaccio
doins -r build index.js node_modules package.json
dosym /etc/verdaccio /usr/share/verdaccio/conf
dosbin bin/verdaccio
keepdir /var/{lib,log}/verdaccio
keepdir /var/lib/verdaccio/{plugins,storage}
fowners verdaccio:verdaccio /var/{lib,log}/verdaccio
fowners verdaccio:verdaccio /var/lib/verdaccio/{plugins,storage}
fperms 0750 /var/{lib,log}/verdaccio
fperms 0750 /var/lib/verdaccio/{plugins,storage}
newinitd "${FILESDIR}/verdaccio.initd" verdaccio
newconfd "${FILESDIR}/verdaccio.confd" verdaccio
}