System sounds are UI-related sounds like mail notifications or terminal
bells.
Xcode 9.2 doesn't support saving .xib files in Xcode 7 format any more,
so building Background Music now requires Xcode 8 or above.
Also, fix some of the tooltips that would only work if BGMApp was the
foreground app, which it shouldn't be.
-Wno-error tells the compiler not to treat warnings as errors.
Using the option in the one-liner install command in README.md, since it's
mostly used by users rather than developers.
Also, log the options passed to build_and_install.sh in build_and_install.log.
We only unpause the music player, after auto-pausing it, if it's been
paused for longer than some minimum length of time. This commit reduces
that time if the music player hasn't been paused for long.
Link to the project website (GitHub) in the About Background Music
window, and move its code into its own class.
Also, update the copyright notices in the UI and README.
- Clean before installing. (Mostly to get full logs every time.)
- Clearer error messages.
- Better checking for Xcode/xcodebuild.
- Log extra system info.
- A number of minor bug fixes.
In the manual uninstallation instructions, makes the command for
restarting coreaudiod clearer. If the old command had to fallback to
"sudo killall coreaudiod", it wasn't clear to the user that it had
actually succeeded.
- Move files to the trash instead of deleting them, just in case we
accidentally delete the wrong thing.
- Added some fallback variants of launchctl commands for old versions.
- Check the size of files before deleting them, just to be safe.
- Added license/copyright heading.
BGMXPCHelper's install script now creates a user and group for
BGMXPCHelper to run as. This reduces the risk of BGMXPCHelper being used
for privilege escalation.
The "install" action for BGMXPCHelper now checks the owner/permissions
of the installation directory. It also installs BGMXPCHelper's
launchd.plist and "bootstraps" it.