Skip to content

Conversation

@pitzcarraldo
Copy link
Contributor

@pitzcarraldo pitzcarraldo commented Jan 28, 2026

Summary

Fix argument passing in the install wrapper script so that version specification works correctly when using bash -s VERSION.

Details

Problem: The wrapper script (scripts/install) was using bash -c "$(curl ...)" which doesn't forward arguments to the downloaded script. When users ran:

curl -fsSL https://clix.sh/install | bash -s v1.1.0

The version argument was lost and the latest version was installed instead.

Solution: Changed from:

bash -c "$(curl -fsSL https://clix.sh/install.sh)"

to:

bash <(curl -fsSL https://clix.sh/install.sh) "$@"

This properly forwards all arguments ($@) to install.sh.

Related Issues

Follow-up fix for #12

How to Validate

  1. Test with local script:
    cat scripts/install | bash -s v1.1.0
  2. Verify output shows "Installing Clix CLI v1.1.0..." (not "Fetching latest version...")
  3. Test default behavior:
    cat scripts/install | bash
  4. Verify output shows "Fetching latest version..."

Pre-Merge Checklist

Code Quality

  • Code builds without errors (bun run build)
  • Types check correctly (bun run typecheck)
  • Linter passes (bun run lint)
  • Tests pass (bun test)
  • Added/updated tests for new functionality (if applicable)

Documentation

  • Updated relevant documentation (if needed)
  • Updated CLAUDE.md if architecture changed (if needed)

Commit Standards

  • Commits follow Conventional Commits format
  • No breaking changes, OR breaking changes are documented

Platform Validation

  • macOS
  • Linux

Summary by CodeRabbit

  • Bug Fixes
    • Fixed the installation wrapper to properly forward command-line arguments to the install script, enabling version specification and other argument-based configurations during installation.

✏️ Tip: You can customize this high-level summary in your review settings.

The wrapper script was not forwarding arguments to install.sh, so
`bash -s v1.0.0` would not work when using the wrapper URL.

Changed from `bash -c "$(curl ...)"` to `bash <(curl ...) "$@"` to
properly pass all arguments through to the downloaded script.
@pitzcarraldo pitzcarraldo self-assigned this Jan 28, 2026
@coderabbitai
Copy link

coderabbitai bot commented Jan 28, 2026

Walkthrough

The install script wrapper in scripts/install is updated to use process substitution instead of embedding the command in a subshell. The new approach forwards all command-line arguments to the downloaded install script using "$@", changing from a bash -c invocation pattern to a direct bash execution with process substitution.

Changes

Cohort / File(s) Change Summary
Install wrapper command
scripts/install
Changed invocation from bash -c "$(curl ...)" to bash <(curl ...) "$@" to use process substitution and forward CLI arguments. Updated comment to reflect argument passing instead of environment variable emphasis.

Possibly related PRs

Suggested reviewers

  • JeongwooYoo
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The pull request title accurately and concisely summarizes the main change: passing arguments through the wrapper to install.sh.
Description check ✅ Passed The pull request description is comprehensive and well-structured, including a clear problem statement, solution explanation, related issues, validation steps, and a completed pre-merge checklist.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

@pitzcarraldo pitzcarraldo merged commit f9522ee into main Jan 28, 2026
5 checks passed
@pitzcarraldo pitzcarraldo deleted the feat/fix-install-version branch January 28, 2026 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants