I am trying to create a derivation that will build Sabaki. It is an electron app, and I am able to make a nix shell environment in which I can build and run the application just fine. However, that does not make for an installable application.
Actually doing this is going to require two steps:
- Build the application
- Patch the resulting executable for
ld
and then wrap it withmakeWrapper
to include all of the additional libraries that an Electron/GTK app needs to run.
But I’m stuck on part one.
I have used node2nix to generate these files:
I had to modify node-packages.nix line 2109 to point to github, because node2nix generally creates that line pointing to the local directory.
According to the documentation, I should be able to run nix-build composition.nix -A package
to do a full build of the application and then get a resulting binary in result/bin
. However, when I run it, the only thing I get is the result
directory pointing to a directory containing only the source for Sabaki and a build of all of the dependencies, but not the application itself.
I can’t see any sort of npm run build
command in node-env.nix
.
What do I need to do to invoke the build process? I think if I can get the executable I can take it from there, but this step has me stumped.