Como faço para que o xmonad seja executado com a sessão de fallback do GNOME?

7

Eu não estou tendo sorte em fazer o XMonad rodar em 11.10 (x64, nova instalação) com uma sessão de fallback gnome. Eu tentei adaptar as instruções de

link

e

link

mas sem sorte. Se alguém tiver ideias, eu gostaria de ouvi-las.

    
por emchristiansen 20.10.2011 / 00:44

3 respostas

3

Uma solução rápida: faça o login e execute killall metacity & xmonad .

Parece funcionar, embora eu esteja com problemas intermitentes de teclado e mouse que podem ou não estar relacionados a essa solução.

Além disso, dado que isso funciona, você pensaria que eu poderia simplesmente trocar o valor do gerenciador de janelas em /usr/share/gnome-session/sessions/gnome-classic.session, mas quando eu altero o valor, nada acontece .

    
por emchristiansen 20.10.2011 / 20:29
5

Como usar um gerenciador de janelas personalizado com a sessão do GNOME Classic no 11.10

Exemplificado com o gerenciador de janelas do sawfish (desculpe, eu não uso o xmonad).

1. Corrigir gnome-classic.session

Parece haver um bug em gnome-classic.session. Veja como corrigi-lo:

Edite o arquivo do sistema /usr/share/gnome-session/sessions/gnome-classic.session diretamente ou faça uma cópia em seu diretório pessoal:

mkdir ~/.config/gnome-session/sessions
cp -ai /usr/share/gnome-session/sessions/gnome-classic.session ~/.config/gnome-session/sessions/

Faça esta alteração:

 [GNOME Session]
 Name=GNOME Classic
 RequiredComponents=gnome-panel;gnome-settings-daemon;
-RequiredProviders=windowmanager;notifications;
+RequiredProviders=windowmanager;
 DefaultProvider-windowmanager=gnome-wm
 DefaultProvider-notifications=notify-osd
 IsRunnableHelper=/usr/lib/gnome-session/gnome-session-check-accelerated
 FallbackSession=gnome-fallback
 DesktopName=GNOME

2.1. Alternativa 1: defina WINDOW_MANAGER em ~ / .gnomerc

2.1.a. Crie / edite o ~ / .gnomerc e adicione isto:

export WINDOW_MANAGER=sawfish

Substitua "sawfish" neste exemplo pelo gerenciador de janelas que você deseja usar. Se você fizer login com a sessão "GNOME Classic", receberá o gerenciador de janelas escolhido.

2.1.b. Inicialização mais rápida:

Se você tiver um atraso de 30 segundos no login com a solução acima, o seguinte corrigirá isso (isso pode ser apenas um problema de sawfish).

Crie um script de inicialização, por exemplo ~ / bin / my-gnome-wm:

#!/bin/bash
sawfish &

Torne-o executável:

chmod u+x ~/bin/my-gnome-wm

Altere ~ / .gnomerc para isto:

export WINDOW_MANAGER="$HOME/bin/my-gnome-wm"

2.2. Alternativa 2: use o sawfish.desktop

2.2.a. Edite o gnome-classic.session novamente:

 [GNOME Session]
 Name=GNOME Classic
 RequiredComponents=gnome-panel;gnome-settings-daemon;
 RequiredProviders=windowmanager;
-DefaultProvider-windowmanager=gnome-wm
+DefaultProvider-windowmanager=sawfish
 DefaultProvider-notifications=notify-osd
 IsRunnableHelper=/usr/lib/gnome-session/gnome-session-check-accelerated
 FallbackSession=gnome-fallback
 DesktopName=GNOME

Substitua "sawfish" neste exemplo pelo gerenciador de janelas que você deseja usar. Isso requer que um arquivo como "sawfish.desktop" seja instalado no local correto, por exemplo, /usr/share/applications/sawfish.desktop.

2.2.b. Inicialização mais rápida:

Se você tiver um atraso de 30 segundos no login com a solução acima, o seguinte corrigirá isso (isso pode ser apenas um problema de sawfish).

Edite o arquivo do sistema /usr/share/applications/sawfish.desktop diretamente ou faça uma cópia em seu diretório pessoal:

mkdir ~/.local/share/applications
cp -ai /usr/share/applications/sawfish.desktop ~/.local/share/applications/

Faça esta alteração:

 [Desktop Entry]
 Name=Sawfish
 Name[el]=Ðñéïíüøáñï (Sawfish)

 Type=Application
-Exec=sawfish
+Exec=bash -c 'sawfish&'
 TryExec=sawfish

 Terminal=false
 NoDisplay=true

 X-GNOME-WMName=Sawfish
 X-GNOME-Autostart-Phase=WindowManager
 X-GNOME-Provides=windowmanager
 X-GNOME-Autostart-Notify=true

Notas

Com o DefaultProvider-windowmanager = gnome-wm e sem a configuração de WINDOW_MANAGER no .gnomerc, parece que temos o Unity e o GNOME Classic ao mesmo tempo, um em cima do outro!

Esta entrada em ~ / .xsession-errors provavelmente diz algo sobre por que há um atraso de 30 segundos:

gnome-session[23870]: WARNING: Application 'gnome-wm.desktop' failed to register before timeout

Por que criar o script my-gnome-wm? Porque isso não parece funcionar:

export WINDOW_MANAGER='/usr/bin/sawfish&'

Nem isso:

export WINDOW_MANAGER='bash -c "/usr/bin/sawfish&"'
    
por Håkon A. Hjortland 11.11.2011 / 03:26
1

Para versões mais recentes do Ubuntu (por exemplo, 15.04), este repositório está disponível. Para instalar os arquivos necessários:

sudo add-apt-repository ppa:gekkio/xmonad
sudo apt-get update
sudo apt-get install gnome-session-xmonad

Para o Ubuntu 12.04, ele quase funciona "fora da caixa" - você precisa instalar o painel do gnome manualmente:

  

sudo apt-get instala o gnome-panel

e, em seguida, você pode fazer login usando a sessão "GNOME com Xmonad" na tela de login.

(fonte: link )

    
por Mark 11.08.2012 / 15:45