Napisałem łatkę / narzędzie, które wyłącza domyślną funkcję OS X polegającą na uruchomieniu iTunes po naciśnięciu przycisku odtwarzania. To narzędzie zasadniczo modyfikuje demona zdalnego sterowania ( rcd
) i komentuje polecenie Apple Script, aby uruchomić iTunes. Działa to dobrze do 10.7, ale w wersji 10.8 rcd
ma teraz podpis kodu. Łatka powoduje teraz Exception Type: EXC_CRASH (Code Signature Invalid)
po załataniu pliku wykonywalnego.
Oczywiście sprawdzanie podpisu kodu działa zgodnie z przeznaczeniem, ale zastanawiałem się, czy ktoś ma jakieś pomysły na to, jakie opcje mam. Czy istnieje uzasadniony sposób na wyłączenie tej kontroli na jednym pliku wykonywalnym? Próbowałem włączyć GateKeeper, ale, co zrozumiałe, nie zrobiło tego.
Wszelkie inne sugestie dotyczące wyłączenia przycisku odtwarzania?
źródło
Odpowiedzi:
Mam łatkę do pracy po uruchomieniu
sudo spctl --master-disable
. Nie wiem jednak, czy istnieje jakiś sposób użycia spctl do kierowania tylko na rcd.Zastąpienie podpisu kodu tożsamością ad-hoc
sudo codesign -f -s - /System/Library/CoreServices/rcd.app/
nie wydawało się działać. Edycja: ale jak wspomniano przez user48986, działa, jeśli podasz ścieżkę do pliku wykonywalnego, npsudo codesign -f -s - /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd
.źródło
Aby naprawić podpis na przykład MirrorPro:
źródło