- cross-posted to:
- linux@programming.dev
- cross-posted to:
- linux@programming.dev
Posting this since quite a bit has changed since I last posted about this on !technology@lemmy.world.
Here’s a rough breakdown of the current status:
- shared Ventoy components: build and seem to work, needs more testing
- grub / menu - builds
- EDK II apps / UEFI chainloader and more - builds
- iPXE / BIOS chainloader - builds, with fixes for newer toolchains
- ISO9660 and UDF drivers - TODO
- Ventoy CPIO / Linux ramdisk: builds; I deemed musl xzcat unneeded, so I skipped it; needs more testing
- wimboot / Windows chainloader (?) - stalled, I lack the necessary knowledge to work on it
- geom-ventoy / FreeBSD disk mapping kernel module - is being worked on, slowly; not ready for testing
- anything else is a TODO
This should be enough to boot Linux with just what’s built manually, but I haven’t tried that yet.
Secure Boot is just done by using a pre-built bypass package. I’ll deal with that later.
Having more people testing this would be nice. :)
Cheers
Got over my laziness
dd will do
stopped using Ventoy
suggesting others to do so too.Are there any instructions on how to build this all to get the
ventoy
installer binary that can replace upstream? Or is the project not up to this stage yet? I can go without Windows and FreeBSD support.On Linux installation is done through a series of scripts and
vtoycli
. I haven’t worked on that yet, but there’s build scripts there that should do the trick, but since they build it for multiple architectures, you’ll have to run just the stuff for your arch (probably x86_64).sth like:
cd vtoycli/fat_io_lib/release gcc -specs "/usr/local/musl/lib/musl-gcc.specs" -O2 -D_FILE_OFFSET_BITS=64 fat*.c -c ar -rc libfat_io_64.a *.o cd ../.. gcc -specs "/usr/local/musl/lib/musl-gcc.specs" -Os -static -D_FILE_OFFSET_BITS=64 -Ifat_io_lib/include fat_io_lib/lib/libfat_io_64.a *.c -o vtoycli_64 # Optional strip --strip-all vtoycli_64
Do I have to build all other parts myself before then? (I’m trying to package it for Nix so that other people can also build it more easily)
Pretty much. I do have some releases, but considering Nix’s philosophy you probably should. Ventoy-CPIO should build fine, if the right toolchains and dietlibc are in PATH. Ventoy-boot relies on overlay mounts though, so it might not build within Nix.
Thanks! I will try and report the results back to you.
Thanks for the thankless work. I hope that the changes will be accepted upstream.
So in short, these seven components are what makes the Ventoy blob, am I getting this right?
If only booting Linux distros, consider GLIM instead: https://github.com/thias/glim
Thanks for sharing! I never heard of that before
Thank you for your work on this! It’s highly appreciated!
I’m about as broke as it gets currently, but are there ways to send money your way in case someone who’s able to comes across this?
Focus on yourself first. I do have a Ko-Fi, but I don’t promote it much.
What is the ventoy blob thing and why is it important?
TLDR: There’s binaries instead of source code in the repo, which makes it hard to near-impossible to verify what it’s doing. And the instructions for building those is lacking.
Oh really? You’re saying its a security risk?
It is a risk as seen in the exploit in xz utils.
What’s ventoy?
A tool to make bootable Live USBs out of operating system ISOs.
I think that’s not quite right, otherwise you could say that Rufus is the same. Ventoy is a Live USB tool that allows you to drag and drop ISOs onto a storage device and boot them without needing to image the device at all. It has its own interface that it boots into, that lets you select which ISO to then boot up.