Перезапустите приложение, если оно принудительно закрыто

У меня установлено приложение Freedom , чтобы контролировать мою прокрастинацию.

Тем не менее, я могу принудительно выйти из Freedom из Activity Monitor, и оставшаяся часть недели просто проходит, а я ничего не делаю.

Есть ли способ перезапустить это приложение, если оно закрыто?

Ответы (1)

Есть! В поваренной книге на сайте launchd.info есть пример, как оставить Safari открытым. Мы можем изменить это, чтобы удовлетворить ваши потребности в борьбе с прокрастинацией . Внесение изменений в исходную (Safari) версию приводит к:

<?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>KeepAlive</key>
        <true/>
        <key>Label</key>
        <string>local.freedom.keepAlive</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/bin/open</string>
            <string>-W</string>
            <string>/Applications/Freedom.app</string>
        </array>
    </dict>
</plist>

Сохраните это как ~/Library/LaunchAgents/local.freedom.keepAlive.plist. Проверьте последнюю <string>...строку — это где Freedomнаходится на вашем Mac? При необходимости отредактируйте файл и сохраните его повторно. Затем используйте launchctlдля загрузки агента запуска против прокрастинации в launchd:

launchctl load ~/Library/LaunchAgents/local.freedom.keepAlive.plist

Убедитесь, что ваш агент запуска работает с:

launchctl list | grep freedom

И, наконец, попробуйте бросить Freedom. Если все пойдет хорошо, ваша попытка прокрастинации должна быть сорвана.