long story, but i have a third-party application (a flash utility from TI) which i’ll need to actually install on macos… but unlike windows and linux (where i was able to simply gather artifacts into a .tar.gz
called out in my build.zig.zon
), it appears the easiest short-term path is to actually provision this utility via its .dmg
installer… macos is quite strict about executables and dynamic libraries downloaded/deflated from unknown sources…
if i regard zig build
as a place to “install” all of my prequisites, then presumably i can handle this (unusual??) use-case… were my user to perform these steps “manually”, they would simply download the .dmg
installer and double-click on the file… [[ this particular application utility has few if any options; and the whole download/install takes well under a minute ]]
at one extreme, i could presumably have my build.zig
simply check (in a well known place) where the app has been installed; if not, i could exit with an “error message” containing the URL from which they should download/install manually… a short gist of a build.zig
handling this situation would be appreciated…
at the other extreme, my build.zig
could actually download the .dmg
itself; or perhaps the installer wrapped in a .tar.gz
that i could reference via build.zig.zon
… however it arrives, simply executing the open path/to/.dmg
command will effectively launch the (interactive) installer…
once i’ve done the install (manually or programmatically), the same simple check described above would presumably happen each time i run zig build
; or should i really install some sort “marker” file in zig-out
(similar to .droppings
produced by make)…
more important, once i “know” the utility has been installed, i really don’t need to retain the .dmg
file… but it’s not obvious how this would mesh with downloading the .dmg
through build.zig.zon
… i suppose i could create a step which just downloads/installs/cleans-up; i can certainly express that in a simple sequence of addSystemCommand
steps…
hopefully this is not a unicorn, but a situation that others might face when requiring third-party apps that must be securely provisioned under macos…
the collective insight of this community’s zig build
mavens would be greatly appreciated