Um cliente X precisa necessariamente de um gerenciador de janelas para funcionar? Um cliente X pode trabalhar apenas com o servidor X?
Se um cliente X não tem uma janela , se ele pode funcionar precisa de um gerenciador de janelas?
Se um cliente X pode funcionar sem um gerenciador de janelas, o cliente X não possui necessariamente uma janela?
Obrigado.
x11
window-manager
Tim
fonte
fonte
Respostas:
Não. Aplicativos bem escritos não precisam de um gerenciador de janelas.
Mas alguns aplicativos quebrados "modernos" não funcionarão bem sem um gerenciador de janelas (por exemplo, firefox e suas sugestões de barra de endereço que não serão exibidas [1]).
Muitos outros aplicativos secundários não apenas assumem um gerenciador de janelas, mas para adicionar insulto à lesão, um clique para focar no gerenciador de janelas. Por exemplo, costumava ser que qualquer aplicativo java simplesmente roubava o foco na inicialização.
Se você deseja testar, instale
Xephyr
(um servidor X11 "aninhado"), execute-oXephyr :1
e inicie seus aplicativosDISPLAY=:1
no ambiente.[1] a "barra impressionante" do Firefox não abre o painel de sugestões quando digitado ou clicado no botão de histórico, a menos que haja um gerenciador de janelas em execução. O menu de ocultação automática também não funciona.
fonte
Não, você não precisa estar executando um gerenciador de janelas para permitir que um cliente X funcione. Alguns sistemas oferecem uma opção para executar apenas um terminal na inicialização e, a partir disso, você pode iniciar programas adicionais, incluindo gerenciadores de janelas. Algumas configurações de quiosque que desejam que apenas um aplicativo seja executado não precisam de um gerenciador de janelas. Algumas implementações do X para microsoft windows evitam um gerenciador de janelas X, permitindo que o sistema operacional gerencie as janelas.
Sem um gerenciador de janelas, você normalmente precisa especificar a geometria dos programas para não colocar tudo no canto superior esquerdo.
No X, o gerenciador de janelas é apenas outro cliente X. Isso era incomum na época, mas tornava fácil ter gerenciadores de janelas diferentes.
Outra maneira de analisar a questão é observar que você pode alterar os gerenciadores de janelas em tempo real, para que haja um tempo entre o primeiro parar e o segundo a assumir o controle, mas, como todos os seus aplicativos não falham, eles devem poder trabalhar sem.
fonte
Um gerenciador de janelas é uma conveniência para os usuários.
Nos bons tempos antigos, eu costumava ter um
~/.Xclients
arquivo que dizia:Este arquivo seria executado quando iniciei o X com
startx
. Quando esse script terminar, o servidor X será desligado.Observe a última linha:
exec .../fvwm
. Esta é a linha que iniciou meu gerenciador de janelas (fvwm). Todos os pedidos anteriores (xv
,xterm
,xclock
,xscreensaver
) estavam em execução antes de o gerenciador de janelas começou. Como a chamada parafvwm
era a última linha e não foi colocada em segundo plano, isso significava que, quandofvwm
terminado, X seria encerrado.A inicialização do X ainda tinha um padrão de "retorno" ... se não houvesse arquivos de configuração, inicie o X com uma única
xterm
execução. Fechamento quexterm
encerraria a sessão X.fonte
fvwm
(e executá-loexec
), garantimos que ainda existe um processo que impede o servidor X de desligar. Ao fazer esse último processo,fvwm
permite que um item de menu "sair" funcione conforme o esperado.fvwm-1.24r
foi o meu gerenciador de janelas favorito :-)Para adicionar a outras respostas, desenvolvi e liberei um aplicativo de código aberto que funciona sem um gerenciador de janelas (o que significa que você pode iniciá-lo diretamente no xinitrc). Existem algumas etapas extras que o aplicativo deve executar nesse caso, além de gerenciar a geometria e a ordem Z de seus diálogos, mas isso é totalmente gerenciável.
fonte
Há muitas boas respostas detalhadas aqui. Aqui está a resposta simples e clara.
Não: mas sem se você se esforçar para gerenciar suas janelas (mover, redimensionar, abaixar, elevar etc.). Existem outras ferramentas que podem fazer isso, se você precisar.
sim
Se não tiver janelas, não deve haver desvantagem em não ter gerenciador de janelas.
Não: pode ter janelas.
Tente isso.
depois no novo
xterm
tipofvwm
.Você pode precisar instalar
vncserver
,ssvnc
efvwm
, em primeiro lugar.fonte
Sim, um cliente X pode trabalhar apenas com o servidor X. Como exemplo, eu dou minhas máquinas virtuais seu próprio console virtual no host, assim.
O comando "startx" inicia o servidor Xorg X nos displays: 4 e: 5 com apenas virt-viewer como cliente.
"CentOS" e "Windows" são os nomes que dei às minhas máquinas virtuais quando as instalei. A opção -k para o virt-viewer torna a tela cheia com controles mínimos, de modo que cada máquina virtual parece ser a proprietária da máquina até pressionar CTRL-ALT-Fn para alternar para um console virtual diferente.
Obviamente, o CentOS está executando um gerenciador de exibição e gerenciador de janelas dentro da máquina virtual, mas isso não tem conexão com o servidor X em execução no host.
fonte