apkbuilds @ 87a1f27eea7dfc9f8574c6c11061480841c173df

  1diff --git a/apks/invidious/APKBUILD b/apks/invidious/APKBUILD
  2new file mode 100644
  3index 0000000000000000000000000000000000000000..79d5ec17c14a2da551a8ad324a93f9f776a652ec
  4--- /dev/null
  5+++ b/apks/invidious/APKBUILD
  6@@ -0,0 +1,74 @@
  7+# Maintainer: Francesco Camuffo <dev@fmac.xyz>
  8+pkgname=invidious
  9+pkgver=0_git20231007
 10+_commit=60fae015d8b5e4b0bfac8306065db07f93c4c661
 11+pkgrel=0
 12+pkgdesc="Alternative front-end to YouTube"
 13+url="https://github.com/iv-org/invidious"
 14+arch="x86_64"
 15+license="AGPL-3.0-or-later"
 16+depends="
 17+	rsvg-convert
 18+"
 19+options="!check" # testing breaks for now fixing later
 20+makedepends="
 21+	crystal
 22+	git
 23+	libxml2-dev
 24+	openssl-dev
 25+	shards
 26+	sqlite-dev
 27+	yaml-dev
 28+	zlib-dev
 29+"
 30+install="$pkgname.pre-install"
 31+pkgusers="$pkgname"
 32+pkggroups="$pkgname"
 33+subpackages="$pkgname-openrc"
 34+_mocks_commit=cb16e0343c8f94182615610bfe3c503db89717a7
 35+source="
 36+	$pkgname-$_commit.tar.gz::https://github.com/iv-org/invidious/archive/$_commit.tar.gz
 37+	$pkgname.initd
 38+"
 39+builddir="$srcdir/invidious-$_commit"
 40+
 41+prepare() {
 42+	sed -i src/invidious.cr \
 43+		-e 's/\(CURRENT_BRANCH \) = .*/\1 = "master"/' \
 44+		-e "s/\(CURRENT_COMMIT \) = .*/\1 = \"${_commit:0:7}\"/" \
 45+		-e "s/\(CURRENT_VERSION\) = .*/\1 = \"$pkgver\"/" \
 46+		-e "s/\(ASSET_COMMIT\) = .*/\1 = \"${_commit:0:7}\"/"
 47+
 48+	datadir=/usr/share/webapps/invidious
 49+	# fix paths
 50+	sed -i src/invidious.cr \
 51+		-e "s|\(public_folder\) \"assets\"|\1 \"$datadir/assets\"|"
 52+	sed -i src/invidious/helpers/i18n.cr \
 53+		-e "s|File.read(\"locales/|File.read(\"$datadir/locales/|"
 54+	sed -i src/invidious/database/base.cr \
 55+		-e "s|config/sql|/etc/$pkgname/\0|g"
 56+
 57+	default_prepare
 58+}
 59+
 60+build() {
 61+	shards install
 62+	crystal build \
 63+		--release \
 64+		-Ddisable_quic \
 65+		src/invidious.cr
 66+}
 67+
 68+package() {
 69+	install -Dm755 "$pkgname" "$pkgdir"/usr/bin/invidious
 70+	install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
 71+	mkdir -p "$pkgdir"/usr/share/webapps/invidious
 72+	cp -r "$builddir"/assets "$builddir"/locales \
 73+		"$pkgdir"/usr/share/webapps/invidious
 74+	install -Dm644 "$builddir"/config/config.example.yml \
 75+		"$pkgdir"/etc/"$pkgname"/config.yml
 76+}
 77+sha512sums="
 78+bc2295d5d43ac3b793914e4baa0bdd6c4d6ff1746629b3db0b81a22ca057acb5cc28a7af984573ace936acaabedc2ce134d9ecf76386101893af408976f8f44c  invidious-60fae015d8b5e4b0bfac8306065db07f93c4c661.tar.gz
 79+ed0a2e498751927c1ad82619395a07c169f7353a9c1453381ad288ad501b915010df5b799e4f102e034f0483b9101b9a8ae40d150b3d7db80605f87b9ca6f596  invidious.initd
 80+"
 81diff --git a/apks/invidious/invidious.initd b/apks/invidious/invidious.initd
 82new file mode 100644
 83index 0000000000000000000000000000000000000000..ba29fce025b9f0bfd03ee28b3b8f7373e3184eb2
 84--- /dev/null
 85+++ b/apks/invidious/invidious.initd
 86@@ -0,0 +1,13 @@
 87+#!/sbin/openrc-run
 88+
 89+supervisor=supervise-daemon
 90+name=invidious
 91+command="/usr/bin/invidious"
 92+command_user="${INVIDIOUS_USER:-invidious}"
 93+supervise_daemon_args="--env INVIDIOUS_CONFIG_FILE='${INVIDIOUS_CONFIG_FILE:-/etc/invidious/config.yml}'"
 94+pidfile="/run/invidious.pid"
 95+
 96+depend() {
 97+  need net
 98+  after firewall
 99+}
100diff --git a/apks/invidious/invidious.pre-install b/apks/invidious/invidious.pre-install
101new file mode 100644
102index 0000000000000000000000000000000000000000..bce4a4ea1c066b0227f707c23af7e55bfa849878
103--- /dev/null
104+++ b/apks/invidious/invidious.pre-install
105@@ -0,0 +1,7 @@
106+#!/bin/sh
107+
108+addgroup -S invidious 2>/dev/null
109+adduser -S -D -h /usr/share/webapps/invidious -s /sbin/nologin -G invidious \
110+	-g invidious invidious 2>/dev/null
111+
112+exit 0