Mostrando entradas con la etiqueta Linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta Linux. Mostrar todas las entradas
martes, 27 de noviembre de 2018
Administra tus credenciales de Git con Gnome Keyring
Si sueles utilizar servicios de Git en internet para almacenar tu código fuente, seguramente ya te has encontrado con la molestia de tener que introducir constantemente tus credenciales al momento de hacer push de tus cambios hacia el repositorio remoto.
jueves, 9 de agosto de 2018
Ejecutar aplicaciones con GUI desde Docker en Linux
Hace unos días un amigo me animó a descargar y correr su aplicación que había desarrollado en Python utilizando Tensorflow. Debido a que no tenía instalado Tensorflow, elegí la opción de descargar y ejecutar una imagen de contenedor de Docker ya preparada con Python y TensorFlow, en lugar de instalar todo lo necesario directamente en mi sistema operativo. Cuando llegué al punto de intentar correrlo, descubrí que tenía una interfaz de usuario gráfica (GUI), la cual no podía ser ejecutada desde la línea de comandos de mi contenedor.
Despues de investigar un poco, descubrí que es posible ejecutar aplicaciones con interfaz gráfica desde docker, siguiendo unos simples pasos que detallo a continuación, para el caso de contenedores Linux corriendo sobre host Linux:
- Si docker se está ejecutando con el super usuario local (root), es necesario permitir que este se pueda conectar al servidor X encargado de administrar el ambiente gráfico, agregándolo a la lista de usuarios permitidos, mediante el siguiente comando:
# xhost local:root
- Ejecutar un nuevo contenedor, de la siguiente forma:
$ docker run -ti --net host \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e DISPLAY=unix$DISPLAY \ ubuntu:latest bashNotar las siguientes partes del comando:- Se esta creando y ejecutando un nuevo contenedor con la última imagen estable de Ubuntu (ubuntu:latest), como ejemplo.
- Una vez se inicie el contenedor, se ejecutará la línea de comandos de este (bash).
- Las opciones -ti indican que se desea asignar una pseudo-terminal al contenedor, y mantener habilitada la entrada estándar mientras el contenedor se esté ejecutando, respectivamente.
- Ejecutamos el contenedor utilizando el driver del host para el uso de la red, mediante la opción --net host
- Montamos el socket de X11 como un volumen compartido con el contenedor, mediante la opción -v /tmp/.X11-unix:/tmp/.X11-unix
- Compartimos la variable de entorno DISPLAY del host, con el contenedor, mediante -e display="unix$DISPLAY
- Una vez la línea de comandos del nuevo contenedor se está ejecutando, para probar que podemos iniciar y ver aplicaciones on interfaz gráfica, instalaremos NEdit, que es un editor liviano para X Windows System. Para ello procedemos a actualizar la lista de paquetes de los repositorios de Ubuntu, e instalar el editor:
# apt-get update & apt-get install nedit
- Finalmente ejecutamos el editor desde la línea de comandos:
# nedit
Veremos como la interfaz gráfica de la aplicación es lanzada en el sistema operativo host, ya que esta siendo ejecutada en el servidor X de este:
Referencias
sábado, 19 de agosto de 2017
Desactualizando paquete de Arch Linux sin pacman
A.K.A. El fin de semana después del día que ingenuamente quise actualizar Arch Linux por partes en vez de actualizarlo todo.
Acerca de como comenzó todo
Pueden omitir esta sección. Todo comenzó un día que quise actualizar mi instalación de Apricity OS mientras estaba cenando, pero no quise actualizar todo debido a que necesitaba trabajar en la computadora después de cena, en Windows, y el tamaño de la actualización era de 1.2 Gb, por lo que con una magnífica conexión de 2Mbps, eso iba a tomar un largo rato.Así que decidí a actualizar solo algunos paquetes que yo creía que eran independientes de todo lo demás. Empecé a ver la lista, y poco a poco fui actualizando algunos paquetes: geany, gimp, nano, samba... curl. Luego de eso seguí usando la computadora por un rato con normalidad, y la apagué. Todo bien.
Luego vine el fin de semana a querer utilizar la computadora para ver vídeos en Youtube mientras desayunaba. Para mis ratos de ocio prefiero ocupar Linux, ya que es más rápido, y no dependo de nada de Windows para ello. Todo bien. Luego noté que Variety no estaba corriendo (Variety se ha vuelto mi referencia de la salud del sistema operativo últimamente). ¡Qué raro?, pensé yo, pues lo había actualizado recientemente. Así que lo ejecuté desde la línea de comandos, para obtener más información. Apareció en pantalla un error de que no se podía encontrar la librería libssl.so.1.1.
Pensé que podría ser que Variety necesitaba otra actualización, así que procedí a actualizar la base de datos de paquetes de pacman, para ver si habían actualizaciones disponibles, con el comando:
sudo pacman -Syy
Cuando veo un error similar: No se puede encontrar la librería libssl.so.1.1. Así que ni modo, recurrí a Google para buscar alguna respuesta.
Después de un rato encontré un post que sugería crear enlaces simbólicos de las librerías requeridas hacia las librerías existentes, así que cree dos enlaces simbólicos, uno para libssl.so.1.1 y otro para libcrypto.so.1.1:
ln -s /usr/lib/libssl.so.1.0.0 /usr/lib/libssl.so.1.1 ln -s /usr/lib/libcrypto.so.1.0.0 /usr/lib/libcrypto.so.1.1
Luego intenté nuevamente actualizar la lista de paquetes de pacman, y obtuve el siguiente error:
Y allí me acordé: había actualizado curl, pero lo que no sabía es que curl requería versiones actualizadas de libssl y libcrypto. Además, lo había actualizado por sí solo pensando que yo había sido el que había instalado el paquete y que no había dependencias de este. Pero para mi horror, el mismísimo pacman dependía de curl.
Intenté buscar una forma de desactualizar curl, pero la forma estándar requería usar pacman, lo cual fue imposible. Oh, el horror.
Así que ni modo, a buscar una alternativa para hacer la actualización a pata. Gracias a Dios me encontré con esta entrada en Reddit: Pacman libcritpto.so.1.1 errors.
Desactualizando paquete de Arch sin pacman
Sabiendo que en mi caso el error había sido solamente con curl, procedí a realizar la desinstalación de la versión más nueva que encontré en /var/cache/pacman/pkg, la cual era curl-7.55.1-1. Ejecuté el siguiente comando, como super usuario:tar -tf /var/cache/pacman/pkg/curl-7.55.1-1-x86_64.pkg.tar.xz | sed s:^:/: | grep -v /$ | xargs rm
Explicando el comando por partes:
| Paso | Comando | Descripción | |
|---|---|---|---|
| 1 | tar -tf /var/cache/pacman/pkg/curl-7.55.1-1-x86_64.pkg.tar.xz | Obtiene la lista de archivos contenidos en el paquete. | |
| 2 | sed s:^:/: | Agrega / al principio de la ruta de cada archivo. | |
| 3 | grep -v /$ | Del listado anterior, quita los elementos que terminen en /, ya que estos corresponden a carpetas. | |
| 4 | xargs rm | Elimina los archivos listados. |
Luego, procedí a instalar la versión previa disponible en el cache de paquetes, que era curl-7.52.1-2, con el siguiente comando (siempre como usuario root):
tar -xf /var/cache/pacman/pkg/curl-7.52.1-2-x86_64.pkg.tar.xz
Y finalmente probé actualizar nuevamente la base de datos de pacman, y todo resultó bien:
Lección aprendida: No actualizar Arch Linux a medias.
sábado, 12 de agosto de 2017
Sobreviviendo a un OS descontinuado - Apricity OS
Saludos a todos, ya tenía un largo tiempo de no escribir en el blog, debido a algunos proyectos que han consumido demasiada parte de mi tiempo libre :(
Precisamente debido a esto, ya que los proyectos habían sido desarrollados en en Windows (Visual Studio, .NET, y todas esas cosas del imperio), ya tenía un largo rato de no utilizar el sistema Linux que también tengo instalado en mi computadora personal. Pues bien, esta mañana finalmente encendí mi computadora e ingresé a mi muy apreciada instalación de Apricity OS, y como primera tarea decidí que quería hacer funcionar el administrador de fondos de escritorio que tengo instalado, llamado Variety, ya que la ultima vez que entré al sistema habia notado que este había dejado de funcionar y que no podría ser iniciado. Intente ejecutarlo desde la línea de comandos, para obtener más información acerca del posible error, y vi un mensaje que me indicaba que la razón por la cual no estaba funcionando era que la versión de Variety que tenía instalada era antigua, y que debía actualizar a la versión más reciente. Yo le temo a las actualizaciones, pues tienden a romper cosas, en Windows y Linux, pero bueno, era solo un paquete, así que procedí a la actualización usando la confiable herramienta pacman.
sudo pacman -S variety
Pero tristemente no se pudo, ya que en su lugar me apareció el siguiente mensaje:
Siendo un noob en Linux, y en particular en Arch, me puse a investigar en google, y de lo que logré encontrar, decidí que tal vez necesitaba actualizar las bases de datos de los repositorios, así que intenté eso:
sudo pacman -Syy
Y luego me apareció un mensaje más claro:
Falló la descarga del archivo 'apricity-core.db' desde static.aprictyoscom : Falló la conexión a static.apricityoscom puerto 80: Conexión rechazada
La triste sorpresa
Mmm, ¿será tal vez que el servidor no está disponible?¿Habrá algún espejo para poder usar?
¿Será que iban a hacer mantenimiento de sus servidores este día?
Bueno, a googlear para buscar alguna noticia. Y allí fue cuando, para mi sorpresa, me dí cuenta de la triste noticia: Apricity OS ha sido descontinuado, desde el 6 de mayo del presente 2017. Ingresando a su página de Github, se puede ver el siguiente mensaje:
¿Apricity OS?
La noticia es triste para mí, ya que Apricity OS había sido mi versión favorita de Linux, desde que empecé a ocupar Linux. Apricity OS era una distro basada en Arch Linux, que intentaba ofrecer lo mejor de este sistema operativo de un forma amigable y sencilla. Entre las cosas buenas que tenía era que oseía un instalador gráfico para facilitar la instalación y actualización de paquetes. También compartía el modelo de actualización de liberación continua de Arch, lo que permitía actualizar el sistema sin tener que instalarlo desde cero nuevamente cada vez que hubiera una nueva versión. Otra característica interesante es que incluía ICE, que es una aplicación que permite utilizar auna aplicación web como si fuera una aplicación de escritorio normal. También poseía una interfaz con un diseño limpio y moderno utilizando Gnome 3.¿Y ahora qué?
La verdad es que a mí me encanta este sistema operativo, sigue siendo el que más me ha gustado, y considero que siendo basado en Arch, aún puedo continuar utilizándolo, ya que buena parte de los paquetes provienen de ese entorno. Bajo esta premisa, mi siguiente paso fue desactivar el repositorio de Apricity OS de la configuración de pacman. Para ello abrí el archivo /etc/pacman.conf en un editor de texto con el usuario administrador (en mi caso utilicé el comando gksudo geany /etc/pacman.conf para ello). Luego marqué como comentarios las siguientes líneas:[apricity-core] SigLevel = Required Server = http://static.apricityos.com/apricity-core-signed/
Así:
#[apricity-core] #SigLevel = Required #Server = http://static.apricityos.com/apricity-core-signed/
Con ello pacman ignora el repositorio de Apricity OS, lo cual evita que se produzca el fallo debido a que no puede descargar su base de datos. Hecho esto ya pude actualizar el paquete que necesitaba.
Conclusiones finales
Es una triste noticia que un sistema operativo tan eficiente, elegante y amigable haya llegado a su fin, en un tiempo tan corto (creo que fue un poco más de un año el tiempo que el proyecto estuvo disponible), pero así es el mundo del software libre, ya que se depende del trabajo voluntario de comunidades de desarrolladores que buscan ofrecer piezas de software increíbles sin esperar nada a cambio. "Por amor al arte", como dicen. Solo nos queda agradecer a estas personas por la maravillosa experiencia que nos ofrecieron al traer al mundo a Apricity OS, y también nos deja la motivación para que nosotros nos animemos a integrarnos a alguna de estas apreciables comunidades.Saludos, y hasta la próxima.
martes, 11 de octubre de 2016
Fondo de escritorio rotativo en Elementary OS
Saludos. Despues de un par de semanas de esfuerzo, finalmente pude instala la ultima version de Elementary OS, Loki (v0.4), en mi laptop. Y para embellecer un poco mi entorno, decidi buscar alguna aplicacion con la que pudiera cambiar la imagen de fondo de mi escritorio de forma periodica y aleatoria (wallpaper slideshow). Despues de una rapida busqueda en Google, me tope con Variety.Características
Variety ha sido creado por Peter Levi, y es un cambiador de fondos de pantalla de código abierto, como se describe en su página. Sin embargo, esta definición se queda corta, ya que incluye una gran cantidad de funcionalidades:- Descarga periódica y automática de imágenes desde sitios de internet como Flickr, Wallhaven, entre otros. Esto realmente te quitará el aburrimiento, ya que tendrás nuevas imágenes cada vez que veas tu escritorio. Además tú puedes configurar cuánto espacio de disco dedicar a las imágenes descargadas, y cada cuánto tiempo descargarlas.
- Puedes escoger los directorios locales o sitios web desde los cuáles Variety toma las imágenes.
- Puedes habilitar el selector de fondos de pantalla (wallpaper selector), que te muestra en la parte de abajo de la pantalla las las imágenes que tienes disponibles, y te permite escoger la que más te guste para mostrarla en tu escritorio.
- Puedes indicar las imágenes que más te gustan, y guardarlas en una carpeta especial. Si te suscribes a VRTY.ORG, puedes compartir tus imágenes con otros usuarios de Variety, y además copiar tus imágenes favoritas en todas tus computadoras. Cabe advertir que el sitio web VRTY.ORG puede contener imágenes obscenas o para mayores de edad.
- Teniendo en cuenta la advertencia previa, es importante mencionar que a última versión de Variety hasta este momento (0.6.2) incluye un "modo seguro", que sirve para evitar imágenes no aptas para menores de edad. Este modo seguro se basa en los ratings de Wallhaven, así como en las clasificaciones provistas por la comunidad de Variety. Esto no significa que Variety pondrá cualquier cosa en tu escritorio, ya que por defecto solamente tiene habilitadas las fuentes de imágenes más seguras.
- No podía faltar además un conveniente reloj digital, que puedes personalizar y mostrar en tu escritorio con la fuente y tamaño que tú elijas.
Instalación
Variety se encuentra disponible ya en los repositorios oficiales de Ubuntu Xenial (16.04), que es el sistema operativo en el que se basa Elementary OS Loki, por lo que para instalarlo solo basta ejecutar el siguiente comando:sudo apt-get install variety
Sin embargo esta es la versión 0.6.0 de Variety, y la versión más reciente disponible hasta el momento de esta entrada es la 0.6.2, por lo que si quieres instalar la versión más reciente, debes añadir el repositorio oficial de variety, e instalar los paquetes variety y variety-slideshow, así:
sudo add-apt-repository ppa:peterlevi/ppa sudo apt-get update sudo apt-get install variety variety-slideshow
Variety también puede ser instalado en otros sistemas operativos. Las instrucciones más detalladas las puedes encontrar aquí.
Contribuye
Y si te ha gustado mucho esta aplicación, puedes contribuir a su creador a través de una donación, a la comunidad compartiendo imágenes en VRTY.ORG, o contribuyendo directamente al desarrollo del software de las distintas formas que se listan aquí. El código fuente, así como reportes de bugs, los puedes encontrar en Launchpad.viernes, 5 de febrero de 2016
Instalar Oracle Java 8 (JDK) en Ubuntu y derivados, desde repositorio PPA
Para instalar el Oracle JDK de Java 8 en Ubuntu y distros derivadas, esta disponible el repositorio WebUpd8 Oracle Java PPA. Para agregar este repositorio, ejecutamos los siguientes comandos en la consola de linux:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
Luego, para instalar el JDK de Java 8, ejecutamos el siguiente comando:
$ sudo apt-get install oracle-java8-installer
Finalmente, para verificar la version instalada de Java, podemos ejecutar los siguientes comandos:
$ java -version
$ javac -version
El primer comando es para consultar la version del JRE, y el segundo es para consultar la version del compilador de JAVA. En ambos casos puede observarse que el numero de version es 1.8.0.
De acuerdo al articulo original publicado en el sitio web de WebUpd8, el repositorio PPA es soportado por Ubuntu 15.04, 14.10, 14.04 y 12.04, o superiores, asi como Linux Mint 17.1, 17 y 13, o superiores. Tambien es soportado por otras distros derivadas de estas versiones (en mi caso, por ejemplo, Elementary OS Freya).
Con la tecnología de Blogger.















