-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Drop GNU's cpio for bsdcpio [provided by libarchive] #97
Comments
Is Heirloom NG's By the way, is initramfs really needed as an outsourced implementation or there's a way to implement it per our own hands and/or not use it? |
I still have to test if bsdcpio [both from libarchive/heirloom] will create an image that the kernel can read.
Yes. I wanted to use the static binaries from A lot what I find online mentions |
I will have to study these too, the problem is to find documentation about it. |
Well, per what I understood, dracut is a tool to create an initramfs, it basically tries to avoid hard-coding scripts into the initramfs and uses udev instead. It kind of sounds like a good implementation idea to be honest, but I think I would try to implement a initramfs maker per myself. |
I thought about a design that would be nice to try: a stone minimal initrd with only statically link-edited tools from Heirloom NG and util-linux --- I do not know a both better and stable alternative and, since Copacabana makes use of util-linux for To be honest, I'm sort of burnt-out with this end of year, so maybe I could be speculating too much beyond what is actually sane to do. Just an addition: although a minimal environment for the initrd is necessary, I think it is annoying when you update the kernel and accidentally breaks/forgets some file system module, so you get dropped in this sort of environment where your hands are tied. Better safe than sorry, some say, so we could work on an idea --- if it's not on (Clang) Musl-LFS, but as a side note for someone studying this --- to workaround this when you update the kernel. This happens a lot on Slackware, by the way, principally if you're busy with work and mindlessly restarts your machine before an update. |
I agree. I mean, my mlfs-based projects aren't exactly tailored for new users, so I'm not looking for something fancy like dracut. I even tried to use it.. but never got it working. I couldn't find enough docs for distro devs.. only for users that have dracut installed or packaged by a distro
Maybe it's just me, but I read that a few years ago and it seemed awfully vague... nor did it not help its not up-to-date
Yeah, I started off thinking of using skarnet's s6-portable-utils and build them statically ... with possibly mdev. As means of a real simple initramfs [just load the CPU microcodes, firmwares, and kernel modules], perhaps heirloom-ng and util-linux may not be needed... but for a "rescue" image for troubleshooting, then definitely yes
Yes. But I have no experience with go... just enough info to build the compiler and some go projects
Yes. When building MLFS on my chromebook I had issues booting off the emmc or usb storage device. An initramfs would be helpful if it can drop the user to a shell and possible mount the root filesystem somehow or change kernel images. |
If curious: I don't want to use s6+s6-rc for the initramfs, hah ha. |
I have documented how to create an initramfs for loading CPU microcode at boot via my BLFS wiki. I'm now researching GPU firmware loading. Currently, I just bake the firmware in the kernel image. |
@takusuman I was thinking, maybe I should create a new repo for building an initramfs... then add it as a submodule [via git] to MLFS & CMLFS, just like my bootscripts for s6+s6-rc. Maybe ... LIFS = (L)inux (I)nitramfs (F)rom (S)cratch ... i may have to rethink the name if "LIFS" is already taken |
Just tested initramfs compressed by bsdcpio: kernel can load/use at boot. I'll test heirloom-ng next |
Maybe just some small programs of the set.
Sure, but that could be another entry on GRUB/Limine.
I have a little, but I could try to write something with it with some effort.
I have never figured out how to do it, usually I would chroot on it and regenerate the initrd. 😅 |
That is for sure a good idea, I can help designing it if needed. |
Great, I will wait for the results. By the way, I wish a Merry Christmas for you and other contributors in this project. |
Turns out my custom initramfs with busybox causes problems with my bootscripts. Initially, the initramfs had the init script in /sbin instead at the root, so kernel never executed the init script. |
GNU's
cpio
was added to MLFS so that an initramfs can be created for system that require an initramfs image for boot.Since CMLFS installs
libarchive
[for elftoolchain],bsdcpio
is available. Per this issue,bsdcpio
can be used as a replacement forcpio
.However, if I decide to drop
elftoolchain
forelfutils
, then GNU'scpio
would have to be installedThe text was updated successfully, but these errors were encountered: