Drecera de teclat per a la VPN del Mac: Shortcuts contra Automator
Tant Shortcuts com Automator lliguen una VPN del Mac a una drecera de teclat. Compara on viu cada tecla, què et demana i què cal comprovar quan no passa res.
Una sola pulsació n’hi ha prou per engegar una VPN del Mac, i hi ha dues maneres natives d’Apple de lligar-la. Shortcuts dona a cada drecera la seva pròpia combinació de tecles i una entrada a la barra de menús. Automator et dona una Quick Action la tecla de la qual assignes a Configuració del Sistema, fora del mateix flux de treball. Les dues vies envien la mateixa sol·licitud al mateix servei de connexió, així que les diferències que compten són on viu l’enllaç, quines portes de permís travesses i què inspecciones quan la tecla sembla no fer res.
Tot el que segueix pressuposa un servei VPN de sistema existent que apareix a scutil --nc list. Si el teu proveïdor distribueix un client de tercers la connexió del qual no hi apareix mai, cap de les dues eines no el pot controlar mitjançant scutil, i el que necessites és l’acció pròpia d’aquest proveïdor.
Les dues vies criden el mateix servei
Comença per la llista, no per l’aplicació. scutil --nc list mostra cada servei desat amb el seu estat i el seu nom de visualització exacte, i aquesta és la cadena que has de posar entre cometes a l’ordre:
/usr/sbin/scutil --nc start "Office VPN"Aquesta línia és una sol·licitud d’activació. Torna tan aviat com la sol·licitud s’accepta; no espera un segon factor, no informa que el DNS privat està definit ni confirma que el servidor de fitxers respongui. Tracta-la com el mateix clic que faries al menú, sense el menú.
Tampoc no hi ha cap commutador a scutil. Accions separades per connectar i desconnectar són més fàcils de raonar que una tecla que inverteix l’estat, perquè una inversió premuda durant un handshake pot aturar una connexió que mai no va acabar de pujar. Si vols una sola tecla, ramifica sobre la sortida de scutil --nc status "Office VPN" i decideix explícitament; no alternis a cegues.
Shortcuts: una tecla per acció, més superfície de permisos
Crea una drecera local a Shortcuts i posa-li el nom de la tasca, per exemple Connect Office VPN.
Afegeix Run Shell Script i enganxa la sol·licitud d’engegada, amb el nom del servei escrit literalment en lloc de pres del porta-retalls o del text seleccionat.
Executa-la una vegada des de l’editor en la teva pròpia sessió iniciada i completa el flux d’autenticació normal, de manera que el sistema enregistri l’aprovació que necessita.
Obre els detalls de la drecera i lliga una combinació amb Add Keyboard Shortcut. Apple documenta aquest enllaç al seu manual d’ús de Shortcuts; les combinacions que el sistema ja reserva no es poden prendre.
L’enllaç viatja amb la drecera, així que una acció també pot seure a la barra de menús o al Dock sense feina extra. El preu és un segon permís: Shortcuts no executarà cap script de shell fins que la scriptabilitat estigui permesa a les seves preferències, i en un Mac gestionat aquest paràmetre pot estar bloquejat per política. Permet-ho per a dreceres que hagis escrit o llegit, no per a un fitxer importat amb contingut poc clar.
La sincronització és l’altra trampa. Una drecera copiada d’un altre Mac encara porta el nom de servei literal d’aquell Mac. En una màquina on el servei té un altre nom, la tecla s’activa, el script acaba i res no et diu per què.
Automator: menys peces mòbils, una tecla que has de buscar
A Automator tria Quick Action, ajusta el flux perquè no rebi cap entrada en cap aplicació i afegeix Run Shell Script amb la mateixa ordre, shell
/bin/zsh.Desa’l amb un nom que reconeguessis en una llista, perquè és aquest nom el que buscaràs més tard.
Obre Configuració del Sistema, després Teclat, després Dreceres de teclat, després Serveis. Troba el flux, marca’l si no ho està i enregistra una combinació.
El flux s’invoca com a servei, així que la tecla viu a la taula de serveis i depèn del nom del flux. Si més tard reanomenes el flux desat, hauries de tornar a obrir aquest panell per confirmar que l’assignació ha sobreviscut. La drecera de servei és global, cosa que és còmoda fins que xoca amb una combinació que una altra aplicació vol.
El que guanyes és un artefacte més petit i una sol·licitud de permís menys: un fitxer de flux corrent, cap element propi a la barra de menús, cap commutador de scriptabilitat de què discutir. El que perds és la trobabilitat, perquè l’acció només apareix a la llista Serveis després que el flux s’hagi desat i el sistema l’hagi vist una vegada.
On divergeixen quan la tecla no fa res
| Symptom | Shortcuts route | Automator route |
|---|---|---|
| Key fires, nothing connects | Service name mismatch; re-read scutil --nc list | Same name mismatch inside the shell action |
| Key never fires anywhere | Binding collides with a reserved or app-level combination | Service entry unticked in Keyboard Shortcuts, or renamed |
| An authorization dialog appears every time | Prompt comes from the VPN type, not from Shortcuts | Same prompt, same cause; the script runs as you |
| Connects, no reachable resource | Readiness not checked after the request | Identical gap, identical fix |
| Works only inside one app | Rare; check where the shortcut is made available | Workflow set to receive input from a specific app |
La taula és torta a propòsit: en dues de les seves cinc files la solució és realment diferent. La majoria de pulsacions fallides es redueixen al mateix parell de falles, un nom que no coincideix amb el servei desat i una sol·licitud presa per una connexió acabada, i canviar d’eina no cura cap de les dues.
Les dues vies també es neguen a desar credencials. Una combinació de tecles no pot convertir un inici de sessió interactiu en un de desatès, i enganxar una contrasenya en un script és pitjor idea que escriure-la un cop al dia.
Tria segons aquestes tres condicions
Tria Shortcuts quan vulguis una tecla per acció més accés per la barra de menús, i quan la scriptabilitat ja estigui permesa a la màquina. Tria Automator quan vulguis un sol fitxer per copiar entre Macs i cap commutador extra. Si la teva organització bloqueja la scriptabilitat de Shortcuts, la Quick Action és l’única de les dues que funcionarà sense canviar cap política, i això decideix la pregunta per tu.
Abans de confiar en la tecla, recorre aquesta llista: confirma el servei a scutil --nc list; prem la tecla des d’un arrencada en fred i mira scutil --nc status; obre el recurs per al qual existeix el túnel; i crea una acció de desconnexió separada i clarament anomenada. No posis l’única acció d’aturada en una sessió remota que necessitaries el túnel per assolir.
Pas següent: lliga només Connect, deixa Disconnect sense lligar durant un dia i fixa’t en quantes vegades vas al menú igualment. Això et diu si la pulsació estalvia temps o només amaga l’estat.