Monolith is a monolithic, multitasking, multiuser, multiscreen operating system for the OpenComputers Minecraft mod. Documentation is mostly available in the DOCS.md files placed in the various directories. If any docs are missing, please raise an issue or let me know through Discord or IRC (Ocawesome101#5343 or Ocawesome101 in #oc on EsperNet).
I will try to set up automated builds, but no guarantees.
To build Monolith, you'll need Luacomp, git
, make
, and probably a Linux or macOS system (alternatively, you can download the latest prebuilt release in CPIO form). Clone this repository, cd
to it, and run make
. Copy all files in build
to the root of your OpenComputers drive.
The following is a (hopefully up-to-date) representation of what I want to get done, and what I have gotten done, towards completing Monolith.
- Monolith
- Kernel
- Base
- Logger (
kernel.logger
) -
component
- Users (
kernel.users
) - Modules (
kernel.module
) - Filesystem management (
kernel.filesystem
) -
computer
- Userspace sandbox (
kernel.sandbox
) - Scheduler (
kernel.thread
) - Load init
- InitMe init system
- Base
-
package
-
io
- Service management (
initsvc
)
- Services
-
getty
- Minitel daemon
- GERTi daemon
-
- Libraries
-
buffer
-
class
(may remove) -
config
-
shell
-
sha3
-
serialization
-
sh
-
text
-
time
-
users
-
vt100
-
protect
-
cp
-
copy
-
-
event
-
uuid
-
internet
-
network
(may integrate withinternet
) -
filesystem
-
signals
-
thread
-
module
-
modules
-
kinfo
-
- SH
- Base
- Builtins
- Basic commands
- MonoUI
- Base
- Window management
- Apps
- Settings
- Terminal
- Kernel