Bash one-liner para exibir TODOS os 'gsettings' em Zenity ou Yad

1

Recentemente, tenho encontrado muitas perguntas em Ask Ubuntu , que exigem a alteração de gsettings para resolver o problema. Por exemplo, esta pergunta: Como evitar o desligamento quando uma das duas baterias está vazia? faz referência a um gsettings que é novo para eu:

org.gnome.settings-daemon.plugins.power use-time-for-policy false

Em vez de tropeçar em gsettings aleatoriamente a cada semana (ou pelo menos ao que parece), há uma frase de efeito para despejar todo o atual gsettings a zenity (ou yad ) para que eu possa rolar tudo?

    
por WinEunuuchs2Unix 18.03.2018 / 18:08

1 resposta

1

Yad trabalha mas não Zenity (ainda)

Eu tentei fazer isso com zenity , mas não consegui descobrir. Consegui fazê-lo funcionar com yad , mas depois de alguns dias de relógio tive de recorrer a grupos do Google para obter ajuda dos especialistas em yad. Eles consertaram meu código bash de uma linha em 12 horas!

Se você não tiver o yad instalado, precisará usar:

sudo apt install yad

yad permite classificar a lista por qualquer coluna em ordem crescente / decrescente. Você pode pegar a barra de rolagem para mover rapidamente para cima e para baixo na lista. As teclas Up / Down, PgUp , PgDn , Início e End navegam como esperado.

O código bash de uma linha

Aqui está o código bash one-liner que você pode copiar e colar em sua janela de terminal:

gsettings list-recursively | sed 's/  */\n/;s/  */\n/;s/\&/\&/g' | yad --list --title "gsettings" --item-seperator='\n' --width=1800 --height=800 --wrap-width=600 --column=Group --column=Key --column=Setting --no-markup

Isso é para uma tela de 1080p, em que a tela tem 1920 pixels de largura. Se sua tela é menor, reduza o tamanho desses argumentos:

--width=1800 --height=800 --wrap-width=600

Saída de amostra

Quando a caixa de rolagem yad é aberta I:

  • Clicou no cabeçalho da coluna Group para classificar por grupo. Caso contrário, o pedido é aleatório, pois gsettings list-recursively envia o banco de dados.
  • Scrolled down org.gnome.settings-daemon.plugins.power section.
  • Notei um gsettings que nunca vi antes, mas que poderia me ajudar a resolver os problemas de suspensão que encontrei (conforme destacado na captura de tela abaixo)

Oone-linersepagaimediatamente

Aquiestáonovogsettingsqueeudescobri:

$ gsettings get org.gnome.settings-daemon.plugins.power lid-close-suspend-with-external-monitor false

O gsettings contradiz uma configuração de systemd que tenho:

$ cat /etc/systemd/logind.conf | grep -i lidswitchdock | grep -vF "#"
HandleLidSwitchDocked=suspend

dconf-editor um aplicativo GUI completo

Há também dconf-editor uma GUI completa que você pode usar: O que é o dconf, qual é a sua função e como usá-lo?

Para resumir o link, instale-o usando:

sudo apt install dconf-tools

O link inteiro é altamente recomendado para leitura e também cobre gsettings em profundidade.

    
por WinEunuuchs2Unix 18.03.2018 / 18:08