Lenovo Vantage y su inexistencia en GNU/Linux

    Cuando recién adquirí la Lenovo IdeaPad S340 con Windows 10 el software Lenovo Vantage me permitía realizar ciertas funciones interesantes que soportaba mi hardware. De las más interesantes seguro activar/desactivar el modo de conservación de la batería y algo similar con la corriente de los puertos USB fueron mis favoritas. 

El primer modo me permitía detener la carga de la batería entre el 60% ~ 70% y mantenerse ahí, es un modo diseñado para extender la vida de la batería mientras ésta esté conectada a la corriente, ideal para trabajar durante largos periodos de tiempo. El otro modo me dejaba proveer de energía eléctrica a los puertos USB, cuando el equipo estuviera suspendido o incluso apagado. Bastante útil para cargar mis audífonos bluetooth, kindle, smartphone y cualquier otro cachivache que se atravesara.

Lamentablemente cuando me pasé a GNU/Linux la herramienta no estaba disponible, al principio no le dí importancia pero con el tiempo extrañe no tener a la mano algo que me ayudará a realizar esos cambios de forma simple y cómoda. En mi primer búsqueda por los sitios de Stack Exchange, Stack Overflow y similares me tope con un comando para activar/desactivar el modo de conservación de la batería. El ser usuario de Gentoo me había hecho sentirme muy cómodo manejando la terminal así es que no hubo ningún problema.

Pero las cosas cambian y ahora que estoy en Elementary OS y que el objetivo del S.O es la facilidad/simplicidad y una alta integración entre las herramientas, utilidades y entorno pensé que sería bueno tener una interfaz de usuario nativa para mi nuevo entorno de trabajo. Por eso en mi segunda búsqueda sobre el tema me topé con el modulo lenovo_ideapad del kernel de Linux. Específicamente lo que indica la documentación del kernel la cual hasta donde tengo entendido se basa en el siguiente código fuente.

Ahora ya tenía acceso a las siguientes funcionalidades: camera_power, fan_mode, touchpad, fn_lock,  conservation_mode y usb_charging. De esas interfaces de configuración las únicas que logré hacer funcionar fueron las de la batería, el usb y el de teclado (fn lock).

La idea era construir algo similar a las herramientas y utilidades de eOS y que fuese nativo, por lo que las herramientas a usar fueron el lenguaje de programación Vala y la librería Gtk3. Actualmente luce así: 
La aplicación escrita en Vala y Gtk3

Lamentablemente para poder realizar esas modificaciones es necesario usar privilegios de administrador. 

Ademas usa el sistema de notificaciones para resaltar qué es lo qué ha ocurrido durante la activación/desactivación de alguna funcionalidad. 




Aun no he publicado la utilidad en github pero yo creo que en unos cuantos días queda lista, tal vez la publique en la tienda de elementary.

Saludos, K.



Comentarios