From e94bd64891087198db0c8436fabad9b19b0dd6e9 Mon Sep 17 00:00:00 2001 From: Daylin Morgan Date: Tue, 11 Feb 2025 13:56:27 -0600 Subject: [PATCH] if print-build-logs then print the build logs --- pkgs/oizys/src/oizys/nix.nim | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/pkgs/oizys/src/oizys/nix.nim b/pkgs/oizys/src/oizys/nix.nim index 81ab2dc..621a52f 100644 --- a/pkgs/oizys/src/oizys/nix.nim +++ b/pkgs/oizys/src/oizys/nix.nim @@ -316,11 +316,6 @@ type BuildResult = object duration*: Duration successful*: bool - stdout*: string - stderr*: string - -proc show(br: BuildResult) = - error "\n" & formatStdoutStderr(br.stdout, br.stderr) func formatDuration(d: Duration): string = ## convert duration to: X minutes and Y seconds @@ -336,16 +331,22 @@ proc build(path: string, drv: NixDerivation, rest: seq[string]): BuildResult = var cmd = "nix build" cmd.addArgs path & "^*", "--no-link" cmd.addArgs rest - let (stdout, stderr, buildCode) = runCmdCapt(cmd, {CaptStderr}) + + let (stdout, stderr, buildCode) = + if "-L" in rest or "--print-build-logs" in rest: ("","", runCmd(cmd)) + else: runCmdCapt(cmd, {CaptStderr}) + result.duration = now() - startTime - result.stdout = stdout - result.stderr = stderr + + # result.stdout = stdout + # result.stderr = stderr if buildCode == 0: result.successful = true info "succesfully built: " & splitDrv(path).name else: error "failed to build: " & splitDrv(path).name - show result + error "\n" & formatStdoutStderr(stdout, stderr) + info "-> duration: " & formatDuration(result.duration) func outputsPaths(drv: NixDerivation): seq[string] =