• v2.0.2 8ef08d9870

    MOXYTOOL v2.0.2
    CI / Build, Type Check & Test (push) Successful in 15m39s
    CI / Build All Platforms (push) Successful in 22m21s
    Release / build-and-release (push) Successful in 22m40s
    Stable

    jkunz released this 2026-10-15 10:43:50 +00:00 | 0 commits to main since this release

    Fixes

    • moxytool scripts reads the upstream Proxmox VE helper-scripts index instead of a mirror that needs sign-in. The index comes from the catalog the community-scripts website reads (https://db.community-scripts.org), because the ProxmoxVE repository no longer carries the script JSON files. Scripts in development, deleted or disabled scripts and scripts for other platforms are not listed. scripts refresh checks every record: a record without a valid slug, name or type, or one that names a script outside the repository's ct/, vm/, turnkey/, tools/pve/ and tools/addon/ directories, is skipped; the refresh fails and keeps the previous index when no script remains or more than a tenth of the records is invalid. Each catalog request times out after 30 seconds, and the index file is replaced in one step.
    • moxytool scripts run gives the script the terminal, so its prompts and menus work; it used to run the script with piped output and no input. It runs the script as the project documents, bash -c "$(curl -fsSL <url>)", with the URL passed as an argument rather than as shell text, refuses script paths outside the repository's script directories, and fails when the download fails or is empty instead of running nothing. The script URL used to lack the / between the repository URL and the path.
    Downloads
  • v2.0.1 8583950dfa

    MOXYTOOL v2.0.1
    CI / Build, Type Check & Test (push) Successful in 59s
    Release / build-and-release (push) Successful in 7m36s
    CI / Build All Platforms (push) Successful in 7m45s
    Stable

    jkunz released this 2026-10-15 08:39:23 +00:00 | 2 commits to main since this release

    Fixes

    • install.sh and moxytool update no longer read the repository's raw files (raw/branch/main/install.sh), which code.foss.global no longer serves without sign-in. install.sh is a release asset now, listed in SHA256SUMS.txt, and the documented one-liner is curl -sSL https://code.foss.global/serve.zone/moxytool/releases/download/latest/install.sh | sudo bash. moxytool update validates the tag the public releases API names and runs that release's install.sh pinned to it. Installations of 2.0.0 or earlier run the one-liner once, because their moxytool update still reads the raw file.

    Maintenance

    • Release tooling currency: @git.zone/tsbundle ^3.6.2. pnpm@12.10.1 and @types/node 26.6.4 stay, because pnpm 12.11 and later and @types/node 26.6.5 have not yet cleared the seven-day rule; the other build and test tooling is current.
    Downloads
  • v2.0.0 b11f9fa8ae

    MOXYTOOL v2.0.0
    CI / Build, Type Check & Test (push) Successful in 1m3s
    Release / build-and-release (push) Successful in 8m17s
    CI / Build All Platforms (push) Successful in 8m41s
    Stable

    jkunz released this 2026-10-15 07:41:06 +00:00 | 5 commits to main since this release

    Breaking Changes

    • install.sh and moxytool update install MOXYTOOL 2.0.0 and later only: the installer requires every release asset it installs (the executable, its third-party notices and uninstall.sh, each listed in SHA256SUMS.txt), which releases before 2.0.0 do not carry. The @serve.zone/moxytool@1.5.2 npm package keeps its own postinstall.
    • The executables are Node.js single executable applications built by @git.zone/tssea from a @git.zone/tsbundle bundle, instead of deno compile binaries. The release asset names stay moxytool-linux-x64, moxytool-linux-arm64, moxytool-macos-x64, moxytool-macos-arm64 and moxytool-windows-x64.exe, so install.sh, moxytool update and the npm wrapper download them as before. Linux hosts now need glibc 2.28 or later, libstdc++.so.6 and libatomic.so.1 (Debian packages libstdc++6 and libatomic1); Alpine/musl is not supported. Each executable is released with its third-party notices (<asset>.third-party-notices.txt and .json). The Windows executable is built and checked structurally but not smoke-tested on Windows.
    • moxytool --version, help, update and vgpu-setup no longer load and refresh the community script index. Every command used to start a background refresh when the index was missing or older than 24 hours, which kept the process running until the refresh finished and printed its progress and errors next to the command's output. Only the scripts subcommands that read the index (list, search, info, run) refresh a stale index in the background; scripts refresh no longer starts a second refresh next to its own.
    • The source is a Node.js package: deno.json, mod.ts and scripts/compile-all.sh are removed, ts/index.ts is the entry point, pnpm run build:binary builds the executables, and the package declares its dependencies in package.json. Deno is not supported.

    Fixes

    • uninstall.sh removes the directory it was installed into (the --install-dir one, not only /opt/moxytool) and understands the --remove-config and --remove-data flags its messages name; an unknown option is refused.
    • install.sh (and so moxytool update) verifies the downloaded executable and its third-party notice files against the release's SHA256SUMS.txt and runs the executable with --version before it touches the current installation. It moves the current installation aside instead of deleting it first, and puts it back when a later step fails. It installs the notice files and uninstall.sh into /opt/moxytool beside the executable, accepts only SemVer versions (--version 1.2.3 or v1.2.3), downloads over HTTPS only (also on redirects), and --dry-run checks a release's assets without root and without changing anything.
    • The npm postinstall script installs the downloaded executable and its notice files only when every file matches the release's SHA256SUMS.txt, follows all HTTPS redirect kinds, and gives up on a stalled download. The npm wrapper forwards SIGTERM and SIGHUP to the executable, SIGINT only when it has no controlling terminal (a terminal Ctrl+C reaches the executable directly), and ends with the executable's exit status or signal.
    • The help printed its colour escape sequences as visible text (\u001b[1m…); it is styled text now, coloured on a terminal and plain otherwise.

    Maintenance

    • install.sh, the npm wrapper and postinstall script and the tag release workflow are generated by @git.zone/cli 9.1.0 from the binaryCli assets in .smartconfig.json. The release workflow takes the release notes from this changelog, publishes uninstall.sh with the executables, refuses to replace an existing release asset, and keeps the newest three releases (tags stay).
    • Tests for the script index cache (fetch, write, read, staleness, search and type filter) and for the CLI's argument handling, help and scripts subcommands run with @git.zone/tstest; CI builds, type-checks and tests on Node.js and builds all five executables.
    • Release tooling currency: pin pnpm@12.10.1; the build and test tooling enters at @git.zone/tsbuild ^6.0.2, @git.zone/tsbundle ^3.6.1, @git.zone/tssea ^1.2.1, @git.zone/tstest ^8.0.0 and @types/node ^26.6.4 (pnpm 12.11 and later and @types/node 26.6.5 stay out until they clear the seven-day rule).
    Downloads