this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix nix setup

+36 -13
+24
gradle/verification-metadata.xml
··· 61 61 <artifact name="flatlaf-3.4.1.module"> 62 62 <sha256 value="e74da47d450b148b99ea7350645e7d7aaea0a305516fe4b402a29e3472eb76e8" origin="Generated by Gradle"/> 63 63 </artifact> 64 + <artifact name="flatlaf-3.4.1.pom"> 65 + <sha256 value="fd3cdf9107fb92f39f921dd5ae336e75d34a422cf79210bb7735f86b57288871" origin="Generated by Gradle"/> 66 + </artifact> 64 67 </component> 65 68 <component group="com.formdev" name="flatlaf-extras" version="3.4.1"> 66 69 <artifact name="flatlaf-extras-3.4.1.jar"> ··· 69 72 <artifact name="flatlaf-extras-3.4.1.module"> 70 73 <sha256 value="ec896af1aa3b1438295cfffbaa89ebd440e59ac3c92427ab89581ffff9a4aea9" origin="Generated by Gradle"/> 71 74 </artifact> 75 + <artifact name="flatlaf-extras-3.4.1.pom"> 76 + <sha256 value="9138b16764fc96710061eb601312a5ac6f9134c231a19684c076c027aafa386f" origin="Generated by Gradle"/> 77 + </artifact> 72 78 </component> 73 79 <component group="com.formdev" name="flatlaf-intellij-themes" version="3.4.1"> 74 80 <artifact name="flatlaf-intellij-themes-3.4.1.jar"> ··· 76 82 </artifact> 77 83 <artifact name="flatlaf-intellij-themes-3.4.1.module"> 78 84 <sha256 value="b6a5ce2b3fb3b804553127ed25dc9b6ef6fd4f935a8390ec561772993df40d67" origin="Generated by Gradle"/> 85 + </artifact> 86 + <artifact name="flatlaf-intellij-themes-3.4.1.pom"> 87 + <sha256 value="091fb40ae322934d42918b62bd4b0b32be3c604fe72f86e788501d44c90a5b00" origin="Generated by Gradle"/> 79 88 </artifact> 80 89 </component> 81 90 <component group="com.github.Dansoftowner" name="jSystemThemeDetector" version="3.6"> ··· 113 122 </artifact> 114 123 <artifact name="kdl4j-v1.0.1.module"> 115 124 <sha256 value="6477f6e682463be5bd48baec84761ce06547a11a3460ba0bcb1a8dcd59520bba" origin="Generated by Gradle"/> 125 + </artifact> 126 + <artifact name="kdl4j-v1.0.1.pom"> 127 + <sha256 value="26a062bf4b721188042268eb472cc1586b58bb9d070547c1fbb9048285960443" origin="Generated by Gradle"/> 116 128 </artifact> 117 129 </component> 118 130 <component group="com.github.oshi" name="oshi-core" version="5.7.1"> ··· 1273 1285 <artifact name="kotlin-stdlib-2.2.20.module"> 1274 1286 <sha256 value="c918f5214d021a72e3767f2756e97d103a526e04f1423da3663efdfb5847db95" origin="Generated by Gradle"/> 1275 1287 </artifact> 1288 + <artifact name="kotlin-stdlib-2.2.20.pom"> 1289 + <sha256 value="4a8b086e6431bcf623637f52b2ff192e1adb913838742e5c0eea70a8dee429c4" origin="Generated by Gradle"/> 1290 + </artifact> 1276 1291 </component> 1277 1292 <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="2.0.0"> 1278 1293 <artifact name="kotlin-stdlib-common-2.0.0.module"> ··· 1403 1418 <artifact name="kotlinx-coroutines-core-1.9.0.module"> 1404 1419 <sha256 value="ad534034a953b4e12cbeeb874c66adf8b1ca14df15fe0d2e6547aa34e86dfeca" origin="Generated by Gradle"/> 1405 1420 </artifact> 1421 + <artifact name="kotlinx-coroutines-core-1.9.0.pom"> 1422 + <sha256 value="770f2793d05e2b027b9c799938ec1d2d4ef141ce5819c780c32c3995cadb0a47" origin="Generated by Gradle"/> 1423 + </artifact> 1406 1424 <artifact name="kotlinx-coroutines-core-metadata-1.9.0.jar"> 1407 1425 <sha256 value="7089c33c145865020760d3dbca5e4634133cc3dd7feb926e830f6de6ede28ac6" origin="Generated by Gradle"/> 1408 1426 </artifact> ··· 1437 1455 </artifact> 1438 1456 <artifact name="kotlinx-coroutines-swing-1.9.0.module"> 1439 1457 <sha256 value="6b04c3d5e7b1a4bfe2813fc3039393c4fe5dda7f03d75d703ca23efb79de79c7" origin="Generated by Gradle"/> 1458 + </artifact> 1459 + <artifact name="kotlinx-coroutines-swing-1.9.0.pom"> 1460 + <sha256 value="c117f82e4acc822ba8059b4a07bb2f3536ae73969f3326d339d8a7604b6764b2" origin="Generated by Gradle"/> 1440 1461 </artifact> 1441 1462 </component> 1442 1463 <component group="org.jetbrains.kotlinx" name="kotlinx-serialization-bom" version="1.7.1"> ··· 1486 1507 <component group="org.jetbrains.kotlinx" name="kotlinx-serialization-json" version="1.7.3"> 1487 1508 <artifact name="kotlinx-serialization-json-1.7.3.module"> 1488 1509 <sha256 value="1cf0228a3588731d6baf3bcbbdb08a322501f70420d50e292ab501e55d8ccf4f" origin="Generated by Gradle"/> 1510 + </artifact> 1511 + <artifact name="kotlinx-serialization-json-1.7.3.pom"> 1512 + <sha256 value="05a89fb6a4afa0a1d4079d5882cad349a17fe08a98bf96b7d00d06a65521dc7d" origin="Generated by Gradle"/> 1489 1513 </artifact> 1490 1514 <artifact name="kotlinx-serialization-json-metadata-1.7.3.jar"> 1491 1515 <sha256 value="aa93fa3c96392cb139593134430dc2d51367f59d553e5e3747ebd8007b263f1b" origin="Generated by Gradle"/>
+1 -1
src/main/java/project/engine/NixEnvironment.java
··· 176 176 private ProcessRunner.ProcessResult runNixCommandRaw(File projectDir, String command, BuildOutputListener listener) throws IOException 177 177 { 178 178 String[] cmd = new String[] { 179 - "nix", "develop", "-c", "bash", "-c", command 179 + "nix", "develop", "--extra-experimental-features", "nix-command flakes", "-c", "bash", "-c", command 180 180 }; 181 181 182 182 return runner.run(cmd, projectDir, listener);
+11 -12
src/main/java/project/engine/WslNixOsEnvironment.java
··· 40 40 validateSystemRequirements(); 41 41 validateWslSupport(); 42 42 registerShutdownHook(); 43 + try { 44 + ensureDistroExists(); 45 + } catch (IOException e) { 46 + throw new BuildException("Failed to ensure WSL distro exists: " + e.getMessage(), e); 47 + } 43 48 } 44 49 45 50 // --- Engine storage and git operations --- ··· 121 126 @Override 122 127 public BuildResult configure(File projectDir, BuildOutputListener listener) throws BuildException, IOException 123 128 { 124 - ensureDistroExists(listener); 125 129 return runWslCommand(projectDir, "./configure", listener); 126 130 } 127 131 128 132 @Override 129 133 public BuildResult build(File projectDir, BuildOutputListener listener) throws BuildException, IOException 130 134 { 131 - ensureDistroExists(listener); 132 135 ProcessRunner.ProcessResult result = runWslCommandRaw(projectDir, "NINJA_STATUS='" + BuildOutputDialog.NINJA_STATUS + "' ./configure && ninja", listener); 133 136 134 137 if (result.wasCancelled()) { ··· 148 151 @Override 149 152 public BuildResult clean(File projectDir, BuildOutputListener listener) throws BuildException, IOException 150 153 { 151 - ensureDistroExists(listener); 152 154 return runWslCommand(projectDir, "./configure --clean", listener); 153 155 } 154 156 ··· 418 420 } 419 421 } 420 422 421 - private void ensureDistroExists(BuildOutputListener listener) throws BuildException, IOException 423 + private void ensureDistroExists() throws BuildException, IOException 422 424 { 423 425 if (isDistroInstalled()) { 424 426 return; 425 427 } 426 428 427 - Logger.log("NixOS-WSL distro not found, installing..."); 428 - listener.onOutput("Installing NixOS-WSL distro (this may take a few minutes)...", false); 429 - 430 429 // Download NixOS-WSL tarball 431 430 Path tempDir = Files.createTempDirectory("starrod-nixos-wsl"); 432 431 Path tarball = tempDir.resolve("nixos-wsl.tar.gz"); 433 432 434 433 try { 435 - listener.onOutput("Downloading NixOS-WSL...", false); 434 + Logger.log("Downloading NixOS-WSL...", util.Priority.MILESTONE); 436 435 downloadFile(NIXOS_WSL_RELEASE_URL, tarball); 437 436 438 437 // Create install directory ··· 440 439 installDir.mkdirs(); 441 440 442 441 // Import the distro 443 - listener.onOutput("Importing WSL distro...", false); 442 + Logger.log("Importing WSL distro...", util.Priority.MILESTONE); 444 443 ProcessBuilder pb = new ProcessBuilder( 445 444 "wsl", "--import", DISTRO_NAME, installDir.getAbsolutePath(), tarball.toString() 446 445 ); ··· 450 449 try (BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()))) { 451 450 String line; 452 451 while ((line = reader.readLine()) != null) { 453 - listener.onOutput(line, false); 452 + Logger.log(line); 454 453 } 455 454 } 456 455 ··· 459 458 throw new BuildException("Failed to import NixOS-WSL distro (exit code " + exitCode + ")"); 460 459 } 461 460 462 - listener.onOutput("NixOS-WSL distro installed successfully!", false); 461 + Logger.log("NixOS-WSL distro installed successfully!", util.Priority.MILESTONE); 463 462 } 464 463 catch (InterruptedException e) { 465 464 Thread.currentThread().interrupt(); ··· 563 562 564 563 String[] cmd = new String[] { 565 564 "wsl", "-d", DISTRO_NAME, "--cd", wslPath, 566 - "nix", "develop", "-c", "bash", "-c", command 565 + "nix", "develop", "--extra-experimental-features", "nix-command flakes", "-c", "bash", "-c", command 567 566 }; 568 567 569 568 return runner.run(cmd, null, listener);