commit:     30059a75652407d30f99774d681728c67e34068a
Author:     Jay Faulkner <jayf <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  4 00:15:51 2025 +0000
Commit:     Jay Faulkner <jayf <AT> gentoo <DOT> org>
CommitDate: Wed Jun  4 00:45:39 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=30059a75

dev-util/claude-code: add 1.0.10, disable updates

Claude will happily tell a user running an out of date version to run
npm -g -- this is not awesome. So we install a policy file which
disables this behavior by default. Full documentation on this file
is at https://docs.anthropic.com/en/docs/claude-code/settings

Signed-off-by: Jay Faulkner <jayf <AT> gentoo.org>

 dev-util/claude-code/Manifest                  |  1 +
 dev-util/claude-code/claude-code-1.0.10.ebuild | 56 ++++++++++++++++++++++++++
 dev-util/claude-code/files/policies.json       |  5 +++
 3 files changed, 62 insertions(+)

diff --git a/dev-util/claude-code/Manifest b/dev-util/claude-code/Manifest
index a57b48fe8567..8f9f81f5a931 100644
--- a/dev-util/claude-code/Manifest
+++ b/dev-util/claude-code/Manifest
@@ -1 +1,2 @@
+DIST claude-code-1.0.10.tgz 55904599 BLAKE2B 
616e97f2d214352dc8baf0a4f3dfed6fc30bba31cfc45383b5ccf6780b9102660e0f370fbe998939c6160c81ac16729b8a3fd01d0d925c10bc047857c67b0303
 SHA512 
310e3e6c3c2369fe41cc096e8d1132870249b81b609db348ec362211a441f817a8331a2f4582d05f2a3dfd62be348868bdff2b2503573fdabafb01eb37506967
 DIST claude-code-1.0.6.tgz 55883495 BLAKE2B 
236aab0e175f31d27c3cb5d19ab7e5127820b51c171e1fcd54e7cb4b873df9d7f0987efa90ee2b4fdfbb059dc3565ad5af2a718a5c13da63bc1a703bd98b5b02
 SHA512 
42a3d96782176d46922ea5c4c78cfaf12b6373b3651a1fdbe30a32632324b3e70c509e5960312401ed3d711650ead8ee6d936005a1933aa7d3693f0d827922a1

diff --git a/dev-util/claude-code/claude-code-1.0.10.ebuild 
b/dev-util/claude-code/claude-code-1.0.10.ebuild
new file mode 100644
index 000000000000..01d2191addbc
--- /dev/null
+++ b/dev-util/claude-code/claude-code-1.0.10.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo
+
+DESCRIPTION="Claude Code - an agentic coding tool by Anthropic"
+HOMEPAGE="https://www.anthropic.com/claude-code";
+SRC_URI="https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${PV}.tgz";
+S="${WORKDIR}"
+
+# NOTE(JayF): claude-code is only usable via paid subscription and has a
+#             clickthrough EULA-type license. Please see $HOMEPAGE for
+#             full details.
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="~amd64"
+
+QA_PREBUILT="usr/lib64/node_modules/@anthropic-ai/claude-code/vendor/*"
+RESTRICT="strip"
+
+RDEPEND="
+       >=net-libs/nodejs-18
+       sys-apps/ripgrep
+"
+BDEPEND=">=net-libs/nodejs-18[npm]"
+
+src_unpack() {
+       # npm installs the tarball directly
+       :
+}
+
+src_compile() {
+       # Skip, nothing to compile here.
+       :
+}
+
+src_install() {
+       local -a my_npm_opts=(
+               --audit false
+               --color false
+               --foreground-scripts
+               --global
+               --offline
+               --omit dev
+               --prefix "${ED}/usr"
+               --progress false
+               --verbose
+       )
+       edo npm "${my_npm_opts[@]}" install "${DISTDIR}/${P}.tgz"
+
+       rm -r 
"${ED}/usr/lib64/node_modules/@anthropic-ai/claude-code/vendor/ripgrep" || die
+       insinto /etc/claude-code
+       doins "${FILESDIR}/policies.json"
+}

diff --git a/dev-util/claude-code/files/policies.json 
b/dev-util/claude-code/files/policies.json
new file mode 100644
index 000000000000..42ff91c3fc2c
--- /dev/null
+++ b/dev-util/claude-code/files/policies.json
@@ -0,0 +1,5 @@
+{
+  "env": {
+    "DISABLE_AUTOUPDATER": "1"
+  }
+}

Reply via email to