Fil-C on Nix

Filnix wiki

mbrock/filnix

nanofil/web/play/swipl.nix

Native SWI-Prolog at the revision swipl-wasm is built from, so the playground's build (the frozen profile, the page's Prolog) and the browser run one SWI. Nixpkgs has 9.2.9; 10.1 is a development release, so it comes from swipl-devel.

λpkgs
pkgs.swi-prolog.overridewithJava = false; withOdbc = false; withPython = false;.overrideAttrs
λold
rec
12version=
"10.1.19"
13src=
pkgs.fetchFromGitHub
14owner=
"SWI-Prolog"
15repo=
"swipl-devel"
16tag=
"V${version}"
17hash=
"sha256-ngiyG61P9WxJfNF+CWIfG+pVTHOlXpOJV9zrlmGzYIY="
18fetchSubmodules=
true

10.x's utf8proc package finds its library with pkg-config.

21nativeBuildInputs=
old.nativeBuildInputs ++ pkgs.pkg-config
22buildInputs=
old.buildInputs ++ pkgs.utf8proc

The 10.1 manual's doc2tex step fails here; the playground needs no manual.

24cmakeFlags=
old.cmakeFlags or [ ] ++ "-DINSTALL_DOCUMENTATION=OFF"