moarchy-chess
LOW
maintainer simonschubert
0 votes
scanned 2026-09-13 19:15:06.142757
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: Simon Schubert <simon@librem.one>
2
pkgname=moarchy-chess
3
pkgver=0.1.0
4
pkgrel=1
5
pkgdesc="Chess for a Linux phone, with an opponent that thinks on a clock"
6
arch=('any')
7
url="https://github.com/SimonSchubert/moarchy-apps"
8
license=('MIT' 'CC-BY-4.0')
9
# Pure Python, so arch=any. The GUI stack is all runtime, nothing is compiled.
10
# python-cairo is not optional here the way it nearly is elsewhere: the board is
11
# a drawing area, so every square and every piece on screen is drawn from a
12
# Python draw function, and without pycairo GTK cannot hand that function a
13
# context at all. Habits loses a ring it can live without; this loses the board.
14
depends=('python' 'python-gobject' 'gtk4' 'libadwaita' 'python-cairo')
15
source=("$url/releases/download/chess-v$pkgver/$pkgname-$pkgver.tar.gz")
16
sha256sums=('647d996143061e989c7ab83bd42160bffd4e57a6ac8f7bc2bf86351aec24c3e0')
17
18
# Two licences, because the pieces are not ours: the six outlines in
19
# moarchy_chess/pieces.py are Font Awesome Free's chess icons under CC BY 4.0,
20
# which is an attribution licence and is attributed in the About dialog, the
21
# README and the file itself. Everything else is MIT.
22
#
23
# The source tarball is assembled by packaging/release.sh from two subtrees of
24
# one tag -- apps/chess and shared -- so it holds this app and the shared code
25
# it uses and nothing else. That is what lets a monorepo keep per-app versions:
26
# `git archive <tag>:<subdir>` means one repo does not mean one version number.
27
#
28
# Deliberately a versioned package rather than a -git one. mobileomarchy pins
29
# each package by a commit; for a VCS package that pin governs the packaging and
30
# says nothing about the code makepkg then clones at HEAD, so "pinned" would
31
# read as reproducible without being it. A tarball with a checksum makes the pin
32
# name the exact code, and gives pacman a version it can compare for upgrades.
33
#
34
# The source is a release asset built with `git archive`, not GitHub's
35
# auto-generated archive: those are produced on demand, and a change to the
36
# compression GitHub uses has broken every checksum pinned against them before.
37
38
check() {
39
cd "$srcdir/$pkgname-$pkgver"
40
# The rules, the pieces, the search and the file. All four are deliberately
41
# GTK-free, so they run in a build chroot; the widget tests skip themselves
42
# without a display, which a chroot does not have. scripts/check.sh runs those.
43
PYTHONPATH=. python3 -m unittest discover -s tests
44
}
45
46
package() {
47
cd "$srcdir/$pkgname-$pkgver"
48
49
# Deliberately NOT site-packages. That path is Python-version-specific
50
# (/usr/lib/python3.13/site-packages), and this is an arch=any package: the
51
# version that built it would be baked in, so a Python minor bump would break
52
# every installed copy until rebuilt. A private dir on sys.path is immune.
53
install -Dm644 moarchy_chess/*.py -t "$pkgdir/usr/lib/$pkgname/moarchy_chess/"
54
55
# The shared code is vendored into this package rather than being a package of
56
# its own. The store reports what an app costs in packages and megabytes onto
57
# a stock image, and a second package for two hundred lines of palette
58
# arithmetic is a cost with nothing behind it. One source copy in the repo,
59
# one self-contained package here, no runtime coupling between apps.
60
install -Dm644 moarchy_ui/*.py -t "$pkgdir/usr/lib/$pkgname/moarchy_ui/"
61
62
install -Dm755 launcher "$pkgdir/usr/bin/moarchy-chess"
63
64
install -Dm644 data/org.moarchy.Chess.desktop \
65
"$pkgdir/usr/share/applications/org.moarchy.Chess.desktop"
66
install -Dm644 data/org.moarchy.Chess.svg \
67
"$pkgdir/usr/share/icons/hicolor/scalable/apps/org.moarchy.Chess.svg"
68
69
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
70
install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
71
}
72
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-13 19:15:06 | Low | 1 |