You are browsing as a guest. Sign up (or log in) to start making projects!

Berke

@Berke

Joined June 6th, 2026

  • 2Devlogs
  • 1Projects
  • 0Ships
  • 0Votes
17yo 10th grade from Turkey
Open comments for this post

2h 0m 48s logged

Bros OS Devlog #1 – 4 Years, 95k Lines, and a Filesystem Named After My Girlfriend

So here’s the thing. Four years ago I sat down and thought, ‘Yeah, I’ll just write my own operating system.’ You know, casually. Like one does. Fast forward to today: I’m knee-deep in 95,122 lines of Rust, running my own kernel on a custom CPU I named BROS HM-1 (2 cores @ 2.4 GHz, because why not), booting with my own fork of GRUB, and managing files on a filesystem named after my girlfriend. It’s been a ride. This is Bros OS v1.1.2C – a proprietary x86_64 operating system built from scratch in Rust (no_std). And yeah, it’s closed source. I’ll get to why.

The BerkeOS -> Bros OS Story
Originally this was BerkeOS on GitHub. People started stealing the repo – cloning it, stripping the credits, and passing it off as their own work. Happened more than once. So I pulled it down and took everything private. That’s really the only reason Bros OS is closed source. Not because I’m a gatekeeper, but because a few bad actors ruined it for everyone. The code’s still alive, still growing – just on my machine now. There’s also a pending Turkish patent application covering the filesystem and boot process.

What’s Actually In This Thing?
Monolithic kernel, 513 Rust source files, no_std bare metal. Brosh shell – 185+ commands, pipes, redirection, job control. You can almost forget you’re not in bash. Almost. DefneFS v3.2.3 – custom FS with ATA PIO, AHCI, NVMe, SATA. Full partition manager, VFS layer, disk quotas. Drives: Alpha://, Beta://, Gamma://. Full network stack – TCP/IP, UDP, ICMP, ARP, DHCP, DNS, HTTP, NAT, routing, tunneling. All hand-written. Modular graphics – VGA, framebuffer, VESA, double buffering, font rendering, BMP image support. Retro aesthetic, fully intentional. USB XHCI driver – works on real hardware. Plug in a keyboard and it just works. Virtual memory, ELF loader, SMP, ACPI, crypto (AES128/SHA256/MD5), crash dumps, cron/at scheduler, init system, Deno text editor.

BAHAR Bootloader
I forked GRUB2 – the entire thing – just to change one line of code. Somewhere deep in grub-core/kern/main.c, I swapped ‘Welcome to GRUB!’ for ‘Welcome to BAHAR!’. Overengineered? Absolutely. Worth it? 100%. It’s technically a custom bootloader now. Don’t @ me.

DefneFS – Yeah, It’s Named After Her
Defne is my girlfriend. She sat through four years of me yelling at linker errors, celebrating page fault fixes like I won the lottery, and explaining what a context switch is for the 50th time. She never once told me to stop. The filesystem is the heart of any operating system, and she’s the heart of this project. Seemed fair. She genuinely liked the idea too. That helped.

How It Was Built
OS Dev Wiki carried me through the first two years. Absolute goldmine. Rust no_std on bare metal – no allocator, no standard library, no println!. You build everything from the ground up, then rebuild it because you did it wrong the first time. Dev setup: OpenCode (Sisyphus) handles orchestration. Local Ollama serves MiniMax 2.5 and DeepSeek for code gen. About 18,739 lines (19.7%) are mine – hand-written, reviewed, finessed. The rest is AI-assisted but I read every single line before it hit the codebase. Nothing went in on autopilot. Best part about local models: you can retry 50 times without burning API credits. Worst part: prompt engineering becomes a second full-time job.

Four years. 95k lines. One very patient girlfriend. And I feel like I’m just getting started. OS dev is a treadmill that never stops. But honestly? I wouldn’t have it any other way.
– Berke

Bros OS Devlog #1 – 4 Years, 95k Lines, and a Filesystem Named After My Girlfriend

So here’s the thing. Four years ago I sat down and thought, ‘Yeah, I’ll just write my own operating system.’ You know, casually. Like one does. Fast forward to today: I’m knee-deep in 95,122 lines of Rust, running my own kernel on a custom CPU I named BROS HM-1 (2 cores @ 2.4 GHz, because why not), booting with my own fork of GRUB, and managing files on a filesystem named after my girlfriend. It’s been a ride. This is Bros OS v1.1.2C – a proprietary x86_64 operating system built from scratch in Rust (no_std). And yeah, it’s closed source. I’ll get to why.

The BerkeOS -> Bros OS Story
Originally this was BerkeOS on GitHub. People started stealing the repo – cloning it, stripping the credits, and passing it off as their own work. Happened more than once. So I pulled it down and took everything private. That’s really the only reason Bros OS is closed source. Not because I’m a gatekeeper, but because a few bad actors ruined it for everyone. The code’s still alive, still growing – just on my machine now. There’s also a pending Turkish patent application covering the filesystem and boot process.

What’s Actually In This Thing?
Monolithic kernel, 513 Rust source files, no_std bare metal. Brosh shell – 185+ commands, pipes, redirection, job control. You can almost forget you’re not in bash. Almost. DefneFS v3.2.3 – custom FS with ATA PIO, AHCI, NVMe, SATA. Full partition manager, VFS layer, disk quotas. Drives: Alpha://, Beta://, Gamma://. Full network stack – TCP/IP, UDP, ICMP, ARP, DHCP, DNS, HTTP, NAT, routing, tunneling. All hand-written. Modular graphics – VGA, framebuffer, VESA, double buffering, font rendering, BMP image support. Retro aesthetic, fully intentional. USB XHCI driver – works on real hardware. Plug in a keyboard and it just works. Virtual memory, ELF loader, SMP, ACPI, crypto (AES128/SHA256/MD5), crash dumps, cron/at scheduler, init system, Deno text editor.

BAHAR Bootloader
I forked GRUB2 – the entire thing – just to change one line of code. Somewhere deep in grub-core/kern/main.c, I swapped ‘Welcome to GRUB!’ for ‘Welcome to BAHAR!’. Overengineered? Absolutely. Worth it? 100%. It’s technically a custom bootloader now. Don’t @ me.

DefneFS – Yeah, It’s Named After Her
Defne is my girlfriend. She sat through four years of me yelling at linker errors, celebrating page fault fixes like I won the lottery, and explaining what a context switch is for the 50th time. She never once told me to stop. The filesystem is the heart of any operating system, and she’s the heart of this project. Seemed fair. She genuinely liked the idea too. That helped.

How It Was Built
OS Dev Wiki carried me through the first two years. Absolute goldmine. Rust no_std on bare metal – no allocator, no standard library, no println!. You build everything from the ground up, then rebuild it because you did it wrong the first time. Dev setup: OpenCode (Sisyphus) handles orchestration. Local Ollama serves MiniMax 2.5 and DeepSeek for code gen. About 18,739 lines (19.7%) are mine – hand-written, reviewed, finessed. The rest is AI-assisted but I read every single line before it hit the codebase. Nothing went in on autopilot. Best part about local models: you can retry 50 times without burning API credits. Worst part: prompt engineering becomes a second full-time job.

Four years. 95k lines. One very patient girlfriend. And I feel like I’m just getting started. OS dev is a treadmill that never stops. But honestly? I wouldn’t have it any other way.
– Berke

Replying to @Berke

0
13
Open comments for this post

3h 32m 42s logged

BROS Operating Systems UI/UX

BROS Operating Systems UI/UX

Replying to @Berke

0
13

Followers

Loading…