VectraOS is developed in the open on GitHub. Clone it, boot it, read it, and send what you find.
The build tool is a single C23 program that builds itself, the kernel, user space and Limine for both architectures, and boots the result in QEMU.
The toolchain is pinned: clang, lld and llvm-objcopy 22.1.8 from Fedora 44, plus
nasm for Limine's x86_64 loader.
$ git clone https://github.com/JamesKane/VectraOS $ cd VectraOS $ cc -std=c23 -o build build.c # once $ ./build all $ ./build qemu --arch aarch64 # Ctrl-A X quits $ ./build test # both arches, headless $ ./build check # tests, fuzzers, format, lint
A house subset of C23, in a K&R two-space format. ./build check enforces the format and
clang-tidy, and a change should pass it before it's sent.
Dependencies are first-party or vendored and reviewed, checked against VENDOR.ndb by
./build vendor-check, and counted in the line ledger.
A change to the design, an exception to a rule, or a new import comes with an architecture decision
record in docs/adr/.
You keep the copyright on what you write. There is no contributor license agreement and no copyright assignment. Vendored code keeps its own licenses.
The license permits them. Its third clause means a fork can't use the VectraOS name to endorse itself.
No compatibility shims or portability layers in the OS. Adding a mechanism means removing or refusing another.
Start with the README, the overview, and the known gaps in docs/milestones.md.
VectraOS is run by a BDFL, a benevolent dictator for life: James Kane. Every decision passes through the BDFL after weighing its pros and cons. Substantive changes get argued in an issue, a pull request or an architecture decision record before the code lands, and a decision says why it was made.
If VectraOS ever reaches a user base the size of desktop Linux’s, a steady 2–3% of desktops, we’ll consider moving governance to a committee.
The code of conduct isn't one. It's four rules: