Noticias Interesantes de Linux

martes 30 de septiembre de 2008

iotop, herramienta para ver que sucede en tus discos


Quizás te ha pasado que estas trabajando en tu PC y empiezas a escuchar actividad en el disco duro cuando no debería o por algún motivo quisieras saber que es lo que esta sucediendo en tus discos.

Para poder saber eso puedes usar iotop, el cual es una herramienta basada en Python que imita la apariencia del comando top de Linux, pero mostrando información del disco duro.

Para usarlo necesitas Python 2.5 o superior y kernel de Linux 2.6.20 o superior.

Lo puedes instalar usando el comando git:



git clone git://repo.or.cz/iotop.git


O descargando las fuentes y depsues de descomprimir ejecutar lo siguiente:



$ sudo python setup.py build
$ sudo python setup.py install
$ iotop



Video del editor Bluefish

Bluefish es un editor gráfico (GUI) de código y texto que corre en la mayoría de sistemas operativos compatibles con POSIX como Linux, FreeBSD, MacOSX, OpenBSD y Solaris. Tiene una impresionante lista de características y es liviano y rápido. Actualmente no se encuentra
con un fuerte desarrollo porque el programa ya esta maduro y hace exactamente para lo cual fue creado.

Varios escritores de paginas web usan Bluefish diariamente porque lo encuentran ideal para editar texto para producir copias que aparecerán en la web en vez de en papel. Es también una excelente herramienta para programadores Web, el cual es el grupo de usuarios para quienes
se creó originalmente.

Este breve vídeo te dará una idea de como trabaja Bluefish, como luce y lo que se puede hacer con el. Después de verlo, quizás quieras descargar y usar Bluefish, lo cual es fácil de hacer si eres un usuario de Linux.



Descargar Vídeo.

Fuente.

lunes 29 de septiembre de 2008

Documental Codigo Linux, en Español

Código Linux es un documental que habla de los inicios de Linux y también de la tendencia OpenSource, esta hecho por una TV Finlandesa. Muy bueno para los que tienen alguna participacion en la educacion en Linux o software libre, y en general para todos los que quieren saber un poco mas de Linux y el OpenSource.

Aunque quizas ya muchos lo hayan visto, les dejo el link para los que aun no lo han podido ver,
traducido al español.

http://video.google.com/videoplay?docid=6729008725344610785

viernes 26 de septiembre de 2008

5 Formas de Buscar archivos en un Terminal

Estas son algunas de las 5 maneras de buscar archivos usando el Terminal en Linux.

1) find: Para buscar archivos en la linea de comando puedes usar el comando find, su sintaxis es la siguiente:

"find ruta criterio acción"

Donde:

ruta es la sección del sistema de archivo donde buscar (el directorio especifico y todos los subdirectorios). Si no se especifica nada el directorio que se usara sera donde te encuentras actualmente.

criterio es las propiedades del archivo.

acción son opciones que influyen en la condición o control de la búsqueda



2) locate: el comando locate es una alternativa al comando find. El comando find debe buscar a través de la parte del sistema de archivos seleccionado, proceso que puede ser un poco lento. Por otro lado, locate busca a través de una base de datos previamente creada para ese propósito (/var/lib/locatedb), haciéndolo mas rápido. La base de datos es automáticamente creada y actualizada diariamente. Pero los cambios hechos después de haber sido actualizado no se tomaran en cuenta por locate, a menos que actualices la base datos manualmente usando el comando updatedb



3) whereis: el comando whereis retorna los binarios (opción -b), pagina de manual (opción -m) y los código fuentes (opción -s) de un comando especifico. Si no se usa ninguna opcion devolverá toda la información, si esta disponible. Este comando es mas rápido que find pero es menos minucioso.



4) which: el comando wich busca todas las rutas listadas en la variable PATH para un comando especifico y devuelve la ruta completa del comando. El comando es específicamente útil si existen varias versiones del mismo comando en diferentes directorios y si quieres saber que versión se ejecuta cuando no se especifica ninguna ruta.



5) type: el comando type puede ser usado para buscar que clase de comando es ejecutado cuando es ingresado un comando del shell o externo. La opcion -a devuelve todas las instancias de un comando.


Fuente.

jueves 25 de septiembre de 2008

Explicando que es Linux a quien NO sabe

