Texmaker con Qt5 en Slackware Linux

Muchas veces en la vida, cuando descubres algo mejor a lo que tienes ya no quieres dejarlo, me pasó con Linux y me pasó con Latex. Cuando supe lo que era hacer documentos con Latex me olvidé casi por completo de Word o LibreOffice. Simplemente se pueden hacer documentos científicos hermosos. Las fórmulas y ecuaciones matemáticas quedan impecables y eso es algo importante para mis documentos de ingeniería. Eso si, al principio cuesta más trabajo pero al final vale la pena, al menos para mí.

Bien, esta es la historia de como instalé texmaker con Qt5 en mi sistema, Slackware64-current. Antes usaba texmaker con Qt4 pero hay algunas cosas que me molestaban un poco, como tener que instalar ibus-qt, cosa que con Qt5 no ha sido necesario. Todos los paquetes se instalan desde SlackBuilds.org usando la herramienta sbopkg para automatizar un poco.

Instalando requerimientos

NOTA: Compilar Qt5 llevará varias horas (en mi laptop Asus S301L con procesador i7 tarda alrededor de 5-6 horas).

Lo primero que hice fue instalar Qt5 y poppler para ello hay que ejecutar los comandos siguientes:

# sbopkg -i qt5:DOCS=yes
# sbopkg -i poppler-qt5
# sbopkg -i textmaker:QT5GUI=yes

Sin embargo durante la compilación de texmaker se genera el siguiente error de compilación:

Project ERROR: poppler-qt5 development package not found

Este error es debido a que la versión de poppler que se incluye en Slackware es la 0.32.0 y el SlackBuild para poppler-qt5 es para la versión 0.24.3. So …

Instalando la versión correcta

Primero se debe desinstalar la version 0.24.3 poppler-qt5 ya que no servirá.

# removepkg poppler-qt5

Luego hay que descargar el código fuente de poppler-0.32.0 desde http://poppler.freedesktop.org/poppler-0.32.0.tar.xz
Descargar y extraer el SlackBuild http://slackbuilds.org/repository/14.1/libraries/poppler-qt5/.
Colocar el código fuente de poppler-0.32.0.tar.xz en el directorio generado al extraer el SlackBuild.
Editar el archivo poppler-qt5.SlackBuild para colocar la versión correcta del código fuente y comentar la linea con la instrucción para aplicar un pache:

...
VERSION=${VERSION:-0.32.0}
...
#patch -p1 < $CWD/poppler-0.24.2-mocversiongrep.patch

Compilar e instalar poppler-qt5.

# sh poppler-qt5.SlackBuild
# installpkg /tmp/poppler-qt5-0.32.0-x86_64-1_SBo.tgz

Finalmente compilar e instalar texmaker habilitado para Qt5.

# sbopkg -i textmaker:QT5GUI=yes

Para los descuidados

Cuando intenté hacer unas pruebas compilando un documento de Latex me llevé una sorpresa:

Error : could not start the command : pdflatex -synctex=1 -interaction=nonstopmode "test".tex

Aquí fue donde recordé que durante la instalación del sistema omití los paquetes de tetex y tetex-doc, pues mi intención era instalar texlive, mismo que había olvidado instalar hasta ahora. Para Slackware-current no es necesario instalar el paquete libsigsegv (como se indica en los requerimientos del SlackBuild) pues ya se incluye en el sistema. Entonces para instalar texlive, y dejar todo listo para empezar a trabajar con texmaker, solo basta con ejecutar:

# sbopkg -i "texi2html texlive"

Ahora si, a hacer documentos de calidad.

Saludos!

Actualizar paquetes de SlackBuilds instalados usando sbopkg

Para instalar paquetes de terceros en Slackware yo uso sbopkg, como muchos slackers.
sbopkg es una herramienta capaz de actualizar los paquetes instalados mediante la misma. Sin embargo hay que poner mucha atención a la hora de hacerlo. Se debe ser cuidadoso de actualizar primero las dependencias de los paquetes para que no se tengan conflictos.
La aplicación debe ser ejecutada en el terminal y en una sesión de root (o superusuario):

# sbopkg

Una pantalla al estilo ncurses aparecerá, usando la opción Updates se listarán las potenciales actualizaciones de los paquetes instalados:

sbopkg-update-0

sbopkg-update-2

sbopkg-update-3

sbopkg-update-4

Al cerrar la lista de actualizaciones potenciales, se preguntará si se desean agregar los paquetes listados a la cola de procesamiento, indicar que si y posteriormente usar la opción Queue para seleccionar los paquetes a actualizar. Aquí se debe tener cuidado porque la lista se procesa en orden alfabético por lo que se deben eliminar (usando el botón Delete) los paquetes cuyas dependencias se encuentren más abajo de la lista. Se deberá ejecutar sbopkg una segunda vez (o posiblemente más) cuando las primeras dependencias se hayan actualizado.

sbopkg-update-1

Cuando se haya terminado de eliminar de la cola aquellos paquetes que no se van a actualizar en esta primera ejecución, se procede con la actualización usando la opción Process.

sbopkg-update-7

Ahora se pedirá revisar la cola de actualización una vez más, seleccionando solo aquellos paquetes que se van a actualizar. Los paquetes cuya versión instalada sea mayor a la del sitio de SlackBuilds (downgrades) aparecerán desactivados para no ser procesados.

sbopkg-update-8

Luego se pedirá seleccionar la operación que se desea realizar con los paquetes de la cola, se puede hacer solo la descarga, la compilación o la instalación.

sbopkg-update-9

sbopkg-update-10

Finalmente se empezarán a actualizar los paquetes seleccionados de manera normal.

sbopkg-update-11

Si todo sale bien, se informará el éxito al final del proceso.

Con esta herramienta es muy sencillo hacer una actualización de las aplicaciones del sistema que hemos instalado desde los SlackBuilds. Nos ahorra la tarea de buscar los paquetes de uno por uno y checar si existe una actualización.

Es recomendable que se consulte el sitio de SlackBuilds.org para buscar información de los paquetes que se van a actualizar. Algunos, por ejemplo, deben desinstalarse por completo antes de intentar compilar una versión nueva. Otros no se actualizarán de esta manera debido a ciertas restricciones (como programas privativos distribuidos en binario o ejecutables).

Finalmente, la única desventaja del proceso de actualización es el tiempo nos lleva actualizar todo, pues Slackware no utiliza un sistema de resolución de dependencias y tampoco la aplicación de sbopkg, así que aquellos paquetes que requieran de muchas dependencias deben dejarse para el final, probablemente sea necesario ejecutar la opción de actualización varias veces para ir resolviendo dependencias de manera ordenada.

Have fun!

Actualizando glibc

A pesar de que la noticia de la vulnerabilidad GHOST de glibc ya lleva un par de días, quiero publicar el sencillo método de dos pasos que hay que seguir para actualizar.
Primero hay que descargar los paquetes apropiados para la versión de Slackware que tengamos instalada, las versiones afectadas son 13.0, 13.1, 13.37, 14.0 y 14.1.
Los paquetes son:

  • glibc
  • glibc-i18n
  • glibc-profile
  • glibc-solibs
  • glibc-zoneinfo-2014j

Para 32 y 64 bits se descargan desde el sitio ftp.slackware.com, los enlaces de descarga se ponen a disposición en el aviso de seguridad.
Sin embargo si tienes un equipo con Slackware multilib (64 bits con compatibilidad para aplicaciones de 32 bits), ninguno de estos paquetes servirá. Los adecuados se encuentran en el sitio de AlienBob (que por cierto expresó enojo en una publicación de su blog cuando ciertas personas le exigieron que publicara cuanto antes los paquetes) y se pueden descargar desde este enlace, solo hay que escoger la versión correcta.
Una vez descargados solo hay que acceder al directorio donde se encuentran los paquetes, usando el Terminal y ejecutar como usuario root:

# upgradepkg --reinstall glibc-*

¡Saludos!

Grive en Slackware

GriveGrive es la implementación independiente y de código abierto del cliente de Google Drive para Linux, en vista de que Google aún no provee de un cliente oficial para esta plataforma. Grive está escrito en C++ y su código está liberado bajo la licencia GPLv2.

Actualmente Grive en su versión 0.2.0 se encuentra en estado beta, el cliente es capaz hacer una sincronización entre Google Drive y el directorio local al que se encuentre ligado, puede cargar y descargar los cambios en archivos y directorios.

Por otro lado, las principales limitantes son los directorios con múltiples padres: la jerarquía de una cuenta de Google Drive es compleja y no puede visualizarse como un esquema de «árbol», en vez de eso, hay que pensarla más como una red interconectada a ligada a un punto raíz. Cosa que obviamente un sistema de archivos local no puede ser, por lo que no es posible que haya compatibilidad entre la jerarquía de Drive y el directorio local. La segunda limitante es que Grive no descarga los documentos con el formato de Google, por ejemplo aquellos que vemos en el navegador web.

Instalando Grive en Linux

Hasta ahora, en Linux, solo hay disponible un paquete para Ubuntu, por lo que para instalar Grive en Slackware hay que proceder a compilar desde el código fuente. Por suerte disponemos de un SlackBuild (cuyo autor es willysr) que podemos usar para automatizar el proceso, lo único que tenemos que hacer es descargar el código fuente (tarball 0.2.0).

Como es requerido, colocamos el código fuente en el mismo directorio del SlackBuild y lo ejecutamos como root:

# ./grive.SlackBuild

NOTA: Es necesario tener instalado json-c primero.

Me apareció el siguiente mensaje de error durante la compilación:

Linking CXX executable grive
/usr/bin/ld: ../libgrive/libgrive.a(Json.cc.o): undefined reference to symbol 'json_object_array_get_idx'
/usr/bin/ld: note: 'json_object_array_get_idx' is defined in DSO /lib64/libjson-c.so.2 so try adding it to the linker command line
/lib64/libjson-c.so.2: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[2]: *** [grive/grive] Errore 1
make[1]: *** [grive/CMakeFiles/grive_executable.dir/all] Errore 2
make: *** [all] Errore 2

Para solucionar este problema hay que descomprimir el tarball del código fuente, modificar el archivo cmake/Modules/FindJSONC.cmake como se muestra aquí:

-FIND_PATH(JSONC_INCLUDE_DIR json/json.h)
-FIND_LIBRARY(JSONC_LIBRARY NAMES json)
+FIND_PATH(JSONC_INCLUDE_DIR json-c/json.h)
+FIND_LIBRARY(JSONC_LIBRARY NAMES json-c)

Guardar el archivo y crear de nuevo el tarball (es necesario borrar o renombrar el original primero):

$ tar pczf grive-0.2.0.tar.gz grive-0.2.0

Limpiar el cache para usar el nuevo tarball:

# rm -rf CMakeCache.txt cmake_install.cmake CMakeFiles Makefile

Y volver a ejecutar el SlackBuild, una vez creado el paquete de Slackware solo hay que instalarlo con installpkg.

Usando grive

Para la primera ejecución debemos entrar al directorio en el que deseamos que se sincronice grive, yo recomiendo crear uno nuevo y ejecutar:

$ grive -a

-----------------------
Please go to this URL and get an authentication code:

https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile+https%3A%2F%2Fdocs.google.com%2Ffeeds%2F+https%3A%2F%2Fdocs.googleusercontent.com%2F+https%3A%2F%2Fspreadsheets.google.com%2Ffeeds%2F&redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=code&client_id=22314510474.apps.googleusercontent.com

-----------------------
Please input the authentication code here:

