aboutsummaryrefslogtreecommitdiffstats
path: root/claude-code-bin/claude-code-bin.SlackBuild
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-25 11:18:58 +0200
committerDanilo M. <danix@danix.xyz>2026-09-25 11:18:58 +0200
commiteed0e50a212f214f2838c0fa5e56ceddbeb401bd (patch)
tree161465552d752dae9ed7f230dfb505d2288c1ce4 /claude-code-bin/claude-code-bin.SlackBuild
parent887f5a9e6126c4a0e812371c38f5bbfa3b2cfe25 (diff)
downloadmy-slackbuilds-eed0e50a212f214f2838c0fa5e56ceddbeb401bd.tar.gz
my-slackbuilds-eed0e50a212f214f2838c0fa5e56ceddbeb401bd.zip
claude-code-bin: drop in favor of SBo claude-code
SBo ships development/claude-code, so the binary repack here is no longer needed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'claude-code-bin/claude-code-bin.SlackBuild')
-rw-r--r--claude-code-bin/claude-code-bin.SlackBuild214
1 files changed, 0 insertions, 214 deletions
diff --git a/claude-code-bin/claude-code-bin.SlackBuild b/claude-code-bin/claude-code-bin.SlackBuild
deleted file mode 100644
index 0a5257b..0000000
--- a/claude-code-bin/claude-code-bin.SlackBuild
+++ /dev/null
@@ -1,214 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for claude-code-bin
-
-# Copyright 2026 danix <danix@danix.xyz>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=claude-code-bin
-SRCNAM=claude
-VERSION=${VERSION:-2.1.282}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
- exit 0
-fi
-
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
- echo "ERROR: claude-code-bin is not supported on 32-bit x86" >&2
- exit 1
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
- echo "ERROR: claude-code-bin is not supported on 32-bit x86" >&2
- exit 1
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
- ARCH_LABEL="x86_64"
- PLATFORM="linux-x64"
-elif [ "$ARCH" = "aarch64" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX="64"
- ARCH_LABEL="aarch64"
- PLATFORM="linux-arm64"
-else
- echo "ERROR: Unsupported architecture: $ARCH" >&2
- exit 1
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-
-# Check for required downloader
-DOWNLOADER=""
-if command -v curl >/dev/null 2>&1; then
- DOWNLOADER="curl"
-elif command -v wget >/dev/null 2>&1; then
- DOWNLOADER="wget"
-else
- echo "ERROR: curl or wget is required but neither is installed" >&2
- exit 1
-fi
-
-# Check if jq is available (optional)
-HAS_JQ=false
-if command -v jq >/dev/null 2>&1; then
- HAS_JQ=true
-fi
-
-# Download function that works with both curl and wget
-download_file() {
- local url="$1"
- local output="$2"
-
- if [ "$DOWNLOADER" = "curl" ]; then
- if [ -n "$output" ]; then
- curl -fsSL -o "$output" "$url"
- else
- curl -fsSL "$url"
- fi
- elif [ "$DOWNLOADER" = "wget" ]; then
- if [ -n "$output" ]; then
- wget -q -O "$output" "$url"
- else
- wget -q -O - "$url"
- fi
- else
- return 1
- fi
-}
-
-# Simple JSON parser for extracting checksum when jq is not available
-get_checksum_from_manifest() {
- local json="$1"
- local platform="$2"
-
- # Normalize JSON to single line and extract checksum
- json=$(echo "$json" | tr -d '\n\r\t' | sed 's/ \+/ /g')
-
- # Extract checksum for platform using bash regex
- if [[ $json =~ \"$platform\"[^}]*\"checksum\"[[:space:]]*:[[:space:]]*\"([a-f0-9]{64})\" ]]; then
- echo "${BASH_REMATCH[1]}"
- return 0
- fi
-
- return 1
-}
-
-DOWNLOAD_BASE_URL="https://downloads.claude.ai/claude-code-releases"
-
-# Resolve version if set to 'latest'
-if [ "$VERSION" = "latest" ]; then
- echo "Fetching latest version tag..."
- RESOLVED_VERSION=$(download_file "$DOWNLOAD_BASE_URL/latest")
- if [ -z "$RESOLVED_VERSION" ]; then
- echo "ERROR: Could not resolve latest version" >&2
- exit 1
- fi
-else
- RESOLVED_VERSION="$VERSION"
-fi
-
-echo "Building claude-code-bin version: $RESOLVED_VERSION"
-
-# Download manifest and extract checksum
-echo "Fetching manifest..."
-MANIFEST_JSON=$(download_file "$DOWNLOAD_BASE_URL/$RESOLVED_VERSION/manifest.json")
-
-# Use jq if available, otherwise fall back to pure bash parsing
-if [ "$HAS_JQ" = "true" ]; then
- CHECKSUM=$(echo "$MANIFEST_JSON" | jq -r ".platforms[\"$PLATFORM\"].checksum // empty")
-else
- CHECKSUM=$(get_checksum_from_manifest "$MANIFEST_JSON" "$PLATFORM")
-fi
-
-if [ -z "$CHECKSUM" ] || [[ ! "$CHECKSUM" =~ ^[a-f0-9]{64}$ ]]; then
- echo "ERROR: Could not get checksum for platform $PLATFORM from manifest" >&2
- exit 1
-fi
-
-echo "SHA-256 checksum for $PLATFORM: $CHECKSUM"
-
-# Download and verify binary
-BINARY_PATH="$TMP/claude-$RESOLVED_VERSION-$PLATFORM"
-
-echo "Downloading claude binary..."
-if ! download_file "$DOWNLOAD_BASE_URL/$RESOLVED_VERSION/$PLATFORM/claude" "$BINARY_PATH"; then
- echo "ERROR: Download failed" >&2
- rm -f "$BINARY_PATH"
- exit 1
-fi
-
-echo "Verifying SHA-256 checksum..."
-ACTUAL_CHECKSUM=$(sha256sum "$BINARY_PATH" | cut -d' ' -f1)
-if [ "$ACTUAL_CHECKSUM" != "$CHECKSUM" ]; then
- echo "ERROR: SHA-256 checksum mismatch" >&2
- echo " Expected: $CHECKSUM" >&2
- echo " Got: $ACTUAL_CHECKSUM" >&2
- rm -f "$BINARY_PATH"
- exit 1
-fi
-
-echo "Checksum verified successfully"
-
-chmod +x "$BINARY_PATH"
-
-# Install binary to /usr/bin
-mkdir -p $PKG/usr/bin
-install -D -m 0755 "$BINARY_PATH" $PKG/usr/bin/claude
-
-# Copy documentation
-mkdir -p $PKG/usr/doc/$PRGNAM-$RESOLVED_VERSION
-cat $CWD/README > $PKG/usr/doc/$PRGNAM-$RESOLVED_VERSION/README
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$RESOLVED_VERSION/$PRGNAM.SlackBuild
-
-# Install slack-desc (doinst.sh is not needed for this package)
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-# Remove downloaded binary
-rm -f "$BINARY_PATH"
-
-# Create the package
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH_LABEL-$BUILD$TAG.$PKGTYPE