Skip to main content
Generalhashgraph-online

installing-julia

Use when your machine does not have JuliaLang runtime

Stars
336
Source
hashgraph-online/awesome-codex-plugins
Updated
2026-05-27
Slug
hashgraph-online--awesome-codex-plugins--installing-julia
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/hashgraph-online/awesome-codex-plugins/HEAD/plugins/AtelierArith/atelier-arith-julia-development-skills/skills/installing-julia/SKILL.md -o .claude/skills/installing-julia.md

Drops the SKILL.md into .claude/skills/installing-julia.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Installing Julia

If your machine does not have the Julia programming language runtime installed, follow the instructions below to install it.

Preferred: official installer

On macOS or Linux, run the following command:

$ curl -fsSL https://install.julialang.org | sh -s -- --yes

On Windows, run the following command in PowerShell:

PS> winget install --name Julia --id 9NJNWW8PVKMN -e -s msstore

Fallback: direct tarball install

Use this method when the curl | sh installer cannot run — for example, when a sandbox or permission policy blocks piping a remote script directly into sh (the "Code from External" pattern). This downloads the same official Julia binary the installer would fetch, but as a plain file you extract locally — no shell-pipe-to-interpreter.

Steps (macOS / Linux)

  1. Detect platform with uname -s (Linux / Darwin) and uname -m (x86_64 / aarch64 / arm64).

  2. Pick the URL fragment matching your platform:

    OS / Arch URL path Tarball suffix
    Linux x86_64 linux/x64 linux-x86_64.tar.gz
    Linux aarch64 linux/aarch64 linux-aarch64.tar.gz
    macOS x86_64 (Intel) mac/x64 mac-x86_64.tar.gz
    macOS aarch64 (Apple) mac/aarch64 macaarch64.tar.gz
  3. Resolve the latest stable patch (see [[finding-latest-julia-version]] for the full set of methods — do not hard-code VERSION= from memory), then download and extract:

    VERSION=$(curl -fsSL https://julialang-s3.julialang.org/bin/versions.json \
      | jq -r 'to_entries | map(select(.value.stable)) | map(.key)
               | sort_by(split(".") | map(tonumber? // 0)) | last')
    MINOR=${VERSION%.*}             # → e.g. 1.12
    ARCH_PATH=linux/aarch64         # ← from table above
    ARCH_SUFFIX=linux-aarch64       # ← from table above
    
    mkdir -p ~/julia-install && cd ~/julia-install
    curl -fsSLO "https://julialang-s3.julialang.org/bin/${ARCH_PATH}/${MINOR}/julia-${VERSION}-${ARCH_SUFFIX}.tar.gz"
    tar -xzf "julia-${VERSION}-${ARCH_SUFFIX}.tar.gz"
    export PATH="$HOME/julia-install/julia-${VERSION}/bin:$PATH"
    julia --version
    
  4. To persist PATH across sessions, append the export PATH=... line to ~/.bashrc, ~/.zshrc, or the appropriate shell profile.

Windows fallback

If winget is unavailable, download the .zip package from https://julialang.org/downloads/, extract it, and add the inner bin\ directory to PATH.

Notes

  • The tarball is the same artifact the official installer / juliaup would fetch — only the delivery mechanism differs.
  • Version switching via juliaup add <version> is NOT available with this method; install another tarball to use a different version.
  • In container or CI environments where PATH is set per-command, reference julia by full path ($HOME/julia-install/julia-<VERSION>/bin/julia) instead of relying on shell profile.