Nos pide ir a la dirección mostrada, misma que nos dará un código que hay que introducir. Una vez que se introduzca el código empezará la sincronización en el directorio en el que estemos ejecutando el comando:

Reading local directories
Synchronizing folders
Reading remote server file list

Ahora cada que hagamos un cambio en nuestro directorio local o en Google Drive solo debemos ejecutar:

$ grive

Saludos.

ffmpeg: una herramienta siempre útil

ffmpeg-logo

Una herramienta que siempre instalo cuando acabo de hacer una instalación nueva de Slackware Linux (como ahora) es ffmpeg (aquí la forma en que la instalé en Slackware 14.0 que es prácticamente igual), esta herramienta es una dependencia de una buena cantidad de programas que suelo utilizar en Linux por lo que siempre es de las primeras. Y como quiero tenerla mas o menos completa, primero hago una instalación de algunas de sus dependencias opcionales, como se explica a continuación.

Como siempre yo utilizo sbopkg, para no complicarme mucho la existencia y agilizar el proceso de descarga y compilación. La instalación de las dependencias opcionales la hago con el siguiente comando:

# sbopkg -i "libass libbluray celt libdc1394 libmp4v2 faac frei0r gsm libiec61883 libavc1394 libilbc openjpeg ladspa_sdk lame libmodplug OpenAL opencore-amr opus rtmpdump orc schroedinger speex twolame libvpx x264 xvidcore"

ffmpeg_01

Lo siguiente es instalar el paquete de ffmpeg, para ello hay que asegurarse de que estemos en una shell de root verdadera, esto lo hacemos con el comando «su -«.

Las dependencias opcionales instaladas anteriormente, proporcionan características extras a ffmpeg, pero estas no se detectan automáticamente por lo que se deben pasar algunos parámetros al comando de instalación.

El comando de instalación detallado es el siguiente:

# sbopkg -ri ffmpeg:ASS=yes:BLURAY=yes:CELT=yes:DC1394=yes:FAAC=yes:FREI0R=yes:GSM=yes:IEC61883=yes:ILBC=yes:JP2=yes:LADSPA=yes:MODPLUG=yes:OPENAL=yes:OPENCORE=yes:OPENSSL=yes:OPUS=yes:RTMP=yes:SCHROEDINGER=yes:SPEEX=yes:TWOLAME=yes:VPX=yes:X264=yes:XVID=yes

ffmpeg_02ffmpeg_03

Cuando pregunte por las opciones de linea de comandos contestamos con una letra «c», para que se acepten.

Listo ahora tenemos instalada la herramienta en Linux.

Saludos.

Instalar LibreOffice 4.1 en Slackware

Hasta ahora no hay disponible un paquete de LibreOffice 4.1 para Slackware, y esto seguro es debido a que la comunidad de usuarios no ve necesidad hasta el momento de tener la última versión de la suite de ofimática en esta distribución, por eso se está esperando hasta que la aplicación tenga cierta estabilidad. Sin embargo para aquellos que como yo quieran probar las últimas novedades de LibreOffice les dejo la manera en que logré instalarlo en mi Slackware 14.0.

Instalando el programa principal

Primero hay que descargar el SlackBuild desde aquí:

$ wget http://slackbuilds.org/slackbuilds/14.0/office/libreoffice.tar.gz

Y una vez que lo hemos descomprimido…

$ tar xvzf libreoffice.tar.gz
$ cd libreoffice

LibreOffice_41_en_Slackware

Hay que modificar el SlackBuild, pues debemos recordar que el script está hecho para la versión 4.0.4, entonces se modifica la línea de la versión de la siguiente manera:

$ vim libreoffice.SlackBuild

De esto:

VERSION=${VERSION:-"4.0.4"}

A esto:

VERSION=${VERSION:-"4.1.1"}

Y de esto:

mv desktop-integration/libreoffice$SRCSHORT-freedesktop-menus-$SRCSHORT*.noarch.rpm .

