No se puede instalar Emacs 24 desde ppa: cassou / emacs

8

Seguí las siguientes instrucciones para instalar Emacs 24 en mi máquina (tomado de: http://www.mikeyboldt.com/2011/11/30/install-emacs-24-in-ubuntu/ ):

sudo add-apt-repository ppa:cassou/emacs
sudo apt-get update
sudo apt-get install emacs-snapshot

Pero obtengo los siguientes errores:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
emacs-snapshot : Depends: libgnutls26 (>= 2.12.6.1-0) but 2.10.5-1ubuntu3 is to be installed
Depends: libmagickcore4 (>= 8:6.6.9.7) but it is not installable
Depends: libmagickwand4 (>= 8:6.6.9.7) but it is not installable
E: Unable to correct problems, you have held broken packages.
Kevin Albrecht
fuente
1
Prueba sudo apt-get install -f?
jrg
Sin suerte. Después de ejecutar sudo apt-get install -f y luego sudo apt-get autoremove, sigo teniendo el mismo error.
Kevin Albrecht
Estoy enfrentando exactamente el mismo problema.
GeneralBecos
¡Intenté nuevamente después de una actualización y ahora funcionó!
GeneralBecos

Respuestas:

5

Tuve el mismo error ayer. Intenté instalar todos los paquetes de emacs en el repositorio, y cuando eso no funcionó, se me ocurrió que tal vez los conflictos fueran el problema. Como no necesitaba emacs23si emacs-snapshotfuncionaría, hice lo siguiente:

Desinstalar todos los paquetes de Emacs

Antes de continuar, eche un vistazo a los paquetes de emacs que se pueden instalar emitiendo 'sudo apt-cache search emacs'. Si puede sacrificar todo en la salida, continúe con la siguiente sugerencia.

sudo apt-get remove `apt-cache search emacs | awk '{print $1}'` --purge

Si aparece algo más en la salida que desea conservar, una forma rápida de deshacerse de las cosas que no desea es redirigir la salida del comando a un archivo, editar ese archivo y luego usar el contenido de ese archivo para argumentos a apt-get remove.

  1. sudo apt-cache search emacs > remove.txt
  2. Edite remove.txteliminando las líneas de paquetes que desea conservar . El objetivo aquí es deshacerse de todo lo relacionado con emacs, así que deje esos paquetes en el archivo.
  3. sudo cat remove.txt | xargs apt-get remove --purge

Puede obtener algunos errores aquí ya que emacs-snapshot no se pudo instalar correctamente. Si lo hace, intente desinstalar esos paquetes manualmente primero forzando la instalación de los paquetes rotos y luego eliminándolos y purgándolos.

sudo apt-get -f install # don't list packages here
sudo apt-get remove emacs-snapshot --purge

Probablemente también sea una buena idea autocleany autoremove.

sudo apt-get autoclean
sudo apt-get autoremove

Instale Emacs 24

sudo apt-get install emacs-snapshot

Esto supone que tiene el PPA agregado correctamente (también estoy usando el PPA cassou). ¡Todo parece funcionar bien ahora!

Tratar aptitude

Desde que escribí originalmente esta respuesta, me mudé al uso aptitudepara administrar mis paquetes en la línea de comandos. No me gusta la interfaz gráfica (ncurses) que obtienes de la emisión sudo aptitude, por lo que solo la uso cuando necesito resolver dependencias / conflictos sobrantes de experimentar con diferentes entornos de escritorio. La mayoría de las veces, simplemente lo uso como un reemplazo directo para apt-get, como en sudo aptitude install [package].

Relacionado: ¿La aptitud todavía se considera superior a apt-get?

jrhorn424
fuente
no haría esto en 12.04 sudo apt-get remove apt-cache search emacs | awk '{print $1}'--purge Empecé a hacerlo pero quería eliminar la mitad de ubuntu banshee unity geany y el resto de 291mb de ubuntu.
dice
Estoy de acuerdo en que no es deseable hacer eso a ciegas. He editado mi respuesta para sugerir que compruebe la salida de apt-cache search emacsantes de continuar. Para mí, esta fue la única solución que solucionó el problema. No recuerdo haber tenido que reinstalar nada, pero si comete un error, debería ser fácil de corregir con el administrador de paquetes.
jrhorn424
@ jrhorn424 no puede ejecutar este comando "sudo apt-get remove apt-cache search emacs | awk '{print $1}'--purge".
leyenda
2

Tengo Emacs instalado desde este PPA y verifiqué las dependencias. Ubuntu 11.10 funciona con este PPA listo para usar, por lo que no debería tener ningún problema. Aquí está la lista de dependencias para la instantánea emacs:

emacs-snapshot-bin-common (= 1:20111227-1~ppa1~oneiric1)libasound2 (>> 1.0.24.1), libc6 (>= 2.11), libcairo2 (>= 1.2.4), libdbus-1-3 (>= 1.1.1), libfontconfig1 (>= 2.8.0), libfreetype6 (>= 2.2.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libgif4 (>= 4.1.4), libglib2.0-0 (>= 2.26.0), libgnutls26 (>= 2.9.11-0), libgpm2 (>= 1.20.4), libgtk-3-0 (>= 3.0.0), libice6 (>= 1:1.0.0), libjpeg62 (>= 6b1), libm17n-0 (>= 1.6.1), libmagickcore3 (>= 8:6.6.0.4), libmagickwand3 (>= 8:6.6.0.4), libncurses5 (>= 5.5-5~), libotf0 (>= 0.9.11), libpng12-0 (>= 1.2.13-4), librsvg2-2 (>= 2.14.4), libselinux1 (>= 1.32), libsm6, libtiff4, libtinfo5 (>= 5.6+20070908), libx11-6, libxft2 (>> 2.1.1), libxml2 (>= 2.7.4), libxpm4, libxrender1

Algo es una porquería en tus dependencias. Deshabilitaría el PPA, haría una actualización y actualización de apt-get y luego apt-get clean, luego volvería a habilitar el PPA nuevamente y lo probaría.

Anmar Oueja
fuente
1

Solo para información, en Precise Pangolin 12.04 se puede hacer simplemente con

sudo add-apt-repository ppa:cassou/emacs
sudo apt-get update
sudo apt-get install emacs-snapshot

y funciona fuera de la caja.

Leonard Vertighel
fuente
Por "listo para usar", ¿te refieres a una instalación nueva? ¿ emacsYa está presente cuando lo instaló emacs-snapshot?
jrhorn424
Lo siento, quiero decir: una vez que he dado esos comandos, funciona sin ninguna otra intervención.
leonard vertighel
0

Creo que puede ser útil http://zabambo.com/blog/?p=45

aunque es para 24.1, puede cambiar la versión que desee.

STATICOR
fuente
Bienvenido a Ask Ubuntu! Si bien esto puede responder teóricamente la pregunta, sería preferible incluir aquí las partes esenciales de la respuesta y proporcionar el enlace para referencia.
Eric Carvalho el