clipcat-perf

LOW
maintainer hockinglee 0 votes scanned 2026-09-11 13:22:32.935812
View on AUR
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: Hocking Lee <hockinglee@gmail.com>
2
3# A rebuild of the `clipcat` package from the official repositories, carrying
4# patches that make a large clip history cheap to keep. See the patch files for
5# the details; in short, starting the daemon no longer decodes every image it
6# has ever stored, and the images stay on disk until a clip is actually used.
7
8_pkgname=clipcat
9pkgname=clipcat-perf
10pkgver=0.26.0
11pkgrel=1
12pkgdesc="A clipboard manager (patched for large clip histories)"
13arch=('x86_64')
14url="https://github.com/xrelkd/clipcat"
15license=('GPL-3.0-only')
16depends=('gcc-libs' 'glibc')
17makedepends=('cargo' 'protobuf')
18provides=("clipcat=$pkgver")
19conflicts=('clipcat')
20options=('!lto' '!debug')
21source=(
22 "$_pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz"
23 '0001-perf-crates-base-keep-clips-listable-without-their-p.patch'
24 '0002-perf-crates-server-load-only-the-clips-history-keeps.patch'
25 '0003-build-drop-the-git2-dependency-from-build-metadata.patch'
26)
27sha256sums=('3d20e3bbe7b5b7ac478e10e1892d3978a99f4573ed118574b4d441820cff3d7f'
28 'a9ac4502327cc3e422ea6a777929042f66b09a98d89b2b17f8697640697956f8'
29 'fabdc32e4c09d5950f9694d47e48dd87d55721f697a9ea55d957d71a5c8cfbe1'
30 'fad0d68e267e1f45ad2014c36b17db0bc48c54fa862fbf2d9d8c3e3c47a4af48')
31
32prepare() {
33 cd "$_pkgname-$pkgver"
34
35 local _patch
36 for _patch in "$srcdir"/*.patch; do
37 echo "Applying ${_patch##*/}"
38 patch -Np1 -i "$_patch"
39 done
40
41 # The patches update Cargo.lock, so fetch after applying them.
42 cargo fetch --locked --target host-tuple
43}
44
45build() {
46 cd "$_pkgname-$pkgver"
47
48 # Pin the target directory: makepkg passes a `CARGO_TARGET_DIR` set in the
49 # caller's environment straight through, which would put the binaries
50 # somewhere this build does not look.
51 export CARGO_TARGET_DIR=target
52
53 # Generated code is `include!`d from `OUT_DIR`, which would otherwise leave
54 # the build directory embedded in the binaries.
55 export RUSTFLAGS="$RUSTFLAGS --remap-path-prefix=$srcdir=/"
56
57 cargo build --frozen --release
58
59 local _cmd _shell
60 for _cmd in clipcatd clipcatctl clipcat-menu clipcat-notify; do
61 for _shell in bash zsh fish; do
62 "target/release/$_cmd" completions "$_shell" > "$_cmd.$_shell"
63 done
64 done
65}
66
67check() {
68 cd "$_pkgname-$pkgver"
69 export CARGO_TARGET_DIR=target
70 cargo test --frozen --release
71}
72
73package() {
74 cd "$_pkgname-$pkgver"
75
76 install -Dm755 -t "$pkgdir/usr/bin" \
77 target/release/clipcat-menu \
78 target/release/clipcat-notify \
79 target/release/clipcatctl \
80 target/release/clipcatd
81
82 local _cmd
83 for _cmd in clipcatd clipcatctl clipcat-menu clipcat-notify; do
84 install -Dm644 "$_cmd.bash" "$pkgdir/usr/share/bash-completion/completions/$_cmd"
85 install -Dm644 "$_cmd.zsh" "$pkgdir/usr/share/zsh/site-functions/_$_cmd"
86 install -Dm644 "$_cmd.fish" "$pkgdir/usr/share/fish/vendor_completions.d/$_cmd.fish"
87 done
88
89 install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" README.md
90}
91
92# vim:set ts=2 sw=2 et:
93

Scan history

Scanned at (UTC)SeverityRules
2026-09-11 13:22:32 Low 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion