about summary refs log tree commit diff
path: root/pkgs/development/tools/build-managers
diff options
context:
space:
mode:
authorArnout Engelen <arnout@bzzt.net>2024-05-29 12:02:09 +0200
committerArnout Engelen <arnout@bzzt.net>2024-05-29 12:02:09 +0200
commitdb84e6ce2983352cc7569b351b489a254957a432 (patch)
treec16191edf786898646dbba3b03ee114d5cafc66b /pkgs/development/tools/build-managers
parentbfb7a882678e518398ce9a31a881538679f6f092 (diff)
sbt: add ncurses as propagated build input
`infocmp` from ncurses is used at run time. Without it, in a
pure shell:

```
copying runtime jar...
[info] [launcher] getting org.scala-sbt sbt 1.10.0  (this may take some time)...
[info] [launcher] getting Scala 2.12.19 (for sbt)...
May 29, 2024 9:59:01 AM org.jline.utils.Log logr
WARNING: Unable to retrieve infocmp for type xterm-kitty
java.io.IOException: Cannot run program "infocmp": error=2, No such file or directory
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1170)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1089)
	at org.jline.utils.InfoCmp.getInfoCmp(InfoCmp.java:544)
	at org.jline.terminal.impl.AbstractTerminal.parseInfoCmp(AbstractTerminal.java:207)
	at org.jline.terminal.impl.PosixSysTerminal.<init>(PosixSysTerminal.java:46)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.posixSysTerminal(ExecTerminalProvider.java:100)
	at org.jline.terminal.impl.exec.ExecTerminalProvider.sysTerminal(ExecTerminalProvider.java:66)
	at org.jline.terminal.TerminalBuilder.doBuild(TerminalBuilder.java:428)
	at org.jline.terminal.TerminalBuilder.build(TerminalBuilder.java:362)
	at sbt.internal.util.JLine3$.system(JLine3.scala:64)
	at sbt.internal.util.Terminal$.newConsoleTerminal(Terminal.scala:805)
	at sbt.internal.util.Terminal$.withStreams(Terminal.scala:386)
	at sbt.xMain$.withStreams$1(Main.scala:88)
	at sbt.xMain$.run(Main.scala:123)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at sbt.internal.XMainConfiguration.run(XMainConfiguration.java:59)
	at sbt.xMain.run(Main.scala:47)
	at xsbt.boot.Launch$.$anonfun$run$1(Launch.scala:149)
	at xsbt.boot.Launch$.withContextLoader(Launch.scala:176)
	at xsbt.boot.Launch$.run(Launch.scala:149)
	at xsbt.boot.Launch$.$anonfun$apply$1(Launch.scala:44)
	at xsbt.boot.Launch$.launch(Launch.scala:159)
	at xsbt.boot.Launch$.apply(Launch.scala:44)
	at xsbt.boot.Launch$.apply(Launch.scala:21)
	at xsbt.boot.Boot$.runImpl(Boot.scala:78)
	at xsbt.boot.Boot$.run(Boot.scala:73)
	at xsbt.boot.Boot$.main(Boot.scala:21)
	at xsbt.boot.Boot.main(Boot.scala)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:295)
	at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:225)
	at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1126)
	... 28 more
```
Diffstat (limited to 'pkgs/development/tools/build-managers')
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix6
1 files changed, 6 insertions, 0 deletions
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 3596f94b61de6..7d6f608ad8275 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -4,6 +4,7 @@
 , jre
 , autoPatchelfHook
 , zlib
+, ncurses
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -26,6 +27,11 @@ stdenv.mkDerivation (finalAttrs: {
     zlib
   ];
 
+  propagatedBuildInputs = [
+    # for infocmp
+    ncurses
+  ];
+
   installPhase = ''
     runHook preInstall