Introdução ao Xorg-7

O "Xorg" é uma implementação de fonte aberto e redistribuível livremente do Sistema de Janelas "X". Esse sistema fornece uma interface cliente/servidor entre o hardware de exibição (mouse, teclado e monitores de vídeo) e o ambiente de área de trabalho, ao mesmo tempo que fornece a infraestrutura de janelas e uma interface padronizada de aplicativo ("API").

Transferência do "Xorg" e Instruções de Instalação

O "Xorg-7.0" introduziu um sistema de construção modular totalmente equipado com ferramentas automáticas. Com o novo sistema de construção modular, não mais é possível baixar o pacote inteiro em um arquivo. Na verdade, existirão bem mais que cem (100) pacotes que precisam ser obtidos a partir do local de transferência. Para ajudar com uma tarefa tão grande, instalar o "Wget-1.24.5" é fortemente recomendado para baixar os arquivos necessários. Uma lista completa de arquivos "wget" é fornecida para cada página que incluir vários pacotes.

Dado o número de pacotes disponíveis, decidir quais pacotes você precisa instalar para a tua configuração específica possivelmente pareça um pouco complicado no início. Dê uma olhada nesta página e neste tópico para ter uma ideia do que você precisará. Se não tiver certeza, [então] você deveria instalar todos os pacotes ao custo de espaço extra em disco.

[Nota]

Nota

Mesmo se você pretende baixar somente os pacotes necessários, você deveria baixar as listas de arquivos wget. A lista dos arquivos é ordenada por dependência e as versões dos pacotes listadas nos arquivos são conhecidas por funcionarem bem entre elas. Além disso, as listas de arquivos wget contém comentários para pacotes específicos que estão obsoletos ou não são recomendados para instalação. Pacotes mais recentes provavelmente serão destinados para o próximo lançamento do Xorg e já provaram ser incompatíveis com as versões atuais do software instalado no BLFS. O tamanho instalado do Xorg pode ser reduzido consideravelmente instalando-se somente os pacotes que você precisará e usará, no entanto, o livro BLFS não pode levar em conta todas as dependências e opções de construção para os pacotes individuais do Xorg. As instruções assumem que todos os pacotes tenham sido construídos.

Além disso, devido ao grande número de comandos repetitivos, você é encorajado(a) a automatizar parcialmente a construção. Instruções foram fornecidas que utilizam o pacote "Sudo-1.9.15p5". É recomendado que você use a opção de configuração ":NOPASSWD" para o(a) usuário(a) que irá construir os pacotes do "Xorg".

Configurando o Ambiente da Construção do Xorg

[Nota]

Nota

As instruções a seguir assumem que os arquivos de inicialização do "shell" tenham sido configurados conforme descrito em "Os Arquivos de Iniciação do Shell Bash".

Conforme com lançamentos anteriores do "X Window System", possivelmente seja desejável instalar o "Xorg" em um prefixo alternativo. Essa não mais é uma prática comum entre as distribuições do Linux. O prefixo comum de instalação para o "Xorg" no Linux é "/usr". Não existe prefixo padrão alternativo, nem existe nenhuma exceção na revisão atual do Padrão de Hierarquia do Sistema de Arquivos para o Lançamento 7 do "X Window System". Alan Coopersmith, da Sun Microsystems, declarou certa vez: "Na Sun, estávamos usando "/usr/X11" e planejamos continuar com ele". Somente o prefixo "/opt/*" ou o prefixo "/usr" aderem às diretrizes atuais da "FHS".

Os(As) editores(as) do BLFS recomendam usar o prefixo "/usr".

Escolha o teu prefixo de instalação e configure a variável "XORG_PREFIX" com o seguinte comando:

export XORG_PREFIX="<PREFIXO>"

Ao longo destas instruções, você usará as seguintes chaves do "configure" para todos os pacotes. Crie a variável "XORG_CONFIG" para usar nessa substituição de parâmetro:

export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc \
    --localstatedir=/var --disable-static"
[Nota]

Nota

Nós usaremos $XORG_CONFIG nas instruções para muitos pacotes pertencentes ou relacionados ao Xorg. Essas instruções não funcionarão corretamente com o comportamento padrão de zsh-5.9. Então, se você estiver usando zsh-5.9 como o shell interativo e construindo um pacote para o qual a instrução usa essa variável, faça o comportamento do zsh-5.9 expandir $XORG_CONFIG da mesma forma que o bash:

set -o shwordsplit

Se você quiser tornar essa configuração persistente, adicione esse comando ao arquivo de iniciação do zsh.

Crie um arquivo de configuração "/etc/profile.d/xorg.sh" contendo essas variáveis como o(a) usuário(a) "root":

cat > /etc/profile.d/xorg.sh << EOF
XORG_PREFIX="$XORG_PREFIX"
XORG_CONFIG="--prefix=\$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var --disable-static"
export XORG_PREFIX XORG_CONFIG
EOF
chmod 644 /etc/profile.d/xorg.sh
[Nota]

Nota

Existe alguma confusão relativa ao documento 'here' acima. A barra invertida na frente do cifrão está correta. O "Bash" irá removê-la ao criar o "/etc/profile.d/xorg.sh". No entanto, se você estiver criando o arquivo com um editor, [então] uma operação de copiar e colar não removerá a barra invertida. Ela precisa então ser removida manualmente.

Se você tiver instalado o "Sudo-1.9.15p5", [então] certifique-se de que "XORG_PREFIX" e "XORG_CONFIG" estejam disponíveis no ambiente do "sudo". Como o(a) usuário(a) "root", execute o seguinte comando:

cat > /etc/sudoers.d/xorg << EOF
Defaults env_keep += XORG_PREFIX
Defaults env_keep += XORG_CONFIG
EOF

Se você não estiver usando o prefixo padrão do "Xorg"...

[Atenção]

Atenção

Se tiver decidido usar o prefixo padrão "/usr", [então] você precisa omitir o restante desta página e continuar em "util-macros-1.20.1".

Se você tiver decidido não usar o prefixo padrão, [então] certifique-se de adicionar "$XORG_PREFIX/bin" à tua variável de ambiente "PATH" e " $XORG_PREFIX/lib/pkgconfig" e " $XORG_PREFIX/share/pkgconfig" à tua variável "PKG_CONFIG_PATH". Também é útil especificar caminhos adicionais de pesquisa para o "gcc" e um diretório de inclusão para o aplicativo "aclocal". Emita os seguintes comandos como o(a) usuário(a) "root":

cat >> /etc/profile.d/xorg.sh << "EOF"

pathappend $XORG_PREFIX/bin            PATH
pathappend $XORG_PREFIX/lib/pkgconfig   PKG_CONFIG_PATH
pathappend $XORG_PREFIX/share/pkgconfig PKG_CONFIG_PATH

pathappend $XORG_PREFIX/lib             LIBRARY_PATH
pathappend $XORG_PREFIX/include         C_INCLUDE_PATH
pathappend $XORG_PREFIX/include         CPLUS_INCLUDE_PATH

ACLOCAL="aclocal -I $XORG_PREFIX/share/aclocal"

export PATH PKG_CONFIG_PATH ACLOCAL LIBRARY_PATH C_INCLUDE_PATH CPLUS_INCLUDE_PATH
EOF

O conjunto de comandos sequenciais acima precisa ser ativado. Normalmente será automático ao "login", mas para ativá-lo agora, como um(a) usuário(a) normal, execute:

source /etc/profile.d/xorg.sh

Você também deveria adicionar "$XORG_PREFIX/lib" ao arquivo "/etc/ld.so.conf". Novamente, como o(a) usuário(a) "root", emita o seguinte comando:

echo "$XORG_PREFIX/lib" >> /etc/ld.so.conf

Você também deveria modificar o "/etc/man_db.conf", adicionando as entradas apropriadas "MANDATORY_MANPATH", "MANPATH_MAP" e "MANDB_MAP" seguindo os exemplos para o "/usr/X11R6". Emita o seguinte comando como o(a) usuário(a) "root":

sed -e "s@X11R6/man@X11R6/share/man@g" \
    -e "s@/usr/X11R6@$XORG_PREFIX@g"  \
    -i /etc/man_db.conf

Alguns aplicativos procuram por arquivos compartilhados em "/usr/share/X11". Crie um link simbólico para o local apropriado como o(a) usuário(a) "root":

ln -svf $XORG_PREFIX/share/X11 /usr/share/X11

Se construir o "KDE", [então] alguns arquivos do "cmake" procuram o "Xorg" em locais diferentes de "$XORG_PREFIX". Permita que o "cmake" encontre o "Xorg" com:

ln -svf $XORG_PREFIX /usr/X11R6