Skip to content

Instantly share code, notes, and snippets.

@theevilbit
Created October 10, 2024 12:22
Show Gist options
  • Save theevilbit/1d4508fb5d5dcb9f4c27771dfcdb5a1d to your computer and use it in GitHub Desktop.
Save theevilbit/1d4508fb5d5dcb9f4c27771dfcdb5a1d to your computer and use it in GitHub Desktop.
launchd embedded plist, macOS 15.0
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ShutdownReportTimeout</key>
<integer>2</integer>
<key>SIGTERMTimeout</key>
<integer>5</integer>
<key>CrashOnSIGTERMTimeout</key>
<true/>
<key>ExtensionWatchdog</key>
<true/>
<key>SystemRoots</key>
<array>
<string>/System/Library</string>
<string>/System/iOSSupport/System/Library</string>
<string>/Library/Apple/System/Library</string>
<string>/System/Cryptexes/OS/System/Library</string>
<string>/System/Cryptexes/App/System/Library</string>
<string>/System/Cryptexes/OS/System/iOSSupport/Library</string>
<string>/System/Volumes/Preboot/Cryptexes/OS/System/Library</string>
<string>/System/Volumes/Preboot/Cryptexes/App/System/Library</string>
<string>/System/Volumes/Preboot/Cryptexes/OS/System/iOSSupport/Library</string>
</array>
<key>Bootstrap</key>
<dict>
<key>ChildDefaults</key>
<dict>
<key>PATH</key>
<string>/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
<key>Paths</key>
<array>
<string>/System/Library/LaunchDaemons</string>
<string>/Library/Apple/System/Library/LaunchDaemons</string>
<string>/System/Cryptexes/OS/System/Library/LaunchDaemons</string>
<string>/System/Cryptexes/App/System/Library/LaunchDaemons</string>
<string>/private/var/db/ManagedConfigurationFiles/BackgroundTaskServices/LaunchDaemons</string>
</array>
<key>SafeBootPaths</key>
<array>
<string>/System/Library/LaunchDaemons</string>
<string>/Library/Apple/System/Library/LaunchDaemons</string>
<string>/System/Cryptexes/OS/System/Library/LaunchDaemons</string>
<string>/System/Cryptexes/App/System/Library/LaunchDaemons</string>
</array>
<key>UserPaths</key>
<array>
<string>/System/Library/LaunchAgents</string>
<string>/System/Library/LaunchAngels</string>
<string>/Library/Apple/System/Library/LaunchAgents</string>
<string>/System/Cryptexes/OS/System/Library/LaunchAgents</string>
<string>/System/Cryptexes/App/System/Library/LaunchAgents</string>
<string>/Library/LaunchAgents</string>
<string>/private/var/db/ManagedConfigurationFiles/BackgroundTaskServices/LaunchAgents</string>
</array>
<key>SafeBootUserPaths</key>
<array>
<string>/System/Library/LaunchAgents</string>
<string>/System/Library/LaunchAngels</string>
<string>/Library/Apple/System/Library/LaunchAgents</string>
<string>/System/Cryptexes/OS/System/Library/LaunchAgents</string>
<string>/System/Cryptexes/App/System/Library/LaunchAgents</string>
</array>
</dict>
<key>Boot</key>
<dict>
<key>auearlyboot</key>
<dict>
<key>PerformInBaseSystem</key>
<true/>
<key>Program</key>
<string>/System/Library/PrivateFrameworks/MobileAccessoryUpdater.framework/Support/auearlyboot</string>
<key>ProgramArguments</key>
<array>
<string>auearlyboot</string>
<string>--early-boot</string>
</array>
<key>PerformAfterUserspaceReboot</key>
<true/>
</dict>
<key>dirs_cleaner</key>
<dict>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>RequireRun</key>
<true/>
<key>Program</key>
<string>/usr/libexec/dirs_cleaner</string>
<key>ProgramArguments</key>
<array>
<string>dirs_cleaner</string>
<string>/tmp</string>
<string>/var/run</string>
</array>
</dict>
<key>shutdown-stall</key>
<dict>
<key>ProgramArguments</key>
<array>
<string>spindump</string>
<string>-shutdownstall</string>
<string>2</string>
<string>-timelimit</string>
<string>5</string>
</array>
<key>Program</key>
<string>/usr/sbin/spindump</string>
</dict>
<key>mount-phase-1</key>
<dict>
<key>PerformInBaseSystem</key>
<true/>
<key>SkipInNetBoot</key>
<true/>
<key>AssumeSingleUserSuccess</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>RequireRun</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>mount</string>
<string>-P</string>
<string>1</string>
</array>
<key>Program</key>
<string>/sbin/mount</string>
</dict>
<key>mount-phase-2</key>
<dict>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>SkipInNetBoot</key>
<true/>
<key>AssumeSingleUserSuccess</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>RequireRun</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>mount</string>
<string>-P</string>
<string>2</string>
</array>
<key>Program</key>
<string>/sbin/mount</string>
</dict>
<key>cache-tag</key>
<dict>
<key>ProgramArguments</key>
<array>
<string>BootCacheControl</string>
<string>tag</string>
</array>
<key>Program</key>
<string>/usr/sbin/BootCacheControl</string>
</dict>
<key>cache-start</key>
<dict>
<key>ProgramArguments</key>
<array>
<string>BootCacheControl</string>
<string>start</string>
</array>
<key>Program</key>
<string>/usr/sbin/BootCacheControl</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>PerformInBaseSystem</key>
<true/>
<key>AllowCrash</key>
<true/>
</dict>
<key>tzinit</key>
<dict>
<key>Program</key>
<string>/usr/libexec/tzinit</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>RequireSuccess</key>
<true/>
</dict>
<key>shutdown_installer_tasks</key>
<dict>
<key>Program</key>
<string>/private/var/install/shutdown_installer_tasks</string>
<key>RequireSuccess</key>
<true/>
<key>PerformAfterUserspaceReboot</key>
<true/>
</dict>
<key>deferred_install</key>
<dict>
<key>RebootOnSuccess</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>Program</key>
<string>/private/var/install/deferred_install</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
</dict>
<key>rc.server</key>
<dict>
<key>Program</key>
<string>/etc/rc.server</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>AllowCrash</key>
<true/>
</dict>
<key>rc.cdrom</key>
<dict>
<key>PassLaunchBootModeAsArgument</key>
<true/>
<key>PerformInBaseSystem</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>rc.cdrom</string>
</array>
<key>Program</key>
<string>/etc/rc.cdrom</string>
<key>AllowCrash</key>
<true/>
</dict>
<key>rc.netboot</key>
<dict>
<key>RequireSuccess</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>rc.netboot</string>
<string>init</string>
</array>
<key>Program</key>
<string>/etc/rc.netboot</string>
</dict>
<key>dirhelper</key>
<dict>
<key>ProgramArguments</key>
<array>
<string>dirhelper</string>
<string>-machineBoot</string>
</array>
<key>Program</key>
<string>/usr/libexec/dirhelper</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>RequireSuccess</key>
<true/>
</dict>
<key>fips</key>
<dict>
<key>RequireSuccess</key>
<true/>
<key>RequireRun</key>
<true/>
<key>Program</key>
<string>/usr/libexec/cc_fips_test</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>keystore-init</key>
<dict>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/libexec/applekeystored</string>
<string>--init</string>
</array>
</dict>
<key>data-protection</key>
<dict>
<key>RequireSuccess</key>
<true/>
<key>AssumeSingleUserSuccess</key>
<true/>
<key>PerformInBaseSystem</key>
<true/>
<key>Program</key>
<string>/usr/libexec/init_data_protection</string>
</dict>
<key>fsck-safe</key>
<dict>
<key>SkipInNetBoot</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>fsck</string>
<string>-fy</string>
</array>
<key>Program</key>
<string>/sbin/fsck</string>
</dict>
<key>fsck</key>
<dict>
<key>SkipInNetBoot</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>RequireRun</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>fsck</string>
<string>-qL</string>
<string>-R</string>
<string>1</string>
</array>
<key>Program</key>
<string>/sbin/fsck</string>
</dict>
<key>systemstats</key>
<dict>
<key>Program</key>
<string>/usr/libexec/systemstats_boot</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>AllowCrash</key>
<true/>
</dict>
<key>rootless-init</key>
<dict>
<key>Program</key>
<string>/usr/libexec/rootless-init</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>rootless-init</string>
<string>-b</string>
</array>
<key>AllowCrash</key>
<true/>
</dict>
<key>xpcroleaccountd</key>
<dict>
<key>Program</key>
<string>/usr/libexec/xpcroleaccountd</string>
<key>ProgramArguments</key>
<array>
<string>xpcroleaccountd</string>
<string>-boot</string>
</array>
<key>PerformAfterUserspaceReboot</key>
<true/>
</dict>
<key>rc.trampoline</key>
<dict>
<key>Program</key>
<string>/System/Library/CoreServices/rc.trampoline</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>AllowCrash</key>
<true/>
</dict>
<key>init_featureflags</key>
<dict>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>Program</key>
<string>/usr/libexec/init_featureflags</string>
<key>ProgramArguments</key>
<array>
<string>init_featureflags</string>
<string>--boot</string>
</array>
</dict>
<key>prng_seedctl</key>
<dict>
<key>Program</key>
<string>/usr/libexec/prng_seedctl</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>AllowCrash</key>
<true/>
</dict>
<key>EndpointSecurity</key>
<dict>
<key>ProgramArguments</key>
<array>
<string>/usr/libexec/endpointsecurityd</string>
<string>--init</string>
</array>
<key>RequireSuccess</key>
<true/>
<key>PerformAfterUserspaceReboot</key>
<true/>
</dict>
<key>restore-datapartition</key>
<dict>
<key>PerformInBaseSystem</key>
<true/>
<key>PerformInRestore</key>
<true/>
<key>RequireSuccess</key>
<true/>
<key>Program</key>
<string>/usr/libexec/rc.temporaryDataVolume</string>
</dict>
<key>darwinos-boot-task</key>
<dict>
<key>RequireSuccess</key>
<true/>
<key>Program</key>
<string>/usr/libexec/darwinos-boot-task</string>
</dict>
<key>finish-obliteration</key>
<dict>
<key>RebootOnExitCode</key>
<integer>89</integer>
<key>Program</key>
<string>/usr/libexec/mobile_obliterator</string>
<key>ProgramArguments</key>
<array>
<string>mobile_obliterator</string>
<string>--init</string>
</array>
<key>AllowCrash</key>
<true/>
</dict>
<key>select-boot-mode</key>
<dict>
<key>Block</key>
<string>select-boot-mode</string>
<key>PerformAfterUserspaceReboot</key>
<false/>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>commit-boot-mode</key>
<dict>
<key>Block</key>
<string>commit-boot-mode</string>
<key>PerformAlways</key>
<true/>
</dict>
<key>enable-swap</key>
<dict>
<key>Block</key>
<string>enable-swap</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>PerformInBaseSystem</key>
<false/>
</dict>
<key>sandbox-enable-root-translation</key>
<dict>
<key>Block</key>
<string>sandbox-enable-root-translation</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>finish-demo-restore</key>
<dict>
<key>Program</key>
<string>/Library/Apple/usr/libexec/finish_demo_restore</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>RequireSuccess</key>
<true/>
</dict>
<key>auto-pivot-root</key>
<dict>
<key>Block</key>
<string>auto-pivot-root</string>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>detect-installed-roots</key>
<dict>
<key>Block</key>
<string>detect-installed-roots</string>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>allow-non-platform-code</key>
<dict>
<key>Block</key>
<string>allow-non-platform-code</string>
<key>PerformAfterUserspaceReboot</key>
<true/>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>init-with-data-volume</key>
<dict>
<key>Block</key>
<string>init-with-data-volume</string>
<key>PerformAlways</key>
<true/>
</dict>
<key>workload-properties-init</key>
<dict>
<key>Block</key>
<string>workload-properties-init</string>
</dict>
<key>exclaves-boot</key>
<dict>
<key>PerformInRestore</key>
<true/>
<key>Block</key>
<string>exclaves-boot</string>
<key>PerformInBaseSystem</key>
<true/>
</dict>
<key>init-exclavekit</key>
<dict>
<key>ProgramArguments</key>
<array>
<string>/usr/libexec/init_exclavekit</string>
<string>--init</string>
</array>
</dict>
<key>pre-reboot</key>
<dict>
<key>Program</key>
<string>/usr/libexec/mantashutdownhelper</string>
</dict>
</dict>
</dict>
</plist>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment