The Linux Foundation's promised workaround that will allow Linux to boot on Windows 8 PCs has yet to clear Microsoft's code certification process, although the exact reason for the hold-up remains unclear.
As The Reg reported previously, the Secure Boot feature of the Unified Extensible Firmware Interface (UEFI) found on modern Windows 8 PCs will only allow an OS to boot if its code has been digitally signed with a key obtained from Microsoft.
That's a problem for many Linux distributions, because some lack the resources to purchase a Microsoft key, while others simply refuse to.
To help get around UEFI's restrictions, the Linux Foundation has been developing a signed "pre-bootloader" as a stop-gap measure that will allow Linux distributions to boot, until such time as open source developers can come up with more effective solutions.
For that plan to work, however, the Linux Foundation must first obtain a binary executable of the pre-bootloader that has been properly signed using a Microsoft-supplied key. According to a blog post by the Foundation's James Bottomley, that's proving to be easier said than done.
Each time he has tried to upload the pre-bootloader code to Microsoft's servers to have it signed, Bottomley says, the procedure has failed, and he's not entirely sure why. Emails to Microsoft support haven't yielded much insight.
As near as Bottomley can tell, there's a problem with the key he has been trying to use to sign the software, but the most he's heard from Microsoft has been, "Don't use that file that is incorrectly signed. I will get back to you."
This latest glitch isn't the first roadblock the Linux Foundation's pre-bootloader project has had to circumvent, either. As Bottomley explains, Microsoft hasn't exactly been making it easy for open source projects to access its UEFI tools.
In addition to purchasing a digital key through Verisign, the Linux Foundation had to create a Microsoft sysdev account, which itself involves digitally signing an executable using tools running on a specific Windows platform (though Bottomley was able to find a workaround).
Next, paper contracts had to be signed. What Microsoft sent over passed muster with the Linux Foundation's lawyers, but Bottomley says the "onerous" terms might not be to some developers' liking. For one thing, Microsoft's code-signing procedures exclude software licensed under a whole range of open source licenses; GPLv3, in particular.
Then there was the problem that the entire process of uploading code to be signed assumes developers are running Windows and using Windows-based tools. Even the file upload window required Sliverlight, which ultimately meant there was no way for Bottomley to submit the Linux Foundation's pre-bootloader without loading up Windows 7 in a virtual machine.
Only after Bottomley had completed all of these steps was he able to find out that the code-signing process didn't seem to be working. As of Tuesday, he was still at an impasse.
Microsoft has previously denied that Secure Boot is designed to lock Linux out from Windows 8 PCs, but the open source community's ongoing difficulties with UEFI have led many to doubt that claim. The Linux Foundation's latest woes are only likely to add fuel to the speculation.
"We're still waiting for Microsoft to give the Linux Foundation a validly signed pre-bootloader," Bottomley writes. "When that happens, it will get uploaded to the Linux Foundation website for all to use." ®