MANPATH(5)

NOME
manpath - formata o arquivo /etc/manpath.config

DESCRIÇÃO
O arquivo de configuração do manpath é usado pelos utilitários de página de manual para avaliar os caminhos man dos usuários em tempo de execução, para indicar quais hierarquias de página de manual (caminhos man) devem ser tratadas como hierarquias do sistema e para atribuí-las a diretórios para ser usados para armazenar arquivos cat.

Se a variável de ambiente $MANPATH já estiver definida, as informações contidas em /etc/manpath.config não a sobrescreverão.

CAMINHO DE PESQUISA
Por padrão, o man-db examina o $PATH do usuário. Para cada path_element encontrado, ele adiciona manpath_element ao caminho de pesquisa.

Se não houver nenhuma linha MANPATH_MAP no arquivo de configuração para um determinado path_element, ele adicionará todos os path_element/../man, path_element/man, path_element/../share/man e path_element/share/man que existem como diretórios ao caminho de pesquisa.

Em seguida, ele adiciona quaisquer entradas MANDATORY_MANPATH do arquivo de configuração ao caminho de pesquisa.

Por fim, se a opção --systems for usada ou a variável de ambiente $SYSTEM for definida, isso deverá consistir em uma sequência de nomes de sistemas operacionais separados por vírgulas ou dois pontos. Isso funciona como um modelo, expandindo o caminho de pesquisa mais uma vez para permitir o acesso às páginas de manual de outros sistemas operacionais: para cada nome de sistema, man-db procura esse nome como um subdiretório de cada entrada no caminho de busca e o adiciona ao caminho de pesquisa final, se existir. Um nome de sistema man insere o caminho de pesquisa normal sem subdiretórios. Por exemplo, se o caminho de pesquisa fosse /usr/share/man:/usr/local/man e $SYSTEM estiver definido como newOS:man, o caminho de busca final seria /usr/share/man/newOS:/usr/share/man:/usr/local/man/newOS:/usr/local/man.

A variável de ambiente $MANPATH substitui os caminhos de pesquisa padrão das páginas de manual do man-db. A maioria dos usuários não precisa defini-la. Sua sintaxe é semelhante à da variável de ambiente $PATH: consiste em uma sequência de nomes de diretórios separados por dois pontos. Ela substitui o caminho de pesquisa padrão descrito acima.

Se $MANPATH estiver definido, manpath exibe seu valor em vez de determiná-lo dinamicamente. Se $MANPATH for prefixado por um caractere de dois pontos, então o valor de variável é anexado à lista determinada a partir do conteúdo dos arquivos de configuração. Se o caractere de dois pontos vem ao final do valor na variável, então a lista determinada é anexada ao conteúdo da variável. Se o valor da variável contiver dupla de caractere de dois pontos (::), então a lista determinada é inserida no meio do valor, entre dois caracteres de dois pontos.

FORMATO
Os seguintes tipos de campos são atualmente reconhecidos:

# comentário
    Linhas em branco ou aquelas iniciando com uma cerquilha (#) serão tratadas como comentários ou ignoradas.

MANDATORY_MANPATH manpath_element
    Linhas nesta forma indicam caminhos man que toda $MANPATH gerada automaticamente deve conter. Isso geralmente incluirá /usr/man.

MANPATH_MAP path_element manpath_element
    Linhas nesta forma configuram mapeamentos de $PATH para $MANPATH. Para cada path_element localizado no $PATH do usuários, manpath_element será adicionado ao $MANPATH.

MANDB_MAP manpath_element [ catpath_element ]
    Linhas nesta forma indicam quais caminhos man devem ser tratados como caminhos man do sistema e, opcionalmente, onde seus arquivos cat devem ser armazenados. Esse tipo de campo é particularmente importante se man é um programa setuid, como (quando no arquivo de configuração de sistema /etc/manpath.config em vez do arquivo de configuração per-usuário .manpath) ele indica quais hierarquias de página de manual devem ser acessadas como o usuário setuid e qual como usuário invocador.

    As hierarquias de página de manual do sistema geralmente são aquelas armazenadas sob /usr tal como /usr/man, /usr/local/man e /usr/X11R6/man.

    Se páginas cat de um manpath_element em particular não devem ser armazenadas ou devem ser armazenadas na localização traducional, catpath_element pode ser omitido.

    Colocação de cat tradicional seria impossível para hierarquias de páginas de manual montadas como somente leituras e, por causa disso, é possível especificar qualquer hierarquia válida de diretórios para seu armazenamento. Para observar Linux FSSTND, a palavra-chave FSSTND pode ser usada no lugar de um diretório real.

    Infelizmente, é necessário especificar todos os caminhos de árvore man do sistema, incluindo caminhos alternativos do sistema operacional, tais como /usr/man/sun e quaisquer caminhos localidade NLS tais como /usr/man/de_DE.88591.

    Como a informação é analisada linha por linha na ordem escrita, é necessário para qualquer caminho man que é um subdiretório de uma outra hierarquia ser listado primeiro, do contrário uma correspondência incorreta será feita. Uma exemplo disso é que /usr/man/de_DE.88591 deve vir antes de /usr/man.

DEFINE valor da chave
    Linhas nesta forma definem diversas variáveis de configuração; veja o arquivo de configuração padrão para aquelas variáveis usadas pelos utilitários paginação de manual. Eles incluem caminhos de padrão para programas variados (tais como grep e tbl) e conjuntos padrões de argumentos daqueles programas.

SECTION seção ...
    Linhas nesta forma definem a ordem na qual seções de manual devem ser pesquisadas. Caso não há diretivas SECTION no arquivo de configuração, o padrão é:

        SECTION 1 n l 8 3 0 2 3type 5 4 9 6 7

    Se múltiplas diretivas SECTION forem fornecidas, suas listas de seções serão concatenadas.

    Se uma extensão em particular não estiver nessa lista (digamos, 1mh), ela será exibida com o resto da seção à qual ela pertence. O efeito disso é que você apenas precisa listar explicitamente extensões se você deseja forçar uma ordem em particular. As seções com extensões geralmente devem ser adjacente às suas seções principais (ex.: "1 1mh 8 ...").

    SECTIONS é aceito como um nome alternativo para essa diretiva.

MINCATWIDTH largura
    Se a largura do terminal é menor que largura, páginas cat não serão criadas (se estiverem faltando) ou exibidas. O padrão é 80.

MAXCATWIDTH largura
    Se a largura do terminal é maior que largura, páginas cat não serão criadas (se estiverem faltando) ou exibidas. O padrão é 80.

CATWIDTH largura
    Se largura é diferente de zero, páginas cat sempre serão formatadas para um terminal da largura fornecida, independente da largura usada para o terminal. Isso substitui MINCATWIDTH e MAXCATWIDTH.

NOCACHE
    Essa opção evita que man(1) crie páginas cat automaticamente.

PROBLEMAS
A menos que as regras acima sejam seguidas e observadas com muita atenção, os utilitários de paginação de manual não funcionarão como desejado. As regras são excessivamente complicadas.

https://gitlab.com/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db