clipforge
LOW
maintainer igzcodes
0 votes
scanned 2026-10-18 11:22:05.152284
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
Triggered rules
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: ClipForge contributors
2
#
3
# NOT used by anything in this repo (no Makefile target or CI job builds
4
# from this file) — it's a template to copy into a separate AUR package
5
# git repository (ssh://aur@aur.archlinux.org/clipforge.git), which is
6
# where AUR packages actually live. Unlike packaging/linux/pacman/PKGBUILD
7
# (which builds from an already-checked-out clone of this repo), an AUR
8
# package repo only ever contains PKGBUILD + .SRCINFO, so this one has to
9
# download its own copy of the source instead of assuming one exists.
10
#
11
# Split package, mirroring packaging/linux/pacman/PKGBUILD: `clipforge` is
12
# the default build, `clipforge-kde` additionally compiles Slint's "qt"
13
# style in (the `qt-style` Cargo feature) so std-widgets controls render via
14
# the user's actual KDE QStyle. `yay -S clipforge-kde` installs the variant
15
# directly — pacman has no pip-style `pkg[extra]` syntax, but a split
16
# package from one PKGBUILD is the equivalent: one source recipe, one clean
17
# install command per variant.
18
#
19
# Before publishing a new version:
20
# 1. Bump pkgver to match the vX.Y.Z tag you're packaging (reset pkgrel to 1).
21
# 2. Run `updpkgsums` in this directory to replace the sha256sums placeholder
22
# with the real hash of that tag's source tarball.
23
# 3. Run `makepkg --printsrcinfo > .SRCINFO` and commit both files.
24
pkgbase=clipforge
25
pkgname=('clipforge' 'clipforge-kde')
26
pkgver=1.3.1
27
pkgrel=1
28
arch=('x86_64')
29
url="https://github.com/ivanharvard/clipforge"
30
license=('MIT')
31
makedepends=('cargo' 'qt6-base')
32
source=("$pkgbase-$pkgver.tar.gz::https://github.com/ivanharvard/clipforge/archive/refs/tags/v$pkgver.tar.gz")
33
sha256sums=('f5c62d3682b8182bae010f612a9d1fd0a5a84f75b5d04a4c00465a19c553e72f')
34
# See packaging/linux/pacman/PKGBUILD for why LTO is disabled: it corrupts
35
# qttypes' C++ codegen in the clipforge-kde build.
36
options=('!lto')
37
38
prepare() {
39
cd "$pkgbase-$pkgver"
40
# AUR's own build tooling disallows network access inside build(); prepare()
41
# still has it, so fetch every crate here and let build() run with --frozen.
42
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
43
}
44
45
build() {
46
cd "$pkgbase-$pkgver"
47
cargo build --frozen --release --bin clipforge-app
48
cargo build --frozen --release --bin clipforge-app --features qt-style --target-dir target/qt-style
49
}
50
51
_install_common() {
52
install -Dm644 packaging/linux/appimage/clipforge.desktop \
53
"$pkgdir/usr/share/applications/clipforge.desktop"
54
for size in 16 24 32 48 64 128 256 512; do
55
install -Dm644 "packaging/shared/icons/clipforge-${size}.png" \
56
"$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/clipforge.png"
57
done
58
}
59
60
package_clipforge() {
61
pkgdesc="Quick single-clip video trimmer"
62
depends=('ffmpeg' 'mpv')
63
conflicts=('clipforge-kde')
64
65
cd "$pkgbase-$pkgver"
66
install -Dm755 target/release/clipforge-app "$pkgdir/usr/bin/clipforge-app"
67
_install_common
68
}
69
70
package_clipforge-kde() {
71
pkgdesc="Quick single-clip video trimmer, with native KDE Application Style controls"
72
depends=('ffmpeg' 'mpv' 'qt6-base')
73
provides=('clipforge')
74
conflicts=('clipforge')
75
76
cd "$pkgbase-$pkgver"
77
install -Dm755 target/qt-style/release/clipforge-app "$pkgdir/usr/bin/clipforge-app"
78
_install_common
79
}
80
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-18 11:22:05 | Low | 1 |