Aug 31

dvd_logoHace poco tuve la necesidad de crear un disco DVD para reproducir en cualquier reproductor de DVD, pero no tenia la imagen ISO del disco, si no el directorio VIDEO_TS con todos los archivos necesarios (de extension BUP, IFO, VOB) para reproducir el DVD desde el computador con VLC, pero queria quemar un disco para poderlo ver en mi PS2, asi que me di a la tarea de buscar como hacerlo facilmente en Ubuntu Linux, sin crear proyectos para DVD o utilizar software como el Nero Burning, aqui estan los pasos :

  1. Abrir una Consola
  2. Crear el directorio donde se almacenaran temporalmente los archivos
    mkdir dvd
  3. Crear el directorio VIDEO_TS y compiar los archivos BUP, IFO, VOB o si se tiene el directorio copiarlo completo
  4. Crear el directorio AUDIO_TS si se tiene o crear uno vació (algunos reproductores necesitan que exista)
  5. Crear el DVD desde la consola usando el siguiente comando, estando en el directorio dvd :
    growisofs -dvd-compat -Z /dev/dvd -dvd-video .
  6. Esto calculara la velocidad del quemador y creara un dvd con la pelicula.

Enlaces :

Tagged with:



En August 31 de 2009, Marlon J. Manrique escribió acerca de Crear Disco de DVD desde VIDEO_TS con Linux.
Aug 25

Introducción.

En algunos casos puede ser útil obtener desde un fragmento de código PHP utilizando el API oficial, los nodos de un portal basado en Drupal 6 que correspondan con un tipo específico (file, story, event, page, ...).  Esto se puede hacer fácilmente de la siguiente manera.

Procedimiento.

Obtener el listado con la información general de los nodos del tipo específico.  Para esto se consulta la tabla node que contiene la siguiente información de los nodos.

nid         int(10)           # ID del nodo.
vid         int(10)           # ID de la versión del nodo.
type        varchar(32)       # Tipo del nodo.
title       varchar(255)      # Título.
uid         int(11)           # ID del propietario.
status      int(11)           # Estado (publicado = 1; sin publicar/oculto = 0)
created     int(11)           # Timestamp de la creación del nodo.
changed     int(11)           # Timestamp de la modificación del nodo.
comment     int(11)           # Estado de comentarios (desactivados = 0; sólo lectura = 1; activados = 2).
promote     int(11)           # Promocionado a la página principal (no = 0; si = 1).
moderate    int(11)           # Moderado
(no = 0; si = 1).
sticky      int(11)           # Pegajoso (no = 0; si = 1).
language    varchar(12)       # Código del idioma.
tnid        int(10)
translate   int(11)

La consulta básica se puede realizar de la siguiente manera.

$sql = "SELECT nid
        FROM {node}
        WHERE type = 'TIPO_DE_NODO' AND
              status = 1
        ORDER BY created DESC";

$results = db_query($sql);

Posteriormente se iteran los resultados obtenidos de la consulta y se carga la información completa de cada uno de los nodos.

while ($result = db_fetch_object($results))
{
    $node = node_load($result -> nid);
}

El contenido del nodo recuperado dependerá en cierta medida de los módulos instalados que alteran su estructura.  Para mostrar por ejemplo el título, la fecha de creación, el mensaje y la fecha de modificación de una noticia se utiliza el siguiente fragmento.

echo 'Titulo: ' . $node -> title . '<br />';
echo 'Fecha: ' . format_date($node->created) . '<br />';
echo 'Mensaje: ' . $node->body . '<br /><br /><hr /><br />';
echo 'changed on: ' . format_date($node->changed, 'custom', 'Y-m-d H:i:s O') . '<br />';

Enlaces.

Tagged with:



En August 25 de 2009, Jorge Iván Meza Martínez escribió acerca de Como obtener los nodos de un tipo específico en Drupal 6 desde API.
Aug 23

ubuntu910_remix

Despues que no puede instalar la version Remix para notebooks de Ubuntu por problemas con una USB y de instalar la version para escritorio del Ubuntu 9.10 en un Dell Mini 10, me di a la tarea de instalar los paquetes necesarios para instalarlo, lo cual es muy sencillo.

Instalacion :

  • Abrir una terminal
  • Ejecutar el comando :
    sudo apt-get install ubuntu-netbook-remix
  • Luego cambiar el modo del escritorio, ir al Menu
    System -> Preferences -> Switch Desktop Mode
  • Seleccionar el modo Ubuntu Notebook Desktop
  • Pulsar el boton aplicar
  • Ahora ya tenemos nuestro escritorio configurado para funcionar sobre una pantalla pequeña
  • Posiblemente tendremos que cerrar la sesion y volver a entrar para que las ventanas ocupen toda la pantalla.

Ahora la version del Remix tiene una distribucion del menu principal con una columna y navegacion dentro de cada pantallazo, lo que aprovecha un mejor el espacio en pantalla, pero complica un poco el ir de menu en menu.

Tagged with:



En August 23 de 2009, Marlon J. Manrique escribió acerca de Instalando Ubuntu Netbook Remix 9.10.
Aug 23

ubuntu_910_karmic_koalaCon miras a ir preparando el terreno para cuando llegue la proxima version de Ubuntu, me di a la tarea de instalar en un Dell Mini 9 la version Alpha 4 que salio el pasado 13 de Agosto de 2009 para ir probando las nuevas caracteristicas, el desempeño y las mejoras que hacen que se ejecute mejor en este netbook que su predecesor el Ubuntu 9.04

Lo primero que llama la atencion de esta nueva version de Ubuntu es su nombre el cual al igual que las pasadas versiones tiene un nombre de animal, pero que a diferencia del Vivarachero conejito cornudo, esta vez llega el Koala Karmico, sera que esta vez Ubuntu nos lleva hasta un estado de Nirvana ?

Uno de los primeros cambios que uno nota al instalar es que ahora el formato del sistema de archivos por defecto es el Ext4 que venia soportado desde la 9.04 pero por alguna razon (al parecer habian problemas de perdida de datos) no se habia tomado como estandar, otra de las caracteristicas es la nueva version de grub que muestra el menu inicial texto pero utilizando el modo grafico para su visualizacion lo cual lo hace mas agradable a la vista. Los logos de carga si son muy parecidos a la version anterior, pero me sorprendio la pantalla de acceso que carga casi un escritorio de GNOME el cual muestra la lista de usuario para acceder, me gustaba mas la version anterior con los graficos (espero que esta no sea la final y la cambien pronto), otro de los cambios es que ahora el Pidgin no es la aplicacion de mensajeria instantanea si no el Emphaty, adicionalmente por lo que he mirado trae listo el software para utilizar el servicio de almacenamiento de Canonical el Ubuntu One (todavia no lo he probado)

Lo unico malo de instalar una version Alpha de Ubuntu es que si se quiere tener actualizado el sistema, lo tipico es realizar una actualizacion que comprende casi todos los paquetes del sistema, lo que implica tiempo, buena conexion a internet y mucha paciencia.

Bueno le seguire cacharriando a ver si llego un paso mas cerca del Nirvana !!!

Tagged with:



En August 23 de 2009, Marlon J. Manrique escribió acerca de Ubuntu Karmic Koala (9.10 Alpha 4).
Aug 23

Dell Mini 9 y Ubuntu 9.10

Despues de inicio de semestre, trasteo y muchas actividades de organizacion, planeacion, estudio y demas; vuelvo al mundo del cacharreo esta vez con la instalacion de la version Alpha 3 de la proxima version de Ubuntu,la 9.10 (llamada Karmic Koala) que en el mes de octubre estara saliendo la version final. Me dio por instalarla esta version alpha a esta maquina por que con la version anterior (Ubuntu 9.04) la reproduccion de video se detiene constantemente y es imposible aguantarse esto en pantalla completa, pero afortundamente los drivers de video han sido actualizados y al parecer todo ahora funciona mejor, asi que a probar esta nueva version.

Instalacion :

En un principio queria instalar la version para netbooks de Ubuntu llamada Remix, de la cual se puede descargar un ISO y crear un disco de inicio utilizando una USB, pero desafortunadamente mi memoria USB de cuatro años de antiguedad y 1GB de capacidad tiene un error que no me permitio instalar directamente esta version, por lo cual me toco realizar una instalacion a traves de red como se hizo en una entrada anterior de este blog : Instalar Ubuntu 9.04 Via Red

Para la instalacion cree una maquina virtual en VirtualBox a la cual le instale la version servidor del Ubuntu 9.10, esto con el fin de probar que cambios habria que hacerle a las guias de instalacion con esta version, pero afortunadamente todo funciono, lo unico que cambio fue que la version a instalar fue la Alternate y no la Remix la cual no contiene los archivos necesarios para iniciar desde red, ademas la imagen se monto como un CDROM a traves del comando :

sudo mount /dev/sr0 /var/lib/tftpboot/ubuntu

