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:
- curl or wget (for Linux/macOS)
- PowerShell v5+ (for Windows)
- Internet access (unless installing from a local tarball)
One-line installer:
-
Linux / macOS (bash/zsh):
curl -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh # or 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.
Flag | Description |
---|---|
--update |
Update existing MetaCall installation without prompts. |
--uninstall |
Uninstall MetaCall (overrides --update ). |
--docker-install |
Force Docker-based install instead of binary. |
--no-check-certificate |
Skip SSL cert checks when downloading tarball (insecure). |
--no-docker-fallback |
Disable 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] |
[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 versionv0.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
Parameter | Description |
---|---|
-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
intoD:\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'"
Requires docker to be installed.
git clone https://github.com/metacall/install.git metacall-install
cd metacall-install
./test.sh
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
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.