Я уже говорил о написании собственных приложений с помощью JavaScript и Gtk, включая Linux, мою основную ОС, а также macOS через Homebrew или Macports. Чего не хватало в то время, так это правильного способа написать то же приложение и для Windows.

WSL / Bash для Windows спешит на помощь

Некоторое время назад я также говорил о хороших, плохих и уродливых частях Bash для Windows, где главным недостатком был отсутствующий дисплей.

Однако каким-то образом разработчикам удалось заполнить пробел с помощью Xming, старого доброго порта Xorg для Windows и кроссплатформенного программного обеспечения, написанного для Mac или Linux.

Соединяя точки вместе, мы можем предположить, что написание приложений GJS на Bash для Windows должно быть возможным, верно?

Обновите Trusty до Xenial

Первое, что нужно сделать, это убедиться, что ваша версия Ubuntu не ниже LTS 16.

Чтобы узнать, какая это версия, введите в консоли следующее и прочтите вывод:

lsb_release -a

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

Следуйте инструкциям, и если после завершения, закрытия и повторного открытия Bash у вас возникнут проблемы, взгляните на эти два возможных решения. У меня сработал следующий, выполненный из командной строки:

lxrun /setdefaultuser root

Теперь у вас должна быть возможность запустить Bash и выполнять apt-get updateи другие операции, чтобы убедиться, что у вас установлена ​​последняя версия.

Если есть предупреждение о каком-то проигнорированном файле, не обращайте внимания на него или удалите его.

Установка GJS и WebKit2GTK

Не слишком разборчиво в том, какой именно модуль должен быть включен или нет, мне удалось получить все необходимые пакеты, установив следующие:

sudo apt-get install libgtk3.0 libwebkit2gtk-4.0 gir1.2-gtk-3 gobject-introspection gjs

Теоретически мы уже могли бы использовать gjs, но если мы хотим что-то увидеть, нам понадобится DISPLAYtarget. Введите echo $DISPLAY, чтобы убедиться, что его еще нет, и в этом случае добавьте отображение в пользовательское окружение.

echo 'export DISPLAY=:0.0' >> ~/.bashrc

Теперь вы можете перезапустить bash или просто ввести export DISPLAY=:0.0 и продолжить ... но ...

Настройка Xming

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

Вам необходимо запустить Xming, прежде чем пытаться использовать что-либо графическое на WSL.

Тестирование GJS

Вы можете просто curl "привет, мир" или написать это сами, это очень просто:

Вы можете запустить его как исполняемый файл сразу после chmod a+x helloили просто запустить через gjs hello.

Если вы не видите виджет поверх других, посмотрите на системную панель, я уверен, что что-то мигает, требуя внимания.

Пробуем WebKit2GTK во всей красе

Если честно, GNOME Web, когда-то известная как Epiphany, уже использует последнюю версию движка WebKit2, поэтому его установка была бы одним из вариантов.

Другой вариант - использовать быстрый тестер без фреймов или тот же браузер, который я написал в своем старом посте, слегка измененный для использования WebKit2 вместо WK1.

Это оба на GitHub, но вы можете просто получить их через archibold.io.

curl -LO archibold.io/test/gjs/browser-bar

Получайте удовольствие от тестирования движков Safari в Windows и JavaScript для собственных приложений Gtk!