domingo, 19 de junio de 2011

Integración de aplicaciones GTK+ en KDE



GTK+ o The GIMP Toolkit es un conjunto de bibliotecas multiplataforma para desarrollar interfaces gráficas de usuario (GUI), principalmente para los entornos gráficos GNOME, XFCE y ROX aunque también se puede usar en el escritorio de Windows, MacOS y otros.

Inicialmente fueron creadas para desarrollar el programa de edición de imagen GIMP, sin embargo actualmente se usan bastante por muchos otros programas en los sistemas GNU/Linux. Junto a Qt es una de las bibliotecas más populares para X Window System.

GTK+ se ha diseñado para permitir programar con lenguajes como C, C++, C#, Java, Ruby, Perl, PHP o Python.
Licenciado bajo los términos de LGPL, GTK+ es software libre y es parte del proyecto GNU.




Qt es una biblioteca multiplataforma ampliamente usada para desarrollar aplicaciones con una interfaz gráfica de usuario así como también para el desarrollo de programas sin interfaz gráfica como herramientas para la linea de comandos y consolas para servidores.

Qt es utilizada principalmente en Autodesk Maya, Dassault DraftSight, Google Earth, KDE, Adobe Photoshop Album, la Agencia Espacial Europea, Opie, Siemens,Volvo, Walt Disney Animation Studios Skype, Qt Extended, VLC media player, SamsungPhilips Panasonic VirtualBox y Mathematica

Es producido por la división de software Qt de Nokia, que entró en vigor después de la adquisición por parte de Nokia de la empresa noruega Trolltech, el productor original de Qt, el 17 de junio de 2008.Nokia anuncio que va a detener sus desarrollos en Symbian para usar la plataforma de Microsoft para sus telefonos inteligentes en Febrero de 2011. En marzo del mismo año, anunciaron la adquisición de las licencias comerciales de QT por Digia PLC, aunque Nokia va a continuar como la fuerza de desarrollo principal atras de la librería.

Qt es utilizada en KDE, un entorno de escritorio para sistemas como GNU/Linux o FreeBSD, entre otros. Qt utiliza el lenguaje de programación C++ de forma nativa, adicionalmente puede ser utilizado en varios otros lenguajes de programación a través de bindings.

Funciona en todas las principales plataformas, y tiene un amplio apoyo. El API de la biblioteca cuenta con métodos para acceder a bases de datos mediante SQL, así como uso de XML, gestión de hilos, soporte de red, una API multiplataforma unificada para la manipulación de archivos y una multitud de otros para el manejo de ficheros, además de estructuras de datos tradicionales.

Distribuida bajo los términos de GNU Lesser General Public License (y otras), Qt es software libre y de código abierto.




Los usuarios de KDE al uzar cualquier aplicación que utilice las librerias GTK+ notan que su aspecto no concuerda con el estilo visual de KDE que está basado en las librerías Qt
Además del aspecto visual la aplicación no se integra al 100% con las funciones que puede realizar en conjunto con el sistema y con las aplicaciones nativas de KDE.
Para lograr que se integren  al máximo, se hace uso de varias herramientas, temas y estilo. 




Integración visual en KDE

Integrar las aplicaciones GTK+ en el entorno KDE para que se vean visualmente coherentes con el resto del sistema, es muy sencillo y fácil, y cada día que pasa es mas fácil.
La mejor opción para llevar a acabo la integración visual, es usando los paquetes:
oxygen-gtk, kde-config-gtk-style y gtk-qt-engine

oxygen-gtk es una copia del tema oxygen de kde para las aplicaciones GTK+. Su objetivo principal es asegurar la coherencia visual entre las aplicaciones GTK+ y Qt que se ejecutan en kde. Oxygen-gtk lo que hace es seleccionar los : colores, iconos y tipografías realizadas para gtk, siendo visualmente casi imposible reconocer a primera vista que se trata de una aplicación GTK+, pareciendo una aplicación basada en Qt.

kde-config-gtk-style es la aplicación que nos aparece en el centro de control (systemsettings) para poder seleccionar el estilo oxygen-gtk.

gtk-qt-engine, es el programa que genera el script (gtk-qt-engine.rc.sh) necesario para la selección de oxygen-gtk, en cada inicio de sesión de kde




Instalación de Oxygen-Gtk

