{"id":24013286,"url":"https://github.com/ndraey/nocturneos-base","last_synced_at":"2025-12-24T16:10:06.956Z","repository":{"id":291601497,"uuid":"910806148","full_name":"NDRAEY/NocturneOS-base","owner":"NDRAEY","description":"NocturneOS - простая операционная система для компьютеров ","archived":false,"fork":false,"pushed_at":"2025-12-22T21:42:55.000Z","size":5184,"stargazers_count":5,"open_issues_count":10,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-24T10:45:56.450Z","etag":null,"topics":["c","cmake","kernel","operating-system","os","osdev","rust","x86"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NDRAEY.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-01T13:42:07.000Z","updated_at":"2025-12-22T21:40:03.000Z","dependencies_parsed_at":"2025-05-05T15:59:37.051Z","dependency_job_id":"b3ed793d-8a03-4b4f-b362-0c51050d0ff9","html_url":"https://github.com/NDRAEY/NocturneOS-base","commit_stats":null,"previous_names":["ndraey/nocturneos-base"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/NDRAEY/NocturneOS-base","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NDRAEY%2FNocturneOS-base","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NDRAEY%2FNocturneOS-base/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NDRAEY%2FNocturneOS-base/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NDRAEY%2FNocturneOS-base/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NDRAEY","download_url":"https://codeload.github.com/NDRAEY/NocturneOS-base/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NDRAEY%2FNocturneOS-base/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28004519,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-24T02:00:07.193Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cmake","kernel","operating-system","os","osdev","rust","x86"],"created_at":"2025-01-08T06:51:52.614Z","updated_at":"2025-12-24T16:10:06.948Z","avatar_url":"https://github.com/NDRAEY.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"![NocturneOS](static/NocturneOS.png)\n\n# NocturneOS\n\nNocturneOS - это форк операционной системы SayoriOS.\n\n![C](https://img.shields.io/badge/c-%2300599C.svg?style=for-the-badge\u0026logo=c\u0026logoColor=white)\n![Rust](https://img.shields.io/badge/rust-%239A0000.svg?style=for-the-badge\u0026logo=rust\u0026logoColor=white)\n\n\n![Workflow](https://github.com/NDRAEY/NocturneOS-base/actions/workflows/Nocturne-Auto.yml/badge.svg)\n![Warnings](https://badgen.net/https/ndraey.github.io/NocturneOS-base/warning_count.txt?cache=3600)\n\nПростая операционная система для компьютеров на архитектуре x86. Написана на языках Ассемблер, C и Rust.\n\n* [Канал с обновлениями в Telegram](https://t.me/ndraey_ch)\n\n## Цели\n\nМиниатюрная экспериментальная операционная система с графическим интерфейсом пользователя, защитой памяти и набором инструментов для системной и прикладной разработки изнутри ОС.\n\n## Зачем?\n\nАХТУНГ: Этот проект НЕ стремится заменить уже существующие ОС.\n\nЭтот проект разрабатывается для:\n\n- Изучение низкоуровнего программирования и OSDEV\n- Чисто поугарать\n- Рубрика ЭЭЭЭЭЭЭЭЭЭЭЭКСПЕРИМЕНТЫ (отсылка к Галилео)\n\n## Скриншоты\n\nСкоро будут)\n\n## Системные требования\n\nЯдро не требует много ресурсов:\n- Процессор: x86_32 или x86_64 (1 ядро; 1 ГГц)\n- ОЗУ: 64 МБ\n- Жесткий диск: необязательно\n- COM-порты: необязательно\n- Floopy-привод: необязательно\n- Видеоадаптер: 4 MB+\n\n## Компоненты\n- Ядро\n  - Менеджер памяти (виртуальная память, куча ядра)\n  - Работа с CMOS (позволяет получать время)\n  - Базовые библиотеки (основа для расширения функционала ядра)\n  - Потоки\n  - Процессы\n  - Работа с PCI\n- Драйвера\n  - Клавиатура PS/2\n  - Мышь PS/2\n  - Пищалка (Buzzer, PC Speaker)\n  - Realek RTL-8139 (Драйвер для работы с сетью)\n  - ATA (PIO + DMA; HD + Optical)\n  - AHCI (HD + Optical)\n- Файлы и папки\n  - Виртуальная файловая система\n  - TarFS\n  - NoctFS\n  - FAT32 (RO)\n- Сеть\n  - ARP\n  - UDP\n  - DHCP\n- Прочие\n  - Программы ELF32 (Поддержка и запуск в ядре)\n  - Определение процессора (Получение информации о процессоре)\n  - Поддержка FPU (Для работы чисел с плавающей точкой)\n  - Поддержка UEFI\n\n## Сборка\n\nДля написания программ под NocturneOS может потребоваться SayoriSDK: https://github.com/NDRAEY/NocturneSDK\n\nДля компиляции вам потребуется операционная система на базе ядра Linux или Windows (с WSL), в которой предустановлено ПО для разработки.Установить можно следующей командой:\n\n```bash\nsudo apt-get install python3 gcc cmake ninja-build xorriso mtools\n```\n\nСистема содержит модули написанные на языке программирования Rust, поэтому требуется установить компилятор Rust.\n\nВы можете использовать компилятор из репозитория вашего дистрибутива, но рекомендуется использовать классический способ установки Rust:\n```bash\ncurl https://sh.rustup.rs -sSf | sh\n```\n\nНа данный момент используется версия Rust 1.88, для этого устанваливаем эту версию через rustup (+ исходники для компиляции std):\n```bash\nrustup toolchain install nightly-2025-07-01\nrustup component add rust-src --toolchain nightly-2025-07-01-x86_64-unknown-linux-gnu\n```\n\nЕсли вы планируете запускать эту систему в виртуальной машине, то ещё нужно установить QEMU:\n\n```bash\nsudo apt-get install qemu-system-x86 qemu-tools\n```\n\nКлонируем репозиторий:\n\n```bash\ngit clone https://github.com/NDRAEY/NocturneOS-base NocturneOS\n```\n\nПереходим к папке:\n\n```bash\ncd NocturneOS\n```\n\nСобираем конфигурацию с отладочной информацией:\n\n```bash\ncmake -B cmake-build-debug -G Ninja . -DCMAKE_BUILD_TYPE=Debug\n```\n\nКомпилируем и запускаем:\n\n```bash\ncmake --build cmake-build-debug/ -j4 -- run\n```\n\nТакже `run` можно заменить на `iso` чтобы просто собрать образ.\n\n## \u003ca id=\"contibution\"\u003eВклад в проект\u003c/a\u003e\n\nМы рады новым разработчикам и пользователям NocturneOS! Есть несколько способов, которыми вы можете внести свой вклад в проект:\n\n### \u003ca id=\"developers\"\u003eЕсли вы разработчик\u003c/a\u003e\n\nЕсли вы разработчик, вы можете помочь, добавляя новые функции, устраняя ошибки или улучшая существующий код. Для этого вам нужно сделать следующее:\n\n- Скачайте репозиторий проекта на свой локальный компьютер.\n- Создайте новую ветку для вашей работы.\n- Внесите изменения и фиксируйте их с использованием Git.\n- Отправьте запрос на объединение (Pull Request) в основную ветку проекта.\n\nМы будем рады вашим вкладам и готовы рассмотреть ваши Pull Request'ы.\n\n### \u003ca id=\"testers\"\u003eЕсли вы тестировщик\u003c/a\u003e\n\nЕсли вы нашли ошибку в проекте или у вас есть предложения по улучшению, пожалуйста, создайте новый Issue в репозитории проекта. Опишите проблему или предложение подробно, чтобы мы могли понять и рассмотреть их.\n\nЕще одним способом помочь проекту является тестирование. Вы можете протестировать новые функции, исправления ошибок и сообщить о найденных проблемах.\n\nПоследний релиз: https://github.com/pimnik98/SayoriOS/releases\n\n### \u003ca id=\"adv\"\u003eПиар\u003c/a\u003e\n\nЕсли вы готовы сделать обзор ОС или написать о ней где-нибудь, пожалуйста свяжитесь с координационной группой проекта.\n\n## \u003ca id=\"legalinfo\"\u003eПравовая информаиция\u003ca/\u003e\n\n### \u003ca id=\"denialofresponsibility\"\u003eОтказ от отвественности\u003c/a\u003e\n\nNocturneOS это не дистрибутив Linux, это совершенно-новый проект который не имеет за собой компании или организации которая могла бы дать гарантий.\n\nЯдро NocturneOS имеет открытый исходный код, вы можете сами удостовериться в отсутствии вредоносного ПО изучая файлы этого репозитория.\n\nПри использовании материалов вы обязуетесь соблюдать авторские права.\n\nУчастники проекта не несут ответственности за причиненный ущерб возникший в результате использования проекта. Используйте на свой страх и риск.\n\nЗапуск ядра возможен на реальном оборудовании, были тесты и на некоторых устройствах оно реально запустилось, хоть и с ограничениями\n\n## \u003ca id=\"contributors\"\u003eБлагодарности\u003c/a\u003e\n\n* [Никита Пиминов](https://github.com/pimnik98) (Создатель SayoriOS)\n* [Михаил Глухов](https://github.com/rigidus) (README)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fndraey%2Fnocturneos-base","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fndraey%2Fnocturneos-base","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fndraey%2Fnocturneos-base/lists"}