Instalar Driver Nvidia en Linux / Debian Squeeze


Estos son los pasos que debes realizar para poder tener instalado el Driver Nvidia en un Debian Linux y sacarle todo el provecho a tu tarjeta de video:

Instalar los requerimientos:

# aptitude install module-assistant nvidia-kernel-common
# aptitude install nvidia-glx

Activar módulos:

# module-assistant auto-install nvidia
# depmod -a
# modprobe nvidia

Edita el /etc/X11/xorg.conf y busca la linea:

Section "Device"

Cambia la línea Driver para que quede así:

Driver  "nvidia"

Por último, reiniciar el gestor gráfico:

# /etc/init.d/gdm restart
Anuncios

Mumble – Software Libre para Multi-Conferencias


Mumble es Software Libre, multiplataforma de voz sobre IP especializada en multi-conferencia. Si recuerdas a skype, pues Mumble satisface todas esas necesidades, y aún más, tu puedes crear tu propio servidor desde donde podrás dar acceso a tu central de conferencia, invitar usuarios y si quisieras podrías crear tus propias salas de conversación.

Yo lo instalaré un Servidor Mumble en mi Linux/Debian, ustedes podrán encontrarlo en los repositorios de la Distribución Linux que usen:

1- Instalar – Servidor Mumble:

# aptitude install mumble-server
# /etc/init.d/mumble-server start

1.1- Configurar el Servidor:
Para configurar nuestro server deberíamos acceder al fichero siguiente y hacer los cambios que sean convenientes:

# nano /etc/mumble-server.ini

2- Instalar – Cliente Mumble:
Mumble al ser multiplataforma puede ser accedido desde cualquier sistema, si ya conocemos un servidor existente sólo necesitaríamos tener instalado el programa cliente. Podemos encontrar Mumble para PC, en este ejemplo yo lo instalaré en mi Linux/Debian directamente desde los repositorios:

# aptitude install mumble

Ahora para acceder sólo basta con conocer la dirección del servidor y el puerto que por defecto es 64738, el cual no cambié en el servidor local que instalé:


Y como ven, permitió acceder al servidor:

Pueden conseguir la aplicación para Linux, OS X o Windows en: http://mumble.sourceforge.net/.
También podrían instalar Mumble en Android, así mientras unos están en conferencia desde la PC, otros pueden unirse desde el mobil desde donde quieran.

Sin duda, Mumble es una aplicación magnifica y lo recomiendo al 100%, pueden implantarlo para realizar conferencias en su universidad, empresa, o cualquier organización y a un costo cero, vale la pena que lo prueben.

Instalación y Configuración de un Servidor de Streaming Multimedia con IceCast


Hace mucho tiempo que ya es normal encontrar en la red servicios de transmisión de radio que llegan a todo el planeta, pues en este post voy a explicar cómo realizar la instalación de un Servidor IceCast que es un servicio libre en contraparte al conocido servicio de ShoutCast.

Antes que nada quiero aclarar que esta instalación la realizaré sobre un Debian/Linux, pero la configuración es análoga para cualquier distribución Basada en GNU/Linux.

#aptitude install icecast2 ices2

Icecast2: Servidor de Streaming.
Ices2: Cliente para emitir Stream.

Inicialmente configuraremos el Servicio de Icecast localmente, para ello IP Server = 127.0.0.1 o localhost, el puerto por el que atiende icecast será 8000.

Para las ediciones de los ficheros de texto yo prefiero usar “nano”, ustedes pueden hacer uso del que gusten.  Así mismo, es recomendable que cambien las contraseñas que la instalación trae por defecto, como en <source-password>, <relay-password> y <admin-password>; éste último se refiere a la contraseña de acceso via web: http://127.0.0.1:8000/admin/

Iniciamos con la configuración:

Configuración de Icecast2:

