fabian19941220-gmail-com / LxRunOffline

A full-featured utility for managing Windows Subsystem for Linux (WSL)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LxRunOffline

Build status Chocolatey

A full-featured utility for managing Windows Subsystem for Linux (WSL).

Donation

It would be greatly appreciated if you could make a donation to support development of this project.

Note: It's extremely difficult to withdraw from PayPal balance for a Chinese citizen like me, so if you want to donate 100$ or more, please either use Alipay or contact me via email for other donation options.

PayPal

Alipay

Alipay

Features

  • Install any Linux distro to any directory on your computer.
  • Move an existing installation to another directory.
  • Duplicate(copy) an existing installation.
  • Register an existing installation directory. This enables you to install to a USB stick and use it on different computers.
  • Run arbitrary Linux commands in a specified installation.
  • Configure default user, environment variables and various flags.
  • Export configuration to an XML file and import from the file.
  • Export an installation to a tar file.

Install

You can install via Chocolatey choco install lxrunoffline, Scoop scoop bucket add extras, scoop install lxrunoffline, or download the binaries directly:

Usage

See the Wiki to download tar files for different distros, which are used by the LxRunOffline install command.

Run LxRunOffline for available actions and run LxRunOffline <action-name> for available arguments/flags.

Build

This project uses CMake as its build system. MinGW GCC and Visual C++ compilers are supported.

Visual C++

  1. Install Visual Studio 2019, latest Windows SDK, CMake and vcpkg.

  2. Install dependencies.

vcpkg install --triplet x64-windows-static libarchive boost-program-options boost-format tinyxml2
  1. Open "x64 Native Tools Command Prompt" from Start Menu and build.
mkdir build
cd build
cmake .. \
    -G "NMake Makefiles" \
    -DCMAKE_TOOLCHAIN_FILE=<path-to-vcpkg-dir>/scripts/buildsystems/vcpkg.cmake \
    -DVCPKG_TARGET_TRIPLET=x64-windows-static
nmake

MinGW

  1. Install MSYS2.

  2. Open the "MSYS2 MinGW 64-bit" shell from Start menu, and install dependencies.

pacman -Sy --needed --noconfirm base-devel git mingw-w64-x86_64-{toolchain,cmake,libarchive,boost,tinyxml2}
  1. Build.
mkdir build
cd build
cmake .. -G "MSYS Makefiles"
make

Notes

  • Other CMake generators like Visual Studio and Ninja may also work, but they're neither tested nor officially supported by this project.
  • Static linking is used by default. However, you can define -DLXRUNOFFLINE_STATIC=OFF to switch to dynamic linking. If you're building with Visual C++, you also need to change vcpkg's triplet to x64-windows when installing dependencies and invoking CMake.
  • The build script in CI configuration can be used as an example of how to build this project.

Compatibility

  • v1.x: Only Windows 10 Fall Creators Update (v1709) or earlier.
  • v2.x: Only Windows 10 Fall Creators Update (v1709) or later.
  • v3.x: Only Windows 10 April 2018 Update (v1803) or later.

It is strongly recommended to install the April 2018 Update or later and use v3.x releases.

About

A full-featured utility for managing Windows Subsystem for Linux (WSL)

License:MIT License


Languages

Language:C++ 92.7%Language:CMake 4.1%Language:C 2.0%Language:PowerShell 1.2%