Perché non posso usare `launchctl setenv` da` tmux`?


0

Se sto correndo dentro tmuxe provo ad aggiornare una variabile d'ambiente con launchctl, vedo un errore come questo:

$ launchctl setenv GIT_SSH /opt/local/bin/ssh
Not privileged to set domain environment.

Ma funziona benissimo al di fuori di tmux... hai idea del perché, o se c'è qualche soluzione?


1
Come hai lanciato tmux? Se dalla riga di comando, avvia tmux con sudo. Se si tratta di un'app,sudo open /path/to/tmux.app
TheBro21

1
Prova a eseguire tmux con sudo ( sudo tmux) per assegnargli i privilegi di amministratore
TheBro21

Risposte:


2

Eseguire tmux come root non è probabilmente una buona idea. Qualcuno ha creato una soluzione e una spiegazione:

https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard

Dopo aver configurato tmux per utilizzare lo spazio dei nomi reattach-to-user, puoi usare launchctl setenv come te stesso all'interno di tmux.


FWIW, l'ho scoperto diversi anni fa, e non ricordavo di rispondere alla mia domanda ... Ma sì, il tmux-pasteboardpacchetto di MacPorts fa il trucco.
pioto,

0

È necessario eseguirlo da un account privilegiato, ad es

$ sudo launchctl setenv GIT_SSH /opt/local/bin/ssh

E inserisci la tua password quando richiesto. Questo può essere fatto solo da un account amministratore per impostazione predefinita.


Funziona bene senza sudo, quando lo eseguo al di fuori di tmux... Vedrò se sudoè in qualche modo necessario dall'interno tmux, ma quello non sembra davvero il tipo di cosa che vorrei includere nel mio ~/.bashrc...
pioto,

1
Sì, che attraversa sudosembra funzionare, ma io ancora non mi piace ... Per ora, sto solo andando ad avvolgere le chiamate a questo nel mio ~/.bashrcinif [[ -z "$TMUX"]] ; then ...
pioto
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.