Tup
From the tup manual: "Tup is a file-based build system".
Known Issues
mount does not unmount
Tup can either not find fusermount OR the fusermount that tup finds is not setuid. Github issue: (107516)[1].
pkg-config can not find my packages
When using nix-shell, pkg-config, and tup; pkg-config calls via tup do not find any packages.
You must add export lines to your tupfile that correspond to the variables set by NixOS pkg-config:
export PKG_CONFIG_PATH export PKG_CONFIG_PATH_FOR_TARGET export PKG_CONFIG_FOR_TARGET
You also have to export NIX_PKG_CONFIG* variables, which can change based on platform:
export NIX_PKG_CONFIG_WRAPPER_TARGET_TARGET_x86_64_unknown_linux_gnu
You can verify this by adding : |> pkg-config --list-all > %o |> pkg-list.txt
into your Tupfile and seeing which libraries are available via pkg-config.