Linux has the technology to challenge Windows, but inconsistent desktop integration, hardware support, packaging, and updates still hold it back.