From reading the source of makeBinWriter
i think it should be possible to use a path to my source.
I have the following in my nixos configuration
environment.systemPackages = [
(pkgs.writers.writeHaskellBin "scan" { libraries = [ pkgs.haskellPackages.turtle ]; } ./scripts/Scan.hs)
];
When i try to build it i got
> sudo nixos-rebuild test --flake ~/nixosconfiguration
error: builder for '/nix/store/a0rvpac36snk75172fbpam9qz4445g0d-scan.drv' failed with exit code 1;
last 2 log lines:
> [1 of 1] Compiling Scan ( tmp.hs, tmp.o )
> mv: cannot stat 'tmp': No such file or directory
For full logs, run 'nix log /nix/store/a0rvpac36snk75172fbpam9qz4445g0d-scan.drv'.
When I write the source directly as a string it works. For examle
environment.systemPackages = [
(pkgs.writers.writeHaskellBin "scan" { libraries = [ pkgs.haskellPackages.turtle ]; } ''
main = print "hi"
''
)
];