Skip to content

codecsrayo/wsl2-distro-manager

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to WSL Manager 👋

GitHub Release Date GitHub Workflow GitHub release (latest by date) Documentation GitLab stars Discord

English | 简体中文 | Deutsch | Español

Screenshot with Darkmode

Preview with Lightmode

Screenshot with Lightmode

WSL Distro Manager is a free and open source app that provides a user-friendly graphical interface for managing Windows Subsystem for Linux (WSL) distributions. With WSL Distro Manager, you can easily install, uninstall, update, backup and restore WSL distros, as well as configure their settings and launch them with a single click. WSL Distro Manager also offers some extra features to enhance your WSL experience, such as sharing Distros between multiple machines, and creating actions to quickly do repetitive tasks. Whether you are a beginner or an expert in WSL, WSL Distro Manager will help you get the most out of it.

🚀 Features

  • Manage WSL instances
  • Download and use Docker images as WSL instances - without Docker!
  • Quick Actions (execute pre-defined scripts directly on your instances for quick configurations)
  • Download and use Turnkey or other LXC containers (experimental, tested with e.g. Turnkey WordPress)
  • Use your own repository for rootfs' or LXC containers
  • and more...

📦 Install

Microsoft Store (Recomendado)

This app is available on the Microsoft Store.

Direct download (ZIP/EXE)

You can get this app with a direct download from the Releases page. The latest version is available as a zip file or as an executable installer (.exe).

  1. Download the latest release from the Releases page
  2. If downloading the ZIP file: Extract the contents and run wsl2-distro-manager.exe
  3. If downloading the installer (.exe): Run the installer and follow the on-screen instructions
Install via Winget

The winget package is outdated! Please use the Windows Store version instead.

winget install Bostrot.WSLManager
Install via Chocolatey

This package is maintained by the community (@mikeee). It is not an official package.

choco install wsl2-distro-manager
Install a nightly build

The last build can be found as artifacts in the "releaser" workflow or via this link. If you rather prefer an unsigned msix you can also use this link.

Manual Installation

If you're installing from source or a manual build:

  1. Copy the entire application folder to a location of your choice (e.g., C:\Program Files\WSL Manager)
  2. Create a shortcut to wsl2-distro-manager.exe on your desktop or start menu
  3. Make sure Windows has WSL2 enabled before running the application
# Enable WSL if not already enabled
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

# Set WSL2 as default
wsl --set-default-version 2

⚙️ Build

Flutter Build

Make sure flutter is installed:

flutter config --enable-windows-desktop
flutter upgrade

flutter build windows # build it
flutter run -d windows # run it

NSIS Installer Build

To create an installer using NSIS (Nullsoft Scriptable Install System):

  1. First, build the Flutter Windows application
flutter build windows --release
  1. Install NSIS

    • Download and install NSIS
    • Ensure NSIS is added to your PATH
  2. Create an NSIS script (installer.nsi) or use the one in the project

  3. Compile the installer

# Navigate to the directory containing your NSIS script
cd path\to\nsis\script

# Compile the installer
makensis installer.nsi
  1. The installer will be created in the output directory specified in your NSIS script

Example NSIS script structure:

# Define application name, version, and publisher
Name "WSL Manager"
OutFile "wsl-manager-setup.exe"
InstallDir "$PROGRAMFILES\WSL Manager"

# Install section
Section "Install"
  SetOutPath $INSTDIR
  File /r "path\to\build\windows\runner\Release\*.*"
  
  # Create shortcuts
  CreateShortcut "$DESKTOP\WSL Manager.lnk" "$INSTDIR\wsl2-distro-manager.exe"
  CreateShortcut "$SMPROGRAMS\WSL Manager.lnk" "$INSTDIR\wsl2-distro-manager.exe"
  
  # Write uninstaller
  WriteUninstaller "$INSTDIR\uninstall.exe"
SectionEnd

# Uninstall section
Section "Uninstall"
  Delete "$DESKTOP\WSL Manager.lnk"
  Delete "$SMPROGRAMS\WSL Manager.lnk"
  RMDir /r "$INSTDIR"
SectionEnd

Author

👤 Eric Trenkel

👥 Contributors

Contributors

🤝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check the issues page. You can also take a look at the contributing guide.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2023 Eric Trenkel.
This project is GPL-3.0 licensed.


Not found what you were looking for? Check out the Wiki

About

A GUI to quickly manage your WSL2 instances

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Dart 93.2%
  • C++ 2.9%
  • CMake 1.5%
  • Shell 0.9%
  • PowerShell 0.8%
  • NSIS 0.6%
  • C 0.1%