Como o X começou no Ubuntu?

4

Eu gostaria de saber o processo exato usado pelo Ubuntu (se possível com a localização do arquivo de configuração) para iniciar o X (com lightdm).

Não encontrei nenhuma documentação precisa, detalhada e abrangente sobre esse processo.

Algumas das perguntas que gostaria de detalhar são:

  • Quais scripts e arquivos de configuração são usados (quero dizer, onde estão eles)?
  • Como personalizá-los de maneira limpa?
  • Como o X determina qual placa gráfica (e, portanto, o driver) ele usará (já que xorg.conf parece inútil agora) em computadores com placas integradas e discretas?
  • Como forçar o X a usar um driver específico (para evitar muitas mensagens de log inúteis)?
  • Quais são as relações entre o driver do kernel do Linux e o driver gráfico do xorg?
por beaufils 16.05.2014 / 18:04

1 resposta

2

Comecei a responder (como faço quando começo a responder muitas perguntas sobre a AU) porque queria saber mais. Você fez algumas perguntas bastante decentes sobre como funcionam as coisas que confesso, não tive respostas imediatas. Eu fiz o meu melhor.

Você entenderá o que estou falando quando olhar para man xorg.conf e encontrar coisas assim:

VIDEOADAPTOR SECTION
       Nobody wants to say how this works.  Maybe nobody knows ...

Sério.

O LightDM é iniciado pelo Upstart (o sistema init , iniciado pelo Kernel na inicialização) aqui:

/etc/init/lightdm.conf

Isso alimenta o comando lightdm que lê (informações de assento, etc) de:

/etc/lightdm/lightdm.conf
/etc/lightdm/lightdm.conf.d/*

E, em seguida, inicia o X, que procura as configurações a seguir :

/etc/X11/<cmdline>
/usr/etc/X11/<cmdline>
/etc/X11/$XORGCONFIG
/usr/etc/X11/$XORGCONFIG
/etc/X11/xorg.conf
/etc/xorg.conf
/usr/etc/X11/xorg.conf.<hostname>
/usr/etc/X11/xorg.conf
/usr/lib/X11/xorg.conf.<hostname>
/usr/lib/X11/xorg.conf
/etc/X11/xorg.conf.d/*
/usr/etc/X11/xorg.conf.d/*

Se presente na configuração, é assim que o X selecionaria o layout do driver / monitor / etc ... Se não for, as extensões XRandR mais recentes terão um papel importante na adivinhação e na persistência das configurações do monitor.

Se você não quiser um palpite, você pode forçá-lo em uma direção por:

Mas se você deixar xrandr manipular as coisas, quando você fizer login, a configuração vem de:

~/.config/monitors.xml

Depois que o X inicia, há uma carga de gubbins de sessão (autostarts, etc) que começam que não são particularmente relevantes para o processo gráfico, mas eles provavelmente valem a pena ser mencionados. Mencionado.

Existem dois bits que escapam à explicação correta:

  • A relação entre os drivers do Xorg e do Kernel fez com que eu ficasse completamente zonzo. Eu encontrei um livro muito exaustivo {ve, ng} sobre o assunto [PDF!] Mas não tive a hora de até arranhá-lo.
  • Como o Xorg / XRandr escolhe o driver correto.

Há certamente muito mais brigas automáticas do que costumava ser.

    
por Oli 17.05.2014 / 00:09