LinuxSimple - 2010-03-19

LinuxSimple: una adaptación de una distribución de Linux orientada a facilitar el acceso a la sociedad de la información a personas mayores.

¿Por qué? El origen de este proyecto surge de la dificultad para los usuarios novatos a acceder a la sociedad de la información.
¿Para quién? Este desarrollo es para personas que no tiene familiaridad con un PC.
¿Cómo? Intentaremos dar una herramienta que facilite el acceso.

Debemos plantearnos los cambios que se están produciendo en la sociedad. Y en un caso concreto el aumento del porcentaje de personas con edad avanzada. Los mayores se encuentran en posesión de salud, capacidad mental, tiempo disponible,… y no deben dejarse al margen de la sociedad de la información.
El papel de las personas mayores ha cambiado y pueden contribuir positivamente a la comunidad. Con la posibilidad de hacer las cosas por sí mismos, sin depender de los demás.
El acceso a la sociedad de la información es una de las ventajas que podemos proporcionar a las personas mayores. Este acceso se realiza en última instancia a través de algún dispositivo electrónico, siendo el más común el ordenador.
Este tipo de dispositivos electrónicos tienen dos niveles: hardware  y software. El hardware dispone de manera básica de tres interfaces más comunes: pantalla, teclado y ratón. El software es el entorno operativo y las aplicaciones, y deben cumplir una serie de requisitos para proporcionar una mejor comunicación entre el hombre y ordenador. Los mensajes del ser concisos y coherentes.

Se debe tener en cuenta entonces cuál es el problema y qué posibles soluciones podemos aportar.
Principalmente podemos encontrar con tres problemas para un usuario principiante. El primero es la variación de los entornos gráficos. Los entornos gráficos varían según los distintos sistemas operativos. El segundo problema consiste en no modificar datos involuntariamente no sólo a nivel del usuario sino también a nivel de terceros. Y fundamentalmente el último problema es la necesidad de comunicarse. Cada vez existe un número mayor de personas con edad avanzada que requieren el uso de internet exclusivamente para comunicarse.
¿Qué soluciones podemos aportar nosotros? Pues en principio antes de desarrollar este proyecto se intenta hacer un estudio de las posibles alternativas que podemos encontrar.
La primera alternativa seria el uso de aplicaciones portables. La ventaja que tiene es que podemos tener almacenado en un dispositivo externo como un pendrive, un programa sin necesidad de instalarlo en el sistema operativo. Es decir sin tener que guardar sus variables en el registro de sistema operativo. No hay diferencia entre el uso normal y el uso portable de una aplicación. La principal desventaja es que puede derivar en una ejecución lenta, y fundamentalmente en la ejecución de programas que pueden alterar el uso normal de nuestro ordenador, como es el caso de los virus. El uso de aplicaciones portables se pensó puesto que la mayoría de los casos el ordenador posee un sistema operativo Windows.
Otra solución que se planteó fue la ejecución de máquinas virtuales. Las máquinas virtuales son un software que permite emular el comportamiento de un sistema informático completo. Es decir, podemos tener un ordenador virtual dentro del nuestro ordenador físico sin que haya interferencia entre ellos. La ventaja fundamental es ésta, la independencia de los sistemas operativos. Pero el inconveniente en este caso es una mayor ralentización del sistema.
Finalmente se optó por una solución mediante un sistema operativo independiente.

Mediante un sistema operativo independiente nos mantendremos totalmente ajenos al sistema operativo instalado en el equipo. Tenemos una independencia total al sistema operativo instalado en el equipo, por tanto cumpliríamos ya uno de los primeros requisitos que sería no alterar el contenido del sistema operativo instalado en el ordenador. Al contrario que nos puede suceder con un virus en una aplicación portable.
El problema principal que se encontró para esta solución fue la persistencia. La persistencia consiste en guardar nuestros datos en un dispositivo de almacenamiento para poder ser consultados después.
Las soluciones posibles para desarrollar este sistema operativo independiente fueron tres. La primera sólo implicaba el uso de un CD-ROM, pero el inconveniente que tenía era que los datos no eran persistentes, es un dispositivo de sólo lectura. La segunda solución fue el uso exclusivo de un pendrive en el que almacenamos nuestro sistema. El inconveniente es que podría existir una incompatibilidad con la BIOS para realizar un arranque directo desde el USB.
Finalmente se optó una solución combinada de las anteriores: utilizar un CD-ROM para arrancar el sistema operativo y utilizar un pendrive en donde almacenamos de manera trasparente los datos de nuestra sesión. Tenemos que tener en cuenta que un CD-ROM tiene un contenido limitado de almacenamiento, y en caso de superarlo podemos utilizar un DVD.

