What would be a good way to make a ventoy clone?

So recently there has been some talk about ventoy, And as a project that I may or may not actually take on, I was wondering how we would go about making a “good” ventoy clone. IE something that accomplished the same task as ventoy but without the issues.

My idea would be to run a the installer in VM but have all the functions and stuff be directly connected to the system so that the VM would see you drive as an internal drive. this would remove the need to use boot parameters, right?

Start by reviewing the discussions on the mailing lists about the issues (you can search all mailing lists for “ventoy”, that will also show you the bugzilla issues that have been raised regarding this tool).

Doing something like this is non-trivial. I don’t see how running the installer in a VM is going to help - you need an installed OS in order to run a VM. It’s just easier to write the ISO to a flash drive in the proper way using dd or imagewriter.

If you want to use ventoy - fine, but if you run into issues, the developers have emphatically said they will not support it or investigate bugs unless they’re duplicated without using ventoy. Paraphrasing one of the openSUSE devs, “ventoy needs to be compatible with openSUSE, not the other way around.”

I can see situations where a tool like this could be helpful, and running live media certainly is a use case that I’d say is probably fine. But installing from that media is another matter, and there are several documented issues in bugzilla that I found, as well as several discussions on the mailing lists about why this tool is problematic.

1 Like

@40476 You would need a separate disk controller to pass the hardware through with vfio-pci…

actually, I have an idea, I need a list of all the problems with ventoy that have been recorded. I will make sure they get sent to the ventoy people within the coming days.

@40476 You have time to do that, but not time to do a simple dd command… but hey, your time, enjoy and member to have fun :smile:

1 Like

You can find all the discussion in bugzilla and the mailing lists (which includes bugzilla, actually). Have at it. :slight_smile:

1 Like

@40476 You could start writing my own universal bootloader and ditto kernel. From there on you could create my own unique virtualization layer betwee that bootloader and kernel, so that the entire booting would be into a VM. Next you would need to write a scraper that can build a db from every single distro that ever appeared. The only thing that your fork would need is some minimal interface, could even be webbased if you’d also include a webserver in that kernel.
Oh, btw, to make sure it all fits on a 16GB USB key, you might also have to include some new style of hypercompression.

@knurpht you only need a system that would boot grub as can add iso images… but going forward systemd-boot… bcachefs :wink:

I would not call that a rewrite. BTW, I think Perl would be a good language to write the whole stack in.