diff options
author | metamuffin | 2024-01-05 16:27:05 +0100 |
---|---|---|
committer | metamuffin | 2024-01-05 16:27:05 +0100 |
commit | 5ba97fbada06e986e3cc23284a038f52477aaa7a (patch) | |
tree | 49ce7d9e85fd4f36abd4b138c5d7fe1770e895c7 | |
download | aur-5ba97fbada06e986e3cc23284a038f52477aaa7a.tar.gz |
a
-rw-r--r-- | .SRCINFO | 29 | ||||
-rw-r--r-- | PKGBUILD | 41 | ||||
-rw-r--r-- | jellything.service | 32 | ||||
-rw-r--r-- | jellything.yaml | 20 | ||||
-rw-r--r-- | sysusers.conf | 1 |
5 files changed, 123 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..91cf4fb78e20 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,29 @@ +pkgbase = jellything-git + pkgver = 0.1.0 + pkgrel = 1 + url = https://codeberg.org/metamuffin/jellything + arch = i686 + arch = x86_64 + arch = armv6h + arch = armv7h + arch = aarch64 + license = AGPL3 + makedepends = rustup + makedepends = esbuild + makedepends = nasm + makedepends = meson + makedepends = ninja + makedepends = cmake + depends = dav1d + optdepends = ffmpeg: Transcoding + backup = etc/jellything.yaml + source = git+https://codeberg.org/metamuffin/jellything.git + source = jellything.service + source = jellything.yaml + source = sysusers.conf + sha256sums = SKIP + sha256sums = SKIP + sha256sums = SKIP + sha256sums = SKIP + +pkgname = jellything-git diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..2bd58de9a3e7 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,41 @@ +# Maintainer: metamuffin <metamuffin@disroot.org> + +pkgname=jellything-git +pkgver=0.1.0 +pkgrel=1 +pkgdesc="" +arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64') +url="https://codeberg.org/metamuffin/jellything" +license=('AGPL3') +depends=('dav1d') +optdepends=('ffmpeg: Transcoding') +makedepends=('rustup' 'esbuild' 'nasm' 'meson' 'ninja' 'cmake') +backup=('etc/jellything.yaml') +source=("git+https://codeberg.org/metamuffin/jellything.git" + "jellything.service" + "jellything.yaml" + "sysusers.conf") +sha256sums=("SKIP" + "SKIP" + "SKIP" + "SKIP") + +prepare() { + cd "jellything" + git submodule init + git submodule update +} +build() { + cd "jellything" + rustup default nightly + cargo +nightly build --release + strip -s target/release/jellything + strip -s target/release/jellytool +} +package() { + install -Dm755 jellything/target/release/jellything "$pkgdir/usr/bin/jellything" + install -Dm755 jellything/target/release/jellytool "$pkgdir/usr/bin/jellytool" + install -Dm644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/jellything.conf" + install -Dm644 jellything.service "$pkgdir/usr/lib/systemd/system/jellything.service" + install -Dm640 jellything.yaml "$pkgdir/etc/jellything.yaml" +} diff --git a/jellything.service b/jellything.service new file mode 100644 index 000000000000..d89cc795e651 --- /dev/null +++ b/jellything.service @@ -0,0 +1,32 @@ +[Unit] +Description=jellything media streaming server +After=network.target +Wants=network-online.target + +[Service] +ExecStart=/usr/bin/jellything /etc/jellything.yaml +User=keks-meet-server +LockPersonality=yes +MemoryDenyWriteExecute=yes +NoNewPrivileges=yes +PrivateDevices=true +PrivateTmp=true +ProtectClock=yes +ProtectControlGroups=yes +ProtectHome=true +ProtectHostname=yes +ProtectKernelLogs=yes +ProtectKernelModules=yes +ProtectKernelTunables=yes +ProtectSystem=full +RestrictAddressFamilies=~AF_PACKET AF_NETLINK +RestrictNamespaces=yes +RestrictSUIDSGID=yes +RestrictRealtime=yes +Restart=always +SystemCallArchitectures=native +SystemCallFilter=@system-service +Type=simple + +[Install] +WantedBy=multi-user.target diff --git a/jellything.yaml b/jellything.yaml new file mode 100644 index 000000000000..1b3a9049b41d --- /dev/null +++ b/jellything.yaml @@ -0,0 +1,20 @@ +hostname: example.org +brand: "Jellything" +slogan: "" + +media_path: "/srv/media" +asset_path: "/var/lib/jellything/assets" +database_path: "/var/lib/jellything/db" +library_path: "/var/lib/jellything/library" +temp_path: "/tmp/jellything" +cache_path: "/var/cache/jellything" + +# Both options need to be set to enable admin login. +#admin_username: "admin" +#admin_password: "hunter2" + +# To avoid sign-out on server restart, generate persistent keys here. +# Use `head -c 32 /dev/random | base64`. +#session_key: +#cookie_key: + diff --git a/sysusers.conf b/sysusers.conf new file mode 100644 index 000000000000..01c35a718356 --- /dev/null +++ b/sysusers.conf @@ -0,0 +1 @@ +u jellything - "jellything media streaming server" - - |