/ etc / X11 / Xsession e LightDM

8

Estou executando o Lubuntu 14.10. Parece que o LighDM chama /etc/X11/Xsessionapenas se solicitado pelo usuário. De fato, não há sombra disso no lightdm-sessioninvólucro.

  • startxlinha de comando (wrapper em torno do xinit para padrões razoáveis) usa ~/.xinitrcse existir, caso contrário, usa /etc/X11/xinit/xinitrc.
  • /etc/X11/xinit/xinitrcfontes /etc/X11/Xsession, que redireciona a saída para .xsession-errors.
  • /etc/X11/Xsessionorigens, ~/.xsessionrcse existir, em seguida, executa ~/.xsessionse executável, origens se não.

O que acontece ao usar o lightdm? Se não for a fonte /etc/X11/Xsession, como poderia redirecionar os erros para o arquivo de erro ~/.xsession-errors(não encontrei nenhuma informação sobre outros scripts /etc/X11/Xsession.d/)?

A página de manual dos documentos Xsession ~/.xsessionrce ~/.xsession. Ele diz que ~/.xsessionrcé apenas para definir variáveis ​​e ~/.xsessioné para executar comandos, mas ~/.xsessioné obtido apenas se eu criar um *.desktoparquivo personalizado /usr/share/xsessions/para ele. Devo criar um /etc/X11/Xsession.d/arquivo personalizado (como 40x11-common_xsessionrcfunciona para ~/.xsessionrc) ou apenas usar ~/.xsessionrcpara adicionar scripts?

Além disso, gostaria de saber como o x-window-manager e o x-session-manager funcionam através de alternativas. Notei que eles parecem funcionar se nenhum ~/.xinitrce ~/.xsessionexistem, e aparentemente eles só funcionam quando rodando startx.

Agradecemos antecipadamente por qualquer resposta.

Giuseppe Di Chiacchio
fonte
A propósito, eu teria outra pergunta. O homem do Ubuntu sugere criar um arquivo * .desktop personalizado em / usr / share / xsessions com a linha Exec = / etc / X11 / Xsession para definir configurações personalizadas em ~ / .xsession. Isso significa, executando outro wrapper após / usr / sbin / lightdm-session, que nesse caso seria / etc / X11 / Xsession; isso resultará na aplicação de tudo em /etc/X11/Xsession.d/ duas vezes. Portanto, não seria melhor criar um script em /etc/X11/Xsession.d/ para fonte ~ / .xsession? Qualquer ajuda apreciada.
Giuseppe Di Chiacchio 24/03
Para usar ~ / .xsession por meio de / usr / sbin / lightdm-session, foi útil criar um novo script em /etc/X11/Xsession.d que chamei de 45x11-common_xsession. Como todas as variáveis ​​estão bem definidas no wrapper, adicionei as seguintes linhas: if [-r "$ USERXSESSION"]; então . "$ USERXSESSION" fi Desta forma, o wrapper irá originar o arquivo ~ / .xsession também, depois de ter originado ~ / .xsessionrc. Espero que isso possa ser útil.
Giuseppe Di Chiacchio 26/03
Se você pode responder parte de sua pergunta, basta criar uma resposta, isso é perfeitamente normal. Os comentários são apenas temporários e podem ser perdidos.
Volker Siegel

Respostas:

0

Este bug

Bug # 1001035 "O lightdm usa um caminho codificado para .xsession-errors, ...": Bugs: pacote lightdm: Ubuntu

afirma que o LightDM tem o caminho para $HOME/.xsession-errorscodificado na fonte. E isso realmente deve ser configurável.

Infelizmente, os gerentes de exibição "modernos" geralmente parecem não se importar /etc/X11muito e reinventam a roda ... mal.
Provavelmente porque é bastante difícil descobrir por que as coisas são do jeito que são. (Tentei. Ainda não sei por que existem tantos arquivos / scripts e quais são todos os seus propósitos.)

Por exemplo, o SDDM não usa .xsession-errorsnada e faz logon em outro local estranho, se houver.


Termo aditivo

A segunda pergunta deve ser realmente separada.
Devido a mim ainda não saber tudo, não posso ajudar com isso.
Mas acho que posso dizer que você provavelmente não deve criar outro arquivo de sessão personalizado.
Talvez a documentação do LightDM o ajude lá…

Sobre a terceira pergunta: A página de manual xinite as páginas de manual associadas (do mesmo pacote de software) explicam isso. Há uma lista de alternativas, algumas em $HOME, outras em /etc, até mesmo em /usr/share/…subdiretórios. Mas acho que, se não houver, algum padrão também é assumido.
Desculpe, provavelmente isso também deve estar separado. Só posto o que sei.

Evi1M4chine
fonte