!bxVOQwsVoHhZcmNDGw:nixos.org

Nix + dotnet

120 Members
24 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
14 Aug 2025
@corngood:corngood.comCorngood There's no more csproj bit. I don't think we need to check for multiple files because dotnet itself will just fail 20:17:34
@gggkiller:matrix.orgGGG yeah, but if there's .slnx and .slnf it'll fail, and to not duplicate that logic, wouldn't it be better to just explicitly demand a specific file? 20:18:24
@corngood:corngood.comCorngood I'll add slnx/f there as well. I'd rather not require an explicit file because I feel like if you set up a project where dotnet build works, you should be okay. Along the lines of Makefile. 20:21:08
@gggkiller:matrix.orgGGGthat'll just add more maintenance churn for us though, and usually building the whole solution is the wrong path anyways because for solutions where there are external tools and etc, projects just build the CLI/UI and its dependencies20:21:53
@gggkiller:matrix.orgGGGI have stumbled upon packages in nixpkgs before where people where restoring and building the whole solution unnecessarily when building the csproj for only the CLI/UI would've sufficed20:22:25
@oatmealraisin:matrix.orgoatmealraisin ok, now I'm getting an unrelated error? error NETSDK1152: Found multiple publish output files with the same relative path: /build/bshmhbaaawknnvv0bnrm5sk2zvprrdq3-source/src/WebUI/deps.json, /build/bshmhbaaawknnvv0bnrm5sk2zvprrdq3-source/src/API/deps.json. [/build/bshmhbaaawknnvv0bnrm5sk2zvprrdq3-source/src/API/API.csproj] 20:22:39
@oatmealraisin:matrix.orgoatmealraisin`{ pkgs ? import <nixpkgs> {} }: let Application = import ../Application { pkgs = pkgs; }; DataMatrixGenerator = import ../../utils/DataMatrixGenerator { pkgs = pkgs; }; Infrastrcture = import ../Infrastructure { pkgs = pkgs; }; WebUI = import ../WebUI { pkgs = pkgs; }; in pkgs.buildDotnetModule { pname = "API.csproj"; version = "0.1"; src = ../..; projectFile = "src/API/API.csproj"; buildInputs = [ Application DataMatrixGenerator Infrastrcture WebUI ]; dotnetPackFlags = [ "-p:RuntimeIdentifier=linux-x64" ]; nugetDeps = ./deps.json; packNupkg = false; } `20:24:21
@oatmealraisin:matrix.orgoatmealraisinhow 2 into matrix markdown20:24:31
@oatmealraisin:matrix.orgoatmealraisin *

let
  Application = import ../Application { pkgs = pkgs; };
  DataMatrixGenerator = import ../../utils/DataMatrixGenerator { pkgs = pkgs; };
  Infrastrcture = import ../Infrastructure { pkgs = pkgs; };
  WebUI = import ../WebUI { pkgs = pkgs; };
in
pkgs.buildDotnetModule {
  pname = "API.csproj";
  version = "0.1";

  src = ../..;

  projectFile = "src/API/API.csproj";

  buildInputs = \[
    Application
    DataMatrixGenerator
    Infrastrcture
    WebUI
  \];

  dotnetPackFlags = \[ "-p:RuntimeIdentifier=linux-x64" \];
  nugetDeps = ./deps.json;
  packNupkg = false;
}
20:24:45
@corngood:corngood.comCorngoodI hope maintenance would be on the order of the number of new solution file extensions they add, and we'd still need to check if they're building a solution, so it would only slightly simplify the logic20:25:07

Show newer messages


Back to Room ListRoom Version: 9