#nano /etc/icecast2/icecast.xml
 <icecast>
    <limits>
        <clients>100</clients>
        <sources>2</sources>
        <threadpool>5</threadpool>
        <queue-size>524288</queue-size>
        <client-timeout>30</client-timeout>
        <header-timeout>15</header-timeout>
        <source-timeout>10</source-timeout>
        <burst-on-connect>1</burst-on-connect>
        <burst-size>65535</burst-size>
    </limits>

    <authentication>
        <source-password>source</source-password>
        <relay-password>source</relay-password>
        <admin-user>admin</admin-user>
        <admin-password>admin</admin-password>
    </authentication>

    <hostname>localhost</hostname>

    <listen-socket>
        <port>8000</port>
    </listen-socket>

    <fileserve>1</fileserve>

    <paths>
        <basedir>/usr/share/icecast2</basedir>
        <logdir>/var/log/icecast2</logdir>
        <webroot>/usr/share/icecast2/web</webroot>
        <adminroot>/usr/share/icecast2/admin</adminroot>
        <alias source="/" dest="/status.xsl"/>
    </paths>

    <logging>
        <accesslog>access.log</accesslog>
        <errorlog>error.log</errorlog>
      	<loglevel>3</loglevel>
      	<logsize>10000</logsize>
    </logging>

    <security>
        <chroot>0</chroot>
        <!--
        <changeowner>
            <user>nobody</user>
            <group>nogroup</group>
        </changeowner>
        -->
    </security>
</icecast>
#nano /etc/default/icecast2
CONFIGFILE="/etc/icecast2/icecast.xml"
USERID=icecast2
GROUPID=icecast
ENABLE=true
#/etc/init.d/icecast2 start

Si hasta este punto todo se ha hecho bien, la siguiente dirección debería cargar correctamente en el navegador: http://127.0.0.1:8000

Configuración de Ices2:

Modo Live: Para Emitir streaming en linea, por ejemplo con la salida desde micro:
Los ficheros de configuración de ices2 lo pueden crear en su directorio personal, según el ejemplo mi directorio personal es /home/beastieux/

$mkdir /home/beastieux/iceconf
$cd /home/beastieux/iceconf
$nano iceconf/ices2-live.xml
<?xml version='1.0'?>
<ices>
<background>0</background>
<logpath>/var/log/icecast2</logpath>
<logfile>ices.log</logfile>
<loglevel>4</loglevel>
<consolelog>1</consolelog>

<stream>

<metadata>
<name>Radio Beastieux</name>
<genre>rock-metal-bossa-chilli</genre>
<description>Radio con la mejor musica de mi computadora</description>
<url>https://saforas.wordpress.com</url>
</metadata>

<input>
<module>alsa</module>
<param name="rate">44100</param>
<param name="channels">2</param>
<param name="device">hw:0,0</param>
<param name="metadata">1</param>
<!--Localización de un fichero metadata.-->
<param name="metadatafilename">./metadata</param>
</input>

<!--Datos del Servidor Icecast2-->
<instance>
<hostname>127.0.0.1</hostname>
<port>8000</port>
<username>source</username>
<password>source</password>
<mount>/radio-beastieux.ogg</mount>
<yp>1</yp>

<encode>
<!--Datos de la velocidad de transmisión, calidad-->
<minimum-bitrate>48000</minimum-bitrate>
<maximum-bitrate>64000</maximum-bitrate>
<nominal-bitrate>64000</nominal-bitrate>
<samplerate>44100</samplerate>
<!--Calidad de codificación del bitrate. Va de 0 a
10. Interesa tener un valor bajo para conexiones
modestas-->
<quality>1</quality>
<!--Número de canales de la entrada -->
<channels>2</channels>
</encode>

<downmix>1</downmix>
<resample>
<in-rate>44100</in-rate>
<out-rate>44100</out-rate>
</resample>

</instance>
</stream>
</ices>

Para emitir el stream sólo lanzar este comando:

$ices2 ices2-live.xml

Luego pueden hablar por el micro o ayudarse con reproductores y sintetizadores para la transmisión, que todo lo que salga por el audio desde su ordenador se estará transmitiendo en vivo.

Modo Playlist: Para Emitir Streaming desde una lista con las direcciones del audio:

$nano /home/beastieux/iceconf/ices2-playlist.xml
<?xml version='1.0'?>
<ices>
<background>0</background>
<logpath>/var/log/icecast2</logpath>
<logfile>ices.log</logfile>
<loglevel>4</loglevel>
<consolelog>1</consolelog>

<stream>
<metadata>
<name>Radio Beastieux</name>
<genre>rock-metal-bossa-chilli</genre>
<description>Radio con la mejor musica de mi computadora</description>
<url>https://saforas.wordpress.com</url>
</metadata>
<!-- El <input> es lo único diferente al fichero ices2-live.xml -->
             <input>
                       <module>playlist</module>
                       <!--Indicar el sitio donde tenemos la lista de reproducción-->
                       <param name="file">/home/beastieux/iceconf/playlist.m3u</param>
                       <param name="type">basic</param>
                       <!--reproduce en modo random-->
                       <param name="random">1</param>
                       <!--A valor 0 reproduce la lista
                              continuamente."-->
                       <param name="once">0</param>
                       <param name="rate">44100</param>
                       <param name="channels">2</param>
                       <param name="device">/dev/dsp</param>

               </input>

<instance>
<hostname>127.0.0.1</hostname>
<port>8000</port>
<username>source</username>
<password>source</password>
<mount>/radio-beastieux.ogg</mount>
<yp>1</yp>

<encode>
<!--Datos de la velocidad de transmisión-->
<minimum-bitrate>48000</minimum-bitrate>
<maximum-bitrate>64000</maximum-bitrate>
<nominal-bitrate>64000</nominal-bitrate>
<samplerate>44100</samplerate>
<!--Calidad de codificación-->
<quality>1</quality>
<!--Número de canales de la entrada -->
<channels>2</channels>
</encode>

<downmix>1</downmix>
<resample>
<in-rate>44100</in-rate>
<out-rate>44100</out-rate>
</resample>

</instance>
</stream>
</ices>

Crear la lista de reproducción:
La lista de reproducción solo es una lista con las direcciones de los archivos de audio, en este caso deben de ser OGG, el fichero debe constar de una dirección por linea. Si tienen un directorio con músicas podrían generar el fichero.m3u automáticamente con algo como:

$find /media/sda2/musicas/ -name "*ogg" > ~/iceconf/playlist.m3u

Para ejecutar el modo automático de emisión desde un playlist con los audios (ogg) añadidos:

$ices2 ices2-playlist.xml

Si quieren escuchar la transmisión vía web pueden ingresar al punto de montaje configurado, para este ejemplo el punto de montaje fue radio-beastieux.ogg, por lo cual accederemos a: http://127.0.0.1:8000/radio-beastieux.ogg

Por último, tanto la ejecución en modo live como en modo playlist con ices2 no debe de niguna manera devolvernos al promt del terminal, si eso ocurre es porque los ficheros están mal configurados o el servidor no está iniciado correctamente. Si todo ha salido bien entonces tendrían su servidor de Icecast básicamente configurado y listo para empezar a emitir normalmente, podrian empezar a transmitir para el mundo entero.

Instalación y Configuración del Emulador de Android en Linux


Hoy voy a jugar por un momento con Android, no tengo un Teléfono Mobil con tal Sistema, por lo tanto haré uso del emulador que podemos conseguirlo de la web de Android Developers:

Descargar: SDK Android

Yo descargué la versión para Linux, pues lo instalaré sobre mi Debian.
Antes que nada vamos a necesitar cumplir ciertos requisitos; primero instalar los componentes de java si aun no lo tienen:

Configurar Java:

#aptitude install sun-java6-jdk sun-java6-jre

Si están usando el sistema a 64-bit necesitarán instalar las librerías de compatibilidad a 32-bit

#aptitude install ia32-libs

Si tienen instalado el GCJ (Gnu Compiler for Java), lo cual no tiene nada de malo pero no lo consideren por ahora, los recomiendo que para hacer correr el Android trabajen con el Sun JDK, pues yo tuve problemas al tratar de hacerlo con GCJ, lo desinstalé momentáneamente:

#aptitude remove gcj-jdk

Luego nos aseguramos de seleccionar el compilador por defecto que usaremos, en ambos casos los que son de Sun, descarten si está seleccionado el GCJ:

