Skip to content

0xDracula/LazyWSL

Repository files navigation

LazyWSL 🐧

image A lazy way to manage your WSL distros, right from your terminal. Built with Rust, Ratatui, inspired by wsl-ui, LazyGit, and LazyDocker.r.

Overview 🐧

image

Why LazyWSL?

Managing WSL through raw wsl.exe commands becomes annoying fast.

LazyWSL provides:

  • A keyboard-first workflow
  • Fast distro management
  • Import/Export workflows
  • Reusable custom actions
  • Terminal-native experience
  • Smooth and Responsive ui interface

Features ✨

Distro Management

  • Start/Stop distros instantly
  • Open shell directly into selected distro
  • Set default distro
  • Multi Select [Space]
  • Search distros

Import / Export

  • Import distros from .tar
  • Export distros for backup or migration

Productivity

  • Custom reusable actions
  • Keyboard-driven workflow
  • Animated notifications
  • Help menu with keybindings

Installation

From source

git clone https://github.com/0xDracula/LazyWSL


cd LazyWSL

cargo run --releasese

Configuration

Configuration file is located at

C:\Users\\AppData\Roaming\LazyWSL\
yWSL\

Example Configuration:

{
   "timeouts": {
     "quickSecs": 5,
     "defaultSecs": 15,
     "longSecs": 60
  },
    "refreshSecs": 2,
   "customActions": [
    {
        "name": "Update packages",
       "command": "sudo apt update && sudo apt upgrade -ygrade -y"
    },
    {
         "name": "Show release",
       "command": "cat /etc/os-release"
    }
  ]
}
}

Config Fields

Field Description
quickSecs Timeout for quick commands
defaultSecs Default timeout for standard operations
longSecs Timeout for long-running operations such as import/export
refreshSecs How often distro state refreshes
customActions Reusable commands avaliable inside LazyWSL

Roadmap

  • Import/Export
  • Custom Actions
  • Search
  • Multi-select
  • Distro Cloning
  • Snapshot / Rollback-system
  • Plugin System
  • Configurable Keymaps

Contributing

PRs, issues, and feature requests are welcome.


License

MIT

About

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

Resources

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages