aptitude, ¿aún no lo usas?

Si usted es de los que piensa que aptitude por ser simplemente un frontend de apt no puede aportar alguna ventaja al manejo óptimo de paquetes, trataré en lo posible en este artículo hacerle cambiar de parecer, o por lo menos mostrarle que en realidad aptitude si ofrece ciertas ventajas sobre apt.

La útil y avanzada herramienta que le permite manejar cómodamente los paquetes, apt (y dpkg) no lleva un registro (ni hace distinciones) de las aplicaciones que se instalan de manera explícita y las que se instalan de manera implícita por consecuencia del primer punto (es decir, para establecer la resolución de dependencias). Esta característica genera ciertos inconvenientes a la hora de desinstalar un paquete que posee dependencias que no son empleadas por otros programas, al momento de realizar la desinstalación lo más seguro es que no queden las cosas muy “limpias” en el sistema.

Un remedio que en principio puede servirle es hacer uso de deborphan (también puede hacer uso de orphaner, un frontend para deborphan); una herramienta de mayor potencia es debfoster, el primero de los mencionados busca librerias huérfanas (como se explico en un artículo anterior) y al pasarle estos resultados al apt-get remove se puede resolver de cierta manera el problema.

El problema de deborphan es que su campo de acción es limitado, por lo que la “limpieza” puede no ser muy buena del todo. En cambio debfoster si hace la distinción de la cual hablaba al principio de este artículo, los paquetes instalados de manera explícita y aquellos que son instalados de manera implícita para resolver las dependencias, por lo tanto debfoster eliminará no solamente las librerias huérfanas tal cual lo hace deborphan si no que también eliminará aquellos paquetes que fueron instalados de manera implícita y que actualmente ningún otro programa dependa de él, también serán eliminados en el caso en que se de una actualización y ya la dependencia no sea necesaria.

Ahora bien, se presenta otra alternativa, aptitude, este frontend de apt si recuerda las dependencias de un programa en particular, por lo que el proceso de remoción del programa se da correctamente. Ya anteriormente había mencionado que apt y dpkg no hacen distinción de las aplicaciones instaladas y Synaptic apenas lleva un histórico, esto en realidad no cumple con las espectativas para mantener un sistema bastante “limpio”.

Aparte de lo mencionado previamente, otra ventaja que he encontrado en la migración a aptitude es que tienes dos opciones de manejo, la linea de comandos, la cual ha sido mi elección desde el comienzo, debido a la similitud de los comandos con los de apt y porque consigo lo que deseo inmediatamente, la interfaz gráfica no me llama la atención, pero quizás a usted si le guste. Adicionalmente, aptitude maneja de manera más adecuada el sistema de dependencias.

Para lograr ejecutar la interfaz gráfica de aptitude simplemente debe hacer:

$ sudo aptitude

De verdad le recomiendo emplear aptitude como herramienta definitiva para el manejo de sus paquetes, primero, si es usuario habitual de apt, el cambio prácticamente no lo notará, me refiero al tema de la similitud de los comandos entre estas dos aplicaciones, segundo, no tendrá que estar buscando “remedios” para mantener limpio el sistema, aptitude lo hará todo por usted.

  • http://cut0ff.blogsome.com cut0ff

    Aptitude es una gran herramienta, es la que yo utilizo para gestionar paquetes y francamente lo hace muy bién, pero (siempre hay un pero) hay algo que no entiendo. Si miramos la pagina del manual no existe ninguna opción para descargar archivos fuente!! algo incomprensible ya que se trata de un front-end del poderoso apt-get, y este si que tiene opciones para descargar codigo fuente. Por eso en estos momentos utilizo, según mis necesidades, uno u otro.

    Salu2

  • ghostbar

    Concuerdo con cut0ff, es muy poderosa, pues sirve para actualizar un sistema con varios meses sin update, que ha pasado de testing a estable, y se actualiza fácilmente, yo lo he probado, sin embargo no puede descargar código fuente, bueno, se usa el apt para ese caso, pero de resto es una excelente herramienta.

  • http://blog.milmazz.com.ve MilMazz

    cut0ff y ghostbar, recuerden que aptitude es un frontend que tiene ciertas funcionalidades de apt-get y apt-cache, aunque también incluye la funcionalidad de hacer distinción entre paquetes instalados de manera explícita y los que no, como bien se explica en el artículo, por ende, podemos concluir que tambien posee la funcionalidad que brinda el debfoster.

    He leido con detenimiento el manual del aptitude y en ninguna parte indica la posibilidad de obtención de los ficheros fuentes.

    Si estamos interesados en optimizar nuestras instalaciones podemos hacer uso de apt-build o en su defecto de apt-get source, este último comando brinda ciertas opciones como --compile, en donde se intentará compilar el fuente y generar el .deb haciendo uso de dpkg-builpackage, también debemos recordar en construir las dependencias de los paquetes que deseamos optimizar.

  • http://cut0ff.blogsome.com cut0ff

    apt-build no funciona en Hoary (recuerdo que en Warty si funcionaba). Cualquier archivo que pretendia compilar con ‘apt-build install blabla’ daba error de “el tamaño difiere”. Y esto con cualquier archivo que quisiera compilar.

    Y bueno, el metodo ‘apt-get source’ ya lo conocia. Ahora estoy probando debuild, el mejor metodo para compilar y empaquetar ;)

  • Pingback: MilMazz » Seleccionando el mejor mirror para debian

  • http://amimusa.org manou

    Buenas MilMazz, te escribo para comentarte una cuestion que podrías añadir al articulo del uso del aptitude.
    Cuando se realizan busquedas mediante aptitude search, en la primera columna aparece una serie de letras que deben servir para darnos cierta informacion acerca del estado del paquete.
    Estaría bien explicar los significados de estos indicadores.
    Hay algunos obvios, pero otros no tanto.
    i: paquete esta instalado
    p: paquete no esta instalado
    v: paquete virtual
    –> como se puede instalar un paquete virtual, o mejor dicho aun, que sentido tiene un paquete virtual

    A: en ocasiones me ha aparecido al lado de la i o la p una A, que significa ?¿

    Hay veces que tambien he visto pi en el mismo paquete, que quiere decir ???

    Mientras actualizas el articulo si me envias por mail una pequeña descripcion te lo agradecere muchisimo.

    Saludos.

  • http://milmazz.com MilMazz

    Hola manou, tomare en cuenta tu sugerencia, en cuanto tenga tiempo lo agrego al pequeño manual que estoy desarrollando, espero poder publicarlo pronto. Muchas gracias por el comentario.