Take Claude Desktop from the repository that now carries it
It was `panama app claude-desktop`: a source build, because nothing packaged it. Upstream publishes an RPM repository now, so the exception shrinks to adding that repository -- and the result upgrades with `dnf upgrade` along with everything else instead of needing a slow rebuild every time a version ships. That moves it out of setup/apps/ and into the third-party section of install-packages, beside Bun, Claude Code and RustDesk. It also means it is part of ./install for the first time. The reason it was kept out was the build: slow, wants the network throughout, and fails on an upstream that moved, which is the failure the interview exists to prevent. A dnf install is none of those, and the default dock pins com.anthropic.Claude, so a fresh machine was shipping a pin for something the install had never put there. The repository is added with upstream's own setup script rather than a .repo file written out here. A baseurl copied into this repository is a pin by another name; the script is the part upstream keeps correct. Both halves are skipped when already present, so a re-run costs nothing. The desktop entry id does not change -- it is still com.anthropic.Claude -- so the dock pin and the notification rules carry over untouched. The new package drops the nodejs dependency, which is what used to hide the missing-npm bug the launcher search contract guards; its comment said "depends" in the present tense and now says what actually happened.
This commit is contained in:
@@ -106,8 +106,9 @@ grep -q 'command -v npm' "$stage" \
|
||||
# Checking for npm is not enough. Node comes from nvm, whose script only an
|
||||
# interactive shell sources -- and a stage is not one, so npm is absent unless
|
||||
# the stage goes and gets it. This machine hid that: a system npm existed only
|
||||
# because Claude Desktop depends on nodejs. Without this line, a fresh install
|
||||
# builds no extension and says so in one line nobody reads.
|
||||
# because the Claude Desktop of the day pulled in nodejs. It no longer does, so
|
||||
# nothing hides it any more. Without this line, a fresh install builds no
|
||||
# extension and says so in one line nobody reads.
|
||||
grep -q '/etc/profile.d/nvm.sh' "$stage" \
|
||||
|| note 'the extension build never sources nvm, so npm is missing on any machine without a system node'
|
||||
|
||||
|
||||
Reference in New Issue
Block a user