Date: Thu, 14 Sep 2017 09:05:08 +0200 From: Mathieu Prevot <mprevot@freebsd.org> To: Russell Haley <russ.haley@gmail.com> Cc: Marcin Cieslak <saper@saper.info>, David Naylor <naylor.b.david@gmail.com>, Geoffrey Huntley <ghuntley@ghuntley.com>, Freebsd-mono <freebsd-mono@freebsd.org> Subject: Re: DotNet Core on FreeBSD Message-ID: <CAP8Xrcuzu382_L0qk1iMN3Yhkci8inZ_dn0Ycq=po2ZVvytYrw@mail.gmail.com> In-Reply-To: <CABx9NuTAxUB6E-6XdtP8d6ZAVsV7eGg-=9JrjWAexTRTfvz2Kg@mail.gmail.com> References: <CABx9NuQVGCnn32pNz2Opbnua8wwuuYjTDJyq3qO0iF%2BkiGfVBg@mail.gmail.com> <nycvar.OFS.7.76.6.1709100805500.3008@z.fncre.vasb> <20170910155228.6545490.82502.31658@gmail.com> <CABx9NuTxcgDfe8oApu%2BsChN3wGfYHC_RNBeakxoh=7sK6_1O=g@mail.gmail.com> <CABx9NuTpxj8g2s1OtNUrg_8g-c3CS9Lph2DcMJarmxi%2Bbzf51g@mail.gmail.com> <CABx9NuR59a_11QfpNRt1GkFKy-KFm1WmMi1a8Bqs1LygdP6Ypw@mail.gmail.com> <CABx9NuTAxUB6E-6XdtP8d6ZAVsV7eGg-=9JrjWAexTRTfvz2Kg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi Russell, I'm in. Can't engage formally as I'm quite loaded with work, but I'm rather familiar with the .NET ecosystem. I can provide dedicated FreeBSD/Linux VMs for nightbuilds, tests, with big bandwidth, and 2-4 cores per VM from E5-2673v3, that I can put in USA/EU/Asia/more. I guess the best would be 2 VMs, one Linux for build, one FreeBSD for test. We might need to have some talk about the most relevant config. My github account uses mprevot@freebsd.org Cheers M 2017-09-14 8:23 GMT+02:00 Russell Haley <russ.haley@gmail.com>: > Hey Guys, > > So I had a good chat on the phone today with Karel Zikmund and Tomas > Weinfurt from Microsoft. Karel and Tomas work together on the DotNet > Core Team. Tomas was looking for a way to get in deep with the > framework and has past FreeBSD experience, so offered to look into > porting Core 2.0 over to FreeBSD on his own time. Karel has supported > Tomas by advocating for giving him work time to devote to the porting > process.[1] > > Microsoft and the DotNet Core Team have agreed to restart the FreeBSD > porting process and are looking to engage the FreeBSD community > because there is quite a bit of work to be done. There are many moving > parts to building and running DotNet, each with it's own challenge in > the porting process. Just between the three people in the phone call > there were numerous paths identified for others to engage. Because of > the width of the problem, Karel and Tomas have put together the > following outline of the outstanding work: > > 1. Produce binaries in CoreCLR & CoreFX repo targeting FreeBSD =E2=80= =93 > using hacks is fine > * Hard to parallelize, Tomas will work on that > * The build can be mix of builds from other platforms (Mac, > Linux) targeting FreeBSD > * We will need steps to reproduce the build with > FreeBSD-specific bug fixes > 2. Run & stabilize CoreCLR tests (using corerun) > * Tests may be built on another platform > * Goal: Provides basic quality of runtime > 3. Run & stabilize CoreFX tests (using corerun) > * Tests may be built on another platform > * Note this requires xunit. We believe, based on our past > porting experience, once #2 is done, xunit will just work. > * This can be in theory parallelized with #2 =E2=80=93 it may requ= ire > shortcutting xunit (e.g. generate static execution recipe on another > platform) > 4. Full stack build on FreeBSD (using corerun as bootstrapper from > #1-#3) > * We will need all tools (nuget, msbuild, roslyn) to work on > boostrapping .NET Core > 5. Installers (FreeBSD ports) > * First-stage: Using product binaries from nuget feeds > * Second-stage: Build product from source (blocked on build > from source effort) > * Requires FreeBSD community expertise and guidance on design > * Note: We can link FreeBSD packages also from official .NET > Core download pages as community-support packages > 6. Regular build and test runs on FreeBSD > * Goal: Make sure changes in .NET Core repos breaking FreeBSD > are known early > * Design needed > * Requires FreeBSD community expertise and guidance on design > > This list is just a general overview of what's needs to happen. There > is still some incomplete critical path work, but that seems to be > pretty well in hand by Tomas. I asked them to give us whatever they > had and let the people pour over it, so Tomas has agreed to put > together a document. > > The next big step in getting traction is for the community to identify > people who would like to participate in the porting process, and > finding ways to engage. Obviously, you're free to do what you want, > but Karel and Tomas are hoping to direct the work towards specific > goals and try to drive the porting process as fast as possible. I > suggested that teams like the KDE team, or past mono teams seem to > have worked liked that. > > If you'd like to participate/join the fun, please set up a GitHub > account and send a 'me too' email with the username or email address. > I'll send an invite for the FreeBSD-DotNet to that account. I'm not so > sure anymore about using GitHub for FreeBSD stuff, but it's a good > place to congregate. > > Either way, I'm hoping to get a handle on the whole thing again and > try and be productive myself. I'm hoping to talk to David about > spring-boarding off of his Mono 5 work and start a new dotnet-core > port. There are also opportunities to use Mono to kickstart the build > process to get people working with the system. > > Thanks guys, I look forward to hearing from you (I hope!). If not, > I'll be keeping people up to date on this mailing list. > > Cheers, > Russ > > [1] My paraphrasing of the situation. I could be totally off base. > > On Sun, Sep 10, 2017 at 10:09 PM, Russell Haley <russ.haley@gmail.com> > wrote: > > Does anyone here run Unity? Unity is a very popular gaming engine that > > is cross platform and provides a C# API. > > > > https://en.wikipedia.org/wiki/Unity_(game_engine) > > > > https://mellinoe.wordpress.com/2017/01/18/net-core-game-engine/ > > > > Kaboom! (Head exploded again. This is getting messy) > > > > Russ > > > > On Sun, Sep 10, 2017 at 10:03 PM, Russell Haley <russ.haley@gmail.com> > wrote: > >> On Sun, Sep 10, 2017 at 9:59 PM, Russell Haley <russ.haley@gmail.com> > wrote: > >>> Hey Marcin, > >>> > >>> So I just read the Contribution License Agreement and I didn't see > >>> anything untoward. > >>> > >>> https://cla2.dotnetfoundation.org/cladoc/net-foundation- > contribution-license-agreement.pdf > >>> > >>> Just remember all these projects are MIT, Apache 2 or CC license. I > >>> think bringing this code into FreeBSD is a bonkers good idea. (Kaboom= ! > >>> lolz). Especially if you think about how much proprietary code is out > >>> there on Windows that people will want to protect. A FreeNAS style > >>> management console would make FreeBSD a particularly attractive offer > >>> over GPL licensed OSes for companies to create appliance style system= s > >>> (physical or virtual, a-la FreeNAS). Jails become yet another great > >>> way to distribute proprietary code. > >>> > >>> Sony PS 3&4, NetApp and now Nintendo Switch are all great examples of > >>> what you can do with FreeBSD in a proprietary system. > >>> > >>> Dot Net Core also opens up Arm based systems on FreeBSD in some ways > >>> because it's specifically designed do be modular. I don't think Mono > >>> has built on Arm for a long time and the performance of Mono has been > >>> a problem of note. > >>> > >>> Russ > >> > >> I'm trying to perform due diligence because I want to throw some time > >> into this. Avoiding GPL and other encumbering licenses is important to > >> me. I had to know myself so I made this list of licenses: > >> > >> https://github.com/dotnet/csharplang - Microsoft > >> https://github.com/dotnet/cli - > >> https://www.microsoft.com/net/dotnet_library_license.htm > >> > >> https://github.com/dotnet/source-build - MIT > >> https://github.com/dotnet/core-setup - MIT > >> https://github.com/dotnet/corefx - MIT > >> https://github.com/dotnet/coreclr - MIT > >> https://github.com/dotnet/sdk - MIT > >> https://github.com/dotnet/dotnet-docker - MIT > >> https://github.com/dotnet/standard - MIT > >> https://github.com/dotnet/sdk - MIT > >> https://github.com/dotnet/netcorecli-fsc - MIT > >> > >> https://github.com/nuget/home - A2 > >> https://github.com/aspnet/home - A2 > >> https://github.com/dotnet/roslyn - A2 > >> > >> https://github.com/aspnet/Docs - CC > >> https://github.com/dotnet/docs - CC > >> > >> Russ > >> > >>> On Sun, Sep 10, 2017 at 8:52 AM, Russell Haley <russ.haley@gmail.com> > wrote: > >>>> Sorry for the top post, > >>>> > >>>> Marcin, can you expand on your thoughts about the contributor > license? This has been one of the concerns of mine=E2=80=8E (part of the > pedanticism). I didn't get a chance to read the doc itself yet. > >>>> > >>>> Russ > >>>> > >>>> Sent from my BlackBerry 10 smartphone on the Virgin Mobile network. > >>>> Original Message > >>>> From: Marcin Cieslak > >>>> Sent: Sunday, September 10, 2017 1:13 AM > >>>> To: Russell Haley > >>>> Cc: David Naylor; Geoffrey Huntley; Freebsd-mono; > freebsd-advocacy@freebsd.org; freebsd-ports@freebsd.org > >>>> Subject: Re: DotNet Core on FreeBSD > >>>> > >>>> On Sun, 10 Sep 2017, Russell Haley wrote: > >>>> > >>>>> Hey guys, > >>>>> > >>>>> I am talking to Karel and Tomas at Microsoft's DotNet Core Team abo= ut > >>>>> putting together a "proposal" for community involvement, which will > be > >>>>> followed by more information on this list. Most of the talk has bee= n > >>>>> me blowing air and being pedantic about nothing (I get excited and > >>>>> type alot). > >>>> > >>>> I was tinkering around FreeBSD support when dotnet core was first > published. > >>>> Stack unwinding for exceptions was very hacky at the time, and there > were > >>>> some unnecessary discussions about how to implement some FreeBSD > sepecific > >>>> sysctl's. I got a bit frustrated with that (a whole porting effort i= s > about > >>>> coercing Unix to offer part of Win32 APIs). > >>>> > >>>> It was somewhat running on FreeBSD natively back then, haven't check= ed > >>>> recently. > >>>> > >>>> I have also decided not to sign their bad contributor agreement > >>>> and some of the sysctl code I decided to put in mono instead :) > >>>> > >>>> Marcin > >>>> saper on github >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAP8Xrcuzu382_L0qk1iMN3Yhkci8inZ_dn0Ycq=po2ZVvytYrw>