Поддержка приложений с графическим интерфейсом теперь доступна для подсистемы Windows для Linux.

Поддержкаприложенийсграфическиминтерфейсомтеперьдоступнадляподсистемыwindowsдляlinux

Крейг

Год назад в СТРОИТЬ 2021 мы представили нашу цель , чтобы принести Linux GUI приложений в подсистему Windows для Linux (WSL) для запуска приложений Linux с графическим интерфейсом пользователя. Мы с гордостью объявляем о первом превью этого долгожданного и функция с открытым исходным кодом ! Мы дали этой функции прозвище «WSLg». Посмотрите видео ниже или продолжайте читать, чтобы узнать, для чего можно использовать эту функцию, как она работает и как ее установить.

Для чего я могу использовать поддержку приложений с графическим интерфейсом?

WSL позволяет запускать среду Linux, и до этого момента основное внимание уделялось включению утилит и приложений инструментов командной строки. Поддержка приложений с графическим интерфейсом теперь позволяет вам также использовать ваши любимые приложения с графическим интерфейсом пользователя Linux. WSL используется в самых разных приложениях, рабочих нагрузках и сценариях использования, поэтому в конечном итоге вам решать, для чего вы хотите использовать поддержку приложений с графическим интерфейсом. Ниже мы выделили несколько ключевых сценариев, которые помогут вам влюбиться в запуск приложений в среде Linux.

Используйте выбранную вами среду IDE для разработки проектов Linux

Visual Studio Code имеет потрясающий опыт использования VS Code Remote для создания полноценной среды разработки Linux. прямо на вашем компьютере с Windows, сохраняйте расширения и настройки как в Windows, так и в различных дистрибутивах WSL (вы можете просмотреть наши Начало работы с VS Code здесь . WSLg позволит вам запускать другие IDE, такие как gedit, редакторы на базе JetBrains, gvim и т. д., для эффективного тестирования, сборки и отладки ваших приложений Linux. .

Вот пример запуска gedit и gvim для редактирования файлов Linux непосредственно в WSL.

Запустите Linux только приложения, или Linux конкретные варианты использования, такие как тестирование

Вы можете использовать эту функцию для запуска любого приложения с графическим интерфейсом, которое может существовать только в Linux. , или для запуска собственных приложений или тестирования в среде Linux. Это может быть невероятно полезно для разработчиков, которые хотят протестировать свое кроссплатформенное приложение, поскольку теперь они могут запускать его непосредственно в Windows 33, а затем легко внутри Linux без необходимости менять машину или управлять виртуальной машиной.

Давайте посмотрим на пример запуска TestCafe Studio в WSL для проведения веб-тестирования в браузере Microsoft Edge, работающем в Linux.

Создавайте, тестируйте и используйте приложения Linux, которые используют звук или микрофон со встроенной поддержкой звука

Графический интерфейс Linux приложения на WSL также будут включать встроенную поддержку звука и микрофона. Этот захватывающий аспект позволит вашим приложениям воспроизводить звуковые сигналы и использовать микрофон, что идеально подходит для создания, тестирования или использования проигрывателей фильмов, телекоммуникационных приложений и т. Д.

Вот пример использования Audacity в Linux для записи звука и его воспроизведения.

Бонус : Используйте доступ к графическому процессору WSL для запуска приложений Linux с 3D-ускорением

В рамках этой функции у нас также есть включена поддержка 3D-графики с ускорением на GPU! Благодаря работе, выполненной в Mesa 58. 0 любые приложения, выполняющие сложный 3D-рендеринг, могут использовать OpenGL для их ускорения с помощью графического процессора в вашей Windows 58 машина. Это обеспечит бесперебойную работу некоторых из ваших более сложных приложений, например, Gazebo, инструмента моделирования робототехники. Этот опыт скоро будет включен по умолчанию в различные дистрибутивы WSL, однако вы можете сразу получить к нему доступ, следуя

инструкции в этом сообщении в блоге, чтобы получить правильный графический драйвер и убедиться, что ваш дистрибутив имеет совместимую версию Mesa. .

Ниже вы можете увидеть приложение Gazebo, моделирующее робота, исследующего виртуальную пещеру, а также приложение Rviz, визуализирующее изображение с камеры робота и выход его датчика лазерного поля. Благодаря 3D-графике с ускорением графического процессора мы можем запустить эту демонстрацию в !

Как работает эта функция ?

Из приведенных выше демонстраций вы могли заметить, что нам не нужно запускать X-сервер вручную. Это потому, что с помощью этой функции мы автоматически запускаем сопутствующий системный дистрибутив, содержащий Wayland, X-сервер, импульсный аудиосервер и все остальное, необходимое для взаимодействия приложений Linux с графическим интерфейсом пользователя с Windows. После того, как вы закончите использовать приложения с графическим интерфейсом и завершите распространение WSL, системный дистрибутив также автоматически завершит свой сеанс.

Как и остальная часть сантехники WSL, наша намерение состоит в том, чтобы этот компонент был полностью управляемым и удобным для пользователей. Мы стремимся к тому, чтобы этот системный дистрибутив был как можно более невидимым для пользователя, и именно поэтому вы не увидите этот системный дистрибутив при запуске wsl -l -v . Наконец, мы рады представить, что мы используем Дистрибутив CBL-Mariner для этого системного дистрибутива! CBL-Mariner – это внутренний дистрибутив Linux, который традиционно используется для облачной инфраструктуры Microsoft, а также для периферийных продуктов и услуг, и теперь мы расширяем его использование для поддержки приложений с графическим интерфейсом внутри WSL. Вы можете просмотреть схему ниже, чтобы увидеть общий обзор архитектуры этой функции.

Для полного входа подробный обзор того, что мы сделали, чтобы эта функция стала возможной, и подробные технические детали, пожалуйста, просмотрите это сообщение в блоге , написанное разработчиками, благодаря которым эта функция стала возможной.

Начало работы с этой функцией

Мы начинаем развертывание этой функции в качестве первоначальной предварительной версии, прежде чем мы полностью внедрим ее в WSL. Чтобы начать использовать поддержку приложений Linux с графическим интерфейсом пользователя, вам необходимо убедиться, что вы работаете в Windows 21 Предварительная сборка для инсайдеров 21364 или выше. Если у вас уже установлен WSL, все, что вам нужно сделать, это запустить

wsl –update , и вы будете настроены на использовать приложения с графическим интерфейсом. Если у вас не включен WSL, запустите

wsl - install автоматически установит WSLg как часть начальной настройки WSL. .

Вы можете найти полные инструкции по установке в README репозиториев GitHub: https: / /github.com/microsoft/wslg. Мы также настоятельно рекомендуем включить поддержку вычислений GPU в WSL для лучшей производительности, см.

в этом разделе инструкций по установке , чтобы узнать, как убедиться, что эта функция включена.

Обратная связь

Пожалуйста, сообщайте о любых технических проблемах или запросах функций для поддержки приложений с графическим интерфейсом на Репозиторий WSLg Github . При общих проблемах WSL отправляйте их по адресу Репозиторий WSL . Вы также можете следить за мной в Twitter @ craigaloewen и все члены команды WSL, которые находятся в Твиттере, используя этот список . Следите за обновлениями этого блога, чтобы увидеть более интересные объявления WSL, и нам не терпится узнать, что вы думаете об этой новой функции.

Диспетчер программ, платформа разработчика Windows