Agregando un # al inicio para comentar la línea, como se muestra:

#mv desktop-integration/libreoffice$SRCSHORT-freedesktop-menus-$SRCSHORT*.noarch.rpm .

Quedando como se muestra en las imágenes:

libreoffice41-slackware-04

libreoffice41-slackware-07

Luego hay que descargar el paquete de LibreOffice desde aquí:

$ wget http://download.documentfoundation.org/libreoffice/stable/4.1.1/rpm/x86_64/LibreOffice_4.1.1_Linux_x86-64_rpm.tar.gz

Esperamos unos minutos que termine de descargar y cuando haya finalizado ejecutamos el SlackBuild como root:

# sh libreoffice.SlackBuild

libreoffice41-slackware-06

Cuando se haya generado el paquete, instalar como de costumbre, antes hay que desinstalar cualquier versión existente:

# removepkg libreoffice
# removepkg libreoffice-l10n-es
# removepkg libreoffice-mozplugin

En mi caso tenía instalado LibreOffice 4.0.3 con sus respectivo paquete de español. Ahora si instalar…

# installpkg /tmp/libreoffice-4.1.1-x86_64-1_SBo.tgz

libreoffice41-slackware-12

Y ahí lo tenemos… tan feo como siempre.

libreoffice41-slackware-13

Instalando la ayuda en español

Descargar el SlackBuild para la ayuda desde aquí:

$ wget http://slackbuilds.org/slackbuilds/14.0/office/libreoffice-helppack.tar.gz

Descomprimir y descargar el código fuente:

$ tar xvzf libreoffice-helppack.tar.gz
$ cd libreoffice-helppack
$ wget http://download.documentfoundation.org/libreoffice/stable/4.1.1/rpm/x86_64/LibreOffice_4.1.1_Linux_x86-64_rpm_helppack_es.tar.gz

Editar y ejecutar el SlackBuild:

$ vim libreoffice-helppack.SlackBuild

Cambiar la versión de 4.0.4 a 4.1.1 y el idioma de en-US a es:

libreoffice41-slackware-16

# sh libreoffice-helppack.SlackBuild

Instalar:

# installpkg /tmp/libreoffice-helppack-4.1.1_es-x86_64-1_SBo.tgz

libreoffice41-slackware-18

Instalando el paquete de traducción a español

Descargar el SlackBuild y descomprimirlo:

$ wget http://slackbuilds.org/slackbuilds/14.0/office/libreoffice-langpack.tar.gz
$ tar xvzf libreoffice-langpack.tar.gz
$ cd libreoffice-langpack

Descargar el código fuente:

$ wget http://download.documentfoundation.org/libreoffice/stable/4.1.1/rpm/x86_64/LibreOffice_4.1.1_Linux_x86-64_rpm_langpack_es.tar.gz

Editar y ejecutar el script:

$ vim libreoffice-langpack.SlackBuild
# sh libreoffice-langpack.SlackBuild

libreoffice41-slackware-20

Igual el cambio es la versión de 4.0.4 a 4.1.1 y el idioma de en-US a es.

Instalar y listo:

# installpkg /tmp/libreoffice-langpack-4.1.1_es-x86_64-1_SBo.tgz

libreoffice41-slackware-22

Obviamente se puede hacer todo esto sin uso del terminal o usando un editor de texto diferente a vim, pero yo lo encuentro más divertido.

Saludos…

ffmpeg: Instalación en Slackware 14.0

ffmpeg-logo

Ya antes he escrito una entrada sobre la instalación de ffmpeg, algunas de las formas de usarlo y resolver algunos problemas aquí. Ahora voy a colocar la forma en la que lo acabo de instalar en mi nuevo sistema: Slackware 14.0 de 64 bits.

FFmpeg es una colección de software libre que puede grabar, convertir (transcodificar) y hacer streaming de audio y vídeo. Incluye libavcodec, una biblioteca de códecs. FFmpeg está desarrollado en GNU/Linux, pero puede ser compilado en la mayoría de los sistemas operativos, incluyendo Windows.

