52 lines
2.9 KiB
Plaintext
52 lines
2.9 KiB
Plaintext
g15stats for Debian 13 (local fork package)
|
|
=========================================
|
|
|
|
This packaging targets Linux and debhelper compatibility 13. See PROVENANCE
|
|
for the complete Debian 1.9.2-2 import, licensing and snapshot version choice.
|
|
All upstream modifications are in debian/patches; do not build in the checkout
|
|
when you want it to remain pristine.
|
|
|
|
Clean source preparation (outside the checkout)
|
|
----------------------------------------------
|
|
Export ONLY tracked upstream files at commit
|
|
95de11a526346b3d9fd33df051b330c36b1c8a16 using git archive, with directory
|
|
prefix g15stats-3.0.3+git20240609.95de11a/. Compress with xz to produce
|
|
g15stats_3.0.3+git20240609.95de11a.orig.tar.xz. Extract in a temporary build
|
|
directory, then copy this debian/ directory into it. Never tar the working
|
|
checkout: .git, quilt state and untracked build outputs must not be included.
|
|
|
|
In a disposable Debian 13 container, install build-essential, debhelper,
|
|
autoconf, automake, libtool, pkgconf, libgtop2-dev, libg15-dev,
|
|
libg15render-dev and libg15daemon-client-dev (apt-get build-dep on the staged
|
|
source directory also resolves Build-Depends). Install lintian for QA.
|
|
If the already-built local G15 libraries are available, install their runtime
|
|
and development .deb files instead of the distro G15 libraries. Keep libgtop
|
|
and other dependencies from Debian 13. Do not install packages on the host.
|
|
|
|
Run dpkg-buildpackage -S -us -uc in the staged source directory. In another
|
|
empty directory/container, extract the resulting .dsc with dpkg-source -x,
|
|
then run dpkg-buildpackage -b -us -uc. Source packages here are unsigned;
|
|
dpkg-source --no-check is appropriate only after independently checking the
|
|
locally produced source artifact checksums. Lint both source and binary
|
|
.changes with lintian --fail-on error. Keep logs and all artifacts outside
|
|
the checkout. A second independent extraction/build checks rebuildability;
|
|
bit-for-bit reproducibility is a separate claim requiring comparison.
|
|
|
|
Safe smoke test
|
|
---------------
|
|
Install the resulting binary in a disposable container with no USB mappings,
|
|
no host networking and no privileged mode. Suppress service startup using
|
|
policy-rc.d before installing g15daemon. Run debian/tests/help, which compares
|
|
timeout-bounded --help and -h output. These exit before any daemon connection,
|
|
sensor access or keyboard thread. Do not invoke the normal client or -d.
|
|
The same test is declared as a superficial autopkgtest.
|
|
|
|
Scope and limitations
|
|
---------------------
|
|
No service/init, udev rule, keyboard macro or automatic startup is shipped.
|
|
The existing runtime code has not been safety-certified or rewritten: legacy
|
|
sensor paths, argument parsing, array bounds, string handling and threading
|
|
need separate runtime review. Build/CLI tests do not validate hardware, LCD
|
|
rendering, live daemon interaction, battery support or other architectures.
|
|
Use --info-rotate, not the incorrectly documented short form -ir; see the
|
|
manual for the existing parser discrepancy. |