Descarga GIMP 2.9 para Flatpak

En posts anteriores compilamos GIMP 2.9 para Flatpak. La ventaja de compilar tu aplicación para Flatpak es que puedes distribuirla y ejecutarla en cualquier distro de Linux que tenga Flatpak instalado. Hay dos forma de distribuir una aplicación Flatpak, montar un repositorio online o distribuir tu aplicación en un archivo único, llamado bundle en Flatpak, que los usuarios pueden descargar y ejecutar. Puesto que no puedo montar un repositorio online, veamos como distribuir y ejecutar GIMP como un bundle.

En primer lugar tengo que generar el bundle de GIMP desde la versión instalada en mi repositorio local de Flatpak, para esto usamos el comando flatpak build-bundle:

monstruosoft@monstruosoft-PC:~$ flatpak build-bundle repo GIMP-2.9.flatpak org.monstruosoft.GIMP

El comando anterior genera el archivo GIMP-2.9.flatpak a partir de la aplicación org.monstruosoft.GIMP en el repositorio de Flatpak en el directorio repo. Este es nuestro bundle de GIMP para Flatpak y podemos distribuirlo para que otros usuarios lo usen.

DESCARGA EL BUNDLE DE GIMP 2.9 PARA FLATPAK DESDE MEGA.NZ

Una vez descargado el bundle hay dos formas de instalarlo en nuestra PC, agregarlo a un repositorio local con el comando flatpak build-import-bundle o instalarlo directamente desde el archivo .flatpak. Para instalar el bundle de GIMP 2.9 usaremos en esta ocasión la segunda opción ya que es la más sencilla. Nota que debemos agregar el repositorio de flathub para instalar automáticamente el runtime necesario si es que no lo has instalado antes:

Advertencia: Recuerda que, aunque Flatpak ofrece cierta seguridad al ejecutar los programas en una sandbox, sólo debes instalar programas que provegan de una fuente confiable y nunca debes ejecutar ningún comando como root o sudo a menos que sepas exactamente lo que estás haciendo.

monstruosoft@monstruosoft-PC:~$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
monstruosoft@monstruosoft-PC:~$ flatpak --user install --bundle ~/Descargas/GIMP-2.9.flatpak

Finalmente, ya que está instalada la aplicación de GIMP 2.9, podemos ejecutarla con el siguiente comando:

monstruosoft@monstruosoft-PC:~$ flatpak run org.monstruosoft.GIMP

¡Eso es todo 😀 !. Deja un comentario si descargas la aplicación y/o si tienes problemas al instalarla y ejecutarla.

 

Advertisements

Compilar GIMP 2.9 usando Flatpak – Parte 1

Si has seguido el blog sabrás que hace poco compilamos la versión 2.9 de GIMP para Debian. En esta ocasión repetiremos ese proceso pero esta vez usando Flatpak. Flatpak es un sistema de distribución de aplicaciones para Linux que ofrece seguridad, al ejecutar programas usando una sandbox, y portabilidad, al permitir ejecutar un programa en cualquier distro de Linux que tenga Flatpak instalado. En cierta forma, Flatpak es similar a los contenedores LXC de los que ya hemos hablado pero ofrece mayor facilidad de uso para el usuario final.

Read More

En corto No. 5 – Add-ons de Firefox

Como un usuario de la versión beta de Firefox, hoy me encontré con la sorpresa de que la versión 57 de Firefox eliminará el soporte para add-ons o complementos que estén marcados como Legacy y soportará únicamente add-ons basados en WebExtensions. Esto suena bien pero un desagradable efecto secundario es que el add-on NoScript ha dejado de funcionar :O . Me siento vulnerable sin este add-on básico para cualquiera que use Firefox 😛 . Sólo queda esperar que el autor de NoScript trabaje en una versión compatible con WebExtensions para cuando la versión oficial de Firefox 57 sea lanzada. De momento, esta reseña expresa perfectamente lo que siento.

Compilar megatools en Debian 8.9

megatools es un paquete de herramientas para interactuar desde la línea de comandos con la página de descargas mega.nz. megatools está incluido en el repositorio de paquetes para Debian Stretch pero no está disponible para Debian Jessie por lo que si, como yo, sigues usando la versión 8.9 de Debian, tienes que compilarlo manualmente. Por suerte es un paquete fácil de compilar y sólo tiene unas cuantas dependencias que se pueden instalar desde el gestor de paquetes (la mayoría ya deberían estar instaladas si has seguido posts anteriores en el blog 😀 ):

  • libglib2.0-dev

  • libssl-dev

  • libcurl4-openssl-dev

  • libgirepository1.0-dev