Primero les muestro un pequeño esquema de los requerimientos de esta aplicación:

+ffmpeg
 |
 +-Requirements
 | |
 | +-lame
 | +-x264
 |
 +-Optional
   |
   +-libass
   +-libbluray
   +-celt
   +-libdc1394
   +-faac
   | |
   | +-libmp4v2
   |
   +-frei0r
   +-gsm
   +-openjpeg
   +-lame *
   +-OpenAL
   +-opencore-amr
   +-rtmpdump
   +-schroedinger
   | |
   | +-orc
   |
   +-speex
   +-libvpx
   +-x264 *
   +-xvidcore

Se incluyen algunas dependencias opcionales, sin embargo no consideré las dependencias opcionales de estas para no hacer más largo el asunto. Algunas dependencias (*) están repetidas.

Primero para instalar las dependencias hay que ejecutar como root:

# sbopkg -i "libass libbluray celt libdc1394 libmp4v2 faac frei0r gsm openjpeg lame OpenAL opencore-amr rtmpdump orc schroedinger speex libvpx x264 xvidcore"

Entrar en una root shell «real» (el guión al final es necesario):

$ su -

Una vez entrada la contraseña de superusuario proceder a instalar ffmpeg:

# sbopkg -i ffmpeg:ASS="yes":BLURAY="yes":CELT="yes":DC1394="yes":FAAC="yes":FREI0R="yes":GSM="yes":JP2="yes":LAME="yes":OPENAL="yes":OPENCORE="yes":OPENSSL="yes":RTMP="yes":SCHROEDINGER="yes":SPEEX="yes":VPX="yes":X264="yes":XVID="yes"

Con esto tendremos el paquete de ffmpeg instalado y listo para correr ;).

Fuentes:

SlackBuilds
Wikipedia

Eric 4.5.9: IDE para desarrollo en Python

La historia

Hace apenas un día actualicé el entorno de escritorio de Slackware 14.0. Lo hice con los paquetes de AlienBob de KDE 4.10.1, la instalación es relativamente sencilla siguiendo las instrucciones que tan amablemente AlienBob escribe para cada actualización de este tipo. Actualizar provocó que al ejecutar programas que dependen de QScintilla (o Python) como QGIS y Eric IDE tuvieran problemas para ejecutarse, se generaba un error como el siguiente:

RuntimeError: the sip module implements API v9.0 to v9.1 but the PyQt4.Qsci module requires API v8.

Esto ya me había pasado al actualizar a KDE 4.10 y lo solucioné recompilando QScintilla (por recomendación de AlienBob y Willy Sudiarto). Y ya con esto tuve que recompilar las aplicaciones que tenían problemas.

Instalando Eric

Bueno, dicho lo anterior, si tenía que reinstalar Eric IDE decidí curiosear y ver si había una versión más reciente. Encontré que la versión 4.5.9 estaba disponible, en SlackBuilds se tiene una versión más vieja la 4.5.6. Además existe la posibilidad de ponerla en español.

Lo primero que hay que hacer es descargar los archivos de código fuente siguientes desde el sitio oficial del proyecto:

  • eric4-4.5.9.tar.gz
  • eric4-i18n-es-4.5.9.tar.gz

El primero es el archivo del código fuente del programa y el segundo los paquetes para instalarlo en nuestro querido idioma español. Teniendo estos archivos hay que descargar solo el SlackBuild, es decir solo el archivo llamado eric.tar.gz.

Una vez descargado el archivo hay que descomprimirlo, posteriormente hay que copiar los dos archivos fuentes al directorio creado:

$ tar -xvzf eric.tar.gz
$ mv eric4-4.5.9.tar.gz eric
$ mv eric4-i18n-es-4.5.9.tar.gz eric

Luego hay que editar el SlackBuild y configurarlo para la versión y el idioma que deseamos:

