A temporary repository containing some nu/sh shell scripts until we decide on a more suitable location.
  • Nushell 62.6%
  • Shell 37.4%
Find a file
Mahmoud-Emad 0a07f3e277 feat: split components into core (default) and extra (on request)
Core (installed by default): hero_proc, hero_router, hero_proxy
Extra (specify explicitly): hero_compute, my_hypervisor, cloud_hypervisor, mycelium

  hero_install.nu --install                    # core only
  hero_install.nu --install --all              # everything
  hero_install.nu --install hero_compute       # core + hero_compute
2026-04-08 23:07:07 +02:00
hero_install.nu feat: split components into core (default) and extra (on request) 2026-04-08 23:07:07 +02:00
install-nu.sh feat: rename install.sh to install-nu.sh, clean up script and README 2026-04-08 18:48:30 +02:00
LICENSE Initial commit 2026-04-08 16:36:50 +00:00
README.md feat: split components into core (default) and extra (on request) 2026-04-08 23:07:07 +02:00

Hero Scripts

Nushell scripts for managing the Hero ecosystem — download, install, and configure Hero components without compilation.

Quick Start

# Install nushell
curl -sfL https://forge.ourworld.tf/lhumina_code/hero_scripts/raw/branch/main/install-nu.sh | bash

# Install core Hero components (hero_proc, hero_router, hero_proxy)
nu ~/hero/bin/hero_install.nu --install

# Install everything (core + hero_compute, my_hypervisor, cloud_hypervisor, mycelium)
nu ~/hero/bin/hero_install.nu --install --all

install-nu.sh

Installs nushell on a fresh machine.

  • macOS: installs via Homebrew
  • Linux: downloads pre-built musl binary from GitHub (x86_64 and aarch64)
  • Installs to ~/hero/bin/ and adds to PATH
  • Skips if nushell is already installed
curl -sfL https://forge.ourworld.tf/lhumina_code/hero_scripts/raw/branch/main/install-nu.sh | bash

hero_install.nu

Download and install pre-built Hero binaries from Forgejo releases.

Usage

nu hero_install.nu --install                           # core components only
nu hero_install.nu --install --all                     # all components
nu hero_install.nu --install hero_compute mycelium     # core + specific extras
nu hero_install.nu --install --force                   # reinstall core
nu hero_install.nu --install --all --force             # reinstall everything
nu hero_install.nu --install -e production             # use production config
nu hero_install.nu --list                              # show all components

Components

Core (installed by default):

Component Description
hero_proc Process supervisor (server, UI, CLI)
hero_router Local TCP-to-Unix socket gateway and service discovery
hero_proxy HTTP/HTTPS reverse proxy with Mycelium, TLS, and auth

Extra (specify explicitly):

Component Description
hero_compute Slice-based VM compute manager (server, UI, explorer, CLI)
my_hypervisor VM hypervisor management
cloud_hypervisor KVM-based VM runtime
mycelium IPv6 overlay mesh network

How it works

  1. Fetches component versions from the central config
  2. Downloads pre-built binaries from Forgejo releases (or GitHub for external components)
  3. Installs to ~/hero/bin/
  4. Tracks installed versions in ~/hero/var/versions/ — skips re-download if already current
  5. Adds ~/hero/bin to PATH in shell configs

Prerequisites

  • Nushell (use install-nu.sh to install it)
  • Internet access (downloads from forge.ourworld.tf and github.com)