Based partially on the Linux platform abstraction, therefore this right now works only with Qt 5 on Linux.