$ nano eric.SlackBuild

Solo dos líneas hay que modificar y deben quedar así:

VERSION=${VERSION:-4.5.9}
LANGUAGE=${LANGUAGE:-es}

Finalmente hay que ejecutar el script e instalar el paquete generado:

# sh eric.SlackBuild
# installpkg /tmp/eric-4.5.9-i486-1_SBo.tgz

Ahora ya tenemos Eric instalado.

Características de Eric

Hay muchos editores o entornos de desarrollo especiales para Python, o incluso algunos que son para otros lenguajes pero que se pueden adaptar para soportar Python. Sin embargo he encontrado Eric muy funcional y me ha agradado. Creo que todos los que usamos Python empezamos y hemos utilizado IDLE, es un editor que no le pide nada a ningún otro pero al igual que vi, vim, nano o incluso kwrite… solo es un editor, y cualquiera de ellos me empezó a resultar incómodo al manejar un proyecto relativamente grande, pues había que tener bastantes ventanas abiertas. Es por ello que empecé a buscar alternativas y encontré varias, pero después de probar algunas, me gustó y me quedé con la opción de Eric. En primera (y no por ello más importante) está escrito en Qt y se integra bien con KDE, soporta Ruby aunque no lo uso para este lenguaje, es fácil de aprender, de usar y configurar.

Es importante mencionar que no incluye un diseñador para GUI pero incluye soporte básico para wxPython por medio de plugins y me parece, con la libertad a equivocarme, que también para QtDesigner.

Algunas de las características que me gustan y uso de Eric son:

  • El editor usa QScintilla
  • Número ilimitado de editores
  • Apariencia personalizable
  • Resaltado de sintaxis
  • Autocompletado de código (palabras reservadas, variables, comillas, paréntesis)
  • Resaltado de errores
  • Shell de Python incluida (con resaltado de sintaxis y autocompletado)
  • Debbuger integrado
  • Facilidad de integración con PyQt
  • Navegador web integrado
  • Ayuda de otros elementos integrada (como PyQt)

He aquí una vista de este editor.

eric

Saludos.

sbopkg para Slackware 14.0

Bueno señores Slackware 14.0 es ahora nuestra nueva versión de esta excelente distribución de Linux, y desde que salió a la luz seguro que hemos estado configurándola e instalándole los paquetes que necesitamos. Y para aquellos que estuvimos todos estos días descargando fuentes y tarballs de SlackBuilds para armar nuestro sistema, les tengo una excelente noticia, la aplicación sbopkg 0.36.0 ha sido liberada el día de ayer (2012-10-04 03:05 UTC) y tiene las siguientes:

NUEVAS CARACTERÍSTICAS

  • Versión lista para Slackware 14.0. Ya que en SlackBuilds.org existen desde hace unos días paquetes/scripts para 14.0.
  • Soporte para la opción -d que descarga sin compilar o instalar, adicionalmente a -b (descargar, compilar) y -i (descargar, compilar, instalar).
  • Ahora es posible combinar la opción -r con otras opciones, y esto hará una sincronización con el repositorio antes de hacer lo demás.
  • Nueva opción de configuración, NICE que permite al usuario especificar el nivel de «amabilidad» para la ejecución del SlackBuild.

Más información en el ChangeLog.

DESCARGA E INSTALACIÓN

Para descargar la nueva versión de la aplicación hay que ir al sitio de descargas y elegir entre, el código fuente o el paquete compilado para Slackware.

Yo decidí descargar el paquete, y para instalarlo es tan fácil como hacer en algún Terminal como usuario root:

# installpkg sbopkg-0.36.0-noarch-1_cng.tgz

Como siempre aparecerá algo como lo siguiente:

