xlings  by openxlings

Universal package infrastructure with OS-like SubOS isolation

Created 1 year ago
579 stars

Top 55.5% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

xlings offers a universal package infrastructure addressing complex dependency management and environment reproducibility. It targets engineers and power users by providing OS-like SubOS isolation, multi-version software coexistence, and rootless operation. The benefit is a streamlined, conflict-free environment for development, agents, and complex toolchains.

How It Works

It uses a "version-view + reference-counting" model for efficient multi-version package management. Three SubOS isolation levels exist: shell (rootless env/PATH), filesystem (rootless bwrap/proot), and image (root required ext4 sparse mount). A decentralized package index supports official, third-party, and self-hosted repositories. An NDJSON protocol enables programmatic control for agents and CI.

Quick Start & Requirements

Installation on Linux/macOS is via curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.sh | bash. Windows users use PowerShell: irm https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.ps1 | iex. No specific hardware prerequisites like GPUs are mentioned. Links to [Website], [Docs], and [Package Index] are present but lack URLs.

Highlighted Details

  • Multi-version Coexistence: Seamlessly manage and switch between multiple software versions (e.g., gcc@16 vs. gcc@11) without conflicts, using efficient storage.
  • Rootless SubOS Isolation: Flexible isolation at shell, filesystem, or image levels; shell and filesystem modes operate without root, ideal for secure agent execution.
  • Decentralized Package Index: Supports a distributed ecosystem of package repositories (official, community, self-hosted), enhancing flexibility.
  • Agent Integration: Empowers AI agents and CI by running them within isolated SubOS environments, granting necessary permissions safely and allowing multiple instances.

Maintenance & Community

Associated with upcoming Luban Linux and MCPP. Community engagement via the Forum, QQ Groups (167535744 / 1006282943), and GitHub Issues.

Licensing & Compatibility

The license type and restrictions are not specified in the README. Compatible with Linux, macOS, and Windows.

Limitations & Caveats

The "Image" SubOS isolation requires root. Crucially, the project's licensing terms are undisclosed, posing a significant adoption blocker. Luban Linux is noted as "upcoming."

Health Check
Last Commit

13 hours ago

Responsiveness

Inactive

Pull Requests (30d)
72
Issues (30d)
0
Star History
9 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.