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

MrConstructor303

Пользователи
  • Публикации

    17
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные пользователем MrConstructor303


  1. Я долго думал над своим проектом, экспериментировал с модом, решил создать ОС с нуля, даже кастомную прошивку EEPROM делаю под неё. Операционка называется Smart. Под неё будет сделана отдельная тема.

    Описание напишу позже.


  2. С одной стороны удобно.

    С другой - абсолютно не гибко.

     

    Сейчас мод пореже обновляется, а раньше новые версии выходили почти каждую неделю. И соответственно OpenOS тоже изменялась.

    Если графическая оболочка слита с системой, то на каждый малейший апдейт OpenOS надо пересобирать весь RomeOS.

    А если бы она была отдельно - таких проблем бы не стояло. Обновлять Rome бы приходилось только в случае мажорных обновлений OpenOS, ломающих совместимость.

     

    P.S. С другой стороны - RomeOS можно превратить во что-то типа Debian =)

    То есть OpenOS будет играть роль ядра. Добавить графическую оболочку Rome. Добавить пакетный менеджер. (Было бы идеально слить его с нашим репозиторием). Добавить набор различных интересных программ.

    Вот-вот, как раз и собираюсь создать пакетный менеджер, и концепцию Debian в коде Lua.


  3. Почему тему назвал RomeOS, а не Rome? Получилось из-за слияния "Rome" и "OpenOS", то есть это не само название продукта, это название сборки OpenOS с предустановленной оболочкой Rome. Формально я делаю оболочку Rome.

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

    Иначе бы пришлось вначале потавить OpenOS, а затем вводить команду wget или oppm, и не у каждого интернет-карта установлена.

    А так взяли диск с RomeOS,вставили в дисковод, запустили установщик, затем устанавливается и готово.

     

    Давно хотел сказать, но боялся


  4. Так, так. Давай разберемся. Ты пишешь новую операционную систему или графическую оболочку под OpenOS? Если новую систему, то зачем используешь опеновские библиотеки term, event и т.д? Без OpenOS они работать не будут. А если графическую оболочку, то называй вещи своими именами.

    Я создаю систему на основе OpenOS, в любом случае упоминания OpenOS в моей системе бутут стерты.

     

    local form = { caption="", elements={} }
      . . .
    function RomeAPI.newForm(caption)
      local object = form
      object.caption = caption
      return object
    end
    

    В корне не верный подход. При попытке создать второй экземпляр формы, ты перетрешь свойство caption и перечень элементов ранее существовавшей формы. Рекомендую ознакомиться со способами реализации ООП под Луа.

     

    В следующей версии будет исправлено.


  5. Прошел почти месяц после начала разработки, а я всего лишь создал простенькую графическую библиотеку для своей уникальной оболочки, называемую Rome API. Я эту библиотеку адаптировал под черно-белые мониторы, чтобы потом мою ОС можно было уснанавливать на роботов. Моя библиотека пока годится только для экспериментов.
    Что она из себя представляет:
    Плюсы:
     + ускоряет процесс управления роботом, так как не придется вводить команды;
     + в появлением новых версий будут новые функции
     
    Минусы:
     - для запуска приложений все таки придется выйти в терминал
     - библиотека еще сырая
     - дизайн окна убогий, так как оно представляет из себя только кучу кнопок, расставленные в ряд
     
    Скриншоты:

     


    post-219-0-96461300-1455702296_thumb.png

    post-219-0-47059000-1455702352_thumb.png

     

     

     

    Скачать можно отсюда: https://github.com/MrConstructor303/Rome-API/releases

    • Нравится 1

  6. Лучше вместо gml использую forms(http://computercraft.ru/topic/1016-oc-lyogkaia-biblioteka-gui/). Почему-то документация к либам от Zer0Galaxy проста и понятна даже для чайника, вроде меня. Если я у него беру код для своего проекта, следовательно может стать соавтором, или хотя бы указать в его соучастии.

    Теперь по делу. Можно вместо event.pull использовать event.listen  и обработчики событий


  7. А какую библиотеку thread используешь? И что говорит ошибка?

    Которую взял отсюда: http://computercraft.ru/topic/634-mnogopotochnost-v-opencomputers/

     

    Уже ваша помощь не требуется. Сам ошибку исправил. Надо было перезапустить машину.

    Но у меня появился баг. При загрузке процесса окно не реагирует на нажатия.

    Есть идеи, как исправить?

    function RomeAPI.loadTask(process)
      RomeAPI.tasks[process] = thread.create(shell.execute, process)
    end
    

  8. Хм, а смысл?

    Зайдя на него я увидел лишь это:

    No (more) commits
    А где код то? И зачем надо юзать эту проприентарщину SF?

    Есть же старый добрый GitHub (Торвальдс одобряет :smile9: ), тем более он более уместен для данного проекта (публикация исходников).

    А как мне кажется, SF нацелен на распространения собранных файлов (их git я не беру в счет).

    Я только вникаю в мир свободного софта. А гитхаб у меня есть: https://github.com/MrConstructor303/RomeOS. А кода нет, потому что проект на стадии закрытого теста. Пытаюсь создать многооконный интерфейс с помощью библиотек gml, thread , которые используются в RomeAPI.

    Но я застрял на ошибке в моей либе(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
    ...

  9. Что-то разработка RomeOS затянулась в связи с переходом на OпенКомпьютерс. Забил на КомпьютерКрафт, т. к. после посещения вашего сервера решил, что версия для КК не будет актуальна.

     

    Версия для ОК не будет отдельной веткой ОС, а за основу возьму OpenOS, только добавлю несколько либов, GUI и т. п.

     

    У меня хорошие новости, я зарегистрировался в Sourceforge: https://sourceforge.net/projects/romeos/


  10.  

     

    Не-не-не, тут все куда прозаичнее: на первом скрине код его функций для сериализации таблиц, а на втором дефолтный код из textutils, которые поставляются с CraftOS. Дело не в копипастинге, а в изобретении велосипедов, причем велосипедов без седушки, вилки и педалек, образно выражаясь. Короче, у меня порвало очко от того, что парень по сути сделал либу textutils.serialize, при этом не обеспечив полного ее функционала.

     

    Дело в том, что я ещё новичок в этом деле. Это мой первый проект. Вот и решил переделать с нуля.


  11. Большое спасибо за то, что вы не удалили мою тему про оболочку Rome OS. Наверняка ее исходники используются для некоторых других программ. Долго не обновлял, потому что был занят учебой(я студент) и не хватало идей.

     

    Короче, я планирую переделать с нуля свою оболочку для CC и OC, даже версию придумал Rome 1.0 Reloaded Edition или Rome-RE 1.0

     

    Разработку начну завтра. Через пару недель может появиться версия 1.0-rc1

    Заметьте, я выпускаю сначала для CC, а затем для OC.


  12. Я проверял программу, она ещё не доработана, подожду новую версию, а так СПАСИБО :)))


    Честно говоря, я создаю не ОС, а дополнение к существующей.


  13. Rome* - рабочая среда для OpenOS.

    Скачать:https://github.com/MrConstructor303/Rome(в разработке)
    Rome ещё в стадии разработки, поэтому идея будет обдумываться и меняться!!!
    Прошлые версии:





    Обновления шапки:


    23/01/2016
    01/02/2016 версия для CC не будет выпущена вследствие ее неактуальности
    02/02/2016 небольшие поправки
    06/02/2016

    17/02/2016

    15/03/2016

     

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