README.md

December 10, 2025 ยท View on GitHub

METACALL

MetaCall Polyglot Runtime

๐Ÿš€ Introduction

MetaCall is a polyglot runtime that lets you call functions across multiple languages as if they were native. This README covers the one-line installer scripts and how to customize your installation.

Quick Links:


โš™๏ธ Prerequisites

  • curl or wget (for Linux/macOS)
  • PowerShell v5+ (for Windows)
  • Internet access (unless installing from a local tarball)

๐ŸŽฏ Quick Install

One-line installer:

  • Linux / macOS (bash/zsh):

    curl

    curl -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh
    

    wget

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh
    
  • Windows (PowerShell):

    powershell -NoProfile -ExecutionPolicy Unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://raw.githubusercontent.com/metacall/install/master/install.ps1')))"
    

By default, these scripts fetch the latest release.


๐Ÿ› ๏ธ Advanced Install Options

Linux / macOS

FlagDescription
--updateUpdate existing MetaCall installation without prompts.
--uninstallUninstall MetaCall (overrides --update).
--docker-installForce Docker-based install instead of binary.
--no-check-certificateSkip SSL cert checks when downloading tarball (insecure).
--no-docker-fallbackDisable Docker fallback if binary install fails.
--from-path <path>Install from a local tarball (<path> to .tar.gz).
--version <version>Install a specific version (e.g. 0.2.0). [1]
--debugInstall with debug symbols and sanitizers if possible.

[1]: The list of versions are available here: Linux, MacOS.

Examples:

  • Update in-place without prompts with curl:

    curl -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --update
    
  • Uninstall with wget:

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --uninstall
    
  • Install with curl without checking certificates and without docker fallback:

    curl --insecure -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --no-check-certificate --no-docker-fallback
    
  • Install with wget using Docker installer:

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --docker-install
    
  • Install with wget from a existing tarball located at /root/downloads/metacall-tarball-linux-amd64.tar.gz:

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --from-path /root/downloads/metacall-tarball-linux-amd64.tar.gz
    
  • Install with wget with the fixed version v0.2.0 of Linux Distributable:

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --version 0.2.0
    
  • Install metacall in a BusyBox without certificates:

    wget --no-check-certificate -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --no-check-certificate
    

Windows

ParameterDescription
-InstallDir <directory>Custom install folder (default: %LocalAppData%\MetaCall).
-Version <version>Specific release version to install (default: latest). [1]
-FromPath <path>Path to a local distributable tarball (.zip or .tar.gz).

[1]: The list of versions are available here.

Example:

  • Install tarball version v0.1.0 into D:\MetaCall:
    powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://raw.githubusercontent.com/metacall/install/master/install.ps1'))) -InstallDir 'D:\MetaCall' -Version '0.1.0'"
    

๐Ÿ’ป Development & Testing

Linux / MacOS

Requires docker to be installed.

git clone https://github.com/metacall/install.git metacall-install
cd metacall-install
./test.sh

Windows

Windows does not include a test script yet, but you can use install.ps1 script for testing yourself on your computer.

git clone https://github.com/metacall/install.git metacall-install
cd metacall-install
powershell -NoProfile -ExecutionPolicy unrestricted ./install.ps1

๐Ÿ› ๏ธ Troubleshooting

Sometimes the domain raw.githubusercontent.com maybe blocked by your ISP. Due to this, you may not be able to install metacall directly from previous commands. In that case, you may clone this repo and directly run install.sh for Linux and run install.ps1 for Windows.