Understandably, the ‘linkapps’ command is deprecated since Spotlight does not work well with symlinks or aliases.
It is suggested by homebrew, to use cask for GUI apps, which will copy the .app to /Applications, rather than link.
However this leaves a feature gap.
Cask’s goals are to install an .app as a pre-compiled binary. However there are a number of GUI app formulae with build options, which would require a compilation from source. These formulae cannot be ported to cask in it’s current state.
I’ve come up with a few suggestions to handle GUI apps that have build options.
A) The .app is copied* to /Applications, just as Cask does.
B) Change cask to support compilation.
*The brew manpage says that Homebrew formulae do not build “proper” .app bundles, but I’m not sure why. In my testing, I was able to copy brew built .apps to /Applications and use without issue.