@opencode-cloud/core
Advanced tools
+1
-1
| [package] | ||
| name = "opencode-cloud-core" | ||
| version = "11.0.0" | ||
| version = "12.0.0" | ||
| edition = "2024" | ||
@@ -5,0 +5,0 @@ rust-version = "1.89" |
+1
-1
| { | ||
| "name": "@opencode-cloud/core", | ||
| "version": "11.0.0", | ||
| "version": "12.0.0", | ||
| "description": "Core NAPI bindings for opencode-cloud (internal package)", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
+62
-58
@@ -7,3 +7,3 @@ # ============================================================================= | ||
| # Features: | ||
| # - Ubuntu 24.04 LTS (noble) base | ||
| # - Ubuntu 25.10 (questing) base | ||
| # - Non-root user with passwordless sudo | ||
@@ -30,3 +30,3 @@ # - Multiple languages via mise (Node.js, Python, Rust, Go) | ||
| # To check for updates: just check-updates | ||
| # Last version audit: 2026-01-22 | ||
| # Last version audit: 2026-02-03 | ||
| # ----------------------------------------------------------------------------- | ||
@@ -37,3 +37,3 @@ | ||
| # ----------------------------------------------------------------------------- | ||
| FROM ubuntu:24.04 AS base | ||
| FROM ubuntu:25.10 AS base | ||
@@ -51,3 +51,3 @@ # OCI Labels for image metadata | ||
| LABEL org.opencontainers.image.licenses="MIT" | ||
| LABEL org.opencontainers.image.base.name="ubuntu:24.04" | ||
| LABEL org.opencontainers.image.base.name="ubuntu:25.10" | ||
@@ -65,3 +65,3 @@ # Environment configuration | ||
| # Group 1: Core utilities and build tools (2026-01-22) | ||
| # Group 1: Core utilities and build tools (2026-02-03) | ||
| # Use BuildKit cache mount for APT package lists and cache | ||
@@ -75,22 +75,22 @@ RUN --mount=type=cache,target=/var/lib/apt/lists \ | ||
| # systemd for Cockpit support | ||
| systemd=255.* \ | ||
| systemd-sysv=255.* \ | ||
| dbus=1.14.* \ | ||
| systemd=257.* \ | ||
| systemd-sysv=257.* \ | ||
| dbus=1.16.* \ | ||
| # Shell and terminal | ||
| zsh=5.9-* \ | ||
| tmux=3.4-* \ | ||
| tmux=3.5a-* \ | ||
| # Editors | ||
| vim=2:9.1.* \ | ||
| neovim=0.9.* \ | ||
| nano=7.2-* \ | ||
| neovim=0.10.* \ | ||
| nano=8.4-* \ | ||
| # Build essentials | ||
| build-essential=12.* \ | ||
| pkg-config=1.8.* \ | ||
| cmake=3.28.* \ | ||
| cmake=3.31.* \ | ||
| # Version control | ||
| git=1:2.43.* \ | ||
| git-lfs=3.4.* \ | ||
| git=1:2.51.* \ | ||
| git-lfs=3.6.* \ | ||
| # Core utilities | ||
| curl=8.5.* \ | ||
| wget=1.21.* \ | ||
| curl=8.14.* \ | ||
| wget=1.25.* \ | ||
| # UNPINNED: ca-certificates - security-critical root certs, needs auto-updates | ||
@@ -101,3 +101,3 @@ ca-certificates \ | ||
| lsb-release=12.* \ | ||
| software-properties-common=0.99.* \ | ||
| software-properties-common=0.114* \ | ||
| sudo=1.9.* \ | ||
@@ -107,17 +107,17 @@ # UNPINNED: openssh-client - security-critical, needs auto-updates | ||
| # Process/system tools | ||
| htop=3.3.* \ | ||
| htop=3.4.* \ | ||
| procps=2:4.0.* \ | ||
| less=590-* \ | ||
| file=1:5.45-* \ | ||
| tree=2.1.* \ | ||
| less=668-* \ | ||
| file=1:5.46-* \ | ||
| tree=2.2.* \ | ||
| # JSON/YAML processing | ||
| jq=1.7.* \ | ||
| jq=1.8.* \ | ||
| # Network tools | ||
| netcat-openbsd=1.226-* \ | ||
| iputils-ping=3:20240117-* \ | ||
| dnsutils=1:9.18.* \ | ||
| netcat-openbsd=1.229-* \ | ||
| iputils-ping=3:20240905-* \ | ||
| bind9-dnsutils=1:9.20.* \ | ||
| # Compression | ||
| zip=3.0-* \ | ||
| unzip=6.0-* \ | ||
| xz-utils=5.6.* \ | ||
| xz-utils=5.8.* \ | ||
| p7zip-full=16.02* \ | ||
@@ -134,3 +134,3 @@ && rm -rf /var/lib/apt/lists/* | ||
| # Group 2: Database clients (2026-01-22) | ||
| # Group 2: Database clients (2026-02-03) | ||
| # Use BuildKit cache mount for APT package lists and cache | ||
@@ -140,8 +140,8 @@ RUN --mount=type=cache,target=/var/lib/apt/lists \ | ||
| apt-get update && apt-get install -y --no-install-recommends \ | ||
| sqlite3=3.45.* \ | ||
| postgresql-client=16+* \ | ||
| sqlite3=3.46.* \ | ||
| postgresql-client=17+* \ | ||
| default-mysql-client=1.1.* \ | ||
| && rm -rf /var/lib/apt/lists/* | ||
| # Group 3: Development libraries for compiling tools (2026-01-22) | ||
| # Group 3: Development libraries for compiling tools (2026-02-03) | ||
| # Use BuildKit cache mount for APT package lists and cache | ||
@@ -152,12 +152,12 @@ RUN --mount=type=cache,target=/var/lib/apt/lists \ | ||
| # libssl-dev depends on libssl3t64 with exact version match | ||
| libssl3t64=3.0.* \ | ||
| libssl-dev=3.0.* \ | ||
| libffi-dev=3.4.* \ | ||
| libssl3t64=3.5.* \ | ||
| libssl-dev=3.5.* \ | ||
| libffi-dev=3.5.* \ | ||
| zlib1g-dev=1:1.3.* \ | ||
| libbz2-dev=1.0.* \ | ||
| libreadline-dev=8.2-* \ | ||
| libsqlite3-dev=3.45.* \ | ||
| libncurses-dev=6.4+* \ | ||
| libpam0g-dev=1.5.* \ | ||
| liblzma-dev=5.6.* \ | ||
| libreadline-dev=8.3-* \ | ||
| libsqlite3-dev=3.46.* \ | ||
| libncurses-dev=6.5+* \ | ||
| libpam0g-dev=1.7.* \ | ||
| liblzma-dev=5.8.* \ | ||
| && rm -rf /var/lib/apt/lists/* | ||
@@ -212,12 +212,12 @@ | ||
| # Install language runtimes via mise (2026-01-22) | ||
| # - node@lts: mise handles LTS resolution (currently 22.x) | ||
| # - python@3.12: pinned to minor version | ||
| # - go@1.24: pinned to minor version (was @latest) | ||
| RUN /home/opencode/.local/bin/mise install node@lts \ | ||
| && /home/opencode/.local/bin/mise install python@3.12 \ | ||
| && /home/opencode/.local/bin/mise install go@1.24 \ | ||
| && /home/opencode/.local/bin/mise use --global node@lts \ | ||
| && /home/opencode/.local/bin/mise use --global python@3.12 \ | ||
| && /home/opencode/.local/bin/mise use --global go@1.24 | ||
| # Install language runtimes via mise (2026-02-03) | ||
| # - node@25: pinned to major version | ||
| # - python@3.14: pinned to major version | ||
| # - go@1.25: pinned to minor version | ||
| RUN /home/opencode/.local/bin/mise install node@25 \ | ||
| && /home/opencode/.local/bin/mise install python@3.14 \ | ||
| && /home/opencode/.local/bin/mise install go@1.25 \ | ||
| && /home/opencode/.local/bin/mise use --global node@25 \ | ||
| && /home/opencode/.local/bin/mise use --global python@3.14 \ | ||
| && /home/opencode/.local/bin/mise use --global go@1.25 | ||
@@ -245,6 +245,7 @@ # Set up mise shims in PATH for non-interactive shells | ||
| # Install pnpm 10.x via corepack (2026-01-22) | ||
| # Install pnpm 10.x via corepack (2026-02-03) | ||
| RUN eval "$(/home/opencode/.local/bin/mise activate bash)" \ | ||
| && npm install -g corepack \ | ||
| && corepack enable \ | ||
| && corepack prepare pnpm@10.28.1 --activate | ||
| && corepack prepare pnpm@10.28.2 --activate | ||
@@ -256,3 +257,3 @@ # Set up pnpm global bin directory | ||
| # bun - self-managing installer, trusted to handle versions | ||
| # bun - self-managing installer, pinned to version (2026-02-03) | ||
| RUN curl -fsSL https://bun.sh/install | bash -s "bun-v1.3.5" \ | ||
@@ -263,4 +264,4 @@ && rm -rf /home/opencode/.bun/install/cache /home/opencode/.bun/cache /home/opencode/.cache/bun | ||
| # uv - self-managing installer, trusted to handle versions (fast Python package manager) | ||
| RUN curl -LsSf https://astral.sh/uv/install.sh | sh | ||
| # uv - pinned installer (fast Python package manager) (2026-02-03) | ||
| RUN curl -LsSf https://github.com/astral-sh/uv/releases/download/0.9.21/uv-installer.sh | sh | ||
@@ -278,3 +279,3 @@ # Install pipx for isolated Python application installs | ||
| RUN eval "$(/home/opencode/.local/bin/mise activate bash)" \ | ||
| && pnpm add -g typescript | ||
| && pnpm add -g typescript@5.9.2 | ||
@@ -334,3 +335,3 @@ # ----------------------------------------------------------------------------- | ||
| # Install btop system monitor (2026-01-22) | ||
| # Install btop system monitor (2026-02-03) | ||
| # Use BuildKit cache mount for APT package lists and cache | ||
@@ -362,3 +363,3 @@ USER root | ||
| # Cockpit provides web-based administration for the container | ||
| # Ubuntu noble has cockpit 316 in main repos | ||
| # Ubuntu questing has cockpit 346 in main repos | ||
| # Use BuildKit cache mount for APT package lists and cache | ||
@@ -548,4 +549,7 @@ # USER root | ||
| # Pin to specific commit for reproducibility | ||
| # NOTE: OPENCODE_COMMIT is not tied to releases/tags; it tracks the latest stable | ||
| # commit on the main branch of https://github.com/pRizz/opencode. | ||
| # Update it by running: ./scripts/update-opencode-commit.sh | ||
| # Build opencode from source (BuildKit cache mounts disabled for now) | ||
| RUN OPENCODE_COMMIT="8a63844a3d3166273a83d5e94d8820d62ad82510" \ | ||
| RUN OPENCODE_COMMIT="cfe79755427fd8d3b94be76e1c7912bdc943a8ab" \ | ||
| && rm -rf /tmp/opencode-repo \ | ||
@@ -748,3 +752,3 @@ && git clone --depth 1 https://github.com/pRizz/opencode.git /tmp/opencode-repo \ | ||
| RUN mkdir -p /home/opencode/.npm \ | ||
| && npx --yes get-shit-done-cc --opencode --global \ | ||
| && npx --yes get-shit-done-cc@1.11.1 --opencode --global \ | ||
| && rm -rf /home/opencode/.npm/_cacache /home/opencode/.npm/_npx | ||
@@ -751,0 +755,0 @@ |
@@ -804,3 +804,3 @@ //! Docker image build and pull operations | ||
| let mut logs = VecDeque::new(); | ||
| logs.push_back("Step 1/5 : FROM ubuntu:22.04".to_string()); | ||
| logs.push_back("Step 1/5 : FROM ubuntu:24.04".to_string()); | ||
| logs.push_back("Step 2/5 : RUN apt-get update".to_string()); | ||
@@ -807,0 +807,0 @@ logs.push_back("E: Unable to fetch some archives".to_string()); |
@@ -10,5 +10,5 @@ # opencode-cloud-sandbox | ||
| - Ubuntu 24.04 (noble) | ||
| - Ubuntu 25.10 (questing) | ||
| - Non-root user with passwordless sudo | ||
| - mise-managed runtimes (Node.js LTS, Python 3.12, Go 1.24) | ||
| - mise-managed runtimes (Node.js 25, Python 3.14, Go 1.25) | ||
| - Rust toolchain via rustup | ||
@@ -15,0 +15,0 @@ - Core CLI utilities (ripgrep, eza, jq, git, etc.) |
@@ -47,5 +47,5 @@ //! Remote host provisioning | ||
| pub id: String, | ||
| /// Pretty name (e.g., "Ubuntu 22.04.3 LTS") | ||
| /// Pretty name (e.g., "Ubuntu 24.04 LTS") | ||
| pub pretty_name: String, | ||
| /// Version ID (e.g., "22.04", "2023") | ||
| /// Version ID (e.g., "24.04", "2023") | ||
| pub version_id: Option<String>, | ||
@@ -331,7 +331,7 @@ } | ||
| let content = r#" | ||
| PRETTY_NAME="Ubuntu 22.04.3 LTS" | ||
| PRETTY_NAME="Ubuntu 24.04 LTS" | ||
| NAME="Ubuntu" | ||
| VERSION_ID="22.04" | ||
| VERSION="22.04.3 LTS (Jammy Jellyfish)" | ||
| VERSION_CODENAME=jammy | ||
| VERSION_ID="24.04" | ||
| VERSION="24.04 LTS (Noble Numbat)" | ||
| VERSION_CODENAME=noble | ||
| ID=ubuntu | ||
@@ -343,3 +343,3 @@ ID_LIKE=debian | ||
| assert_eq!(info.id, "ubuntu"); | ||
| assert_eq!(info.version_id, Some("22.04".to_string())); | ||
| assert_eq!(info.version_id, Some("24.04".to_string())); | ||
| } | ||
@@ -381,4 +381,4 @@ | ||
| id: "ubuntu".to_string(), | ||
| pretty_name: "Ubuntu 22.04".to_string(), | ||
| version_id: Some("22.04".to_string()), | ||
| pretty_name: "Ubuntu 24.04".to_string(), | ||
| version_id: Some("24.04".to_string()), | ||
| }; | ||
@@ -385,0 +385,0 @@ let commands = get_docker_install_commands(&debian_info).unwrap(); |
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
336303
0.07%