リポジトリパッケージとVPNクライアントパッケージ、先に入れるのはどちらか
リリースパッケージが登録するのは提供元と署名鍵だけです。ベンダーのリポジトリを加える価値があるかを決め、クライアントは独立した手順として導入します。
ベンダーのパッケージを導入し、コマンドはゼロを返したのに、起動できるVPNアプリはまだありません。これは、導入したパッケージがクライアントを同梱せずリポジトリを設定しただけの場合に起こり、その違いはディスクに何を残したかに表れます。両方が必要かどうか、そしてどちらを先にするかは、ベンダーの命名ではなく三つの条件で決まります。以下の判断では、提供元の設定、メタデータの更新、アプリの導入を、それぞれ別の証拠を持つ別の行為として扱います。
各パッケージが実際に変えるもの
リポジトリ設定パッケージはAPTのソース項目を書き、その項目が信頼する署名鍵を登録して終了します。中身は/etc/apt配下の数個のファイルと鍵リングだけで、実行できるものはありません。クライアントパッケージはデーモンまたはデスクトップアプリ、そのライブラリと依存関係を同梱し、メニューやsystemdユニットに現れるのはこちらです。
-releaseで終わるファイル名は前者を思わせますが、接尾辞は慣習であって保証ではありません。パッケージの役割について確かなのはファイル一覧と依存関係で、どちらも何かを導入する前に読めます。梱包方法を作り直すベンダーはファイル名をそのままにして中身を変えるため、二年前のスレッドからコピーした答えが、もう存在しないパッケージを説明していることがあります。実行しているリリースについて提供元の現在の手順を読み、そのうえでパッケージが何を宣言しているかを確認してください。
この分離から三つの段階が出ます。提供元を登録し、それが供給するメタデータを更新し、最後にアプリを名前で導入します。DebianとUbuntuの導入ガイドはこれらを分けており、クライアントが提供元を設定したパッケージではなく後の段階で要求されるのはそのためです。
順序を決める三つの条件
第一の条件は、ベンダーがあなたの分布リリースに正確に対応するリポジトリを公開しているかどうかです。あるスイート向けに作られたソース行は、別のスイートの依存関係に対して解決され、誰も試していない混成を導入することがあります。
第二は、あなたの分布がすでにクライアントを抱えているかどうかです。抱えている場合、分布のパッケージはリリースのライブラリ移行とセキュリティ更新に追随しますが、ベンダーのパッケージはより速く動き、共有ライブラリの独自のコピーを持ち込むことがあります。
第三は、本当に必要な機能がどれかです。ベンダーのビルドは、あなたの分布が梱包していない新しいプロトコル実装やデスクトップ統合を提供することがあり、それが第二の提供元を受け入れる実際の理由になります。分布のビルドで足りるなら、第三者のリポジトリを加えることは、ごくわずかな見返りに更新の手間と信頼関係をもう一つ買うことになります。
ソース行が存在する前にこの三つの答えを決めてください。後から外すことはパッケージと鍵の削除を意味するからです。決まったあと、ベンダーの経路内の順序は選択肢ではありません。提供元が先、メタデータが二番目、アプリが三番目で、逆にはなりません。
リリースパッケージが何を残したかを確認する
ほかを導入する前に、説明ではなくファイル一覧を読みます。Debian系のシステムでは、パッケージのマニフェストが何を設定し、鍵がどこに置かれたかに答えます。
dpkg -L proton-vpn-release | grep -E 'apt|keyring'
apt-cache policy proton-vpn-gnome-desktop
grep -r protonvpn /etc/apt/sources.list.d/
一行目はソースファイルと鍵リングの経路を示し、二行目は設定済みの提供元がどの版を提示できるかを報告します。apt-cache policyがクライアント名について何も出力しないなら、メタデータの更新が行われていないか、提供元が別のスイートを指しています。三行目は、その項目がAPTの実際に読む場所にあることを確かめます。
鍵リングの経路をソース行のsigned-by=欄と照合します。誤ったディレクトリの鍵は未認証の提供元というエラーを生み、これは利用できないパッケージとは別の障害です。
依存関係の失敗は別の段階として扱う
ダウンロードした.debをdpkg -iで導入しても何も解決しません。依存関係を調べ、足りないものを報告し、パッケージを中途半端な設定のまま残します。これは想定された挙動で、壊れたダウンロードではありません。
次にapt --fix-broken installが、手持ちの提供元から一貫した状態をAPTに求めます。APTはどのVPNが欲しかったかを知らず、その計画は見つけた制約を満たすためにパッケージを削除することがあります。はいと答える前に提示された取引を読み、削除が必要なものに触れるなら止めてください。計画を読まずに修復を繰り返すと、小さな依存の隙間が起動しないデスクトップになります。
パッケージ管理者の最初の意味あるメッセージを保存し、行動する前に分類します。署名のないリポジトリ、設定済みの提供元が持たないパッケージ、版の衝突、起動してすぐ落ちるクライアントは、四つの別の障害です。
リポジトリではなくアプリを確認する
クライアントが導入済みの状態に達したことを確かめ、次にプログラムが起動することを確かめます。dpkg-query -W -f='${Status} ${Version}' proton-vpn-gnome-desktopは版とともにinstall ok installedを報告するはずで、その後の起動失敗は梱包ではなくアプリの問題です。
リポジトリの所有者とアプリのパッケージを別の対象として記録し、後で外すときに正しいほうだけを消して他方を無傷に保ちます。ベンダーがガイドを変えたとき、読み直すのはソース項目であり、入れ直すのはクライアント名です。