It's not just hardware support (though even that still requires stuff like editing text files before the GUI will start on certain common machines.) The UX of the GUIs leaves much to be desired - certainly relative to an Apple machine. Linux GUIs were all designed by committee and coded by volunteers, and it shows.