Skip to content

RobertFlexx/ObeliskOS

Repository files navigation

Obelisk OS, the not so minimal, minimal UNIX-like kernel.

Minimalist and educational in nature, born from nightmares.

License Platform Kernel Desktop Display Manager Packages




From Axioms, Order.


Welcome newcomers! this repo has just passed basic testing and now has become public. Feel free to read source code, and jump through docs.

Also, i lost my sanity in some of the network drivers, ignore that.

Please go to docs directory and see scaffolds, and roadmaps. Contributions needed, and welcomed always!

Obelisk is a standalone Unix-like OS focused on a practical minimal base system that is CLI-first and desktop-capable.

Repo: https://github.com/RobertFlexx/ObeliskOS


Screenshots


Official Target Profile

Obelisk is converging on one clear daily-usable path:

  • minimal, stable Unix-like base system
  • official desktop environment: XFCE
  • official display/login manager: XDM
  • official package manager: opkg
  • package ecosystem: binary-first .opk delivery
  • single supported desktop path first (no KDE/GNOME parity work in this phase)

future opkg repo mirror here

This project values coherence and reliability over feature count.


System Philosophy

  • Keep the base system small, auditable, and recoverable
  • Prefer traditional Unix behavior where practical
  • Keep TTY shell as the safe fallback path
  • Treat desktop support as an extension of a stable base, not a separate OS
  • Ship practical milestones, avoid speculative mega-abstractions

Current Architecture

  • Kernel: monolithic x86_64 kernel in C with assembly bootstrap paths
  • Filesystem: AxiomFS and VFS/devfs stack
  • Control surface: sysctl-first operational model
  • Userland: small libc + compact base tools + rockbox shell/tool multiplexer
  • Packages: native opkg and .opk repository flow

OBELISK OPKG IS NOT OPENWRT OPKG! OPKG in-environment isn't stable, static local repository. web-repos in progress, contribs? please? lol


Languages Used

CC++DShellMakefilePrologZigAssembly


Repository Layout

  • kernel/ - kernel source
  • userland/ - user programs, libc, init/session tools
  • opkg/ - package manager and package examples
  • docs/ - project direction, roadmap, and release docs
  • rootfs-overlay/ - optional rootfs overlay content
  • Makefile - top-level build and ISO packaging

Build Prerequisites

  • x86_64-elf-gcc toolchain (or CROSS_COMPILE=<prefix>)
  • GNU Make
  • GRUB 2 tooling (grub-mkrescue)
  • QEMU
  • tar

To build a cross-compiler with the helper script:

./tools/mkaxiomfs/cross-compile.sh
export PATH="$HOME/opt/cross/bin:$PATH"

Build and Run

Build full artifact set:

make

Component builds:

make kernel
make userland
make rootfs
make iso

Run:

make run
make run-gui
make run-kvm

Debug boot:

make debug

Clean:

make clean

Roadmap and Policy Docs (if u wanna see whats next in the future & what to expect)

  • Main phased plan: docs/roadmap.md
  • Desktop/XDM path: docs/desktop-roadmap.md
  • Packaging policy and package waves: docs/packaging-policy.md
  • Release gate checklist: docs/RELEASE_CHECKLIST.md
  • Installer details: docs/INSTALLER.md

Release Direction

Obelisk is pre-1.0 (not stable!!!) . "Release-ready" currently means:

  • reproducible builds and installable artifacts
  • stable boot/session fallback behavior
  • predictable package install/update/remove flow
  • documented known gaps and validation gates

Inspirations

OpenBSD NetBSD Linux UNIX



OpenBSD — comments style, minimalism and hardware handling NetBSD — philosophy Linux — printk UNIX — philosophy


Credits / Testers

  • bigguy118 is now tester
  • Kokonico is now tester

License

This project is licensed under the BSD-3-Clause license. See LICENSE for details.

About

A standalone UNIX-like OS, based on absolutely nothing, born out of pain and nightmares.

Resources

License

Stars

Watchers

Forks

Packages