Introduction
I am looking into Ubuntu for the creation of a single-purpose RAMdisk kiosk USB. I want to create a volatile, bootable USB, that loads a very minimal version of Ubuntu into RAM with 1 single purpose: launching our Chromium app in kiosk mode. The USB drive must be removable after the system has been loaded into RAM (by GRUB). Our application is supposed to allow clients to connect to an environment, where their information will be saved. This is why the distro itself must not be persistent. If this looks a lot like a Ubuntu Live USB, well... That's exactly what I am looking for: a stripped down RAMbootable Ubuntu Live USB running 1 app in kiosk mode.
Why Ubuntu?
The reason we are looking into Ubuntu is, Ubuntu's superior hardware support, compared to other Linux distributions. We are looking for an alternative Linux distro as a base of our application. Another reason is that Ubuntu's community is undoubtedly the biggest Linux community out there. So this issue is a nice little test.
Scripting all the way
The problem I have is that many of the tools I've found are deprecated, or not automatable, because they rely on GUIs or on a host system. I've tried Linux Live Kit for instance, but this relies on physically inserting a USB drive and running scripts on that device, which is a no-go in CI/CD. I'd love to find a solution that is fully automatable, preferably using containers.
GRUB
I already know GRUB allows ISO booting, and that its "toram" parameter might be able to handle the RAMdisk part.
TL;DR
Is it possible to generate a stripped down version of a Ubuntu Live USB, which RAMboots only 1 single app in kiosk mode? And is it possible to automate this process, using only the command line (no GUIs)?
I know this is a very specific, niche use case, but I seriously need some help. If any of this is unclear, just ask and I will provide updates.