.debパッケージにハードウェア依存関係を追加するには?

.debパッケージにハードウェア依存関係を追加するには?

CPU命令に最適化されたdebパッケージを構築するには、CPU命令をdebパッケージの依存関係として使用する方法は?パッケージは一括展開には適していませんが、人々が私のビルドと比較してCPUが古すぎるため、クラッシュのために混乱することは望ましくありません。

答え1

dpkgフォーマット自体が好きなように機能するかどうかはわかりません。

しかし、あなたはできる使用プレインストールスクリプト。ここでCPUレベルが正しいことをテストし、CPUレベルが十分でない場合は中止できます。これにより、パッケージがインストールされなくなります。

このスクリプトはpreinstpkgセクションの一部ですcontrolhttps://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html

これらは時々呼ばれる。プリインストールされた完全性スクリプト。ゼロ以外の終了コードで終わると、パッケージのインストールは失敗します。

スクリプトpreinstは次のように簡単です。

#!/bin/sh
set -e

flags=`grep ^flags /proc/cpuinfo | head -1`

if [ -z "`echo $flags | grep sse4`" ]
then
  echo Can only run on machines with SSE4 instructions.  Install failed
  exit 1
fi

exit 0

関連情報