There is no better solution.
For Mac - Apple has to make gaming a bigger priority, and that's clearly not going to happen. A ~$1000 upgradable Apple machine with a powerful graphics card that can run the latest games is a pipe dream.
For Linux - It's the same problem as building any software for Linux that caters to the non-server non-developer segment. There just isn't enough of a business justification.