7.3. ソフトウェア管理
- DNF は、依存関係としてインストールされた保護対象パッケージの自動削除を試みなくなりました
今回のアップデート以前は、ある保護対象パッケージが他の 1 つのパッケージのみから必要とされる依存関係としてインストールされており、かつ
clean_requirements_on_remove設定オプションが有効になっていた場合、その保護対象パッケージが使用されていない依存関係となった際に、DNF はそれを削除しようとするいかなるトランザクションも実行できなくなりました。これにより、そのパッケージに依存していた元のパッケージ自体の削除も妨げられました。これは、DNF が保護対象の依存パッケージも自動的に削除しようと試みるためです。今回のアップデートにより、DNF は保護されたすべてのパッケージを、ユーザーによって明示的にインストールされたものとして扱うようになりました。その結果、DNF は保護対象パッケージを自動削除しようとしなくなり、そのパッケージに依存していた元のパッケージを正常に削除できるようになりました。
- DNF はアップグレードトランザクションの
epoch-version-releaseの比較を正しく実行します 今回のアップデート以前は、DNF は RPM パッケージの情報である
epoch-version-release(EVR) の比較を正しく行っていませんでした。その結果、同じepoch-versionを持ちreleaseのみが異なるパッケージに対して、2 回連続してアップグレード操作を実行した場合、DNF はその一連の処理をdowngradeとして認識していました。今回のアップデートでEVRの比較に関する不具合が修正されました。これにより、異なるリリースバージョンを持つパッケージを 2 回続けてアップグレードした場合、DNF はアップグレードとして認識するようになりました。
dnf-automaticは、デフォルトの/usr/bin/mailを使用して、複数の受信者にメールを送信できます今回のアップデート以前は、
dnf-automaticユーティリティーがcommand_emailエミッターを使用して複数の受信者にメールを送信し、かつs-nailパッケージでインストールされた/usr/bin/mailユーティリティーも使用した場合、/usr/bin/mailによるメール送信に失敗していました。今回のアップデートにより、dnf-automaticユーティリティーは、command_formatフォーマット文字列内のemail_toキーワードを、単一の引数から複数の引数に拡張します。その結果、dnf-automaticはデフォルトの/usr/bin/mailユーティリティーを使用して、複数の受信者にメールを送信します。
- アドバイザリーフィルターを使用して複数のアーキテクチャーを持つパッケージを更新する DNF トランザクションが、論理エラーで失敗しなくなりました
今回のアップデート以前は、DNF のアドバイザリーフィルター (例:
--security) を使用して複数のアーキテクチャーを持つ特定のパッケージを更新すると、libsolv依存関係ソルバーで論理エラーが発生していました。その結果、アドバイザリーフィルターを使用してパッケージを更新すると、解決できないトランザクションが発生する場合がありました。この問題は、libldbおよびlibsmbclientパッケージに影響を与えていました。今回のアップデートにより、libsolvの論理エラーが修正されました。その結果、複数のアーキテクチャーとforcebestおよびimplicitobsoleteusescolorsソルバーオプションが関係する更新トランザクションが解決されました。
- パッケージに
NOTTRUSTED署名が含まれている場合でも、pqrpmが複数の署名を持つパッケージの検証に失敗しなくなりました 今回のアップデート以前は、複数の署名を持つパッケージを検証する際に、耐量子計算機暗号 (PQC) をサポートする RPM の最小限のバリアントである
pqrpmが、/usr/lib/pqrpm/bin/rpmkeysユーティリティーがパッケージ署名の一部をNOTTRUSTEDと報告した場合に、全体として検証結果を正しく判定しませんでした。署名は、たとえば、証明書の有効期限が切れたり失効したりした場合、あるいはシステム全体の暗号化ポリシーによってアルゴリズムが無効になった場合などに、NOTTRUSTEDになることがあります。その結果、パッケージに有効で信頼できる署名が少なくとも 1 つあったとしても、pqrpmはパッケージの検証に失敗していました。今回のアップデートにより、
NOTTRUSTED署名を持つパッケージを正しく処理できるように、pqrpmの検証ロジックが修正されました。今回のアップデートでは、この機能に関するエラー報告も改善されています。その結果、
pqrpmはNOTTRUSTEDパッケージ署名を無視し、パッケージに少なくとも 1 つの有効な署名があり、無効な署名がない場合、複数の署名を持つパッケージのインストールまたは検証を正常に実行するようになりました。検証が実際に失敗した際のエラーメッセージも、より明確かつ正確になりました。
multisigが、サポート対象の RPMv6 署名アルゴリズムとサポート対象外の RPMv6 署名アルゴリズムの両方を使用するパッケージのインストールに失敗しなくなりました今回のアップデート以前は、サポート対象の RPMv6 パッケージ署名アルゴリズムとサポート対象外の RPMv6 パッケージ署名アルゴリズムの両方を使用して署名されたパッケージをインストールできませんでした。その結果、DNF は署名の検証時にサポート対象外のアルゴリズムを検出すると、そのようなパッケージを拒絶していました。今回のアップデートにより、DNF
multisigプラグインは、rpmkeysコマンドの出力でNOTTRUSTEDと分類される署名を無視するようになりました。その結果、multisigは、サポート対象の署名アルゴリズムとサポート対象外の署名アルゴリズムの両方を使用するパッケージをインストールできるようになりました。