Em relação a esta questão:
Executa instâncias verdadeiras de vários processos do gnome-terminal
Eu tenho um item de lançamento em um desktop Gnome cujo comando é este:
/usr/bin/gnome-terminal --disable-factory
No entanto, quando isso é iniciado, ele apenas informa ao existente gnome-terminal
para criar outra janela, como se o argumento não estivesse lá. Se eu lanço vários terminais, há apenas um processo gnome-terminal
.
No shell, se eu executar o comando acima, obtenho uma instância separada; ps -aux | grep gnome-terminal
mostra dois processos.
O arquivo .desktop
exato é assim:
[Desktop Entry]
Name=Gnome Terminal in Separate Process, DAMN IT!
Exec=/usr/bin/gnome-terminal --disable-factory
Terminal=false
Type=Application
Icon=/usr/share/icons/Humanity/apps/48/gnome-window-manager.svg
Categories=Accessories
StartupNotify=false
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-terminal
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Version=3.2.2
X-GNOME-DocPath=gnome-terminal/gnome-terminal.xml
X-Ubuntu-Gettext-Domain=gnome-terminal
Estou vendo a documentação da variável Exec
e ela diz que os argumentos são suportados:
Se eu tentar iniciar este item da área de trabalho, ele apenas informará ao Terminal do Gnome existente. E não é possível fazer isso porque esse processo tem uma pegada de memória virtual inchada, então eu recebo uma caixa de diálogo dizendo There was an error launching the application. Details: Failed to fork (Cannot allocate memory).
Mesmo nessa situação, em um terminal existente, posso facilmente executar /usr/bin/gnome-terminal --disable-factory
para obter uma nova janela de terminal , sem falha do garfo.
Tags gnome-terminal gnome