Personalizando Scripts en función del SO GNU/Linux


Soy de esas personas que utilizan varias distribuciones GNU/Linux constantemente y por lo tanto a menudo los scripts de una no me valen para la otra. El ejemplo más tonto. Ubuntu/Lubuntu/Kubuntu/Elementary Os etc, crean un usuario con poderes de superusuario para realizar tareas administrativas. En cambio Debian, Fedora, etc proveen del usuario root para este tipo de tareas.



"Imagen aleatoria por que quedaba chachi"


Esto supone un problema, ya que un simple apt-get install a la hora de instalar cien paquetes por ejemplo en Ubuntu le precede un sudo que en Debian no se utiliza por defecto.

Como buen amante del arte y de Python hay librerías como Pillow con las que me gusta trastear. El problema reside en que Pillow require unas librerías que mientras en un lugar se instalan de una forma en otro se instalan de otra.

version=`cat /etc/issue | cut -d " " -f 1`

if (( $version == "Ubuntu" ))
 then
 sudo apt-get install libjpeg-dev libfreetype6-dev zlib1g-dev
 pip install Pillow

elif (( $version == "Debian" ))
 then
 su -c "apt-get install libjpeg-dev libfreetype6-dev zlib1g-dev"
 pip install Pillow
else
 echo "Este script no es compatible con tu SO"
 echo "Las dependencias que necesitas para instalar Pillow son: "
 echo "libjpeg-dev libfreetype6-dev zlib1g-dev"
fi

 Así que dando vueltas y trasteando un ratito pensé en obtener la información de donde estaba de /proc/version y en función de esto determinar la forma de instalación. Pero siendo precisamente para hacer la distinción entre estos dos sistemas era más sencillo utilizar el primer dato de /etc/issue que nombra la distribución -al menos en el caso de Debian y Ubuntu-.

De esta manera almacenamos en version el SO usado y en función de él le decimos unas instrucciones u otras :)


Como siempre Un fuerte abrazo!

Y Feliz Navidad ;) !


Hola! Soy un Google Bot

Como bien sabemos, cuando accedemos a una página enviamos una serie de información al servidor por medio del User-Agent entre la que podemos encontrar Navegador Web, versión, sistema operativo, procesador x86 o x64.

Esta información es muy útil ya que ayuda a determinar que aplicación está visitando la página web. Si es un usuario de Mac con Opera o si por ejemplo, es un bot de google. De esta forma puede saber si la versión de la página es compatible con ese navegador o amueblarla para que sea compatible con el mismo.

Lo interesante o "gracioso" es que esta información es modificable. Es decir, yo que uso firefox en GNU/Linux normalmente puedo hacerme pasar por un bot de Google o por un usuario de Edge en Windows 10 a pesar de estar en Debian, Fedora, etc.


Hay una extensión para firefox denominada user agent switcher que nos permite realizar este tipo de cosas.


Desde ella, podemos añadir nuevos User-agents como el de google bot.

La información del user agent del google bot la he obtenido accediendo a la página whatsmyuseragent.com Desde la caché de google, de forma que los datos que aparecieran fueran los que le aparecerían al propio bot de google que es el que almacenó la página en caché.

El user-agent de googleBot es el siguiente:

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)


Búsqueda de google desde el User-Agent de Firefox



Búsqueda de google desde el User-Agent de GoogleBot


¿Notáis alguna diferencia?


Como se puede observar hay ciertas páginas que se adaptan en función de la aplicación con la que se visiten. Por ejemplo, a la hora de escribir esta entrada si cargo la página con el User Agent de Google me avisa de varios errores y después al pasar a la pestaña de HTML no me da la opción, me tira a un error 404.

Una idea interesante, sería al usar TOR con Tails usar el User Agent de Edge en Windows 10 para que nuestro rastro en la mayoría de servidores quede ante un sistema Windows del que carecemos. 

De cualquier forma no es ninguna tontería la idea de usar un User-Agent distinto ya que al hacer estadísticas a menudo se descartan los datos provenientes de bots obteniendo así un resultado limpio de personas que utilizan la aplicación.


Un fuerte abrazo!

Comparativa Windows 10 Mac Os X Elementary Os y Debian

