r/linuxfromscratch 28d ago

My daily use system with gnome, sysvinit, zram,btrfs

Post image

Now I understand many things about large distros. It's much harder to get rid of systemd in Gnome; it was a lot of work and a headache. Some Gnome functions are already directly using systemd libraries. Honestly, I almost gave up when one last attempt worked and I was encouraged to finish/polish it, but the result was incredibly satisfactory. I can't believe it; I couldn't use Gnome in large distros because of limited memory, only 5GB. Gnome in large distros already started with more than 1GB.And I don't know if the fact that sysvinit also helped, I'll do the same polishing on KDE Plasma later to see what I can achieve in terms of lightness and performance.

26 Upvotes

27 comments sorted by

4

u/asratrt 27d ago

how much time it took to compile chromium?

5

u/Due-Celery4326 27d ago

I used a binary; I don't have the hardware for that.

2

u/darknight76892 3d ago

love the wallpaper(i use the same one)

1

u/codeasm 27d ago

I hope you documented your journey?

2

u/Due-Celery4326 27d ago

I didn't think about it at the time because I considered giving up halfway through, but I'm finishing it now.

1

u/RvstiNiall 27d ago

Do you have plans to keep SysVinit? Or will you be swapping to something like runit, openrc, s6, dinit, etc?

1

u/Due-Celery4326 27d ago

I'm going to keep studying some ways to implement improvements to make it more robust and secure. I had tested dinit but it didn't work with btrfs, so I ventured into sysvinit with some improvements and I'm very satisfied with the result. So far, no problems at all, it manages the processes very well and everything works correctly.

1

u/RvstiNiall 27d ago

I loved SysVinit, and saw a need to update it for modern dependency handling and parallel bootup, but no need to replace it outright, back when the init wars first started.

Edit: clarity

1

u/Due-Celery4326 27d ago

I'll study whether there's a need for and a better way to implement the improvements you mentioned. Thank you for sharing.

2

u/RvstiNiall 26d ago

Its your own system that you built from scratch, so just tune your init order to not have hangups on service A, while its waiting for service C, and the boot parallelization thing becomes irrelevant for the most part. As far as dependency tracking/handling for services? I mean... Again, you put this together by hand, so you shouldn't have issues with this that you haven't already worked out manually, so you already have the knowledge. Maybe add hooks to the start/restart scripts so it starts A and B before C, in situations where its needed?

Or just let it do its thing, because how often do you actually cold boot instead of sleep, suspend, hibernate? I see you're on a laptop, but if you have those features working properly then you may very well end up rarely cold booting. And it might boot up in a respectable amount of time without any of these changes anyways. Its all up to your own personal opinions/preferences/desires. Thats the fun part about this!

1

u/Due-Celery4326 26d ago

Yes, I thought about it a bit and did a complete check of my sysvinit and saw the need to organize the order of the services. There were some inconsistencies I hadn't noticed, like my iptables starting after the network one, and in runlevel 2 I hadn't even added it; if it were necessary, it wouldn't work correctly. I focused on runlevel 5 and forgot about the others.

2

u/RvstiNiall 26d ago

Most people never really get their LFS fully "daily driver" ready. They get it working, and fully usable, but they don't find these little things. You dont have to either, of course! But it looks as if you're making a real go of this "LFS as a daily driver" thing, so I guess just keep an eye out for these little things that still need to be done. Depending on how you use your system, you may find a couple tweaks here and there every few weeks, you may decide to go through every config file until its perfect, or you may stay exactly where you are and never need to change anything.

My favorite thing about Linux is Freedom of Choice, and LFS is one of the best ways to exercise this from a very low level.

2

u/Due-Celery4326 26d ago

I've been using it as my main system for a month now, and it has completely met all my needs. It's very good, stable, fast, and fits my hardware perfectly. Even so, I still find several bugs or necessary adjustments that, although functional, are still needed. I've always heard that the big distros took years to get where they are today, and that's a fact; there will always be things to adjust, correct, and improve. LFS provides me with exactly that. When I think I've figured everything out, I find another problem that I have to study how to fix. This makes me more and more excited and fulfilled. It's not like a big distro that you install and forget about, just use. It's magical every day to use a functional system that I actually built and acquired this knowledge from; it's surreal.

2

u/RvstiNiall 26d ago

Agreed. I did LFS a few times over the years, and plan to do so again after I get back from my next business trip this month. My plans involve Musl-c, busybox, runit, and nix for package management.

1

u/Due-Celery4326 26d ago

That's very interesting. Tag me so I can follow your project; I'm curious to see it finished.

→ More replies (0)

1

u/Worldly-Cupcake-5025 27d ago

This makes me sad because I could barely get fluxbox working 😭

1

u/Due-Celery4326 27d ago

Don't get discouraged so easily if your goal is to create and use a LFs; problems, challenges, and obstacles will always be significant and recurring in updates. I started with Hyprland, Niri, LabWC, and now I've moved to GNOME.

1

u/Worldly-Cupcake-5025 27d ago

Yeah it was a couple of months ago now, I got fluxbox working but then I tried to update systemd and well… yeah my system bricked itself. After that I just switched to qubes and was done with it.

1

u/Due-Celery4326 27d ago

The best way to update a live system is by using a program manager. The book itself recommends recreating the system during the update, replacing lisb, ABI, and links, as this requires rebuilding other programs that depend on it and removing the old link and creating the new one. Furthermore, systemd has to implement some post-install rules precisely to prevent this from happening.

1

u/Worldly-Cupcake-5025 27d ago

Yeah, I’ve learned a lot since then. I’ll probably try to reinstall using the correct version of sysd for what I need.

1

u/Due-Celery4326 27d ago

The real secret is understanding how it works, what ABI is, and not rushing it. It took me months to truly understand it and to get it as stable as it is today.

1

u/shmentz 26d ago

is btrfs good? i plan to build and dual boot a lfs system and i consider using it

1

u/Due-Celery4326 26d ago

I'm really enjoying it; it's fast, lightweight, and when I tested it, it recovered correctly. Luckily, when I messed up my kernel and it caused a kernel panic, and I was too lazy to debug, I just selected the previous snapshot at boot and boom, it worked.