Files
sethLabels/CLAUDE.md
T
Seth d3e14c63c0 docs: refresh CLAUDE.md + IDEA.md for design-approved phase
Reflects state changes from this session:
- Phase moved from "ideation, no upstream pull" to "design-approved,
  pre-implementation"
- Repo confirmed live at git.sethpc.xyz/Seth/sethLabels (was TBD)
- Qt6 6.2 confirmed (was Qt5-or-Qt6 TBD)
- Target framing corrected: Debian-family generic + macOS via brew tap;
  steel141 is a build host, NOT the install target
- Strict-zero source-patch policy spelled out (replaces vague "keep
  diffs surgical")
- Versioning scheme noted (<upstream-tag>-seth<N>)
- Eventual-public flip on GitHub captured

Pointer to spec at sethlabels-docs/specs/2026-04-29-packaging-design.md
added to CLAUDE.md "Current State".
2026-04-29 09:55:07 -04:00

2.3 KiB

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. 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: design-approved, pre-implementation. Spec written and committed; no scripts/packaging code yet.
  • Repo: live at git.sethpc.xyz/Seth/sethLabels (default branch main). Upstream j-evins/glabels-qt configured as upstream remote for periodic rebases. Eventually-public on GitHub once battle-tested.
  • Deploy target: Debian-family Linux (.deb + AppImage) + macOS via Homebrew tap (build-from-source). Steel141 is a build host, not a deploy target. Windows deferred.
  • Upstream: https://github.com/j-evins/glabels-qt (GPL-3.0, Qt6 6.2 + CMake + C++)
  • Design spec: sethlabels-docs/specs/2026-04-29-packaging-design.md — all packaging decisions (artifacts, versioning, build pipeline, release flow, brew tap) live here. Read this before touching scripts/ or packaging/.

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/, .claude/). Allowlist exception: .gitignore (one-time scaffold-time touch).
  • Enforced by scripts/check-no-upstream-edits.sh (to be implemented per spec §5.5).
  • 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).