#update-alternatives --config javac
#update-alternatives --config java

Configurar Android:
Una vez configurado nuestro entorno de java y descargado el SDK de Android, vamos a descomprimir el paquete descargado, en mi caso acostumbro instalar los programas externos en /opt:

#cp android-sdk_r09-linux_x86.tgz /opt
#cd /opt
#tar -xvf android-sdk_r09-linux_x86.tgz

#cd android-sdk-linux_x86/tools

Finalmente, para tener acceso desde el terminal a los binarios y lista de comando a usar agregamos al PATH el directorio descomprimido:

PATH=$PATH:/opt/android-sdk-linux_x86/tools
export PATH

Y ahora para ejecutarlo, simplemente escribimos en la terminal:

#android

Se abrirá una ventana como esta:

Debemos actualizar e instalar los componentes que nos sean útiles, por el momento yo instalé la plataforma SDK Android Honeycomb revisión1 y la plataforma SDK Android 2.3.1 API 9 revisión2:

Para terminar, nos vamos a Virtual Devices y elegimos crear un nuevo dispositivo Android, este paso lo puedes configurar según como lo desees:

Lo único que nos queda por hacer es ejecutarlo seleccionando el dispositivo creado, dándole clic en “start” y realizar todas las operaciones que nos son permitidas como si fuese realmente un fierro:

 

Instalación y Ejecución de Apache Derby en Linux


En este post tocaremos rápidamente la instalación de la Base de Datos Apache Derby en Linux, específicamente en Debian para la cual deberemos tener los repositorios actualizados para obtener la versión más reciente.

Para probar la conexión de Apache Derby requeriremos de JVM (Máquina Virtual de Java), por ello deberemos tener ambos instalados:

#aptitude install sun-java6-jdk sun-java6-javadb

Luego de la instalación, podremos acceder al directorio ubicado en: /usr/lib/jvm/java-6-sun/db/ donde se ubican una base de datos de ejemplo, pero antes debemos exportar el CLASSPATH actualizado para poder acceder a la administración de Derby desde el terminal:

$export JAVA_HOME=/usr/lib/jvm/java-6-sun/
$export PATH=$JAVA_HOME/bin:$PATH
$export DERBY_HOME=/usr/lib/jvm/java-6-sun/db
$export CLASSPATH=$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar:.

Ahora accederemos a ver la base de datos ejemplo llamada toursdb que se encuentra en la siguiente ruta:
/usr/lib/jvm/java-6-sun/db/demo/databases/toursdb

Ingresar al terminal e ingresar las siguientes instrucciones:

$java org.apache.derby.tools.ij

No olvidarse de los punto y coma al final de cada instrucción:

ij>connect 'jdbc:derby:/usr/lib/jvm/java-6-sun/db/demo/databases/toursdb';
ij>SELECT * FROM countries;
ij>exit;

Si todo se ha hecho como se ha indicado no habrá problema y la sentencia responderá correctamente.

Ahora probaremos creando nuestra propia base de datos.
Primero deberemos ir la directorio donde se creará la base de datos:

$cd $HOME
$java org.apache.derby.tools.ij
ij>connect 'jdbc:derby:dbtest;create=true';
ij>create table usuario(nombre varchar(15), password varchar(30), rol varchar(50));
ij>insert into usuario values('beastieux','zeroo','administrador');
ij>insert into usuario values('apache','derby','sysadmin');
ij>select * from usuario;
NOMBRE         |PASSWORD                      |ROL
--------------------------------------------------------------------------------
beastieux      |zeroo                         |administrador
apache         |derby                         |sysadmin
ij>disconnect;
ij>exit;

Todo lo demás es así de sencillo, las sentencias SQL guardan los estándares, como se mencionan en DB-Derby-wiki.
Para ver la ubicación de la base de datos recién creada, solo fijarse en el directorio desde donde se lanzó la orden de conexión, en mi caso lo hice desde mi $HOME, donde se creó el directorio dbtest, que es el nombre que se puso a la base de datos. Esta podría ser copiada al proyecto desde donde se crea la aplicación en la que podría ser embebida.Así de Fácil.