Ctrl-Alt-t abre o terminal raiz em vez do terminal normal

5

Eu instalei o Terminator e fiz dele o meu terminal padrão com solução , mas agora Ctrl - Alt - T abre o Terminator como um terminal de raiz. Como faço para abrir o Terminator como um terminal normal?

    
por adamconkey 14.12.2014 / 02:33

2 respostas

6

O que acontece?

TL; DR # 1 : basicamente, você gera x-terminal-emulator e o Unity pesquisa qualquer coisa que tenha x-terminal-emulator em seu arquivo de atalho.

  1. Você pressiona Ctrl + Alt + T , que gera x-terminal-emulator . No sistema Debian Alternatives, x-terminal-emulator é um link simbólico para qualquer aplicativo de emulador de terminal que você queira usar.
  2. Os mecanismos do
  3. Unity pesquisam a lista de arquivos "atalhos" em /usr/share/applications . Ele encontra o arquivo gksu.desktop , que possui Exec=gksu /usr/bin/x-terminal-emulator line e, em seguida, retira a linha Name=Root Terminal . Esse Root Terminal é então exibido no painel da Unity

Por que a mesma coisa não acontece com o gnome-terminal?

TL; DR # 2: gnome-terminal na verdade é gerada por um script de wrapper, ao qual o atalho padrão está vinculado.

Quando você executa sudo update-alternatives --config x-terminal-emulator , você recebe opções, mas nenhuma delas é /usr/bin/gnome-terminal . Em vez disso, você tem /usr/bin/gnome-terminal.wrapper , que é um script em perl que configura gnome-terminal primeiro! Se você ler esse script, no final ele terá a seguinte linha:

exec('gnome-terminal',@args);

A chamada exec , em seguida, gera /usr/bin/gnome-terminal , como aplicativo separado. A unidade novamente pesquisa o diretório /usr/share/applications/ e encontra o arquivo gnome-terminal.desktop , que tem Name=Terminal linha, e mostra no iniciador.

O que pode ser feito?

TL; DR # 3: reatribui o atalho de teclado, usa um wrapper personalizado ou cria um arquivo .desktop personalizado. Eu recomendo o .desktop way.

A maneira mais fácil é reatribuir o atalho. Use gsettings para isso

 gsettings set org.gnome.desktop.default-applications.terminal exec 'sakura'

Mas isso ainda não resolve a peculiaridade do traço da Unity. Minha solução preferida é criar o .desktop file /usr/share/applications/x-terminal-emulator.desktop personalizado com o seguinte conteúdo

[Desktop Entry]
Name=MY CUSTOM TERMINAL
Encoding=UTF-8
Exec=/usr/bin/x-terminal-emulator
Icon=gksu-root-terminal
StartupNotify=true
Terminal=false
Type=Application
Categories=GTK;Utility;TerminalEmulator;

Dessa forma, você não precisa alterar nada, mas o Unity exibirá MY CUSTOM NAME no inicializador.

Terceira maneira, se você está se sentindo aventureiro é escrever um script wrapper, algo assim:

   #!/bin/sh
   exec /path/to/terminal-emulator ${1+"$@"}

Depois, você pode adicioná-lo como uma das opções no sistema de alternativas usando

sudo update-alternatives   --install /path/to/wrapper name /path/to/wrapper priority 

Nota lateral: a prioridade é um inteiro, como 10.

Mais informações

por Sergiy Kolodyazhnyy 09.01.2016 / 18:07
3

Eu tentei o seguinte link: link .

E execute o seguinte comando e funcionou para mim:

gsettings set org.gnome.desktop.default-applications.terminal exec 'terminator'

Boa sorte !!

    
por nakulkumar 09.01.2016 / 15:47