4 ms·
TianoCore UEFI FatPkg switches to 2-clause BSD license
- pm215 11y agoThis is (as Laszlo says) critically important for free software virtual machines that want to boot a UEFI BIOS, like ARM architecture ones. Previously even if your VM was free software (like QEMU/KVM), you couldn't ship the BIOS blob with a distro, except in a non-free subsection somewhere. Now the whole VM stack will be completely free software, and it will be straightforward to make it all just work out of the box. (The previous license for the FAT driver was "2-clause BSD but with an extra term forbidding use of the code outside a UEFI implementation". That's obviously not an issue for manufacturers putting UEFI BIOSes into real hardware, but it was a real awkward point for open source VMs, and it's great to see it's been resolved.)
- ashitlerferad 11y agoIt is great for people who want to prove a UEFI Secure Boot setup before going to Microsoft for the keys.
- yuhong 11y agoYea, most of the FAT LFN patents has expired by now.
- brudgers 11y agoA brief overview of Tianocore: https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface#Intel_EFI https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_In...
- cyphar 11y agoYet another piece of free firmware that isn't under the GPLv3. sigh The only reason we can use UEFI laptops is because Microsoft was feeling kind one day. If TianoCore was GPLv3, we could use both ARM and x86 UEFI devices in freedom. I'm sticking with LibreBoot, thanks.
- Sanddancer 11y agoYes, we have a piece of free firmware that can be used by BSD software, CDDL software, Apache licensed software, etc. GPLv3 means that only one group of people can use that software, instead of letting a larger community work on it and contribute to it.
- cyphar 11y agoFUD intensifies First of all, there's no reason you can't use GPLv3 licensed software in any other project. It just means that the collective work has a different license. Sure, some people might have a problem with that, but that's their problem. If the software is good enough for them to use it, it's good enough for them to make some compromises in terms of licensing. The exception to this is the CDDL, which has some issues that have been discussed at length. However, the MPLv2 (which is what people who didn't work at Oracle in the 90s actually use) is compatible with the GPLv3. And as for "only one group of people can use that software", that's just patently wrong. Anyone can use the software, they just have to follow the license requirements. Not to mention that this presupposes that someone is going to do anything but write more firmware using firmware code. It's not a library, it's a piece of software used to boot your bootloader. Okay, it's a FAT driver, but it's written as a UEFI module and would probably require substantial (read: complete) rewriting to work as a kernel module or userland program. IMO you're looking at the problem the wrong way around. The question shouldn't be "how do we pander to people who want to use proprietary-friendly licenses for their software". It should be "how do we ensure that all users of this firmware cannot have their freedom taken away".
- Sanddancer 11y agoThere's no reason...except you have to relicense your entire project. In the same vein, there's no reason the Linux kernel can't mainline ZFS, they just have to relicense the kernel to CDDL. If the software's good enough for them to use it, the software's good enough for them to make compromises in terms of licenses. Second, the CDDL originated with Sun. Oracle wasn't even anywhere near Sun when the CDDL was being written, and the CDDL is not even Oracle's favored free software license. Look at the free software they steward -- Java, Mysql, and Berkeley DB. All of which is either GPL or AGPL with contributor agreements, so they can continue to profit on closed source versions that the community doesn't get. Compare that to Postgres, which is BSD licensed, and doesn't have one monolith that can do anything they want because they have a legal advantage. Yes, you can only write more firmware code with the FAT driver, but as we've seen from the track record of Clang, the BSDs, Postgres, and other liberally licensed software, what really matters in getting changes open isn't the license, but rather the pace of development. Develop fast enough, and people will contribute back, both because it's the right thing to do and because it's a lot of work having to make huge patches every upstream release. Compare that to the situation with GPL-encumbered software like MySQL, where there are still rather key pieces of the stack that can and are held back because it's not in Oracle's best interest to give them to the community. So yes, BSD gives more freedom to everyone. A few bad actors may make a short-sighted decision not to contribute back, but in the end, more people will do good than do bad.