
Originally Posted by
darkcoder
3. Standardization.
Believe me, this is an utter pain. Was making a PHP test page to get some OS info. Windows, just use WMI object. FreeBSD? easy, their release numbering is so clear, that standard php_uname instructions work without an issue. Linux???? well, how do I begin... AFAIK there is no /proc entry for OS/Distribution information, /etc/lsb-release is not available by default install in a LOT of Linux distributions (yes Debian, you are one), os-release is even a newer one thus is missing in even more distributions, $insertname-release is also not available in all of them and the name changes according to the distribution (duhh how can I find it if I'm looking for the distribution name in the first place... brilliant idea). And debian_version which guess what, is specific to Debian derivatives. What's left... getting the uname -a output, filtering by hand, and have some luck.
The main reason (BS...excuse) Blizzard gave every time that a Linux client was developed, but never released is that is difficult to support the many variants of distributions out there. Hey, if is so difficult to even check which distribution is used, hey, then checking for needed libs and binaries will be equally painful.