Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

boltOS

PHP UNIX симулятор с полноценной Matter, APK пакетным менеджером и файловой системой.

Особенности

  • Полноценная файловая система - реальная папочная структура как в Linux
  • Matter с автозаполнением - интерактивная оболочка с автодополнением Tab и историей команд
  • Тема Gruvbox Dark - красивая цветовая схема
  • APK пакетный менеджер - реальный пакетный менеджер с локальным репозиторием
  • Базовые утилиты - ls, cd, cat, mkdir, rm, cp, mv, pwd, и многие другие
  • Vie редактор - текстовый редактор (VIm Easy)
  • История команд - сохранение истории между сессиями

Установка

Требуется PHP 8.0 или выше.

# Установка зависимостей (если нужно)
# Для работы с архивами tar.gz требуется расширение phar

# Запуск системы
php boltos.php

Пакетный репозиторий

boltOS поддерживает несколько репозиториев пакетов. По умолчанию используется официальный репозиторий:

https://content.uzbekistation.serv00.net/boltos/repository

Управление репозиториями

# Список репозиториев
apk repo list

# Добавление собственного репозитория
apk repo add myrepo https://example.com/repo

# Включение/отключение репозитория
apk repo enable myrepo
apk repo disable official

# Удаление репозитория
apk repo remove myrepo

Система автоматически загружает метаданные пакетов из всех включенных репозиториев и скачивает их при установке.

Для настройки собственного репозитория см. REPOSITORY_SETUP.md.

Или сделайте файл исполняемым:

chmod +x boltos.php
./boltos.php

Использование

Основные команды

# Справка
help

# Навигация по файловой системе
ls              # Список файлов
ls -la          # Подробный список
cd /home        # Смена директории
pwd             # Текущая директория

# Работа с файлами
cat file.txt    # Просмотр файла
vie file.txt   # Редактирование файла
touch file.txt  # Создание файла
mkdir dir       # Создание директории
rm file.txt     # Удаление файла
rm -rf dir      # Удаление директории

# Системные команды
whoami          # Текущий пользователь
hostname        # Имя хоста
uname -a        # Информация о системе
df              # Информация о диске
du              # Размер директории
free            # Информация о памяти

APK пакетный менеджер

# Обновление индекса пакетов
apk update

# Поиск пакетов
apk search curl
apk search git

# Информация о пакете
apk info vie

# Установка пакета
apk add vie
apk add git curl

# Список пакетов
apk list              # Все пакеты
apk list --installed  # Только установленные

# Удаление пакета
apk del vie

# Обновление пакетов
apk upgrade

Vie редактор

# Открытие файла
vie file.txt

# Горячие клавиши
Ctrl+O   - Сохранить
Ctrl+S   - Сохранить и выйти
Ctrl+D   - Выйти без сохранения
Ctrl+K   - Вырезать строку
Стрелки  - Навигация
Page Up/Down - Прокрутка
Tab      - Вставить 4 пробела
Enter    - Новая строка

Matter функции

  • Tab - автозаполнение команд и путей
  • Стрелки вверх/вниз - навигация по истории команд
  • Стрелки влево/вправо - навигация по строке
  • Backspace - удаление символа
  • Ctrl+C - отмена текущей команды

Структура файловой системы

/
├── bin/          # Бинарные файлы
├── dev/          # Устройства
├── etc/          # Конфигурационные файлы
├── home/         # Домашние директории пользователей
│   └── root/     # Домашняя директория root
├── media/        # Медиа устройства
├── mnt/          # Точки монтирования
├── opt/          # Дополнительное ПО
├── proc/         # Информация о процессах
├── root/         # Домашняя директория root
├── sys/          # Информация о системе
├── tmp/          # Временные файлы
├── usr/          # Пользовательские программы
│   ├── bin/      # Пользовательские бинарные файлы
│   ├── lib/      # Библиотеки
│   └── share/    # Общие данные
└── var/          # Переменные данные
    ├── log/      # Логи
    └── tmp/      # Временные файлы

Хранение данных

  • Файловая система: storage/filesystem/
  • История команд: storage/history.json
  • Установленные пакеты: storage/installed.json
  • Конфигурация репозиториев: storage/repositories.json
  • Локальные пакеты: packages/dist/
  • Исходный код пакетов: packages/

Создание собственных пакетов

Пакеты хранятся в формате tar.gz. Исходный код пакетов находится в packages/, а собранные пакеты в packages/dist/.

Структура пакета:

package-name.tar.gz
└── package-name/
    ├── bin/          # Бинарные файлы
    ├── usr/          # Файлы в /usr
    └── etc/          # Конфигурационные файлы

Для создания пакета:

  1. Скопируйте репозиторий boltos-packages-build
  2. Создайте директорию packages/myapp/ с исполняемым файлом
  3. Добавьте пакет в build.php
  4. Соберите пакет: php build.php
  5. Добавьте описание в packages/dist/local.json
  6. Обновите индекс: apk update

Подробная документация: README.txt

Тема Gruvbox Dark

Система использует цветовую схему Gruvbox Dark для красивого отображения:

  • Фон: #282828
  • Текст: #ebdbb2
  • Красный: #cc241d
  • Зеленый: #98971a
  • Желтый: #d79921
  • Синий: #458588
  • Фиолетовый: #b16286
  • Бирюзовый: #689d6a
  • Оранжевый: #d65d0e

Лицензия

MIT

Автор

multura

About

PHP UNIX симулятор с полноценной Matter, APK пакетным менеджером и файловой системой.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages