From 86ee79cc0dd625294ac722932fd4debfcad00ec8 Mon Sep 17 00:00:00 2001 From: Jatin K Malik Date: Thu, 12 Feb 2026 13:02:51 -0800 Subject: [PATCH] chore: update install commands to use tag-based URLs (#200) Changed install commands to download install.sh directly from the release tag instead of from main branch with --tag parameter. This ensures: 1. The install script version matches the release being installed 2. No version mismatch between script and code 3. Simpler, cleaner install commands Changes: - install.sh: Updated error message to use v0.6.0-beta URL - README.md: All install commands now use v0.6.0-beta/install.sh - docs/INSTALL.md: Updated quick install command - docs/UPDATE.md: Updated update command examples - docs/RELEASE_PROCESS.md: Updated example command - src/vocalinux/main.py: Updated error message install command - tests/distro-testing-checklist.md: Updated download URL - web/src/app/page.tsx: Now uses dynamic tag in URL (not main) - .github/workflows/release.yml: Release notes use tag-based URL Before: curl .../main/install.sh | bash -s -- --tag=v0.6.0-beta After: curl .../v0.6.0-beta/install.sh | bash Fixes version consistency between install script and installed code. --- .github/workflows/release.yml | 2 +- README.md | 8 ++++---- docs/INSTALL.md | 4 ++-- docs/RELEASE_PROCESS.md | 2 +- docs/UPDATE.md | 6 +++--- install.sh | 6 +++--- src/vocalinux/main.py | 2 +- tests/distro-testing-checklist.md | 2 +- web/src/app/page.tsx | 12 ++++++------ 9 files changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1948274..12a9707 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -74,7 +74,7 @@ jobs: ### Quick Install (Recommended) ```bash - curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=${{ github.ref_name }} + curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/${{ github.ref_name }}/install.sh | bash ``` ### From Source diff --git a/README.md b/README.md index 0e2245d..158ed88 100644 --- a/README.md +++ b/README.md @@ -124,7 +124,7 @@ Here are some screenshots showcasing Vocalinux in action: Our new interactive installer guides you through setup with intelligent hardware detection: ```bash -curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=v0.6.0-beta +curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh ``` **Choose your engine:** @@ -144,19 +144,19 @@ The installer will: **Default (whisper.cpp - recommended):** ```bash -curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=v0.6.0-beta +curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh ``` Fastest installation (~1-2 min), universal GPU support via Vulkan. **Whisper (OpenAI) - if you prefer PyTorch:** ```bash -curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=v0.6.0-beta --engine=whisper +curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --engine=whisper ``` NVIDIA GPU only (~5-10 min, downloads PyTorch + CUDA). **VOSK only - for low-RAM systems:** ```bash -curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=v0.6.0-beta --engine=vosk +curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --engine=vosk ``` Lightweight option (~40MB), works on systems with 4GB RAM. diff --git a/docs/INSTALL.md b/docs/INSTALL.md index a7a5a49..0b64368 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -7,7 +7,7 @@ This guide provides detailed instructions for installing Vocalinux on Linux syst ### One-liner Installation (Recommended) ```bash -curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=v0.6.0-beta +curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash ``` > **Note**: Installs v0.6.0-beta with **whisper.cpp** (our new default engine). For other versions, check [GitHub Releases](https://github.com/jatinkrmalik/vocalinux/releases). @@ -495,7 +495,7 @@ Already have Vocalinux installed? See the [Update Guide](UPDATE.md) for instruct Quick update command: ```bash -curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=v0.6.0-beta +curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash ``` ## Getting Help diff --git a/docs/RELEASE_PROCESS.md b/docs/RELEASE_PROCESS.md index e5589d8..6e989d6 100644 --- a/docs/RELEASE_PROCESS.md +++ b/docs/RELEASE_PROCESS.md @@ -112,7 +112,7 @@ Change the Development Status classifier: **Install Commands:** Update all curl commands to use the new tag: ```bash -curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=v0.5.0-beta +curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash ``` **Release Announcement (lines ~31-34):** diff --git a/docs/UPDATE.md b/docs/UPDATE.md index ccb0938..e2e74d9 100644 --- a/docs/UPDATE.md +++ b/docs/UPDATE.md @@ -9,7 +9,7 @@ This guide explains how to update Vocalinux to the latest version. Simply re-run the installation command with the new version tag: ```bash -curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=v0.6.0-beta +curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash ``` The installer will: @@ -50,7 +50,7 @@ cd vocalinux ./install.sh --tag=v0.4.1-alpha # Or via curl (for any installation) -curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=v0.6.0-beta +curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash ``` **What gets preserved:** @@ -151,7 +151,7 @@ See the [full changelog](https://github.com/jatinkrmalik/vocalinux/releases/tag/ ./uninstall.sh --keep-config --keep-data # Reinstall -curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --tag=v0.6.0-beta +curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash ``` ### Old Version Still Running diff --git a/install.sh b/install.sh index acf624e..0685059 100755 --- a/install.sh +++ b/install.sh @@ -101,7 +101,7 @@ while [[ $# -gt 0 ]]; do echo " --test Run tests after installation" echo " --venv-dir=PATH Specify custom virtual environment directory" echo " --skip-models Skip downloading speech models during installation" - echo " --tag=TAG Install specific release tag (default: v0.4.1-alpha)" + echo " --tag=TAG Install specific release tag (default: v0.6.0-beta)" echo " --help Show this help message" echo "" echo "Examples:" @@ -141,7 +141,7 @@ print_info "==============================" echo "" # Default to installing from latest stable release instead of main branch -INSTALL_TAG="${INSTALL_TAG:-v0.4.1-alpha}" +INSTALL_TAG="${INSTALL_TAG:-v0.6.0-beta}" # Check if running from within the vocalinux repo or remotely (via curl) REPO_URL="https://github.com/jatinkrmalik/vocalinux.git" @@ -802,7 +802,7 @@ if [[ "$INTERACTIVE_MODE" == "yes" ]]; then if [ ! -t 0 ]; then print_error "Interactive mode requires a terminal (TTY)." print_error "Please run from a terminal, or use automatic mode:" - print_error " curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash -s -- --auto" + print_error " curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash" exit 1 fi diff --git a/src/vocalinux/main.py b/src/vocalinux/main.py index 49b4691..fef7ee0 100644 --- a/src/vocalinux/main.py +++ b/src/vocalinux/main.py @@ -122,7 +122,7 @@ def check_dependencies(): logger.error("") logger.error("For the best experience, install using the recommended method:") logger.error( - " curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh | bash" + " curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh | bash" ) return False diff --git a/tests/distro-testing-checklist.md b/tests/distro-testing-checklist.md index c39af3d..ec7579a 100644 --- a/tests/distro-testing-checklist.md +++ b/tests/distro-testing-checklist.md @@ -40,7 +40,7 @@ Use this checklist when testing Vocalinux on a new Linux distribution. ### Standard Installation - [ ] Download installer ```bash - curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh + curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/v0.6.0-beta/install.sh -o /tmp/vl.sh ``` - [ ] Run installer diff --git a/web/src/app/page.tsx b/web/src/app/page.tsx index def7375..b5b0602 100644 --- a/web/src/app/page.tsx +++ b/web/src/app/page.tsx @@ -38,17 +38,17 @@ import { CodeBlock } from "@/components/code-block"; import { useInView } from "react-intersection-observer"; // The one-liner install command (split into three lines for display) -// Downloads install.sh from main (which has --tag support) and passes the latest release tag +// Downloads install.sh from the specific release tag to ensure version consistency const getInstallCommands = (latestRelease: string) => ({ - interactiveInstallCommand: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=${latestRelease} --interactive`, + interactiveInstallCommand: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/${latestRelease}/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --interactive`, - oneClickInstallCommand: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=${latestRelease}`, + oneClickInstallCommand: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/${latestRelease}/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh`, - oneClickInstallWhisper: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=${latestRelease} --engine=whisper`, + oneClickInstallWhisper: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/${latestRelease}/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --engine=whisper`, - oneClickInstallVosk: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/main/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --tag=${latestRelease} --engine=vosk`, + oneClickInstallVosk: `curl -fsSL raw.githubusercontent.com/jatinkrmalik/vocalinux/${latestRelease}/install.sh -o /tmp/vl.sh && bash /tmp/vl.sh --engine=vosk`, - uninstallCommand: `curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/main/uninstall.sh -o /tmp/vul.sh && bash /tmp/vul.sh`, + uninstallCommand: `curl -fsSL https://raw.githubusercontent.com/jatinkrmalik/vocalinux/${latestRelease}/uninstall.sh -o /tmp/vul.sh && bash /tmp/vul.sh`, }); const FeatureCard = ({