Добро пожаловать в щенок.
Puppy является операционной системой для IBM-совместимых компьютеров с 32-разрядными процессорами Intel (возможно, вы слышали об этом видеи оборудования под именем персонального компьютера ).
Разработка Puppy началась 1 января 2018 года, и проект был открытым исходным кодом с 29 мая 2018 года. С тех пор операционная система выросла для предоставления:
Puppy также включает в себя частичную стандартную библиотеку C/C ++ (особенно отсутствует iostream C ++).
Пользовательская площадь Puppy состоит из сочетания пользовательских инструментов, а также портативных инструментов с открытым исходным кодом. Примечательно, что нет полного набора инструментов C ++, но для сценариев доступен порт микропитона.
Будущие цели и функции охватываются https://github.com/egranata/puppy/issues. Хотя я был бы очень рад принять вклад с точки зрения идей функций, а также патчей (но см. Ниже), некоторые вещи-это явные нецеливые , а именно:
Puppy активно протестирован на QEMU - и иногда боч. 

Предполагая, что несколько требований выполняются, щенок должен загружаться и работать над фактическим ПК:
(*) Тестирование с Bochs предполагает, что Puppy может загружаться на что -то столь же старое, как Pentium Pro, но это не проверено на реальном оборудовании. Увы, загрузка на что -либо старое в настоящее время невозможно (см. #63).
(**) Тестирование с QEMU предполагает, что 33 МБ является минимумом, необходимым для загрузки щенка в пользовательский пространство, но это не проверено на реальном оборудовании.
Если в вашей системе есть физический последовательный порт, вы сможете собирать журналы ядра, которые могут помочь в диагностике проблемы времени загрузки. Я лично использую picocom для этой цели, но другие инструменты должны работать, если они способны выполнять работу 8N1 115200. Патчи, чтобы включить настройку настройки последовательного порта на загрузке, будут с радостью приняты.
Тестирование на другие виртуализаторы и/или реальное оборудование также приветствуется.
Чтобы скомпилировать изображение щенка, вы захотите использовать Linux (родной или в виртуальной машине/контейнер; Docker, как известно, работает). Зависимости для компиляции точно описаны build/deps.sh (сценарий, используемый для настройки экземпляра CI).
Предполагая, что у вас есть подходящие кусочки, чтобы скомпилировать проект, просто введите
$ ./build.py
в оболочке. Это будет отключаться на некоторое время (должно быть менее минуты) и создаст загрузочный HD -изображение out/os.img .
HD -изображение включает в себя ядро, а также довольно минимальный пользовательский пространство + набор тестов. Он может быть использован для загрузки эмулятора или разбудить в настоящий жесткий диск.
Пример конфигурации для скрипта запуска BOCHS и QEMU можно найти в каталоге build .
Предполагая, что все работает, загрузка Puppy заканчивается подсказкой для оболочки. ls работает, чтобы начать исследовать файловую систему.
Взносы в проект очень приветствуются.
Список проблем (https://github.com/egranata/puppy/issues) активно поддерживается с новыми подразделениями работы, и проблемы, которые выиграют от помощи и/или являются отличными отправными точками, помечены как таковые.
Если вы хотите попробовать переносить программное обеспечение пользователя в Puppy или добавить драйверы для нового оборудования, это также приветствуется - любые проблемы, с которыми вы сталкиваетесь, это определенно стоит отчетность.
Чтобы ускорить свой вклад вплоть до принятия, пожалуйста, см. CONTRIBUTING.md и следуйте инструкциям в нем.
Имейте в виду, что это не является официально поддерживаемым продуктом Google .