Tuve que colocar la interface de red de esta maquina virtual en la tarjeta de red ethernet, desconectar el router de Internet y conectar la maquina donde tengo la maquina virtual y el Dell Mini 9 con cable al router para que la instalacion funcionara.

Despues de instalar, borrar los repositorios asociados con la instalacion en red, luego reiniciar el equipo, desconectar la interface de red del servidor del router, conectar Internet, actualizar paquetes y que en los drivers restringidos aparezca el Broadcomn STA wireless driver necesario para que el Dell Mini 9 pueda acceder a la red inalambrica.

Por el momento solo he podido observar que el grub tiene una nueva version con un menu con letras elegantes, la pantalla de inicio es horrible a diferencia de la 9.04 donde salia el logo de Ubuntu, en esta version aparece la lista de usuario, se debe seleccionar el usuario y aparece informacion de la ultima seccion y ñuego suministrar la clave para entrar.

Enlaces :

Tagged with:



En August 23 de 2009, Marlon J. Manrique escribió acerca de Instalando Ubuntu 9.10 en un Dell Mini 9.
Aug 23

Introducción.

Mi portátil, un Dell Vostro 1400, tiene una tarjeta de video sencilla Intel 965.  La aceleración gráfica de este modelo es bastante limitada, sin embargo es mas que suficiente para mis requerimientos personales en este rubro.

Con la versión 8.10 de Ubuntu funcionaba decentemente sin embargo con la actualización a 9.04 el Compiz dejo de funcionar.  La explicación es amplia, aparentemente hicieron cambios profundos en los drivers de Intel y en el sistema de ventanas que parecen no estar del todo completos aún.

El día de hoy estuve experimentando un poco con el video e hice funcionar al Compiz con poco esfuerzo.

Procedimiento.

Como primera medida actualicé el kernel a la versión 2.6.30 la cual he escuchado colabora a la mejora de los problemas reportados con las tarjetas Intel.

Después desactivé el compositing manager de Gnome que interfería con el de Compiz de la siguiente manrera.

  1. Presionar ALT+F2: abrir Run Application.
  2. Ejecutar la aplicación gconf-editor.
  3. Navegar por las ramas del árbol izquierdo: / > Apps > Metacity > General.
  4. En el panel derecho desactivar la casilla correspondiente a la llave compositing_manager.
  5. Seleccione File > Quit para terminar la configuración.

Finalmente activé el Compiz.

$ compiz --replace

O desde la interfaz gráfica realizando los siguientes pasos.

    1. System > Preferences > Appearance.
    2. Seleccionar la hoja de efectos visuales (Visual Effects).
    3. Activar la opción Normal.
    4. De ser exitosa la activación se deberá confirmar.
    5. Cerrar el diálogo de propiedades de apariencia.

Solución de problemas.

Para encontrar que estaba entorpeciendo el funcionamiento del Compiz en mi equipo encontré que el script compiz-check es un buen aliado.  Estos fueron los pasos que seguí para su instalación y ejecución.

$ wget http://blogage.de/files/9124/download -O compiz-check

$ chmod +x compiz-check

$ ./compiz-check

Enlaces.

Tagged with:



En August 23 de 2009, Jorge Iván Meza Martínez escribió acerca de Probando Compiz con una tarjeta Intel 965 bajo Ubuntu 9.04.
Aug 19

Introducción.

Después de instalar y configurar los módulos para mantener las traducciones del contenido en el portal basado en Drupal 6, el siguiente paso era crear la barra de banderas que permitiera cambiar fácilmente entre los distintos idiomas del portal.

BarraIdiomas

Procedimiento.

  1. Instalar el módulo Consistent Language Interface que provee al bloque Consistent Language Interface block (languageinterface).
    http://drupal.org/project/languageinterface
  2. Editar page.tpl.php e incluír el siguiente fragmento de código donde se desea la barra de banderas.
    <?php
        $flags = module_invoke('languageinterface', 'block', 'view', 0);
        print $flags['content'];
    ?>
  3. Personalice la presentación de la barra con CSS ya que su estructura es básicamente una lista no ordenada.  Para establecer la distribución horizontal como la de la imagen propuesta, agregue el siguiente código en la hoja de estilos del tema.
    #language-interface
    {
        padding: 0;
        margin: 0;
    }
    
    #language-interface li
    {
        display: inline;
        list-style-type: none;
        padding: 0;
        margin: 0px 5px 0px 0px;
        height: 12px;
    }
  4. Si desea puede además establecer estilos particulares para cada idioma, la clase CSS deberá llamarse igual que el código del idioma.  Además es posible resaltar al idioma actual utilizando la clase active.

Enlaces.

Tagged with:



En August 19 de 2009, Jorge Iván Meza Martínez escribió acerca de Como personalizar la barra de idiomas en Drupal 6.
Aug 18

Procedimiento.

Editar el archivo template.php y agregar la siguiente función (el nombre es libre).

function phptemplate_generarFormularioLogin()
{
   $form_id = 'user_login';
   $form = array();

   $form['name'] = array(
      '#type' => 'textfield',
      '#maxlength' => USERNAME_MAX_LENGTH,
      '#required' => TRUE,
      '#attributes' => array('tabindex' => '1',
      'class' => 'registro'),
   );

   $form['pass'] = array(
      '#type' => 'password',
      '#required' => TRUE,
      '#attributes' => array('tabindex' => '2',
      'class' => 'registro'),
   );

   $form['submit'] = array(
      '#type' => 'submit',
      '#value' => t('Log in'),
      '#weight' => 2,
      '#attributes' => array('tabindex' => '3')
   );

   $form['#validate'] = user_login_default_validators();
   $form['#build_id'] = sprintf('form-%s', md5(uniqid(mt_rand(), TRUE)));

   $form_state = array();

   drupal_prepare_form($form_id, $form, $form_state);
   drupal_process_form($form_id, $form, $form_state);

   $out = new stdClass;
   $out->form_start = sprintf("<form method='post' accept-charset='UTF-8' action='%s'>",
                             url('user/login'));
   $out->form_end = "</form>";

   $out->name = drupal_render($form['name']);
   $out->pass = drupal_render($form['pass']);
   $out->submit = drupal_render($form['form_id']) .

   drupal_render($form['form_build_id']) .
   drupal_render($form['submit']);

   return $out;
}

Insertar en el lugar deseado de page.tpl.php el siguiente fragmento de código o su correspondiente personalización.

<?php $login_form = phptemplate_generarFormularioLogin(); ?>
<?php print $login_form -> form_start; ?>
    Usuario &nbsp; <?php print $login_form->name; ?> &nbsp;&nbsp;&nbsp;
    Contraseña &nbsp; <?php print $login_form->pass; ?>&nbsp;&nbsp;
    <?php print $login_form->submit; ?>
<?php print $login_form->form_end; ?>

Enlaces.

Tagged with:



En August 18 de 2009, Jorge Iván Meza Martínez escribió acerca de Personalizar el formulario de login en Drupal 6.
Aug 13

Introducción.

Cuando se crean discos virtuales en Virtualbox de tipo dinámico (Dynamically Expanding), a diferencia del estático (Fixed-size), el archivo que lo representa no se crea inicialmente del tamaño solicitado sino que este crece hasta el tamaño elegido a medida que se van agregando archivos.

Después de cierto tiempo de uso, de copiar y borrar archivos, es posible que este termine con un tamaño mayor al tamaño de los archivos que efectivamente contiene, esto quiere decir que hubo un momento en que contenía tal cantidad de información pero que es suceptible ahora de ser compactado.  Esta tarea se puede realizar de cuando en cuando para optimizar el tamaño de estos archivos.

Para este artículo se deberá tener en cuenta que el sistema operativo instalado en la máquina virtual cliente es Linux XUbuntu.

Pasos previos.

  • Liberar todo el espacio posible removiendo los archivos y aplicaciones instaladas que ya no sean necesarios.
  • Remover los archivos temporales que ya no sean necesarios.
  • Limpiar el caché e información fuera de línea del navegador.
  • Remover el caché de los paquetes instalados.

    $ sudo aptitude purge
    $ sudo aptitude clean

Procedimiento.

  1. Inicie la máquina virtual a compactarse desde el live-cd de instalación, ya sea físicamente insertado en la unidad o desde su imagen ISO.
    Configuración del CDROM en Virtualbox.

    Configuración del CDROM en Virtualbox.

  2. Seleccione la opción Try XUbuntu without any change to your computer.

    Inicio del livecd.

    Inicio del livecd.

  3. Instale la aplicación zerofree.

    Instalación de ZeroFree.

    Instalación de ZeroFree.

    $ sudo aptitude install zerofree

  4. Ejecute zerofree de la siguiente manera.

    $ sudo zerofree /dev/sda1

    /dev/sda1 deberá corresponder con la partición que se desea limpiar, ajúste su valor según corresponda en su máquina virtual.  Este paso puede tomar un tiempo proporcional a la cantidad de espacio libre que tenga la unidad.

  5. Al terminar la ejecución de zerofree apague la máquina virtual.
  6. En el huésped abra una consola y acceda al directorio donde se encuentra el archivo que representa el disco a compactar.  En mi caso:

    $ cd /VirtualMachines/XUbuntu9.04
    $ ls -l

    -rwxrwx--- 1 root plugdev 3670049280 2009-08-13 19:14 MyHardDrive.vdi

  7. Ejecute el siguiente comando para compactar la unidad.

    $ sudo VBoxManage clonehd MyHardDrive.vdi /VirtualMachines/XUbuntu9.04/MyClonedDrive.vdi

    Reemplace el nombre MyHardDrive con el nombre del archivo del disco duro y MyClonedDrive con un nombre para la copia del archivo del disco duro que se va a generar.

    Es importante establecer la ruta absoluta donde se desea almacenar la copia resultante, /VirtualMachines/XUbuntu9.04/ en este caso, porque de lo contrario será automáticamente almacenada en ~/.VirtualBox/HardDisks/.

  8. Renombre al archivo inicial del disco duro.

    $ mv MyHardDrive.vdi MyHardDrive.vdi.original

  9. Renombre la nueva versión del archivo a su nombre original o el que considere necesario.

    $ mv MyCloneDrive.vdi MyHardDrive.vdi

  10. En la consola de Virtualbox seleccione la máquina virtual y la sección de Hard disks.
  11. Seleccione el disco duro modificado y el icono de Remove attachment.

    Configurar el nuevo disco duro.

    Configurar el nuevo disco duro.

  12. Seleccione el disco duro antigüo y presione los botones de liberar (Release) y remover (Remove).

    Liberar y remover al disco duro antigüo.

    Liberar y remover al disco duro antigüo.

  13. Presione el botón de agregar (Add) y seleccione el nuevo archivo de la imagen del disco.  Para este caso sería /VirtualMachines/XUbuntu9.04/MyHardDrive.vdi.

    Agregar el nuevo disco a la máquina virtual

    Agregar el nuevo disco a la máquina virtual

  14. Presione el botón de seleccionar (Select) y posteriormente el de aceptar (Ok).
  15. Desmote el CDROM de instalación de XUbuntu.

    Desmontar CDROM de la máquina virtual.

    Desmontar CDROM de la máquina virtual.

  16. Inicie la máquina virtual para verificar el correcto funcionamiento del nuevo disco duro compactado.
  17. En caso de estar funcionando todo perfectamente puede si lo desea remover el archivo antigüo de la unidad de disco.  Para este caso:

    $ rm /VirtualMachines/XUbuntu9.04/MyHardDrive.vdi.original

Enlaces.

Dynamically Expanding
Tagged with:



En August 13 de 2009, Jorge Iván Meza Martínez escribió acerca de Compactando los discos de Virtualbox con Linux Ubuntu como cliente.
Aug 13

Introducción.

En algunas ocasiones no es suficiente con el bloque de búsquedas de Drupal y es necesario incluír un formulario de búsquedas en la plantilla del tema con un estilo muy específico.

Las búsquedas en Drupal utilizan un sistema de llaves o claves para impedir que sean consumidas desde fuera del sitio, así que escribir un formulario propio con el action direccionado no es una buena alternativa.

Implementación.

  1. Activar el formulario de búsquedas en el tema.
    1. Acceda el menú de administración de temas (?q=admin/build/themes).
    2. Haga clic sobre el enlace Configurar frente al tema elegido.
    3. Seleccione la casilla Bloque de búsqueda.
    4. Presione el botón Guardar configuración.
  2. Copie el archivo modules/search/search-block-form.tpl.php a la carpeta del tema con el nombre search-theme-form.tpl.php.
  3. Edite page.tpl.php del tema e incluya la etiqueta <?php print $search_box; ?> donde desee que aparezca el campo de búsqueda en el tema.
  4. Edite el archivo search-theme-form.tpl.php con el formulario de búsqueda personalizado.
    1. No es necesario incluír las etiquetas <form> ya que estas se incluyen automáticamente.
    2. El ID del formulario generado es search-theme-form.
    3. El ID del campo de las palabras clave deberá ser edit-search-theme-form-1.
    4. El nombre del campo de las palabras clave deberá ser search_theme_form.
    5. Incluya esta etiqueta en cualquier lugar del archivo <?= $search['hidden']; ?>.

Enlaces.

Tagged with:



En August 13 de 2009, Jorge Iván Meza Martínez escribió acerca de Personalizar el formulario de búsqueda en un tema de Drupal 6.