Guia de migração para o X modular
1.
Introdução
Por que modular?
Você deve estar pensando, por que aquele pacote xorg-x11 simpático e simples se
transformou em quase 300 separados? E você está justificado em perguntar. =)
Não é uma coisa que o Gentoo está fazendo independentemente dos desenvolvedores
do X.Org; eles estão dividindo os pacotes em lançamentos separados, e nós
estamos seguindo eles.
O raciocínio atrás da divisão e mudança no sistema de construção tem pelo menos
três motivos:
-
O X é muito difícil para atrair novos desenvolvedores, portanto a mudança para
autotools, um sistema com que mais pessoas sentem-se confortáveis, se não
contentes.
-
Junto com esta mudança, dividir o código é possível com autotools, e também
torna mais fácil para desenvolvedores.
-
As coisas estavam desnecessariamente amarradas no passado, e isto tornou a
solução de bugs quase impossível. Para poder lançar consertos, era necessário
reconstruir todo XOrg. Por exemplo, um bug no driver ati poderia ou esperar 6
meses até o próximo lançamento, ou você teria que reconstruir suas fontes para
tê-lo, sem qualquer razão.
2.
Migrando para o X modular
Introdução
Para impedir que pacotes antigos entrem no caminho, nós iremos limpar as sobras
do xorg-x11 antigo antes de instalar o X modular. Isto não é absolutamente
crucial, mas irá garantir uma migração suave.
Primeiro passo: limpe seu X antigo
Listagem de código 2.1: Fazendo back-up do xorg-x11 antigo |
# emerge gentoolkit
# quickpkg xorg-x11
|
Livre-se da instalação monolítica:
Listagem de código 2.2: Desinstalando a instalação monolítica |
# emerge -Ca xorg-x11 virtual/x11
# rm -rf /usr/lib/opengl/xorg-x11
# rm -rf /usr/lib/libGL*
|
Você certamente deve ter uma cópia de backup do xorg-x11 monolítico caso as
coisas dêem totalmente errado.
Os passos seguintes ajudam a limpar os links simbólicos criados por
opengl-update.
Se seu /usr/X11R6 não for um link simbólico para /usr,
apague-o e comece do zero. Mas primeiro, salve uma lista de todos pacotes lá
instalados.
Listagem de código 2.3: Faça uma lista dos pacotes |
# if [[ ! -L /usr/X11R6 ]]; \
then equery belongs /usr/X11R6 > usr-x11r6-packages \
&& rm -rf /usr/X11R6; fi
|
Segundo passo: instalando o X modular
Primeiro, adicione os pacotes necessários a
/etc/portage/package.unmask. Abra
/usr/portage/profiles/package.mask no editor de texto de sua
escolha e copie e cole a lista completa da máscara do X modular para
package.unmask. Faça o mesmo com
/etc/portage/package.keywords se você estiver rodando estável. Se
nada disso fez sentido, leia a seção do manual
sobre máscaras.
Para direct rendering, você deve ativar a opção de USE dri.
Agora, instale a metabuild. Ela irá instalar o servidor e aplicações populares,
dando a você uma implementação de desktop de X funcional:
Listagem de código 2.4: Instalando a metabuild modular |
# emerge xorg-x11
|
Note que esta instalação tenta ser mínima, então coisas como xcursor-themes não
são instaladas por padrão.
A seguir, instale alguns drivers. Isto irá variar dependendo de seu hardware de
entrada e de vídeo, então por favor olhe em
/usr/portage/x11-drivers/. Aqui está um exemplo:
Listagem de código 2.5: Instalando alguns drivers |
# emerge xf86-input-mouse xf86-input-keyboard xf86-video-ati
|
Nota:
Com o X modular instalado, drivers externos como nvidia-glx e wacom bem como
algumas aplicações de vnc podem não funcionar se instalarem coisas em
/usr/lib/modules ao invés de /usr/lib/xorg/modules.
Vários deles terão detecção de X modular no processo de instalação e irão
precisar ser re-instalados depois da instalação do X modular.
|
3.
Avisos/Problemas comuns
'emerge -u world' quer instalar o xorg-x11 6.x
Este problema ocorre porque a árvore ainda não está pronta para dependências
modulares ainda. Você pode ajudar o esforço de porting lendo o Guia de porting para
X modular e abrindo bugs com patches para os mantenedores de cada pacote.
Os mantenedores são listados no metadata.xml no mesmo diretório
que o pacote e o pacote herdstat irá agilizar sua procura.
O que aconteceu com todas opções de USE?
Muitas opções de USE da série do xorg-x11-6.8 sumiram ou foram mudadas no 7.0.
Algumas novas opções de USE apareceram. Aqui está o motivo:
| Opção de USE |
O que acontece no 7.0? |
| 3dfx |
No 7.0, puxa glide-v3 da metabuild do xorg-x11 |
| 3dnow, mmx, sse |
Ativadas por padrão na hora de construção, porque são verificações de runtime |
| bitmap-fonts, truetype-fonts, type1-fonts |
A metabuild do xorg-x11 puxa uma pequena seleção das fontes mais usadas e
necessárias. Você pode instalar outras fontes adicionais de media-fonts/.
|
| cjk |
USE=nls em font-misc-misc e font-sony-misc para obter fontes
japonesas JISX0201. Mais fontes estão em font-jis-misc. Fontes
chinesas estão em font-isas-misc. Fontes coreanas estão em
font-daewoo-misc.
|
| dlloader |
O 7.0 usa dlloader por padrão, e o elfloader não funciona/ |
| doc |
Mudado para app-doc/xorg-docs |
| dmx |
Construído com xorg-server a menos que USE=minimal |
| font-server |
Você pode instalar o xfs manualmente. |
| ipv6 |
Mudado para pacotes individuais que usam a opção. Selecione
globalmente se quiser.
|
| minimal |
Para obter o mesmo efeito, instale só o xorg-server ao invés de xorg-x11.
USE=minimal no xorg-server irá evitar a construção de Xdmx, Xvfb
e Xnest. Se você precisar de algo ainda mais minimalista, veja
x11-base/kdrive.
|
| nls |
No 7.0, USE=nls instala todas versões não-ISO8859-1 das fontes. |
| nocxx |
Ainda não há equivalente no 7.0 |
| opengl |
Nome mudado para "dri," que ativa suporte de direct rendering no
xorg-server e muitos drivers. Estando USE=dri ligado ou
desligado, você ainda pode ter software 3D através de Mesa.
|
| pam |
Mudada para pacotes individuais que a usam, como xorg-server e xdm |
| sdk |
7.0 deve instalar o SDK como uma conseqüência da modularização. |
| static |
Não faz mais sentido construir um servidor estático em um mundo
modular, porque o driver não pode ser construído dentro dele.
|
| xprint |
Na metabuild, puxa libXp. Em outras aplicações, constrói suporte
para xprint. A maior parte das pessoas não devem ativar isto.
|
| xv |
Não é mais opcional já que não economiza muito tamanho e causa
outros problemas com pacotes que esperam xv.
|
Problemas de drivers
Ouvi relatos de que:
- vesa trava em máquina com placa mga
- vga produz uma tela muito estranha, dividida em quartos
Obtendo glxinfo/glxgears
Estes programas são agora fornecidos por x11-apps/mesa-progs.
mesa-progs é puxado pelo pacote x11-base/xorg-x11 automaticamente.
Para obter informações de debug do glxinfo para ajudar a fazer direct rendering
funcionar:
Listagem de código 3.1: Obtendo informações de debug do glxinfo |
# LIBGL_DEBUG=verbose glxinfo
|
Auto-detecção de protocolo de mouse
Se você tiver Protocol "auto" configurado no xorg.conf para seu mouse
pode não funcionar. Você pode ter que especificar Protocol "ExplorerPS/2"
ou "IMPS/2" para que sua roda funcione.
Tudo em /usr/lib/xorg sumiu!
Reinstale o >=xorg-server-0.99.1-r4. Isto foi um bug temporário que resultou
em apagamento depois da remoção de um pacote. Ao invés disso,
/usr/lib/xorg só deveria ter sido apagado se nenhum xorg-server
houvesse sobrado no sistema.
gdm/kdm não funcionam
Se você instalou o X modular em uma nova instalação do Gentoo, pode ser que você
não tem um link simbólico /usr/X11R6 -> /usr. O
pacote x11-base/xorg-x11 irá certificar que o link simbólico existe
durante o processo de emerge.
Você pode ajudar a tirar as coisas de /usr/X11R6 consertando os
pacotes que instalam coisas ali e abrindo bugs.
Outros problemas
-
O pacote x11-base/xorg-x11 agora filtra todas linhas ModulePath e
RgbPath de seu /etc/X11/xorg.conf, já que os dois caminhos
foram mudados desde versões anteriores. Certifique-se de rodar
etc-update para finalizar estas mudanças.
O conteúdo deste documento está licenciado pela licença Creative Commons -
Attribution / Share Alike.
|