-
Notifications
You must be signed in to change notification settings - Fork 252
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Differentiating Between Win10 and Nano Server #7375
Comments
It sounds like you need to have runtime behavior be different for these two different environments. Different runtimes won't solve this for you, even if NuGet did know the difference between different SKUs of the same version of windows. (As you'd want one set of binaries to be installed by your app/component) |
Closing per @rrelyea's comment. |
So are you suggesting that I write some extra logic in the part that loads the native binaries to make sure I select the correct binary? This is a lot of extra work to get around the fact that Nano is a different windows. Technically, UWP is windows, yet they have their own RID. Now, sure, UWP is a different model, but if I had that feature, then I don't have to worry about loads of code selecting a dll based on the runtime. Literally, the R in RID is Runtime, so the dotnet run or dotnet publish should support this. UWP is the perfect example actually, it is a win10, but has nativeassets of uap: This was suggested on my other issue (#5042) and this feature was added to solve this very problem (#2782) Can we not add nano? EDIT Well actually, the nano is not a TFM so technically it is wrong. But maybe the spec for the case of I think that my issue actually points out the real problem here. The original issue for this feature was to distinguish UWP from Win10, but in actual fact, they were wanting to distinguish between a feature-set or subset of features of a platform. So the base is win10, and then we have UWP or Nano. This will bring in a feature support for macOS and the new Catalyst feature - running iOS apps on macOS. @migueldeicaza How are we doing this right now? Depending on the base of this feature, we may want to do something in the lines of:
What this issue is really trying to do is distinguish between different variants of Win10. This might be further extended (as in the Catalyst example) to other operating systems that have variants with 90% features, but require distinct features. |
I am not too sure if this is the correct place, but this is not really a problem - more a question.
I am building a library (SkiaSharp) that does some font subsetting using the FONTSUB.DLL. This may be an old feature that I shouldn't use, but right now I am (I will investigate this further).
As a result, SkiaSharp cannot be used on Nano Server due to this dll being unavailable. I can compile another binary that does not have this feature, but I still have to support the full set.
My question is this, if I have 2 binaries - one for Nano Server and one for Windows Server, but I can't see a way to distinguish between the two platforms. Right now I am using the
runtimes
folder in the NuGet - currently thewin7-x64
sub-dir. Is there a nanoserver variant?The original discussion is here with missing assemblies and entry points: mono/SkiaSharp#591 (comment)
The text was updated successfully, but these errors were encountered: