- 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
https://www.iodd.shop/all-products
Much better
Interesting. Sadly it only supports FAT32, NTFS and EXFAT with no Linux filesystems.
And Ventoy is free. It’s hard to argue with free.Yeah, bought the st300 after having repeated issues with ventoy not properly mounting disk images causing multiple Linux distro installs to fail. My st300 might be one of my best investments as a technician just for how seamless and simple it is to use.
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.
Got over my laziness
dd will do
stopped using Ventoy
suggesting others to do so too.Can you use dd to create multiboot USB drives? Even the link you shared lists Ventoy as an option.
If only booting Linux distros, consider GLIM instead: https://github.com/thias/glim
Thanks for sharing! I never heard of that before
So in short, these seven components are what makes the Ventoy blob, am I getting this right?
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.