Llevo ya algún tiempo queriendo hacer algo de este estilo y antes de comenzar con este post me gustaría recalcar que todo lo dicho es basado en experiencias personales.

Hace un año quise hacer justo esta pequeña reflexión/comparación como consejo pero consideré que aún no había tenido la experiencia necesaria para poder reflejar todo lo que a un usuario podría -tal vez- interesarle a la hora de decidirse.


Windows 10


Pantallaso.png
«Pantallaso» por Henryleonardo92 - Trabajo propio. Disponible bajo la licencia CC BY-SA 4.0 vía Wikimedia Commons.


En ese afán de superación solo digno de microsoft y sus ideas innovadoras se incluye la capacidad -muy practica, honestamente a la hora de trabajar con muchas cosas- de varios escritorios. Innovación que ya existía en distros como Ubuntu 12.04 e imagino -pero no aseguro por no haberlo experimentado- en anteriores. No obstante es un buen punto a Windows que siempre ha sido caracterizado por ser un sistema operativo para juegos. En teoría en esta nueva versión de actualización gratuita durante el primer año de lanzamiento si tenemos Windows 7 u 8 originales han incluido nuevas mejoras de seguridad. Así como un rediseño de la interfaz mezclando el clásico menú de inicio con la interfaz metro de Windows 8. Algo así como lo que muchos intentaban realizar con el programa classic start.
El sistema operativo de los gamers trae también a su propia chica robótica, Cortana que vendría siendo algo así como Siri en Mac.



Mac Os X

Logo de OS X El Capitan
«OS X El Capitan logo» por Apple Inc. - http://www.apple.com/osx/elcapitan-preview/. Disponible bajo la licencia Dominio público vía Wikimedia Commons.



En una esfera de la sociedad donde gastarse 1200 euros en un ordenador para navegar por internet en la mayor parte de los casos tenemos a este lugarteniente del diseño por quién me inclino más a la hora de trabajar. -Los linuxeros tendemos a movernos mejor en un sistema proveniente de Unix-.

Entre sus datos más destacables está el hecho de tener el sistema operativo hecho a medida del hardware, hardware también propietario y exclusivo de mac en algunos casos. -Si se te rompe una pieza, se te romperán los bolsillos de tanto rascarlos-

Apple es destacado por su servicio de atención al cliente lo que en el mundo laboral valoramos mucho. Cuando tienes que sacar un producto no tienes tiempo para estarte con tonterías. No obstante y un dato curioso, es que según parece Fedora, la hermanita de RedHat, corre mejor en un mac que su propio sistema operativo.Fedora 23 vs Mac OS X El capitán

Lo único que puedo decir es que Mac para el desarrollo Web, es una completa gozada. Pero casi que me quedo antes con Elementary por Precio, Similitud y el hecho -nada despreciable- de sentirme como en casa al estar en un entorno GNU/Linux. Destacaría de Mac los tiempos de sus últimos discos SSD. Una completa maravilla cuando nos prima la velocidad y nuestra imagen de cara al exterior -mero postureo nada despreciable en el ámbito laboral cuando se trata de vender un producto- queda muy bonito tener una manzanita.

Además contamos en la mayoría de los casos con los mismos programas que podríamos tener en Windows.


Elementary Os Freya


Para todos aquellos amantes del diseño este sistema proveniente de Ubuntu nos trae el escritorio Pantheon. Un escritorio, que a opinión personal, enamora.

Muy similar el estilo maquero de hacer las cosas es una distro muy centrada en el diseño que dice consumir poco. No obstante y aunque obtiene los paquetes directos de Ubuntu 14.04 la estabilidad no es algo que le premie, al menos no con bajos recursos (1GB RAM)

A falta de suites como Adobe y programas como Autocad disponibles en Windows y Mac tenemos otros similares como Gimp o Krita para sustituir a Photoshop, Eclipse, Sublime Text, BlueFish como sustituto a Dreamweaver, KidKad -entre otros- como sustituto, gratuito además, de Autocad, etc. Esta distro es tal vez perfecta para un uso familiar o incluso laboral como autónomo pero por mi experiencia con ella aún hay cosas importantes por pulir en las que me centraría antes de intentar mejorar el aspecto visual más aún.

