gearlever-bin: add package (4.6.2-1)
This commit is contained in:
1 parent
89206f1cd5
commit
ef3af9f483
3 files changed
+112
No files matched your search
@@ -0,0 +1,31 @@
|
|||||||
|
pkgbase = gearlever-bin
|
||||||
|
pkgdesc = Manage AppImages with ease (prebuilt)
|
||||||
|
pkgver = 4.6.2
|
||||||
|
pkgrel = 1
|
||||||
|
url = https://gearlever.mijorus.it
|
||||||
|
arch = any
|
||||||
|
license = GPL-3.0-or-later
|
||||||
|
depends = gtk4
|
||||||
|
depends = libadwaita
|
||||||
|
depends = glib2
|
||||||
|
depends = dconf
|
||||||
|
depends = hicolor-icon-theme
|
||||||
|
depends = python
|
||||||
|
depends = python-gobject
|
||||||
|
depends = python-dbus
|
||||||
|
depends = python-requests
|
||||||
|
depends = python-pyxdg
|
||||||
|
depends = python-ftputil
|
||||||
|
depends = python-desktop-entry-lib
|
||||||
|
depends = 7zip
|
||||||
|
depends = binutils
|
||||||
|
depends = squashfs-tools
|
||||||
|
depends = fuse2
|
||||||
|
optdepends = dwarfs: extract AppImages that use a DwarFS filesystem
|
||||||
|
optdepends = libxml2-legacy: required by the LibreOffice AppImage
|
||||||
|
provides = gearlever
|
||||||
|
conflicts = gearlever
|
||||||
|
source = https://github.com/Felitendo/PKGBUILDS/releases/download/gearlever-bin-4.6.2/gearlever-bin-4.6.2.tar.zst
|
||||||
|
sha256sums = 319841a5dffd942b6f3b86822ac4d9d52a5b4ee559ea03ee5c2a6318a5161546
|
||||||
|
|
||||||
|
pkgname = gearlever-bin
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
# Maintainer: Felitendo
|
||||||
|
# This PKGBUILD is updated automatically:
|
||||||
|
# https://github.com/Felitendo/PKGBUILDS
|
||||||
|
|
||||||
|
pkgname=gearlever-bin
|
||||||
|
pkgver=4.6.2
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="Manage AppImages with ease (prebuilt)"
|
||||||
|
arch=('any')
|
||||||
|
url="https://gearlever.mijorus.it"
|
||||||
|
license=('GPL-3.0-or-later')
|
||||||
|
depends=('gtk4' 'libadwaita' 'glib2' 'dconf' 'hicolor-icon-theme' 'python'
|
||||||
|
'python-gobject' 'python-dbus' 'python-requests' 'python-pyxdg'
|
||||||
|
'python-ftputil' 'python-desktop-entry-lib'
|
||||||
|
'7zip' 'binutils' 'squashfs-tools' 'fuse2')
|
||||||
|
optdepends=('dwarfs: extract AppImages that use a DwarFS filesystem'
|
||||||
|
'libxml2-legacy: required by the LibreOffice AppImage')
|
||||||
|
provides=('gearlever')
|
||||||
|
conflicts=('gearlever')
|
||||||
|
source=("https://github.com/Felitendo/PKGBUILDS/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.zst")
|
||||||
|
sha256sums=('319841a5dffd942b6f3b86822ac4d9d52a5b4ee559ea03ee5c2a6318a5161546')
|
||||||
|
|
||||||
|
package() {
|
||||||
|
cp -a "$srcdir/usr" "$pkgdir/"
|
||||||
|
}
|
||||||
@@ -0,0 +1,56 @@
|
|||||||
|
# gearlever-bin - prebuilt package of https://github.com/mijorus/gearlever
|
||||||
|
# ("Gear Lever", a GTK4 + LibAdwaita AppImage manager written in Python).
|
||||||
|
#
|
||||||
|
# Upstream only publishes a Flatpak bundle, so build_artifact() builds the
|
||||||
|
# app from the release tarball and the resulting install tree is published as
|
||||||
|
# a GitHub release asset of this repository, which the PKGBUILD then uses.
|
||||||
|
|
||||||
|
UPSTREAM_REPO="mijorus/gearlever"
|
||||||
|
|
||||||
|
# Installed in CI (pacman) before build_artifact runs.
|
||||||
|
BUILD_DEPS=(meson ninja glib2 glib2-devel python gettext)
|
||||||
|
|
||||||
|
latest_version() {
|
||||||
|
# gh instead of curl: unauthenticated GitHub API calls are rate-limited on
|
||||||
|
# shared CI runner IPs.
|
||||||
|
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/$ver.tar.gz" | tar -xz -C "$workdir"
|
||||||
|
srctree="$workdir/gearlever-$ver"
|
||||||
|
|
||||||
|
# Arch's 7zip package ships /usr/bin/7z, not the 7zz binary the Flatpak
|
||||||
|
# bundles, and the ELF-offset helper lives in /usr/lib/gearlever instead of
|
||||||
|
# somewhere on $PATH.
|
||||||
|
sed -i -e 's/7zz/7z/g' \
|
||||||
|
-e 's|get_appimage_offset|/usr/lib/gearlever/get_appimage_offset|g' \
|
||||||
|
"$srctree/src/providers/AppImageProvider.py"
|
||||||
|
|
||||||
|
meson setup "$workdir/build" "$srctree" --prefix=/usr --buildtype=release
|
||||||
|
meson install -C "$workdir/build" --destdir "$destdir"
|
||||||
|
|
||||||
|
install -Dm755 "$srctree/build-aux/get_appimage_offset.sh" \
|
||||||
|
"$destdir/usr/lib/gearlever/get_appimage_offset"
|
||||||
|
|
||||||
|
# src/meson.build uses install_subdir('.'), which drags the meson.build
|
||||||
|
# files themselves into the install tree.
|
||||||
|
find "$destdir" -name meson.build -delete
|
||||||
|
|
||||||
|
# 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"
|
||||||
|
}
|
||||||
Reference in new issue
Block a user