Acabo de leer un comentario sobre como explicarle a alguien que no tiene idea que cosa es Linux.
Me parece bien sencilla la forma en como lo explican y ademas de seguro lo entederá hasta el mas neófito.

Bueno ahí te dejo el enlace para que lo revises.

miércoles 24 de septiembre de 2008

Cambiar el volumen usando codigo Bash

Si usas ALSA para el sonido de tu sistema, las funciones contenidas en el siguiente script (código) presentado aquí puede ser usado para obtener y manejar
el volumen en tu sistema. Lo puedes usar si tienes un script monitoreo ejecutándose y lo quisieras incrementar el volumen cuando recibes una alarma
y luego bajarlo al anterior volumen.

Esta función usa amixer para la salida de información por el control mezclador maestro y usa grep y cut para obtener el valor correcto de la salida.
También usa amixer para configurar el volumen. Usa la opción "cset" de amixer.

El script es el siguiente:



#!/bin/bash
#

#####################################################################
# Obtener el volumen actual.
function obtener_volumen()
{
mixer=$(amixer get Master | grep 'Front Left:')

echo $mixer | cut -d ' ' -f 4
}


#####################################################################
# Configurar volumen.

function config_volume()
{
amixer cset iface=MIXER,name="Master Playback Volume" $1 >/dev/null

}

if [[ $(basename $0 .sh) == 'sound' ]]; then

sound_file=~/Documents/sounds/notify.wav
if [[ "$1" ]]; then sound_file="$1"; fi

ovol=$(obtener_volumen)
echo "Volumen actual: $ovol"
aplay $sound_file

sleep 2

vol=40
echo "Tocando a: $vol"
config_volumen $vol
aplay $sound_file

sleep 2

echo "Otra vez a: $ovol"
config_volumen $ovol
aplay $sound_file
fi



# vim: tabstop=4: shiftwidth=4: noexpandtab:
# kate: tab-width 4; indent-width 4; replace-tabs false;



Si guardas el script como sound.sh y lo ejecutas directamente pasando el nombre del archivo de sonido, este lo tocara al volumen actual, luego incrementara el volumen y lo tocara de nuevo y finalmente restaura el volumen y lo ejecuta de nuevo por ultima vez. Si abres el control de volumen antes de ejecutar el script deberías ver el control del volumen maestro (master) moverse cuando el script cambia el volumen. Puedes ajustar el valor de la linea vol=40 para obtener el volumen que deseas.

Fuente.

martes 23 de septiembre de 2008

Monitorizar procesos con kill

Si tienes el ID de un proceso pero no estas seguro que sea valido, puedes usar el mas indeseado de los
candidatos para probarlo, el comando kill. Si no vez ninguna referencia a este comando el pagina "man kill(1)"
entonces mira la pagina de info. La pagina man/info dice que la señal 0 es especial y que el código de salida de kill
informa si una señal puede ser enviada a un proceso especifico o procesos.

Entonces kill -0 no terminara el proceso y el estado de retorno puede ser usado para determinar si un proceso
esta corriendo. Por ejemplo:




$ echo $$ # muestra el id de tu proceso
12833
$ /bin/bash # crea nuevo proceso
$ echo $$ # muestra el id del nuevo proceso
12902
$ kill -0 12902
$ echo $? # salida
0
$ exit # regresa al shell anterior
$ kill -0 12902
bash: kill: (12902) - No hay proceso
$ echo $? # no existe, código de salida es 1
1


Varios de los procesos UNIX guardan sus IDs de procesos en el directorio /var/run cuando son iniciados.
Usando kill -0 para probar el pid es mas fácil que revisar la salida de ps. Por ejemplo para probar
si cron esta ejecutándose, has lo siguiente:



# kill -0 $(cat /var/run/cron.pid)
# echo $?
0


lunes 22 de septiembre de 2008

Arrastrar y Soltar desde Nautilus a un Terminal

Esta usando Nautilus y entras a una carpeta para trabajar con un archivo y en eso te das cuenta que ese archivo lo necesitas trabajar desde una consola, no es necesario que abras el terminal y escribas toda la ruta donde esta el archivo. Felizmente Nautilus te permite usar el arrastrar y soltar (Drag and Drop) hacia un terminal.

El siguiente vídeo te muestra como funciona.


viernes 19 de septiembre de 2008

Mandriva Mini, version de Mandriva para Netbooks

