-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Make it easy for mortals to generate packages.config for an app #4053
Comments
This. So much time lost today because of this. How do I find the latest versions of something or other for nuget? How do I get it to pull the latest versions to be in sync with corefx? boggle |
cc; @ericstj |
After a ton of fumbling, I finally realized the feed is now called dotnet-core, not dotnst-corefx. All the docs are out of date. I found this: https://www.myget.org/gallery/dotnet-core Of course everything requires nuget 3, which is incredibly difficult to find on google (a direct link to the exe). I found all that, updated my packages.config to:
It still doesn't work:
|
The plan over the next month is to start producing true cross platform packages, which can be consumed by dnu to restore linux specific assets. At that point, you'll just author a project.json file for you project, DNU restore and then get everything you need. For folks who are working outside the DNX app model and want to pull artifacts out of the packages (like folks who are using this document to try to build a corerun based environment), I believe that @richlander wrote a tool that walks over the project.lock.json file generated by DNU and yanks all that stuff out, instead of the hellish find magic that I wrote. @richlander can you or @blackdwarf either update this document or just kill these sections and write something that does work? |
@ellismg Great. In the mean time, how do I restore a current package set for a hello world? I picked the latest version and nuget.exe says it can't find them. Should I just restort to downloading things from the build artifacts? |
I think perhaps you should just use DNU? I don't really understand the state that nuget.exe is in when it comes to consuming v3 pacakges, Eric would know more. Anyway, if you have DNU, something like this would work. Write a project.json file with the assemblies you depend on. {
"dependencies": {
"System.Console": "4.0.0-beta-*",
"System.Runtime": "4.0.21-beta-*"
}
} Use
The major issue now is that the location of the assets of the packages is no longer easy to understand, you really need to use the project.lock.json file to figure out where the assets you want are. That's where Rich's tool comes in but I don't know what the status of it is. |
So I tried dnu. Now I have a VM which is looking for System.IO.TextWriter in System.IO.dll instead of mscorlib.dll for some reason. Have we advanced the collective tooling state of dnvm/dnu/dnx/nuget/etc to the point where I'm intelligent enough to build and work on the vm, but too stupid to build hello world? |
Some of the observations in this post are strongly dependent on multiple moving targets. I'm posting this in case it helps anyway. A couple more observations on the (actually not at all hellish) Let's use a modified command to see what's going on:
(N.B. the As of right now, the
Also, if you actually pick through this carefully, you'll find that the current packages (i.e. 4.0.1-rc3-23805) at MyGet are missing
I based those deps on the current latest packages at MyGet dated Feb 5. My whole reason for building Core myself is that I have a couple very specific fixes I would like to implement and test. So I would actually prefer to build all my dependencies and not rely on MyGet/Nuget at all until the packaging all gets sorted out. Thanks. |
Have you gotten a working HelloWorld using locally built dependencies? I'm working through the instructions from building/linux-instructions.md, and I think I have a totally disorganized, wholly terrible set of notes that worked for me. The dependencies were the hardest part, and some of the following list is probably surplus, but it's the ~/coreclr-demo/runtime contents as I have them.
I'm still not sure where the dependency on System.IO.FileSystem.Primitives.dll came in. It's one I didn't find with dotPeek |
Yes, I did have HelloWorld built and running...until a few days ago when I @kferrio https://github.com/kferrio Have you gotten a working HelloWorld using locally built dependencies? I'm working through the instructions from building/linux-instructions.md The dependencies were the hardest part, and some of the following list is corerun — |
@blackdwarf Any update on when a new set of build instructions might be available to get |
@kangaroo @kferrio @dls314 I was able to get
I had to copy over
After that (skipping the copy nuget packages step) I could run I think this works because those nuget packages contain no il -- they just forward to mscorlib. So this just cuts out that step. |
@ellismg includes a pre-build packages.config in his very nice Linux Instructions.
How do mere mortals generate such files?
The text was updated successfully, but these errors were encountered: