Перейти к содержимому
VBerezin

mineOS Developer Preview (или фанатский форк оригинальной MineOS)

Рекомендуемые сообщения

Всем привет!

 

Недавно я решил сделать неофициальное ответвление от оригинальной MineOS (оригинальная статья), которая сможет делать всё, и даже больше. Которая будет иметь возможность терминала, а не только графической оболочки, без необходимости установки другой ОС. Которая по своим возможностям будет не хуже настоящей операционной системы. Именно поэтому я собираюсь улучшить все встроенные в систему приложения, улучшить их, и многое другое, а также улучшить саму mineOS, сделав её профессиональной.

 

Как будет выглядеть модифицированная mineOS?

 

Визуальных изменений немного. Из них: немного переделанный Finder, Menu Bar на рабочем столе имеет группы с функциями, что сможет упростить использование системы. А так система будет выглядеть также, как и её оригинальная версия, но функционально будет лучше.

Скрытый текст

wnuE4RdF1Cmt4ZjNUHvKR-NemquPodK65Ib-paqU6xN65Y8sXyCn0c3KS4eIZcW6DqIaZfAthBGFu_gQlG7Pl0mz.jpg?size=964x604&quality=96&type=album

 

Как попробовать сие творение?

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

Репозиторий: ссылка на репозиторий.

На данный момент в репозитории старый образец. Новый всё ещё в разработке. Но репозиторий будет обновляться, а система - улучшаться. Поэтому сильно не ругайте.

Я сделал свой форк как пример того, что для OpenComputers можно сделать вполне профессиональную систему не только как система с графической оболочкой, но и как полноценная терминальная система, которая имеет функций даже больше, чем в обычной openOS, Plan9k и многое другое.

Ну и сразу отвечу на вопросы, которые могут появиться.

Система не стартует (выскакивает краш системы). Что делать?

 

Дело в том, что данный форк не поддерживает Lua 5.2, исключительно версию 5.3, так как используются некоторые функции, которые не поддерживаются в версии 5.2. Чтобы запустить систему, достаточно сменить архитектуру на Lua 5.3.

 

Данные для входа в систему:
 

Чтобы войти в систему, используйте следующие данные для входа:

Цитата

Имя пользователя: root

Пароль: root

 

Остальные вопросы вы можете задать под темой. Отвечу на каждый.

Изменено пользователем VBerezin
Добавление данных для входа в систему

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
18 часов назад, VBerezin сказал:

Дело в том, что данный форк не поддерживает Lua 5.2, исключительно версию 5.3, так как используются некоторые функции, которые не поддерживаются в версии 5.2. Чтобы запустить систему, достаточно сменить архитектуру на Lua 5.3.

добавь авто переключения архитектуры на lua 5.3(computer.setArchitecture("Lua 5.3")) главное чтобы стартовый сис файл компилировался на lua 5.2 иначе на сработает

 

18 часов назад, VBerezin сказал:

но и как полноценная терминальная система

а чем гуишная ос не полноценная, интересно было бы узнать:giggle:

 

принципе, форк имеет место быть, надеюсь это выльеться во что-то интересное:)

 

 

Изменено пользователем rootmaster

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, rootmaster сказал:

а чем гуишная ос не полноценная, интересно было бы узнать:giggle:

Ну смотри. В GUI операционной системе по стоку нельзя запустить терминальные приложения, приходится использовать либо эмулятор OpenOS (ссылка на данный материал), что не совсем удобно: сначала нужно установить это приложение, затем только использовать и настраивать так, чтобы было удобно использовать. В модификации же уже всё настроено: есть как отдельный Shell: можно войти в систему не входя при этом в GUI-режим с экрана блокировки, либо можно зайти в рабочего стола, кликнув по: Система > Перейти в терминал, что упрощает использование. При этом при всём, можно запускать приложения как для родной терминальной платформы (в нашем случае mineCORE - это модифицированный OpenKernel), так и для openOS. Это действительно удобно. Плюсом ко всему, можно использовать терминал и в GUI режиме.

И вот в чём ещё плюс терминала. Если mineOS сломается от проблем с библиотеками или каких-либо прочих проблем, всегда можно откатить какие-то изменения системы дл актуального состояния с помощью терминала. Это и удобно, и прикольно.

 

2 часа назад, rootmaster сказал:

добавь авто переключения архитектуры на lua 5.3(computer.setArchitecture("Lua 5.3")) главное чтобы стартовый сис файл компилировался на lua 5.2 иначе на сработает

Обязательно добавлю!

 

2 часа назад, rootmaster сказал:

