Issues with installer for macOS v0.4-0
Hey guys, thanks for making this a thing. I've just downloaded your installer and while it's writing to the sd card I thought I'd share some constructive criticism on the installer.
Applications on macOS don't need to be in the /Applications folder so your message
Please run this application as superuser.
In the terminal app, run the following:
sudo /Applications/installer.app/Contents/MacOS/installer
will be incorrect whenever the user runs the application from anywhere else or renames it. The message could be customized with argv[0] but isn't the whole point of a gui installer to avoid using the command line? Asking a user to launch an app using sudo on the command line is likely to be a blocker for many, especially when the path is incorrect. As an alternative, a helper process which takes care of all the tasks requiring elevated privileges is recommended by Apple. Surely you don't need elevation until the writing to card stage?
You're writing hundreds of megabytes of files to /var/root/Library/Application Support/Emteria/Installer/ which will never be cleaned up by most users. That's lost disk space to them now. If you ran as the logged in user and wrote to ~/Library/Caches/Emteria/Installer they could reasonably easily clean it out when they run out of disk space. Alternatively, if you expect your disk images to be updated as frequently as users install them then perhaps the temporary directory would be more suitable. More details on directories available to your app here.
Also, why not name the installer "Emteria Installer.app" instead of the generic "installer.app". The current name prevents it from being found by searching for "emteria" in spotlight, the system wide search.
Ok, so the install is done. I've just tried to click on the "Show log file" button and it failed to show any logs, only bringing TextEdit to the foreground.
Comments
The problem with the "Show log file" button seems to be unrelated to anything from emteria. Double clicking .txt files produced the same effect but is now fixed with a restart of the app.