> Many of them use closed-source or even binary-only libraries that have no freely available replacements.
How do they port it to Linux, then? (They have to re-compile it right?)
I've developed games before and I can tell you, if you're not using propitiatory platform-dependent libraries, porting your game is a piece of cake. What I've noticed is that most of the games on Humble Bundle use a library known as SDL (Simple DirectMedia Layer.) SDL is a library that handles two main things that aren't platform-independent: creating a window and receiving events (keyboard, mouse, e.t.c.) The rest is taken care of by the cross-platform OpenGL, OpenAL, etc. libraries.
In addition, there's an even better library than SDL called SFML (Simple and Fast Multimedia Library). SFML is much more fully featured than SDL, and is C++-based and OOP. With both SFML and SDL, all you have is _just recompile_. And done!
So really, it's not that hard to port a game. "can't justify sinking man-months of effort into a Linux port" sounds a bit stretched. There are plenty of free libraries available for game dev (atleast 2D game dev), like Box2D, CEGUI (Crazy Eddie's GUI), etc. so if from the get-go you plan on supporting multiple platforms use some of those libraries, and porting will be a breeze.
Not all of them use closed-source non multi-platform libraries.
Unity a closed source game framework was recently ported to linux(just the framework, not the development tools).
There is a partial reimplementation/clone of XNA called MonoGame.
If there isn't a version of a library for linux I guess they have to re-write it. If they are re-writing for mac/linux at the same time they are more likely to use(and benefit from) cross-platform libraries for those ports.
> How do they port it to Linux, then? (They have to re-compile it right?)
Many use a WINE wrapper (or a derivative, like Cider); the same goes for OS X versions. Especially for a lot of these indie games, where a small performance hit isn't a big deal as they don't tax the hardware.
How do they port it to Linux, then? (They have to re-compile it right?)
I've developed games before and I can tell you, if you're not using propitiatory platform-dependent libraries, porting your game is a piece of cake. What I've noticed is that most of the games on Humble Bundle use a library known as SDL (Simple DirectMedia Layer.) SDL is a library that handles two main things that aren't platform-independent: creating a window and receiving events (keyboard, mouse, e.t.c.) The rest is taken care of by the cross-platform OpenGL, OpenAL, etc. libraries.
In addition, there's an even better library than SDL called SFML (Simple and Fast Multimedia Library). SFML is much more fully featured than SDL, and is C++-based and OOP. With both SFML and SDL, all you have is _just recompile_. And done!
So really, it's not that hard to port a game. "can't justify sinking man-months of effort into a Linux port" sounds a bit stretched. There are plenty of free libraries available for game dev (atleast 2D game dev), like Box2D, CEGUI (Crazy Eddie's GUI), etc. so if from the get-go you plan on supporting multiple platforms use some of those libraries, and porting will be a breeze.