aboutsummaryrefslogtreecommitdiffstats
path: root/CLAUDE.md
diff options
context:
space:
mode:
Diffstat (limited to 'CLAUDE.md')
-rw-r--r--CLAUDE.md38
1 files changed, 38 insertions, 0 deletions
diff --git a/CLAUDE.md b/CLAUDE.md
index d7b66d8..f756f8e 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -58,6 +58,44 @@ archives (SBo convention: `.deb`/binary repacks take a `-bin` suffix):
- These packages are x86_64 only; exit with an error for other arches
- Strip ELF binaries after extraction
+#### `metasploit-framework-bin`: msfvenom bash-completion
+
+The shipped `msfvenom.bash-completion` is a **pre-generated snapshot**, not a
+static file. Upstream (kali) no longer ships it; they generate it at build
+time with a ruby script that loads the framework and dumps the live
+payload/encoder/arch/platform/format lists. We ship a snapshot instead of
+running ruby at build time (hermetic build, no build-time dep).
+
+**Regenerate it on every version bump.** After building and installing the
+new package so `/opt/metasploit-framework` is live, pull the current
+generator and run it against the installed framework's bundled ruby:
+
+```bash
+curl -o /tmp/gen.rb \
+ https://gitlab.com/kalilinux/packages/metasploit-framework/-/raw/kali/master/debian/generate-msfvenom-bash-completion.rb
+/opt/metasploit-framework/embedded/bin/ruby \
+ -I/opt/metasploit-framework/embedded/framework/lib /tmp/gen.rb \
+ > metasploit-framework-bin/msfvenom.bash-completion
+```
+
+Verify the output is non-empty and the `%s` slots were filled (grep for real
+payload names like `windows/meterpreter`), then commit it with the bump.
+
+#### `metasploit-framework-bin`: man pages
+
+The .deb ships **no** metasploit man pages (its `share/man` tree is only for
+bundled deps like postgres/ruby). We ship `msfconsole.1` and `msfvenom.1`
+from kali, who maintain them by hand (no generator script). The SlackBuild
+gzips them into `/usr/man/man1`. **Refresh them on version bumps** in case
+kali has updated them:
+
+```bash
+for p in msfconsole msfvenom ; do
+ curl -o metasploit-framework-bin/$p.1 \
+ https://gitlab.com/kalilinux/packages/metasploit-framework/-/raw/kali/master/debian/extra/$p.1
+done
+```
+
### 4. Binary repacks — RPM
Packages such as `nessus` are repacked from upstream `.rpm` archives: