Wie installiere ich ein einzelnes Paket von Debian Sid?

Wie installiere ich ein einzelnes Paket von Debian Sid?

Nehmen wir zum Beispiel ibus-sunpinyin, das in der Squeeze-Version nicht vorhanden war. Ich werde nicht das ganze System auf den Sid-Zweig umstellen, also möchte ich das einzelne Paket aus dem Sid-Repository herunterladen und es wie folgt installieren:

# 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

Antwort1

Sie können auch versuchen, die Quellpakete aus dem Sid-Repository herunterzuladen und sie auf Ihrem Squeeze-System zu erstellen. Sie könnten jedoch auf Probleme stoßen, wenn viele Abhängigkeiten bestehen oder wenn das Paket von einer Version einer Bibliothek abhängt, die in Squeeze nicht verfügbar ist.

Wenn dies funktioniert, müssen Sie keine weitere Distribution in einem separaten Ordner verwalten, wie dies beim Bootstrap-Ansatz der Fall wäre.

Antwort2

Was Sie WIRKLICH wollen, ist, etwas über Apt-Pinning zu lernen.http://jaqque.sbih.org/kplug/apt-pinning.html

Antwort3

Eine einfache Möglichkeit hierzu besteht darin, Voreinstellungen so festzulegen, dass das System für die meisten Pakete verwendet , bei fehlenden Paketen jedoch auf oder stablezurückgreift .testingunstable

Hier sind die Schritte:

  1. Fügen Sie dies hinzu zu /etc/apt/sources.list:

    deb http://deb.debian.org/debian buster main
    deb http://deb.debian.org/debian testing main non-free contrib
    deb http://deb.debian.org/debian unstable main non-free contrib
    
  2. Schreiben Sie dies in /etc/apt/preferences(oder erstellen Sie die Datei)

    Package: *
    Pin: release a=stable
    Pin-Priority: 700
    
    Package: *
    Pin: release a=testing
    Pin-Priority: 650
    
    Package: *
    Pin: release a=unstable
    Pin-Priority: 600
    
  3. Laufenapt-get update

  4. Installieren Sie das gewünschte Paket (zB apt-get install ibus-sunpinyin)

PS: Sie können die Installation einesinstabilPaket mitapt-get install <package>/unstable

Antwort4

Sie können dies umgehen, indem Sie cdebootstrapmit ein einfaches Sid-System installieren und anschließend chrootmit das benötigte Programm im neuen System ausführen.

cdebootstrapinstalliert ein neues Debian-System aus der von Ihnen gewünschten Distribution in einem Verzeichnis. Anschließend chrootkönnen Sie Programme in dieser anderen Distribution ausführen, ohne einen Neustart oder ähnliches durchführen zu müssen.

Sie können mount --binddem Chroot-System auch Zugriff auf Ihren Home-Ordner, /proc usw. gewähren.

Innerhalb des Chroot-Systems führt apt-get die Installation aus dem Sid-Repository durch.

Eine ausführlichere Erklärung finden Sie unterhttps://wiki.ubuntu.com/DebootstrapChroot.

verwandte Informationen