La compañía francesa de software, Mandriva, ha lanzado la versión de su distribución de Linux diseñadas para netbooks. Apuntado para equipo (OEM) y (ODM), Mandriva Mini es rápida al encender y es una copia pequeña de la versión de escritorio de Mandriva.


Basada en Mandriva 2008, la cual fue lanzada el pasado Octubre, Mandriva Mini esta diseñado para trabajar en formato pequeño, netbooks de bajo costo, las cuales tienen pantallas de 7 a 10 pulgadas, soporta las plataformas de las netbooks basadas en Intel Atom. De acuerdo con un reporte sobre netbooks hecho por Market Intelligence Center (MIC), netbooks alcanzaran ventas de 8.02 millones de unidades en el 2008 y 18.3 millones para el 2009.


No extraños en la categoría de netbooks, Mandriva fue el primer distribuidor oficial de Linux para la Intel Classmate y también proveyó un 2008 Spring diseñada para la Asus Eee, no han se han mostrado pantallazos del Mandriva Mini, pero parece ser que sera similar a la versión de la Classmate, mostrada a continuación.



Disponibilidad

Parece ser que Mandriva ya se distribuirá ahora en equipos OEM y ODM. Mas información aquí.


miércoles 17 de septiembre de 2008

Slax, Tu Sistema Operativo de Bolsillo

Slax, es una distribución de Linux rápida, pequeña y potable, tomando una propuesta modular la cual te da la habilidad agregarla fácilmente en tus software favorito. Solo descarga un modulo con el software, copialo a Slax, sin instalar ni configurar.

Míralo el acción:

TheMacWizard el siguiente vídeo posteado en Youtube demuestra Slax en una Macbook



Tangent Quattro radio basado en Linux


Un ejemplo de como Linux puede potenciar el entretenimiento en el hogar es el Tanget Quattro Internet radio. Este dispositivo combina Internet y transmisión de radio con un servidor de medios en una plataforma en Linux para dar una variedad de opciones para reproducir audio.

Quattro tiene una solida apariencia. Un solo parlante arriba de la unidad produce un buen sonido. El panel frontal tiene los controles para volumen y sintonizador y una docena de botones para estaciones predefinidas y otras funciones. En el centro del panel frontal esta una pantalla LCD de 2 lineas que muestra la estación que estas escuchando, las opciones de menú y los mensajes de estado.

Puedes conectarlo a Internet vía wireless a través de su adaptador WiFi que soporta los protocolos de seguridad WEP y WPA, o sino a través de un conector RJ-45 ubicado en la parte de atrás de la unidad. También encontraras conectores aux-in, audífonos y salida de audio, pero no tiene puertos USB.

Quattro tiene dos maneras de obtener música, puedes hacerlo seleccionando las estaciones de radio en Internet, pero el proceso es virtualmente inmanejable, tienes que buscar en una lista de casi 12,000 estaciones por localización o genero, o entrar una búsqueda por carácter usando el sintonizador y presionar Select letra por letra, pero si pausas mas de 5 segundos la información de la pantalla desaparecerá.

Una mejor opción es crear una cuenta en Reciva, un portal de Internet para estaciones de radio, a la cual Quattro se conecta cuando lo enciendes y obtiene una lista de estaciones, incluyendo cualquiera que asocies con tu unidad. Puedes escoger algunas estaciones favoritas en el portal y guardarlas como My Stations. Luego regresas a la radio y escoges Select -> Stations -> My Stuff -> My Stations, y escoges de tu lista. Para guardar la estación que seleccionas, mantén presionado uno de los seis botones numerados.

Las estaciones quedan retenidas en la dispositivo aun si lo desconectas. Pero eso si, el dispositivo se demora varios segundos para adquirir una conexión a la red cada vez que se enciende.

Cuando lo enciendes, Quattro empieza con la ultima estación que estabas escuchando, como una radio normal. Puedes cambiar de estación presionando los botones o usando el sintonizador. Pero Quattro puede hacer mas que reproducir radios de Internet, si presionas el botón Mode una vez, Quattro reproducirá cualquier cosa que hayas conectado en la entrada aux-in. Presionando Mode dos veces sintonizara transmisión FM con una antena retractable incorporada, presionando el botón Mode tres veces regresara a modo Internet.

