Skip to content

Releases: iXhong/singboxctl

singboxctl v0.1.1

Choose a tag to compare

@github-actions github-actions released this 31 Aug 08:48

Fixed

  • Generated systemd units no longer quote WorkingDirectory=, which systemd
    treated as a non-absolute path and refused to load.

singboxctl v0.1.0

Choose a tag to compare

@github-actions github-actions released this 31 Aug 08:19

Added

  • Initial standalone release.
  • Python packaging (pyproject.toml) with a singboxctl console entry point,
    installable via pip, pipx, or uv tool.
  • Runtime config directory resolution ($SINGBOXCTL_CONFIG_DIR or
    ~/.config/singboxctl), so real profiles live outside the repo.
  • --version flag.
  • Example profile shipped in configs/examples/.
  • CI workflow that runs sing-box check against example profiles.
  • Local dev launcher (./singboxctl) usable without installation.
  • Read-only singboxctl doctor diagnostics for the sing-box executable,
    configuration directory, profiles, active profile, validation, and profile
    permissions.
  • singboxctl setup installs an owned systemd user unit using the discovered
    sing-box executable and resolved config directory without starting the proxy;
    login autostart is opt-in with --enable.
  • Explicit legacy-unit migration with setup --migrate and safe uninstall
    removal of recognized service/helper artifacts while preserving profiles.
  • Distribution-content validation and isolated wheel/source-archive smoke tests.
  • Project metadata links for documentation, source, issues, and changelog.
  • Tag-driven GitHub Releases with verified artifacts, checksums, and changelog
    release notes; PyPI publication remains disabled.

Fixed

  • Clash API requests now bypass http_proxy/https_proxy env vars, so
    node and current work even when a system proxy is configured
    (previously the loopback API call was tunnelled through the proxy and
    returned 502 Bad Gateway).

Changed

  • ./install.sh is now a thin compatibility wrapper that installs the package
    with uv tool or pipx (checkout-independent) and runs singboxctl setup,
    instead of building a checkout-local virtualenv and symlinks. Installer
    precedence is uv, then pipx; only --enable and --migrate are forwarded.
  • README documents uv tool install / pipx install as the primary install
    paths and explicit uv tool upgrade / pipx upgrade workflows; upgrades are
    never run automatically during setup.
  • The systemd unit template and example profiles ship as package data in wheels
    and source archives.
  • Package metadata, module output, and CLI output now share the version declared
    in singboxctl.__version__; development tooling includes reproducible builds.
  • Migration messages now also report detected checkout-local singboxctl and
    proxy-* command links with safe removal steps.

Deprecated

  • The proxy-* helper aliases are deprecated in favor of the canonical
    singboxctl commands; the wrapper files remain as forwarding shims for one
    compatibility window and receive no new features.

Removed

  • The installer no longer creates ~/.local/bin/singboxctl or proxy-*
    symlinks from the Git checkout.

Security

  • The example proxy inbound now listens on loopback, active profile links are
    checked for broken or escaping targets, and broadly readable profiles produce
    an advisory warning without being modified.