Compare commits

..
Author SHA1 Message Date
Felitendo b17ec7b0b0 lunar-client-bin: add package (3.7.12-1)
Upstream moved to an "ow" electron-updater channel with a filename
suffix; latest_version checks both channels (vercmp picks the winner) and
refresh_checksums keeps the _appimage filename in sync. Also clean up
downloaded .AppImage files like the other source leftovers.
2026-07-24 11:33:08 +02:00
Felitendo 6f0f9488ec Include pkgrel in the local source filename
Artifact rebuilds (e.g. dependency bundling) change the file behind
<pkg>-<ver>.tar.zst while keeping its name, so users with the previous
file in their AUR helper cache hit a checksum mismatch. Naming the local
download <pkg>-<ver>-<rel>.tar.zst makes every rebuild a fresh file.
2026-07-24 11:18:52 +02:00
github-actions[bot] 83194de7b4 bottles-bin: update to 64.1-2 [skip ci] 2026-07-24 09:00:15 +00:00
Felitendo 8c0d79f9c0 gearlever-bin, bottles-bin: bundle AUR-only dependencies
gearlever-bin: ship ftputil + desktop-entry-lib inside /usr/share/gearlever
(pinned via upstream requirements.txt) instead of depending on the AUR
packages.

bottles-bin: build the fvs2 CLI (with its core library) from source and
bundle it under /usr/lib/bottles (Bottles patched to use that path), and
ship patool, pathvalidate and vkbasalt-cli in /usr/share/bottles. vkbasalt
becomes an optdepend. Installing either package now needs no AUR builds.
2026-07-24 10:52:43 +02:00
Felitendo 4c008fd3e4 waydroid-helper-bin: add package (0.2.9-1) 2026-07-24 10:39:29 +02:00
45 changed files with 303 additions and 58 deletions

No files matched your search

