Ahora que va a estar de moda el nuevo DNI electrónico, probablemente queramos utilizarlo en Linux, aparte del omnipresente Windows.

Si este es nuestro deseo, podemos cumplirlo fácilmente. A continuación describo cómo lo he conseguido yo en una distribución muy popular: Debian Etch (4.0, actualmente en pruebas y que dentro de poco será la versión estable)...

Los pasos a seguir son los siguientes:

A) Configurar el dispositivo lector de tarjetas:

Yo uso el lector LTC-31 USB (de la compañía C3PO), versión 2.

El soporte para este dispositivo en el núcleo ("kernel") de linux es bastante bueno. La "versión 2" de este lector está soportada por los núcleos 2.4.x y 2.6.x. (La "versión 1" sólo estaba soportada para la versión 2.4.x, y para la 2.6.x había que parchear y recompilar el núcleo.)

Para usar este lector en Debian Etch simplemente hay que instalar los siguientes paquetes (por ejemplo con apt-get, o con synaptic):

libccid
pcscd
pcsc-tools

B) A continuación, instalamos los siguientes paquetes, necesarios para acceder a la tarjeta del DNIe:

libopensc2
libopensc2-dev
mozilla-opensc
opensc

C) Seguidamente, descargamos los "drivers" para linux específicos del DNIe.

En concreto, es este fichero (cuando usted lea esto puede que el nombre del fichero haya cambiado, en ese caso, busque el equivalente en esa misma web).

Este fichero .zip contiene los paquetes .deb necesarios para usar el DNIe.

Podría usted, perfectamente, instalar esos paquetes (quitando previamente las versiones instaladas en el paso B), pero para evitar "ensuciar" nuestro sistemas con versiones diferentes de las oficiales, nos limitaremos a instalar el paquete "opensc-dnie_1.2.1-3_i386.deb", que es el específicamente hecho para el DNIe.

Para ello, es necesaria hacer una pequeña modificación en este paquete.

D) "Trucar" opensc-dnie:

La versión disponible en la web del DNIe es para Debian Sarge (3.1). El problema es que para Etch (la versión siguiente, 4.0) las versiones de los paquetes anteriores (paso B) han cambiado. Esto provocará problemas al intentar instalar el paquete "opensc-dnie".

Para solucionarlo, vamos a modificar el archivo de control (que contiene la información de dependencias de paquetes) del paquete "opensc-dnie".

Una forma de hacerlo es así:

D.1) Iniciamos sesión gráfica (recomiendo gnome) como "root"

D.2) Copiamos el archivo "opensc-dnie_1.2.1-3_i386.deb" que venía en el .zip que bajamos de la web, al directorio /usr/src

D.3) Abrimos el navegador de archivos (nautilus), nos vamos a ese directorio, hacemos click en ese fichero con el botón derecho del ratón, y damos en "extraer aquí".

D.4) Nos creará un directorio "opensc-dnie_1.2.1-3_i386.deb_FILES" con los contenidos del .deb.

Vamos a ese directorio y veremos estos ficheros:

control.tar.gz
data.tar.gz
debian-binary

D.5) Descomprimimos también "control.tar.gz": botón derecho y "extraer aquí".

D.6) Vamos al nuevo directorio creado y abrimos con el editor de texto (gedit) el fichero "control":

En la línea que empieza por "depends", sustituimos todas las apariciones de "svn" por "2". Así eliminamos las versiones que nos dan guerra, y usamos las de Debian Etch.

Guardamos el fichero.

D.7) Abrimos una consola y nos vamos a ese directorio que contiene el fichero de texto que acabamos de modificar (será una cadena de "cd"s algo tediosa...).

Una vez allí, construimos un nuevo "control.tar.gz". Escribimos en la consola:

(Primero borramos copia de seguridad del fichero modificado)

# rm control~
# tar -czf control.tar.gz ./*

D.8) copiamos este nuevo "control.tar.gz" al directorio /usr/src, que también contiene el "opensc-dnie_1.2.1-3_i386.deb" original.

(Hacemos copia de seguridad de ese .deb original, por si acaso.)

D.9) Abrimos ese .deb (con el gestor de archivadores de gnome), pulsamos en el botón "Añadir", y seleccionamos el archivo "control.tar.gz" que acabamos de crear. Esto nos sustituirá el antiguo "control.tar.gz" por este nuevo.

D.10) Instalamos el paquete "opensc-dnie_1.2.1-3_i386.deb" modificado, desde la consola:

#dpkg -i opensc-dnie_1.2.1-3_i386.deb

E) Si lo hemos hecho todo bien, no habrá problemas y se instalará correctamente.

Cerramos la sesión gráfica de "root", iniciamos nueva sesión como usuario normal y podremos usar el DNIe con el navegador mozilla/iceweasel.

Para probar, podemos acceder a algún servicio de la Seguridad Social (http://www.seg-social.es), o de la Agencia Tributaria (http://www.aeat.es).

Espero, que esto pueda resultar de utilidad.

Un saludo.