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

Ramix (LFS)

  • 5 Devlogs
  • 19 Total hours

An Linux Distro Based on Linux from Scratch Guides with Custom Scripts

Ship #1 Pending review

> I made an Linux Distribution from Scratch following the Linux from Scratch Guide
.
The Problems i faced were dependency problems and Compiler Issues and also weird version mismatch issues, took a really lot time to sort it out and then there was Time, It took really alot of time to compile heavy packages such as GCC, LLVM, Kernel.
.
I also made an Custom Package Manager called RXPKG it has an version like symlink structure of installing packages planning to expand it more with version switches and fallbacks and also Online Package Resolving. I had also built rxbuild to build .rx packages for it as well
.
The Most Challenging part was SystemD Installation it took a really longer time to debug and think what to do along with initramfs booting into SquashFS and assinging OverlayFS to add RW in liveCD
.
I've posted the ISO Link AT : https://github.com/kwe26/ramix-lfs/releases/download/0.1-lfs.3/Ramix-20260719.iso
.
*Compatible Command to Run the ISO file Properly on a QEMU VM*
.
```bash
qemu-system-x86_64 \
-enable-kvm \
-cpu host \
-smp 2 \
-m 2G \
-cdrom Ramix-20260719.iso \
\
-display gtk,gl=on \
-device virtio-vga-gl \
\
-device qemu-xhci \
\
-netdev user,id=net0 \
-device virtio-net-pci,netdev=net0
```
.
Feel free to try it on qemu and drop some feedbacks

  • 5 devlogs
  • 19h
Try project → See source code →
Open comments for this post

2h 56m 8s logged

Devlog - 5

Ramix an Simple Linux Distribution Made from Scratching Following the Linux from Scratch Guide with Custom Scripts as well

FINALLY, SSL WORKS!!!

New Features

  • Wayland (No Compositor)
  • Wlroots
  • Mesa
  • OpenSSL as RXPKG
  • CA-Certs Properly Compiled
  • DRM Support
  • GIT!!

We can now see the penguins and the new Kernel Panic screen thanks to DRM Support + GPU Support
.
we only support virtio-gpu right now but planning to expand more!
.
Hopefully, it’s the last devlog before the 1st Ship of this Project

also i couldn’t get tinywl working, will try it in next release 0.2

Thanks for following the dev till now!

0
0
10
Open comments for this post

4h 36m 11s logged

Devlog - 4

Ramix an Simple Linux Distribution Made from Scratching Following the Linux from Scratch Guide with Custom Scripts as well

WOWOWWOW, Finallly own package manager???

New Features

  • iproute2
  • iputils
  • systemd-confs
  • RX Package Manager

About the RX Package Manager

  • The package manager is currently written in dart
  • It currently stores packages at /var/lib/rxpkg/vol/<package>/<version>
  • It symlinks it to main /, So it would be better i thought
  • there’s also rxbuild . command to build .rx package it’s kind of like PKGBUILD

sample bash build.toml

version = 1

[build]
system = "autotools"

out_of_source = true

configure = [
    "--prefix=/usr",
    "--sysconfdir=/etc",
    "--localstatedir=/var",
    "--disable-nls"
]

make = [
    "-j${NPROC}"
]

install = [
    "DESTDIR=${DESTDIR}"
]

#sample bash manifest.toml

name = "bash"
version = "5.3.0"
release = 1

arch = "x86_64"

license = "GPL-3.0-or-later"

description = "GNU Bourne Again Shell"

homepage = "https://www.gnu.org/software/bash/"

maintainer = "Ramix Team"

depends = [
    "glibc>=2.43",
    "readline>=8.3",
    "ncurses>=6.6"
]

Run rxbuild . and there you go your bash.rx package!!

You can find the latest ISO in my github release page!

Run it like this in qemu

qemu-system-x86_64  \    
       -cpu host \    
       -m 2G \    
       -cdrom Ramix.iso \    
       -netdev user,id=net0 \    
       -device e1000,netdev=net0 \    
       -enable-kvm 

Share your feedbacks in Comments section, I love it

0
0
1
Open comments for this post

5h 41m 57s logged

Devlog - 3

Ramix an Simple Linux Distribution Made from Scratching Following the Linux from Scratch Guide with Custom Scripts as well

Finally, SystemD Support!

SystemD now boots as PID 1 at started and now we also have GETTY Support User Management

New Features

  • Python 3
  • Meson, Ninja, CMake
  • Sqlite3, Shadow
  • SystemD!!!
  • Linux-PAM
  • Kmod for modprobe and such commands
  • Login Support!!

Upcoming Changes

  • Networking
  • Graphical Interface
  • Recovery

Grab the Test Release ISO from Github

https://github.com/kwe26/ramix-lfs/releases/tag/0.1

QEMU Command

qemu-system-x86_64 \    
       -cpu host \    
       -m 2G \    
       -cdrom Ramix.iso \    
       -netdev user,id=net0 \    
       -device e1000,netdev=net0 \    
       -enable-kvm

And it will startup!!!

Other Changes

*since we had prepared GCC and Compiler Enviorment inside the Chroot, from now all the new libs, programs will be compiled inside the chroot now with the inclusion of scripts_chroot and invoke-chroot.sh *

0
0
2
Open comments for this post

3h 9m 54s logged

Devlog - 2

Ramix an Simple Linux Distribution Made from Scratching Following the Linux from Scratch Guide with Custom Scripts as well

Finally, It can Now Boot on QEMU

Steps i followed to make it bootable

  • First i Compressed the Rootfs into rootfs.squashfs
  • Created an Initramfs with Busybox to mount and switch root to squashfs
  • Grub to Boot into Kernel using the Initramfs.

There’s still some issues with GCC not working properly due to Pass 2 Compiler not being compiled

QEMU COMMAND

qemu-system-x86_64 -cpu host -m 2G -cdrom Ramix.iso -enable-kvm

ISO Link for Testing

https://github.com/kwe26/ramix-lfs/releases/tag/testing

0
0
1
Open comments for this post

2h 48m 17s logged

Devlog - 1

Ramix an Simple Linux Distribution Made from Scratching Following the Linux from Scratch Guide with Custom Scripts as well

Today I’ve Compiled Basic GCC, Make, GNU Bash And Coreutils, Kernel Headers

I’m trying to Get this to around usable-state Distro as TUI and SystemD!!

Compiling GMP required an Patch for GCC 16 Which i found on Gitlab, I’ve referenced it on Repo.

My Goals

  • Get it Boot on QEMU
  • Basic Internet Access (i doubt)
  • QuickJS & Python

Beyond Current Goals

  • X.org/Wayland Support
  • A Basic Desktop Manager
  • Support for Real Hardwares

Forgive me for the Logo, I’ll create an proper one in time being

0
0
3

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…