aboutsummaryrefslogtreecommitdiffstats
path: root/CLAUDE.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-08 13:03:32 +0200
committerDanilo M. <danix@danix.xyz>2026-08-08 13:03:32 +0200
commit25742bd9efc32de82eeeeaba0f4b8976c169e7ce (patch)
tree5dacbf9207123e6e74733e5d474b28ed34888f61 /CLAUDE.md
parent998dbd56e53c8c8c8bc1a425cec16b6ccc752e34 (diff)
downloadsbo-slackbuilds-25742bd9efc32de82eeeeaba0f4b8976c169e7ce.tar.gz
sbo-slackbuilds-25742bd9efc32de82eeeeaba0f4b8976c169e7ce.zip
repo: move packages under their SBo category
Mirror SBo's own <category>/<package>/ layout instead of a flat <package>/ one. The category is now carried by the directory, so there's no separate map to maintain, and a package exports to the SBo repo at the identical relative path. misc: SecLists, exploitdb, nuclei games: UrbanTerror network: feroxbuster, ffuf, gobuster, metasploit-framework-bin, r8125 Categories taken from the synced SBo tree, which is authoritative. This also repairs two things the flat layout had broken: - test-build's category_of() returned "." for every package, since it derives the category from the parent directory name. - post-commit asserted a fixed depth. It now locates a build by the directory holding the .SlackBuild, and names the archive after the package with the package dir at the tarball root, as SBo expects. Drops the exec bit from SecLists.SlackBuild and gobuster.SlackBuild, flagged by sbolint once the pre-commit hook started running: SBo requires 0644 and ships both that way.
Diffstat (limited to 'CLAUDE.md')
-rw-r--r--CLAUDE.md26
1 files changed, 22 insertions, 4 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index 0b50ab4..85faba4 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -27,10 +27,11 @@ repo takes over its maintenance.
## Repo Structure
-Each package lives in its own top-level subfolder:
+Packages live under their SBo category, mirroring the layout of the SBo repo
+itself (`<category>/<package-name>/`):
```
-<package-name>/
+<category>/<package-name>/
├── <package-name>.SlackBuild # Main build script
├── <package-name>.info # Metadata (version, checksums, URLs)
├── README # Description and usage notes
@@ -39,6 +40,23 @@ Each package lives in its own top-level subfolder:
└── [...] # other optional files
```
+The category is not recorded anywhere else: the directory *is* the category.
+It is authoritative in the synced SBo tree, so to find where a package
+belongs:
+
+```bash
+find /var/lib/sbopkg/SBo-stable -maxdepth 2 -mindepth 2 -type d -name '<pkg>'
+```
+
+Current categories: `misc` (SecLists, exploitdb, nuclei), `games`
+(UrbanTerror), `network` (feroxbuster, ffuf, gobuster,
+metasploit-framework-bin, r8125).
+
+Matching SBo's layout means a package directory exports to the SBo repo at
+the identical relative path, with no mapping step. Both git hooks locate a
+build by walking up to the directory holding the `.SlackBuild`, so neither
+asserts a fixed depth.
+
Version tracking is handled by a single file:
```
@@ -129,7 +147,7 @@ GEM_PATH=$FW/embedded/lib/ruby/gems/3.4.0 \
BUNDLE_GEMFILE=$FW/embedded/framework/Gemfile \
$FW/embedded/bin/ruby \
-I$FW/embedded/framework/lib $SCRATCH/gen.rb \
- > metasploit-framework-bin/msfvenom.bash-completion
+ > network/metasploit-framework-bin/msfvenom.bash-completion
```
**Do not fall back to running the generator against a live
@@ -154,7 +172,7 @@ kali has updated them:
```bash
for p in msfconsole msfvenom ; do
- curl -o metasploit-framework-bin/$p.1 \
+ curl -o network/metasploit-framework-bin/$p.1 \
https://gitlab.com/kalilinux/packages/metasploit-framework/-/raw/kali/master/debian/extra/$p.1
done
```