-2

I am new to packaging the application. I am running a command to package a simple sh application which I created on RHEL. I don't understand why Architecture says noarch although from what I have been told. Packaging is specific to the architecture and operating system one is using. Can anyone please explain me what does it mean by noarch?

rpm -qi hello
Name        : hello
Version     : 0.0.1
Release     : 1
Architecture: noarch
Install Date: Mon 09 Nov 2020 01:29:51 AM CET
Group       : Unspecified
Size        : 294
License     : GPL
Signature   : (none)
Source RPM  : hello-0.0.1-1.el8.src.rpm
Build Date  : Mon 09 Nov 2020 01:08:14 AM CET
Build Host  : slimmerAI
Summary     : A simple hello world script
Description : A demo RPM build
Mark Rotteveel
  • 100,966
  • 191
  • 140
  • 197
Fahad Zaheer
  • 47
  • 1
  • 7

7 Answers7

1

"Noarch" architecture designation implies that the current package is not bind/tied to any specific architecture, and this means that it can be used and installed to on any system that supports RPM packaging, no matter what the CPU architecture is.

0

Architecture: noarch simply means that there are no architecture specific files/binaries in the RPM package. So, such a package can be installed on any hardware that can use rpm package manager. Here's a reference link.

Ahmar
  • 584
  • 2
  • 7
0

Actually, noarch means no architecture. When architecture field of a package is set to noarch, it means that the package is not architecture-specific. It can run on any architecture.

Just like in your case, the package hello i.e. a simple hello world script as described in summary, can be installed on any system. It does not require specific architecture to run.

adil shahid
  • 125
  • 4
0

Noarch architecture indicates that the package is not bound to any particular hardware architecture that means it can run on any CPU architecture which implies RPM package manager is supported.

Aadil Bashir
  • 111
  • 5
0

Architecture: noarch

It means this package is not limited to any particular/specific architecture.

This package can be installed on any system that supports the RPM Package manager.

0

Basically, when you build RPM packages you may encounter situations where some files are architecture-specific or OS-specific while others are not. In those cases, you can create RMP packages with some labelled as "noarch" for architecture-independent files and others labeled for the specific architectures they are intended for, for example x86_64.

In your case, "noarch" means that the package file contains files that are not architecture-dependent and can be installed on any system regardless of its architecture.

Hassoo
  • 85
  • 11
-1

the "noarch" architecture designation implies that the current package is not tied to any specific architecture. It means that the package does not include architecture-specific files/binaries and can be installed on any system that supports the RPM package manager, regardless of the CPU architecture.

Marcos Silva
  • 115
  • 5