「すべてとキッチンシンク」をJessieバージョンにアップグレードせずに、Debian JessieからWheezyシステムに単一のパッケージ(およびその依存関係、ただしWheezyで満足できない程度まで)をインストールしたい。具体的には、Jessieではパッケージ化されていますが、Wheezyではパッケージ化されていないkpcliをインストールします。
私が見つけたすべてのことは、ソースリストにJessieリポジトリを追加し、すべてをwheezyに保ち、jessieから単一のパッケージのみを取り出すように固定を設定する必要があることを示しています。しかし、それは私には適していない。次の内容で/etc/apt.d/sources.list.d/jessie.listを作成した場合:
deb ftp://ftp.debian.org/debian/ jessie main
deb-src ftp://ftp.debian.org/debian/ jessie main
次に、以下を使用して/etc/apt/preferences.d/jessieを作成します。
Package: *
Pin: release a=wheezy
Pin-Priority: 1001
Package: kpcli
Pin: release a=jessie
Pin-Priority: 450
にapt-get -u update
続いてを実行するとapt-get -u install kpcli/jessie
、apt-getがkpcliと、おそらく Jessieの他の少数のパッケージを取り込み、インストールされたシステムの残りの部分はそのままにされることを期待しています。(私のシステムはWheezyの完全に最新のインストールです。)あるいは、ピンの優先度が低すぎると、何もしないと予想されます。むしろ、私のシステムでは、apt-getは数百のパッケージをアップグレードしたいと考えています。
私のWheezyシステムの残りの部分に手を加えずに、Jessieバージョンのこの1つのパッケージだけをインストールするために正確に必要なものは何ですか?
この特定のケースでは、ソフトウェアは実際にはPerlで記述されているため、バイナリまたはそれに類するものへのコンパイルはありません。ただし、いくつかのPerlモジュールの依存関係があります。したがって、1つの可能な代替策は、(1)のようにインストールする単一のローカル.debアーカイブの指定のみを許可するものdpkg -i
、および(2)インテリジェントな方法で依存関係を処理するものを使用して.deb(手動でダウンロード)をインストールすることです、プレーンdpkg -i
はそうしません。しかし、私が何度か行ったすべての検索のために、これを行う方法についての簡単なガイドを思い付くことができませんでした、一般的なソリューション(バイナリ、コンパイルされたパッケージでも動作するもの)は素晴らしいでしょう。