I don't really understand why this works:
- Building with python3 because python2 fails with "error: invalid command
'bdist_wheel'".
- Specifying the path to prompt_toolkit v1 because otherwise the dependency
resolution fails with "ERROR: Could not find a version that satisfies the
requirement prompt-toolkit<2.0.0,>=1.0.0 (from http-prompt==1.0.0) (from
versions: none) ERROR: No matching distribution found for
prompt-toolkit<2.0.0,>=1.0.0 (from http-prompt==1.0.0)".
dune was showing this error when using lwt_ppx:
File "/nix/store/sz4cg32ph84lapgs50xv73s3a0baqq2s-ocaml4.08.1-lwt_ppx-4.2.1/lib/ocaml/4.08.1/site-lib/lwt_ppx/dune-package", line 11, characters 56-75:
11 | (requires compiler-libs.common ocaml-migrate-parsetree ppx_tools_versioned)
^^^^^^^^^^^^^^^^^^^
Error: Library "ppx_tools_versioned" not found.
-> required by library "lwt_ppx" in
/nix/store/sz4cg32ph84lapgs50xv73s3a0baqq2s-ocaml4.08.1-lwt_ppx-4.2.1/lib/ocaml/4.08.1/site-lib/lwt_ppx
-> required by executable wizytests in dune:6
Hint: try: dune external-lib-deps --missing @@default
The CF configure flags broke with the last update but based on
fa9c81f69468098e0dd0ca79ea4d2ef74ec6bc0c and the comment it seems like
these are not necessary anymore.
$ nix-build -A stdenv.__bootPackages.stdenv.__bootPackages.gettext
/nix/store/dii9p8717rjnbzar4kh1q3sxk77dbbkd-gettext-0.20.1
$ nix-store -qR /nix/store/dii9p8717rjnbzar4kh1q3sxk77dbbkd-gettext-0.20.1
/nix/store/2ws9cmamvr7xyvdg4d2nnd1bmr1zjrrq-bootstrap-tools
/nix/store/2yn28axagwyifnvdm8npy2f982jxr986-libiconv-osx-10.12.6
/nix/store/dii9p8717rjnbzar4kh1q3sxk77dbbkd-gettext-0.20.1
Also:
- Add missing dependency on libpulseaudio
- Extract the deb in the build folder and move only the files we're
interested in to $out
- Use the regular builder, but turn off the patchELF hook
- Move dpkg from buildInputs to nativeBuildInputs, since it's only
used at build time