Бета-утилита для визуального управления WSL Containers на Windows 11: контейнеры, потоковые логи, образы, тома и сети. Независимый open-source проект под Apache 2.0.
  • Dart 42.7%
  • Rust 37.1%
  • PowerShell 10.1%
  • C++ 6%
  • CMake 3.1%
  • Other 1%
Find a file
2026-10-02 11:43:05 +03:00
docs Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
installer Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
lib Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
rust Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
scripts Bootstrap isolated Rust toolchain for the Windows service runner 2026-10-02 11:43:05 +03:00
test Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
tool Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
windows Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
.gitattributes Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
.gitignore Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
.gitlab-ci.yml Fix official Flutter bootstrap URL and remap private build paths 2026-10-02 11:28:19 +03:00
analysis_options.yaml Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
Cargo.lock Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
Cargo.toml Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
flutter_rust_bridge.yaml Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
LICENSE Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
NOTICE Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
pubspec.lock Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
pubspec.yaml Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
README.md Run trusted main branch builds automatically 2026-10-02 11:23:45 +03:00
rust-toolchain.toml Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00
SECURITY.md Scan binary strings before publishing and include Flutter notices 2026-10-02 11:39:24 +03:00
WSLC_DESK_MVP_TZ.md Publish WSLc Desk beta with Apache-2.0, demo and Windows release pipeline 2026-10-02 11:20:26 +03:00

WSLc Desk — Beta

Открытая утилита для визуального управления WSL Containers на Windows 11. Контейнеры, потоковые логи и сети — в одном настольном интерфейсе. Проект находится в бета-стадии и распространяется под Apache License 2.0.

29 сентября 2026 года Microsoft объявила WSL Containers общедоступным и выпустила WSL 3.0.1 с контейнерным CLI wslc.exe. После этого я решил сделать небольшую утилиту для визуализации и управления новой контейнерной средой Windows. Это независимый проект сообщества; он не связан с Microsoft. Подробнее: официальный анонс и релиз WSL 3.0.1.

Интерфейс WSLc Desk: контейнеры

Настоящий интерфейс приложения, отрендеренный с обезличенными демонстрационными данными.

Скачать и установить

Скачать установщик Windows x64 · Страница бета-релиза · SHA-256

Требования: Windows 11 x64 и WSLc 3.0.1.0. Эта бета проверяет точную версию CLI; другие версии пока не поддерживаются. ARM64-сборки приложения пока нет. Установщик WSLc Desk не устанавливает и не обновляет WSL.

  1. Установите WSL 3.0.1 для x64 — официальный MSI Microsoft. Если WSL уже установлен, Microsoft рекомендует wsl --update; проверьте итоговую версию через wsl --version и wslc --version.
  2. Скачайте и запустите установщик WSLc Desk. Он устанавливает приложение для текущего пользователя в %LOCALAPPDATA%\Programs\WSLc Desk.
  3. Запустите WSLc Desk из меню «Пуск». Ярлык рабочего стола можно выбрать при установке.

Библиотеки Visual C++ входят в пакет. Удалить приложение можно через настройки установленных приложений Windows. Установщик и приложение пока не подписаны цифровой подписью. SHA-256 помогает проверить целостность скачанного файла.

Возможности беты

  • Список контейнеров, поиск и фильтр состояния; запуск, остановка и перезапуск.
  • Карточка контейнера, mounts и Inspect; окружение скрыто по умолчанию.
  • Потоковые логи: история + follow, поиск, выделение и копирование, пауза автопрокрутки и сохранение загруженного буфера в .log.
  • Просмотр сетей: имя, ID, драйвер, scope, IPv4/IPv6 и подробный Inspect.
  • Списки образов и томов; светлая и тёмная темы.

Просмотр сетей

Приложение управляет существующими ресурсами в контексте текущего пользователя. Создание контейнеров, загрузка образов, редактирование сетей и удаление ресурсов через GUI пока не реализованы. Настройки пока не сохраняются между запусками; полный обзор health/портов и связи образов/томов ещё в разработке. Подробное состояние разработки · Исходное ТЗ.

Где почитать о WSL Containers

Здесь «WSL 3.x» означает номер пакета WSL; WSL Containers — название контейнерной функции.

Сборка из исходников

Стек: Flutter Desktop + Rust + flutter_rust_bridge. Закреплены Flutter 3.47.6, Dart 3.13.5, Rust 1.98.1, bridge 2.13.0; lock-файлы входят в репозиторий. Нужны Windows x64, PowerShell 7, Git и Visual Studio с Desktop development with C++ / Windows SDK.

git clone ssh://git@git.evsikov.net:2222/publics/wslc-desk.git
cd wslc-desk
./scripts/Initialize-CI.ps1
. ./scripts/Use-LocalToolchain.ps1
cargo test --locked -p wslc_desk_core --features bridge
flutter analyze
flutter test
./scripts/Build-Windows.ps1 -Mode release
./scripts/Build-Installer.ps1

EXE: build/windows/x64/runner/Release/wslc_desk.exe. Установщик: build/installer/WSLc-Desk-0.1.0-Setup-x64.exe. Для запуска EXE сохраняйте всю папку Release с DLL и data. Inno Setup 6.7.3 загружается из официального источника с проверкой SHA-256 и подписи. Microsoft CRT берётся из VC/Redist Visual Studio.

После изменения Rust API выполните ./scripts/Initialize-Flutter.ps1 для генерации bridge. Windows smoke flutter test tool/bridge_smoke_test.dart требует отдельно подготовленного тестового контейнера wslc-desk-worker; обычные unit/widget-тесты не требуют WSL. Изображения для публикации воспроизводятся командой flutter test tool/render_demo_test.dart.

CI и проверки

GitLab CI использует Windows shell runner с тегом windows (раннер ConsoleCrypt). Сборки основной ветки и релизных тегов запускаются автоматически. CI выполняет Gitleaks, Rust tests/fmt/Clippy, Flutter analyze/test, собирает установщик и публикует релиз и файлы в Generic Package Registry с временным CI_JOB_TOKEN. Постоянные токены в исходниках не используются.

На локальном стенде прошли 14 Rust-тестов, 6 Flutter-тестов и реальный bridge smoke. Проверены установка, ярлыки, запуск, локальные DLL и удаление приложения. Проверки секретов описаны в SECURITY.md.

Лицензия и участие

Исходники WSLc Desk доступны под Apache License 2.0. Сторонние библиотеки сохраняют собственные лицензии; их уведомления входят в установщик. Баги и предложения: Issues. Для изменений приветствуются Merge Requests с описанием проверки.