In May 2017, Rich Turner from Microsoft mentioned that a Fedora release would be coming to WSL (https://web.archive.org/web/https://devblogs.microsoft.com/commandline/new-d...). In June 2019, Matthew Miller from Fedora said there was a "blocker [in] the legal agreement for [the Fedora Project] to put the installer in the [Microsoft] store" (https://web.archive.org/web/https://twitter.com/mattdm/status/11409576086538...). I'm unable to find anything on the wiki (https://fedoraproject.org/wiki/Category:Legal) or here in the legal mailing list that explains either the cancellation or the blockers. Normally I'm able to find great explanations regarding legal issues, so this must have slipped through the cracks.
1. What are the legal blockers in the MS App Developer Agreement (https://web.archive.org/web/https://docs.microsoft.com/en-us/legal/windows/a... I noticed some language regarding FOSS that might not be GPL compatible. If that's not the right agreement, which one is and what are its issues? 2. WSL 2 introduced a boilerplate project to connect new distros (http://web.archive.org/web/https://github.com/microsoft/WSL-DistroLauncher). I believe (haven't tested; please correct me if wrong) it can be run only using newer Microsoft FOSS tools under an MIT license. Could this tool be used in an official capacity? If not, what are the blockers? 3. WSL 1 was explicitly not FOSS (http://web.archive.org/web/https://github.com/microsoft/WSL/issues/1). As far as I know, WSL 2 still relies on Hyper-V, so, even hypothetically supposing everything else about WSL 2 is open source, could WSL 2 fall under acceptable licensing criteria? Microsoft discussed some of the tweaks they made if the hypothetical is unrealistic (http://web.archive.org/web/https://devblogs.microsoft.com/commandline/shippi...). 4. Tom Callaway (a Fedora legal liaison w/o notable mutant powers http://web.archive.org/web/https://fedoraproject.org/wiki/User:Spot) provided some excellent suggestions for Microsoft two years ago regarding Microsoft packages being accepted by the Fedora Project (http://web.archive.org/web/https://lists.fedoraproject.org/archives/list/leg...). Are there similar suggestions users can send to Microsoft to champion acceptance?
In doing research to present these questions, I think I have a general idea regarding WSL. However, earlier in the legal thread I linked (http://web.archive.org/web/https://lists.fedoraproject.org/archives/list/leg...), Tom explicitly asks for no idle speculation, so I'd prefer an experienced opinion.
I really appreciate all the hard work that goes into this. As a developer, not a lawyer, this topic can be very esoteric at times. Microsoft has been making an effort to move away from EEE in recent years, so getting some perspective from the Fedora team regarding their efforts would be very useful to FOSS stewards.
Thanks for your time! Have a rad day.
On Sat, May 30, 2020 at 01:12:06PM -0000, CJ Harries wrote:
In doing research to present these questions, I think I have a general idea regarding WSL. However, earlier in the legal thread I linked
Let me check to see what I can share. The main problems were around the indemnification clauses. Fedora doesn't (and can't) do that.
Oh wow! Okay. That definitely covers #1.
That leads to a tangential, more general followup. The dev agreement provides a duty to defend:
https://web.archive.org/web/20200530120950/https://query.prod.cms.rt.microso...
Duty to defend. You will defend, indemnify and hold harmless each Covered Party, as applicable, from and against (including by paying any associated costs, losses, damages or expenses and attorneys' fees) any and all third party claims
All of the trusted FOSS licenses I'm aware of include language removing liability from the author. For example, here's a snippet from ISC:
https://opensource.org/licenses/ISC
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY ... DAMAGES... IN AN ACTION OF CONTRACT... ARISING OUT OF OR IN CONNECTION WITH... THIS SOFTWARE
To me, that seems like a direct contradiction. Is there any precedence for precedence should a conflict arise? The safe route is clearly to avoid any agreements with indemnification, but I am curious if it's swung one way or the other in court.
Also, because I wrapped links in parens without spaces in my original post, some of the longer ones seem to be visually truncated and append the tailing paren on click. I'm very sorry about that. If you click a link and archive says it DNE, remove the tailing paren from the URL.
On Sat, May 30, 2020 at 9:12 AM CJ Harries thecjharries@gmail.com wrote:
- WSL 2 introduced a boilerplate project to connect new distros (http://web.archive.org/web/https://github.com/microsoft/WSL-DistroLauncher). I believe (haven't tested; please correct me if wrong) it can be run only using newer Microsoft FOSS tools under an MIT license. Could this tool be used in an official capacity? If not, what are the blockers?
This boilerplate existed in WSL 1. I've got some work laying around based on some of the work the SUSE folks did to adapt it to build completely from Linux with our MinGW stack, but it's been blocked on Fedora being able to officially support WSL...
On 5/30/20 6:56 PM, Neal Gompa wrote:
On Sat, May 30, 2020 at 9:12 AM CJ Harries thecjharries@gmail.com wrote:
- WSL 2 introduced a boilerplate project to connect new distros (http://web.archive.org/web/https://github.com/microsoft/WSL-DistroLauncher). I believe (haven't tested; please correct me if wrong) it can be run only using newer Microsoft FOSS tools under an MIT license. Could this tool be used in an official capacity? If not, what are the blockers?
This boilerplate existed in WSL 1. I've got some work laying around based on some of the work the SUSE folks did to adapt it to build completely from Linux with our MinGW stack, but it's been blocked on Fedora being able to officially support WSL...
Btw. I had a chance to play with WSL a bit, and few observations:
- WSL2 is not generally granted to everyone at this point (you need or at least needed to opt-in to some early access or Windows Insider Program, which you can't do in various circumstances)
- for WSL1 experiments, this project was really handy, and with little bit of extra work, can be cross-compiled in Fedora: https://github.com/DDoSolitary/LxRunOffline (perhaps it could be part of Fedora try-out medium, either live DVD or a medium generated by hand with a respective tooling, which could, moreover, carry the source image to use as a starting point -- allowing people to experience Fedora without any major disruption to their flow when stuck with Windows and not wanting to fiddle with full-blown virtualization, on their own pace; even graphical part could work over network connection? too bad Xming went proprietary, but still, there is https://x.cygwin.com/)
- unfortunately, despite my effort to set this all up, Fedora is currently rather unusable under WSL1, because of the mmap-related bug in WSL1 code that affects RPM: https://github.com/Microsoft/WSL/issues/3939 -- it is allegedly fixed in Windows Insider Build 18890, but I cannot verify it at this point either, but it could imply fix in the current May 2020 update (version 2004); I think this paid "Fedora Remix for WSL" in Microsoft Store sort of hijacks the standard package distribution so they can inject their own version of RPM/libdb, but for me, it would breach the trust contract to source packages from them, not to speak about possible license infringements (couldn't find their patches, but perhaps, I just didn't try hard enough, or it is all a different story)
Well, one never knows, which neglected uses cases will be in demand the next day, and if it helps to raise awareness about Fedora, I think it's not a bad idea to at least keep this on radar.
My 1 CZK
* CJ Harries:
- What are the legal blockers in the MS App Developer Agreement
(https://web.archive.org/web/https://docs.microsoft.com/en-us/legal/windows/a... I noticed some language regarding FOSS that might not be GPL compatible. If that's not the right agreement, which one is and what are its issues?
Is it necessary to accept this agreement in order to produce an image that can be side-loaded, perhaps with the help of a script?
That should be the first step. And then we need to decide if it is a Fedora release blocker if these images do not work on certain Windows versions. And in my opinion, if these images are indeeded release-blocking, we need to find a way for Fedora developers to debug Windows problems in a straightforward way.
Thanks, Florian