Homebrew OS Development

From DisNCord Community Wiki
Revision as of 05:40, 29 December 2022 by Mineman3000 (talk | contribs) (→‎SeshOS: updated SeshOS section)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This is a general summary of what OSes are being developed on DisNCord.

Open Computing Kit (OCK)

A joint project between Elisia, Sadmac356, Griffin, Europa, and others, Open Computing Kit is an operating system that aims to be as GNU-independent as possible, including a kernel written in Rust and its own set of coreutils. It is presently in the very early stages of active development.

SeshOS

Written by Mineman, SeshOS is one of the more esoteric OSes on DisNCord. It has the beginnings of a GUI and shell in the kernel, and (as of 10/15/2022) it has a working malloc thanks to Krabs and Mathewnd.

SeshOS has support for one filesystem: tar ramfs.

Has very basic SMP setup, and has support for the PC Speaker.

Its source code is located at https://github.com/mine-man3000/SeshOS.

SeshOS in its current state as of September 1st, 2022

Pics Of Bread Awful scRipting Interpreter System for Neat Architectures (POBARISNA)

Written by Krabs, POBARISNA is an operating system with a JavaScript-based microkernel design that currently only runs on PowerPC macs. There are prospective plans for ports to other "Neat Architectures" (which Krabs defines as "not a PC/BIOS/UEFI x86 system"), such as SPARC variants and ARM.

The project can be found on GitLab.

The JavaScript interpreter used in POBARISNA is Duktape, an easily embeddable interpreter with a nice API. However, Duktape 2.x has some awkward tooling and a lack of solid control over execution. Therefore, there are plans to replace it with Dorktape, which will hopefully serve as a modernized fork of the engine.

Being that PowerPC OpenFirmware is a slightly under-documented platform, PowerPC OpenFirmware Implementation Details should serve as helpful to anyone looking to do something similar.

An early screenshot of POBARISNA running Duktape in OpenFirmware
An early screenshot of POBARISNA running Duktape in OpenFirmware

picotalk

Written by Waterpear, picotalk is a Smalltalk interpreter that aims to be a bare-metal system for embedded use. It is currently in a very limited state; only the base object model and a preliminary bytecode VM are operational.

Rotom OS

Written by SED, Rotom OS is an operating system with little information to glean from anything except for its code and a few images. It attempts to be as simple as possible, with ring 3 not yet being implemented.

Rotom OS

styx

Written by Sirocyl and others, styx is an operating system with many ideas, some of which will be listed here:

  • Applications will be double-click to run, much like Windows or macOS.
  • Libraries should live with their application in packaging, similar to Windows.
  • Installation will be done through drag-and-drop, taken from macOS.
  • The system will be as (trans)portable as possible, similar to Classic macOS.
  • The word "styx" is not an acronym, nor will the operating system's governing body ever be comprised of one member.
  • The system will be consent-first, something that flies in the face of traditional operating systems like Windows and macOS.

There are many more than are stated here in their Discord server, due to there being too many to list here effectively.

Astral

Written by Mathewnd, Astral is a monolithic kernel written in C. It is still at its early stages of development and has the beginnings of a userland.

It has a growing port collection with a few examples being Bash, Doom, Binutils, Coreutils and NASM.

Its current main goal is to have a usable command line interface while also having fun developing the system.

Astral running Neofetch on Oct 11, 2022
Astral running Neofetch on Oct 11, 2022

Techflash OS (TFOS)

Written by Techflash, Techflash OS is an operating system that is still very early in development.

It current has very little implemented except for the following:

  • A basic boot procedure
  • Enabling a few CPU features
  • Support of a few basic interrupts, such as the PIT and keyboard.
  • A very basic framebuffer console
  • Starts of an ELF loader
  • Serial and Parallel support for logging