Skip to content

Releases: host452b/isetup

v1.2.2

23 Apr 11:12

Choose a tag to compare

Changelog

  • 0ecc655 ci: use --skip-existing on twine upload for idempotency on re-runs
  • 7b7d8d1 feat(packaging): ship isetup as a pip-installable package on PyPI
  • c73069e fix(packaging): anchor isetup gitignore entry so python/isetup/ is tracked
  • cbb0f16 test(e2e): add CLI-level end-to-end tests that exec the compiled binary

v1.2.1

22 Apr 14:18

Choose a tag to compare

Changelog

  • 45be671 fix(picker): CRLF line endings in raw mode; drop install.sh auto-install

v1.2.0

22 Apr 14:19

Choose a tag to compare

Highlights

  • Interactive tool selectionisetup install -i (or isetup install in a TTY with no other flags) opens a keyboard-driven picker. Two-level tree of profiles + tools, arrow keys or hjkl to navigate, Space to toggle, Enter to confirm. The confirmation page shows the full dependency closure (auto-added deps) before anything runs.
  • Non-interactive flows unchanged — CI, -p, --dry-run, -f behave byte-for-byte the same as before.
  • install.sh no longer auto-runs the installer — after fetching the binary, the one-liner now just prints a short getting-started hint pointing at `isetup install -i` and `isetup --help`. Users decide when to install.

Added

  • `-i` / `--interactive` flag on `isetup install`.
  • Auto-enter interactive mode when `isetup install` runs in a TTY with no flags.
  • Confirmation page annotating already-installed dependencies with `→ already installed, will skip`.
  • Full keybindings: `↑↓kj` move, `→l` expand, `←h` collapse, `Space` toggle, `Enter` confirm, `q`/`Esc`/`Ctrl+C` cancel, `?` help.
  • Respects `NO_COLOR`; adapts at narrow widths; aborts cleanly below 30 cols × 10 rows.

Fixed

  • Picker rendering in raw mode was misaligned (staircase layout) because `term.MakeRaw` disables OPOST, so bare `\n` is line-feed-only. `drawScreen` now rewrites newlines to CRLF at the I/O boundary.
  • Bare `Esc` now dispatches within 50 ms (previously held until a second keypress).

Changed

  • `install.sh` no longer auto-runs `isetup install`. Prints getting-started hint instead. The `ISETUP_NO_AUTO_INSTALL` env var is removed (no longer needed).
  • `isetup install --help` and `isetup --help` now mention `-i` and the TTY-auto-picker behavior.

Dependencies

  • New: `golang.org/x/term v0.29.0` (pinned to preserve Go 1.22 minimum toolchain).

Install

```bash
curl -fsSL https://raw.githubusercontent.com/host452b/isetup/main/install.sh | bash
```

After the one-liner finishes you'll see a hint. Then run:
```bash
isetup install -i # interactive picker

or

isetup install # same picker auto-enters in a TTY
```

Verify

All release assets are covered by `checksums.txt` (SHA256).

v0.3.0

01 Apr 08:56

Choose a tag to compare

Changelog

  • ba7107d feat: v0.3.0 — omit sudo when running as root (Docker container support)
  • 9c25825 fix: update last remaining old URL in default template

v0.2.0

24 Mar 16:55

Choose a tag to compare

Changelog

  • 076f29b feat: v0.2.0 — skip installed tools, lang-runtimes, module path fix

v0.1.0

24 Mar 16:47

Choose a tag to compare

Changelog

  • 08f5137 feat(cli): real-time progress output with system info header
  • 5f4f1df feat(cli): skip already-installed tools, add --force/-f flag
  • 27eddfa feat(template): add lang-runtimes profile with nvm/node/ts/go/rust
  • 5dfa17a feat: isetup v0.1.0 — cross-platform CLI dev environment setup tool
  • a7e9837 fix(install): handle GitHub API rate limit with redirect fallback
  • 9f6aac2 fix(template): glab uses official GitLab apt repo, add Windows support
  • ee9f313 fix(template): glab uses shell install on Linux (not in default apt)
  • 395e156 fix(template): use official install methods for gh and glab
  • af84eaa fix: add install.sh script, fix 404 on release download