There are a few opensource games out there, but many aren’t in distro repos, or for windows, or released on itch.io requiring an account to download, etc. What could a open source game store for opensource games for all distros look like?
There are a few opensource games out there, but many aren’t in distro repos, or for windows, or released on itch.io requiring an account to download, etc. What could a open source game store for opensource games for all distros look like?
Linux software repositories
We literally already have it
The difference is nobody is focusing on multi distro stuff yet. But using the Steam Linux runtime (open source) could be a good start. Standard containers which you can run on any distro.
Sorry for the stupid question, but what would be a standard container for any distro?
Appimage (static binary)
Static links would be a problem, like replicating the same lib/resources multiple times in a system, Reason why the dynamic links for bin are a thing?
The reason we do dynamic linking is because it saves RAM. The reason we sometimes don’t is because not everyone has the same glibc version.
Literally the Steam runtime is a Linux container environment with standard dependencies available for packaged applications and games
Anything supporting the container format it uses can run it
Containers is a method of presenting a system environment which looks the same across any computer you run it on, even if the underlying systems are wildly different, it’s like a sandbox but designed for efficiency (less resource overhead)
I’ve the impression that creating a “VM-like” instance for a game would be a little bit too much, another layer of translation for a game that already have dozens of layers from “code -> pixel”… Feels like waste… but if this really solves a issue… welp…
The thing about the Steam runtime is it’s literally just a different way of packaging it as far as the dev cares, and overhead for containers is much smaller than a full VM, so performance impact is minimal. Containers were originally created to make cloud deployments easier to automate because all the most important dependencies are packaged and there’s a stable interface to the OS regardless of host, and it replaced heavier virtual machines for most autoscaling web apps. Doesn’t need full virtualization and or guest kernel, etc. Easy to suspend for hibernation too, which is great for portable gaming too.