あなたのコンピュータに座っていて、拡張リポジトリに多数のファイルがあることに気づいたときにインストールするものを探しているソフトウェアリポジトリを探しています。
Noarchとは何ですか、なぜ多くのファイルにこの拡張機能がありますか?
基本的には、ノーアーカンは建築を意味しない。
この時点で、誰かがアーキテクチャ上で動作しないパッケージを作成するのになぜ迷っているのだろうかと疑問に思うかもしれません。
ノアクという語は、実際には特定のアーキテクチャを意味しませんし、そうであればすべてのアーキテクチャを意味します。
これはどのように可能ですか? パッケージがLinux、Windows、およびその他のオペレーティングシステムのすべてのバージョンでどのように動作するのか
さて、すべてのパッケージにアプリケーションが含まれているわけではありません。 たとえば、アプリケーションgnome-backgrounds.archは、デスクトップの背景の集まりです。 パッケージはGnomeデスクトップ環境用に開発されたものですが、実際には画像のコレクションに過ぎず、画像はすべての最新のオペレーティングシステムで使用できる汎用フォーマットで作成されています。
したがって、あなたはnoarchパッケージを、背景、アイコン、マニュアルなどの本当にユニバーサルなものと考えることができます。
Noarchパッケージには、スクリプト、プログラム、アプリケーションも含めることができますが、実際にはクロスプラットフォームのファイルを格納する必要があります。
どのようなプログラムが本当にクロスプラットフォームですか?
HTML、JavaScript、CSSで開発されたWebアプリケーションは、PHP、PERL、Pythonのスクリプト言語と同様に普遍的です。
コンパイルされたプログラムは、特定のアーキテクチャーで動作するようにコンパイルされているため、noarchと見なすことはできません。 したがって、CおよびC ++バイナリはnoarchファイルには見つかりません。 このルールの例外はJavaプログラムです。Javaは真のクロスプラットフォームであり、あるLinuxディストリビューションとアーキテクチャ用に作成されたJavaアプリケーションも他のLinuxプラットフォームやWindows上で動作するはずです。
ソースコードをクロスプラットフォームでコンパイルすることができ、特定のアーキテクチャに固有のバイナリのみであるため、ソースコードをnoarchパッケージとして保持できると考えるかもしれません。 ソースコードパッケージは、実際にはsrc拡張子とともに格納されます。
通常、NoarchファイルはRPMパッケージに関連付けられています。
RPM noarchパッケージがすでにコンピュータにインストールされている可能性は非常に高いです。
インストールしたnoarchパッケージを調べるには、次のコマンドを実行します。
rpm -qa --qf "%{N} - %{V} - %{R} \ t \ t%{ARCH} \ n" | grep noarch | もっと
上記のコマンドは、次のように分解できます。
- rpmはパッケージマネージャです
- -qはクエリを表します。
- -aはすべてを表します
- --qfはクエリフォーマットを表します。
- rpmコマンドの出力は、noarchを探すgrepの入力として配置されます
- Moreは、データページの最後に出力を停止させ、スペースを押して次のページに移動することができます
上記のコマンドの出力を自分のコンピュータで見ると、フォントパッケージ、ファームウェアパッケージ、ドキュメント、背景、アイコン、およびテーマの数を見ることができます。
しかし、警告の言葉。 何かがnoarchとしてパッケージ化されているという理由だけで、このパッケージ内のファイルを他のコンピュータにコピーして動作させることは賢明ではありません。
たとえばRPMパッケージマネージャを使ってFedoraを実行するコンピュータと、DEBファイルフォーマットを使用してDebianを実行する別のコンピュータがある場合、Fedoraマシンからファイルをコピーする前にDebianで同等のパッケージを探すのが理にかなっています。