web-dev-qa-db-ja.com

「安定した」Debianを実行しているコンピュータに「不安定な」Debianの一部のパッケージをインストールする方法

「安定した」Debianを実行しているコンピューターで、aptitude install <package>/unstableコマンドを使用してDebian Webサイトの不安定なリストにあるパッケージをインストールしようとすると、次のような出力が表示されます。

Couldn't find any package whose name or description matched "<package>"
Couldn't find any package whose name or description matched "<package>"
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

「不安定な」パッケージをインストールできるようにするにはどうすればよいですか? (リポジトリをsources.listに追加することを考えましたが、すべてが「不安定」からインストールされるようにしたくありません)。

それで、不安定なパッケージをインストールするにはどうすればよいですか(パッケージ名の最後に/stableを使用して)?

16
Abbafei

sources.listunstableを記載する必要があります。そうでなければ、aptはパッケージを見つけられません。

unstableパッケージが取り込まれないようにするには、2つの方法があります。

  • 簡単な方法は、Default-Release句を/etc/apt/apt.conf(または/etc/apt/apt.conf.d/の下のファイル、たとえば/etc/apt/apt.conf.d/my-default-release)に追加することです。

    APT::Default-Release "stable";
    
  • 難しい方法は APTプリファレンス を使用することです。 /etc/apt/preferences

    Package: *
    Pin: release o=Debian,a=unstable
    Pin-Priority: 10
    

Debianリリースの存続期間の大部分において、安定したシステムに不安定なパッケージをインストールすることは現実的ではありません。不安定なシステムから多くのライブラリが取り込まれ、最終的に不安定なシステムになるからです。不安定版を実行したい場合は、不安定版(またはテスト版)をターゲットにするだけで問題が解決します。 1つのリリースに固執するか、大胆に感じている場合は、ときどき不安定な状態でテストすることをお勧めします。そしてもちろん、本番システムでは、安定に固執します。

安定して実行しているが、1つのアプリケーションの新しいバージョンが必要な場合は、まず backport があるかどうかを確認します。そうでない場合、パッケージを不安定からインストールしたいが、その依存関係を取り込む必要がない場合は、不安定からソースを取得して再コンパイルしてみてください。

apt-get source foo=1.42
apt-get build-dep foo  # pulls the dependencies of foo in stable but that's often good enough
dpkg-source -x foo_1.42.dsc
cd foo-1.4210126#10126
dpkg-buildpackage -rfakeroot -us -uc -b -nc
dpkg -i ../foo_1.42_$(Arch).deb