Por que o gsettings não funciona no tmux?

3

Estou tentando alterar várias configurações do dconf com gsettings. Por alguma razão, só funciona quando não estou no tmux. Eu posso ler as configurações dentro do tmux, mas configurá-las falha silenciosamente - parece funcionar, mas a mudança não tem efeito e a leitura novamente retorna o valor antigo. Fora do tmux, tudo funciona perfeitamente - eu posso ler e configurar propriedades do dconf, e elas entram em vigor imediatamente. Aqui está a parte relevante do meu bashrc:

# start tmux
if command -v tmux >/dev/null; then
    [[ ! $TERM =~ screen ]] && [ -z "$TMUX" ] && exec tmux
    # in tmux, we need to handle dbus specially
    export $(dbus-launch)
fi

Não tenho problemas para iniciar aplicativos baseados em X a partir do tmux. Para referência, tenho o Ubuntu 15.04 e estou usando o Gnome Shell em vez do Unity.

    
por zrneely 14.12.2015 / 21:22

1 resposta

2

Consegui resolver este problema (finalmente, e com a ajuda de algumas pessoas no canal #linux freenode irc). Um problema foi que o lançamento do dbus não afeta o tmux; isso afeta apenas a casca externa. A solução foi colocar isso no meu .tmux.conf:

set-option -g -a update-environment " DBUS_SESSION_BUS_ADDRESS"

que permitia que aplicativos iniciados dentro do tmux acessassem o barramento do sistema.

    
por zrneely 28.03.2016 / 19:43