From 4ba300176639204abe07c74a84b220d2ca2d0301 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Tue, 20 Oct 2026 12:52:37 +0200 Subject: sbshadow: regenerate phantom-dep hints with sbb-remote, not mkhint sb-builder's helper now owns the phantom deps list and the sweep (fix-current-now, mkhint -F's port). Still skipped on --no. Co-Authored-By: Claude Opus 5.5 --- AGENTS.md | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'AGENTS.md') diff --git a/AGENTS.md b/AGENTS.md index 113c169..5bf3ac3 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -30,18 +30,18 @@ slackrepo strips a dep from a package via a per-package **hintfile** (`. Pain point: a package with ~20 REQUIRES may pull in several phantom-dep dependents; hand-writing a hintfile per dependent each week is tedious and error-prone. -**Solution does not live here.** Hintfiles are owned by the `mkhint` tool (`../mkhintfile/`), which -already creates/backs up/reviews them. The phantom-dep auto-strip is implemented there, not in this -setup script: -- A phantom-dep list at `~/.config/mkhint/phantom-deps` (one dep per line, `#` comments). -- `mkhint --new` auto-adds `DELREQUIRES` for any listed dep it sees in the `.info` REQUIRES. -- `mkhint --fix-current` (`-F`) bulk-sweeps the whole repo after a weekly regen: every package whose - REQUIRES hits a phantom dep gets a hintfile with the right `DELREQUIRES` (created if absent, merged - in place if present). - -Weekly flow: regenerate repo with this script; `sbshadow` runs `mkhint -F` at the end. +**Solution does not live here.** Hintfiles are owned by sb-builder's VM helper `sbb-remote` +(`../sb-builder/remote/sbb-remote`), which creates, backs up (`.bak`) and reverts them: +- The phantom-dep list is the helper's `phantom_deps_file`, `/etc/sb-builder/phantom-deps` (one dep + per line, `#` comments), edited from the sb-builder GUI (Hints, Phantom deps), which also suggests + REQUIRES names no package of the tree has. +- `sbb-remote fix-current-now` (the GUI's `fix-current` job) bulk-sweeps the whole repo: every package + whose REQUIRES hits a phantom dep gets a hintfile with the right `DELREQUIRES` (created if absent, + merged in place if present). + +Weekly flow: regenerate repo with this script; `sbshadow` runs `sbb-remote fix-current-now` at the end. Do **not** add a hintfile generator to this script — it would create a second owner of HINT_DIR and -fight mkhint's `.bak` handling. +fight the helper's `.bak` handling. ## slackrepo config and publishing @@ -80,7 +80,9 @@ Pipeline, in order: package under `personal/` or `pentesting/` is `git rm`'d (shadow); any upstream package missing from HEAD and no longer carried in an overlay is restored with `git checkout current -- cat/pkg` (unshadow). A package is identified by a `$pkg/$pkg.SlackBuild` file. Match by directory - basename only, not content. Then it runs `mkhint -F`, except on `--no`. + basename only, not content. Then it runs `sbb-remote fix-current-now` + (sb-builder's helper; the phantom list is its `phantom_deps_file`), except + on `--no`. `sbshadow` is also called by the `sbpull` bash function (`sbpull.bash`, sourced from root's `.bashrc` on the build VM) after a `git subtree pull`, so overlay changes are applied without regenerating the whole repo. It is the -- cgit v1.2.3