Darling prefix is a container overlayed on top of a base macOS-like root file system located in
$installation_prefix/libexec/darling. The default location is
~/.darling and this can be controlled with the
DPREFIX environment variable, very much like
WINEPREFIX under Wine.
The container uses overlayfs along with a user mount namespace to provide a different idea of
/ for macOS applications.
When you run an executable inside the prefix for the first time (after boot), an init-like process representing the container is started. This init process keeps the root file system mounted. In future, Apple's
launchd will be used for this purpose.
Unlike Wine, Darling doesn't need to update the prefix whenever the Darling installation is updated. There is one caveat, though: since overlayfs caches the contents of underlying file system(s), you may need to terminate the container to see Darling's updated files:
Note that this will terminate all processes running in the container.