Skip to content

Beneficial-AI-Foundation/installers_for_various_tools

Repository files navigation

Verus & SCIP Downloader Toolkit

A collection of Python scripts for downloading and installing development tools from GitHub releases.

πŸ“¦ Scripts Included

0. Verus installer (verus_installer_from_release.py)

Downloads the latest stable or pre-release versions of Verus.

1. Rust Analyzer Installer (rust_analyzer_installer.py)

Downloads and installs the latest Rust Analyzer from GitHub releases.

2. Verus Analyzer Installer (verus_analyzer_installer.py)

Downloads and installs the latest Verus Analyzer from GitHub releases.

3. SCIP Installer (scip_installer.py)

Downloads and installs the latest SCIP (Source Code Intelligence Protocol) tool from GitHub releases.

4. SCIP Index Generator (generate_scip_index.py)

Copies a project, runs analyzer SCIP analysis, and exports to JSON format.

✨ Features

  • πŸš€ Downloads latest stable or pre-release versions
  • πŸ” Automatically detects your platform (Linux, macOS, Windows)
  • πŸ“¦ Extracts and installs to user directories by default
  • πŸ”§ Sets up executable permissions automatically
  • πŸ›£οΈ Configures PATH in your shell configuration
  • βœ… Verifies installations work correctly
  • πŸ”„ Generates SCIP indices for code analysis

πŸš€ Quick Start

Install Verus

# Download and install the latest Verus release
python3 verus_installer_from_release.py

# List available releases without installing
python3 verus_installer_from_release.py --list-assets

# Include pre-release versions
python3 verus_installer_from_release.py --pre-release

Install Verus Analyzer

# Install latest stable Verus Analyzer
python3 verus_analyzer_installer.py

# Install latest pre-release
python3 verus_analyzer_installer.py --pre-release

# List available releases
python3 verus_analyzer_installer.py --list-assets

Install Rust Analyzer

# Install latest stable Rust Analyzer
python3 rust_analyzer_installer.py

# Install latest pre-release
python3 rust_analyzer_installer.py --pre-release

# Download VS Code extension instead of binary
python3 rust_analyzer_installer.py --vsix

Install SCIP

# Install latest stable SCIP
python3 scip_installer.py

# Install with custom directory
python3 scip_installer.py --install-dir /opt/scip

# Check available releases
python3 scip_installer.py --list-assets

Generate SCIP Index

# Analyze a project with Verus Analyzer (default)
python3 generate_scip_index.py /path/to/project

# Use Rust Analyzer instead
python3 generate_scip_index.py /path/to/project --analyzer rust-analyzer

# Keep project copy and specify output
python3 generate_scip_index.py /path/to/project --keep-copy --output-dir ./analysis

πŸ”§ Command Line Options

Verus Installer

--pre-release          Include pre-release versions
--output-dir, -o       Download directory (default: current directory)
--install-dir, -i      Installation directory (default: ~/verus)
--platform            Platform pattern to search for (e.g., x86-linux)
--list-assets         List all available assets without downloading
--no-extract          Download only, do not extract or install
--no-path             Do not modify PATH configuration

Verus Analyzer Installer

--pre-release, --prerelease    Download pre-release version instead of stable
--output-dir, -o              Download directory (default: current directory)
--install-dir, -i             Installation directory (default: ~/verus-analyzer)
--platform                    Platform pattern (e.g., x86_64-unknown-linux-gnu)
--list-assets                 List all available assets without downloading
--no-extract                  Download only, do not extract or install
--no-path                     Do not modify PATH configuration
--vsix                        Download VS Code extension instead of binary

Rust Analyzer Installer

--pre-release, --prerelease    Download pre-release version instead of stable
--output-dir, -o              Download directory (default: current directory)
--install-dir, -i             Installation directory (default: ~/rust-analyzer)
--platform                    Platform pattern (e.g., x86_64-unknown-linux-gnu)
--list-assets                 List all available assets without downloading
--no-extract                  Download only, do not extract or install
--no-path                     Do not modify PATH configuration
--vsix                        Download VS Code extension instead of binary

SCIP Installer

--pre-release, --prerelease    Download pre-release version instead of stable
--output-dir, -o              Download directory (default: current directory)
--install-dir, -i             Installation directory (default: ~/scip)
--platform                    Platform pattern (e.g., scip-linux-amd64)
--list-assets                 List all available assets without downloading
--no-extract                  Download only, do not extract or install
--no-path                     Do not modify PATH configuration

SCIP Index Generator

project                       Path to the project to analyze (required)
--analyzer, -a                Analyzer to use: verus-analyzer (default) or rust-analyzer
--output-dir, -o              Directory to copy project to (default: temp directory)
--json-output, -j             Output file for JSON export (default: index_scip.json)
--keep-copy                   Keep the copied project after analysis
--check-tools                 Check if required tools are available and exit

πŸ“‹ Requirements

  • Python 3.6+
  • requests library (pip install requests)

πŸ–₯️ Supported Platforms