Geary, por ejemplo, programa que viene instalado por defecto a pesar de darte la opción de agregar una cuenta de gmail no está actualizado a las últimas políticas de google por lo que para acceder a tu cuenta debes de bajar la configuración de seguridad de la misma.

No obstante para usuarios comunes es una maravilla. Interfaz adorable -nótese mi encanto con el diseño-, no hay temas de licencias -ya sé ya sé que muchos me diréis pero si Windows es gratis y aunque os sorprenda: no es así. Lo que es gratis es piratearlo y ya sabéis eso de lo gratis sale caro-, tiene el market de ubuntu integrado por lo que cualquier usuario puede instalar y desinstalar paquetes al puro estilo app store de android.

Un dato a mencionar es que por defecto no hay ninguna suite ofimática instalada pero se puede instalar libreoffice desde el propio market de manera gratuita.

Debian, la alternativa estable

Cuando la estabilidad es un factor decisivo y el hecho de que exista la posibilidad de que algo se pueda colgar durante unos segundos es un problema realmente serio.

A lo largo de mi vida Linuxera he trabajado con muchísimas distros que he ido probando y degustando y aprendiendo y trasteando y bueno... todas esas cosas que todo curioso informático hace. Comencé a programar -  a trastear más bien, no creo que a aquello se le pudiera llamar programar - en un Windows XP hace 6 años con C y Python. Hace un poco menos de 4 mis disco duro se rompió -un duro golpe contra el suelo- y me llevó a instalar otro sistema operativo en uno nuevo. Ubuntu 12.04. En el 2013 probé Debian después de una sucesión incontable de distribuciones. Fedora, CentOs, OpenSuse, Puppy Linux, Damn Small Linux -nótese mi gusto minimalista-, etc. Desde entonces nunca y repito nunca se me ha colgado.

Fiel a la rama main -rama estable y más que probada y reprobada- nunca he tenido un solo fallo y los progamas digamos más actualizados en ocasiones puntuales los he cogido de otras ramas como testing.

También es cierto que me he cargado el entorno de escritorio unas 30 veces trasteando con la terminal mientras aprendía. Por lo que quizás Debian sea para un público con unos conocimientos técnicos básicos, al menos unas nociones sobre instalación y desinstalación de paquetes, repositorios, claves gpg, etc...

En Debian tengo entendido que podemos instalar el escritorio Pantheon de elementary y así tener lo mejor de ambos mundos. Por lo que resulta una alternativa bastante interesante, eso sí, tendremos que trastear un poco.


EDICIÓN
Tras probar Debian con el escritorio Pantheon tuvo una serie de fallos que se acentuaron con el tiempo. Los mismos que trae Elementary y necesitan ser pulidos. De hecho me llevaron hasta el punto tan extremo de tener que eliminar Pantheon y restaurar todo o reinstalar Debian.

Una alternativa -que imagino que en Debian será idéntica pero lo he probado en esta ocasión en un Lubuntu que ya traía OpenBox de fábrica. Es tunear un poquito OpenBox obteniendo así los siguientes resultados en el caso en el que nos guste el estilo maquero:

 

 Las imágenes mostradas en las capturas de pantalla, tanto fondo de pantalla, como splash art, como iconos, no son de mi propiedad y pertenecen a sus respectivos dueños.

Para darle ese estilo he usado OpenBox de gestor de ventanas, cairo-dock de dock y un tema que traía de mac y nitrogen para poner los fondos de pantalla.

De esta forma digamos que podríamos tener un estético Mac con toda la funcionalidad y seguridad de un equipo Linux. Además de que OpenBox consume muy pocos recursos como gestor de ventanas.
 

He intentado, dentro de mi subjetividad -ya que no dejan de ser experiencias personales altamente subjetivas- ser lo más objetivo posible con las cosas que de facto he considerado relevantes.  Sé que muchos fanboys de Mac o de Windows o incluso de distros Linux creerán que sus sistema es el mejor y es insuperable y no hay que hacer ninguna comparativa por que no es necesario pero jajaj... creo que no tengo que decir nada al respecto.




Como siempre, un fuerte abrazo.