<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Daniel Dianes - página personal</title>
	<atom:link href="http://www.danieldianes.nom.es/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.danieldianes.nom.es</link>
	<description>Informática, Internet, Literatura, Software Libre</description>
	<lastBuildDate>Mon, 22 Apr 2013 10:33:42 +0000</lastBuildDate>
	<language>es-ES</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>CISPA</title>
		<link>http://www.danieldianes.nom.es/2013/04/cispa/</link>
		<comments>http://www.danieldianes.nom.es/2013/04/cispa/#comments</comments>
		<pubDate>Mon, 22 Apr 2013 10:21:54 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[Divagaciones]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Legal]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1617</guid>
		<description><![CDATA[Esta entrada no es conspiranoica, es realista. El esfuerzo que está detrás de SOPA, ACTA, COICA, etc. nunca para. Después de cada derrota se rearma, se pone otro vestido y ataca de nuevo. Y aprovecha eventos muy mediáticos (el atentado de Boston, la explosión en Texas) para colar en el Congreso (House Of Representatives) su [...]]]></description>
				<content:encoded><![CDATA[<p>Esta entrada no es conspiranoica, es realista.</p>
<p>El esfuerzo que está detrás de SOPA, ACTA, COICA, etc. nunca para. Después de cada derrota se rearma, se pone otro vestido y ataca de nuevo. Y aprovecha eventos muy mediáticos (el atentado de Boston, la explosión en Texas) para colar en el Congreso (House Of Representatives) su nueva encarnación: CISPA.</p>
<div style="text-align: center; margin-top: 20px; margin-bottom: 15px">
<img src="/i/cispa.png" alt="logo CISPA y cámaras de vigilancia de internet" />
</div>
<p><span id="more-1617"></span></p>
<p>Cuando intento explicar porqué es malo siempre me dicen &#8220;es que no tengo nada que ocultar, me da igual&#8221;. Pero para mi eso no es excusa para tener una ley que <strong>permite y alienta que las cualquier empresa ceda datos personales y de actividad de cualquier usuario del mundo al gobierno norteamericano sin orden judicial</strong>.</p>
<p>En palabras traducidas por mi, de la Electronic Frontier Foundation:</p>
<blockquote><p>La Cyber Intelligence Sharing and Protection Act (CISPA) o Ley de Compartición y Protección de Ciber Inteligencia es un proyecto de ley que ha pasado recientemente (18-04-2013) por el Congreso y se dirige al Senado. Crearía una nueva exención a las leyes de privacidad existentes. Permitiría que cualquier compañía, incluidos gigantes como Google, Facebook o Twitter obtener información de &#8220;ciber amenazas&#8221; (incluyendo información personal y privadad de tus cuentas) y enviarla al gobierno de los Estados Unidos. Incluidas las cuentas de ciudadanos no americanos.</p></blockquote>
<p>Es la siempre efectiva amenazas del terrorismo lo que tan bien les viene. Si este fuera un blog conspiranoico empezaría a elucubrar negras teorías sobre quien hizo explotar las torres gemelas o puso las bombas de Boston, pero no es momento ni lugar ni mi estilo. Lo preocupante es lo que pase a partir de ahora. Que una empresa norteamericana se salte a la torera no solo cualquier ley norteamericana de protección de datos, sino cualquier ley aplicable en el país al que pertenezca el usuario en concreto, como por ejemplo la ley española y las directivas europeas de protección de datos personales.</p>
<p>Sin juez mediante ¿qué garantía hay de que esa información obtenida constituya prueba de delito alguno? Si después dicen que ha sido falsa alarma ¿qué garantías hay de que no usen la información para otro propósito?</p>
<p>Porque cuando pensamos en estas cosas nos ceñimos a nuestra vida personal y pensamos ¿a quien le importa? Pero si miramos un poco más allá y pensamos en la moda de la nube la situación pinta mal. Porque en la medida en que empresas y administraciones españolas o de cualquier país del mundo comenzaran a contratar proveedores informáticos estadounidenses para montar sus nubes y en el caso de un conflicto entre naciones ¿qué impediría al gobierno americano armado con CISPA chantajear al gobierno español obteniendo información sensible de las nubes españolas aduciendo que hay amenaza de ciber terrorismo?</p>
<p>CISPA acaba de pasar el trámite del Congreso y se dirige al Senado. ACTA fue tumbada por la presión de todos los gigantes incluidos Gooble y Facebook, que ahora misteriosamente están a favor de CISPA, por eso hay más peligo ahora. Obama ha prometido ejercer su derecho al veto, pero ya veremos en qué acaba esto. Si te parece ridícula la situación de Internet en China, es mejor que pares esa risa.</p>
<ol>
<li>Entrada relacionada: <a href="/2012/02/legislacion-que-viene-sopa-pipa-acta-coica/">SOPA, PIPA, ACTA, COICA</a></li>
<li><a href="https://www.eff.org/deeplinks/2013/02/cispa-government-access-loophole">The CISPA Government Access Loophole</a></li>
<li><a href="http://internetdefenseleague.org/">Internet Defense League</a></li>
<li><a href="http://www.sitesnotspies.org/">Massive Protest to stop CISPA</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2013/04/cispa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Poesía</title>
		<link>http://www.danieldianes.nom.es/2013/04/poesia/</link>
		<comments>http://www.danieldianes.nom.es/2013/04/poesia/#comments</comments>
		<pubDate>Thu, 04 Apr 2013 06:55:49 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[Divagaciones]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1606</guid>
		<description><![CDATA[No me he podido resistir a publicar este comentario de spam: Fantastic bienes de usted , hombre. Tengo que entender tus cosas antes de y tú sólo eres extremadamente maravilloso. De hecho, me gusta lo que he adquirido aquí, me gusta lo que estás diciendo y la manera en que lo dice. Usted lo hace [...]]]></description>
				<content:encoded><![CDATA[<p>No me he podido resistir a publicar este comentario de spam:</p>
<blockquote><p>Fantastic bienes de usted , hombre. Tengo que entender tus cosas antes de y tú sólo eres extremadamente maravilloso. De hecho, me gusta lo que he adquirido aquí, me gusta lo que estás diciendo y la manera en que lo dice. Usted lo hace entretenido y todavía cuidar de mantener prudente . No puedo esperar a leer mucho más de ti. Esto es realmente un gran sitio. respecto</p></blockquote>
<p>Es magistral.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2013/04/poesia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Distribución Linux para Administración Electrónica en España</title>
		<link>http://www.danieldianes.nom.es/2013/04/distribucion-linux-para-administracion-electronica-en-espana/</link>
		<comments>http://www.danieldianes.nom.es/2013/04/distribucion-linux-para-administracion-electronica-en-espana/#comments</comments>
		<pubDate>Wed, 03 Apr 2013 06:44:45 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[Administración Electrónica]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Legal]]></category>
		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1524</guid>
		<description><![CDATA[Quiero plasmar el conocimiento de configuración del sistema operativo, del navegador y del resto de elementos como Java en Administración Electrónica en una máquina virtual que puedas bajarte e instalarte, configurada para realizar todos los trámites posibles y que, con solo personalizar con tus propios certificados, te de acceso a la Administración Electrónica en un [...]]]></description>
				<content:encoded><![CDATA[<blockquote><p>Quiero plasmar el conocimiento de configuración del sistema operativo, del navegador y del resto de elementos como Java en Administración Electrónica en una máquina virtual que puedas bajarte e instalarte, configurada para realizar todos los trámites posibles y que, con solo personalizar con tus propios certificados, te de acceso a la Administración Electrónica en un entorno seguro y estable.</p></blockquote>
<div style="text-align:center;margin-top:25px">
<img src="/i/linuxae.png" alt="captura de pantalla del escritorio de la máquina mostrando programas" />
</div>
<p><span id="more-1524"></span></p>
<h3>Motivación</h3>
<p>Quería crear una máquina que fuera <strong>independiente de tu sistema principal</strong> y que así todas las configuraciones de la Administración Electrónica no estuvieran expuestas a los cambios del día a día que haces en tu ordenador por cualquier motivo, o expuesta a averías del equipo o fallos del sistema operativo, virus, etc. Además de un sistema muy seguro para operaciones delicadas con son estas. <strong>Si rompes algo ¡solo tienes que bajarte el sistema de nuevo ya configurado!</strong>.</p>
<p>Muchos de los problemas a los que se enfrenta tanto el ciudadano como el desarrollador a la hora de acceder/crear los trámites de Administración Electrónica de cualquier Administración Pública es la gran diversidad de configuraciones existentes en cuanto a sistema operativo, navegador web y máquina virtual de Java principalmente. Estos problemas se agravan por las continuas actualizaciones de todos los componentes, así como a los &#8220;formateos&#8221; del ordenador que hacen que tengas que reinstalar el sistema de cero o bien a la difícil coexistencia de distintas versiones de las JREs de Java: una para administración electrónica y otra(s) para el resto del trabajo.</p>
<h3>Ventajas</h3>
<p>Usar esta máquina virtual te interesa porque:</p>
<ul>
<li>Tiene incorporadas una larga lista de modificaciones, configuraciones, drivers y programas para que todo funcione con solo configurar el certificado.</li>
<li>Es un sistema que no está expuesto a actualizaciones que puedan hacer que todo deje de funcionar, como por ejemplo actualizaciones de la versión de Java.</li>
<li>Por <strong>seguridad</strong>. Se trata de &#8220;un ordenador dentro de tu ordenador&#8221; y eso, unido al hecho de la seguridad que Linux tiene por sí mismo, hace que esté más protegido en estas operaciones sensibles.
<p><em>&nbsp;Una gran parte de los ataques (robo de sesiones, suplantación de identidad, etc.) pueden venir dados, explicado a grandes rasgos, por la gran cantidad de páginas que consultamos desde el mismo equipo: las fiables mezcladas con las no fiables. Si a eso le añadimos el uso de pestañas para navegar por ellas -las malas y las buenas- al mismo tiempo, el problema empeora. Utilizando este sistema aislado <strong>SOLO</strong> para las operaciones de administración electrónica, te habrás librado de una buena parte de los ataques potenciales.</p>
<p></em></li>
<li>Si algo se rompe solo hay que bajarse la máquina virtual de nuevo, volver a instalar el certificado y a funcionar.</li>
<li>Puedes hacer modificaciones en tu ordenador (por ejemplo cambiar de sistema operativo) sin miedo, la máquina virtual seguirá funcionando igual.</li>
</ul>
<h3>Implementación</h3>
<p>He elegido <strong>Lubuntu 12.10</strong> como sistema de base porque es una versión ligera de Ubuntu. Estoy más habituado a los sistemas Debian/*buntu con Gnome por lo cual me resulta más fácil trastear. Lubuntu se beneficia de la gran base que es Ubuntu y es mucho más ligero que la rama principal, lo que lo hace muy apto para ser instalado en una máquina virtual. Con un sistema medianamente potente y en pantalla completa de VirtualBox apenas notarás la diferencia. En mi caso un PC con más de 5 años con un dual core 2 Ghz y 2Gb de RAM.</p>
<h3>Versión 0.1</h3>
<p>Esta versión es&#8230; ¿hay algo antes que alpha? <img src='http://www.danieldianes.nom.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Se aprecian todos los comentarios y sugerencias para ayudarme a depurar tanto el funcionamiento como problemas que podais encontrar a la hora de echarla a andar en Virtual Box.</p>
<p>El software incluido y las configuraciones realizadas son las siguientes:</p>
<ol class="crossbrowser_img" style="margin-top: 20px">
<li>Sistema base Lubuntu 12.10 con editor de textos LibreOffice y visor de documentos PDF. Se ha eliminado el software no esencial, pero se puede instalar en cualquier momento.</li>
<li><strong>Firefox 18</strong> con las autoridades de certificación esenciales instaladas y con la confianza otorgada (con esto ya no hace falta hacer más excepciones de seguridad). Se han desactivado los plugins no esenciales, para un mejor rendimiento. También se han añadido marcadores a las páginas web más útiles sobre Administración Electrónica a nivel nacional, autonómico y local.</li>
<li>Máquina virtual de <strong>Java versión 1.7.0_07</strong> de Oracle, versión recomendada por @Firma para GNU/Linux. Información sobre como configurar el certificado en Java. Esta versión no está sujeta a actualizaciones automáticas que puedan hacer que la AE deje de funcionar.
<p><em>&nbsp;Algunos de los problemas con Java es que no es fácil tener varias versiones instaladas al mismo tiempo. Si se te actualiza la versión o si tienes que utilizar otra por motivos de trabajo ¡se te fastidió la Administración Electrónica! En esta máquina virtual, Java está &#8220;congelado&#8221; en esa versión</p>
<p></em></li>
<li><strong>Certificado FNMT</strong>. Todo preparado para su uso, todas las Autoridades de Certificación para no tener que darle más a &#8220;Confirmar excepción de seguridad&#8221;. Instrucciones para la instalación del certificado.</li>
<li><strong>DNI electrónico</strong>. Es uno de los elementos más complicados de hacer funcionar, pero no solo en Linux sino también en Windows. En este sistema vienen configurados los drivers de OpenDNIe, las autoridades de certificación y la comunicación del driver del lector con Firefox para usar correctamente el DNIe.<br />
<br /><em>&nbsp;Este es el aspecto que se encuentra más inestable. A mi me ha funcionado en mi equipo y con mi lector. Pero el DNIe es muy &#8220;inestable&#8221; por así decirlo. A lo mejor un día no consigo validarme y al siguiente intento sí o me deja de funcionar para siempre porque se ha estropeado el chip, solo de usarlo. Es el aspecto donde mejor me vendría el feedback.</p>
<p></em></li>
<li>Preparado para <strong>realizar la declaración de la renta</strong>. He incluido el programa <strong>PADRE</strong> del ejercicio de 2012. Hasta donde he podido probar -obtención de los datos desde la Agencia Tributaria con el certificado- funciona. Cuando presente la declaración sabremos más <img src='http://www.danieldianes.nom.es/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li>Software de firma incluido: <strong>Cliente standalone de @firma para firmar y cifrar</strong> todo tipo de documentos con los estándares para firma de PDF y para <strong>generar facturas electrónicas</strong>, de forma que el sistema es de utilidad también para las empresas.</li>
<li>Software de firma más sencillo: <strong>FirmaFácil</strong>.</li>
</ol>
<h3>Instalación</h3>
<ol>
<li>El primer paso será instalar VirtualBox, disponible en https://www.virtualbox.org/ para cualquier sistema operativo anfitrión (tu sistema).</li>
<li><strong>Descargar la máquina Linux AE</strong>. Como pesa 1,5Gb y no quiero que muera mi servidor en el intento, solo te pido una pequeña molestia:</li>
<li style="list-style-type: none;">
<ol style="background-color: lightgreen">
<li>Pon un comentario en esta entrada, usa un email real (solo yo lo conoceré, claro).</li>
<li>A ese email, te envio un enlace de descarga.</li>
</ol>
</li>
<li>Importar el servicio virtualizado. En VirtualBox: <strong>Archivo</strong> &gt; <strong>Importar servicio virtualizado&#8230;</strong> &gt; <strong>Seleccionar&#8230;</strong> y buscar el archivo descargado.</li>
<li>Ajustar la capacidad (opcional). La máquina viene ya con una asignación de memoria RAM, memoria de vídeo, CPU etc. pero quizá quieras aumentarla para mejorar el rendimiento. Si tienes un equipo potente puedes hacer que la máquina virtual vaya casi tan rápido como un sistema operativo &#8220;real&#8221;.</li>
<li>Iniciar la máquina y seguir la guía de primeros pasos para configurar el certificado (enlace a PDF en el escritorio) o bien <a href="http://danieldianes.nom.es/descarga/PrimerosPasos-LinuxAE-0.1.pdf">descarga ya la guía de primeros pasos</a> para ir abriendo boca.</li>
<li>Si quieres usar el dni electrónico tendrás que buscar primero un lector con soporte en GNU/Linux. Algunos que van bien son: <strong>Bit4Id minilector</strong> (www.bit4id.com) y <strong>C3PO LTC31</strong> (www.c3po.es)</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2013/04/distribucion-linux-para-administracion-electronica-en-espana/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Recuperando libertad y diversión con Raspberry Pi (II)</title>
		<link>http://www.danieldianes.nom.es/2013/04/recuperando-libertad-y-diversion-con-raspberry-pi-ii/</link>
		<comments>http://www.danieldianes.nom.es/2013/04/recuperando-libertad-y-diversion-con-raspberry-pi-ii/#comments</comments>
		<pubDate>Mon, 01 Apr 2013 08:48:57 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Software Libre]]></category>
		<category><![CDATA[TDT]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1402</guid>
		<description><![CDATA[Pues seguimos cacharreando con el pequeño -pero matón- Pi. Las grabaciones DVBT ya van viento en popa a toda vela, después de haber superado no pocas dificultades y haber aprendido mucho por el camino. ¿No era ese el objetivo de RPi? Pues al menos en lo que a mi respecta lo ha conseguido. Enlace a [...]]]></description>
				<content:encoded><![CDATA[<p>Pues seguimos cacharreando con el pequeño -pero matón- Pi. Las grabaciones DVBT ya van viento en popa a toda vela, después de haber superado no pocas dificultades y haber aprendido mucho por el camino. ¿No era ese el objetivo de RPi? Pues al menos en lo que a mi respecta lo ha conseguido.</p>
<p><span id="more-1402"></span></p>
<p>Enlace a la primera parte: <a href="/2012/11/recuperando-libertad-y-diversion-con-raspberry-pi/">Recuperando libertad y diversión con Raspberry Pi</a></p>
<p>Quizá lo que viene a continuación debería haberlo escrito en la primera entrada pero de todas formas ahí va. Cuando haces uso del cable HDMI el sonido que se produce en el Pi va directamente por ahí en lugar de por la salida jack. Si para vosotros esa opción está bien no hay nada que tocar, pero para forzar que el sonido vaya por el jack:</p>
<blockquote><p>sudo amixer cset numid=1</p></blockquote>
<h3>Montando el almacenamiento</h3>
<p>Volviendo al tema, lo primero que quería conseguir era que se montara automáticamente y en un punto de montaje fijo un pendrive de 16Gb que tengo, que es donde quiero almacenar las grabaciones. Es relativamente fácil hacerlo con un pendrive formateado FAT32 pero yo quería hacerlo con formato ext4 para superar la limitación de los 4Gb de tamaño máximo de archivo.</p>
<p>Cuando los dispositivos de almacenamiento en Unix/Linux no se conectaban en caliente como pasa con los USB las cosas eran más sencillas. Cuando los pendrives y discos externos se empezaron a generalizar creo que los desarrolladores del núcleo no lo pasaron demasiado bien y el resultado es un poco confuso. Hoy en día enchufas un pendrive y -asumiendo que estás trabajando con escritorio gráfico- siempre se monta y funciona bien. Pero para tener más control sobre el proceso y sobre todo si no estás en un entorno gráfico, la cosa se pone un poco &#8220;tricky&#8221; como dicen los angloparlantes.</p>
<p>Para que el núcleo linux monte un pendrive en el que el usuario pueda escribir, el usuario en cuestión deber ser propietario tanto del dispositivo (<code>/dev/sd*</code>) como del punto de montaje. Para que ésto quede perfecto habría que asegurarse de que el pendrive siempre se monta con el mismo nombre de dispositivo bajo <code>/dev</code> pero por ahora asumiré que linux lo detecta y le asigna <code>/dev/sda1</code>. Sabiendo eso vamos y hacemos:</p>
<blockquote><p>sudo chown pi:pi -Rf /dev/sda1</p></blockquote>
<p>Ahora hay que averiguar el UUID del dispositivo para poder configurar correctamente el archivo <code>/etc/fstab</code>. Haremos lo siguiente:</p>
<blockquote><p>ls -al /dev/disk/by-uuid</p></blockquote>
<p>En este directorio hay enlaces simbólicos hacia los dispositivos reales, organizados por UUID. Tenemos que encontrar el que apunte a nuestro dispositivo. El truco está en saber que tu pendrive ha sido montado en <code>/dev/sda1</code>. Para ello ayuda no tener ningún otro conectado. Entonces como resultado del último comando deberíamos ver:</p>
<blockquote><p>&#8230;<br />[...] 72d5a2de-ae0a-485b-8383-cfb128703a1e -> ../../sda1<br />&#8230;</p></blockquote>
<p>Esa ristra larga que empiezar por 7 es el UUID. La ventaja es que siempre es el mismo y no se repite en el mismo sistema. Linux podrá montar el pendrive en sda1, sdb1, sdc1, etc -donde pueda en cada momento- pero sabemos seguro que siempre habrá un enlace simbólico en el directorio <code>/dev/disk/by-uuid</code> con el mismo UUID apuntando hacia el dispositivo real donde haya sido &#8220;enganchado&#8221; el pendrive. Nos quedamos con el número y editamos el archivo que controla los sistemas de ficheros:</p>
<blockquote><p>sudo joe /etc/fstab</p></blockquote>
<p>El editor <code>joe</code> es mi favorito pero aquí podeis escribir: <code>pico</code>, <code>nano</code>, <code>vi</code> o lo que quiera que useis. La línea que hay que añadir es la siguiente:</p>
<blockquote><p>UUID=72d5a2de-ae0a-485b-8383-cfb128703a1e /home/pi/pendrive ext4 defaults,noatime,user 0 0</p></blockquote>
<p>Este archivo está formado por registros (líneas) con campos separados por espacios o tabuladores. El primero indica cual es el sistema de ficheros y en este caso lo identificamos mediante el UUID que obtuvimos anteriormente. Después le asignamos un punto de montaje, así cada vez que lo montemos sabemos que estará ahí. En este caso <code>/home/pi/pendrive</code> (lo creamos luego). Después viene el tipo de sistema de ficheros (ext4). Luego hay un campo formado por opciones separadas por comas. La más importante de ahí es user que permite al usuario montar el sistema de archivos. Para saber más: <code>man fstab</code>.</p>
<p>Ahora creamos el punto de montaje y cambiamos el propietario y el grupo:</p>
<blockquote><p>
cd ~<br />
mkdir pendrive<br />
mount pendrive<br />
sudo chown pi:pi -Rf pendrive
</p></blockquote>
<p>Ahora que lo hemos montado y hemos cambiado los permisos del punto de montaje (de forma recursiva) cada vez que se desmonte y se vuelva a montar ya siempre tendrá los permisos bien asignados y el usuario tendrá permisos totales dentro del dispositivo de almacenamiento. Además se montará automáticamente cada vez que se inicie el RasPi y el pendrive esté conectado.</p>
<h3>¡Grabando!</h3>
<p>Como decía en la primera entrada los programas GNUtv [<a href="#referencias">1</a>] y cat (o dd) son suficientes para registrar una emisión de DVB-T. El programa gnutv necesitará un archivo válido de canales para poder sintonizar. Luego habrá que crear un proceso sintonizando el canal y otro proceso pasando lo que está generando gnutv a un archivo en disco. Me fascina la facilidad con la que trata linux el tema de grabar. He tenido larga experiencia grabando la TDT, incluido con equipos Windows. Normalmente el programa que te venía con cualquier sintonizadora USB para windows siempre hacía algo sobre el stream que viene de tu antena, con los siguientes problemas:</p>
<ul>
<li>Requiere una máquina más potente -sobre todo con más RAM- para grabar.</li>
<li>El resultado es de peor calidad. La calidad con que emite un buen canal de DVB-T es similar a DVD y eso se pierde.</li>
<li>Se pierden los subtítulos y la pista de audio original.</li>
</ul>
<p>Para un fan total de la pista de audio original y de los subtítulos como yo, el tercer punto era esencial e innegociable. Los programas que el fabricante de cada tarjeta mete en el paquete de venta siempre hacían algo raro. Se contentaban con guardar una versión muy comprimida y amputada. Y yo pensaba ¡si hoy tenemos almacenamiento barato! ¿qué importa que una películao ocupa 5Gb? Y así terminé pasando al gran programa Me-TV y posteriormente a grabar con el pequeño Pi mediante scripts.</p>
<p>Volviendo al tema, lo primero que tenemos que hacer es tener una sintonizadora USB sencilla. Todo el proceso de hacerla funcionar y escanear la lista de canales lo describí en <a href="http://www.danieldianes.nom.es/2010/11/htpc-linux-grabar-tdt-dvb-con-subtitulos-con-subtitulos-sordos/">Grabar TDT (DVB) con subtítulos para sordos</a>. Y todas las averiguaciones para grabar con el Pi están en el primer artículo de la serie [<a href="#referencias">1</a>] así que no lo repetiré aquí.</p>
<p>Todo lo que he ido aprendiendo sobre grabación lo he ido plasmando en un proyecto [<a href="#referencias">2</a>] basado en un script Ruby que acepta varios parámetros y se encarga él solito de hacer la grabación. Un ejemplo para grabar La 1 durante 1 hora y 20 minutos empezando dentro de 5 minutos sería:</p>
<blockquote><p>./recordtv.rb -c &#8220;La 1&#8243; -d 1h20m -s 05m</p></blockquote>
<p>Ejecutando recordtv.rb sin parámetros podeis obtener ayuda sobre los parámetros y cuales son opcionales y cuales obligatorios. Realmente los únicos obligatorios son el canal y la duración de la grabación. Si no se indica retraso hasta el inicio, empezará la grabación de inmediato. Además, se generará un log de la grabación en el mismo directorio.</p>
<p>El hecho de que haya un solo script tiene la ventaja de que podemos ponerlo en el cron. Así podemos grabar el programa que nos interese. Una de mis viejas aspiraciones con el HTPC de salón era poder tener la oportunidad de hacer grabaciones desatendidas y periódicas (por ejemplo grabar todos los jueves a las 22.30 tal serie). Pero lo que no quería era dejar un ordenador &#8220;normal&#8221; siempre encencido solo para esperar a hacer esa grabación. Y ahora sí que puedo, porque el &#8220;ridículo&#8221; consumo del RPi hace que puede tenerlo siempre encendido y disponible. Y como siempre la línea de comandos y GNU nos trae todo lo que necesitamos.</p>
<p>Aquí dejo unos ejemplo que están en mi cron y unas cuantas características especiales que necesita. Lo que tenemos que hacer es escribir:</p>
<blockquote><p>crontab -e</p></blockquote>
<p>Y entraremos en modo de edición del cron para nuestro usuario. Si es la primera vez que lo hacemos nos pedirá qué editor queremos usar. En mi caso uso <code>joe</code> pero <code>nano</code> es igualmente fácil de usar. Así que antes de empezar a editar el cron recomiendo que nos familiaricemos con las peculiaridades de algún editor en línea de comandos: joe, vim, nano, pico, etc. Sabiendo esto, este es el aspecto de mi cron:</p>
<blockquote><p>
PATH=/home/pi/workspace/dvbpi:/usr/bin:/bin</p>
<p>30 22 28 3 * recordtv.rb -o &#8220;bala_oscuridad&#8221; -c &#8220;nova&#8221; -d 2h30m</p>
<p>#Mundo Hacker todos los jueves<br />
20 00 * * 5 recordtv.rb -o &#8220;mundo_hacker&#8221; -c &#8220;discoverymax&#8221; -d 1h20m</p>
</blockquote>
<p>La primera línea (PATH&#8230;) establece unas rutas por defecto para que se consigan encontrar los comandos necesarios como <code>gnutv</code>.</p>
<p>La segunda línea hacía una grabación a las 22:30 (el primer campo son los minutos, el segundo la hora) de la película &#8220;Una bala en la oscuridad&#8221; en el canal Nova el 28 del 3, con una duración de dos horas y media.</p>
<p>La tercera es una grabación periódica. Graba todos los días 5 de la semana (viernes) a las 00:20 el programa &#8220;Mundo Hacker&#8221; en DiscoveryMax, con una duración de 1 hora y 20 minutos. Como veis, la principal diferencia entre la primera y la segunda grabación es que en la segunda no está establecida la fecha del mes, así que cada quinto día de la semana grabará. En la primera está especificado el 28 del 3 (marzo) y como cron no admite años, se supone que todos los 28 de marzo de aquí hasta el fin de los tiempos se grabará según esa línea. Para más información sobre este fichero:</p>
<blockquote><p>
man 5 crontab
</p></blockquote>
<p>¡A ver si vais a querer que os lo cuente todo! <img src='http://www.danieldianes.nom.es/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Por último, los pasos para que os podais descargar el script de ruby para grabar:</p>
<blockquote><p>
sudo apt-get install git<br />
git clone https://github.com/ddianes/dvbpi.git
</p></blockquote>
<p>Se creará un directorio <code>dvbpi</code> con el código. Evidentemente hay cosas que modificar. Dentro de etc hay un fichero con un par de líneas de configuración. La primera corresponde al directorio por defecto donde irán las grabaciones. Debería haber puesto más líneas útiles en este fichero pero todavía no he tenido tiempo. Otro aspecto a tener en cuenta es que posiblemente no os sirva el fichero de canales, porque depende de cada provincia. Así que hay que proporcionarle uno nuevo, pero que se llame igual. Otra cosa que hice es que cambié los nombres de todos los canales (primer campo de cada línea del fichero) quitando mayúsculas, espacios y todo lo que no fueran letras o números. Así es más fácil de usar desde cron.</p>
<h3>¡Compartiendo!</h3>
<p>Una vez que empiezas a grabar contenido o a bajarte cosas con un gestor de descargas torrent, se plantea el problema de compartirlas por la red o tener que desconectar el almacenamiento del RasPi para conectarlo en otro ordenador. La segunda opción siempre es posible pero hay que acordarse de conectarse por ssh, desmontarlo y extraerlo con seguridad. Se convierte en un proceso engorroso. Para la primera opción lo que se nos viene a la cabeza es Samba. Eso está bien si quieres simplemente copiarte los ficheros a otro ordenador. Hice pruebas abriendo el arhivo compartido en Samba directamente con el VLC y no dieron buen resultado.</p>
<p>Hay una opción mucho más interesante. Se puede hacer disponible el contenido mediante un servidor DLNA/UPNP. Este protocolo hace que el cliente (un PC, un dispositivo Android, una SmartTV, &#8230;) autodescubra los servidores en la red local y se puede acceder al contenido y reproducirse sin sobresaltos. </p>
<p><em>Pero eso amigos, junto con la instalación y configuración de un cliente torrent, quedará para la siguiente entrada de la serie de cacharreo con el RPi</em>.</p>
<p>Referencias:</p>
<ol id="referencias">
<li><a href="/2012/11/recuperando-libertad-y-diversion-con-raspberry-pi">Recuperando libertad y diversión con Raspberry Pi</a></li>
<li><a href="https://github.com/ddianes/dvbpi">Proyecto dvbpi en github</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2013/04/recuperando-libertad-y-diversion-con-raspberry-pi-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Una historia de Amor Universal: Azul y Pálido</title>
		<link>http://www.danieldianes.nom.es/2013/02/una-historia-de-amor-universal-azul-y-palido/</link>
		<comments>http://www.danieldianes.nom.es/2013/02/una-historia-de-amor-universal-azul-y-palido/#comments</comments>
		<pubDate>Sat, 23 Feb 2013 18:46:33 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[Divagaciones]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1453</guid>
		<description><![CDATA[Estamos hablando de la novela gráfica Azul y Pálido del algecireño amiguete Pablo Ríos, una colección de historias con el nexo común de los extraterrestres. Pero yo se que esa obra no va de extraterrestres, porque en realidad se trata de una historia de amor. ¡sí! y os explico porqué. En una primera aproximación todos [...]]]></description>
				<content:encoded><![CDATA[<p>Estamos hablando de la novela gráfica Azul y Pálido del algecireño amiguete Pablo Ríos, una colección de historias con el nexo común de los extraterrestres. Pero yo se que esa obra no va de extraterrestres, porque en realidad se trata de una historia de amor. ¡sí! y os explico porqué.</p>
<p>En una primera aproximación todos veremos lo mismo. Una serie de historias, contadas con un 80% de neutralidad, de personas que cuentan sus experiencias de abducción, de viajes por otros mundos, de contactos y también de cantamañanas que pretenden conseguir tu dinero por tu salvación.</p>
<div style="text-align:center;margin-top:50px">
<img src="/i/azulypalido.jpg" alt="portada de azul y pálido, un hombre en el universo con fondo azul claro" >
</div>
<p><span id="more-1453"></span></p>
<p>Pero ¿qué es lo que realmente guia la historia de estas personas y se configura como la fuerza motivadora? ¡es el amor! Lo único que ha guiado a la humanidad hasta nuestros días, no te engañes, no hubieramos aguantado ni dos telediarios si no hubiera sido por él.</p>
<p>Carl Sagan ama la ciencia, a la humanidad y también a la extrahumanidad y por eso ansía el contacto; hay entidades alienígenas que aman y protegen a los humanos como nosotros a nuestros perritos, tan solo esperando el momento en que estemos preparados; hay alienígenas que esperan el fin del nuestro mundo para acogernos en sus brazos; pleyadianos que prefieren quedarse aquí a relacionarse con las hijas de Lemuria; otros que nos recuerdan que nos estamos portando mal con nuestro planeta y también están los que aman exclusivamente el dinero.</p>
<div style="text-align:center;margin-top:40px">
<img src="/i/dedicatoria.jpg" /><br />
<br /><strong>¿por qué si no iba a hacer la dedicatoria con besitos? ¿eh?</strong>
</div>
<p>En definitiva, con el pretexto de las abducciones y los viajes interestelares Pablo Ríos construye una serie de historias que exponen nuestra necesidad de ser queridos, aceptados, comprendidos, de ser integrados en un grupo, de cuidar de alguien, de que nos cuiden y de tener la certeza de que la vida tiene sentido.</p>
<p>Y bueno que es un libro muy bonito, muy bien escrito, muy bien dibujado e impreso y que cuesta UN HUEVO hacerlo y ahora encima me nominan al chaval a Autor Revelación en los premios del trigesimoprimer Salón del Comic de Barcelona, ahí es nada. Así que dirigid vuestros navegadores a <a href="http://www.entrecomicscomics.com/obras/azul-y-palido/13/">Entrecomics</a> y pilladlo porque es bueno, bonito y barato. A evadirse.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2013/02/una-historia-de-amor-universal-azul-y-palido/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elegancia en la línea de comandos</title>
		<link>http://www.danieldianes.nom.es/2013/02/elegancia-en-la-linea-de-comandos/</link>
		<comments>http://www.danieldianes.nom.es/2013/02/elegancia-en-la-linea-de-comandos/#comments</comments>
		<pubDate>Sun, 17 Feb 2013 10:05:01 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1438</guid>
		<description><![CDATA[Me llama mucho la atención que hay misiones sencillas que son enormemente complicadas cuando las hacemos mediante la interfaz gráfica, sea cual sea. No digo que haya que hacer todo con comandos, cada misión tiene su herramienta, pero sí que una de las grandes ventajas de Linux es que con un par de comandos puedes [...]]]></description>
				<content:encoded><![CDATA[<p>Me llama mucho la atención que hay misiones sencillas que son enormemente complicadas cuando las hacemos mediante la interfaz gráfica, sea cual sea. No digo que haya que hacer todo con comandos, cada misión tiene su herramienta, pero sí que una de las grandes ventajas de Linux es que con un par de comandos puedes hacer tareas que a golpe de ratón serían muy tediosas.</p>
<p><span id="more-1438"></span></p>
<p>Supongamos que tenemos un archivo con registros (líneas) y campos. No nos interesan todos los campos y queremos tener un archivo final que contenga el primer y segundo campo junto con los tres últimos. Una línea de este archivo es tal que así:</p>
<blockquote style="overflow:scroll"><p>
la2:770000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_2_3:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:201:203:531
</p></blockquote>
<p>Es una línea para sintonizar un canal de televisión y en el fichero hay tantas como canales. Si por lo que sea nos interesan solo los dos primeros campos (nombre de canal y frecuencia) y los tres últimos (PIDs de los programas) estaría un buen rato seleccionado, copiando y pegando con un editor de textos y estaría sujeto a error.</p>
<p>Ahora hacemos magia:</p>
<blockquote><p>
cut -d &#8216;:&#8217; -f 1,2 channels &gt; channels_1
</p></blockquote>
<p>Esto ha seleccionado primer y segundo campo indicando que el separador de campo es : y lo ha escrito en channels_1</p>
<blockquote><p>
cut -d &#8216;:&#8217; -f 1,11-13 channels &gt; channels_2
</p></blockquote>
<p>Esto ha hecho lo mismo pero seleccionando el primer campo (es importante, este campo es la clave para luego unir) junto con los campos del 11 al 13.</p>
<blockquote><p>
join -t &#8216;:&#8217; channels_1 channels_2 &gt; channels_min
</p></blockquote>
<p>Esto ha unido, utilizando el : como separador de campo, los dos archivos y ha escrito el resultado en channels_min. La línea en concreto a las que nos referíamos al principio queda:</p>
<blockquote><p>
la2:770000000:201:203:531
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2013/02/elegancia-en-la-linea-de-comandos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>¿Qué tiene el Software Libre que aprender de Apple y Microsoft?</title>
		<link>http://www.danieldianes.nom.es/2012/12/%c2%bfque-tiene-el-software-libre-que-aprender-de-apple-y-microsoft/</link>
		<comments>http://www.danieldianes.nom.es/2012/12/%c2%bfque-tiene-el-software-libre-que-aprender-de-apple-y-microsoft/#comments</comments>
		<pubDate>Tue, 11 Dec 2012 10:51:07 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[Divagaciones]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1411</guid>
		<description><![CDATA[Puede que marketing. Tiene que salir al mundo y aprender a venderse. Apple y Microsoft, en una concienzuda campaña de lavado de cerebros a lo largo de los años, ha demostrado que: Es posible tener un producto malo y conseguir que te paguen por ello. No digo que todo lo que hace Microsoft sea malo [...]]]></description>
				<content:encoded><![CDATA[<p>Puede que <em>marketing</em>. Tiene que salir al mundo y aprender a venderse. Apple y Microsoft, en una concienzuda campaña de lavado de cerebros a lo largo de los años, ha demostrado que:</p>
<ul>
<li>Es posible tener un producto malo y conseguir que te paguen por ello. No digo que todo lo que hace Microsoft sea malo (Microsoft es mucho más que Windows y Office) pero es capaz de vender basura en una caja bonita. Lo mismo va por Apple, que es capaz de vender un reproductor de 2Gb sin pantalla y con sonido normalito tirando a malo, a precio de oro.</li>
<li>Han conseguido hacer creer que obtienes algo a cambio de comprar una licencia. Que hable el primero que haya obtenido ayuda de Microsoft ante un problema (p. ej. un virus que le destroze su trabajo de un año) gracias a tener la licencia comprada.</li>
</ul>
<p>Entonces, si el Software Libre es en muchos casos superior a lo que se ofrece en el mundo del propietario y encima lo podemos &#8220;tunear&#8221; (Vease LibreOffice, Apache, VLC, etc.) ¿qué pasa?</p>
<p>Quizá necesitemos hacer anuncios en la TV de LibreOffice o quizá necesitemos empezar a meter GNU/Linux (en serio) en los ordenadores que se vendan o quizá necesitemos empezar a vender programas libres en un envoltorio bonito y atractivo.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2012/12/%c2%bfque-tiene-el-software-libre-que-aprender-de-apple-y-microsoft/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Reflexión -a salto de mata- culinaria sobre el software libre</title>
		<link>http://www.danieldianes.nom.es/2012/11/reflexion-culinaria-sobre-el-software-libre-a-salto-de-mata/</link>
		<comments>http://www.danieldianes.nom.es/2012/11/reflexion-culinaria-sobre-el-software-libre-a-salto-de-mata/#comments</comments>
		<pubDate>Wed, 14 Nov 2012 19:52:07 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[Divagaciones]]></category>
		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1395</guid>
		<description><![CDATA[Viendo en La 1 un documental sobre la cocina vasca, en concreto sobre el Grado Gastronómico que se imparte en el Basque Culinary Center. Una alumna rumana comenta algo como: La revolución moderna de la gastronomía ha venido de España y más en concreto del País Vasco A renglón seguido comenta: Antes lo que había [...]]]></description>
				<content:encoded><![CDATA[<p>Viendo en La 1 un documental sobre la cocina vasca, en concreto sobre el Grado Gastronómico que se imparte en el Basque Culinary Center. Una alumna rumana comenta algo como:</p>
<blockquote><p>La revolución moderna de la gastronomía ha venido de España y más en concreto del País Vasco</p></blockquote>
<p>A renglón seguido comenta:</p>
<blockquote><p>Antes lo que había era secretismo, cada chef tenía su plato y nadie podía saber como lo habías hecho. Pero con la cocina vasca comenzó el movimiento de compartir y de dar a conocer todos los detalles y todas las técnicas.</p></blockquote>
<p>Ahora pensemos en esos dos comentarios, pensemos donde está hoy la cocina vasca y española en el mundo <strong>y pensemos lo bien que se extrapola ésto al Software Libre</strong>: compartiendo conocimiento (código en este caso) se crea a medio plazo un escenario donde todos ganan.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2012/11/reflexion-culinaria-sobre-el-software-libre-a-salto-de-mata/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Recuperando libertad y diversión con Raspberry Pi</title>
		<link>http://www.danieldianes.nom.es/2012/11/recuperando-libertad-y-diversion-con-raspberry-pi/</link>
		<comments>http://www.danieldianes.nom.es/2012/11/recuperando-libertad-y-diversion-con-raspberry-pi/#comments</comments>
		<pubDate>Mon, 05 Nov 2012 10:16:56 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Software Libre]]></category>
		<category><![CDATA[TDT]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1341</guid>
		<description><![CDATA[¡Pues ya llegó el trasto! Después de una larga espera tengo en casita una placa Raspberry Pi para jugar un poco. ¿Una queeeeeeee? El pequeño ordenador está generando mucho movimiento en Internet y está ganando una comunidad fuerte en poco tiempo. Para los no iniciados, resumo: se trata de un ordenador completo con arquitectura ARM [...]]]></description>
				<content:encoded><![CDATA[<p>¡Pues ya llegó el trasto! Después de una larga espera tengo en casita una placa Raspberry Pi para jugar un poco. <em>¿Una queeeeeeee?</em></p>
<p><span id="more-1341"></span></p>
<p>El pequeño ordenador está generando mucho movimiento en Internet y está ganando una comunidad fuerte en poco tiempo. Para los no iniciados, resumo: se trata de un ordenador completo con arquitectura ARM integrado en una placa ligeramente más grande que una tarjeta de crédito y que es capaz de ejecutar una pequeña selección de distribuciones Linux compiladas para ARM <strong>y todo ello por solo $35</strong>. Han salido y saldrán varios modelos, el mio (Modelo B) tiene las siguientes características (detalladas hasta el extremo en <a href="#hardware">[1])</a>:</p>
<ul>
<li>Un SoC que comprende la CPU (ARM11 700Mhz con posibilidad de overclock a 900Mhz) y la GPU (capaz de vídeo 1080p).</li>
<li>256 Mb de RAM.</li>
<li>2 puertos USB 2.0</li>
<li>Salidas de vídeo: compuesta y HDMI, no utilizables simultáneamente.</li>
<li>Salida de audio jack.</li>
<li>Ethernet 10/100.</li>
<li>Lector de tarjetas SD. No es de propósito general, es aquí de donde se lee la imagen del SO y donde se obtiene el espacio para montar las particiones de datos, siempre debe estar presente la tarjeta con el sistema.</li>
<li>Alimentación con un microUSB con un consumo de tan solo 3,5W.</li>
</ul>
<div style="text-align:center;margin-top:15px"><img src="/i/rpi.png"></img></div>
<p>¿Y qué hago con esto? En principio se me ocurren varios proyectos:</p>
<ul>
<li>Un servidor personal mismamente. Puede ser un servidor web, un servidor de OwnCloud para montarte tu propia nubecilla (esto sí lo tengo en mente).</li>
<li>Un centro multimedia. En principio debería bastar para ver vídeos pero no lo tengo muy claro. Si se trata de vídeos H.264 no hay problemas pero si el decodificador del formato que sea es software no va a ir bien. Para MPEG2 por hardware necesitas adquirir una licencia adicional. También debería tener suficiente capacidad para grabar DVB y por supuesto reproducir música.</li>
<li>Algo de domótica. El Pi está dotado de una serie de conectores GPIO (<em>General Purpose Input/Output</em>) que sirven tanto como para entrada como para salida y que son completamente programables. Esto quiere decir que puedes conectar sensores y que puedes actuar sobre elementos externos. Por ejemplo, si tengo un toldo eléctrico en la ventana, podría hacer que el Pi lo subiera o lo bajara solo en función de la lectura de un sensor de luz que le vendría por otro pin.</li>
</ul>
<p>El RPi está creando comunidad porque se trata no solo de que se ejecute software libre, sino que es hardware libre [2], estando todas sus especificaciones eléctricas y de protocolo publicadas. Esto hace que la gente se interese y se mueva y pueda crear cada vez mejor software para él. De hecho el propósito original de los creadores no es comercial sino educativo. Cuando se dieron cuenta de que la enseñanza de computación en UK estaba decayendo a niveles alarmantes decidieron crear un dispositivo barato hackeable con el que se pudiera &#8220;jugar&#8221; a todos los niveles.</p>
<h3>Comenzando</h3>
<p>¡Hay que vestirlo con algo que está en bolas!</p>
<div style="text-align:center;margin-top:15px"><img src="/i/rpicastillo.png"></img></div>
<p>Lo primero fue descargarme una imagen de alguna distro y pasarla a una tarjeta SD. Yo empleé una de 8Gb clase 2, que creí que no iba a ser suficientemente rápida pero al final sí. Pero cuanto más rápida más rápido cargará el sistema. Lo que tengo pendiente es probar con una clase 10 por si también afecta a la ejecución, no solo a la carga. En <a href="#preload">[3]</a> están las instrucciones para cargar la tarjeta desde cualquier SO. Yo elegí la Raspbian &#8220;Wheezy&#8221; que es la que te recomiendan cuando eres primerizo. El entorno gráfico es LXDE. Con la tarjeta cargadita y el HDMI conectado a un monitor procedo a conectar el adaptador microUSB y a hacer la primera incursión.</p>
<p>El primer inicio te lleva a un asistente que te permite configurar un montón de cosas útiles como el idioma y el teclado, aparte de permitirte cambiar la contraseña del usuario <code>pi</code>, que es el que emplearemos. También te permite activar el acceso por SSH lo cual es recomendable para trabajar sin una pantalla conectada al Pi, así que lo activamos. El usuario/contraseña por defecto son <code>pi/raspberry</code> así que deberíamos cambiar esa contraseña, cosa que también se puede hacer mediante este primer asistente.</p>
<p>Una vez hechas las configuraciones preliminares estamos dentro. Introducimos usuario y contraseña y empezamos a jugar desde la consola. Si queremos entorno gráfico hay que escribir:</p>
<blockquote><p>
startx
</p></blockquote>
<p>Cuando tengamos internet (nada más fácil que conectarle el cable ethernet y dejar que se configure por DHCP) algo muy recomendable es actualizar la distribución:</p>
<blockquote><p>
sudo apt-get update<br />
sudo apt-get upgrade
</p></blockquote>
<h3>Primer proyecto: grabando la TDT</h3>
<p>Este proyecto nace de una necesidad. Quería tener la posibilidad de tener un ordenador siempre encendido que fuera capaz de grabar &#8220;la TDT&#8221; (DVB-T). Para ello debía ser un equipo de muy bajo consumo. Además necesito acceso remoto a través de ssh. La idea es conectarme en cualquier momento a este equipo para lanzar la grabación desde cualquier lugar.</p>
<p>Así que el pequeño pi es el candidato ideal. El bajo consumo que presenta lo hace perfecto para estar encendido continuamente, pero la escasa potencia hace que no se pueda malgastar ni un ciclo en ejecutar un entorno gráfico ni un programa de grabación de TDT con una interfaz de usuario gráfica, como el gran Me-TV <a href="#metv">[4]</a> (el único que realmente lo hace todo). Este programa es el que tengo para el HTPC, un equipo completito con un doble núcleo AMD y 2Gb de RAM, pero este equipo no lo quiero tener encendido todo el día.</p>
<p>Eso nos deja los siguientes requisitos para el proyecto:</p>
<ul>
<li>Un sintonizador USB que funcione con Linux.</li>
<li>Encontrar la manera de grabar exclusivamente usando la consola.</li>
<li>Un espacio de almacenamiento suficiente y accesible desde otros equipos.</li>
<li>Acceso remoto por ssh desde cualquier red.</li>
</ul>
<p>Afortunadamente hace un tiempo compré en FocalPrice un cacharro para sintonizar DVB-T por USB que se parecía mucho a éste:</p>
<div style="text-align:center;margin-top:15px">
<img src="/i/dvbtstick.jpg"></img>
</div>
<p>Que está a la venta <a href="http://www.focalprice.com/CN069S/DVBT_Digital_TV_Stick_Tuner_Receiver_Silver.html#.UJeFPmMZmc8">aquí</a>. Creo que el empaquetado difiere un poco pero el sintonizador, el mando y la antena son idénticas. No puedo garantizar que funcione, hay que jugársela, porque algunas veces el aspecto exterior es idéntico pero el chipset interno ha cambiado, pero si tiene las siguientes características&#8230;</p>
<ul>
<li>Chipset Afatech AF9015.</li>
<li>Sintonizador Philips TDA18218.</li>
</ul>
<p>&#8230;entonces funcionará directamente en un kernel moderno y solo necesitará un archivo de firmware (advertencia, ya el controlador no sería 100% libre porque el firmware es un binario). Para instalarlo nos bajamos el archivo del firmware y lo copiamos al directorio donde Linux lo espera encontrar:</p>
<blockquote><p>
wget http://www.otit.fi/~crope/v4l-dvb/af9015/af9015_firmware_cutter/firmware_files/4.95.0/dvb-usb-af9015.fw<br />
sudo cp dvb-usb-af9015.fw /lib/firmware/
</p></blockquote>
<p>Hecho esto sacamos el sintonizador y lo volvemos a introducir y si todo ha ido bien debería haberse creado el dispositivo <code>/dev/dvb/adapter0</code>. Lo comprobamos con:</p>
<blockquote><p>
ls /dev/dvb
</p></blockquote>
<p>Independientemente de qué sintonizador físico tengamos (en una entrada mia anterior explicaba como hacía funcionar un dispositivo de Zaapa con un controlador libre <a href="#dvb">[5]</a>) lo que tenemos que conseguir es tener un dispositivo lógico creado y que funcione porque cualquier sintonizador ofrecería la misma interfaz. El mejor punto de partida para saber qué funciona y qué no funciona es <a href="#linuxtv">[6]</a>.</p>
<p>Ahora tenemos que instalar un conjunto de programas para sintonizar DVB-T:</p>
<blockquote><p>
sudo apt-get install dvb-apps
</p></blockquote>
<p>Una vez instalados estos programas hay que crear una lista de canales haciendo un scan de todo el espectro, para ello:</p>
<blockquote><p>
w_scan -c ES -X > channels.conf
</p></blockquote>
<p>Este comando tiene la ventaja de que no necesita un archivo inicial según cada ciudad (como el comando <code>scan</code>) y esos parámetros sirven para sintonizar en España (<code>-c ES</code>) y para generar el archivo de salida en un formato determinado (<code>-X</code>) que entienden tanto Me-TV como mplayer. Otros programas quizá necesiten otros formatos, pero éste es muy versátil.</p>
<p>Llegados a éste punto podríamos probar si sintonizamos haciendo uso del programa <code>gnutv</code> que venía en el paquete <code>dvb-apps</code>. Así que en un terminal hacemos:</p>
<blockquote><p>
gnutv -out dvr -channels &lt;camino a channels.conf&gt; &lt;canal&gt;
</p></blockquote>
<p>El parámetro <code>-out dvr</code> le dice a la tarjeta que envie el resultado por <code>/dev/dvb/adapter0/dvr0</code>. Si curioseais por <code>/dev/dvb/adapter0</code> vereis que hay varios tipos de dispositivos, incluyendo uno de red (¿¿??). En concreto el dvr sirve para que lean de él los reproductores de vídeo como mplayer.</p>
<p>El canal debe venir entre comillas porque tiene que ser exactamente lo que venga en el primer campo (los campos están separados por &#8220;:&#8221;) de cada línea del channels.conf. Un ejemplo concreto para mi archivo de canales:</p>
<blockquote><p>
gnutv -out dvr -channels ./channels.conf &#8220;laSexta3&#8243;
</p></blockquote>
<p>Si ha ido bien deberíamos ver unos indicadores de la sintonización. Este programa bloquea el terminal así que lo más recomendable es abrir otro, iniciar el entorno gráfico (<code>startx</code>), abrir una consola y teclear (si no tenemos mplayer: <code>sudo apt-get mplayer</code>):</p>
<blockquote><p>
mplayer /dev/dvb/adapter0/dvr0
</p></blockquote>
<p>Y ya debería verse el canal que se ha sintonizado. La gran ventaja de gnutv es que copia todos los stream tal cual vienen: todos los audios y todos los subtítulos. Para parar la reproducción pulsar la tecla <code>q</code>. Luego ir al terminal original y pulsar Ctrl+C.</p>
<p>Y ahora viene lo bueno. Una de las cosas que en primer lugar me fascinaron de Unix es el concepto de &#8220;todo es un archivo&#8221;. Hasta el punto de que escribiendo algo en un determinado directorio:</p>
<blockquote><p>cat &#8220;Imprime esto&#8221; > /dev/lpr</p></blockquote>
<p>Sencillamente se imprimía.</p>
<p>Pues éste sencillo principio se manifiesta ahora. El concepto de &#8220;grabar&#8221; se convierte simplemente en copiar lo que está saliendo por <code>dvr0</code> a algún otro sitio. Y éste es un proceso para el que no se necesita entorno gráfico y que no necesita un ordenador nada potente.</p>
<blockquote><p>
cat /dev/dvb/adapter0/dvr0 > grabacion.ts
</p></blockquote>
<p>Y ya está &#8220;grabando&#8221;. El archivo se abre perfectamente con mplayer o con vlc y tiene disponibles todas las pistas de audio y todos los subtítulos. Como no hace ninguna transcodificación el archivo resultante es en MPEG-2 y audio MPEG-1. La calidad es como un DVD. Y necesitamos bastante espacio, porque una película puede ocupar perfectamente 4 o 5Gb, pero no hay ninguna pérdida de calidad.</p>
<p>Para el almacenamiento contamos con dos opciones. Podemos usar la misma SD donde está el sistema, pero en ese caso me iría a una tarjeta rápida (Clase 10) y no me bajaría de 16Gb. La otra opción es montar un pendrive externo. Pero si lo enchufais vereis que no funciona porque sencillamente el pequeño pi no puede mandarle corriente. La solución es enchufar un concentrador USB por el puerto libre que tenga su propio adaptador de corriente y ahí conectar el pendrive.</p>
<p>En mi caso he montado el almacenamiento en un directorio que luego comparto con Samba, así luego puedo recoger cómodamente el archivo y copiarlo a otro ordenador para verlo. O incluso si la red local es rápida verlo directamente sin copiarlo.</p>
<p>Los pasos siguientes son:</p>
<ol>
<li>Crear unos scripts (ya tengo unos esbozos con Ruby) capaces de recibir un canal, una duración y un nombre de archivo resultante y que se pongan a grabar.</li>
<li>Automontar el pendrive (en caso de utilizarlo). Tendré que mirar cosas de udev y mount.</li>
<li>Ser capaz de programar (supongo que un cron) que una grabación empiece y termine a unas determinadas horas haciendo uso de los scripts anteriores.</li>
<li>Tener acceso remoto. He redirigido el puerto correspondiente en el router, pero he probado y no he tenido acceso. Quizá había cambiado la IP&#8230;quizá ONO me está diciendo que no quiere que acceda&#8230; seguiré probando.</li>
</ol>
<p><em>Estos han sido los primeros pasos con el Raspberry Pi, seguiremos informando desde BricoPi&#8230;</em></p>
<p><p>Referencias:</p>
<ol>
<li><a href="http://elinux.org/RPi_Hardware" id="hardware">Hardware del RPi</a></li>
<li>Con un pequeño pero, parece que el código en la GPU es un binario.</li>
<li><a href="http://elinux.org/RPi_Easy_SD_Card_Setup" id="preload">Cargando la SD con una distro</a></li>
<li><a id="metv" href="https://launchpad.net/me-tv">Me-TV para sintonización de DVB-T</a></li>
<li><a id="dvb" href="http://www.danieldianes.nom.es/2010/11/htpc-linux-grabar-tdt-dvb-con-subtitulos-con-subtitulos-sordos/">Grabar TDT-USB con tarjeta Zaapa</a></li>
<li><a id="linuxtv" href="http://linuxtv.org/wiki/index.php/Main_Page">Linux TV</a></li>
<li><a href="http://www.raspberrypi.org/phpBB3/index.php?sid=52c2b079fee075fdd4dea4996632cbf0">La Comunidad</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2012/11/recuperando-libertad-y-diversion-con-raspberry-pi/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Haciendo funcionar las Dirección Electrónica Habilitada del 060 en GNU/Linux</title>
		<link>http://www.danieldianes.nom.es/2012/09/haciendo-funcionar-las-direccion-electronica-habilitada-del-060-en-gnulinux/</link>
		<comments>http://www.danieldianes.nom.es/2012/09/haciendo-funcionar-las-direccion-electronica-habilitada-del-060-en-gnulinux/#comments</comments>
		<pubDate>Sun, 23 Sep 2012 17:30:39 +0000</pubDate>
		<dc:creator>Daniel Dianes</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://www.danieldianes.nom.es/?p=1296</guid>
		<description><![CDATA[Actualización abril 2013: En esta otra entrada hay una máquina virtual linux para descarga con todo esto del 060 y varias cosas más solucionadas. Ir por libre en la implementación de la Administración Electrónica es un error. Por no usar la plataforma @firma [1] e implementar su propio sistema de firma electrónica la DEH [2] [...]]]></description>
				<content:encoded><![CDATA[<blockquote><p>Actualización abril 2013: En <a href="/2013/04/distribucion-linux-para-administracion-electronica-en-espana/">esta otra entrada</a> hay una máquina virtual linux para descarga con todo esto del 060 y varias cosas más solucionadas.</p></blockquote>
<p>Ir por libre en la implementación de la Administración Electrónica es un error. Por no usar la plataforma @firma [1] e implementar su propio sistema de firma electrónica la DEH [2] es inutilizable.</p>
<p><span id="more-1296"></span></p>
<p><strong>Hay <a href="#ultimopaso">actualización</a> [29 de octubre de 2012]</strong></p>
<p>Que algún sistema de Administración Electrónica falle en GNU/Linux me fastidia, pero me sorprende que incluso no se pueda utilizar en Windows, debido a la falta de cuidado de los desarrolladores. Según mi averiguaciones (¡3 días!) he podido llegar a la conclusión de que los applets que emplean están intentando tirar del almacén de certificados de Java, en lugar de tirar del almacén de Firefox que me parece más lógico -solo tienes que poner el certificado en un sitio- y perfectamente posible con @firma. Intenté firmar en las siguientes plataformas con los siguientes resultados:</p>
<ul>
<li>En Windows 7 con Firefox y Java de Oracle: el applet tardaba unos 4 minutos en cargar y finalmente terminaba fallando. Ningún mensaje útil de error o ayuda.</li>
<li>En Windows 7 con Internet Explorer y Java de Oracle: idéntico comportamiento.</li>
<li>En GNU/Linux con Firefox y OpenJDK + IcedTea plugin: curiosamente donde &#8220;mejor&#8221; funcionó porque pude acceder rápidamente, solo que no podía firmar. De nuevo ningún mensaje útil de error o depuración.</li>
</ul>
<p>El problema me surgió cuando tenía que firmar el cambio de datos de mi domicilio, pero igualmente surge cuando quieres suscribirte a un nuevo procedimiento. La idea era que funcionara con OpenJDK pero finalmente tuvo que ser con Java de Oracle en un sistema virtualizado. No es la solución ideal, pero es la única que encontré de poder instalar correctamente mi certificado de usuario en el almacén de certificados de Java, que terminó siendo el mayor problema.</p>
<p>Una de las <em>grandes ventajes de GNU/Linux es que los programas &#8220;gráficos&#8221; se pueden invocar desde la línea de comandos. Esto fue clave porque así tenía disponible toda la información de depuración del applet de firma y podía ir corrigiendo los problemas</em>.</p>
<h3>Depurando</h3>
<p>Para ver porqué estaba fallando invoqué mi navegador desde consola:</p>
<blockquote><p>abrowser</p></blockquote>
<p>Utilizo aBrowser porque es la versión de Firefox que viene con Trisquel, pero todo funciona igual con un Firefox estándar. El primer intento de firma:</p>
<div style="text-align:center;margin: 15px 0 10px 0">
<img src="/i/firma_web.png" alt="Formulario de firma de petición" />
</div>
<p>hizo que aparecieran los siguientes mensajes en el terminal -he eliminado muchas líneas sin relación con el problema-:</p>
<blockquote><p>
180376 [Thread-3] INFO APE &#8211; Buscando certificado&#8230;<br />
180377 [Thread-3] INFO KeyStoreUtils &#8211; loadPKCS11KeyStore(LINUX_32)<br />
190277 [Thread-3] INFO KeyStoreUtils &#8211; PC/SC is not supported.<br />
190277 [Thread-3] INFO KeyStoreUtils &#8211; Provider [SunPKCS11-dnie] not loaded.<br />
190598 [Thread-3] INFO KeyStoreUtils &#8211; <strong>Error loading PKCS#11 [/cfg/dnie/linux.cfg]</strong><br />
190599 [Thread-3] INFO KeyStoreUtils &#8211;      Due to [Initialization failed]<br />
190599 [Thread-3] INFO KeyStoreUtils &#8211;   <strong>Caused by [opensc-pkcs11.so: no se puede abrir el archivo del objeto compartido: No existe el archivo o el directorioopensc-pkcs11.so]</strong><br />
190599 [Thread-3] INFO KeyStoreUtils &#8211; loadOSKeyStore(LINUX_32)<br />
190599 [Thread-3] INFO KeyStoreUtils &#8211; loadJVMKeyStore(LINUX_32)<br />
java.lang.reflect.InvocationTargetException<br />
	at sun.reflect.NativeMethodAccessor [...]
</p></blockquote>
<p>Los mensajes que he destacado me estaban indicando que este applet intenta cargar las librerías PCKS#11 (librerías criptográficas) del sistema GNU/Linux en el que estamos. Es una dependencia que tenemos que resolver y me dije &#8220;vamos a ver si lo resolvemos con opensc&#8221;:</p>
<blockquote><p>
sudo apt-get install opensc
</p></blockquote>
<p>opensc (open Smart Card) es la librería que normalmente instalas cuando necesitas acceder a tarjetas criptográficas como el DNI electrónico. No es lo que queremos hacer ahora pero como el applet da ese fallo intenté solucionarlo así ¡y hubo suerte!. Vamos a ver qué pasa ahora -segundo intento de firma-:</p>
<blockquote><p>
180342 [Thread-4] INFO APE &#8211; Buscando certificado&#8230;<br />
180343 [Thread-4] INFO KeyStoreUtils &#8211; loadPKCS11KeyStore(LINUX_32)<br />
190232 [Thread-4] INFO KeyStoreUtils &#8211; PC/SC is not supported.<br />
190232 [Thread-4] INFO KeyStoreUtils &#8211; Provider [SunPKCS11-dnie] not loaded.<br />
205397 [Thread-4] INFO KeyStoreUtils &#8211; <strong>Unknown error.</strong><br />
205397 [Thread-4] INFO KeyStoreUtils &#8211;      <strong>Due to [access denied (java.security.SecurityPermission insertProvider.SunPKCS11-DNIe)]</strong><br />
205415 [Thread-4] INFO KeyStoreUtils &#8211; loadOSKeyStore(LINUX_32)<br />
205415 [Thread-4] INFO KeyStoreUtils &#8211; loadJVMKeyStore(LINUX_32)<br />
java.lang.reflect.InvocationTargetException<br />
	at sun.reflect.NativeMethodAccessor [...]
</p></blockquote>
<p>Sigue fallando lo relacionado con el acceso a tarjetas criptográficas. La librería opensc hace de base, pero cuando estamos con el DNIe -que repito no es el caso- también instalamos pcscd, una librería que emula la interfaz Windows PC/SC (Personal Computer/Smart Card) que define la interfaz entre el ordenador y el lector de tarjetas. La librería pcscd es una implementación libre de este protocolo de comunicación:</p>
<blockquote><p>
sudo apt-get install pcscd
</p></blockquote>
<p>Resumiendo, opensc da acceso físico al lector y pcscd implementa los comandos de comunicación entre el ordenador y el lector. Vamos a ver qué pasa ahora:</p>
<blockquote><p>
180312 [Thread-3] INFO APE &#8211; Buscando certificado&#8230;<br />
180312 [Thread-3] INFO KeyStoreUtils &#8211; loadPKCS11KeyStore(LINUX_32)<br />
180493 [Thread-3] INFO KeyStoreUtils &#8211; loadOSKeyStore(LINUX_32)<br />
180493 [Thread-3] INFO KeyStoreUtils &#8211; loadJVMKeyStore(LINUX_32)<br />
java.lang.reflect.InvocationTargetException<br />
	at sun.reflect.NativeMethodAccessor [...]
</p></blockquote>
<p>Vamos bien porque ya no se queja de las librerías de acceso a lectores. De todas formas no se puede firmar. Pero ahora al menos es cuando da mensajes de error en el navegador explicando que no tiene acceso al certificado. Y uno piensa con toda lógica  &#8220;si tengo instalado y funcionando el certificado en el navegador ¿porqué no accede a él?&#8221; Pues básicamente porque no le da la gana y por no usar @firma, un proyecto maduro y que funciona.</p>
<p>Pero entonces ¿donde va en busca del certificado? Pues resulta que busca en el almacén de certificados de Java. En sistemas Windows es fácil cargar el certificado mediante el Panel de Control de Java. En sistemas GNU/Linux con Java de Oracle también se puede hacer, pero después de mucho trastear no lo conseguí con la implementación OpenJDK. Así que empecé de cero con un Ubuntu 11.04 virtualizado en VirtualBox.</p>
<p>Una vez arrancado el sistema Ubuntu limpio lo primero que hice fue borrar todo rastro de Java. En Synaptic hay que buscar por &#8220;jre&#8221;, por &#8220;jdk&#8221; y por &#8220;icedtea&#8221; y desinstalarlo todo. Por ejemplo en la versión 11.04 con Java 6 hay que desinstalar:</p>
<ul>
<li>openjdk-6-jre</li>
<li>openjdk-6-jre-headless</li>
<li>openjdk-6-jre-lib</li>
<li>icedtea6-plugin</li>
<li>icedtea6-netx</li>
<li>icedtea-6-plugin</li>
<li>icedtea-6-jre-cacao</li>
</ul>
<p>Un buen síntoma de que Java ya no está instalado es que la orden</p>
<blockquote><p>java</p></blockquote>
<p>da error y que el complemento de Java no aparece en Firefox (teclear about:plugins en la URL).</p>
<p>Ahora hay que <a href="http://www.java.com/es/download/linux_manual.jsp?locale=es">descargar Java para Linux</a> para nuestra arquitectura. En lugar de descargar el paquete RPM instalable vamos a descargar el binario, entonces elegimos &#8220;Linux&#8221; o &#8220;Linux x64&#8243;. En mi caso elegí &#8220;Linux&#8221;. Cuando se descargó lo descomprimí en mi directorio inicial con:</p>
<blockquote><p>tar xzf jre-7u7-linux-i586.tar.gz</p></blockquote>
<p>Esto te crea un directorio llamado jre1.7.0_07. Así que tenemos Java disponible en <code>/home/usuario/jre1.7.0_07</code> listo para ser usado. Dentro de ese directorio podemos ir al directorio bin y tratar de obtener la versión de java para ver que todo vaya bien. Si no dice nada de que no pudo crear la máquina virtual es que Java de Oracle funciona y no queda ni rastro de OpenJDK.</p>
<blockquote><p>
cd /home/usuario/jre1.7.0_07 <br />
cd bin <br />
./java -version 
</p></blockquote>
<p>Los siguientes pasos son decirle al sistema donde está Java e instalar el plugin para el navegador de forma manual. Lo primero se hace estableciendo la variable JAVA_HOME:</p>
<blockquote><p>
declare -x JAVA_HOME=&#8221;/home/usuario/jre1.7.0_07&#8243;
</p></blockquote>
<p>Para que el cambio sea permanente añadimos esa línea al final del archivo /home/usuario.bashrc. Como ya lo hemos hecho previamente en el terminal no es necesario cerrar y abrir la sesión. Todo habrá ido bien si ejecutamos el comando <code>java</code> desde cualquier directorio y funciona.</p>
<p>Ahora hay que instalar las librerías criptográficas (opensc y pcscd) como hice anteriormente cuando estaba con OpenJDK. También se emplearán ahora.</p>
<p>Firefox busca sus plugins en el directorio <code>/usr/lib/firefox/plugins</code>. No es la primera vez que hago esto y lo que había hecho siempre era un enlace simbólico en este mismo directorio tal que así:</p>
<blockquote><p>
cd /usr/lib/firefox/plugins <br />
ln -s /home/usuario/jre1.7.0_07/plugin/i386/ns/libjavaplugin_oji.so 
</p></blockquote>
<p>Y siempre funcionaba. Reiniciaba firefox y Java estaba funcionando. Pero esta vez no. Algo habrán cambiado en Java 7 y por un casual me encontré con que había que hacer este otro enlace simbólico en el mismo directorio:</p>
<blockquote><p>
ln -s /home/usuario/jre1.7.0_07/lib/i386/libnpjp2.so
</p></blockquote>
<p>Y por fin funcionó. Reinicié firefox y al ir a <code>about:plugins</code> tenía:</p>
<div style="text-align:center;margin: 15px 0 10px 0">
<img src="/i/plugins_web.png" alt="visor de firefox de plugins instalados" />
</div>
<p>Ahora que Java de Oracle está funcionando en firefox tenemos que instalar el certificado en el almacén de certificados de Java. ¿y como hago esto? Leyendo por aquí y por allá vi que Java traía un ejecutable muy interesante llamado <code>ControlPanel</code>.</p>
<blockquote><p>
cd $JAVA_HOME/bin<br />
./ControlPanel
</p></blockquote>
<p>Una vez abierto hay que ir a la pestaña Seguridad y luego pulsar el botón Certificados. Aquí, habrá que añadir el certificado 3 veces. Una vez seleccionando primero el tipo &#8220;Certificados de Confianza&#8221;, otra seleccionando primero &#8220;CA de firmante&#8221; y una última como &#8220;Autenticación de cliente&#8221;. Se añadirá el mismo certificado las tres veces (en mi caso un archivo .p12). Si te pide una contraseña para el almacén de certificados <em><strong>escribir una y no olvidarla porque luego la usaremos para firmar</strong></em></p>
<p>Y finalmente reiniciamos firefox y vamos a la página de la DEH [2]. Accedemos con el certificado (aquí se usa el que está en el navegador) y tratamos de modificar el perfil o suscribirnos a un procedimiento. Si todo ha ido bien <strong>y no se me ha olvidado ningún detalle en la explicación que también puede ser <img src='http://www.danieldianes.nom.es/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </strong> conseguiremos firmar. Hay que recordar que pedirá la contraseña del almacén de certififcados de Java que le comunicamos anteriormente.</p>
<div style="text-align:center;margin: 15px 0 10px 0">
<img src="/i/firmando_web.png" alt="Petición de la contraseña y firma" />
</div>
<h3 id="ultimopaso">Actualización</h3>
<p>La primera vez que intenté firmar en la DEH me apareció un diálogo con un mensaje cortado: &#8220;Es necesario habilitar&#8221;. Solo un tiempo después he sabido que estaba cortado, porque intenté el proceso de firma en un Windows XP y ¡pude ver el mensaje completo! (bien por ellos que no prueban en diferentes navegadores/sistemas). Resulta que hacía referencia a lo siguiente:</p>
<ol>
<li>Ir a about:config en firefox y prometerle que tendrás cuidado.</li>
<li>Escribir &#8220;signed&#8221; en Filtro</li>
<li>Hacer doble click en la clave <strong>signed.applets.codebase_principal_support</strong>. Esto hace que su valor cambie a true y parece que es lo que finalmente permite otorgar confianza a las applets para que puedan firmar (esto es lo que yo interpreto).</li>
</ol>
<p>Referencias:</p>
<ol>
<li><a href="https://es.wikipedia.org/wiki/@firma">Plataforma de Validación Electrónica @firma</a> (wikipedia)</li>
<li><a href="https://notificaciones.060.es/">Dirección Electrónica Habilitada</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.danieldianes.nom.es/2012/09/haciendo-funcionar-las-direccion-electronica-habilitada-del-060-en-gnulinux/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>
