
Nightos - это настольная среда, основанная на пользовательском распределении Linux. Он использует технологию Electron и Nodejs для доступа к файловой системе, управления сетевыми подключениями и безопасного управления приложениями.
Nightos работает как очень большое приложение JavaScript, которое работает на базе Linux + Electron. Этот проект направлен на продемонстрирование силы JavaScript, создавая полную ОС с этим языком, поэтому наиболее задачи, которые могут быть выполнены с ним, будут выполняться с использованием JS. Система Linux работает как интерфейс, слой, который позволяет JavaScript управлять сетевыми соединениями, получить доступ к жесткому диску и некоторые другие низкоуровневые вещи.
Nightos - это чисто теоретическая операционная система. Я не знаю, сделаю ли я рабочую версию Nightos однажды, и даже если я это сделаю, это будет очень необеспеченная ОС, потому что я не знаю много вещей о безопасности программирования (даже основные вещи, такие как переполнение буфера, ROPS ...); На самом деле единственные технологии безопасности, о которых я знаю, - это, например, общие вещи, такие как шифрование, сертификаты, контрольная сумма и МПК - не хватает полной системы.
На самом деле, я сделал Nightos больше для развлечения и используя более глубокие функции JavaScript и Node.js. Я не стремлюсь сделать лучшую ОС, чем Windows, Mac или Linux - даже не делая их альтернативы. Создание ОС, полной JavaScript, просто невозможно из -за многих проблем, таких как медленная скорость JS перед местными языками, такими как C ++ или Rust, и проблема для разработчиков, чтобы переносить свои приложения в Nightos (даже если для этого есть инструменты, такие как Emscripten).
Это также способ продемонстрировать силу языка JavaScript, который, я думаю, наиболее неправильно понят в мире развития. Сделав систему полностью функциональной, которая управляет системой Linux, приложениями, настольной средой, несколькими учетными записями пользователей, несколькими процессами, большим API и изоляцией процессов, я думаю, что это может быть отличным доказательством того, что JavaScript - это мощный язык - когда вы понимаете его и знаете, как использовать его глубокие функции.
Я опубликовал две предыдущие версии Nightos. Вы можете найти их на моем GitHub: V1 и V2.
У V1 есть много проблем, и V2 было недостаточно полным, чтобы стать операционной системой. Поэтому я решил перезапустить проект с нуля и сохранить только основные идеи проекта (действительно сильная безопасность, разрешения для приложений ...), и я сделал эту новую версию Nightos.
Есть несколько аналогичных моментов с более старыми версиями: система по -прежнему работает с приложениями, которые требуют разрешений, чтобы получить доступ к хранилище/веб -Windows/... но теперь система разрешений намного сильнее, гораздо разрешается, и теперь можно сделать непакованные приложения, программы, которые работают без необходимости установить (например, .exe в Windows, но с разрешениями).
Так что, даже если вы найдете две старые версии действительно плохими, это очень разные, поэтому я надеюсь, что вам понравится;)!
Nightos может работать на любых низкокачественных компьютерах. Вам не нужно беспокоиться о выступлениях вашей машины. Если вы действительно хотите иметь спецификации, вот есть:
Вот и все! Расслабьтесь и наслаждайтесь :).
Установка требует установки Nodejs, NPM и GIT, установленных на вашем компьютере. На Linux вы можете запустить sudo apt-get install nodejs npm git . В Windows просто посетите эти три веб -сайта, чтобы получить программы установки каждого программного обеспечения.
Чтобы установить Nightos, откройте командную линию и запустите следующий код:
git clone https://github.com/ClementNerma/NightOS # Download NightOS
cd NightOS # Go to the NightOS directory
npm install # Install the npm dependencies
npm start # Start NightOS ; `node start.js` also worksВы также можете запустить Nightos в режиме разработки (см. Больше в документах):
# The simple way
npm run devЭтот проект выпущен в соответствии с общей публичной лицензией GNU (GPL). Если вы хотите отредактировать мою работу и опубликовать изменения, пожалуйста, свяжитесь со мной первым, чтобы я мог посмотреть, почему и как вы изменили Nightos - даже если вы не вынуждены. Я сделал этот проект в основном для развлечения и продемонстрировал силу JavaScript, поэтому я хотел бы знать, какие улучшения могут быть внесены.
Некоторые из шрифтов не могут быть использованы в соответствии с терминами GPL; Вы должны сослаться на их первоначальную лицензию.
Программное обеспечение предоставляется «как есть», и автор отказывается от всех гарантий в отношении этого программного обеспечения, включая все подразумеваемые гарантии товарной способности и пригодности. Ни в коем случае автор не должен нести ответственность за какие -либо специальные, прямые, косвенные или косвенные убытки или каких -либо ущерб, вызванных потерей использования, данных или прибыли, будь то в действии контракта, халатности или других искажений, возникающих из или в связи с использованием или производительности этого программного обеспечения.
Nightos был построен с использованием Nodejs и Electron. Значки от Icons8, Джо Паркс и Font-The Awesome.