Someone really needs to develop a lightweight VM container that we can stuff software in. Like, you know how you can buy DOS games on steam, and it just gives you dosbox preconfigured to play the game?
That, but for all software on all OSes
Someone really needs to develop a lightweight VM container that we can stuff software in. Like, you know how you can buy DOS games on steam, and it just gives you dosbox preconfigured to play the game?
That, but for all software on all OSes
@foone I started doing this and turned away from it towards baseline-real hardware.
The reason why is because a VM implies supersetting: if you emulate Microsoft Windows, you need at least the same I/O and timing thresholds. Fine, you say, we'll just make an emulator that does that.
Well, now you have to configure that. So then you have to make stuff to configure display settings and input devices and whatnot. You have users and they want features. They want it to support their offbrand graphics tablet and their eInk display and use it as a software radio. They want it to support both OpenGL and Vulkan. Gradually, you've started to invest the effort of an operating system into this universal VM and it is no longer lightweight, it is the web browser, nobody can control it but the largest corporations, and the software for it kinda sucks because it struggles to express things properly from the beginning and it is allowed to use way too much power all the time.
That's the terrarium problem. You can keep a terrarium confined by either being extremely pragmatic(which is uxn) or by expressing software in the hardware context, because it's slower moving - it has a certain spec and the spec can be validated against the real boards. With hardware, software is also kept honest because they have to hit that spec too. No web browser shenanigans.
Then you add some additional compatibility at emulator level and you have a desktop system where most programs are using the amount of power and I/O they actually need.