二年ほど放置しよった結果
久々に mingw を起動して pacman -Syu 実行しよった時に嵌りよったのじゃが、その解決方法の作業メモじゃ。
誰かの参考に成ればと思い 3h 程度の工数使いよって執筆しちょる。
環境設定とか
執筆時点でのインストーラーはこれ
コイツをインスコしよると、minitty が起動しよるのじゃが、普段じゃとそのまま pacman -Syu の実行しよって、パッケージの環境を最新に同期させちょる。
この段階で gpg 鍵が古いって文句言われてアプデが出来ん😢
対策方法をググル(ぐるぐるせんせ~)
詳細は ここに書いちょるのじゃが、amd64 のコトしか書いちょらん😱
i386 プラットフォームじゃと pacman -Syu 直後に再度コンソール起動させようとしよったら、枠が一瞬出よって直ぐに閉じよるけ、コンソールで作業出来ん orz
詳細を参考に i386 にアレンジメント
とりま、手順を以下のようにしよると pacman -Syu 迄は出来るようになりよる。
wget https://repo.msys2.org/msys/i686/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz
wget https://repo.msys2.org/msys/i686/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig
pacman -U msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz
出力結果
パッケージをロード...
依存関係を解決しています...
衝突するパッケージがないか確認しています...
パッケージ (1) msys2-keyring-r21.b39fb11-1
合計インストール容量: 0.05 MiB
最終的なアップグレード容量: 0.03 MiB
:: インストールを行いますか? [Y/n]
(1/1) キーリングのキーを確認 [#####################] 100%
(1/1) パッケージの整合性をチェック [#####################] 100%
(1/1) パッケージファイルのロード [#####################] 100%
(1/1) ファイルの衝突をチェック [#####################] 100%
(1/1) 空き容量を確認 [#####################] 100%
:: パッケージの変更を処理しています...
(1/1) 更新 msys2-keyring [#####################] 100%
==> msys2.gpg からキーを追加...
gpg: Warning: using insecure memory!
==> キーリングの信頼されたキーに署名...
-> キーに署名 6E8FEAFF9644F54EED90EEA0790AE56A1D3CFDDC...
-> キーに署名 D55E7A6D7CE9BA1587C0ACACF40D263ECA25678A...
-> キーに署名 123D4D51A1793859C2BE916BBBE514E53E0D0813...
-> キーに署名 B91BCF3303284BF90CC043CA9F418C233E652008...
-> キーに署名 9DD0D4217D75A33B896159E6DA7EF2ABAEEA755C...
-> キーに署名 69985C5EB351011C78DF7F6D755B8182ACD22879...
==> 所有者信頼値をインポート...
gpg: Warning: using insecure memory!
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
==> キーリングの破棄されたキーを無効化...
-> キー B19514FB53EB3668471B296E794DCF97F93FC717 を無効化...
==> 信用データベースを更新...
gpg: Warning: using insecure memory!
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: 深さ: 0 有効性: 1 署名: 6 信用: 0-, 0q, 0n, 0m, 0f, 1u
gpg: 深さ: 1 有効性: 6 署名: 6 信用: 0-, 0q, 0n, 6m, 0f, 0u
gpg: 深さ: 2 有効性: 6 署名: 0 信用: 6-, 0q, 0n, 0m, 0f, 0u
gpg: 次回の信用データベース検査は、2021-06-19です
rm -r /etc/pacman.d/gnupg/
pacman-key --init
出力結果
gpg: Warning: using insecure memory!
gpg: /etc/pacman.d/gnupg/trustdb.gpg: 信用データベースができました
gpg: 究極的に信用する鍵が見つかりません
gpg: Warning: using insecure memory!
gpg: starting migration from earlier GnuPG versions
gpg: porting secret keys from '/etc/pacman.d/gnupg/secring.gpg' to gpg-agent
gpg: migration succeeded
gpg: Warning: using insecure memory!
gpg: Generating pacman keyring master key...
gpg: 鍵9F7F7129C38C57B0を究極的に信用するよう記録しました
gpg: ディレクトリ'/etc/pacman.d/gnupg/openpgp-revocs.d'が作成されました
gpg: 失効証明書を '/etc/pacman.d/gnupg/openpgp-revocs.d/E2E074B46CA378A31BC8E5A99F7F7129C38C57B0.rev' に保管しました。
gpg: Done
==> 信用データベースを更新...
gpg: Warning: using insecure memory!
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: 深さ: 0 有効性: 1 署名: 0 信用: 0-, 0q, 0n, 0m, 0f, 1u
pacman -U https://repo.msys2.org/msys/i686/libzstd-1.4.4-2-i686.pkg.tar.xz
pacman -U https://repo.msys2.org/msys/i686/zstd-1.4.4-2-i686.pkg.tar.xz
pacman -U https://repo.msys2.org/msys/i686/pacman-5.2.1-6-i686.pkg.tar.xz
ここまでやれば、pacman -Syu でパッケージの管理が最新に保たれる作業が可能となる。
やれやれ😱