Substituindo o desktop por um aplicativo
Definir sessão definida pelo usuário
Primeiro, teremos que definir uma sessão definida pelo usuário que lide com o caso especial quando nenhuma área de trabalho precisar ser carregada. Vamos definir essa sessão criando um arquivo custom.desktop em / usr / share / xsessions / com um conteúdo semelhante a este:
[Desktop Entry]
Name=Custom
Comment=Custom Session to run ~./.xsession
Exec=/home/<username>/.xsession
X-Ubuntu-Gettext-Domain=<gnome-session-3.0>
Isso dirá ao GDM para executar o script .xsession
localizado na HOME do usuário <username>
.
Opcional X-Ubuntu-Gettext-Domain
é necessário para uma tradução correta do idioma caso carreguemos a área de trabalho do Unity / GNOME mais tarde (substitua por gdm
em 10.04).
Faça um script para começar
Este script ~ / .xsession poderia ser tão simples assim:
#! /bin/bash
xterm
logout
Carregar sessão personalizada no login
Se agora definirmos para carregar nossa sessão "Custom" durante o login do usuário na tela do gdm, somente o X-Terminal será iniciado e voltaremos ao gdm na saída. Da próxima vez que fizermos login como usuário, essa configuração será lembrada como padrão.
Executar aplicativo que precisa de gerenciamento do Windows
É claro que ainda não podemos executar um aplicativo que precise de um gerenciador de janelas, como o GNOME. Para fazer isso, substitua o script .xsession por algo como:
#! /bin/bash
gnome-wm &
firefox
logout
Podemos ver que o gerenciador de janelas do GNOME agora está carregado, mas não há elementos da área de trabalho presentes. Isso permite que um aplicativo (por exemplo, firefox aqui) seja iniciado.
Mas tome cuidado com o que você faz: Se minimizarmos o aplicativo na bandeja inexistente, acabaremos com um papel de parede legal. Por isso, é muito importante incluir logout
no final do script para efetuar o logout da sessão após o término do aplicativo. Realmente não há nenhum outro programa em execução para fazer isso por você até que você adicione um ao seu script. Você deliberadamente substituiu sua área de trabalho apenas pelo Firefox (uma má ideia).
É claro que também poderíamos iniciar gnome-desktop
ou gnome-session
(resp. opções) do script, mas isso é o que já fazemos por padrão.