Como siempre hacemos en este blog y con la ayuda de synaptic instalamos los siguientes paquetes y todas sus dependencias: gtk2-engines-oxygen, kde-config-gtk-style y gtk-qt-engine (en el momento de escribir este manual al paquete gtk-qt-engine no se encuentra en la rama testing, los usuarios de testing pueden continuar sin dicho paquete, pues luego crearemos el script manualmente.) [Ya no hace falta generar el script, pues ya esta solucionado el error]

Ya solo son necesarios instalar estos tres paquetes:
gtk2-engines-oxygen
gtk3-engines-oxygen
kde-config-gtk-style



Después de instalar los paquetes nos dirigimos a la configuración del sistema: Menu K > Preferencias del sistema.


Una vez abierto nos parece el centro de control de kde.


Nos dirigimos a: Apariencia de las aplicaciones


Aparece la siguiente ventana


Y nos dirigimos al submenu Apariencia GTK+ en el apartado Estilos GTK+, seleccionamos el estilo de widget: oxygen-gtk y el apartado Tipografía GTK+, seleccionamos: Usar mis tipografías KDE en las aplicaciones GTK+ para finalilzar pulsamos en Aplicar y cerramos la ventana.



A partir de ahora las aplicaciones Gtk+ ya aparecen como si fuesen de KDE. Pero lo mejor es cerrar KDE y entrar de nuevo para que los cambios surtan efectos.



Algunas Capturas de pantalla.

Algunas Capturas de pantalla de aplicaciones Gtk+ con entorno gráfico KDE

Synaptic entorno GTK+

Synaptic apariencia oxygen-gtk
Nautilus entorno GTK+
Nautilus  apariencia oxygen-gtk
Iceweasel entorno GTK+

Iceweasel apariencia oxygen-gtk




=================================
Error no se aplican los cambios, no funciona.

Parece ser que los usuarios de Debian Squeeze (stable, en el momento de escribir este manual, no tienen problemas para aplicar los cambios y que estos surtan efectos.)

Sin embargo para los usuarios de Debian Wheeze (testing) y Debian Sid (Unstable), en el momento de escribir este manual les da problema, porque al pulsar en aplicar no se genera el script necesario para que los cambios surtan efectos.

Solución

Generaremos nosotros manualmente el script para que los cambios surtan efectos. (mientras los desarrolladores corrigen el bug).

Lo primero es situarnos en la carpeta oculta .kde que se encuentra en nuestra carpeta personal en mi caso particular es en:  /home/diego/.kde desde Dolphin

Para ver la carpetas ocultas desde Dolphin pulsamos en el menú:  Ver > Mostrar los archivos ocultos.


Una ves que podemos ver los archivos ocultos, buscamos la carpeta .kde


una vez localizada la carpeta oculta .kde, entramos en ella y vemos una serie de carpetas


de todas ellas nos interesa la que se llama env (es normal que en muchos casos no aparezca dicha carpeta, tan solo tienes que crear una carpeta nueva con nombre env)


entramos en la carpeta que tiene que estar vacía, o en algunos casos con algunos ficheros, menos el que nos interesa a nosotros, dependiendo de como tengamos configurado nuestro sistema y de si previamente teníamos la carpeta env



Ahora vamos a crear el fichero que nos falta, para ello pulsamos con el botón derecho del ratón y en el menú contextual que nos aparece seleccionamos Crear nuevo > Archivo de texto....


y le ponemos el siguiente nombre: gtk-qt-engine.rc.sh



Una vez creado el fichero que estará vacío lo editamos con nuestro editor de textos favorito, botón derecho del ratón encima del fichero, seleccionamos Abrir con y elegimos kwrite.

y le copiamos y pegamos el siguiente contenido:

#!/bin/bash

# Make sure our customised gtkrc file is loaded.
export GTK2_RC_FILES=/home/diego/.gtkrc-2.0-kde

guardamos los cambios y cerramos.

Observamos como este fichero hace referencia a otro fichero oculto de nuestra carpeta personal llamada .gtkrc-2.0-kde (que hace referencia a la tipografía por defecto de kde) si dicho fichero no lo tenemos por el motivo que sea, pues lo creamos igual que hicimos antes con gtk-qt-engine.rc.sh pero en nuestra carpeta personal. (en mi caso particular es: /home/diego)


pero con el contenido de .gtkrc-2.0-kde en mi caso particular es el siguiente:


# This file was written by KDE
# You can edit it in the KDE control center, under "GTK Styles and Fonts"

include "/usr/share/themes/oxygen-gtk/gtk-2.0/gtkrc"

style "user-font"
{
    font_name="DejaVu Sans"
}