Una característica inusual y buena de Quattro es la habilidad de pasar archivos desde cualquier PC en la red local que este actuando como servidor de medios compartiendo música, Por ejemplo en una red puede encontrar una PC con Ubuntu usando Samba y un directorio compartido en un Windows XP. La primera vez que se conecta a un servidor de medios escanea el directorio especificado para archivos de músicas, lo cual puede tomar varios minutos si tienes una larga colección, luego escribe un archivo cache para acelerar futuras búsquedas. Quattro solo puede reproducir audio en los formatos AAC, AIFF, AU, MP3, RM, WAV, y WMA. Puedes añadir pistas a la cola por álbum o artista. Añadiendo varios álbumes a la cola el modo de reproducción aleatorio podría ser tedioso, felizmente Quattro permite especificar una lista M3U para todas tus pistas.

Incluye un reloj despertador con 5 horas de alarmas. La alarma puede ser tipo zumbido o reproduciendo una estación de radio, también puedes apagarla en diferentes horarios solo una vez, cada día, días de semana, fin de semana o semanalmente en día de la semana. También puedes apagar el dispositivo en un intervalo de tiempo.

Su precio en la calle es de 350 dolares, Quattro cuesta 150 dolares mas que otros Internet radio basados en Linux, pero tiene mejor sonido que otros.

martes 16 de septiembre de 2008

Revisa la temperatura de tu PC

Puedes revisar la temperatura de tu computadora usando solo una herramienta estándar, con el comando:


