www-apps/misskey: add 13.6.1

Signed-off-by: tastytea <tastytea@tastytea.de>
This commit is contained in:
tastytea 2023-02-14 11:36:13 +01:00
parent 35b0e82304
commit f2695a310d
Signed by: tastytea
SSH Key Fingerprint: SHA256:FBkvrOlhq5use1XEttyUGT4bUTDVA1ar9SgIc9P03cM
2 changed files with 163 additions and 0 deletions

View File

@ -2,5 +2,7 @@ DIST misskey-13.4.0-deps.tar.xz 336401424 BLAKE2B 9751911ad0c9fa57f01da4f7b1f824
DIST misskey-13.4.0.tar.gz 20108366 BLAKE2B 5e2bb75c818720c70f21e24950638026ea9f43be3805e9945231d3e047bfb5eabf78e37bbaa13a82c69d2ea58601986e00164478d5c25ed37ad2cff3656dd892 SHA512 3ebbd69c7564683a24f6c4c86b1b81c2adb3f283522267d27acbab0eedb1c352644bb6bb0ff3689785b3cd2b406519ed39f63ae66ae9bc66d4fb785deff97a5e
DIST misskey-13.5.6-deps.tar.xz 336399864 BLAKE2B b0c59354d1417003a5d13fa85efca8b478bb5f374313772efbd9d598133bb994db277b832ccb179733b2b0bd9ff5a463775d4de480f57b88ed9e092656024de1 SHA512 a7833e063f13fc136f0444ebc89f3eea7ef6df72eaf8a45d05f56c24f049cbcd6c177dc612f3a4a034b0d4ff99eb37257c00458a77ccb3d7b51dfbc494af95f5
DIST misskey-13.5.6.tar.gz 20112087 BLAKE2B 0b8c5e58f0a02883219931a295de7eb9fb98c53263140a7fdb96cf26baaf450b6a1d56aee183897e926fc16ae79eaf3f9a1f11b1c73ef7e34e6c5b3891a53dcf SHA512 dc5f6cb7113ed8d005b68a7d7a1126532135f72b5c751d09eb0b9f43275685f7fb07d0f1d5f867870aee3b23c99c62d9b4fbe97d422910519ca064ce43ad4137
DIST misskey-13.6.1-deps.tar.xz 336311716 BLAKE2B 3339e6eaa08153daf30914807f390037fc2538f8be1b59a28bf1f2e7b21ea0951e4579f55f3d1994e91b152f440090cae882a6a48c20c98b3c42f841aedde020 SHA512 b2e66f074c309e1108aa893abe0951670b4d81132e777c48db39076385914554f9acf36f8061088d64c8b1f29903bb2fea0fc7c0dff4c436a664728c6e83992b
DIST misskey-13.6.1.tar.gz 20098305 BLAKE2B db98436038b20a247dbf710123e0b7ebd3b48693aba53ec85c9a855cde8f54f472a3ac3f372fe3b5ac1e9536a5ef620d3baa337c731daa9dac89f8290aee8e62 SHA512 d197bcd49d6a539c45d06cb3d3128f8a5eb7e21b3fe97ded87a5a6bb10ec508cece4ab919e05a5d97ec98c4dee58dbb2291d7c5c3fa95f0dcd6a3192ed6b9b4d
DIST misskey-assets-0179793ec891856d6f37a3be16ba4c22f67a81b5.tar.gz 40471635 BLAKE2B 5305b5b316aa9d27f860e0e2c86f55eeb4140fd76c9cc7a753f78f93c509a10237033ec2109d2e806605f302d3fc9e9b916d2967053a4bce9b2cdea14df5885b SHA512 b4de7d8ab43f27e14372bb7246be4b032b142f22913ceaaa01e7631a1f702ba77ccf25482038cf2341f7a0ae92d54a1200bb654cac1d409b1ddcc113513b3f16
DIST misskey-emojis-cae981eb4c5189ea9ea3230e83b876a5068df7d1.tar.gz 12933900 BLAKE2B e37df7009b21276debd2118d1fb12bc917aa148a088e186a2fe85597cb5ea1a9aa79600919e7d0196af2bf8dfc6fee7f1b9cc6b898cda00810ece2969291e5a7 SHA512 68fce9f6afd7bd3db40ca5e990514f9d88506253f100b7c9db2032be97594919c36ab4bdc235ebb98647b7cc827f88d53bf9bdb59b4017888a1ec3a68e2e06fb

View File

