docs: finalize README, attribute fork, sync AGENTS.md

- Rewrite README for fork context, add changes-from-upstream section,
  prune sections duplicated by docs/, surface AppImage as preferred run
- Add fork maintainer alongside upstream author in pyproject.toml
- Sync AGENTS.md with completed patch and deliberate supply-chain decisions
This commit is contained in:
dan 2026-09-11 23:24:54 +02:00
parent 426a18f342
commit 5f71b61596
3 changed files with 79 additions and 89 deletions

View file

@ -14,12 +14,15 @@ Vannini). Runs on Linux over Wayland or X11.
This repo is a **local fork** of
[macrodev8/ScanSlicer](https://github.com/macrodev8/ScanSlicer) (upstream owner
inactive). License: GNU GPL v3 (must be preserved). Attribution: keep upstream
credit and the "inspired by PhotoSlicer" note.
credit and the "inspired by PhotoSlicer" note; `pyproject.toml` lists both the
fork maintainer and the upstream author, and `README.md` states the fork
relationship and the changes made.
## Goals of this fork
1. Fix the mirrored-export orientation bug and add an explicit left/right
orientation workflow (implemented, see below). This is the primary patch.
orientation workflow. Implemented, tested in the GUI, and committed — see
"The orientation fix" below. This was the primary patch.
2. Keep the app usable on the maintainer's own photo scans; afterwards only
minimal maintenance is expected.
3. Push to the maintainer's Forgejo instance at `code.dgerdesmann.de` (no
@ -114,6 +117,12 @@ uv run scanslicer /path/to/scans # or: python -m scanslicer
- Dependencies (from `pyproject.toml`): PySide6, opencv-python-headless, numpy.
- Python >= 3.10; dev env is Python 3.12 in `.venv`.
Dependency / supply-chain decisions (deliberate — keep them):
- `opencv-python-headless` is intentional: the app uses no OpenCV GUI/highgui.
- Pillow was removed (it was unused). Don't re-add without a concrete need.
- The AppImage build exports hashes from `uv.lock` and installs with
`pip install --require-hashes`.
### AppImage build: Docker context gotcha
The maintainer's Docker points at Docker Desktop (`desktop-linux` context). Its