92 lines
3.2 KiB
Markdown
92 lines
3.2 KiB
Markdown
# sethLabels
|
||
|
||
> Deployment fork of [glabels-qt](https://github.com/j-evins/glabels-qt) — Qt6
|
||
> label designer / printer, packaged for Debian-family Linux and macOS.
|
||
|
||
This is **not** a code fork. The upstream application is unchanged; sethLabels
|
||
exists solely to publish installable binary artifacts that upstream explicitly
|
||
does not provide ("Currently there are no self-hosted binary snapshot releases
|
||
available… I encourage you to try building the code yourself" — upstream README).
|
||
|
||
For the application itself — what it does, screenshots, full feature list — see
|
||
the upstream [`README.md`](README.md).
|
||
|
||
## Install
|
||
|
||
### Debian / Ubuntu (`.deb`)
|
||
|
||
Download the latest `.deb` from the [releases page](https://git.sethpc.xyz/Seth/sethLabels/releases),
|
||
then:
|
||
|
||
```
|
||
sudo apt install ./glabels-qt_<VERSION>_amd64.deb
|
||
glabels-qt --version
|
||
```
|
||
|
||
### Any Linux (AppImage)
|
||
|
||
Download `sethlabels-gui-<VERSION>-x86_64.AppImage` from the [releases page](https://git.sethpc.xyz/Seth/sethLabels/releases),
|
||
make it executable, and run it:
|
||
|
||
```
|
||
chmod +x sethlabels-gui-<VERSION>-x86_64.AppImage
|
||
./sethlabels-gui-<VERSION>-x86_64.AppImage
|
||
```
|
||
|
||
A separate `sethlabels-batch-<VERSION>-x86_64.AppImage` provides the CLI for
|
||
scripted / mail-merge use.
|
||
|
||
### macOS (Homebrew)
|
||
|
||
```
|
||
brew tap seth/tap https://git.sethpc.xyz/Seth/homebrew-tap.git
|
||
brew install seth/tap/glabels-qt
|
||
```
|
||
|
||
The explicit URL form is needed because brew defaults to GitHub for tap names.
|
||
First install builds Qt6 + glabels-qt from source (~5–10 min one-time cost; see
|
||
spec §D2). Subsequent updates are a fast `brew upgrade`.
|
||
|
||
## Build from source
|
||
|
||
If you'd rather build the artifacts yourself instead of downloading a release:
|
||
|
||
```
|
||
git clone https://git.sethpc.xyz/Seth/sethLabels.git
|
||
cd sethLabels
|
||
./scripts/lib/deps-debian.sh # check / install build deps
|
||
./scripts/build-deb.sh # → build/deb/glabels-qt_*.deb
|
||
./scripts/build-appimages.sh # → sethlabels-{gui,batch}-*.AppImage
|
||
```
|
||
|
||
See [`scripts/README.md`](scripts/README.md) for full operator docs.
|
||
|
||
## How this fork works
|
||
|
||
sethLabels is a **deployment fork**: every sethLabels addition lives in NEW
|
||
files in NEW top-level directories (`scripts/`, `packaging/`,
|
||
`sethlabels-docs/`, `tests-impl/`, plus this file). Upstream files are never
|
||
edited. The single allowlisted exception is `.gitignore`. This discipline is
|
||
enforced by `scripts/check-no-upstream-edits.sh`.
|
||
|
||
The `<upstream-tag>-seth<N>` versioning preserves the upstream-lineage in every
|
||
artifact. Periodic `git rebase upstream/master` is conflict-free by construction.
|
||
|
||
## Spec & decisions
|
||
|
||
- [Design spec](sethlabels-docs/specs/2026-04-29-packaging-design.md) — invariants, decisions, build pipeline, failure modes
|
||
- [Decision log](DECISIONS.md) — settled choices + rejected alternatives
|
||
- [Project brief](IDEA.md) — plain-language motivation
|
||
|
||
## License
|
||
|
||
The upstream code is licensed under [GPL-3.0](LICENSE). sethLabels-specific
|
||
files (everything in the dirs listed above, plus this file) are licensed under
|
||
the same terms.
|
||
|
||
## Upstream
|
||
|
||
- Upstream: https://github.com/j-evins/glabels-qt (Jaye Evins / glabels.org)
|
||
- This fork: https://git.sethpc.xyz/Seth/sethLabels
|
||
- Brew tap: https://git.sethpc.xyz/Seth/homebrew-tap
|