Nos encontramos entonces con varias opciones para realizar el sistema operativo. Un sistema operativo sencillo fácil de manejar y con un entorno amigable.
Primer lugar tenemos los sistemas operativos de Microsoft, en los cuales es imposible realizar modificaciones pues no tenemos el código fuente y además se trata de software comercial. Lo mismo pasa con el sistema operativo MAC.
Nos decidimos entonces por el  sistema operativo GNU Linux. Un sistema operativo con tres ventajas: licencia GPL, realizado con software libre, y la posibilidad de realizar la personalización deseada.

Una aclaración se debe hacer aquí, el nombre de libre, no implica que sea gratis. Libre sólo significa que tenemos una programación abierta. Richard Stallman fue uno de los fundadores del proyecto GNU, que buscaba la generación de software libre. Tenemos ventajas para el uso del software libre: la posibilidad de modificar sin barreras legales, el coste cero, y que suelen ser sistemas seguros. Además una ventaja fundamental es que poseemos un soporte del sistema continuo realizado por una comunidad.
Existen cuatro libertades fundamentales en el software libre:
0. la libertad de usar el programa, con cualquier propósito;
1. la libertad de estudiar cómo funciona el programa y adaptarlo a nuestras necesidades; el acceso al código fuente es una condición fundamental para esto
2. la libertad de distribuir copias
3. y la libertad de mejorar el programa y hacer publicar las mejoras de modo que la comunidad se beneficie.

Una distribución es un conjunto de software basada en un núcleo Linux incluye determinados paquetes de software para satisfacer a un grupo específico usuarios. Existe entonces una dualidad entre el núcleo de Linux, y el desarrollo de software libre por GNU.
El núcleo de Linux es el principal elemento del sistema operativo. Digamos que se comporta como interfaz entre las aplicaciones y los dispositivos físicos.
Por lo general las distribuciones están compuestas de un grupo de paquetes que pueden ser de software libre aunque a menudo aparecen aplicaciones o controladores propietarios.
Existen diversas distribuciones Linux: SUSE, Red Hat, Debian…

En nuestro caso hemos optado por una distribución sólo de software libre que es la Debian. Tiene muchas distribuciones derivadas: la Ubuntu, financiada por un informático sudafricano que cuenta con una comunidad muy extensa de usuarios, la Knoppix, la Guadalinex, generada por la Junta de Andalucía, la Linex, homóloga de la anterior en Extremadura. Y dos principalmente en lengua gallega: Trisquel y Galinux.
Una verdadera distribución es una que se pueda usar, instalar, actualizar, mantener posteriormente, y pensada para algún grupo de usuarios concretos y con algún fin determinado. Pero para que la distribución llegue a ese nivel de utilidad, necesitaremos un diseño previo y un trabajo posterior. Este caso los futuros usuarios son concretos, las personas mayores. La fase creación tiene tres pasos: un análisis y diseño de lo que se pretende hacer, una posterior personalización siguiendo el diseño anterior y una generación de la distribución y un mantenimiento de la misma.

Aquí podemos ver las distintas ramas que podemos encontrarnos en los sistemas operativos Libres.

¿Y por qué Ubuntu? Es estable y libre.
Ubuntu es una distribución de Linux cuatro puntos muy interesantes:
1. Aconsejable para usuarios novatos por su facilidad de uso, que suele ser el punto débil de Linux.
2. Tenemos en Internet abundante información, una extensa comunidad y usuarios que pueden aportar, foros, blogs, noticias,…
3. Facilidad a la hora de instalar nuevo software mediante su sistema de repositorios.
4. Compatibilidad con numeroso hardware, incluso con el de última generación wireless.

Una vez decidida la distribución base sobre la que generaremos nuestra distribución, debemos hacer un sumario de las herramientas necesarias para elaborarla.
La versión ubuntu 8.04 “Long Time Support”, que no es asegura un soporte varios años. Las versiones ubuntu se liberan cada dos años, y reciben soporte durante tres años para los sistemas de escritorio y cinco para orientada a servidores.
Una vez decidida esta distribución tenemos que analizar la instalación del sistema operativo Linux, que nos servirá para alojar nuestro sistema operativo generado.
Mediante el uso de máquinas virtuales, VMWare, optimizamos el proceso de generación de la distribución.
Además de esto requeriremos de un hardware potente, Internet; dispositivos ópticos y un pendrive en el que guardaremos los datos de la distribución.