Verifying package sbopkg-0.36.0-noarch-1_cng.tgz.
Installing package sbopkg-0.36.0-noarch-1_cng.tgz:
PACKAGE DESCRIPTION:
# sbopkg (SlackBuilds.org Package Browser)
#
# Sbopkg is a command-line and dialog-based tool to interact with the
# SlackBuilds.org repository, a collection of third-party SlackBuild
# scripts to build Slackware packages.
#
# Homepage: http://www.sbopkg.org
#
Executing install script for sbopkg-0.36.0-noarch-1_cng.tgz.
Package sbopkg-0.36.0-noarch-1_cng.tgz installed.

Listo para usarse.

CONFIGURACIÓN INICIAL

Lo primero que hay que hacer es sincronizar el repositorio con:

# sbopkg -r

Pedirá crear unos directorios si es que no se tienen.

The following directories do not exist:

Variable Assignment
-------- ----------
REPO_{ROOT,NAME,BRANCH} -> /var/lib/sbopkg/,SBo/,14.0

You can have sbopkg create them or, if these values are incorrect, you can
abort to edit your config files or pass different flags.

(C)reate or (A)bort?: c

Contestamos «C» y empezará a sincronizar:

Syncing with the remote repository into /var/lib/sbopkg/SBo/14.0.

Una vez que termine el programa está listo para instalar la mayoría de los scripts encontrados en el sitio de SlackBuilds.org solo basta con usar el comando y listo.

EJEMPLO

Un ejemplo de uso de sbopkg se muestra a continuación, instalando el paquete librecad que a su vez necesita muParser, primero se instala la dependencia y luego el paquete deseado, esto se puede hacer pasándole la lista de aplicaciones que se deseen instalar, pueden ser más de dos.

# sbopkg -i "muParser librecad"

Tardará un rato en descargar, compilar e instalar las aplicaciones.

Listo, a seguir usando nuestro Slackware 14.0.

Mas información aquí.

FUENTES

http://www.sbopkg.org/
ChangeLog

Matplotlib 1.1.0 en Slackware -current

Una de las actualizaciones que mas me gustó en el último Slackware-current es Python, ya que después de mucho tiempo usando la antigua versión 2.6.6 por fin llegó la versión 2.7.3 que es la recomendada de la rama 2.x en el sitio oficial.

python27

Después de actualizarse Python, las librerías de Matplotlib dejaron de funcionar, por lo que me di a la tarea de hacerlas correr de nuevo.

Lo que hay que hacer es volver a instalar Matplotlib para que reconozca la nueva versión de Python, sin embargo antes de hacerlo es necesario instalar primero las siguientes dependencias:

  • numpy
  • pytz
  • python-dateutil

Los scripts para instalar estos paquetes en Slackware 13.37 (funcionan también en current) se pueden encontrar en SlackBuilds.org, y como siempre la opción fácil que yo uso es mediante el programa sbopkg.

Primero hay que sincronizar el listado de paquetes por si hay cambios recientes.

# sbopkg -r

Ahora si el comando para instalar todos los paquetes:

# sbopkg -i "numpy pytz pysetuptools python-dateutil matplotlib"

Recordar que si ya se tiene algún paquete de estos instalado simplemente hay que omitirlo, pysetuptools es requerido por python-dateutil por eso entra en la lista.

SITIO ALTERNATIVO

En Slackware es posible instalar Matplotlib mediante un script de SlackBuild descargandolo junto con los otros dos archivos este sitio.

Sin embargo eso únicamente descarga el script por lo que hay que conseguir las fuentes desde sourceforge.

Una vez que se tienen ambos, hay que colocar todos los archivos juntos en el mismo directorio y ejecutar:

# chmod +x matplotlib.SlackBuild
# ./matplotlib.SlackBuild

FINALMENTE

Cuando se omiten las dependencias sale un error como el siguiente:

ImportError: No module named dateutil.rrule

Pero si todo va bien se tendrá un sistema Slackware lo más actual posible y con Matplotlib funcionando a la perfección, ahora resta hacer los cambios necesarios en el código de Python para la vesión 2.7.3.

matplotlib1

Saludos.