modrinth-enhanced, modrinth-enhanced-bin: new packages

This commit is contained in:
Felitendo committed 2026-09-15 19:53:38 +02:00
1 parent fd2127f399
commit 89ee59dbb2
7 files changed
+348

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
pkgbase = modrinth-enhanced-bin
pkgdesc = Modrinth App without ads or telemetry, with offline and Ely.by accounts and Linux fixes (upstream binary)
pkgver = 0.21.2
pkgrel = 1
url = https://github.com/Felitendo/Modrinth-Enhanced
arch = x86_64
license = GPL-3.0-only
depends = cairo
depends = dbus
depends = gdk-pixbuf2
depends = glib2
depends = glibc
depends = gtk3
depends = hicolor-icon-theme
depends = libgcc
depends = libsoup3
depends = webkit2gtk-4.1
depends = libgl
depends = libpulse
depends = libx11
depends = libxcursor
depends = libxext
depends = libxxf86vm
optdepends = xorg-xrandr: for older Minecraft versions
provides = modrinth-enhanced
conflicts = modrinth-enhanced
noextract = modrinth-enhanced-bin-0.21.2.deb
options = !strip
options = !debug
source = modrinth-enhanced-bin-0.21.2.deb::https://github.com/Felitendo/Modrinth-Enhanced/releases/download/v0.21.2/Modrinth.Enhanced_0.21.2_amd64.deb
sha256sums = 32ed32575050b4ac1a990b54a894e82c17860a48d5a228ce0d1ce7fc2c9d5d6f
pkgname = modrinth-enhanced-bin
+32
View File
@@ -0,0 +1,32 @@
# Maintainer: Felitendo
# This PKGBUILD is updated automatically:
# https://github.com/Felitendo/PKGBUILDS
pkgname=modrinth-enhanced-bin
pkgver=0.21.2
pkgrel=1
pkgdesc="Modrinth App without ads or telemetry, with offline and Ely.by accounts and Linux fixes (upstream binary)"
arch=('x86_64')
url="https://github.com/Felitendo/Modrinth-Enhanced"
license=('GPL-3.0-only')
depends=('cairo' 'dbus' 'gdk-pixbuf2' 'glib2' 'glibc' 'gtk3' 'hicolor-icon-theme'
'libgcc' 'libsoup3' 'webkit2gtk-4.1'
# loaded by Minecraft, not by the launcher
'libgl' 'libpulse' 'libx11' 'libxcursor' 'libxext' 'libxxf86vm')
optdepends=('xorg-xrandr: for older Minecraft versions')
provides=('modrinth-enhanced')
conflicts=('modrinth-enhanced')
options=('!strip' '!debug')
# A new revision of the patches on the same Modrinth App release is tagged
# v0.21.2-2, which pkgver spells 0.21.2.r2; see pkg.sh.
_tag="v0.21.2"
_asset="Modrinth.Enhanced_0.21.2_amd64.deb"
source=("${pkgname}-${pkgver}.deb::https://github.com/Felitendo/Modrinth-Enhanced/releases/download/${_tag}/${_asset}")
noextract=("${pkgname}-${pkgver}.deb")
sha256sums=('32ed32575050b4ac1a990b54a894e82c17860a48d5a228ce0d1ce7fc2c9d5d6f')
package() {
bsdtar -xOf "$srcdir/${pkgname}-${pkgver}.deb" 'data.tar.*' \
| bsdtar -xpf - -C "$pkgdir" usr
ln -s ModrinthEnhanced "$pkgdir/usr/bin/modrinth-enhanced"
}
+45
View File
@@ -0,0 +1,45 @@
# modrinth-enhanced-bin - Modrinth Enhanced (https://github.com/Felitendo/Modrinth-Enhanced),
# the Modrinth App (Tauri) with a series of patches applied: no ads, no
# telemetry, offline and Ely.by accounts, Linux fixes.
#
# Upstream publishes a bundled .deb per release, so there is no build step
# here: on a new version only pkgver, the tag, the asset name and the checksum
# are refreshed and the PKGBUILD repackages the deb directly.
#
# Releases are tagged after the Modrinth App release they are built on
# (v0.21.2). When the patches change without a new Modrinth App release, the
# rebuild is tagged as a revision (v0.21.2-2) while the app and its .deb keep
# the plain version. pkgver turns the hyphen into ".r" (0.21.2.r2), which
# pacman sorts after 0.21.2 and before 0.21.3, so no epoch is needed.
#
# Upstream's release workflow creates the release together with its assets
# only after all three platforms built, so /releases/latest never points at a
# release whose .deb is still missing.
UPSTREAM_REPO="Felitendo/Modrinth-Enhanced"
latest_version() {
gh api "repos/$UPSTREAM_REPO/releases/latest" --jq '.tag_name' | sed 's/^v//; s/-/.r/'
}
# refresh_checksums <version> <pkgbuild-path>
refresh_checksums() {
local ver="$1" pkgbuild="$2"
local tag="v${ver/.r/-}" asset sha
asset="$(gh api "repos/$UPSTREAM_REPO/releases/tags/$tag" \
--jq '.assets[].name | select(endswith("_amd64.deb"))')"
if [[ -z "$asset" || "$asset" == *$'\n'* ]]; then
echo "could not find exactly one amd64 .deb in release $tag" >&2
return 1
fi
sha="$(curl -sfL "https://github.com/$UPSTREAM_REPO/releases/download/$tag/$asset" \
| sha256sum | cut -d' ' -f1)"
sed -i \
-e "s|^_tag=.*|_tag=\"$tag\"|" \
-e "s|^_asset=.*|_asset=\"$asset\"|" \
-e "s|^sha256sums=.*|sha256sums=('$sha')|" \
"$pkgbuild"
}