Skip to content

global-launcher

Global launcher for Kodachi dashboard binaries with execution folder containment

Version: 9.0.1 | Size: 1.7MB | Author: Warith Al Maawali

License: Proprietary | Website: https://digi77.com


File Information

Property Value
Binary Name global-launcher
Version 9.0.1
Build Date 2026-03-17T09:43:03.522266178Z
Rust Version rustc 1.93.1 (01f6ddf75 2026-02-11)
File Size 1.7MB
JSON Data View Raw JSON

SHA256 Checksum

b4a7e79e83967bc17aeb9971a29364dbe1f726e8941d4eb1f03cd1241bf9cbc5

Features

Feature Description
Feature Dynamic binary discovery and deployment
Feature Execution folder containment for security
Feature Symlink-based global access
Feature Comprehensive error handling and logging
Feature Support for both Rust and Gambas binaries
Feature Deployment verification and rollback
Feature JSON and text output formats
Feature Zero hardcoded paths - fully dynamic

Security Features

Feature Description
Authentication Integrates with system permissions and user context
Encryption Secure configuration embedded in binary
Inputvalidation All binary names and paths are validated against security rules
Ratelimiting Configurable timeouts prevent resource exhaustion

System Requirements

Requirement Value
OS Linux (Debian-based, specifically Kodachi OS)
Privileges root/sudo for global deployment
Dependencies cli-core library, logs-hook service, symlink support in filesystem

Global Options

Flag Description
-h, --help Print help information
-v, --version Print version information
-n, --info Display detailed information
-e, --examples Show usage examples
--json Output in JSON format
--json-pretty Pretty-print JSON output with indentation
--verbose Enable verbose output
--quiet Suppress non-essential output
--no-color Disable colored output
--timeout <SECS> Set timeout (default: 600)
--user-override <USERNAME> Override target user for deployment

Commands

Management Commands

deploy

Deploy global symlinks for all dashboard binaries

Usage:

global-launcher deploy [OPTIONS]

Options: - --force: Force deployment even if binaries exist - --no-verify: Skip verification after deployment - --save-hashes: Save SHA256 hash report to results directory

Examples:

sudo ./global-launcher deploy
sudo ./global-launcher deploy --json
sudo ./global-launcher deploy --force

verify

Verify deployed symlinks are working

Usage:

global-launcher verify [OPTIONS]

Options: - --detailed: Show detailed verification info - --save-hashes: Save SHA256 hash report to results directory

Examples:

./global-launcher verify
./global-launcher verify --json
./global-launcher verify --detailed

cleanup

Remove all deployed symlinks

Usage:

global-launcher cleanup [OPTIONS]

Options: - --yes: Confirm cleanup without prompting

Examples:

sudo ./global-launcher cleanup
sudo ./global-launcher cleanup --yes
sudo ./global-launcher cleanup --json

Operational Scenarios

Scenario-oriented workflows generated from the binary's built-in -e --json examples.

Scenario 1: Deployment Operations

Deploying and managing global binary access

Step 1: Deploy global access for all dashboard binaries

sudo ./global-launcher deploy
Expected Output: Creates symlinks in /usr/local/bin for all discovered binaries

Note

Requires sudo for writing to /usr/local/bin

Step 2: Deploy with JSON terminal output

sudo ./global-launcher deploy --json
Expected Output: JSON response with deployment results and statistics on terminal

Step 3: Deploy and save SHA256 hash report to results directory

sudo ./global-launcher deploy --save-hashes
Expected Output: Creates deployment-hashes.json with SHA256 hashes in hooks/results/

Note

Includes source binary and launcher hashes for integrity verification

sudo ./global-launcher deploy --force
Expected Output: Overwrites existing symlinks and creates backups

Scenario 2: Verification Operations

Verifying deployed symlinks work correctly

./global-launcher verify
Expected Output: Reports on symlink status and any issues found

Step 2: Verify and save hash report to results directory

./global-launcher verify --save-hashes
Expected Output: Creates verification-hashes.json with SHA256 hashes in hooks/results/

Note

Includes source binary hashes and launcher hash for integrity checks

Step 3: Detailed verification with JSON terminal output

./global-launcher verify --detailed --json
Expected Output: Comprehensive JSON with symlink status and SHA256 hashes

Note

Each binary includes source_binary_hash and launcher_hash fields

Scenario 3: Hash Integrity Verification

SHA256 hash verification for binary integrity and update detection

Step 1: Save SHA256 hash report for all deployed binaries

./global-launcher verify --save-hashes
Expected Output: Creates verification-hashes.json in hooks/results/

Note

Includes source binary hashes and launcher hash for integrity verification

Step 2: Deploy binaries and save hash report

sudo ./global-launcher deploy --save-hashes
Expected Output: Creates deployment-hashes.json in hooks/results/

Note

Hash report useful for tracking binary versions and detecting tampering

Step 3: View saved hash report

cat hooks/results/verification-hashes.json
Expected Output: JSON report with SHA256 hashes for all binaries

Note

Compare hashes between deployments to detect binary changes

Step 4: Save hash report and extract specific hashes from JSON output

./global-launcher verify --save-hashes --json | jq '.data.verified_symlinks[0] | {name, source_binary_hash, launcher_hash}'
Expected Output: Both creates hash file and displays hashes on terminal

Note

Combine --save-hashes with --json for both file storage and terminal output

Scenario 4: Using Global Binaries

Once deployed, binaries work from anywhere

Step 1: Run health-control from any directory

health-control security-status
Expected Output: Executes health-control in hooks directory context

Note

Works from any location after deployment

Step 2: Run ip-fetch with JSON output globally

ip-fetch --json
Expected Output: IP information in JSON format

Step 3: List DNS servers from anywhere

dns-switch list
Expected Output: DNS server list with current configuration

Scenario 5: Cleanup Operations

Removing global binary access

sudo ./global-launcher cleanup
Expected Output: Removes all symlinks and reports count

Note

Requires sudo for removing from /usr/local/bin

Step 2: Auto-confirm cleanup with JSON terminal output

sudo ./global-launcher cleanup --yes --json
Expected Output: JSON response with cleanup results on terminal

Environment Variables

Variable Description Default Values
RUST_LOG Set logging level info error
NO_COLOR Disable colored output when set unset 1
KODACHI_BASE_DIR Override hooks directory location auto-detected /path/to/hooks

Exit Codes

Code Description
0 Success
1 General error
10 Security violation
2 Invalid arguments
3 Permission denied
4 Binary not found
5 Directory not found
6 Timeout
7 Deployment error
8 Execution error
9 Validation error