Caution
xlings is currently migrating from Lua to MC++ with a modular architecture. Some packages may be unstable during this transition. If you run into any problems, please report them via Issues or the Forum.
Quick Start
Install (Github)
click to view xlings installation command (old)
Linux/MacOS
curl -fsSL https://d2learn.org/xlings-install.sh | bashWindows - PowerShell
irm https://d2learn.org/xlings-install.ps1.txt | iextips: xlings -> details
Linux/MacOS
curl -fsSL https://raw.githubusercontent.com/d2learn/xlings/refs/heads/main/tools/other/quick_install.sh | bashWindows - PowerShell
irm https://raw.githubusercontent.com/d2learn/xlings/refs/heads/main/tools/other/quick_install.ps1 | iexUseage
Type1: Install Software/Tools
xlings install code xlings install devcpp xlings install gcc@15
Type2: Config Environment
xlings install config:rust-crates-mirror xlings install config:xxx
Type3: Install Tutorial - Interactive C++ Tutorial
xlings install d2x:mcpp-standard
👉 more details...
SubOS - Environment Isolation Mode
xlings supports creating isolated workspaces through the
suboscommand.
Global isolated environment
Create an isolated environment and install Node.js into it.
# 0. Create a subos environment xlings subos new my-subos # 1. List all subos environments xlings subos list # 2. Switch to my-subos xlings subos use my-subos # 3. Install node inside the isolated environment # (without affecting the system / host environment / other subos) xlings install node@24 -y node --version # 4. Remove the isolated environment xlings subos remove my-subos
Project isolated environment
xlings also supports project-scoped isolated environments through a
.xlings.jsonfile, and can install the configured project environment with one command. Below is a real configuration from the d2x project:
{
"workspace": {
"xmake": "3.0.7",
"gcc": { "linux": "15.1.0" },
"openssl": { "linux": "3.1.5" },
"llvm": { "macos": "20" }
}
}Install and configure the project environment with one command:
Run the following command in the project directory:
Note: the SubOS mechanism uses a [ version view + reference counting ]
strategy to avoid repeatedly downloading the same package payloads.
Community
- Communication Group (Q): 167535744 / 1006282943
- Community Forum: Discussions on related technologies, features, and issues
Contributing
👥Contributors