Verus Analyzer

  • Linux (x86_64, aarch64, armv7)
  • macOS (x86_64, ARM64)
  • Windows (x86_64, aarch64, i686)

Rust Analyzer

  • Linux (x86_64, aarch64, armv7)
  • macOS (x86_64, ARM64)
  • Windows (x86_64, aarch64, i686)

SCIP

  • Linux (amd64, arm64, arm)
  • macOS (amd64, arm64)
  • Windows (amd64, arm64)

πŸ“ After Installation

Verus Analyzer

The installer will:

  1. Install Verus Analyzer to ~/verus-analyzer
  2. Add it to your PATH in ~/.bashrc (or appropriate shell config)
  3. Verify the installation works

To use immediately:

source ~/.bashrc
verus-analyzer --version

Rust Analyzer

The installer will:

  1. Install Rust Analyzer to ~/rust-analyzer
  2. Add it to your PATH in ~/.bashrc (or appropriate shell config)
  3. Verify the installation works

To use immediately:

source ~/.bashrc
rust-analyzer --version

SCIP

The installer will:

  1. Install SCIP to ~/scip
  2. Add it to your PATH in shell configuration
  3. Verify the installation works

To use immediately:

source ~/.bashrc
scip --version

SCIP Index Generation

The generator will:

  1. Copy your project to a working directory
  2. Run analyzer SCIP analysis (verus-analyzer scip . or rust-analyzer scip .)
  3. Export SCIP index to JSON (scip print --json index.scip > index_scip.json)
  4. Clean up temporary files (unless --keep-copy is used)

πŸ“Š Example Output

Verus Analyzer Installation

Fetching latest stable Verus Analyzer release...
Found release: 0.2025.08.05
Published: 2025-08-05T15:30:00Z
Pre-release: False
Downloading verus-analyzer-x86_64-unknown-linux-gnu.gz (15.2 MB)...
βœ“ Download completed
βœ“ Verus Analyzer installed to: /home/user/verus-analyzer
βœ“ Installation verified successfully!

πŸ“ Next steps:
   1. Restart your terminal or run: source /home/user/.bashrc
   2. Type 'verus-analyzer --version' to verify

Rust Analyzer Installation

Fetching latest stable Rust Analyzer release...
Found release: 2025-08-05
Published: 2025-08-05T10:00:00Z
Pre-release: False
Downloading rust-analyzer-x86_64-unknown-linux-gnu.gz (12.5 MB)...
βœ“ Download completed
βœ“ Rust Analyzer installed to: /home/user/rust-analyzer
βœ“ Installation verified successfully!

πŸ“ Next steps:
   1. Restart your terminal or run: source /home/user/.bashrc
   2. Type 'rust-analyzer --version' to verify

SCIP Installation

Fetching latest stable SCIP release...
Found release: v0.5.2
Published: 2025-08-01T10:15:00Z
Pre-release: False
Downloading scip-linux-amd64.tar.gz (8.1 MB)...
βœ“ Download completed
βœ“ SCIP installed to: /home/user/scip
βœ“ Installation verified successfully!

πŸ“ Next steps:
   1. Restart your terminal or run: source /home/user/.bashrc
   2. Type 'scip --version' to verify

SCIP Index Generation

============================================================
SCIP INDEX GENERATION
============================================================

1. Copying project...
Copying project from /home/user/my-project to /tmp/scip_analysis_xyz/my-project

2. Running verus-analyzer SCIP analysis...
Executing: verus-analyzer scip .
βœ“ verus-analyzer SCIP analysis completed successfully
βœ“ SCIP index file created: /tmp/scip_analysis_xyz/my-project/index.scip

3. Exporting SCIP index to JSON...
Executing: scip print --json index.scip
βœ“ SCIP JSON export completed successfully
βœ“ Output file: /tmp/scip_analysis_xyz/my-project/index_scip.json
  File size: 2.5 MB

============================================================
ANALYSIS COMPLETE
============================================================
βœ“ Project: /home/user/my-project
βœ“ Analyzer: verus-analyzer
βœ“ SCIP file: /tmp/scip_analysis_xyz/my-project/index.scip
βœ“ JSON output: /tmp/scip_analysis_xyz/my-project/index_scip.json

πŸ“„ SCIP index JSON available at: /tmp/scip_analysis_xyz/my-project/index_scip.json

πŸ”— Workflow Integration

You can chain these tools together for a complete analysis workflow:

# 1. Install tools
python3 verus_analyzer_installer.py
python3 rust_analyzer_installer.py
python3 scip_installer.py

# 2. Generate SCIP index for your project
python3 generate_scip_index.py /path/to/your/verus/project

# 3. The JSON output can be used for further analysis
cat index_scip.json | jq '.documents | length'  # Count indexed documents

πŸ› οΈ Development

Each script is self-contained and includes:

  • Comprehensive error handling
  • Progress bars for downloads
  • Platform detection
  • Path configuration
  • Installation verification
  • Cleanup options

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages