files: 0.752 device: 0.700 graphic: 0.636 network: 0.613 ppc: 0.600 architecture: 0.581 performance: 0.578 kernel: 0.517 semantic: 0.507 permissions: 0.503 mistranslation: 0.502 vnc: 0.499 arm: 0.487 socket: 0.453 debug: 0.445 risc-v: 0.441 register: 0.440 PID: 0.421 VMM: 0.412 i386: 0.396 peripherals: 0.393 TCG: 0.375 user-level: 0.373 KVM: 0.293 boot: 0.288 hypervisor: 0.275 virtual: 0.222 x86: 0.210 assembly: 0.127 Executables should have embedded plist on macOS Description of problem: QEMU binaries on macOS should have an embedded property list (`plist`). The bundle identifier of an application, as well as many other settings, are usually not set programmatically but through an `Info.plist` file found within the application bundle (`.app`) which is a property list (basically a settings file in XML format). When liking a command line binary, you can tell the linker to embed such a property list inside the binary and the system will respect that when loading the binary. Having an embedded `Info.plist` is highly recommended for all macOS applications, even command line tools, as many system features will not work correctly (or are not even possible) unless they have one (not in all places the binary name will work instead of a bundle identifier). All you need to do is writing a [plist file by hand](https://docs.transifex.com/formats/apple-plist) (for a list of available keys, see [Apple's documentation](https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Introduction/Introduction.html)) and then tell the liker to embed it into the binary: ``` -sectcreate __TEXT __info_plist YourPlistFile.plist ``` This makes it far easier to set app specific settings correctly, as in #334 for example. Also things like sudden termination can be disabled completely that way without a single line of code.