You can do an almost fully GPL compliant Linux desktop by building it yourself today. I can already see people thinking "but what about the closed source binary blobs? my video card? my network interfaces?"
But even your 12 MHz 286 or 386SX/20 had closed source AMI or Phoenix BIOS firmware on it. The motherboard manufacturer in Taiwan and American Megatrends sure weren't handing out the source code to that. And if you had a video card, or a soundblaster, its drivers loaded in config.sys were also closed binary blobs.