pocketdesk
LOW
maintainer xenoz
0 votes
scanned 2026-10-28 05:49:54.903602
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: xenoz <https://github.com/sreevarshan-xenoz>
2
pkgname=pocketdesk
3
pkgver=0.7.0
4
pkgrel=1
5
pkgdesc="Your Linux or Windows desktop on your Android phone: screen, input, clipboard, files and notifications over LAN, Tailscale or the internet"
6
arch=('x86_64')
7
url="https://github.com/sreevarshan-xenoz/Pocketdesk"
8
license=('MIT OR Apache-2.0')
9
# The libraries the binaries link to (the .deb's Depends, and namcap's check).
10
depends=('ffmpeg' 'glibc' 'hicolor-icon-theme' 'libgcc' 'libpipewire' 'libxcb' 'mesa' 'opus')
11
optdepends=(
12
'pipewire: screen capture through the portal, and sound'
13
'xdg-desktop-portal: screen capture on GNOME and KDE'
14
'wl-clipboard: the clipboard on Wayland'
15
'xclip: the clipboard on X11'
16
'playerctl: what is playing, and Play/Pause and skip from the phone'
17
'tailscale: reaching the computer through a tailnet'
18
)
19
makedepends=('cargo' 'clang' 'cmake' 'libglvnd' 'pkgconf' 'wayland')
20
install=pocketdesk.install
21
# makepkg's LTO turns ring's and aws-lc's C into GCC bitcode that the Rust
22
# link cannot read (undefined ring_core_* symbols).
23
options=('!lto')
24
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz")
25
sha256sums=('24dce4ee714642df6aae121a830f1fe9849c63c298acbd9fcfb2e81a923770ad')
26
27
# GitHub names the unpacked folder after the repository, not the package.
28
_src="Pocketdesk-${pkgver}"
29
30
prepare() {
31
cd "${_src}"
32
export RUSTUP_TOOLCHAIN=stable
33
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
34
}
35
36
build() {
37
cd "${_src}"
38
export RUSTUP_TOOLCHAIN=stable
39
export CARGO_TARGET_DIR=target
40
# Two builds, as the release does, so the server's zbus features are not
41
# unified into the desktop app's.
42
cargo build --frozen --release --bin pocketdesk
43
cargo build --frozen --release -p pocketdesk-desktop --bin pocketdesk-app --bin pocketdesk-tray
44
}
45
46
package() {
47
cd "${_src}"
48
for bin in pocketdesk pocketdesk-app pocketdesk-tray; do
49
install -Dm755 "target/release/${bin}" "${pkgdir}/usr/bin/${bin}"
50
done
51
# Session-bound USER unit: each user can `systemctl --user enable --now
52
# pocketdesk` from their desktop session.
53
install -dm755 "${pkgdir}/usr/lib/systemd/user"
54
sed 's|^ExecStart=.*|ExecStart=/usr/bin/pocketdesk start|' pocketdesk.service \
55
> "${pkgdir}/usr/lib/systemd/user/pocketdesk.service"
56
chmod 644 "${pkgdir}/usr/lib/systemd/user/pocketdesk.service"
57
install -Dm644 packaging/linux/dev.pocketdesk.Pocketdesk.desktop \
58
"${pkgdir}/usr/share/applications/dev.pocketdesk.Pocketdesk.desktop"
59
install -Dm644 assets/brand/pocketdesk-icon-512.png \
60
"${pkgdir}/usr/share/icons/hicolor/512x512/apps/pocketdesk.png"
61
install -Dm644 assets/brand/pocketdesk-icon.svg \
62
"${pkgdir}/usr/share/icons/hicolor/scalable/apps/pocketdesk.svg"
63
install -Dm644 man/pocketdesk.1 "${pkgdir}/usr/share/man/man1/pocketdesk.1"
64
for file in README.md SECURITY.md config.toml.example; do
65
install -Dm644 "${file}" "${pkgdir}/usr/share/doc/${pkgname}/${file}"
66
done
67
install -Dm644 LICENSE-MIT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE-MIT"
68
install -Dm644 LICENSE-APACHE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE-APACHE"
69
}
70
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-28 05:49:54 | Low | 1 |