@ -0,0 +1,161 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit optfeature savedconfig
# NOTE: check for updates on each bump
MY_COMMIT_ASSETS="0179793ec891856d6f37a3be16ba4c22f67a81b5"
MY_COMMIT_EMOJIS="cae981eb4c5189ea9ea3230e83b876a5068df7d1"
DESCRIPTION="An interplanetary microblogging platform"
HOMEPAGE="https://misskey-hub.net/"
SRC_URI="
https://github.com/misskey-dev/misskey/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
https://github.com/misskey-dev/assets/archive/${MY_COMMIT_ASSETS}.tar.gz -> ${PN}-assets-${MY_COMMIT_ASSETS}.tar.gz
https://github.com/misskey-dev/emojis/archive/${MY_COMMIT_EMOJIS}.tar.gz -> ${PN}-emojis-${MY_COMMIT_EMOJIS}.tar.gz
https://tastytea.de/files/gentoo/${P}-deps.tar.xz
"
# NOTE: to generate the deps archive:
# export CYPRESS_CACHE_FOLDER="$(realpath ./packages-cache)"
# export npm_config_cache="$(realpath ./packages-cache)"
# pnpm config set store-dir "$(realpath ./packages-cache)"
# pnpm install --frozen-lockfile
# tar -caf ${P}-deps.tar.xz packages-cache
# unset CYPRESS_CACHE_FOLDER npm_config_cache
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE="nginx +savedconfig source"
REQUIRED_USE="savedconfig"
RESTRICT="strip network-sandbox"
COMMON_DEPEND="
>=net-libs/nodejs-18.13:=[npm]
"
BDEPEND="
${COMMON_DEPEND}
dev-lang/nasm
virtual/pkgconfig
"
RDEPEND="
${COMMON_DEPEND}
acct-user/misskey
>=dev-db/postgresql-15
dev-db/redis
nginx? ( www-servers/nginx )
"
QA_PREBUILT="
/opt/misskey/misskey/packages/backend/node_modules/msgpackr-extract/prebuilds/*
/opt/misskey/misskey/packages/client/node_modules/microtime/prebuilds/*
"
pkg_setup() {
# check if pnpm from nodejs is installed
if ! type pnpm > /dev/null 2>&1; then
eerror "pnpm not found. It can be installed with 'corepack enable'"
fi
}
src_unpack() {
default
mv --no-target-directory assets-${MY_COMMIT_ASSETS} ${P}/${PN}-assets \
|| die "Could not move assets"
mv --no-target-directory emojis-${MY_COMMIT_EMOJIS} ${P}/fluent-emojis \
|| die "Could not move emojis"
mv packages-cache "${T}"/ || die "Could not move packages cache"
}
src_prepare() {
export CYPRESS_CACHE_FOLDER="${T}"/packages-cache
export npm_config_cache="${T}"/packages-cache
export PNPMFLAGS="--verbose"
pnpm config set cache "${T}"/packages-cache
pnpm config set store-dir "${T}"/packages-cache
# use system node-gyp
PATH+=":/usr/lib64/node_modules/npm/bin/node-gyp-bin"
export npm_config_nodedir=/usr/include/node/
restore_config .config/default.yml
if [[ ! -f .config/default.yml ]]; then
eerror "Edit .config/example.yml and save it to the location mentioned above"
die "No config file found"
fi
default
}
src_compile() {
pnpm ${PNPMFLAGS} install --frozen-lockfile || die "dependency installation failed"
NODE_ENV=production pnpm ${PNPMFLAGS} run build || die "build failed"
}
src_install() {
insinto opt/misskey/misskey
insopts -o misskey -g misskey
if use source; then
doins -r .
else
doins -r package.json .node-version .config built node_modules packages \
fluent-emojis pnpm-workspace.yaml pnpm-lock.yaml
fi
# insopts doesn't affect directories
chown --recursive misskey:misskey "${ED}"/opt/misskey/misskey
chmod o= "${ED}"/opt/misskey/misskey
newinitd "${FILESDIR}"/${PN}.initd ${PN}
if use nginx; then
sed -i 's/use logger$/use logger nginx/' "${ED}"/etc/init.d/${PN} \
|| die "Could not modify OpenRC init script"
fi
einstalldocs
}
pkg_preinst() {
# Apparently Misskey creates files at runtime that can interfere
# after an upgrade. Normally you would run 'yarn cleanall'.
einfo "Cleaning up Misskey directory …"
su --shell /bin/bash --login --command \
"rm -rf misskey/{built,node_modules} && rm -rf misskey/packages/{backend,client,sw}/{built,node_modules}" \
misskey || die "cleanup failed"
}
pkg_postinst() {
# Only run migrations if database exists
if su --command "psql misskey -c ''" postgres; then
einfo "Running migration…"
su --shell /bin/bash --login --command \
"cd misskey && pnpm run migrate" misskey || die "migration failed"
else
elog "Run emerge --config ${CATEGORY}/${PN} to initialise the PostgreSQL database"
fi
if use nginx; then
einfo "An nginx example config can be found at <https://misskey-hub.net/en/docs/admin/nginx.html>"
fi
optfeature "thumbnail generation support" media-video/ffmpeg
}
pkg_config() {
einfo "Initialising PostgreSQL database"
echo -n "password for misskey user: "
read -r MY_PASSWORD || die "Reading password failed"
echo "create database misskey with encoding = 'UTF8'; create user misskey with encrypted password '${MY_PASSWORD}'; grant all privileges on database misskey to misskey; \q" \
| su --command psql postgres || die "database creation failed"
su --shell /bin/bash --login --command \
"cd misskey && pnpm run init" misskey || die "database initialisation failed"
ewarn "When you first start Misskey you will be asked to add an admin account via the web interface, and registrations are enabled."
ewarn "Do not expose the web interface to the public until after you configured your instance\!"
}