принципе, форк имеет место быть, надеюсь это выльеться во что-то интересное:)

Само собой форк выльется в интереснейшее решение для всех. Главное написать адекватный инсталлер, сделать всё по красоте в системе и можно в прицнипе её развивать и даже добавлять новые фишки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
41 минуту назад, VBerezin сказал:

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

А есть примеры, чтобы это получилось? У меня есть подозрение, что если MineOS сломается, то сразу уж до синего экрана.

 

41 минуту назад, VBerezin сказал:

Обязательно добавлю [автопереключение на Lua 5.3]!

Вообще, Lua 5.2 тоже полезная вещь. Как минимум, пока в 5.3 не пофиксили баги при передаче таблиц компонентам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
29 минут назад, ProgramCrafter сказал:

А есть примеры, чтобы это получилось? У меня есть подозрение, что если MineOS сломается, то сразу уж до синего экрана.

Отвечу на твой вопрос. Если пройдёт гладко, я напишу графическую утилиту по типу Recovery Mode, в котором будет дисковая утилита, восстановление сломанных или отсутствующих библиотек и прочих зависимостей. Также можно будет через это меню переустановить систему. Пока это всего лишь задумка, которая теоретически реализуема, но требует немного времени на разработку. А так Recovery Mode по сути будет выглядеть как в macOS, так же красиво и так же просто, без всяких танцев с бубном.

 

32 минуты назад, ProgramCrafter сказал:

Вообще, Lua 5.2 тоже полезная вещь. Как минимум, пока в 5.3 не пофиксили баги при передаче таблиц компонентам.

Ну тут да, соглашусь, но в модифицированной mineOS новые фишки работают только благодаря Lua 5.3, без которого mineOS просто не запустится, или запустится, но с проблемами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
31 минуту назад, ProgramCrafter сказал:

Вообще, Lua 5.2 тоже полезная вещь. Как минимум, пока в 5.3 не пофиксили баги при передаче таблиц компонентам.

по подробнее про этот баг, и вообще, в каком случаи таблицы нужно передавать компанентам?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, VBerezin сказал:

но в модифицированной mineOS новые фишки работают только благодаря Lua 5.3

Какие, например? И почему их нельзя реализовать средствами 5.2 через операции в десятичной системе? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, ECS сказал:

Какие, например? И почему их нельзя реализовать средствами 5.2 через операции в десятичной системе? 

К примеру запуск терминального ядра. Его нельзя реализовать через 5.2 (не знаю почему точно), но при попытке запустить терминальный процесс в 5.2 система ломается. Это касается и возможностей запуска терминальных приложений. При попытке их запустить (в модифицированной версии системы они запускаются в терминальном процессе в окне) система тоже ломается. В 5.3 таких проблем нет, и можно спокойно запускать приложения и использовать их.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, VBerezin сказал:

напишу графическую утилиту по типу Recovery Mode, в котором будет дисковая утилита, восстановление сломанных или отсутствующих библиотек и прочих зависимостей. Также можно будет через это меню переустановить систему.

Разве MineOS EFI такое не умеет? :)

Изменено пользователем RasonGame

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, RasonGame сказал:

Разве MineOS EFI такое не умеет? :)

mineOS EFI позволяет указать загрузочный диск, переустановить mineOS полностью, управлять дисками, выключить компьютер и продолжить запуск OS. Но к примеру, OS сломалась частично. Зачем её каждый раз переустанавливать? С Recovery Mode можно восстановить только те файлы, которые отсутствуют или повреждены. Через Recovery Mode можно обновить EFI, можно зайти в терминал и побаловать себя шеллом в mineOS Recovery Mode. Он будет как и в macOS, таким же функциональным и полным нужного. Плюсом ко всему, если всё пройдёт гладко, я попробую сделать систему бэкапов (можно будет создать бэкап на любой диск, а потом развернуть его при желании. Короче, возможностей будет куда больше, чем в обычном EFI.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 09.08.2022 в 14:49, VBerezin сказал:

Ну смотри. В GUI операционной системе по стоку нельзя запустить терминальные приложения, приходится использовать либо эмулятор OpenOS (ссылка на данный материал), что не совсем удобно: сначала нужно установить это приложение, затем только использовать и настраивать так, чтобы было удобно использовать. В модификации же уже всё настроено: есть как отдельный Shell: можно войти в систему не входя при этом в GUI-режим с экрана блокировки, либо можно зайти в рабочего стола, кликнув по: Система > Перейти в терминал, что упрощает использование. При этом при всём, можно запускать приложения как для родной терминальной платформы (в нашем случае mineCORE - это модифицированный OpenKernel), так и для openOS. Это действительно удобно. Плюсом ко всему, можно использовать терминал и в GUI режиме

ну, в среде mineOS то по любому терминальные апки не запустишь

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, rootmaster сказал:

ну, в среде mineOS то по любому терминальные апки не запустишь

Теперь их можно будет запустить! Терминал можно использовать как полноэкранный (полноценный), так и его же, но оконный. Так что, полноценный терминальный режим есть в mineOS (по крайней мере, разрабатывается)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, VBerezin сказал:

Теперь их можно будет запустить! Терминал можно использовать как полноэкранный (полноценный), так и его же, но оконный. Так что, полноценный терминальный режим есть в mineOS (по крайней мере, разрабатывается)

1. зачем он там?

2. кто будет писать под него программы?

 

это конечно прикольно:)

