Skip to content
This repository was archived by the owner on Jul 16, 2026. It is now read-only.

Extract setup steps into Makefile, rewrite install test workflow - #114

Merged
rtibbles merged 2 commits into
mainfrom
refactor/makefile-setup-targets
Mar 4, 2026
Merged

Extract setup steps into Makefile, rewrite install test workflow#114
rtibbles merged 2 commits into
mainfrom
refactor/makefile-setup-targets

Conversation

@rtibbles

@rtibbles rtibbles commented Mar 4, 2026

Copy link
Copy Markdown
Member

Summary

  • Add Makefile targets (setup-ppa, install-build-deps, install-upload-deps, install-kolibri) with SUDO auto-detection for CI and local dev
  • Rewrite installtest.yml: build .deb once on the runner, then test across a 5-distro × 2-arch matrix using native ARM runners instead of QEMU
  • Fix build_debian.yml: add missing make install-kolibri step so error-pages can be generated (source package was missing error_pages/)
  • Delete test/Dockerfile (replaced by container: in workflow)
  • Fix test/setup_ppa.sh missing execute permission

Tested locally with podman: build on ubuntu:latest and install on debian:bookworm both pass.

References

Supersedes the QEMU-based cross-compilation approach which was slow (~13-17 min per job).

Reviewer guidance

  • The build_debian.yml change fixes a real bug — kolibri was never installed before packaging, so error_pages/ was missing from the source package
  • The Makefile SUDO detection (id -u check) is the main shared piece — verify it works for both root (CI containers) and non-root (dev machines)

AI usage

Used Claude Code to implement the plan, iteratively testing with podman containers to verify the build and install flows work end-to-end.

@rtibbles
rtibbles force-pushed the refactor/makefile-setup-targets branch 2 times, most recently from a60e733 to 9a1839d Compare March 4, 2026 04:31
@rtibbles
rtibbles marked this pull request as draft March 4, 2026 04:32
rtibbles and others added 2 commits March 3, 2026 20:33
…flow

Add Makefile targets (setup-ppa, install-build-deps, install-upload-deps,
install-kolibri) with SUDO auto-detection for use in CI and local dev.

Rewrite installtest.yml to build the .deb once on the runner, then test
installation across a 5-distro × 2-arch matrix using native ARM runners
instead of QEMU cross-compilation. Add ubuntu:24.04 to the matrix.

Delete test/Dockerfile (replaced by direct container: usage in workflow).
Fix setup_ppa.sh missing execute permission.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…kaging

Replace inline apt-get calls with make install-upload-deps. Add missing
make install-kolibri step so error-pages can be generated (the source
package was previously missing error_pages/).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rtibbles
rtibbles force-pushed the refactor/makefile-setup-targets branch from 9a1839d to 8b03666 Compare March 4, 2026 04:33
@rtibbles
rtibbles marked this pull request as ready for review March 4, 2026 04:43
@rtibbles
rtibbles merged commit 5dc3e0a into main Mar 4, 2026
15 of 25 checks passed
@rtibbles
rtibbles deleted the refactor/makefile-setup-targets branch March 4, 2026 04:45
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant