Hi Marek, Frédéric, and the Qubes team,
My name is Rohan Mithari. I’m an Electrical Engineering undergrad, and I’d love to work on the "Revive Qubes Live USB" project for GSoC 2026.
I’ve been reading through issues #1552 and #1965, along with the recent mailing list and forum discussions. The recent threads really helped clarify the real-world constraints of this project. It makes complete sense that sys-usb must be excluded so it doesn't accidentally unmount the live boot drive. I also appreciate the reality check on memory limits—shifting the baseline to 16GB (while maybe experimenting with 8GB) feels like a much more practical goal than fighting the old 4GB target.
I also found the forum discussion about running dom0 entirely in RAM for a non-persistent, amnesic boot really fascinating. Figuring out how to balance the Xen boot sequence with the memory overhead of multiple VMs seems like the biggest, but most interesting, challenge here.
I am currently setting up my local qubes-builder environment to get hands-on, but I have a few quick questions to help focus my proposal:
Old Scripts: Are the old R3.2 live-build scripts still kept somewhere in the repositories as a reference, or is it better to start completely fresh with the current infrastructure?
The End Goal: Is the main vision for this Live USB to be a quick hardware-compatibility tester (and potential installer), or is the team hoping to build a fully functional, privacy-focused temporary OS?
Past Roadblocks: When it comes to managing the memory overhead, are there any specific storage setups (like certain device-mapper configs) or past attempts you highly recommend I look into?
Thanks for your time and for all the great information already shared on the list. I look forward to learning more and putting my proposal together!
Best regards,
Rohan Mithari
While mapping out the implementation timeline, I had one question regarding the storage setup based on your last email: Since part of the storage pool configuration might need to happen after qubesd starts, would it make more sense to treat the RAM-backed pool purely as a dynamically added "volatile/private pool" at runtime? Or is it safer to try and integrate it tightly into the early initramfs stage? I’m trying to pin down exactly how much of the storage configuration needs to live in early boot versus what can be handled cleanly within Qubes’ existing abstractions later on.
I’m going to continue exploring these parts of the codebase and looking for other small, relevant issues to tackle in parallel.(suggest if any good issue that I should go through)
Regards,
Rohan