Los comandos utilizados son restos:
Creación y eliminación: mkdir, rm, mv, rsync
Montaje: mount, umount
Propiedad: chmod, chwon
Cambio de raíz: chroot
Generación de ISO: mkisofs
Sistema LiveCD: squashfs. El sistema SquashFS es el sistema de ficheros comprimido para Linux. Comprime ficheros, inodos, y directorios. Con licencia GPL. Diseñado en general para sistemas de ficheros de sólo lectura y sistemas limitados en memoria (sistemas embebidos) donde se requiere poca carga del sistema. La versión estándar usa la comprensión gzip. SquashFS es utilizado por las versiones Live CD y distribuciones para sistemas embebidos como routers. A menudo se combina con sistema de ficheros, tales como UnionFS o aufs, para proporcionar un ambiente de lectura y escritura. Posee capacidad de compresión de alta velocidad y habilidad de alterar la distribución mientras se ejecuta desde un CD-ROM Live.

Una vez resumido todos los elementos. Enumeraré los pasos para realizar el proceso:
1. requisitos previos: son la instalación de determinados paquetes, la preparación de los directorios donde su alojar la distribución modificar y carga de los directorios dev, proc, sys, tmp.
2. después descomprimimos la ISO original en uno de los directorios creados anteriormente.
3. en primer lugar debo identificar donde se encuentra la imagen de sistema SquashFS, y se hace la descompresión del mismo. Se monta en el directorio de trabajo en donde se va a modificar.
4. Una realizado sus pasos cambiaremos el raíz del sistema con chroot. Con esto lo estamos haciendo es que determinara carpeta sea directamente nuestro nuevo sistema.
5. Ahora nos toca modificar y personalizar la distribución.
6. Finalmente se crea a otro SquashFS y terminaremos con la generación de la nueva ISO.

La característica principal, y se diferencia de las demás, exclusiva de Linuxsimple, es la posibilidad de almacenamiento transparente en el pendrive. En el momento que iniciamos nuestra distribución con pendrive insertado del ordenador la propia distribución detectará que tenemos el pendrive insertado y será donde guarde los datos. De esta manera conseguimos la persistencia de los datos. Se carga al inicio mediante los scripts de Linux.

Los entornos de escritorio valorados para Linuxsimple fueron varios. Gnome es el básico que utiliza Ubuntu, KDE con mayor consumo de recursos, XFCE muy rápido y consume poca memoria pero en inglés, y GNUstep. Elegimos continuar con el Gnome, con nuestras modificaciones.

La personalización de Linuxsimple requiere muchos pasos. Grub, gestor de arranque, USplash pantalla de carga, GDM, entorno de inicio de las X, temas e iconos, velocidad del ratón, que debe ser lenta, drivers comunes no incluidos en la Ubuntu, compilación del kernel para una mejor optimización, y modificación de /etc/skel, fundamental para la creación de nuevos usuarios.

En primer lugar tenemos el Firefox, en el que añadiremos un bloqueador de ventanas no deseadas, un gestor de marcadores Xmarks, y distintas mejoras en fuentes, tamaño iconos.
Además de ser el propio entorno hemos obtenido y agregado al Firefox de Linuxsimple los principales certificados de España, segura social, DNI,…
Con las Xmarks tendremos marcadores siempre donde nos encontremos sólo con acceder a Internet.

El Openoffice no la trae la ubuntu por defecto. Se agregado y se ha cambiado el idioma a español. Tiene estas características: es libre, no caduca, tenemos la libertad de poder utilizarlo en cualquier sistema operativo, y es compatible con otras suites ofimáticas.

Evince  es un visor de documentos para el entorno de escritorio Gnome. Se pueden ver los archivos en formato PDF y PostScript. La meta de Evince es reemplazar, con una simple aplicación, los múltiples visores de documentos que existen en Gnome, como GGV, GPdf, y xpdf. Tiene un mecanismo integrado de búsqueda. Páginas en miniatura: Vistas de páginas en miniatura permiten una referencia rápida para poder navegar en un documento. Las páginas en miniatura  se encuentran en la parte izquierda del visor.  Utiliza indexado  de páginas: un índice del documento que permite moverse rápido de una sección a otra.

Utilizamos un tema para Gnome, usado principalmente en los portátiles, es un tema que consume muy pocos recursos, con la posibilidad de integrarse con el Gnome, además es un entorno que maximiza a modo de pestañas las ventanas de manera que siempre tendrás en primer plano lo que estés utilizando.

Agregamos el Ndiswrapper, para añadir de adaptadores inalámbricos con el propio controlador de Windows.

Wine: permite ejecutar aplicaciones de Windows directamente en Linux.