у меня была идея сделать что-то подобное, скрестить mineOS и openOS и назвать это mipoOS, пожалуй, я продолжу этот проект

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, rootmaster сказал:

1. зачем он там?

2. кто будет писать под него программы?

 

это конечно прикольно:)

у меня была идея сделать что-то подобное, скрестить mineOS и openOS и назвать это mipoOS, пожалуй, я продолжу этот проект

Суть в том, что в mineOS есть ядро mineCORE, которое отвечает за терминал. В нём есть поддержка эмуляции openOS платформы считай без участия самой openOS. И можно запускать программы как для родной mineCORE (я буду писать документацию), так и для openOS.

Также приложения можно будет запускать и с оконного терминала. Сложного ничего нет, но и ладно.

Но насчёт mipoOS скажу. Странное решение снова скрещивать openOS и mineOS, так как mineOS изначально была написана на openOS, и потом стала самостоятельной системой. Но это тоже хорошо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Найс

Изменено пользователем cackemc

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 08.08.2022 в 18:16, VBerezin сказал:

данный форк не поддерживает Lua 5.2, исключительно версию 5.3, так как используются некоторые функции, которые не поддерживаются в версии 5.2

Если это так, значит форк уже имеет минусы относительно оригинальной MineOS, которая запустится и на lua 5.2:smile44:. Если вы действительно так серьезно подошли к делу, то вы не могли не заметить старания @ECS для поддержки обеих архитектур: в зависимости от используемой в данный момент архитектуры, например, при загрузки библиотеки Color, исполняется разные версии кода. Хочу заметить, что архитектура lua 5.3 в MineOS используется вовсе не ради удобства разработчика, а в целях улучшения производительности. Битовые операторы хороши не только своим удобством, но и тем, что не требуют вызова функции, ведь в OC вызов каждой функции, в отличие от оператора, намеренно вызывает задержку.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
45 минут назад, Anon сказал:

Битовые операторы хороши не только своим удобством, но и тем, что не требуют вызова функции, ведь в OC вызов каждой функции, в отличие от оператора, намеренно вызывает задержку.

Не совсем так. В OpenComputers задержка намеренно добавлена лишь при обращении к компонентами. А вызовы функций сами по себе обходятся заметно дороже обработки простых операторов. И это относится практически ко всем языкам программирования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, eu_tomat сказал:

И это относится практически ко всем языкам программирования

Если сравнивать операторы и функции в моём родном с++, то, например, использование переопределённого оператора будет совершенно идентично вызову функции. Например, a + b в результате компиляции будет эквивалентно вызову operator+(a, b). Мне не удалось вспомнить ни одной операции над литеральными типами, которая в c/c++ дублировалась бы функцией, наподобие с bit32.lshift и << в луа, но, думаю, если бы я её нашёл, разницы в производительности бы не было. Сделаю предположение, что аналогичной ситуации подвергнуты почти любые компилируемые языки, и лишь скриптовые имеют подобную проблему. Например, оператор возведения в степень ** в питоне, как утверждает гугл, аж в пять раз быстрее аналогичной ему math.pow.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
18 минут назад, Anon сказал:

Сделаю предположение, что аналогичной ситуации подвергнуты почти любые компилируемые языки, и лишь скриптовые имеют подобную проблему. Например, оператор возведения в степень ** в питоне, как утверждает гугл, аж в пять раз быстрее аналогичной ему math.pow.

Совершенно не обязательно. От конкретной версии компилятора зависит, и скриптовость языка на это никак не влияет.

И вообще, я отвечал на это утверждение:

2 часа назад, Anon сказал:

в OC вызов каждой функции, в отличие от оператора, намеренно вызывает задержку.

Задержку никто намеренно не вызывает. Такая ситуация во многих ЯП, не только в Lua и не только в OpenComputers.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...