+1
View File
@@ -5,3 +5,4 @@
*/src/ */src/
*/pkg/ */pkg/
*.deb *.deb
*.AppImage
+2
View File
@@ -43,6 +43,8 @@ users don't need any build dependencies.
| `snapx-bin` | [SnapXL/SnapX](https://github.com/SnapXL/SnapX) — ShareX-fork screenshot/sharing tool (repackaged upstream bundle) | [snapx-bin](https://aur.archlinux.org/packages/snapx-bin) | | `snapx-bin` | [SnapXL/SnapX](https://github.com/SnapXL/SnapX) — ShareX-fork screenshot/sharing tool (repackaged upstream bundle) | [snapx-bin](https://aur.archlinux.org/packages/snapx-bin) |
| `chiaki-ng-bin` | [streetpea/chiaki-ng](https://github.com/streetpea/chiaki-ng) — PlayStation Remote Play client (Qt6) | [chiaki-ng-bin](https://aur.archlinux.org/packages/chiaki-ng-bin) | | `chiaki-ng-bin` | [streetpea/chiaki-ng](https://github.com/streetpea/chiaki-ng) — PlayStation Remote Play client (Qt6) | [chiaki-ng-bin](https://aur.archlinux.org/packages/chiaki-ng-bin) |
| `gnome-network-displays-bin` | [GNOME/gnome-network-displays](https://gitlab.gnome.org/GNOME/gnome-network-displays) — GNOME screencasting (Miracast/Chromecast) | [gnome-network-displays-bin](https://aur.archlinux.org/packages/gnome-network-displays-bin) | | `gnome-network-displays-bin` | [GNOME/gnome-network-displays](https://gitlab.gnome.org/GNOME/gnome-network-displays) — GNOME screencasting (Miracast/Chromecast) | [gnome-network-displays-bin](https://aur.archlinux.org/packages/gnome-network-displays-bin) |
| `waydroid-helper-bin` | [ayasa520/waydroid-helper](https://github.com/ayasa520/waydroid-helper) — GTK4 GUI for Waydroid configuration and extensions | [waydroid-helper-bin](https://aur.archlinux.org/packages/waydroid-helper-bin) |
| `lunar-client-bin` | [lunarclient.com](https://lunarclient.com) — Minecraft PvP modpack launcher (upstream AppImage) | [lunar-client-bin](https://aur.archlinux.org/packages/lunar-client-bin) |
## Setup (one-time) ## Setup (one-time)
+1 -1
View File
@@ -33,7 +33,7 @@ pkgbase = bazaar-bin
optdepends = malcontent: parental controls optdepends = malcontent: parental controls
provides = bazaar provides = bazaar
conflicts = bazaar conflicts = bazaar
source = https://github.com/Felitendo/PKGBUILDS/releases/download/bazaar-bin-0.9.1/bazaar-bin-0.9.1.tar.zst source = bazaar-bin-0.9.1-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/bazaar-bin-0.9.1/bazaar-bin-0.9.1.tar.zst
sha256sums = 236a8b672a9a67de9a240450f527b119bb4cbdfa0533e49578589fe83638e3dc sha256sums = 236a8b672a9a67de9a240450f527b119bb4cbdfa0533e49578589fe83638e3dc
pkgname = bazaar-bin pkgname = bazaar-bin
+1 -1
View File
@@ -17,7 +17,7 @@ optdepends=('krunner-bazaar: krunner integration'
'malcontent: parental controls') 'malcontent: parental controls')
provides=('bazaar') provides=('bazaar')
conflicts=('bazaar') conflicts=('bazaar')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('236a8b672a9a67de9a240450f527b119bb4cbdfa0533e49578589fe83638e3dc') sha256sums=('236a8b672a9a67de9a240450f527b119bb4cbdfa0533e49578589fe83638e3dc')
package() { package() {
+4 -7
View File
@@ -1,18 +1,16 @@
pkgbase = bottles-bin pkgbase = bottles-bin
pkgdesc = Easily manage wine and proton prefixes (prebuilt) pkgdesc = Easily manage wine and proton prefixes (prebuilt)
pkgver = 64.1 pkgver = 64.1
pkgrel = 1 pkgrel = 2
url = https://usebottles.com url = https://usebottles.com
arch = any arch = any
license = GPL-3.0-only license = GPL-3.0-only
depends = fvs2
depends = gtk4 depends = gtk4
depends = gtksourceview5 depends = gtksourceview5
depends = hicolor-icon-theme depends = hicolor-icon-theme
depends = icoextract depends = icoextract
depends = libadwaita depends = libadwaita
depends = libportal-gtk4 depends = libportal-gtk4
depends = patool
depends = python depends = python
depends = python-cairo depends = python-cairo
depends = python-certifi depends = python-certifi
@@ -22,14 +20,13 @@ pkgbase = bottles-bin
depends = python-idna depends = python-idna
depends = python-markdown depends = python-markdown
depends = python-orjson depends = python-orjson
depends = python-pathvalidate
depends = python-pefile depends = python-pefile
depends = python-pycurl depends = python-pycurl
depends = python-requests depends = python-requests
depends = python-urllib3 depends = python-urllib3
depends = python-yaml depends = python-yaml
depends = python-yara depends = python-yara
depends = vkbasalt-cli optdepends = vkbasalt: post-processing layer that applies the configured effects
optdepends = vulkan-tools: vkcube test / Vulkan info optdepends = vulkan-tools: vkcube test / Vulkan info
optdepends = xorg-xdpyinfo: display info detection optdepends = xorg-xdpyinfo: display info detection
optdepends = imagemagick: icon/image conversion optdepends = imagemagick: icon/image conversion
@@ -40,7 +37,7 @@ pkgbase = bottles-bin
optdepends = xterm: fallback terminal for "Run executable in terminal" optdepends = xterm: fallback terminal for "Run executable in terminal"
provides = bottles provides = bottles
conflicts = bottles conflicts = bottles
source = https://github.com/Felitendo/PKGBUILDS/releases/download/bottles-bin-64.1/bottles-bin-64.1.tar.zst source = bottles-bin-64.1-2.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/bottles-bin-64.1/bottles-bin-64.1.tar.zst
sha256sums = 0543000eb0d689b43a367d211c8b9abbda7a7e0b7ad037307432590fe62656a3 sha256sums = 94dd4c5138ef491fed0502e87be2bebde6e7fe9d2881fc66285d12a0451ef0a3
pkgname = bottles-bin pkgname = bottles-bin
+9 -9
View File
@@ -4,19 +4,19 @@
pkgname=bottles-bin pkgname=bottles-bin
pkgver=64.1 pkgver=64.1
pkgrel=1 pkgrel=2
pkgdesc="Easily manage wine and proton prefixes (prebuilt)" pkgdesc="Easily manage wine and proton prefixes (prebuilt)"
arch=('any') arch=('any')
url="https://usebottles.com" url="https://usebottles.com"
license=('GPL-3.0-only') license=('GPL-3.0-only')
depends=('fvs2' 'gtk4' 'gtksourceview5' 'hicolor-icon-theme' 'icoextract' depends=('gtk4' 'gtksourceview5' 'hicolor-icon-theme' 'icoextract'
'libadwaita' 'libportal-gtk4' 'patool' 'python' 'python-cairo' 'libadwaita' 'libportal-gtk4' 'python' 'python-cairo'
'python-certifi' 'python-chardet' 'python-charset-normalizer' 'python-certifi' 'python-chardet' 'python-charset-normalizer'
'python-gobject' 'python-idna' 'python-markdown' 'python-orjson' 'python-gobject' 'python-idna' 'python-markdown' 'python-orjson'
'python-pathvalidate' 'python-pefile' 'python-pycurl' 'python-pefile' 'python-pycurl'
'python-requests' 'python-urllib3' 'python-yaml' 'python-yara' 'python-requests' 'python-urllib3' 'python-yaml' 'python-yara')
'vkbasalt-cli') optdepends=('vkbasalt: post-processing layer that applies the configured effects'
optdepends=('vulkan-tools: vkcube test / Vulkan info' 'vulkan-tools: vkcube test / Vulkan info'
'xorg-xdpyinfo: display info detection' 'xorg-xdpyinfo: display info detection'
'imagemagick: icon/image conversion' 'imagemagick: icon/image conversion'
'vmtouch: preload bottle files into memory' 'vmtouch: preload bottle files into memory'
@@ -26,8 +26,8 @@ optdepends=('vulkan-tools: vkcube test / Vulkan info'
'xterm: fallback terminal for "Run executable in terminal"') 'xterm: fallback terminal for "Run executable in terminal"')
provides=('bottles') provides=('bottles')
conflicts=('bottles') conflicts=('bottles')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('0543000eb0d689b43a367d211c8b9abbda7a7e0b7ad037307432590fe62656a3') sha256sums=('94dd4c5138ef491fed0502e87be2bebde6e7fe9d2881fc66285d12a0451ef0a3')
package() { package() {
cp -a "$srcdir/usr" "$pkgdir/" cp -a "$srcdir/usr" "$pkgdir/"
+33 -1
View File
@@ -9,12 +9,18 @@
UPSTREAM_REPO="bottlesdevs/Bottles" UPSTREAM_REPO="bottlesdevs/Bottles"
# fvs-lab/fvs2 (+ its core library) is AUR-only, so the binary is built here
# and bundled under /usr/lib/bottles. Versions pinned to the combination the
# AUR fvs2 package ships; bump on new fvs2 releases.
FVS2_VERSION=0.8.1
FVS2_CORE_VERSION=0.1.1
# Installed in CI (pacman) before build_artifact runs. blueprint-compiler # Installed in CI (pacman) before build_artifact runs. blueprint-compiler
# resolves Gtk/Adw/GtkSource imports via their typelibs, hence the GUI libs. # resolves Gtk/Adw/GtkSource imports via their typelibs, hence the GUI libs.
BUILD_DEPS=(meson ninja blueprint-compiler gobject-introspection BUILD_DEPS=(meson ninja blueprint-compiler gobject-introspection
desktop-file-utils appstream-glib gettext glib2-devel desktop-file-utils appstream-glib gettext glib2-devel
python python-gobject gtk4 libadwaita gtksourceview5 python python-gobject gtk4 libadwaita gtksourceview5
libportal-gtk4) libportal-gtk4 go python-pip)
latest_version() { latest_version() {
gh api "repos/$UPSTREAM_REPO/releases/latest" --jq '.tag_name' | sed 's/^v//' gh api "repos/$UPSTREAM_REPO/releases/latest" --jq '.tag_name' | sed 's/^v//'
@@ -33,9 +39,35 @@ build_artifact() {
patch -d "$srctree" -p1 < "$pkgdir/remove-flatpak-checks.patch" patch -d "$srctree" -p1 < "$pkgdir/remove-flatpak-checks.patch"
# the bundled fvs2 lives outside $PATH; point Bottles at it
grep -q 'return "fvs2"' "$srctree/bottles/fvs/repo.py" \
|| { echo "fvs2 path hook not found in bottles/fvs/repo.py" >&2; return 1; }
sed -i 's|return "fvs2"|return "/usr/lib/bottles/fvs2"|' "$srctree/bottles/fvs/repo.py"
meson setup "$workdir/build" "$srctree" --prefix=/usr --buildtype=release meson setup "$workdir/build" "$srctree" --prefix=/usr --buildtype=release
meson install -C "$workdir/build" --destdir "$destdir" meson install -C "$workdir/build" --destdir "$destdir"
# Build the fvs2 CLI (Go) and bundle it. Its "core" library is a sibling
# repository that go.mod expects next to the source tree.
mkdir -p "$workdir/fvs" "$destdir/usr/lib/bottles"
curl -sfL "https://github.com/fvs-lab/fvs2/archive/refs/tags/v$FVS2_VERSION.tar.gz" | tar -xz -C "$workdir/fvs"
curl -sfL "https://github.com/fvs-lab/core/archive/refs/tags/v$FVS2_CORE_VERSION.tar.gz" | tar -xz -C "$workdir/fvs"
ln -s "core-$FVS2_CORE_VERSION" "$workdir/fvs/core"
(cd "$workdir/fvs/fvs2-$FVS2_VERSION" && \
GOPATH="$workdir/gopath" \
GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw" \
go build -o "$destdir/usr/lib/bottles/fvs2" ./cmd/fvs2)
# patool, pathvalidate and vkbasalt-cli are AUR-only pure-python libs;
# bundle them into the app's module dir, which the launcher puts on
# sys.path. patool/pathvalidate pinned via upstream's requirements.txt.
grep -E '^(patool|pathvalidate)==' "$srctree/requirements.txt" > "$workdir/bundle-reqs.txt"
[[ "$(wc -l < "$workdir/bundle-reqs.txt")" -eq 2 ]] || { echo "expected patool+pathvalidate pins in requirements.txt" >&2; return 1; }
echo 'vkbasalt-cli' >> "$workdir/bundle-reqs.txt"
python -m pip install --isolated --no-deps --target "$destdir/usr/share/bottles" \
-r "$workdir/bundle-reqs.txt"
rm -rf "$destdir/usr/share/bottles/bin"
# These caches are generated by pacman hooks; shipping them would cause # These caches are generated by pacman hooks; shipping them would cause
# file conflicts on install. # file conflicts on install.
rm -f "$destdir/usr/share/glib-2.0/schemas/gschemas.compiled" \ rm -f "$destdir/usr/share/glib-2.0/schemas/gschemas.compiled" \
+1 -1
View File
@@ -34,7 +34,7 @@ pkgbase = chiaki-ng-bin
provides = chiaki provides = chiaki
conflicts = chiaki-ng conflicts = chiaki-ng
conflicts = chiaki conflicts = chiaki
source = https://github.com/Felitendo/PKGBUILDS/releases/download/chiaki-ng-bin-1.10.0/chiaki-ng-bin-1.10.0.tar.zst source = chiaki-ng-bin-1.10.0-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/chiaki-ng-bin-1.10.0/chiaki-ng-bin-1.10.0.tar.zst
sha256sums = 76c55be0342c651a65ffe5df5ed14930d43b844590cac9f4ea67d23e80557599 sha256sums = 76c55be0342c651a65ffe5df5ed14930d43b844590cac9f4ea67d23e80557599
pkgname = chiaki-ng-bin pkgname = chiaki-ng-bin
+1 -1
View File
@@ -18,7 +18,7 @@ optdepends=('intel-media-driver: vaapi backend for Intel GPUs [>= Broadwell]'
'libva-mesa-driver: vaapi backend for AMD GPUs') 'libva-mesa-driver: vaapi backend for AMD GPUs')
provides=('chiaki-ng' 'chiaki') provides=('chiaki-ng' 'chiaki')
conflicts=('chiaki-ng' 'chiaki') conflicts=('chiaki-ng' 'chiaki')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('76c55be0342c651a65ffe5df5ed14930d43b844590cac9f4ea67d23e80557599') sha256sums=('76c55be0342c651a65ffe5df5ed14930d43b844590cac9f4ea67d23e80557599')
package() { package() {
+1 -1
View File
@@ -21,7 +21,7 @@ pkgbase = chromium-widevine-helper-bin
backup = etc/opera/native-messaging-hosts/org.chromium.widevine.json backup = etc/opera/native-messaging-hosts/org.chromium.widevine.json
backup = etc/thorium/native-messaging-hosts/org.chromium.widevine.json backup = etc/thorium/native-messaging-hosts/org.chromium.widevine.json
backup = etc/iridium/native-messaging-hosts/org.chromium.widevine.json backup = etc/iridium/native-messaging-hosts/org.chromium.widevine.json
source = https://github.com/Felitendo/PKGBUILDS/releases/download/chromium-widevine-helper-bin-1.0.8/chromium-widevine-helper-bin-1.0.8.tar.zst source = chromium-widevine-helper-bin-1.0.8-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/chromium-widevine-helper-bin-1.0.8/chromium-widevine-helper-bin-1.0.8.tar.zst
sha256sums = efb70f082652176710b403a2629333220c1b8b96e3f27f398ba7efb496982829 sha256sums = efb70f082652176710b403a2629333220c1b8b96e3f27f398ba7efb496982829
pkgname = chromium-widevine-helper-bin pkgname = chromium-widevine-helper-bin
+1 -1
View File
@@ -23,7 +23,7 @@ backup=('etc/helium/native-messaging-hosts/org.chromium.widevine.json'
'etc/opera/native-messaging-hosts/org.chromium.widevine.json' 'etc/opera/native-messaging-hosts/org.chromium.widevine.json'
'etc/thorium/native-messaging-hosts/org.chromium.widevine.json' 'etc/thorium/native-messaging-hosts/org.chromium.widevine.json'
'etc/iridium/native-messaging-hosts/org.chromium.widevine.json') 'etc/iridium/native-messaging-hosts/org.chromium.widevine.json')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('efb70f082652176710b403a2629333220c1b8b96e3f27f398ba7efb496982829') sha256sums=('efb70f082652176710b403a2629333220c1b8b96e3f27f398ba7efb496982829')
package() { package() {
+1 -1
View File
@@ -21,7 +21,7 @@ pkgbase = faugus-launcher-bin
optdepends = gamemode: feral gamemode integration optdepends = gamemode: feral gamemode integration
provides = faugus-launcher provides = faugus-launcher
conflicts = faugus-launcher conflicts = faugus-launcher
source = https://github.com/Felitendo/PKGBUILDS/releases/download/faugus-launcher-bin-2.0.2/faugus-launcher-bin-2.0.2.tar.zst source = faugus-launcher-bin-2.0.2-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/faugus-launcher-bin-2.0.2/faugus-launcher-bin-2.0.2.tar.zst
sha256sums = 5fcf441cccb1ccc0ac554760e93744d557fd05a3fc4335132a59e55aefe902af sha256sums = 5fcf441cccb1ccc0ac554760e93744d557fd05a3fc4335132a59e55aefe902af
pkgname = faugus-launcher-bin pkgname = faugus-launcher-bin
+1 -1
View File
@@ -16,7 +16,7 @@ optdepends=('mangohud: performance overlay'
'gamemode: feral gamemode integration') 'gamemode: feral gamemode integration')
provides=('faugus-launcher') provides=('faugus-launcher')
conflicts=('faugus-launcher') conflicts=('faugus-launcher')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('5fcf441cccb1ccc0ac554760e93744d557fd05a3fc4335132a59e55aefe902af') sha256sums=('5fcf441cccb1ccc0ac554760e93744d557fd05a3fc4335132a59e55aefe902af')
package() { package() {
+3 -5
View File
@@ -1,7 +1,7 @@
pkgbase = gearlever-bin pkgbase = gearlever-bin
pkgdesc = Manage AppImages with ease (prebuilt) pkgdesc = Manage AppImages with ease (prebuilt)
pkgver = 4.6.2 pkgver = 4.6.2
pkgrel = 1 pkgrel = 2
url = https://gearlever.mijorus.it url = https://gearlever.mijorus.it
arch = any arch = any
license = GPL-3.0-or-later license = GPL-3.0-or-later
@@ -15,8 +15,6 @@ pkgbase = gearlever-bin
depends = python-dbus depends = python-dbus
depends = python-requests depends = python-requests
depends = python-pyxdg depends = python-pyxdg
depends = python-ftputil
depends = python-desktop-entry-lib
depends = 7zip depends = 7zip
depends = binutils depends = binutils
depends = squashfs-tools depends = squashfs-tools
@@ -25,7 +23,7 @@ pkgbase = gearlever-bin
optdepends = libxml2-legacy: required by the LibreOffice AppImage optdepends = libxml2-legacy: required by the LibreOffice AppImage
provides = gearlever provides = gearlever
conflicts = gearlever conflicts = gearlever
source = https://github.com/Felitendo/PKGBUILDS/releases/download/gearlever-bin-4.6.2/gearlever-bin-4.6.2.tar.zst source = gearlever-bin-4.6.2-2.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/gearlever-bin-4.6.2/gearlever-bin-4.6.2.tar.zst
sha256sums = 319841a5dffd942b6f3b86822ac4d9d52a5b4ee559ea03ee5c2a6318a5161546 sha256sums = 225dd08d1fbdf33bb5979660737cee180f60b8cfa6477f1553025a6c2f5236a5
pkgname = gearlever-bin pkgname = gearlever-bin
+3 -4
View File
@@ -4,21 +4,20 @@
pkgname=gearlever-bin pkgname=gearlever-bin
pkgver=4.6.2 pkgver=4.6.2
pkgrel=1 pkgrel=2
pkgdesc="Manage AppImages with ease (prebuilt)" pkgdesc="Manage AppImages with ease (prebuilt)"
arch=('any') arch=('any')
url="https://gearlever.mijorus.it" url="https://gearlever.mijorus.it"
license=('GPL-3.0-or-later') license=('GPL-3.0-or-later')
depends=('gtk4' 'libadwaita' 'glib2' 'dconf' 'hicolor-icon-theme' 'python' depends=('gtk4' 'libadwaita' 'glib2' 'dconf' 'hicolor-icon-theme' 'python'
'python-gobject' 'python-dbus' 'python-requests' 'python-pyxdg' 'python-gobject' 'python-dbus' 'python-requests' 'python-pyxdg'
'python-ftputil' 'python-desktop-entry-lib'
'7zip' 'binutils' 'squashfs-tools' 'fuse2') '7zip' 'binutils' 'squashfs-tools' 'fuse2')
optdepends=('dwarfs: extract AppImages that use a DwarFS filesystem' optdepends=('dwarfs: extract AppImages that use a DwarFS filesystem'
'libxml2-legacy: required by the LibreOffice AppImage') 'libxml2-legacy: required by the LibreOffice AppImage')
provides=('gearlever') provides=('gearlever')
conflicts=('gearlever') conflicts=('gearlever')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('319841a5dffd942b6f3b86822ac4d9d52a5b4ee559ea03ee5c2a6318a5161546') sha256sums=('225dd08d1fbdf33bb5979660737cee180f60b8cfa6477f1553025a6c2f5236a5')
package() { package() {
cp -a "$srcdir/usr" "$pkgdir/" cp -a "$srcdir/usr" "$pkgdir/"
+10 -1
View File
@@ -8,7 +8,7 @@
UPSTREAM_REPO="mijorus/gearlever" UPSTREAM_REPO="mijorus/gearlever"
# Installed in CI (pacman) before build_artifact runs. # Installed in CI (pacman) before build_artifact runs.
BUILD_DEPS=(meson ninja glib2 glib2-devel python gettext) BUILD_DEPS=(meson ninja glib2 glib2-devel python gettext python-pip)
latest_version() { latest_version() {
# gh instead of curl: unauthenticated GitHub API calls are rate-limited on # gh instead of curl: unauthenticated GitHub API calls are rate-limited on
@@ -43,6 +43,15 @@ build_artifact() {
# files themselves into the install tree. # files themselves into the install tree.
find "$destdir" -name meson.build -delete find "$destdir" -name meson.build -delete
# ftputil and desktop-entry-lib are AUR-only; bundle them (pure python)
# into the app's module dir, which the launcher puts on sys.path. Versions
# come from upstream's requirements.txt pins.
grep -E '^(ftputil|desktop-entry-lib)' "$srctree/requirements.txt" > "$workdir/bundle-reqs.txt"
[[ "$(wc -l < "$workdir/bundle-reqs.txt")" -eq 2 ]] || { echo "expected 2 pinned bundle deps in requirements.txt" >&2; return 1; }
python -m pip install --isolated --no-deps --target "$destdir/usr/share/gearlever" \
-r "$workdir/bundle-reqs.txt"
rm -rf "$destdir/usr/share/gearlever/bin"
# These caches are generated by pacman hooks; shipping them would cause # These caches are generated by pacman hooks; shipping them would cause
# file conflicts on install. # file conflicts on install.
rm -f "$destdir/usr/share/glib-2.0/schemas/gschemas.compiled" \ rm -f "$destdir/usr/share/glib-2.0/schemas/gschemas.compiled" \
+1 -1
View File
@@ -28,7 +28,7 @@ pkgbase = gnome-network-displays-bin
optdepends = gstreamer-vaapi: hardware accelerated encoding optdepends = gstreamer-vaapi: hardware accelerated encoding
provides = gnome-network-displays provides = gnome-network-displays
conflicts = gnome-network-displays conflicts = gnome-network-displays
source = https://github.com/Felitendo/PKGBUILDS/releases/download/gnome-network-displays-bin-0.99.0/gnome-network-displays-bin-0.99.0.tar.zst source = gnome-network-displays-bin-0.99.0-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/gnome-network-displays-bin-0.99.0/gnome-network-displays-bin-0.99.0.tar.zst
sha256sums = 6e7f93f491226bab6ae54139dcaf009d9cedd8e983b04b5128701c3250936ac1 sha256sums = 6e7f93f491226bab6ae54139dcaf009d9cedd8e983b04b5128701c3250936ac1
pkgname = gnome-network-displays-bin pkgname = gnome-network-displays-bin
+1 -1
View File
@@ -17,7 +17,7 @@ depends=('avahi' 'dnsmasq' 'gst-plugin-pipewire' 'gst-plugins-bad'
optdepends=('gstreamer-vaapi: hardware accelerated encoding') optdepends=('gstreamer-vaapi: hardware accelerated encoding')
provides=('gnome-network-displays') provides=('gnome-network-displays')
conflicts=('gnome-network-displays') conflicts=('gnome-network-displays')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('6e7f93f491226bab6ae54139dcaf009d9cedd8e983b04b5128701c3250936ac1') sha256sums=('6e7f93f491226bab6ae54139dcaf009d9cedd8e983b04b5128701c3250936ac1')
package() { package() {
+1 -1
View File
@@ -15,7 +15,7 @@ pkgbase = librepods-bin
depends = qt6-declarative depends = qt6-declarative
provides = librepods provides = librepods
conflicts = librepods conflicts = librepods
source = https://github.com/Felitendo/PKGBUILDS/releases/download/librepods-bin-1.0.0rc1/librepods-bin-1.0.0rc1.tar.zst source = librepods-bin-1.0.0rc1-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/librepods-bin-1.0.0rc1/librepods-bin-1.0.0rc1.tar.zst
sha256sums = 69ce19414a0205d1d19fb851f6adea6c231013df6ec8a32bc8122d5fd6e9dd52 sha256sums = 69ce19414a0205d1d19fb851f6adea6c231013df6ec8a32bc8122d5fd6e9dd52
pkgname = librepods-bin pkgname = librepods-bin
+1 -1
View File
@@ -13,7 +13,7 @@ depends=('glibc' 'gcc-libs' 'hicolor-icon-theme' 'libpulse' 'openssl'
'qt6-base' 'qt6-connectivity' 'qt6-declarative') 'qt6-base' 'qt6-connectivity' 'qt6-declarative')
provides=('librepods') provides=('librepods')
conflicts=('librepods') conflicts=('librepods')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('69ce19414a0205d1d19fb851f6adea6c231013df6ec8a32bc8122d5fd6e9dd52') sha256sums=('69ce19414a0205d1d19fb851f6adea6c231013df6ec8a32bc8122d5fd6e9dd52')
package() { package() {
+1 -1
View File
@@ -23,7 +23,7 @@ pkgbase = linux-wallpaperengine-bin
conflicts = linux-wallpaperengine-git conflicts = linux-wallpaperengine-git
options = !strip options = !strip
options = !debug options = !debug
source = https://github.com/Felitendo/PKGBUILDS/releases/download/linux-wallpaperengine-bin-r627.b016d7d/linux-wallpaperengine-bin-r627.b016d7d.tar.zst source = linux-wallpaperengine-bin-r627.b016d7d-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/linux-wallpaperengine-bin-r627.b016d7d/linux-wallpaperengine-bin-r627.b016d7d.tar.zst
sha256sums = ed71a7ca046003c368b6af7aa9766dee36cd5da84921a4a34991248d62d7bc6b sha256sums = ed71a7ca046003c368b6af7aa9766dee36cd5da84921a4a34991248d62d7bc6b
pkgname = linux-wallpaperengine-bin pkgname = linux-wallpaperengine-bin
+1 -1
View File
@@ -14,7 +14,7 @@ depends=('lz4' 'ffmpeg' 'mpv' 'glfw' 'glew' 'freeglut' 'libpulse' 'libcups'
provides=('linux-wallpaperengine') provides=('linux-wallpaperengine')
conflicts=('linux-wallpaperengine' 'linux-wallpaperengine-git') conflicts=('linux-wallpaperengine' 'linux-wallpaperengine-git')
options=('!strip' '!debug') options=('!strip' '!debug')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('ed71a7ca046003c368b6af7aa9766dee36cd5da84921a4a34991248d62d7bc6b') sha256sums=('ed71a7ca046003c368b6af7aa9766dee36cd5da84921a4a34991248d62d7bc6b')
package() { package() {
+19
View File
@@ -0,0 +1,19 @@
pkgbase = lunar-client-bin
pkgdesc = PvP modpack for all modern versions of Minecraft (upstream AppImage)
pkgver = 3.7.12
pkgrel = 1
url = https://lunarclient.com
arch = x86_64
license = LicenseRef-proprietary
depends = fuse2
depends = xorg-xrandr
provides = lunar-client
provides = lunarclient
conflicts = lunar-client
conflicts = lunarclient
options = !strip
options = !debug
source = lunarclient-3.7.12.AppImage::https://launcherupdates.lunarclientcdn.com/Lunar%20Client-3.7.12-ow.AppImage
sha256sums = 7364e876a59291d8b0b7d6c0efdacb988617e35e054e9c21a5814d071710bf98
pkgname = lunar-client-bin
+48
View File
@@ -0,0 +1,48 @@
# Maintainer: Felitendo
# This PKGBUILD is updated automatically:
# https://github.com/Felitendo/PKGBUILDS
pkgname=lunar-client-bin
_pkgname=lunarclient
pkgver=3.7.12
pkgrel=1
pkgdesc="PvP modpack for all modern versions of Minecraft (upstream AppImage)"
arch=('x86_64')
url="https://lunarclient.com"
license=('LicenseRef-proprietary')
depends=('fuse2' 'xorg-xrandr')
provides=('lunar-client' 'lunarclient')
conflicts=('lunar-client' 'lunarclient')
options=('!strip' '!debug')
# maintained by CI together with pkgver (upstream varies the filename suffix)
_appimage="Lunar%20Client-3.7.12-ow.AppImage"
source=("${_pkgname}-${pkgver}.AppImage::https://launcherupdates.lunarclientcdn.com/${_appimage}")
sha256sums=('7364e876a59291d8b0b7d6c0efdacb988617e35e054e9c21a5814d071710bf98')
prepare() {
chmod +x "${_pkgname}-${pkgver}.AppImage"
"./${_pkgname}-${pkgver}.AppImage" --appimage-extract
}
build() {
# make the .desktop file work outside of the AppImage container
sed -i -E "s|Exec=AppRun|Exec=env DESKTOPINTEGRATION=false /usr/bin/${_pkgname}|" \
"squashfs-root/${_pkgname}.desktop"
# AppImage directory permissions are 700
chmod -R a-x+rX squashfs-root/usr
}
package() {
install -Dm755 "${srcdir}/${_pkgname}-${pkgver}.AppImage" \
"${pkgdir}/opt/${_pkgname}/${_pkgname}.AppImage"
install -Dm644 "${srcdir}/squashfs-root/${_pkgname}.desktop" \
"${pkgdir}/usr/share/applications/${_pkgname}.desktop"
install -Dm644 \
"${srcdir}/squashfs-root/usr/share/icons/hicolor/1024x1024/apps/${_pkgname}.png" \
"${pkgdir}/usr/share/icons/hicolor/512x512/apps/${_pkgname}.png"
install -dm755 "${pkgdir}/usr/bin"
ln -s "/opt/${_pkgname}/${_pkgname}.AppImage" "${pkgdir}/usr/bin/${_pkgname}"
}
+46
View File
@@ -0,0 +1,46 @@
# lunar-client-bin - Lunar Client (https://lunarclient.com), Minecraft PvP
# modpack launcher, proprietary Electron AppImage.
#
# Upstream hosts versioned AppImages itself, so there is no build_artifact():
# on a new version pkgver, the artifact filename (_appimage) and the checksum
# are refreshed. Upstream currently publishes on the "ow" electron-updater
# channel (latest-ow-linux.yml) with an -ow filename suffix; the old plain
# channel (latest-linux.yml) went stale but is still checked in case they
# switch back - whichever carries the higher version wins.
DL_BASE="https://launcherupdates.lunarclientcdn.com"
_channel_version() {
curl -sf "$DL_BASE/$1" | grep -Po '^version: \K\S+'
}
latest_version() {
local a b
a="$(_channel_version latest-ow-linux.yml | sed 's/-.*//')"
b="$(_channel_version latest-linux.yml | sed 's/-.*//')"
[[ -n "$a" || -n "$b" ]] || return 1
if [[ -n "$a" && -n "$b" ]]; then
if [[ "$(vercmp "$a" "$b")" -ge 0 ]]; then echo "$a"; else echo "$b"; fi
else
echo "${a:-$b}"
fi
}
# refresh_checksums <version> <pkgbuild-path>
refresh_checksums() {
local ver="$1" pkgbuild="$2"
local yml file sha
for yml in latest-ow-linux.yml latest-linux.yml; do
file="$(curl -sf "$DL_BASE/$yml" | grep -Po '^path: \K.*\.AppImage')"
[[ "$file" == *"$ver"* ]] && break
file=""
done
[[ -n "$file" ]] || { echo "no updater channel carries version $ver" >&2; return 1; }
file="${file// /%20}"
sha="$(curl -sfL "$DL_BASE/$file" | sha256sum | cut -d' ' -f1)"
sed -i \
-e "s|^_appimage=.*|_appimage=\"$file\"|" \
-e "s|^sha256sums=.*|sha256sums=('$sha')|" \
"$pkgbuild"
}
+1 -1
View File
@@ -23,7 +23,7 @@ pkgbase = planify-bin
provides = planify provides = planify
conflicts = planify conflicts = planify
conflicts = elementary-planner conflicts = elementary-planner
source = https://github.com/Felitendo/PKGBUILDS/releases/download/planify-bin-4.19.5/planify-bin-4.19.5.tar.zst source = planify-bin-4.19.5-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/planify-bin-4.19.5/planify-bin-4.19.5.tar.zst
sha256sums = 563a80c7660b207f6c139e0f78bcb49631e8369be29369a7a984b022816b8c0f sha256sums = 563a80c7660b207f6c139e0f78bcb49631e8369be29369a7a984b022816b8c0f
pkgname = planify-bin pkgname = planify-bin
+1 -1
View File
@@ -14,7 +14,7 @@ depends=('evolution-data-server' 'gtk4' 'gtksourceview5' 'icu' 'json-glib'
'libsecret' 'libsoup3' 'libspelling' 'sqlite' 'hicolor-icon-theme') 'libsecret' 'libsoup3' 'libspelling' 'sqlite' 'hicolor-icon-theme')
provides=('planify') provides=('planify')
conflicts=('planify' 'elementary-planner') conflicts=('planify' 'elementary-planner')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('563a80c7660b207f6c139e0f78bcb49631e8369be29369a7a984b022816b8c0f') sha256sums=('563a80c7660b207f6c139e0f78bcb49631e8369be29369a7a984b022816b8c0f')
package() { package() {
+1 -1
View File
@@ -14,7 +14,7 @@ pkgbase = protonplus-bin
depends = hicolor-icon-theme depends = hicolor-icon-theme
provides = protonplus provides = protonplus
conflicts = protonplus conflicts = protonplus
source = https://github.com/Felitendo/PKGBUILDS/releases/download/protonplus-bin-0.5.21/protonplus-bin-0.5.21.tar.zst source = protonplus-bin-0.5.21-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/protonplus-bin-0.5.21/protonplus-bin-0.5.21.tar.zst
sha256sums = 144992c7ad6a614cb05742ba2106cdc6a03329631fd64905932e11dd3636d7f2 sha256sums = 144992c7ad6a614cb05742ba2106cdc6a03329631fd64905932e11dd3636d7f2
pkgname = protonplus-bin pkgname = protonplus-bin
+1 -1
View File
@@ -13,7 +13,7 @@ depends=('gtk4' 'json-glib' 'libadwaita' 'libarchive' 'libgee' 'libsoup3'
'hicolor-icon-theme') 'hicolor-icon-theme')
provides=('protonplus') provides=('protonplus')
conflicts=('protonplus') conflicts=('protonplus')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('144992c7ad6a614cb05742ba2106cdc6a03329631fd64905932e11dd3636d7f2') sha256sums=('144992c7ad6a614cb05742ba2106cdc6a03329631fd64905932e11dd3636d7f2')
package() { package() {
+1 -1
View File
@@ -112,7 +112,7 @@ mv "$pkg/.SRCINFO.new" "$pkg/.SRCINFO"
# drop downloaded sources and build leftovers (all gitignored, never tracked) # drop downloaded sources and build leftovers (all gitignored, never tracked)
rm -rf "$pkg/src" "$pkg/pkg" rm -rf "$pkg/src" "$pkg/pkg"
rm -f "$pkg"/*.pkg.tar.* "$pkg"/*.tar.zst "$pkg"/*.tar.gz "$pkg"/*.deb rm -f "$pkg"/*.pkg.tar.* "$pkg"/*.tar.zst "$pkg"/*.tar.gz "$pkg"/*.deb "$pkg"/*.AppImage
### 4: commit back to this repository ######################################## ### 4: commit back to this repository ########################################
+1 -1
View File
@@ -12,7 +12,7 @@ pkgbase = snapx-bin
conflicts = snapx-ui conflicts = snapx-ui
options = !strip options = !strip
options = !debug options = !debug
source = https://github.com/Felitendo/PKGBUILDS/releases/download/snapx-bin-0.4.0/snapx-bin-0.4.0.tar.zst source = snapx-bin-0.4.0-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/snapx-bin-0.4.0/snapx-bin-0.4.0.tar.zst
sha256sums = d2098cac542bca82e68be0a4fa98db22f2d84d35c683d18582382dc9206eb5ee sha256sums = d2098cac542bca82e68be0a4fa98db22f2d84d35c683d18582382dc9206eb5ee
pkgname = snapx-bin pkgname = snapx-bin
+1 -1
View File
@@ -13,7 +13,7 @@ depends=('glibc' 'gcc-libs' 'hicolor-icon-theme')
provides=('snapx-ui') provides=('snapx-ui')
conflicts=('snapx-ui') conflicts=('snapx-ui')
options=('!strip' '!debug') options=('!strip' '!debug')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('d2098cac542bca82e68be0a4fa98db22f2d84d35c683d18582382dc9206eb5ee') sha256sums=('d2098cac542bca82e68be0a4fa98db22f2d84d35c683d18582382dc9206eb5ee')
package() { package() {
+1 -1
View File
@@ -11,7 +11,7 @@ pkgbase = thonny-bin
provides = thonny provides = thonny
conflicts = thonny conflicts = thonny
options = !strip options = !strip
source = https://github.com/Felitendo/PKGBUILDS/releases/download/thonny-bin-5.0.0/thonny-bin-5.0.0.tar.zst source = thonny-bin-5.0.0-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/thonny-bin-5.0.0/thonny-bin-5.0.0.tar.zst
sha256sums = 7baea7ff70d7aa6e86fa1153ba8f156d8f5a402ddb5279d8e15ceceb4aaa53e5 sha256sums = 7baea7ff70d7aa6e86fa1153ba8f156d8f5a402ddb5279d8e15ceceb4aaa53e5
pkgname = thonny-bin pkgname = thonny-bin
+1 -1
View File
@@ -16,7 +16,7 @@ optdepends=('libnotify: desktop notifications (dlopened by Tk)')
provides=('thonny') provides=('thonny')
conflicts=('thonny') conflicts=('thonny')
options=('!strip') options=('!strip')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('7baea7ff70d7aa6e86fa1153ba8f156d8f5a402ddb5279d8e15ceceb4aaa53e5') sha256sums=('7baea7ff70d7aa6e86fa1153ba8f156d8f5a402ddb5279d8e15ceceb4aaa53e5')
package() { package() {
+1 -1
View File
@@ -19,7 +19,7 @@ pkgbase = timetable-bin
provides = timetable provides = timetable
conflicts = untis conflicts = untis
conflicts = timetable conflicts = timetable
source = https://github.com/Felitendo/PKGBUILDS/releases/download/timetable-bin-4.2.1/timetable-bin-4.2.1.tar.zst source = timetable-bin-4.2.1-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/timetable-bin-4.2.1/timetable-bin-4.2.1.tar.zst
sha256sums = c68179716fdb5eb6268203168207a1ea7d03a75456c00de38d152dc6098bd0dc sha256sums = c68179716fdb5eb6268203168207a1ea7d03a75456c00de38d152dc6098bd0dc
pkgname = timetable-bin pkgname = timetable-bin
+1 -1
View File
@@ -13,7 +13,7 @@ depends=('gtk4' 'libadwaita' 'webkitgtk-6.0' 'libsecret' 'python' 'python-gobjec
'python-requests' 'python-pyotp' 'glib2' 'hicolor-icon-theme') 'python-requests' 'python-pyotp' 'glib2' 'hicolor-icon-theme')
provides=('untis' 'timetable') provides=('untis' 'timetable')
conflicts=('untis' 'timetable') conflicts=('untis' 'timetable')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('c68179716fdb5eb6268203168207a1ea7d03a75456c00de38d152dc6098bd0dc') sha256sums=('c68179716fdb5eb6268203168207a1ea7d03a75456c00de38d152dc6098bd0dc')
package() { package() {
+1 -1
View File
@@ -11,7 +11,7 @@ pkgbase = trayscale-bin
optdepends = tailscale: provides the daemon that manages the connection optdepends = tailscale: provides the daemon that manages the connection
provides = trayscale provides = trayscale
conflicts = trayscale conflicts = trayscale
source = https://github.com/Felitendo/PKGBUILDS/releases/download/trayscale-bin-0.18.9/trayscale-bin-0.18.9.tar.zst source = trayscale-bin-0.18.9-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/trayscale-bin-0.18.9/trayscale-bin-0.18.9.tar.zst
sha256sums = 1b24f332a64a682e972e94fecfc11a7d719a1c74c5fd897c45c08cbd17d0ae93 sha256sums = 1b24f332a64a682e972e94fecfc11a7d719a1c74c5fd897c45c08cbd17d0ae93
pkgname = trayscale-bin pkgname = trayscale-bin
+1 -1
View File
@@ -13,7 +13,7 @@ depends=('gtk4' 'libadwaita' 'hicolor-icon-theme')
optdepends=('tailscale: provides the daemon that manages the connection') optdepends=('tailscale: provides the daemon that manages the connection')
provides=('trayscale') provides=('trayscale')
conflicts=('trayscale') conflicts=('trayscale')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('1b24f332a64a682e972e94fecfc11a7d719a1c74c5fd897c45c08cbd17d0ae93') sha256sums=('1b24f332a64a682e972e94fecfc11a7d719a1c74c5fd897c45c08cbd17d0ae93')
package() { package() {
+30
View File
@@ -0,0 +1,30 @@
pkgbase = waydroid-helper-bin
pkgdesc = GUI application for Waydroid configuration and extension installation (prebuilt)
pkgver = 0.2.9
pkgrel = 1
url = https://github.com/ayasa520/waydroid-helper
arch = any
license = GPL-3.0-or-later
depends = python
depends = fakeroot
depends = python-bidict
depends = python-httpx
depends = python-gobject
depends = python-yaml
depends = python-pywayland
depends = python-cairo
depends = gtk4
depends = libadwaita
depends = python-aiofiles
depends = python-dbus
depends = android-tools
depends = vte4
depends = hicolor-icon-theme
optdepends = bindfs: shared folders support
optdepends = waydroid: the container this tool configures
provides = waydroid-helper
conflicts = waydroid-helper
source = waydroid-helper-bin-0.2.9-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/waydroid-helper-bin-0.2.9/waydroid-helper-bin-0.2.9.tar.zst
sha256sums = 8a02695c6a3f102d1fa2a0b6266bb1978874338eac5a33b3391ada3243c01e56
pkgname = waydroid-helper-bin
+25
View File
@@ -0,0 +1,25 @@
# Maintainer: Felitendo
# This PKGBUILD is updated automatically:
# https://github.com/Felitendo/PKGBUILDS
pkgname=waydroid-helper-bin
pkgver=0.2.9
pkgrel=1
pkgdesc="GUI application for Waydroid configuration and extension installation (prebuilt)"
arch=('any')
url="https://github.com/ayasa520/waydroid-helper"
license=('GPL-3.0-or-later')
depends=('python' 'fakeroot' 'python-bidict' 'python-httpx' 'python-gobject'
'python-yaml' 'python-pywayland' 'python-cairo' 'gtk4' 'libadwaita'
'python-aiofiles' 'python-dbus' 'android-tools' 'vte4'
'hicolor-icon-theme')
optdepends=('bindfs: shared folders support'
'waydroid: the container this tool configures')
provides=('waydroid-helper')
conflicts=('waydroid-helper')
source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('8a02695c6a3f102d1fa2a0b6266bb1978874338eac5a33b3391ada3243c01e56')
package() {
cp -a "$srcdir/usr" "$pkgdir/"
}
+39
View File
@@ -0,0 +1,39 @@
# waydroid-helper-bin - prebuilt package of https://github.com/ayasa520/waydroid-helper
# (GTK4 + LibAdwaita GUI for Waydroid configuration/extensions, Python).
#
# Upstream only ships AppImages, so build_artifact() builds the meson project
# from the release tarball.
UPSTREAM_REPO="ayasa520/waydroid-helper"
# Installed in CI (pacman) before build_artifact runs.
BUILD_DEPS=(meson ninja python python-setuptools glib2 glib2-devel gettext)
latest_version() {
gh api "repos/$UPSTREAM_REPO/releases/latest" --jq '.tag_name' | sed 's/^v//'
}
# build_artifact <version> <output-file>
build_artifact() {
local ver="$1" outfile="$2"
local workdir destdir srctree
workdir="$(mktemp -d)"
destdir="$(mktemp -d)"
curl -sfL "https://github.com/$UPSTREAM_REPO/archive/refs/tags/v$ver.tar.gz" | tar -xz -C "$workdir"
srctree="$workdir/waydroid-helper-$ver"
meson setup "$workdir/build" "$srctree" --prefix=/usr --buildtype=release
meson install -C "$workdir/build" --destdir "$destdir"
# These caches are generated by pacman hooks; shipping them would cause
# file conflicts on install.
rm -f "$destdir/usr/share/glib-2.0/schemas/gschemas.compiled" \
"$destdir/usr/share/applications/mimeinfo.cache" \
"$destdir/usr/share/icons/hicolor/icon-theme.cache"
tar --zstd --sort=name --owner=0 --group=0 --numeric-owner --mtime='@0' \
-cf "$outfile" -C "$destdir" usr
rm -rf "$workdir" "$destdir"
}
+1 -1
View File
@@ -16,7 +16,7 @@ pkgbase = wiiudownloader-bin
depends = fontconfig depends = fontconfig
provides = wiiudownloader provides = wiiudownloader
conflicts = wiiudownloader conflicts = wiiudownloader
source = https://github.com/Felitendo/PKGBUILDS/releases/download/wiiudownloader-bin-2.98/wiiudownloader-bin-2.98.tar.zst source = wiiudownloader-bin-2.98-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/wiiudownloader-bin-2.98/wiiudownloader-bin-2.98.tar.zst
sha256sums = 5b2bd57e6531aee1774ca3b9acc70bc402eab585a2532a666f4484584412622e sha256sums = 5b2bd57e6531aee1774ca3b9acc70bc402eab585a2532a666f4484584412622e
pkgname = wiiudownloader-bin pkgname = wiiudownloader-bin
+1 -1
View File
@@ -13,7 +13,7 @@ depends=('glibc' 'glib2' 'hicolor-icon-theme' 'libx11' 'gtk3' 'gdk-pixbuf2'
'cairo' 'pango' 'fontconfig') 'cairo' 'pango' 'fontconfig')
provides=('wiiudownloader') provides=('wiiudownloader')
conflicts=('wiiudownloader') conflicts=('wiiudownloader')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('5b2bd57e6531aee1774ca3b9acc70bc402eab585a2532a666f4484584412622e') sha256sums=('5b2bd57e6531aee1774ca3b9acc70bc402eab585a2532a666f4484584412622e')
package() { package() {
+1 -1
View File
@@ -13,7 +13,7 @@ pkgbase = zapzap-bin
optdepends = hunspell: spell check optdepends = hunspell: spell check
provides = zapzap provides = zapzap
conflicts = zapzap conflicts = zapzap
source = https://github.com/Felitendo/PKGBUILDS/releases/download/zapzap-bin-7.0.3/zapzap-bin-7.0.3.tar.zst source = zapzap-bin-7.0.3-1.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/zapzap-bin-7.0.3/zapzap-bin-7.0.3.tar.zst
sha256sums = 73e5415a7de9b6e3d7d3f8760c23ad3fec901a48e714d964f54293845804e3c8 sha256sums = 73e5415a7de9b6e3d7d3f8760c23ad3fec901a48e714d964f54293845804e3c8
pkgname = zapzap-bin pkgname = zapzap-bin
+1 -1
View File
@@ -14,7 +14,7 @@ depends=('python' 'python-pyqt6' 'python-pyqt6-webengine' 'python-dbus'
optdepends=('hunspell: spell check') optdepends=('hunspell: spell check')
provides=('zapzap') provides=('zapzap')
conflicts=('zapzap') conflicts=('zapzap')
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst") source=("${pkgname}-${pkgver}-${pkgrel}.tar.zst::https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
sha256sums=('73e5415a7de9b6e3d7d3f8760c23ad3fec901a48e714d964f54293845804e3c8') sha256sums=('73e5415a7de9b6e3d7d3f8760c23ad3fec901a48e714d964f54293845804e3c8')
package() { package() {