A lazy way to manage your WSL distros, right from your terminal.
Built with Rust + Ratatui. Inspired by wsl-ui, LazyGit, and LazyDocker.
Managing WSL through raw wsl.exe commands gets tedious fast. LazyWSL gives you a keyboard-first control panel for your distros: start, stop, snapshot, clone, and roll back, all without leaving the terminal.
- Keyboard-first workflow
- Fast distro management with live status
- Snapshot, rollback, and snapshot management
- Import / export for backup and migration
- Reusable custom actions
- A themed, responsive terminal UI
Download the latest lazywsl-windows-x86_64.exe from the Releases page, then run it from a terminal. Each release includes a .sha256 checksum to verify your download.
git clone https://github.com/0xDracula/LazyWSL
cd LazyWSL
cargo run --releaseNavigation - ↑/↓ move · Space multi-select · / search · ? help
Distro - Enter shell · r/t run/stop · d default · p pin · e/i export/import · a actions · n clone
Snapshots - z snapshot · b rollback · S manager
Danger - u unregister · s shutdown · q quit
Configuration lives at:
C:\Users\<YourUser>\AppData\Roaming\LazyWSL\
Example:
{
"timeouts": { "quickSecs": 5, "defaultSecs": 15, "longSecs": 60 },
"refreshSecs": 2,
"customActions": [
{ "name": "Update packages", "command": "sudo apt update && sudo apt upgrade -y" },
{ "name": "Show release", "command": "cat /etc/os-release" }
]
}| Field | Description |
|---|---|
quickSecs |
Timeout for quick commands |
defaultSecs |
Default timeout for standard operations |
longSecs |
Timeout for long-running operations (import/export) |
refreshSecs |
How often distro state refreshes |
customActions |
Reusable commands available inside LazyWSL |
LazyWSL is a Windows tool, but most of its logic sits behind a service trait, so it can be developed on Linux/macOS using a built-in mock backend, no WSL required:
LAZYWSL_MOCK=1 cargo runOn non-Windows platforms the mock is used automatically.
PRs, issues, and feature requests are welcome. See the development section above to get started on any platform.
.png)