«Правильный» метод - создать LaunchAgent для процессов, которые вы хотите запустить при входе в систему, которые могут иметь пользовательский интерфейс и LaunchDaemon для тех, которые должны быть чисто фоновыми процессами.
В вашем установщике поместите ваш plist в правильную папку, либо для пользователя, либо для всех пользователей, либо для системы. Причина, по которой этот метод является лучшим, заключается в том, что вы можете использовать launchd для управления процессом запуска, включая встроенную возможность убедиться, что он продолжает работать даже в случае сбоя или уничтожения пользователем.