Shiba87

Añadir repositorios PPA en Debian de manera (Semi)automática

23 posts en este tema

No es algo usual, pero en alguna ocasión podemos encontrarnos ante la necesidad de añadir un repositorio PPA en Debian para obtener algún paquete o aplicación que no está disponible por ningún otro medio.

 

La manera "normal" de hacer esto para distribuciones basadas en Ubuntu pasa por utilizar el comando add-apt-repository seguido del nombre/propietario del repositorio que queremos añadir, mientras que en Debian hay que añadir la dirección en el sources.list, obtener la llave del repositorio y autentificarlo para poder instalar luego lo que nos interesa, todo de manera manual.

 

Este problema se puede solucionar "casi" del todo instalando el paquete python-software-properties

 

aptitude install python-software-properties
Este paquete nos permitirá añadir repositorios exactamente igual a como lo haría un usuario de Ubuntu, excepto por un pequeño detalle, que veremos ahora.

 


 

El origen del problema

 

Si bien este paquete nos permitirá utilizar el comando add-apt-repository, que añadirá el repositorio al sources.list.d, obtendrá la llave y lo autentificará automáticamente, existe un pequeño inconveniente y es que cuando añadimos un repositorio PPA, éste se añade en función del sistema desde el que lo estamos reclamando. Es decir, que en el momento de añadir el repositorio, este apuntará a testing o a wheezy o a cualquier otra rama o versión de Debian en la que nos encontremos.

Los repositorios PPA están pensados para usarse apuntando a versiones de Ubuntu, por lo que de entrada no podremos descargar nada de ese repositorio, al no existir para éste la versión o rama de Debian a la que estamos apuntando.

 

No obstante, esto tiene fácil solución, basta con cambiar eso manualmente el repositorio que hemos añadido para que apunte a donde es debido.

 


 

Solución 1 (Semiautomática)

 

Los repositorios PPA se incluyen dentro de la carpeta /etc/apt/sources.list.d cada uno en un archivo individual, sólo tendremos que cambiarlo con cualquier editor de texto, como puede ser nano:

 

nano /etc/apt/sources.list./repositorioPPA.list

El que tendrá aspecto será algo similar a:

 

deb http://ppa.launchpad.net/propietario/repositorio/ubuntu wheezy main

Sólo tendremos que cambiarlo por alguna versión de Ubuntu (Preferiblemente alguna que nos pueda brindar un soporte prolongado (LTS), como la más reciente Precise)

 

deb http://ppa.launchpad.net/propietario/repositorio/ubuntu precise main

Evidentemente no es la única forma de llevar a cabo este cambio, podemos hacerlo como más cómodo nos sea, bien desde Orígenes de software, desde synaptic, el Software Center o cualquier otra aplicación gráfica que utilicemos para administrar paquetes/repositorios.

 


 

Solución 2 (Automática)

 

Podemos hacer algunos cambios en python-software-properties para "engañar" el reconocimiento y que ponga siempre la versión de Ubuntu que queramos.

 

Para simplificar el proceso, he editado el archivo de antemano para que indique siempre precise y lo he subido a dropbox, así que sólo hay que descargarlo y sustituirlo:

 

wget http://dl.dropbox.com/u/31330480/SoftwareProperties.py

mv SoftwareProperties.py /usr/share/pyshared/softwareproperties/

Hecho eso, al ejecutar add-apt-repositories apuntará siempre a precise, por lo que no tendremos que cambiar nada, en este caso el proceso sí será totalmente automático.

 


 

Ejemplo práctico

 

Supongamos que queremos añadir el repositorio de JDownloader haciendo uso de este método.

Consultando en Launchpad averiguamos que dicho repositorio es: ppa:jd-team/jdownloader

 

1º Instalamos el paquete que hará el trabajo por nosotros:

 

aptitude install python-software-properties
2º Le damos uso

 

add-apt-repository ppa:jd-team/jdownloader
En el caso de haber optado por la Solución 2, ya habríamos acabado.

 

La solución 1 requeriría un poco más de atención

 

3º Corregimos la versión a la que apuntan los repositorios

 

nano /etc/apt/sources.list.d/jd-team-jdownloader-wheezy.list
Nos encontramos con el problema

 

Y lo cambiamos

 

4º Guardamos y actualizamos la lista de paquetes:

 

aptitude update
Ya tenemos listo ese repositorio para instalar lo que queramos de él :P

Compartir este post


Enlace al post
Compartir en otros sitios

Justo el otro día resolví un problema parecido con la nueva versión de Trisquel 6.0, que no reconocía a Trisquel (aún no habían actualizado el paquete ese de software properties).

Lo que hay que hacer es editar el archivo "SoftwareProperties.py"

nano /usr/lib/python2.7/dist-packages/softwareproperties/SoftwareProperties.py

Y después de la línea 695 agregáis:


codenames = {}

codenames["wheezy"] = "precise"

codenames["testing"] = "precise"

O las ramas que correspondan en cada caso.

Y así ya podréis añadir ppas de forma totalmente automática :D

 

PD: si lo probáis, comprobar que funciones, que en Debian no probé

Editado por Khany

Compartir este post


Enlace al post
Compartir en otros sitios

hola a todos

 

yo lo instale en Debian testing 64 bits he instalado algunas cosillas... pero el wine se me quedo..

add-apt-repository ppa:ubuntu-wine/ppa
apt-get updateapt-get install wine

Leyendo lista de paquetes... Hecho
Creando árbol de dependencias       
Leyendo la información de estado... Hecho
No se pudieron instalar algunos paquetes. Esto puede significar que
usted pidió una situación imposible o, si está usando la distribución
inestable, que algunos paquetes necesarios no han sido creados o han
sido movidos fuera de Incoming.
La siguiente información puede ayudar a resolver la situación:

Los siguientes paquetes tienen dependencias incumplidas:
 wine : Depende: wine1.6 pero no va a instalarse
E: No se pudieron corregir los problemas, usted ha retenido paquetes rotos.
 

en synaptic no hay paquetes rotos estoy buscando pero no encuentro nada que me solucione el problema.

 

 

saludos.

Compartir este post


Enlace al post
Compartir en otros sitios

Mira en /etc/apt/sources.list.d, tendría que haber un archivo *.list que hiciera referencia a wine y en su interior, las líneas correspondientes a ese ppa apuntando a Precise. Si no es así, el ppa no ha sido añadido o se ha añadido mal.

Si todo eso es correcto, el problema es el propio ppa y los paquete que contiene

Compartir este post


Enlace al post
Compartir en otros sitios

El repositorio parece correcto, así que salvo que no se haya actualizado (bien) la lista de paquetes:

 

aptitude update

El problema está en los propios paquetes del PPA que no llevan bien las dependencias o que la han cagado en uno de los últimos cambios

Compartir este post


Enlace al post
Compartir en otros sitios

si es algo extraño otras veces lo he instalado sin ningun problema.

ya lo actulize y sigue sin instalarse

 

aptitude install wine
Se instalarán los siguiente paquetes NUEVOS:     
  wine wine1.6{ab}
Se RECOMIENDAN los siguientes paquetes, pero NO se instalarán:
  cups-bsd cups-bsd:i386 fonts-horai-umefont fonts-unfonts-core
  gnome-exe-thumbnailer kde-runtime ttf-mscorefonts-installer
  ttf-wqy-microhei winbind winbind:i386 winetricks
0 paquetes actualizados, 2 nuevos instalados, 0 para eliminar y 0 sin actualizar.
Necesito descargar 1.208 kB de ficheros. Después de desempaquetar se usarán 3.120 kB.
No se satisfacen las dependencias de los siguientes paquetes:
 wine1.6 : Depende: libc6 (>= 2.14) pero está instalado 2.13-38.
           Depende: libgettextpo0 pero no será instalado.
           Depende: wine1.6-amd64 (= 1.6-0ubuntu1~ppa1) pero no será instalado.
           Depende: wine1.6-i386 (= 1.6-0ubuntu1~ppa1) que es un paquete virtual.
Las acciones siguientes resolverán estas dependencias

     Mantener los paquetes siguientes en la versión actual:
1)     wine [sin instalar]                                 
2)     wine1.6 [sin instalar]                              



¿Acepta esta solución? [Y/n/q/?]
 

Compartir este post


Enlace al post
Compartir en otros sitios

hola a todos

 

estoy intentando Añadir repositorios Solución 2 (Automática) en Debian testing 64 bits

 

wget http://dl.dropbox.com/u/31330480/SoftwareProperties.py
mv SoftwareProperties.py /usr/share/pyshared/softwareproperties/

 

he editado el archivo  nano /usr/lib/python2.7/dist-packages/softwareproperties/SoftwareProperties.py  como dice khany pero no me funciona

 

 

67aebad58f068ab7c414d5b37a004e79o.png

 

 

 

saludos

Editado por vicentef

Compartir este post


Enlace al post
Compartir en otros sitios

Si no lo instalas no podrás hacer uso de la aplicación por mucho que añadas configuraciones porque no existe ningún binario que ejecutar :sweat:

 

Instala primero toda la paquetería:

aptitude install python-software-properties software-properties-common

Y luego ya habrá tiempo de configurar

Compartir este post


Enlace al post
Compartir en otros sitios

hola

estoy instalando debian testing 64 bist en otra maquina, he añadido

 

wget http://dl.dropbox.com/u/31330480/SoftwareProperties.py
mv SoftwareProperties.py /usr/share/pyshared/softwareproperties/

 

todo bien hasta la ppa entra bien "creo"

 

root@debian:/home/visent# sudo add-apt-repository ppa:ubuntu-wine/ppa
You are about to add the following PPA to your system:
 Welcome to the Wine Team PPA.  Here you can get the latest available Wine betas for every supported version of Ubuntu.  This PPA is managed by Scott Ritchie and Maarten Lankhorst.
 More info: https://launchpad.net/~ubuntu-wine/+archive/ppa
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: anillo `/tmp/tmp48wrqg/secring.gpg' creado
gpg: anillo `/tmp/tmp48wrqg/pubring.gpg' creado
gpg: solicitando clave F9CB8DB0 de hkp servidor keyserver.ubuntu.com
gpg: /tmp/tmp48wrqg/trustdb.gpg: se ha creado base de datos de confianza
gpg: clave F9CB8DB0: clave pública "Launchpad PPA for Ubuntu Wine Team" importada
gpg: no se encuentran claves absolutamente fiables
gpg: Cantidad total procesada: 1
gpg:               importadas: 1  (RSA: 1)
OK
 

pero en cuanto actualizo... devuelve esto

 

W: Imposible obtener http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu/dists/jessie/main/binary-amd64/Packages  404  Not Found

E: Some index files failed to download. They have been ignored, or old ones used instead.
 

he probado con otras ppa y hace lo mismo

 

 

saludos

Editado por vicentef

Compartir este post


Enlace al post
Compartir en otros sitios

No has cambiado el archivo SoftwareProperties.py correctamente, por los repositorios eso siguen apuntando a "jessie" en lugar de falsearlos como precise.

 

Una vez añadidos, te tocará ir a /etc/apt/sources.list.d y editarlos a mano. Para los próximos que añadas, asegúrate de haber modificado el SoftwareProperties.py primero :P

Compartir este post


Enlace al post
Compartir en otros sitios

No. Me refiero a editar manualmente todos los repositorios que ya has añadido en /etc/apt/sources.list.d para cambiar los "jessie" o "testing" por "precise".

 

Cambiar el archivo te sirve para todos los que añadas a partir de ahora, pero los que están hechos están hechos, a no ser que los borres y los vuelvas a añadir uno a uno de nuevo :sweat:

Compartir este post


Enlace al post
Compartir en otros sitios

hola

 

desde wheezy he podido instalar por ppa, por ejemplo temas de iconos faenza y ambiance-colors radiance-colors. pero wine se resiste...

 

sudo apt-get install wine
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias       
Leyendo la información de estado... Hecho
No se pudieron instalar algunos paquetes. Esto puede significar que
usted pidió una situación imposible o, si está usando la distribución
inestable, que algunos paquetes necesarios no han sido creados o han
sido movidos fuera de Incoming.
La siguiente información puede ayudar a resolver la situación:

Los siguientes paquetes tienen dependencias incumplidas:
 wine : Depende: wine1.6 pero no va a instalarse o
                 wine1.7 pero no va a instalarse
E: No se pudieron corregir los problemas, usted ha retenido paquetes rotos.

 

desde synaptic no veo que tenga paquetes rotos

 

saludos

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!

Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.

Iniciar Sesión