O que é um pacote Noarch?

Noarch significa nenhuma arquitetura. Na verdade, o termo noarca significa nenhuma arquitetura particular ou, se preferir, todas as arquiteturas. Ele faz referência a arquivos, como imagens, manuais ou mesmo aplicativos que são universais em todas as plataformas.

Usando o pacote noarch em uma captura de tela do computador

Como isso é possível?

Como é possível que um pacote funcione em todas as versões do Linux, Windows e outros sistemas operacionais?

Bem, para começar, nem todos os pacotes contêm aplicativos. Por exemplo, o aplicativo gnome-backgrounds.arch é uma coleção de planos de fundo da área de trabalho. Embora o pacote tenha sido desenvolvido para o Ambiente de trabalho Gnome na verdade, é apenas uma coleção de imagens e as imagens são criadas em formatos universais que podem ser usados ​​em qualquer sistema operacional moderno.

Portanto, você pode pensar em um pacote noarch como qualquer coisa que seja verdadeiramente universal, como planos de fundo, ícones e até manuais.

Os pacotes Noarch também podem conter scripts, programas e aplicativos, mas devem conter arquivos que sejam verdadeiramente multiplataforma.

Que tipo de programas são verdadeiramente compatíveis com várias plataformas?

Os aplicativos da Web desenvolvidos em HTML, JavaScript e CSS são universais, assim como as linguagens de script PHP, PERL e Python.

Os programas compilados não podem ser considerados noarch porque são compilados para funcionar em uma arquitetura específica. Portanto Binários C e C ++ não será encontrado em um arquivo noarch. A exceção a esta regra são os programas Java porque Java é verdadeiramente plataforma cruzada e um aplicativo Java escrito para uma distribuição e arquitetura Linux também deve funcionar em outras plataformas Linux e em Janelas.

Agora, você pode pensar que o código-fonte pode ser mantido como pacotes noarch porque pode ser compilado entre plataformas e apenas os binários são específicos para uma arquitetura particular. Os pacotes de código-fonte são, na verdade, armazenados com a extensão src.

Os arquivos Noarch são geralmente associados a pacotes RPM.

É muito provável que você já tenha vários pacotes RPM noarch instalados em seu computador.

Para descobrir quais pacotes noarch você instalou, execute o seguinte comando:

rpm -qa --qf "% {N} -% {V} -% {R} \ t \ t% {ARCH} \ n" | grep noarch | mais

O comando acima pode ser dividido da seguinte forma:

  • rpm é o gerenciador de pacotes
  • -q significa consulta
  • -a representa todos
  • --qf significa formato de consulta
  • A saída do comando rpm é colocada como entrada para grep que procura por noarch
  • Mais faz com que a saída pare no final de uma página de dados, você pode passar para a próxima página pressionando espaço

Olhando para a saída do comando acima em seu próprio computador, você pode ver vários pacotes de fontes, pacotes de firmware, documentação, planos de fundo, ícones e temas.

Uma palavra de advertência, no entanto. Só porque algo está empacotado como noarch, nem sempre é sensato copiar os arquivos deste pacote para outros computadores e esperar que funcionem.

Por exemplo, se você tiver um computador executando o Fedora usando o Pacote RPM manager e outro rodando Debian usando o formato de arquivo DEB, faz sentido procurar o pacote equivalente no Debian antes de copiar os arquivos da máquina Fedora.