user/codeber-pages-server: new aport
This commit is contained in:
parent
b76dd8bfbb
commit
f815fbf7a5
6 changed files with 167 additions and 0 deletions
45
user/codeberg-pages-server/APKBUILD
Normal file
45
user/codeberg-pages-server/APKBUILD
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||||
|
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
||||||
|
pkgname=codeberg-pages-server
|
||||||
|
pkgver=5.1
|
||||||
|
pkgrel=0
|
||||||
|
pkgdesc="The Codeberg Pages Server – with custom domain support, per-repo pages using the "pages" branch, caching and more."
|
||||||
|
url="https://codeberg.org/Codeberg/pages-server"
|
||||||
|
arch="all"
|
||||||
|
license="EUPL-1.2"
|
||||||
|
depends="nginx"
|
||||||
|
makedepends="go just"
|
||||||
|
# tests disabled for now
|
||||||
|
options="!check"
|
||||||
|
install="$pkgname.post-install $pkgname.post-upgrade $pkgname.pre-install"
|
||||||
|
source="
|
||||||
|
$pkgname-$pkgver.tar.gz::https://codeberg.org/Codeberg/pages-server/archive/v$pkgver.tar.gz
|
||||||
|
codeberg-pages-server.openrc
|
||||||
|
upgrade-go-sqlite3-to-1.14.19.patch
|
||||||
|
"
|
||||||
|
builddir="$srcdir/"pages-server
|
||||||
|
subpackages="$pkgname-openrc"
|
||||||
|
pkgusers="git"
|
||||||
|
pkggroups="www-data"
|
||||||
|
|
||||||
|
export GOPATH=$srcdir/go
|
||||||
|
export GOCACHE=$srcdir/go-build
|
||||||
|
export GOTMPDIR=$srcdir
|
||||||
|
|
||||||
|
build() {
|
||||||
|
just build
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
msg "Packaging $pkgname"
|
||||||
|
install -Dm755 "$builddir"/build/codeberg-pages-server "$pkgdir"/usr/bin/codeberg-pages-server
|
||||||
|
|
||||||
|
install -Dm755 "$srcdir"/$pkgname.openrc \
|
||||||
|
"$pkgdir"/etc/init.d/$pkgname
|
||||||
|
}
|
||||||
|
|
||||||
|
sha512sums="
|
||||||
|
55a1dd5ed0f1cb2aaad1066eca8bfbd1d537169ed3712c748163ebff64edc45d05ac1f6f062433e232e2638a790232438282f96dd7410eb4cbaff7208f5f2427 codeberg-pages-server-5.1.tar.gz
|
||||||
|
4defb4fe3a4230f4aa517fbecd5e5b8bcef2a64e1b40615660ae9eec33597310a09df5e126f4d39ce7764bd1716c0a7040637699135c103cbc1879593c6c06f1 codeberg-pages-server.openrc
|
||||||
|
895f1c8d22fcf1d5491a6fe0ce5d93201f83b6dd5fc81b24016b609988fb6c66fdde75bb3830f385a5c83d96366ca3a5f4f9524f52058b6c5dfd8b80d14bac5b upgrade-go-sqlite3-to-1.14.19.patch
|
||||||
|
"
|
30
user/codeberg-pages-server/codeberg-pages-server.openrc
Normal file
30
user/codeberg-pages-server/codeberg-pages-server.openrc
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/sbin/openrc-run
|
||||||
|
|
||||||
|
name="$RC_SVCNAME"
|
||||||
|
cfgfile="/etc/conf.d/$RC_SVCNAME.conf"
|
||||||
|
pidfile="/run/$RC_SVCNAME.pid"
|
||||||
|
working_directory="/usr/share/webapps/authentik"
|
||||||
|
command="/usr/share/webapps/authentik/server"
|
||||||
|
command_user="authentik"
|
||||||
|
command_group="authentik"
|
||||||
|
start_stop_daemon_args=""
|
||||||
|
command_background="yes"
|
||||||
|
output_log="/var/log/authentik/$RC_SVCNAME.log"
|
||||||
|
error_log="/var/log/authentik/$RC_SVCNAME.err"
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
need redis
|
||||||
|
need postgresql
|
||||||
|
}
|
||||||
|
|
||||||
|
start_pre() {
|
||||||
|
cd "$working_directory"
|
||||||
|
checkpath --directory --owner $command_user:$command_group --mode 0775 \
|
||||||
|
/var/log/authentik \
|
||||||
|
/var/lib/authentik/certs
|
||||||
|
}
|
||||||
|
|
||||||
|
stop_pre() {
|
||||||
|
ebegin "Killing child processes"
|
||||||
|
kill $(ps -o pid= --ppid $(cat $pidfile)) || true
|
||||||
|
}
|
39
user/codeberg-pages-server/codeberg-pages-server.post-install
Executable file
39
user/codeberg-pages-server/codeberg-pages-server.post-install
Executable file
|
@ -0,0 +1,39 @@
|
||||||
|
#!/bin/sh
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
group=authentik
|
||||||
|
config_file='/etc/authentik/config.yml'
|
||||||
|
|
||||||
|
setcap 'cap_net_bind_service=+ep' /usr/share/webapps/authentik/server
|
||||||
|
|
||||||
|
if [ $(grep '@@SECRET_KEY@@' "$config_file") ]; then
|
||||||
|
echo "* Generating random secret in $config_file" >&2
|
||||||
|
|
||||||
|
secret_key="$(pwgen -s 50 1)"
|
||||||
|
sed -i "s|@@SECRET_KEY@@|$secret_key|" "$config_file"
|
||||||
|
chown root:$group "$config_file"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${0##*.}" = 'post-upgrade' ]; then
|
||||||
|
cat >&2 <<-EOF
|
||||||
|
*
|
||||||
|
* To finish Authentik upgrade run:
|
||||||
|
*
|
||||||
|
* authentik-manage migrate
|
||||||
|
*
|
||||||
|
EOF
|
||||||
|
else
|
||||||
|
cat >&2 <<-EOF
|
||||||
|
*
|
||||||
|
* 1. Adjust settings in /etc/authentik/config.yml.
|
||||||
|
*
|
||||||
|
* 2. Create database for Authentik:
|
||||||
|
*
|
||||||
|
* psql -c "CREATE ROLE authentik PASSWORD 'top-secret' INHERIT LOGIN;"
|
||||||
|
* psql -c "CREATE DATABASE authentik OWNER authentik ENCODING 'UTF-8';"
|
||||||
|
*
|
||||||
|
* 3. Run "authentik-manage migrate"
|
||||||
|
* 4. Setup admin user at https://<your server>/if/flow/initial-setup/
|
||||||
|
*
|
||||||
|
EOF
|
||||||
|
fi
|
1
user/codeberg-pages-server/codeberg-pages-server.post-upgrade
Symbolic link
1
user/codeberg-pages-server/codeberg-pages-server.post-upgrade
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
codeberg-pages-server.post-install
|
26
user/codeberg-pages-server/codeberg-pages-server.pre-install
Normal file
26
user/codeberg-pages-server/codeberg-pages-server.pre-install
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# It's very important to set user/group correctly.
|
||||||
|
|
||||||
|
authentik_dir='/var/lib/authentik'
|
||||||
|
|
||||||
|
if ! getent group authentik 1>/dev/null; then
|
||||||
|
echo '* Creating group authentik' 1>&2
|
||||||
|
|
||||||
|
addgroup -S authentik
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! id authentik 2>/dev/null 1>&2; then
|
||||||
|
echo '* Creating user authentik' 1>&2
|
||||||
|
|
||||||
|
adduser -DHS -G authentik -h "$authentik_dir" -s /bin/sh \
|
||||||
|
-g "added by apk for authentik" authentik
|
||||||
|
passwd -u authentik 1>/dev/null # unlock
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! id -Gn authentik | grep -Fq redis; then
|
||||||
|
echo '* Adding user authentik to group redis' 1>&2
|
||||||
|
|
||||||
|
addgroup authentik redis
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 0
|
|
@ -0,0 +1,26 @@
|
||||||
|
diff --git a/go.mod.orig b/go.mod
|
||||||
|
index eba292e..00310e5 100644
|
||||||
|
--- a/go.mod.orig
|
||||||
|
+++ b/go.mod
|
||||||
|
@@ -11,7 +11,7 @@ require (
|
||||||
|
github.com/go-sql-driver/mysql v1.6.0
|
||||||
|
github.com/joho/godotenv v1.4.0
|
||||||
|
github.com/lib/pq v1.10.7
|
||||||
|
- github.com/mattn/go-sqlite3 v1.14.16
|
||||||
|
+ github.com/mattn/go-sqlite3 v1.14.19
|
||||||
|
github.com/microcosm-cc/bluemonday v1.0.26
|
||||||
|
github.com/reugn/equalizer v0.0.0-20210216135016-a959c509d7ad
|
||||||
|
github.com/rs/zerolog v1.27.0
|
||||||
|
diff --git a/go.sum.orig b/go.sum
|
||||||
|
index 7ea8b78..19145ea 100644
|
||||||
|
--- a/go.sum.orig
|
||||||
|
+++ b/go.sum
|
||||||
|
@@ -479,6 +479,8 @@ github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m
|
||||||
|
github.com/mattn/go-sqlite3 v1.14.9/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
|
||||||
|
github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y=
|
||||||
|
github.com/mattn/go-sqlite3 v1.14.16/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
|
||||||
|
+github.com/mattn/go-sqlite3 v1.14.19 h1:fhGleo2h1p8tVChob4I9HpmVFIAkKGpiukdrgQbWfGI=
|
||||||
|
+github.com/mattn/go-sqlite3 v1.14.19/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg=
|
||||||
|
github.com/mattn/go-tty v0.0.0-20180219170247-931426f7535a/go.mod h1:XPvLUNfbS4fJH25nqRHfWLMa1ONC8Amw+mIA639KxkE=
|
||||||
|
github.com/mattn/go-tty v0.0.3/go.mod h1:ihxohKRERHTVzN+aSVRwACLCeqIoZAWpoICkkvrWyR0=
|
||||||
|
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
|
Loading…
Reference in a new issue