summary refs log tree commit diff
path: root/pkgs/build-support/dotnet
Commit message (Collapse)AuthorAge
...
* buildDotnetModule: move nugetDeps throw to when its actually neededIvar Scholten2022-09-18
| | | | | | | Previously we had an assert that would complain when nugetDeps wasnt set, which also didnt allow any passthru attributes (like fetch-deps) to be build. That causes a cycle where you need nugetDeps to fetch the nuget deps, but arent able to build the script to do so.
* buildDotnetModule: dont require specifing a projectFileIvar Scholten2022-09-18
| | | | | In a lot of cases dotnet can figure this out by itself, so we can just invoke it without the project argument.
* buildDotnetModule: minor changes to hooksIvar Scholten2022-09-18
| | | | Abide by `set -e` rules and use `local -r` where applicable.
* buildDotnetModule: format with nixpkgs-fmtIvar Scholten2022-09-18
|
* build-dotnet-module/fetch-deps: fixup temp naming when pname has a capital X ↵Cole Helbling2022-09-16
| | | | | | | | | | | | | | | | in it For example, this script doesn't work for `xivlauncher` because its proper `pname` is `XIVLauncher`, and `mktemp` complains about "too few X's": $ mktemp -td "XXXXXX-XIVLauncher-home" mktemp: too few X's in template ‘XXXXXX-XIVLauncher-home’ vs $ mktemp -td "XIVLauncher-home-XXXXXX" /tmp/XIVLauncher-home-EdGMei
* nuget-to-nix: skip local packagesDavid McFarland2022-09-15
|
* make-nuget-deps: use . for version separatorDavid McFarland2022-09-15
| | | | This allows the output to be used as a nuget source.
* Merge pull request #187359 from IvarWithoutBones/dotnetmodule-updatescriptsIvv2022-09-11
|\ | | | | treewide: migrate buildDotnetModule update scripts to use fetch-deps
| * buildDotnetModule: restore for all platforms in fetch-depsIvar Scholten2022-09-11
| | | | | | | | | | | | | | | | This makes buildDotnetModule restore nuget dependencies for the platforms set in meta.platforms. This should help with generating lockfiles for platforms other than the host machine. Co-authored-by: mdarocha <git@mdarocha.pl>
* | dotenv: convert CRLF line endings into LFSandro Jäckel2022-09-11
|/ | | | otherwise git converts the line endings with every rebase on Linux
* build-dotnet-module: Allow specifying the output path of fetch-depsZhaofeng Li2022-08-18
|
* nuget-to-nix: Make exclusion file optionalZhaofeng Li2022-08-18
|
* buildDotnetModule: set fetch-deps utils via PATHEvan Petousis2022-08-18
|
* buildDotnetModule: use coreutils in fetch-depsEvan Petousis2022-08-18
| | | | | | cp on macOS doesn't support the -T flag, which causes the fetch-deps script to fail. Use Nix's coreutils to ensure the script works consistently across all platforms.
* buildDotnetModule: use platform-agnostic cp formatEvan Petousis2022-08-18
| | | | | | cp on macOS doesn't support the -T flag, which causes the fetch-deps script to fail. Appending `/.` to the source argument replicates the same functionality.
* Merge pull request #181512 from mdarocha/dotnet-6-updateIvv2022-08-14
|\ | | | | dotnet-sdk: 6.0.301 -> 6.0.400, refactor to streamline dotnet updates
| * buildDotnetModule: exclude sdk-specific packages in fetch-deps resultmdarocha2022-08-10
| |
| * buildDotnetModule: include sdk-specific packages in nuget sourcemdarocha2022-08-10
| | | | | | | | | | | | | | | | Some packages are defined by the build proccess, and change every time the dotnet-sdk package changes. To avoid having to regenerate every dependant packages dependencies every dotnet update, this moves these packages into the `dotnet-sdk` `passthru` attribute, and includes them every time `buildDotnetModule` is used.
* | buildDotnetModule: fix build for dotnet-sdk versions below 6mdarocha2022-08-03
|/ | | | | | | The --self-contained and --no-self-contained switches were added to the dotnet build command starting with .NET 6. The switch is equivalent to the setting the SelfContained property, so we use the property for backwards compatibility.
* Merge pull request #182273 from mdarocha/dotnet-self-contained-buildSandro2022-07-28
|\ | | | | buildDotnetModule: add option to make a self-contained build
| * buildDotnetModule: add option to make a self-contained buildmdarocha2022-07-26
| |
* | nuget-to-nix: fallback to default URL for directoriesEvgeny Zemtsov2022-07-25
|/ | | | | In some cases `$pkgs_src` can be a path. For example with `FSharp.Core` when it comes with dotnet SDK. In these cases we need to fallback on default URL otherwise curl fails.
* Merge pull request #173889 from IvarWithoutBones/fix/dotnet-crossRick van Schijndel2022-07-16
|\ | | | | dotnet ecosystem: fix cross compilation
| * buildDotnetModule: fix cross compilationIvar Scholten2022-06-20
| |
* | buildDotnetModule: explicitly set UseAppHost to truemdarocha2022-07-13
| | | | | | | | | | On macOS, the native executable is not generated by default on Catalina and above. See https://github.com/dotnet/sdk/issues/10780
* | buildDotnetModule: set LD_LIBRARY_PATH from runtimeDeps in dotnetCheckHookmdarocha2022-07-13
| | | | | | | | Tests should execute in a similar environment to the final app
* | nuget-to-nix: enable default netrcEvgeny Zemtsov2022-07-12
| | | | | | | | Enable default netrc for curl command. Otherwise this doesn't work for private repositories that require authentication.
* | Merge pull request #178446 from zimbatm/dotnet-nugetdepsIvv2022-06-21
|\ \ | | | | | | buildDotnetModule: allow passing derivations to nugetDeps
| * | buildDotnetModule: allow passing derivations to nugetDepszimbatm2022-06-21
| |/ | | | | | | | | | | | | | | 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.
* | buildDotnetModule: use src-only in fetch-deps scriptmdarocha2022-06-21
| |
* | make-nuget-deps: support an url field in fetchNuGetmdarocha2022-06-21
| | | | | | | | | | | | 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.
* | nuget-to-nix: support custom package sourcesmdarocha2022-06-21
|/ | | | | | | | 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.
* buildDotnetModule: change default dotnet SDK and runtime to version 6Ivar Scholten2022-05-16
| | | | dotnet 5 is now EOL.
* buildDotnetModule: fix argsash lea2022-05-10
|
* nuget-to-nix: include required dependenciesIvar Scholten2022-04-30
|
* buildDotnetModule: properly inherit arguments from drv=2022-04-30
| | | | | | | | | | | | | 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 :)
* buildDotnetModule: nuget source cleanup=2022-04-30
| | | | | | | | | | | | 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 :)
* mkNugetSource: fix bug in metadata generation=2022-04-30
| | | | | | | | | | 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".
* nuget-to-nix: add missing commaIvar Scholten2022-03-14
| | | | This fixes a regression introduced in bbcb7d3d34ca5ea620740184eea9db61e4b84f8b
* Merge pull request #162771 from IvarWithoutBones/dotnet-setuphookSandro2022-03-11
|\
| * treewide: don't unnecessary set dotnet-related env varsIvar Scholten2022-03-04
| | | | | | | | These have been moved to a setup hook in dotnet-{sdk,runtime,aspnetcore}
* | nuget-to-nix: deterministic sorting of output list (#162187)Åsmund Østvold2022-03-10
| | | | | | | | | | | | | | | | | | | | | | 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.
* | Merge pull request #161504 from moinessim/writefsharpLassulus2022-03-02
|\ \ | |/ |/| writers: Add writeFSharp and makeFSharpWriter functions to writers
| * Add writeFSharp and makeFSharpWriter functions to writersMoises Nessim2022-02-28
| | | | | | | | | | | | | | | | | | | | Uses fsharp interactive (fsi) to run fsx script Expose mkNugetSource and mkNugetDeps functions Use them in writers.writeFSharp and buildDotnetModule Add tests
* | Revert "buildDotnetModule: enable RestoreUseStaticGraphEvaluation"Jörg Thalheim2022-03-02
|/ | | | | | | | This reverts commit 0b1856bfe3837b4509b180b4e9e51d19a88231ba. 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`.
* buildDotnetModule: enable RestoreUseStaticGraphEvaluationIvarWithoutBones2022-02-12
| | | | | | 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.
* buildDotnetModule: use setup hooksIvarWithoutBones2022-02-12
| | | | | | 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 :)
* dotnetenv: move to pkgs/build-support/dotnetIvar Scholten2022-02-11
|
* dotnetbuildhelpers: move to pkgs/build-support/dotnetIvar Scholten2022-02-11
|
* nuget-to-nix: move to pkgs/build-support/dotnetIvar Scholten2022-02-11
|