4172a30487
CLAUDE.md: removed stale "(to be implemented per spec §5.5)" wording for check-no-upstream-edits.sh (script is implemented and battle-tested), added tests-impl/ to the dirs-list, expanded the guardrail description. DECISIONS.md: appended the .app launcher decision (stub bundle synthesized in brew formula def install — sethLabels-side fix, no upstream patch).
30 lines
2.1 KiB
Markdown
30 lines
2.1 KiB
Markdown
# sethLabels
|
|
|
|
> Deployment fork of glabels-qt — Qt label designer/printer, packaged for Seth's homelab.
|
|
|
|
## Start Here
|
|
|
|
**Read the latest handoff first:** `.claude/handoffs/` (most recent file).
|
|
It has session state, in-progress work, and ordered next steps.
|
|
|
|
Then check `IDEA.md` for the project brief and `DECISIONS.md` for settled choices.
|
|
|
|
## Project Identity
|
|
|
|
sethLabels is a thin deployment fork of [glabels-qt](https://github.com/j-evins/glabels-qt). Upstream is the real project — this fork's job is to keep a known-good build recipe, any deployment glue (packaging, install paths, default templates), and any local patches in one place, while staying close enough to upstream `master` that periodic rebases stay cheap.
|
|
|
|
## Current State
|
|
|
|
- **Phase:** post-first-release. Pipeline live. First tag: 3.99-master618-seth1. Three artifacts attached to the Gitea release. Brew tap bumped to match.
|
|
- **Repo:** `git.sethpc.xyz/Seth/sethLabels` (default branch `main`). Tap: `git.sethpc.xyz/Seth/homebrew-tap`. Upstream: `j-evins/glabels-qt` (`upstream` remote).
|
|
- **Deploy targets live:** Debian-family Linux (`.deb` + AppImage) and macOS via Homebrew tap.
|
|
- **Next release:** rebase, build, tag, attach, bump tap. See `scripts/README.md` and spec §6.
|
|
|
|
## Conventions
|
|
|
|
- This is a **deployment fork**, not a real fork. The discipline is **strict zero source patches** — no upstream-tracked file is ever edited. All sethLabels content lives in NEW top-level dirs (`scripts/`, `packaging/`, `sethlabels-docs/`, `tests-impl/`, `.claude/`). Allowlist exception: `.gitignore` (one-time scaffold-time touch).
|
|
- Enforced by `scripts/check-no-upstream-edits.sh` — runs as the first step of every build script, also catches working-tree drift, aborts if `upstream/master` ref is missing.
|
|
- Preserve upstream license (GPL-3.0) and copyright headers — strict-zero handles this automatically by never touching upstream files.
|
|
- Versioning: `<upstream-tag>-seth<N>` (e.g., `3.99-master618-seth1`). See spec §D4 + §5.4.
|
|
- See `~/bin/CLAUDE.md` for global homelab conventions (gitea CLI, conventional commits, credentials handling).
|