aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-07-09 11:23:45 +0200
committerDanilo M. <danix@danix.xyz>2026-07-09 11:23:45 +0200
commit682b02a555291f6f9bfc74d95410464679c33388 (patch)
treefc8524cc1fc20787070ff7e1eb8170598c0dd8fc
parent30fc8c884ec188edcec2597d75bd301e048a6929 (diff)
downloadmy-slackbuilds-682b02a555291f6f9bfc74d95410464679c33388.tar.gz
my-slackbuilds-682b02a555291f6f9bfc74d95410464679c33388.zip
docs: mandate cat over cp for package files in claude-desktop-bin spec
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-rw-r--r--.extras/docs/superpowers/specs/2026-07-09-claude-desktop-bin-slackbuild-design.md19
1 files changed, 15 insertions, 4 deletions
diff --git a/.extras/docs/superpowers/specs/2026-07-09-claude-desktop-bin-slackbuild-design.md b/.extras/docs/superpowers/specs/2026-07-09-claude-desktop-bin-slackbuild-design.md
index 9b0b069..97c5d8d 100644
--- a/.extras/docs/superpowers/specs/2026-07-09-claude-desktop-bin-slackbuild-design.md
+++ b/.extras/docs/superpowers/specs/2026-07-09-claude-desktop-bin-slackbuild-design.md
@@ -117,15 +117,26 @@ Base: SBo template + the megasync-bin binary-repack pattern in this repo.
deb already ships its libs 0755. A defensive `chmod 755` over the bundled
`*.so` files is still applied in case a future deb regresses.)
5. `chmod 4755 usr/lib/claude-desktop/chrome-sandbox` (setuid, per above).
-6. Install docs: `usr/doc/$PRGNAM-$VERSION/`, moving the upstream `copyright`
- there and adding the `.SlackBuild` script. Remove the Debian
- `usr/share/doc/claude-desktop` dir after copying.
+6. Install docs to `usr/doc/$PRGNAM-$VERSION/`: move the upstream `copyright`
+ there, and pipe in the SlackBuild and nvchecker stanza with `cat` (never
+ `cp`, see below):
+ `cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild`
+ `cat $CWD/$PRGNAM.nvchecker > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.nvchecker`
+ Remove the Debian `usr/share/doc/claude-desktop` dir after copying.
7. Standard `find -L $PKG` chown/chmod cleanup block (root:root, sane dir/file
modes) — applied **before** the chrome-sandbox chmod so it does not clobber
the setuid bit. Order matters: perm-normalize first, setuid last.
-8. Install `slack-desc` to `install/`, `doinst.sh` to `install/`.
+8. Install package metadata with `cat` into `$PKG/install/`:
+ `cat $CWD/slack-desc > $PKG/install/slack-desc`
+ `cat $CWD/doinst.sh > $PKG/install/doinst.sh`
9. `makepkg -l y -c n`.
+**Always `cat` source files into `$PKG`, never `cp`.** Standard SBo procedure:
+`cat src > dest` writes through a fresh dest so the umask/root ownership of the
+build controls the resulting perms, whereas `cp` would carry the source tree's
+mode/ownership into the package. This matters here because the working copy is
+checked out from git with the user's perms.
+
## doinst.sh
Trimmed from the SBo template. Keep only the hooks the payload needs: