MrConstructor303
-
Публикации
17 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные пользователем MrConstructor303
-
-
С одной стороны удобно.
С другой - абсолютно не гибко.
Сейчас мод пореже обновляется, а раньше новые версии выходили почти каждую неделю. И соответственно OpenOS тоже изменялась.
Если графическая оболочка слита с системой, то на каждый малейший апдейт OpenOS надо пересобирать весь RomeOS.
А если бы она была отдельно - таких проблем бы не стояло. Обновлять Rome бы приходилось только в случае мажорных обновлений OpenOS, ломающих совместимость.
P.S. С другой стороны - RomeOS можно превратить во что-то типа Debian =)
То есть OpenOS будет играть роль ядра. Добавить графическую оболочку Rome. Добавить пакетный менеджер. (Было бы идеально слить его с нашим репозиторием). Добавить набор различных интересных программ.
Вот-вот, как раз и собираюсь создать пакетный менеджер, и концепцию Debian в коде Lua.
-
Почему тему назвал RomeOS, а не Rome? Получилось из-за слияния "Rome" и "OpenOS", то есть это не само название продукта, это название сборки OpenOS с предустановленной оболочкой Rome. Формально я делаю оболочку Rome.
Сборку создам для того, чтобы уменьшить возню с установкой программ.
Иначе бы пришлось вначале потавить OpenOS, а затем вводить команду wget или oppm, и не у каждого интернет-карта установлена.
А так взяли диск с RomeOS,вставили в дисковод, запустили установщик, затем устанавливается и готово.
Давно хотел сказать, но боялся
-
Так, так. Давай разберемся. Ты пишешь новую операционную систему или графическую оболочку под OpenOS? Если новую систему, то зачем используешь опеновские библиотеки term, event и т.д? Без OpenOS они работать не будут. А если графическую оболочку, то называй вещи своими именами.
Я создаю систему на основе OpenOS, в любом случае упоминания OpenOS в моей системе бутут стерты.
local form = { caption="", elements={} } . . . function RomeAPI.newForm(caption) local object = form object.caption = caption return object endВ корне не верный подход. При попытке создать второй экземпляр формы, ты перетрешь свойство caption и перечень элементов ранее существовавшей формы. Рекомендую ознакомиться со способами реализации ООП под Луа.
В следующей версии будет исправлено.
-
Прошел почти месяц после начала разработки, а я всего лишь создал простенькую графическую библиотеку для своей уникальной оболочки, называемую Rome API. Я эту библиотеку адаптировал под черно-белые мониторы, чтобы потом мою ОС можно было уснанавливать на роботов. Моя библиотека пока годится только для экспериментов.
Что она из себя представляет:
Плюсы:
+ ускоряет процесс управления роботом, так как не придется вводить команды;
+ в появлением новых версий будут новые функции
Минусы:
- для запуска приложений все таки придется выйти в терминал
- библиотека еще сырая
- дизайн окна убогий, так как оно представляет из себя только кучу кнопок, расставленные в ряд
Скриншоты:Скачать можно отсюда: https://github.com/MrConstructor303/Rome-API/releases
-
1
-
-
Лучше вместо gml использую forms(http://computercraft.ru/topic/1016-oc-lyogkaia-biblioteka-gui/). Почему-то документация к либам от Zer0Galaxy проста и понятна даже для чайника, вроде меня. Если я у него беру код для своего проекта, следовательно может стать соавтором, или хотя бы указать в его соучастии.
Теперь по делу. Можно вместо event.pull использовать event.listen и обработчики событий -
А какую библиотеку thread используешь? И что говорит ошибка?
Которую взял отсюда: http://computercraft.ru/topic/634-mnogopotochnost-v-opencomputers/
Уже ваша помощь не требуется. Сам ошибку исправил. Надо было перезапустить машину.
Но у меня появился баг. При загрузке процесса окно не реагирует на нажатия.
Есть идеи, как исправить?
function RomeAPI.loadTask(process) RomeAPI.tasks[process] = thread.create(shell.execute, process) end
-
Я только вникаю в мир свободного софта. А гитхаб у меня есть: https://github.com/MrConstructor303/RomeOS. А кода нет, потому что проект на стадии закрытого теста. Пытаюсь создать многооконный интерфейс с помощью библиотек gml, thread , которые используются в RomeAPI.Хм, а смысл?
Зайдя на него я увидел лишь это:
No (more) commits
А где код то? И зачем надо юзать эту проприентарщину SF?Есть же старый добрый GitHub (Торвальдс одобряет
), тем более он более уместен для данного проекта (публикация исходников).А как мне кажется, SF нацелен на распространения собранных файлов (их git я не беру в счет).
Но я застрял на ошибке в моей либе(RomeAPI), которая ругается на отсутствие Shell API при попытке запустить RomeAPI.loadTask(process)
Вот часть кода где ошибка:
... local thread = require("thread") ... RomeAPI.tasks = {} ... function RomeAPI.loadTask(process) RomeAPI.tasks[process] = thread.create(dofile, "/usr/bin/"..process..".lua") --здесь прячется ошибка end ... -
Что-то разработка RomeOS затянулась в связи с переходом на OпенКомпьютерс. Забил на КомпьютерКрафт, т. к. после посещения вашего сервера решил, что версия для КК не будет актуальна.
Версия для ОК не будет отдельной веткой ОС, а за основу возьму OpenOS, только добавлю несколько либов, GUI и т. п.
У меня хорошие новости, я зарегистрировался в Sourceforge: https://sourceforge.net/projects/romeos/
-
Не-не-не, тут все куда прозаичнее: на первом скрине код его функций для сериализации таблиц, а на втором дефолтный код из textutils, которые поставляются с CraftOS. Дело не в копипастинге, а в изобретении велосипедов, причем велосипедов без седушки, вилки и педалек, образно выражаясь. Короче, у меня порвало очко от того, что парень по сути сделал либу textutils.serialize, при этом не обеспечив полного ее функционала.
Дело в том, что я ещё новичок в этом деле. Это мой первый проект. Вот и решил переделать с нуля.
-
Не на маркетолога случайно учишься?
Посмотрел код, lib/error улыбнуло.
Я учусь на программиста.
-
Большое спасибо за то, что вы не удалили мою тему про оболочку Rome OS. Наверняка ее исходники используются для некоторых других программ. Долго не обновлял, потому что был занят учебой(я студент) и не хватало идей.
Короче, я планирую переделать с нуля свою оболочку для CC и OC, даже версию придумал Rome 1.0 Reloaded Edition или Rome-RE 1.0
Разработку начну завтра. Через пару недель может появиться версия 1.0-rc1
Заметьте, я выпускаю сначала для CC, а затем для OC.
-
Я проверял программу, она ещё не доработана, подожду новую версию, а так СПАСИБО
))
Честно говоря, я создаю не ОС, а дополнение к существующей. -
Всё равно для тестирования моей ОС требуется эмулятор Opencomputers, т. к. она использует функции биос.
-
Спасибо, работает :-)
-
Спасибо, что напомнили. Мне, видимо, опять придётся попотеть.
Вот только найти бы эмулятор Opencomputers для винды, я бы свою ось создал именно для этого мода.
-
Rome* - рабочая среда для OpenOS.
Скачать:https://github.com/MrConstructor303/Rome(в разработке)
Rome ещё в стадии разработки, поэтому идея будет обдумываться и меняться!!!
Прошлые версии:
Обновления шапки:
23/01/2016
01/02/2016 версия для CC не будет выпущена вследствие ее неактуальности
02/02/2016 небольшие поправки
06/02/201617/02/2016
15/03/2016

Rome Shell for OpenOS
в Графика
Опубликовано: · Изменено пользователем MrConstructor303
Я долго думал над своим проектом, экспериментировал с модом, решил создать ОС с нуля, даже кастомную прошивку EEPROM делаю под неё. Операционка называется Smart. Под неё будет сделана отдельная тема.
Описание напишу позже.