Skip to content

Conversation

@zmitchell
Copy link
Member

@zmitchell zmitchell commented Jun 12, 2025

chore: add failing Go pure build

This build fails because the impure vendoring build cannot be accessed
in the pure build:

quotes-app-go-pure> 00:00:00.002025 + stat /nix/store/sfglcsl9l0hgvlsl5bxr4nqb95ag9q7l-deps-0.0.0
quotes-app-go-pure> 00:00:00.002741 stat: cannot statx '/nix/store/sfglcsl9l0hgvlsl5bxr4nqb95ag9q7l-deps-0.0.0': No such file or directory

fix: make Rust pure build pass

This adds GCC as a runtime dependency for the Rust pure build on Linux.
This makes the build pass, but I don't think the executable should
actually depend on GCC.

feat: ensure pure builds are run by make

Note that this loops over an array of "build modifiers", which is just
a list of strings that get appended to the name of the environment,
which also happens to be the name of the build. That's getting a bit
overloaded, but not a priority at the moment.

This also adds a list of "fixme" builds, which are skipped for now
because they don't work. There's enough in-flight at the moment that I'd
prefer to get the working pure builds in and come back to the problem
builds once the release blockers are out of the way.

feat: add pure build for C++

chore: upgrade packages in C++ example

chore: FIXME pure build failure for JVM

Error message:

quotes-app-jvm-pure> 00:00:00.272661 FAILURE: Build failed with an exception.
quotes-app-jvm-pure> 00:00:00.272706
quotes-app-jvm-pure> 00:00:00.272762 * What went wrong:
quotes-app-jvm-pure> 00:00:00.272851 Gradle could not start your build.
quotes-app-jvm-pure> 00:00:00.272951 > Could not initialize native services.
quotes-app-jvm-pure> 00:00:00.273157    > Failed to load native library 'libnative-platform.dylib' for Mac OS X aarch64.

This appears to be a permissions issue with Gradle trying to get files
outside of the repository:
https://stackoverflow.com/questions/48652914/nix-gradle-dist-failed-to-load-native-library-libnative-platform-so-for-linu

chore: upgrade packages in JVM example

feat: add pure build for ruby example

chore: upgrade packages in ruby example

chore: FIXME runtime failure for python pure build

Error message:

ModuleNotFoundError: No module named 'quotes_app_python'

I also had to modify the hook.on-activate script so that it wouldn't
generate error messages at runtime. FLOX_ENV_CACHE isn't populated in
builds, so Poetry was attempting to create virtual environments under
/poetry/virtualenvs.

chore: upgrade packages in python example

feat: add pure build for php

chore: upgrade packages in php example

feat: add pure build for nodejs

chore: upgrade packages in nodejs example

feat: add pure build for go

chore: upgrade packages in go example

feat: add pure build for rust

chore: upgrade packages in rust example

zmitchell added 19 commits June 11, 2025 18:07
Error message:
```
ModuleNotFoundError: No module named 'quotes_app_python'
```

I also had to modify the `hook.on-activate` script so that it wouldn't
generate error messages at runtime. `FLOX_ENV_CACHE` isn't populated in
builds, so Poetry was attempting to create virtual environments under
`/poetry/virtualenvs`.
Error message:
```
quotes-app-jvm-pure> 00:00:00.272661 FAILURE: Build failed with an exception.
quotes-app-jvm-pure> 00:00:00.272706
quotes-app-jvm-pure> 00:00:00.272762 * What went wrong:
quotes-app-jvm-pure> 00:00:00.272851 Gradle could not start your build.
quotes-app-jvm-pure> 00:00:00.272951 > Could not initialize native services.
quotes-app-jvm-pure> 00:00:00.273157    > Failed to load native library 'libnative-platform.dylib' for Mac OS X aarch64.
```

This appears to be a permissions issue with Gradle trying to get files
outside of the repository:
https://stackoverflow.com/questions/48652914/nix-gradle-dist-failed-to-load-native-library-libnative-platform-so-for-linu
Note that this loops over an array of "build modifiers", which is just
a list of strings that get appended to the name of the environment,
which also happens to be the name of the build. That's getting a bit
overloaded, but not a priority at the moment.

This also adds a list of "fixme" builds, which are skipped for now
because they don't work. There's enough in-flight at the moment that I'd
prefer to get the working pure builds in and come back to the problem
builds once the release blockers are out of the way.
This adds GCC as a runtime dependency for the Rust pure build on Linux.
This makes the build pass, but I don't think the executable should
actually depend on GCC.
This build fails because the impure vendoring build cannot be accessed
in the pure build:

```
quotes-app-go-pure> 00:00:00.002025 + stat /nix/store/sfglcsl9l0hgvlsl5bxr4nqb95ag9q7l-deps-0.0.0
quotes-app-go-pure> 00:00:00.002741 stat: cannot statx '/nix/store/sfglcsl9l0hgvlsl5bxr4nqb95ag9q7l-deps-0.0.0': No such file or directory
```
@zmitchell zmitchell marked this pull request as ready for review June 16, 2025 17:00
@stahnma stahnma merged commit f3f0163 into main Jun 16, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants