Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

147 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LazyWSL 🐧

A lazy way to manage your WSL distros, right from your terminal.

Release License Platform

Built with Rust + Ratatui. Inspired by wsl-ui, LazyGit, and LazyDocker.

overview

Why LazyWSL?

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

Installation

Prebuilt binary (recommended)

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.

From source

git clone https://github.com/0xDracula/LazyWSL
cd LazyWSL
cargo run --release

Keybindings

Navigation - / 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

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

Development

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 run

On non-Windows platforms the mock is used automatically.

Contributing

PRs, issues, and feature requests are welcome. See the development section above to get started on any platform.

License

MIT

About

Stop typing wsl commands. Be lazy. 🦥 A TUI manager for WSL distros built with Rust.

Resources

Contributing

Stars

25 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages