Skip to content

feat: add universal installation scripts for all platforms - #3

Closed
timimsms wants to merge 1 commit into
mainfrom
feat/installation-scripts
Closed

feat: add universal installation scripts for all platforms#3
timimsms wants to merge 1 commit into
mainfrom
feat/installation-scripts

Conversation

@timimsms

Copy link
Copy Markdown
Owner

Summary

  • Adds platform-specific installation scripts for easy one-line installation
  • Provides a clean installation webpage for better user experience
  • Updates README with quick install commands

What's Included

Installation Scripts

  • scripts/install.sh: Unix installer (macOS/Linux)

    • Automatic platform/architecture detection
    • Support for multiple architectures (x86_64, arm64, i386, armv7)
    • Checksum verification
    • PATH configuration assistance
    • curl/wget fallback support
  • scripts/install.ps1: Windows PowerShell installer

    • Architecture detection (x86_64, i386, arm64)
    • Windows-specific PATH management
    • Admin privilege detection
    • PowerShell completion setup instructions

Installation Webpage

  • docs/install/index.html: User-friendly installation guide
    • Platform-specific tabs
    • Copy-to-clipboard functionality
    • Multiple installation methods
    • Clear instructions and troubleshooting

Features

Both scripts support:

  • ✅ Version selection (--version v1.0.0)
  • ✅ Custom installation directory
  • ✅ Checksum verification for security
  • ✅ Progress indicators
  • ✅ Helpful error messages
  • ✅ Automatic PATH configuration

Usage

Quick Install Commands

Unix (macOS/Linux):

curl -sSL https://raw.githubusercontent.com/timimsms/cu/main/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/timimsms/cu/main/scripts/install.ps1 | iex

Installation Options

# Install specific version
curl -sSL [...] | bash -s -- --version v1.0.0

# Install to custom directory  
curl -sSL [...] | bash -s -- --dir /usr/local/bin

# Show help
curl -sSL [...] | bash -s -- --help

Testing

A test script is included to validate the installation scripts:

./scripts/test-install.sh

GitHub Pages Setup Required

After merging, you'll need to enable GitHub Pages:

  1. Go to Settings → Pages
  2. Source: Deploy from a branch
  3. Branch: main
  4. Folder: /docs
  5. Save

The installation guide will be available at: https://timimsms.github.io/cu/install/

Security Considerations

  • Scripts verify checksums before installation
  • Users are encouraged to review scripts before running
  • Clear warnings about PATH modifications
  • No sudo required for default user installations

Next Steps

This completes the installation scripts feature. After merging:

  • Enable GitHub Pages for the installation guide
  • Test installation on various platforms
  • Consider adding installation analytics (opt-in)

🤖 Generated with Claude Code

- Add install.sh for Unix systems (macOS/Linux) with automatic platform detection
- Add install.ps1 for Windows with PowerShell installation
- Create installation webpage at docs/install/index.html for easy access
- Update README with quick install commands
- Add test script to validate installation scripts

Features:
- Automatic platform and architecture detection
- Version selection support (--version flag)
- Custom installation directory (--dir flag)
- Checksum verification for security
- PATH configuration assistance
- Progress indicators and clear error messages
- Fallback support for curl/wget on Unix
- Support for both admin and non-admin Windows installations

The scripts provide a one-line installation method:
- Unix: curl -sSL .../install.sh | bash
- Windows: irm .../install.ps1 | iex

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@timimsms

Copy link
Copy Markdown
Owner Author

Deprioritized. Homebrew and direct GitHub Release downloads (PR #17) cover the primary installation paths. Universal install scripts can be revisited if needed.

@timimsms timimsms closed this Feb 24, 2026
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.

1 participant