En el siguiente artículo vamos a echar un vistazo a Nativefier. Sobre esta herramienta ya hablamos en este mismo blog hace algún tiempo. En este post vamos a ver cómo podemos instalarla y utilizarla en Ubuntu 18.10 para convertir una página web en una aplicación nativa.
Hay muchas razones para querer una aplicación nativa de un sitio web. En general funcionan bastante bien, además tienen algunas características que la gente espera de una aplicación de escritorio. En general, se adaptan bien a los escritorios Gnu/Linux gracias a su configuración a la hora de crearlas.
Instalar Nativefier en Ubuntu 18.10
Nativefier es una aplicación NodeJS que se ejecuta en Gnu/Linux y otros sistemas operativos que pueden ejecutar el software Node. Este programa no llega instalado de forma predeterminada en ninguna distribución importante. Por esta razón, tendremos que ver cómo configurar NativeFier, antes de que sea posible comenzar a convertir sitios web en aplicaciones de escritorio para Gnu/Linux.
Instalar NPM
Nativefier depende en gran medida del lenguaje de programación NodeJS. Por esta razón, vamos a instalar el gestor de paquetes de este, llamado NPM, con lo que debería ser suficiente.
Para instalar NPM en nuestro Ubuntu 18.10, solo tendremos que abrir una terminal (Ctrl+Alt+T) y escribir en ella:
sudo apt install npm
Instalar Nativefier
Cuando el gestor de paquetes de NodeJS esté en funcionamiento en nuestra máquina, debemos utilizarlo para instalar Nativefier. Esto lo haremos abriendo una terminal (Ctrl+Alt+T) y utilizando el comando npm de la siguiente manera:
sudo npm install nativefier -g
Advertencia: la instalación de Nativefier sin sudo puede causar problemas.
Convertir sitios web en aplicaciones
Nativefier funciona generando un marco electron basado en la URL que recibe desde la línea de comandos. Para crear una aplicación nativa de Gnu/Linux utilizando un sitio web, solo hay que seguir estos pasos:
- Paso 1 → Encuentra el sitio web del que quieras crear una aplicación. Una vez que tengas un sitio web en el navegador, resalta la URL con el ratón, y haz clic derecho sobre ella. Seleccione la opción ‘copiar‘.
- Paso 2 → En la ventana de la terminal, utiliza Nativefier para generar una aplicación básica, pegando la URL que acabas de copiar. En este artículo vamos a utilizar esta misma web.
nativefier -p linux -a x64 -n ubunlog https://ubunlog.com
- Paso 3 → Nativefier va a incluir la URL en una aplicación electron. Es importante prestar atención a la terminal mientras se genera la app. Si aparece algún error, pulsa la combinación de teclas Ctrl+C y vuelve a ejecutar el comando de nuevo.
- Paso 4 → Cuando Nativefier termine de generar la aplicación, deberás actualizar los permisos de esta antes de poder usarla. Para establecer los permisos, en la terminal ejecuta los siguientes comandos:
cd *-linux-x64 sudo chmod +x *
- Paso 5 → Ejecuta tu aplicación electron personalizada con:
./ubunlog
Opciones de las aplicaciones personalizadas
En esta sección del post, repasaremos brevemente algunas de las opciones que tiene Nativefier. Estas van a permitir al usuario crear una mejor aplicación de escritorio.
Nota: todas las opciones se pueden escribir al mismo tiempo. No hay límite sobre cuántas se usan a la vez.
En la bandeja del sistema
¿Quieres permitir que la aplicación aparezca en la bandeja del sistema? Prueba a generar la aplicación con la opción –tray:
nativefier -p linux -a x64 -n nombreapp https://url-pagina-app.com --tray
Pantalla completa
¿Quieres que tu aplicación pueda ser lanzada a pantalla completa? Utiliza la opción ‘full-screen’ en el siguiente comando para habilitarla:
nativefier -p linux -a x64 -n nombreapp https://url-pagina-app.com --full-screen
Iniciar Maximizado
Es posible forzar nuestra aplicación electron para que siempre se inicie maximizada. Para conseguirlo solo hay que utilizar la opción ‘maximize’ en el comando para crear la aplicación:
nativefier -p linux -a x64 -n nombreapp https://url-pagina-app.com --maximize
Habilitar FlashPlayer
Es posible tener una aplicación web que se base en Flash. Afortunadamente, Nativefier tiene una forma de cargar el complemento Adobe Flash. Solo tendremos que añadir la opción ‘flash’ al comando que venimos utilizando:
nativefier -p linux -a x64 -n nombreapp https://website-app-url.com --flash
Siempre arriba
¿Quieres que tu aplicación electron ignore las reglas del administrador de ventanas y aparezca siempre encima de todo lo demás? Prueba la opción ‘always-on-top’ al compilar con Nativefier:
nativefier -p linux -a x64 -n nombreapp https://website-app-url.com --always-on-top
Más opciones de configuración
nativefier --help
La ayuda de Nativefier nos a mostrar las diferentes opciones que podemos utilizar para configurar nuestras aplicaciones. Vamos a poder encontrar más información de esta herramienta en su repositorio de GitHub.
npm ERR! typeerror Error: Missing required argument #1
npm ERR! typeerror at andLogAndFinish (/usr/share/npm/lib/fetch-package-metadata.js:31:3)
npm ERR! typeerror at fetchPackageMetadata (/usr/share/npm/lib/fetch-package-metadata.js:51:22)
npm ERR! typeerror at resolveWithNewModule (/usr/share/npm/lib/install/deps.js:456:12)
npm ERR! typeerror at /usr/share/npm/lib/install/deps.js:457:7
npm ERR! typeerror at /usr/share/npm/node_modules/iferr/index.js:13:50
npm ERR! typeerror at /usr/share/npm/lib/fetch-package-metadata.js:37:12
npm ERR! typeerror at addRequestedAndFinish (/usr/share/npm/lib/fetch-package-metadata.js:82:5)
npm ERR! typeerror at returnAndAddMetadata (/usr/share/npm/lib/fetch-package-metadata.js:117:7)
npm ERR! typeerror at pickVersionFromRegistryDocument (/usr/share/npm/lib/fetch-package-metadata.js:134:20)
npm ERR! typeerror at /usr/share/npm/node_modules/iferr/index.js:13:50
npm ERR! typeerror This is an error with npm itself. Please report this error at:
npm ERR! typeerror
npm ERR! Please include the following file with any support request:
npm ERR! /home/joan/npm-debug.log
AYUDAAA