Commit graph

26 commits

Author SHA1 Message Date
Ivv 8168651288
Merge pull request #178446 from zimbatm/dotnet-nugetdeps
buildDotnetModule: allow passing derivations to nugetDeps
2022-06-21 16:00:48 +02:00
zimbatm ba2f31b6db
buildDotnetModule: allow passing derivations to nugetDeps
Sometimes I want to pass a different implementation of `mkNugetDeps`.
For example in private repos, it can be handy to use `__noChroot = true`
and bypass the deps.nix generation altogether. Or some Nuget packages
ship with ELF binaries that need to be patched, and that's best done as
soon as possible.
2022-06-21 15:45:52 +02:00
mdarocha 5b7f8d2e43 buildDotnetModule: use src-only in fetch-deps script 2022-06-21 12:13:39 +02:00
mdarocha c277bd86a5 make-nuget-deps: support an url field in fetchNuGet
If a package source defines an url field, use it instead of the
url based on package name and version, which assumes nuget.org as
a package source.
2022-06-21 12:13:37 +02:00
mdarocha 2f07f578b2 nuget-to-nix: support custom package sources
If the package was not restored from nuget.org (determinted by checking
the "source" field of ".nupkg.metadata"), query the custom source for
the package endpoint (the way nuget api is built we can't determine it
without an API query) and build a custom package URL to save in the
generated deps file.
2022-06-21 12:13:34 +02:00
Ivar Scholten 6107bbf553 buildDotnetModule: change default dotnet SDK and runtime to version 6
dotnet 5 is now EOL.
2022-05-16 21:39:35 +02:00
ash lea e530db9baf buildDotnetModule: fix args 2022-05-10 11:40:59 -04:00
Ivar Scholten e3c19ba57e nuget-to-nix: include required dependencies 2022-04-30 18:24:48 -07:00
= f0af1ef49c buildDotnetModule: properly inherit arguments from drv
Previously buildDotnetModule did not properly inherit some arguments from
derivations, take for example this expression:

dotnetFlags = [
    "--runtime linux-x64"
];

It would error out as follows: "MSBUILD : error MSB1001: Unknown switch.".
Setting the same flag from bash would work fine. This fixes that, all
arguments should now be properly interpreted :)
2022-04-30 18:24:48 -07:00
= f69de108fb buildDotnetModule: nuget source cleanup
There used to be a few issues with the way we generate the nuget source:

* The derivation generated for the deps would have "nuget-deps" in them twice:
  /nix/store/...-foo-1.0-nuget-deps-nuget-deps

* We always tried to generate the dependencies for "projectReferences"
  even when it wasn't set, causing a warning.

This fixes those issues :)
2022-04-30 18:24:48 -07:00
= 38419c65ce mkNugetSource: fix bug in metadata generation
This improves the metadata generation, previously it would take any
"license" entry from the nuspec, and tried to match it to an spdx ID from
"lib.licenses".

Sometimes however licenses are provided in plain-text, which we
obviously cannot cleanly resolve. This resulted in in useless information
("LICENSE.txt") being written to "meta.license".
2022-04-30 18:24:48 -07:00
Ivar Scholten a42c074db0 nuget-to-nix: add missing comma
This fixes a regression introduced in bbcb7d3d34ca5ea620740184eea9db61e4b84f8b
2022-03-14 18:59:53 +01:00
Sandro 5416f2ecd5
Merge pull request #162771 from IvarWithoutBones/dotnet-setuphook 2022-03-11 16:25:34 +01:00
Åsmund Østvold d8012c5458
nuget-to-nix: deterministic sorting of output list (#162187)
It is the package list output that should be sorted. The current
output sequence is not logical because '.' is sorted in front of '/'
with input sorting and is not deterministic for different language
environments.

To get a deterministic and logical sorting in environments with
different language configured, env "LC_ALL=C" is set and the produced
strings is that is sorted. To get alphabetic sorting and not a pure
ASCII value sort "--ignore-case" is added.
2022-03-10 09:11:04 +01:00
Ivar Scholten d786405336 treewide: don't unnecessary set dotnet-related env vars
These have been moved to a setup hook in dotnet-{sdk,runtime,aspnetcore}
2022-03-04 14:41:18 +01:00
Lassulus 1d8b13942b
Merge pull request #161504 from moinessim/writefsharp
writers: Add writeFSharp and makeFSharpWriter functions to writers
2022-03-02 20:05:18 +01:00
Jörg Thalheim b750049336
Revert "buildDotnetModule: enable RestoreUseStaticGraphEvaluation"
This reverts commit 0b1856bfe3.

This broke one of our clients projects where a local libary could no
longer be found. Since there is no easy way to disable it's better
if this flag is set per project using `dotnetRestoreFlags`.
2022-03-02 11:14:26 +01:00
Moises Nessim 81998d0a1d Add writeFSharp and makeFSharpWriter functions to writers
Uses fsharp interactive (fsi) to run fsx script

Expose mkNugetSource and mkNugetDeps functions

Use them in writers.writeFSharp and buildDotnetModule

Add tests
2022-02-28 17:40:43 -05:00
IvarWithoutBones 0b1856bfe3 buildDotnetModule: enable RestoreUseStaticGraphEvaluation
This should speed up restore times a fair bit, especially for bigger
projects. Roslyn also has it enabled by default already, so I don't
expect any breakages from it.
2022-02-12 02:15:13 +01:00
IvarWithoutBones 992b656c9e buildDotnetModule: use setup hooks
This is a much more flexible way of doing things, as we can adopt and
reuse these hooks for various tasks. Syntax highlighting now also works
way better for me, which is a nice bonus :)
2022-02-12 02:15:13 +01:00
Ivar Scholten a204ca0902 dotnetenv: move to pkgs/build-support/dotnet 2022-02-11 16:43:20 +01:00
Ivar Scholten b2b54c980a dotnetbuildhelpers: move to pkgs/build-support/dotnet 2022-02-11 16:42:07 +01:00
Ivar Scholten 1878b7b1b2 nuget-to-nix: move to pkgs/build-support/dotnet 2022-02-11 16:38:12 +01:00
Ivar Scholten b2b29319de fetchNuGet: move to pkgs/build-support/dotnet 2022-02-11 16:37:26 +01:00
Ivar Scholten 8910db35ea buildDotnetPackage: move to pkgs/build-support/dotnet 2022-02-11 16:36:41 +01:00
Ivar Scholten d31d2aab0e buildDotnetModule: move to pkgs/build-support/dotnet 2022-02-11 16:35:53 +01:00