¿Cómo instalar un solo paquete desde Debian sid?

¿Cómo instalar un solo paquete desde Debian sid?

Tomemos como ejemplo ibus-sunpinyin, que no existía en la liberación de compresión. No voy a cambiar todo el sistema a la rama sid, así que quiero descargar el paquete único del repositorio sid e instalarlo de la siguiente manera:

# 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

Respuesta1

También puede intentar descargar los paquetes fuente del repositorio sid y compilarlos en su sistema squeeze. Podría tener problemas si hay muchas dependencias o si el paquete depende de una versión de una biblioteca que no está disponible en squeeze.

Si esto funciona, entonces no necesita mantener otra distribución en una carpeta separada, como lo haría con el método de arranque.

Respuesta2

Lo que REALMENTE quieres es aprender sobre apt-pinning.http://jaqque.sbih.org/kplug/apt-pinning.html

Respuesta3

Una forma sencilla de hacer esto es establecer preferencias para que el sistema utilice stablela mayoría de los paquetes pero recurra a los paquetes faltantes testingo unstablea los que faltan.

Aquí están los pasos:

  1. Añade esto a /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. Escriba esto /etc/apt/preferences(o cree el archivo)

    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. Correrapt-get update

  4. Instale el paquete que desee (p. ej apt-get install ibus-sunpinyin.)

PD: Puedes forzar la instalación de uninestablepaquete conapt-get install <package>/unstable

Respuesta4

Una forma de solucionar esto es instalar cdebootstrapun sistema sid básico y luego chrootejecutar el programa que necesita dentro del nuevo sistema.

cdebootstrapInstala un nuevo sistema Debian de cualquier distribución que desee en un directorio. Luego, chrootte permite ejecutar programas en esa otra distribución sin reiniciar ni nada.

También puedes usar mount --bindpara permitir que el sistema chroot acceda a tu carpeta de inicio, /proc, etc.

Desde dentro del sistema chroot, apt-get se instalará desde el repositorio sid.

Para una explicación más detallada, consultehttps://wiki.ubuntu.com/DebootstrapChroot.

información relacionada