Estoy intentando cargar un flujo de trabajo como un servicio utilizando launchctl en MacOS (Ventura 13.2.1), pero me encuentro con un mensaje de error. El flujo de trabajo se encuentra en /Users/rohan/Library/Services/open-bluetooth-pane.workflow/Contents/Info.plist.
Cuando ejecuto el comando
sudo launchctl load -w /Users/rohan/Library/Services/open-bluetooth-pane.workflow/Contents/Info.plist
Me aparece el mensaje de error "Path had bad ownership/permissions" (Load failed: 122). He comprobado los permisos de las carpetas y archivos implicados, pero todo parece correcto.
He configurado el permiso de la siguiente manera
sudo chown -R rohan:staff /Users/rohan/Library/Services/open-bluetooth-pane.workflow
sudo chmod -R 755 /Users/rohan/Library/Services/open-bluetooth-pane.workflow
Intentando crear un servicio simple usando automator y configurado para ejecutar el applescript que a su vez ejecuta el shell script para abrir el panel Bluetooth.
Aquí está el applescript
on run {input, parameters}
do shell script "/Users/rohan/Documents/bluetooth-settings.sh"
return input
end run
aquí está el shell script
#!/bin/bash
open /System/Library/PreferencePanes/Bluetooth.prefPane
Código dentro de Info.plist
?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>NSServices</key>
<array>
<dict>
<key>NSBackgroundColorName</key>
<string>background</string>
<key>NSIconName</key>
<string>NSActionTemplate</string>
<key>NSMenuItem</key>
<dict>
<key>default</key>
<string>open-bluetooth-pane</string>
</dict>
<key>NSMessage</key>
<string>runWorkflowAsService</string>
</dict>
</array>
</dict>
</plist>