about summary refs log tree commit diff
path: root/pkgs/build-support/dotnet
AgeCommit message (Collapse)AuthorFilesLines
2024-08-06buildDotnetModule: add `finalAttrs` supportMatt Sturgeon1-225/+232
Allow users to pass arguments to `buildDotnetModule` in the form: ```nix buildDotnetModule (finalAttrs: { # Args }) ``` Exposing the behaviour of the underlying `mkDerivation` and allowing packages to be defined in a recursive way that works correctly even when the package is overridden, e.g. using `overrideAttrs`. Added some simple test cases that piggyback on the existing `structured-attrs` test.
2024-08-01buildDotnetModule: format with nixfmtMatt Sturgeon1-161/+192
2024-07-31dotnet: use unpacked nuget packagesDavid McFarland10-358/+261
2024-07-30buildDotnetModule: fix typoDavid McFarland1-1/+1
2024-07-30nuget-to-nix: catch errors from process substitutionDavid McFarland1-0/+1
2024-07-30buildDotnetModule: remove nugetDeps from derivation argsDavid McFarland1-2/+4
This allows fetch-deps to work even when the deps file is missing.
2024-07-16dotnet: fix fetchDeps null handlingSmaug1231-2/+2
2024-07-14Merge pull request #326785 from Smaug123/nuget-deterministicDavid McFarland1-9/+29
dotnet: strip signature files from NuGet
2024-07-14dotnet: strip signature files from NuGet packagesSmaug1231-9/+29
2024-07-12buildDotnetModule: split fetch-deps script to new fileSmaug1232-125/+155
This makes the minimal change to put the script in a new file. It does not fix the resulting ShellCheck warnings (which would have been present in the previous version; I've just exposed them).
2024-07-08nuget-to-nix: fix hash generation when resolving multiple sourcesDavid McFarland1-0/+1
Fixes: 2280d5c467ff7d95ce4e1233408eae8fe98ddff1
2024-07-04buildDotNetGlobalTool: add SRI hash supportaleksana1-1/+3
2024-07-04nuget-to-nix: generate SRI hash instead of sha256aleksana1-4/+4
2024-07-04mkNugetDeps: add SRI hash supportaleksana1-2/+5
2024-07-04fetchNuGet: add SRI hash supportaleksana1-2/+6
2024-06-19buildDotnetModule: convert makeWrapperArgs to an arrayIvan Trubach1-3/+10
2024-06-17Merge pull request #313005 from tie/dotnet-crossDavid McFarland8-171/+300
buildDotnetModule: fix structured attributes support
2024-06-09treewide: Remove indefinite article from meta.descriptionAlexis Hildebrandt1-1/+1
nix run nixpkgs#silver-searcher -- -G '\.nix$' -0l 'description.*"[Aa]n?' pkgs \ | xargs -0 nix run nixpkgs#gnused -- -i '' -Ee 's/(description.*")[Aa]n? (.)/\1\U\2/'
2024-05-29buildDotnetModule: fix structured attributes supportIvan Trubach8-171/+300
This change refactors internal hooks used by buildDotnetModule to support derivations with structured attributes. Note that this changes variable names that the internal hooks expect.
2024-05-22buildDotnetModule: remove unnecessary callPackage callsIvan Trubach1-21/+28
This change removes no-op callPackage calls and reformats the file with nixpkgs-fmt.
2024-05-22buildDotnetModule: fix cross-compilation and remove dotnet-test-sdkIvan Trubach2-9/+1
This change fixes cross-compilation for .NET packages (that are not using .sln as project files). See relevant comment in the change list for more details. In addition to that, it removes dotnet-test-sdk that appears to be broken, that is, dotnet --list-sdks does not recognize SDKs from PATH, and when propagated from the check hook it was shadowed by inputs from preceding hooks. Note that dotnet-test-sdk used to work when it was introduced in PR 144062, but PR 155257 probably overlooked this case. However, currently it is not used in Nixpkgs and I think dotnetCorePackages.combinePackages should cover the intended use case for dotnet-test-sdk.
2024-05-20buildDotnetModule: do not run dotnet command using envIvan Trubach4-6/+6
There should be no reason to use env here: 1. In places where it is used to run dotnet with environment variables, the same can be done with shell syntax. For example, `env "FOO=$bar" baz` is equivalent to `FOO="$bar" baz`. 2. Otherwise, it just unnecessarily forces PATH lookup for dotnet command. In addition to that, some dotnet invocations did not use env.
2024-05-04dotnet: fix dotnet executables in darwin sandboxDavid McFarland1-5/+5
This fixes: Could not load ICU data. UErrorCode: 2 We're using a hook instead of a wrapper because various things like to reference the unwrapped dotnet executable.
2024-04-05Merge pull request #295812 from UlyssesZh/fix-nuget-to-nix-trailing-slashWeijia Wang1-1/+5
nuget-to-nix: fix the bug of wrong url in the generated nix file when base url does not have trailing slash
2024-04-02buildDotnetModule: fix handling `executables` with an empty listéclairevoyant1-1/+2
2024-03-14nuget-to-nix: fix the bug of wrong url in the generated nix file when the ↵Ulysses Zhan1-1/+5
package base address of the nuget source does not have a trailing slash
2024-03-06nuget-to-nix: fix error handlingDavid McFarland1-1/+2
2024-03-03mkNugetDeps: provide default for nugetDepsDavid McFarland2-2/+1
2024-03-03nuget-to-nix: skip local sourcesDavid McFarland1-2/+15
2024-01-18Merge pull request #278242 from raphaelr/mknugetsource-remove-ifdWeijia Wang1-27/+17
mkNugetSource: Remove meta.licenses attribute
2024-01-12Merge pull request #251267 from lilyinstarlight/fix/dotnet-installPathRyan Lahfa3-4/+4
buildDotnetModule: actually use installPath
2024-01-02mkNugetSource: Allow passing arbitrary stdenv.mkDerivation attrsRaphael Robatsch1-3/+4
This allows things such as mkNugetSource { name = "foo-nuget-source"; deps = [ ... ]; meta = { hydraPlatforms = [ ]; }; }
2024-01-02mkNugetSource: Remove meta.licenses attributeRaphael Robatsch1-26/+15
- It's useless. The correct attribute name would be `license` and not `licenses`. Meaning setting this never did anything useful. - It used IFD in its implementation, meaning to know what the licenses of a nuget source are, you first had to build that nuget source. This defeats the point of having license checks in the first place. - IFD is not allowed by the nixpkgs CI and build farm anyway.
2023-12-22nuget-to-nix: handle packages with mismatched nuspec caseDavid McFarland1-1/+1
e.g. cake.tool 3.0.0 which uses Cake.Tool.nuspec.
2023-12-15makeNugetSource: symlink files instead of copying themSandro Jäckel1-1/+1
this reduces the closure size of the resulting derivation drastically
2023-12-15makeNugetSource: fix meta.description being overwritten, misc cleanupSandro Jäckel1-7/+11
2023-12-04buildDotnetModule: fix rare error when evaluation of version failsmdarocha1-1/+1
2023-10-17buildDotnetModule: parse version before passing it to dotnetmdarocha2-2/+23
This avoids problems when the Nix version attribute does not fit the format required by .NET
2023-09-30buildDotnetModule: fix running fetch-deps with no nugetDeps defined.mdarocha1-1/+1
This eases the initial setup when creating a package
2023-08-24buildDotnetModule: actually use installPathLily Foster3-4/+4
2023-08-23Merge pull request #249091 from TomaSajt/dotnet-fixOTABI Tomoya2-1/+2
Fix useDotnetFromEnv's DOTNET_ROOT detection
2023-08-14buildDotnetGlobalTool: fix typoTomaSajt1-1/+1
2023-08-08Fix useDotnetFromEnv's DOTNET_ROOT detectionTomaSajt2-1/+2
2023-06-24nuget-to-nix: set nullglobDavid McFarland1-0/+1
This stops nuget-to-nix from failing when there are no packages in the output.
2023-06-24buildDotnetModule: fix indentationDavid McFarland1-8/+8
2023-06-24buildDotnetModule: remove fetch-deps from tool packagesDavid McFarland1-1/+1
This helps if we want to run nixpkgs.*.fetch-deps. Previously e.g. fable.fetch-deps existed, but was broken.
2023-06-24buildDotnetModule: use tmp file for fetch-deps outputDavid McFarland1-2/+4
2023-06-24buildDotnetModule: unset TMPDIR instead of setting it emptyDavid McFarland1-1/+1
This was breaking nix-prefetch-url when running fetch-deps in nix-shell. e.g. $ TMPDIR= nix-prefetch-url foo nix-prefetch-url: src/libutil/util.cc:119: nix::Path nix::canonPath(PathView, bool): Assertion `path != ""' failed. [2] 881198 abort (core dumped)
2023-06-24buildDotnetModule: allow lockFile path to be set in nugetDepsDavid McFarland2-5/+13
This allows fetch-deps to find the lock-file for roslyn.
2023-06-21buildDotnetModule: support native binaries in nuget packagesmdarocha2-0/+31
This helps with ie. crossgen2 building, and packages that use protoc