$ cat /proc/acpi/thermal_zone/*/temperature
Dependiendo del hardware que tengas, puedes tener mas de 1 sensor.
Este método para revisar la temperatura solo funciona con zonas termales ACPI. La mayoría de laptops y desktops lo soportan.

viernes 12 de septiembre de 2008

Herramienta de Colaboracion para Linux

Yuuguu ha lanzado una versión para Linux de su herramienta para colaboración. Ahora disponible para Ubuntu, Fedora, Suse, el cliente se puede descargar libremente y ofrece poder compartir la pantalla hasta mas de 30 usuarios.

Previamente disponible para Mac y Windows, Yuuguu ("fusión" en Japones) habilita "Compartir pantalla con seguridad", mensajería instantánea y la capacidad de trabajar el mismo documento junto en tiempo real. Esta pensado como una forma de reducir las copias, reemplazando el viaje innecesario, Yuuguu esta hecho para ser usado por equipos de trabajo remoto, presentaciones en linea, soporte remoto y administración de proyectos

Las características de Yuuguu son:

  • Conferencia Web hasta con 30 personas
  • Compartir audio y vídeo
  • Mensajería instantánea
  • Llamadas para conferencia (basada en linea fija)
  • Habilidad para ver cuando los contactos están conectados
  • Encriptacion SSL de 128-bit
  • Actualización automática

Disponibilidad

Las versiones para Ubuntu, Fedora y Suse ya están disponibles libremente aquí.

jueves 11 de septiembre de 2008

Revisar Dependencias con apt-rdepends

Esta es una corta guía que muestra como revisar las dependencias de un paquete con la herramienta apt-rdepends en Debian y Ubuntu. Lo mejor de apt-rdepends es que resuelve las dependencias recursivamente, no solo muestra las dependencias directas del paquete, también las dependencias de las dependencias. Esto es bueno si es que deseas reconstruir (rebuild) un paquete desde las fuentes.

Este documento viene sin ninguna garantía de que funcione en tu casa. (Nota del autor)

apt-rdepends

Para instalar apt-rdepends, simplemente ejecuta:


apt-get install apt-rdepends

Después, ya lo puedes usar para resolver dependencias. Para aprender como usarlo, puedes darle una mirada a


man apt-rdepends

Usualmente solo lo usas con un nombre de paquete, ejemplo apt-rdepends "paquete", por ejemplo para revisar las dependencias del paquete libapache2-mod-php5, ejecutas


apt-rdepends libapache2-mod-php5

Este es un ejemplo de la salida desde un sistema con Debian Etch:

server1:~# apt-rdepends libapache2-mod-php5
Reading package lists... Done
Building dependency tree... Done
libapache2-mod-php5
Depends: apache2-mpm-itk
Depends: apache2-mpm-prefork (>> 2.0.52)
Depends: apache2.2-common
Depends: libbz2-1.0
Depends: libc6 (>= 2.3.6-6)
Depends: libcomerr2 (>= 1.33-3)
Depends: libdb4.4
Depends: libkrb53 (>= 1.4.2)
Depends: libmagic1
Depends: libpcre3 (>= 4.5)
Depends: libssl0.9.8 (>= 0.9.8c-1)
Depends: libxml2 (>= 2.6.27)
Depends: mime-support (>= 2.03-1)
Depends: php5-common (= 5.2.0-8+etch1)
Depends: ucf
Depends: zlib1g (>= 1:1.2.1)
apache2-mpm-itk
Depends: apache2.2-common (= 2.2.3-4+etch5)
Depends: libapr1
Depends: libaprutil1
Depends: libc6 (>= 2.3.6-6)
Depends: libcap1
Depends: libdb4.4
Depends: libexpat1 (>= 1.95.8)
Depends: libldap2 (>= 2.1.17-1)
Depends: libpcre3 (>= 4.5)
Depends: libpq4 (>= 8.1.4)
Depends: libsqlite3-0 (>= 3.3.8)
Depends: libuuid1
apache2.2-common
Depends: apache2-utils
Depends: libmagic1
Depends: lsb-base
Depends: mime-support
Depends: net-tools
Depends: procps
apache2-utils
Depends: libapr1
Depends: libaprutil1
Depends: libc6 (>= 2.3.6-6)
Depends: libdb4.4
Depends: libexpat1 (>= 1.95.8)
Depends: libldap2 (>= 2.1.17-1)
Depends: libpcre3 (>= 4.5)
Depends: libpq4 (>= 8.1.4)
Depends: libsqlite3-0 (>= 3.3.8)
Depends: libssl0.9.8 (>= 0.9.8c-1)
Depends: libuuid1
libapr1
Depends: libc6 (>= 2.3.6-6)
Depends: libuuid1
libc6
Depends: tzdata
tzdata
libuuid1
Depends: libc6 (>= 2.3.6-6)
libaprutil1
Depends: libapr1
Depends: libc6 (>= 2.3.6-6)
Depends: libdb4.4
Depends: libexpat1 (>= 1.95.8)
Depends: libldap2 (>= 2.1.17-1)
Depends: libpq4 (>= 8.1.4)
Depends: libsqlite3-0 (>= 3.3.7)
Depends: libuuid1
libdb4.4
Depends: libc6 (>= 2.3.6-6)
libexpat1
Depends: libc6 (>= 2.3.6-6)
libldap2
Depends: libc6 (>= 2.3.6-6)
Depends: libgnutls13 (>= 1.4.0-0)
Depends: libsasl2-2
libgnutls13
Depends: libc6 (>= 2.3.6-6)
Depends: libgcrypt11 (>= 1.2.2)
Depends: libgpg-error0 (>= 1.4)
Depends: liblzo1
Depends: libopencdk8 (>= 0.5.8)
Depends: libtasn1-3 (>= 0.3.4)
Depends: zlib1g (>= 1:1.2.1)
libgcrypt11
Depends: libc6 (>= 2.3.6-6)
Depends: libgpg-error0 (>= 1.2)
libgpg-error0
Depends: libc6 (>= 2.3.6-6)
liblzo1
Depends: libc6 (>= 2.3.5-1)
libopencdk8
Depends: libc6 (>= 2.3.6-6)
Depends: libgcrypt11 (>= 1.2.2)
Depends: libgpg-error0 (>= 1.4)
Depends: zlib1g (>= 1:1.2.1)
zlib1g
Depends: libc6 (>= 2.3.6-6)
libtasn1-3
Depends: libc6 (>= 2.3.6-6)
libsasl2-2
Depends: libc6 (>= 2.3.6-6)
Depends: libdb4.2
libdb4.2
Depends: libc6 (>= 2.3.6-6)
libpq4
Depends: libc6 (>= 2.3.6-6)
Depends: libcomerr2 (>= 1.33-3)
Depends: libkrb53 (>= 1.4.2)
Depends: libssl0.9.8 (>= 0.9.8c-1)
libcomerr2
Depends: libc6 (>= 2.3.6-6)
libkrb53
Depends: libc6 (>= 2.3.6-6)
Depends: libcomerr2 (>= 1.33-3)
libssl0.9.8
Depends: debconf (>= 0.5)
Depends: debconf-2.0
Depends: libc6 (>= 2.3.6-6)
Depends: zlib1g (>= 1:1.2.1)
debconf
Depends: debconf-english
Depends: debconf-i18n
PreDepends: perl-base (>= 5.6.1-4)
debconf-english
Depends: debconf
debconf-i18n
Depends: debconf
Depends: liblocale-gettext-perl
Depends: libtext-charwidth-perl
Depends: libtext-iconv-perl
Depends: libtext-wrapi18n-perl
liblocale-gettext-perl
Depends: libc6 (>= 2.3.2.ds1-21)
PreDepends: perl-base (>= 5.8.7-3)
PreDepends: perlapi-5.8.7
perl-base
PreDepends: libc6 (>= 2.3.6-6)
perlapi-5.8.7
libtext-charwidth-perl
Depends: libc6 (>= 2.3.6-6)
Depends: perl-base (>= 5.8.8-6)
Depends: perlapi-5.8.8
perlapi-5.8.8
libtext-iconv-perl
Depends: libc6 (>= 2.3.6-6)
Depends: perl-base (>= 5.8.8-6)
Depends: perlapi-5.8.8
libtext-wrapi18n-perl
Depends: libtext-charwidth-perl
debconf-2.0
libsqlite3-0
Depends: libc6 (>= 2.3.6-6)
libpcre3
Depends: libc6 (>= 2.3.6-6)
libmagic1
Depends: libc6 (>= 2.3.6-6)
Depends: zlib1g (>= 1:1.2.1)
lsb-base
Depends: ncurses-bin
Depends: sed
ncurses-bin
PreDepends: libc6 (>= 2.3.6-6)
PreDepends: libncurses5 (>= 5.4-5)
libncurses5
Depends: libc6 (>= 2.3.6-6)
sed
PreDepends: libc6 (>= 2.3.6-6)
mime-support
net-tools
Depends: libc6 (>= 2.3.2.ds1-21)
procps
Depends: libc6 (>= 2.3.6-6)
Depends: libncurses5 (>= 5.4-5)
Depends: lsb-base (>= 3.0-10)
libcap1
Depends: libc6 (>= 2.3.2.ds1-4)
apache2-mpm-prefork
Depends: apache2.2-common (= 2.2.3-4)
Depends: libapr1
Depends: libaprutil1
Depends: libc6 (>= 2.3.6-6)
Depends: libdb4.4
Depends: libexpat1 (>= 1.95.8)
Depends: libldap2 (>= 2.1.17-1)
Depends: libpcre3 (>= 4.5)
Depends: libpq4 (>= 8.1.4)
Depends: libsqlite3-0 (>= 3.3.8)
Depends: libuuid1
libbz2-1.0
Depends: libc6 (>= 2.3.6-6)
libxml2
Depends: libc6 (>= 2.3.6-6)
Depends: zlib1g (>= 1:1.2.1)
php5-common
Depends: sed (>= 4.1.1-1)
ucf
Depends: coreutils (>= 5.91)
Depends: debconf (>= 1.2.0)
Depends: debconf-2.0
coreutils
PreDepends: libacl1 (>= 2.2.11-1)
PreDepends: libc6 (>= 2.3.6-6)
PreDepends: libselinux1 (>= 1.32)
libacl1
Depends: libattr1 (>= 2.4.4-1)
Depends: libc6 (>= 2.3.6-6)
libattr1
Depends: libc6 (>= 2.3.5-1)
libselinux1
Depends: libc6 (>= 2.3.6-6)
Depends: libsepol1 (>= 1.14)
libsepol1
Depends: libc6 (>= 2.3.6-6)
server1:~#

miércoles 10 de septiembre de 2008

Programa con wxPython en 15 pasos

He leído en Barrapunto una nota que seguro le gustara a varios Pythoneros, es sobre como escribir un programa con wxPython en 15 pasos, el tutorial esta diseñado para usarlo en Ubuntu, pero se puede adaptar a otras distros.

lunes 8 de septiembre de 2008

Agregar GUIs facilmente a Python

En muchos casos, agregar una interfaz gráfica a nuestro código en Python significa echar mano a TKinter u otro kit para crear GUI. Esto es por lo general reservado para usuarios que ya han obtenido un buen nivel programando con Python, pero gracias a EasyGui puedes agregar algunos GUI a tu codigo en Python, puedes agregar elementos visuales con unas cuantas lineas.

Para usar EasyGui primero debes saber si tienes instalado TKinter, sino es asi ejecuta desde la consola


sudo aptitude install python-tk

luego descargas el paquete de EasyGui y los desempaquetas y copias el archivo easygui.py en la ruta /usr/lib/python2.5/site-packages/

Para probarlo puedes usar este script extraido de la pagina de documentación de EasyGui.


from easygui import *
import sys

while 1:
msgbox("Hola Mundo")

msg="Cual es tu sabor favorito?"
title="Encuesta de Helado"
choices=["Vainilla", "Chocolate", "Fresa"]
choice=choicebox(msg,title,choices)

msg="Deseas continuar?"
title="Confirmar"
if ccbox(msg,title):
pass
else:
sys.exit(0)

domingo 7 de septiembre de 2008

Disponible en la Web las man pages de Ubuntu

Las man pages, las paginas de manuales de los comandos, esa que aparece cada vez que ejecutas el comando man "comando" ya esta disponible en la web para los comandos de Ubuntu en este repositorio con mas de 30,000 páginas creadas para los diferentes versiones de Ubuntu (Dapper, Feisty, Gutsy, Hardy, Intrepid) de versiones en diferentes repositorios (main, universe, restricted, multiverse) y ademas se encuentra en varios idiomas incluidos el español.

Puedes encontralo aquí.

viernes 5 de septiembre de 2008

Descargar una web completa

Si necesitas descargarte un sitio web completo para después verlo fuera de linea, wget puede hacer el trabajo, por ejemplo:

$ wget \
--recursive \
--no-clobber \
--page-requisites \
--html-extension \
--convert-links \
--restrict-file-names=windows \
--domains website.org \
--no-parent \
www.website.org/tutorials/html/

El comando descarga el sitio web www.website.org/tutorials/html/.

Las opciones son:

  • --recursive: descarga el sitio web completo.

  • --domains website.org: no descarga enlaces fuera de website.org.

  • --no-parent: no sigue los enlaces fuera del directorio tutorials/html/.

  • --page-requisites: obtiene todos los elementos que componen la pagina (images, CSS, etc)

  • --html-extension: guarda los archivos con extensión .html

  • --convert-links: convierte los enlaces para que pueda trabajarse fuera de linea.

  • --restrict-file-names=windows: modifica el nombre de archivos para que también funcionen en Windows.

  • --no-clobber: no sobrescribe ningún archivo existente ( usado en caso la descarga es interrumpida y reanudada )




Cambiar de perfil en Firefox

Quizás te ha pasado que has instalado un programa que ejecuta Firefox para administrar ciertas tareas, entonces te crea un perfil o quizás has abierto un nuevo perfil de Firefox y ahora cada que quieres entrar de nuevo solo te abre ese perfil y ya no el perfil "default" donde estan todas tus marcadores e historial, bueno una forma de solucionar eso es abriendo un terminal y ejecutar este comando:

$ mozilla-firefox -p
Con esto se abrira la venta que te permite administrar tus perfiles de Firefox, y podras ejecutar el perfil deseado.

miércoles 3 de septiembre de 2008

Terminator, manejar varias ventanas de terminales

Terminator es una forma de usar mas eficientemente las ventanas de terminales. En vez de tener varias ventanas puedes tener una sola dividida en las cantidades que necesitas, pueden ser vertical u horizontal.

Para instalarlo solo ejecuta desde Ubuntu:

sudo aptitude install terminator


y lo ejecutas desde el menu Aplicaciones - Accesorios.
Para dividir, simplemente le das clic derecho al terminal y divides.


martes 2 de septiembre de 2008

Buscar un texto dentro de los archivos

Esto seguro es algo muy conocido por muchos de los que leerán este post, pero acabo de leer un post en MundoGeek donde muestran dos formas de usar el comando grep para poder encontrar cierta palabra en los archivos, y aunque esto sea quizás algo basico, creo que de todas maneras habra a alguien que le sirva, bueno aquí les dejo estos comando.

Por ejemplo para buscar la palabra "hola" en un archivo, escribes

grep "hola" /home/usuario/codigo/*.py


esto buscara la palabra "hola" en todos los archivos con extension .py del actual directorio.

Y si quieres buscarla pero en todos los archivos del directorio escribes

grep -r "hola" /home/usuario/codigo/