También necesitamos el código de megatools que se puede descargar desde la página oficial o desde su repositorio de github. En este caso estoy compilando la versión de github, si bajas la versión de la página oficial puedes omitir ejecutar autoconf.sh en el primer paso y ejecutar directamente configure.sh:

monstruosoft@monstruosoft-PC:~/megatools-master$ ./autogen.sh 
monstruosoft@monstruosoft-PC:~/megatools-master$ ./configure --disable-docs --prefix=/home/monstruosoft/libs/
...
Configured features:

  docs build: no
  warnings: no

Run make now.

NOTE: On FreeBSD, you need to use GNU make (gmake)
monstruosoft@monstruosoft-PC:~/megatools-master$ make
monstruosoft@monstruosoft-PC:~/megatools-master$ make install

¡Eso es todo!. Ahora podemos usar las herramientas para verificar y descargar todos esos links de mega 😀 .

En corto No.4 – Tips de CMake

CMake incluye opciones predefinidas para habilitar/deshabilitar la información de depuración, de forma que no tienes que escribir estas reglas manualmente. Simplemente tienes que pasar al comando cmake la opción -DCMAKE_BUILD_TYPE con el valor de tu elección. Los posibles valores son Release, Debug, RelWithDebInfo, MinSizeRel. Por ejemplo:

monstruosoft@monstruosoft-PC:~$ cmake .. -DCMAKE_BUILD_TYPE=Debug

 

En corto No. 3 – Tips de NetBeans

Hay varias opciones si quieres agregar un identificador de versión automáticamente a tus programas de NetBeans pero la más sencilla de implementar es abrir el archivo build.xml en el directorio base de tu proyecto y editarlo de la siguiente siguiente manera:

...
  <tstamp>
    <format property="NOW" pattern="yyyy-MM-dd HH:mm:ss z" />
  </tstamp>
  <manifest file="manifest.mf">
    <attribute name="Implementation-Version" value="${NOW}"/>
  </manifest>

</project>

Esto pondrá un valor con la fecha de compilación en el archivo manifest.mf usado para crear el .jar de tu aplicación. Dentro de tu código puedes obtener ese valor con la siguiente instrucción:

String version = MiClase.class.getPackage().getImplementationVersion();
Fuentes:
http://www.javaxt.com/Tutorials/Netbeans/How_to_Add_Version_Information_to_a_Jar_File_with_Netbeans
https://stackoverflow.com/questions/5204297/put-version-to-my-java-application-netbeans

Usar los métodos del paquete java.util.logging puede ser útil para imprimir información de depuración que no quieres imprimir en la versión final de tu aplicación (definitivamente es una mejor opción que usar System.out.println()). Al igual que con el número de versión, hay varias formas de configurar el nivel de información de depuración que quieres imprimir pero una de las más sencillas es copiar el archivo de ejemplo logging.properties de ruta-de-instalación-del-JDK/jre/lib/logging.properties al directorio de tu proyecto y modificarlo para definir el nivel de información a imprimir por el logger que uses en tu código:

...
# Limit the message that are printed on the console to INFO and above.
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
...
# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
# OFF - Deshabilita todos los mensajes
# ALL - Imprime todos los mensajes
# Nombre de nivel - limita los mensajes a ese nivel y superiores
nombre.logger = OFF

Una vez creado/modificado este archivo, sólo tienes que pasarlo como argumento al iniciar tu aplicación:

monstruosoft@monstruosoft-PC:~/ java -Djava.util.logging.config.file=ruta-del-archivo-logging.properties MiClase
Fuente:
https://stackoverflow.com/questions/6307648/change-global-setting-for-logger-instances/6307666#6307666

Control remoto de decodificador Master

Hace tiempo compré un decodificador de TV digital Master, funciona bien pero el control remoto parece estar hecho con el diseño y los materiales más baratos por lo que ya está fallando y si llega a fallar por completo me quedaría con un decodificador inutilizable, por lo que decidí respaldar la configuración del control remoto usando el Raspberry y el paquete lirc.

Read More

Compartir Wi-Fi con el Raspberry Pi

Compartir la conexión a internet Wi-Fi de nuestra PC con el Raspberry Pi es sencillo si has seguido este blog ya que básicamente requiere los mismos pasos que en el post sobre compartir Wi-Fi con un contenedor LXC. Aquí repetiré los pasos para el Raspberry usando la conexión DHCP que ya hemos preparado en el post anterior.

Read More