gtk-theme-name="oxygen-gtk"
gtk-font-name="DejaVu Sans 10"



Una vez finalizado todo el proceso podemos comprobar que hemos generado bien el o los ficheros gtk-qt-engine.rc.sh y .gtkrc-2.0-kde y que se carga al inicio de kde. Para ello nos dirigimos a panel de control (systemsettings) Arranque y apagado


y observamos como en la sección Arranque, en el apartado archivo de script, se encuentra el fichero gtk-qt-engine.rc.sh que generamos antes.





















.








domingo, 5 de junio de 2011

Kaffeine, sintonizar y ver los canales de TDT

Kaffeine es el reproductor multimedia que usa KDE. Por defecto usa las bibliotecas xine, aunque también soporta GStreamer. También soporta los códecs de formatos propietarios de MPlayer (win32-codecs o w63-codecs). Se integra perfectamente en Dolphin y Konqueror, tanto en el modo de administrador de archivos como en el de navegador. Asimismo, sus desarrolladores han creado un plugin para Mozilla Firefox y derivados, Permitiendo visualizar vídeos directamente desde el navegador.

La interfaz es sencilla y amigable, entre sus características se incluyen streaming, DVB, DVD, Video CD, DivX, XviD, MP3, CD audio con soporte CDDB, subtítulos, etc.


Hace unos días vimos como configurar la tarjeta sintonizadora de TV, (NPG Real HDTV nano), pero tener la tarjeta configurada sin saber sintonizar los canales de TDT no vale para nada, por esto vamos a aprender a configurar los canales de TV y Radio en kaffeine.




Sintonizar los canales de televisión digital terrestre

Lanzamos kaffeine y pulsamos en TV Digital..


Al pulsar en TV Digital nos aparece dicho programa de televisión, como todavía no hemos sintonizado ningún canal nos aparece vacío.


Entonces lo primero que vamos hacer es configurar el programa de televisión, para ello pulsamos en el menú Televisión > Configurar televisión


Nos aparece la siguiente pantalla, en la pestaña Opciones generales, cada uno puede configurarla a su antojo, pero en mi caso no he necesitado cambiar nada y lo he dejado todo por defecto. 


Pasamos a la pestaña Dispositivo 1, en la cual observamos como ha detectado el dispositivo usb TDT que configuramos anteriormente. (Enlace aquí). Pero observamos como en el apartado origen no aparece Sin origen.


Pulsamos en el desplegable para elegir la opción Autoexploración, aunque existen mas opciones esta es la mejor, pues escanea todo el rango para sintonizar todos los canales.


y en el apartado nombre ponemos Terrestre. y pulsamos en Aceptar


Al pulsar en aceptar regresamos a la pantalla anterior.


Ahora pulsamos nuevamente en el menú Televisión > Canales, para sintonizar los canales de la TDT..


Ahora nos aparece la siguiente pantalla en la cual clicamos en Iniciar exploración, para comenzar a escanear los canales.


vemos como comienza a explorar las frecuencias.


ahora observamos como ha sintonizado un par de canales de TV y un par de emisoras de Radio.

Nota: cada vez que se sintoniza un canal se enciende el piloto verde y se añade el canal a la lista de Resultados de exploración.


Conforme va escaneando vemos como se añaden los nuevos canales en Resultados de exploración.




Ya ha finalizado el proceso de exploración, vemos como todos los canales encontrados en encuentran en la lista de Resultados de exploración.


Si ahora pulsáramos en aceptar perderíamos todos los canales escaneados, pues no lo hemos añadido a nuestra lista de canales y tendríamos que escanear de nuevo los canales.

Para ello seleccionamos en el canal o los canales que nos guste, en este manual hemos seleccionado todo, pulsado en un canal de la lista de Resultados de exploración y pulsando la combinación de teclas Ctrl + A y pulsamos en el botón Añadir seleccionado.


Al pulsar en Añadir seleccionado vemos como se añaden todos los seleccionados, al apartado Canales. ya podemos Pulsar en Aceptar.


Nos devuelve al principio del programa de TV Digital y ya podemos visualizar los canales, ordenarlos, borrarlos, ver el teletexto, grabar un canal, etc...





Algunas capturas de pantallas de los canales.













Enlaces en este blog sobre Sintonizadoras de Televisión

Real HDTV Nano 3D - Televisión Digital Terrestre
Sintonizadora de TV AsusteK P7131 Dual (analógica y digital)
 
Sintonizadora de televisión - BT848A (analógica)