Debian sidから単一のパッケージをインストールする方法は?


8

たとえば、squeezeリリースには存在しないibus-sunpinyinを取り上げます。システム全体をsidブランチに切り替えるつもりはないので、sidリポジトリから単一のパッケージをダウンロードして、次のようにインストールします。

# Add the sid repository
sudo mv /tmp/sid.list /etc/apt/sources.list.d/

# Error: can't install because version conflicts of libc6:
#     sudo apt-get install ibus-sunpinyin

# This is ok but it will upgrade a lot of mess from sid branch:
#     sudo apt-get upgrade ibus-sunpinyin

# So, instead of apt-get install/upgrade, let me download & install the single package.
# However, this errored again because of version conflicts of libc6:
#      apt-get install --download-only ibus-sunpinyin

## THEN, WHAT CAN I DO? ##

# Remove the sid repository.
sudo mv /etc/apt/sources.list.d/sid.list /tmp

# Install the single package.
sudo dpkg -i ./ibus-sunpinyin-x.x.x.deb

単一のパッケージをダウンロードするには:apt-get download ...(apt-get 0.8.11以降の場合)またはaptitude download ...。ただし、sudo dpkg -i ibus-sunpinyin-x.x.x.debsidの依存関係のために失敗しました。
謝Jìléi

回答:


1

sidリポジトリからソースパッケージをダウンロードして、squeezeシステムでビルドすることもできます。多くの依存関係がある場合、またはパッケージがsqueezeで利用できないライブラリのバージョンに依存している場合、問題が発生する可能性があります。

これが機能する場合、ブートストラップアプローチの場合のように、別のフォルダーに別のディストリビューションを維持する必要はありません。


1
TBH、apt-pinningがこれを行う適切な方法です。jaqque.sbih.org/kplug/apt-pinning.html
Rob

9

あなたが本当に望んでいるのは、apt-pinningについて学ぶことです。http://jaqque.sbih.org/kplug/apt-pinning.html


必要なパッケージにバックポートがない場合、これが必要です。さもなければ、私は一般的にバックポートを賭けます。
d -_- b

1
うん。バックポートははるかに安全な賭けです。apt-pinningは常に機能するとは限らず、必要以上にプルする場合があります(sidからlibc6をプルした場合、誰も助けたくないでしょう!)
Rob

4

このパッケージは、Debianバックポートで入手できます。これにより、作業が大幅に楽になります。これらは通常、テストまたは不安定(sid)からプルされたパッケージで、現在の安定版リリースに「バックポート」されています。

この行を sources.list

deb http://backports.debian.org/debian-backports squeeze-backports main

次に実行します:

apt-get update && apt-get -t squeeze-backports install ibus-sunpinyin

0

これを回避する1つの方法は、を使用cdebootstrapして基本的なsidシステムをインストールし、次にを使用chrootして新しいシステム内で必要なプログラムを実行することです。

cdebootstrapディレクトリに置きたいディストリビューションから新しいdebianシステムをインストールします。次に、chroot再起動せずに他のディストリビューションでプログラムを実行できます。

を使用mount --bindして、chrootされたシステムにホームフォルダーや/ procなどにアクセスさせることもできます。

chrootされたシステム内から、apt-getはsidリポジトリからインストールされます。

詳細については、https://wiki.ubuntu.com/DebootstrapChrootを参照してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.