1
1
mirror of https://git.shadowkat.net/izaya/OC-PsychOS2.git synced 2025-12-28 20:37:28 -05:00
Operating system for OpenComputers
Go to file
2023-08-01 20:48:19 +10:00
cfg and another one. oops. 2023-08-01 15:58:16 +10:00
kcfg refactor build system to allow pulling libraries from packages, assuming directories are set up correctly 2023-08-01 17:58:27 +10:00
lib have pkgman create the directories it needs rather than fail for cryptic reasons 2023-08-01 20:48:19 +10:00
module add module for booting from rtfs volumes 2023-08-01 18:02:14 +10:00
service moved fserv to its own package 2023-08-01 18:21:08 +10:00
.editorconfig
.gitignore
build.lua refactor build system to allow pulling libraries from packages, assuming directories are set up correctly 2023-08-01 17:58:27 +10:00
build.sh stamp the kernel variant onto the version string 2023-08-01 20:44:14 +10:00
docs-metadata.yml
finddesc.lua
gendoc.lua
LICENSE
luapreproc.lua
package.sh
preproc.lua refactor build system to allow pulling libraries from packages, assuming directories are set up correctly 2023-08-01 17:58:27 +10:00
README.md
template.tex

OC-PsychOS2

A lightweight, multi-user operating system for OpenComputers

Building

The kernel

The kernel is composed of a number of modules, found in the module/ directory. Which modules are included can be customised by changing the include statements in module/init.lua; copying it and customizing that is recommended, so you can git pull later without having to stash or reset your changes.

Unix-like systems

The kernel can be built using the preproc library and provided scripts:

lua build.lua module/init.lua kernel.lua

PsychOS

The kernel can be built from inside PsychOS using the preproc library, assuming you have the kernel source available:

preproc("module/init.lua","kernel.lua")

The boot filesystem

A boot filesystem contains several things:

  • The kernel, as init.lua
  • The lib/ directory, containing libraries
  • The service/ directory, containing system services

This has been automated in the form of build.sh, pending a real makefile.

Documentation

Documentation is generated as the system is built with build.sh; a set of markdown files will be placed into doc/, as well as an all-in-one apidoc.md. If pandoc is installed, an apidoc.pdf will also be generated.