Parece que você não pode manipular diretamente a variável env com um script executado pelo lauchctl.
Eu tive que invocar o seguinte comando em um terminal
launchctl setenv PATH $PATH
No OS X, estou tentando criar um script chamado automaticamente por launchctl
.
Este script invocará a aplicação ruby ( jabber-tee
e terminal-notifier
) instalada com gem
.
Ela é meu script python.
#!/usr/bin/env python
import os
os.environ["PATH"] += os.pathsep + "/usr/local/bin"
os.environ["PATH"] += os.pathsep + "/Applications/Xcode.app/Contents/Developer/usr/bin"
os.environ["PATH"] += os.pathsep + "/opt/local/bin"
os.environ["PATH"] += os.pathsep + "/opt/local/sbin"
os.environ["PATH"] += os.pathsep + "/usr/bin"
os.environ["PATH"] += os.pathsep + "/bin"
os.environ["PATH"] += os.pathsep + "/usr/sbin"
os.environ["PATH"] += os.pathsep + "/sbin"
f = open("reminder.txt")
for line in f:
tuple = line.split()
text = tuple[0]
target = tuple[1]
os.system('echo Do not forget me plz! "' + text + '" | /usr/bin/jabber-tee --to ' + target + '@jabber.8d.com')
os.system('/usr/bin/terminal-notifier -message "Reminded ' + target + '" -title "Reminded"')%
Quando estou executando o script, recebi o seguinte erro.
/usr/bin/jabber-tee:4:in 'require': no such file to load -- jabber-tee/cli (LoadError)
from /usr/bin/jabber-tee:4
/usr/bin/terminal-notifier:7:in 'require': no such file to load -- terminal-notifier (LoadError)
from /usr/bin/terminal-notifier:7
Parece que a instrução require
não funciona mais com launchctl
.
Como posso resolver este problema?