Comments 8
Это не альтернатива Electron. Важная часть Electron - это набор API для работы с хвостом за пределами браузера.
Это просто аналог PWA для сайтов у которых нет манифеста с включением PWA.
Здесь очень тонкая грань между Electron и PWA. Как я понял, Electron отличается от PWA тем, что у него есть возможность взаимодействия с системой, то есть отсутствует песочница (sandbox). Ещё в Electron глубже интегрировано Chromium: если считать, что ядро Chromium (та часть которая в Electron запускает UI)- это не браузер Chromium, то это отличие Electron от PWA. В моём WebDesktopGL я полностью отключил sandbox и стандартное поведение браузера, которое мне не нужно, в итоге осталось работающее ядро Chromium. Суть в том, что у WebDesktopGL можно реализовать режим запуска PWA. Получается, что WebDesktopGL находится между Electron и PWA. Я использую полный браузер Chromium, у которого отключил лишнее, но не думаю, что нужно вырезать функционал Chromium, как в Electron, чтобы назвать WebDesktopGL аналогом Electron.
можете вкратце описать преимущества перед тем же электроном и ньютралино, а то пока не очевидно. это вопрос лицензий и прочих богомерзких мер?
вроде бы над электроном преимущетсво в том, что можно хромиум любой подсунуть легко? но это в ньютралино можно
Основное преимущество заключается в лицензии и концепции: это алгоритм запуска Chromium таким образом, чтобы он давал возможность запускать веб-сайты как десктопные приложения. Neutralinojs и Electron - это компилированный исходный код, который запускает аналог виртуального экрана с браузером. А у меня - виртуальный экран Xephyr с браузером. Или вообще сам браузер (в случае запуска через InfoDoc_light.sh) с возможностью отключения sandbox. В итоге получается иной алгоритм, работающий через окружение Linux.
Я просто объединил концепции PWA и Electron. В итоге получился такой фреймворк, работающий через окружение Linux, а не создающий своё собственное окружение для кроссплатформенности. Если присмотреться, то это конструктор, который можно менять, поэтому тут и есть два примера запуска: через InfoDoc_light.sh или InfoDoc.sh. Это и есть основное преимущество (можно менять алгоритм работы и свойства по необходимости).
То есть можно, допустим, менять степень изоляции веб-сайта, поведение сайта (приложения) при старте, задавать масштаб сайта при старте, а также менять свойства через List of Chromium Command Line Flags.
про лицензию можете, пожалуйста, раскрыть, видите риск с электроном или ньютралино?
про компиляцию вовсе не обязательно компилировать, можно просто запускать через "electron ." / "neu run" из папки и грузить сайт или ифрейм
флаги в нью можно: "modes": { "chrome": { "args": "--user-agent=\"USER_AGENT_PLACEHOLDER\" --kiosk --start-fullscreen ...", "nativeBlockList": [] }
в электроне тоже можно:app.commandLine.appendSwitch('--autoplay-policy', 'no-user-gesture-required');
не поймите неправильно, я всецело за всякие поделки, больше велосипедов хороших и разных, просто хочется понять в чём сок, сам давно хочу с электрона съехать, пока смотрю на ньютралино
Дело в том, что риск очень простой: как мне сказали, Neutralinojs и Electron не входят в список стека. Поэтому их нельзя использовать на объектах критической инфраструктуры. А такой подход, как тот, который использую я, можно использовать. Вообще на объектах критической инфраструктуры были вопросы даже к PostgreSQL. Приходится включать PostgreSQL в состав отечественного ПО как РПГ - тогда можно. Данный фреймворк используется в КСА ПИВП (комплекс средств автоматизации планирования использования воздушного пространства) и ЕИС ПИВП(Единая интегрированная система планирования использования воздушного пространства).
тогда понятно, спасибо, да, против административных решений трудно :)
кстати, у вас в ридми на гитхабе русский просочился: "# Использовать скрипт установки Install_bash_WebDesktopGL.sh"
Фреймворк WebDesktopGL для запуска веб-сайтов как десктопных приложений в Astra Linux и Linux системах. Через Chromium