$30 off During Our Annual Pro Sale. View Details »

Migasfree Client 5

Migasfree Client 5

Presentación realizada para la migascon 2022, en la que se muestran los cambios más importantes de la aplicación migasfree client en su versión 5.

Tweet

More Decks by Jose Antonio Chavarría

Other Decks in Technology

Transcript

  1. MIGASFREE CLIENT
    #migascon2022
    Jose Antonio Chavarría
    2022-05-19
    Presentación realizada para la migascon
    2022, en la que se muestran los cambios
    más importantes de la aplicación
    migasfree client en su versión 5.

    View Slide

  2. Protocolo de comunicación v4
    El gran cambio respecto al cliente
    actual (versión 4), es el protocolo de
    comunicación usado con el servidor
    (migasfree-backend).
    En la versión 4, los mensajes entre
    cliente y servidor sólo están firmados
    mediante un CRC. Como puede apreciarse,
    si alguien intercepta la comunicación,
    se puede ver claramente qué se
    intercambia entre las aplicaciones.

    View Slide

  3. Protocolo de comunicación v5
    El nuevo protocolo está basado en JWT
    (JSON Web Token) y es autenticado y
    cifrado a la vez. Esto significa que,
    aunque se use el protocolo HTTP sin
    cifrado, las comunicaciones entre el
    cliente y servidor son seguras.

    View Slide

  4. Otro área de mejora que incorpora el
    nuevo cliente es el sistema de plugins
    para PMS (sistemas de paquetería) y
    manejo de dispositivos (impresoras).
    Está ideado para que el cliente se
    pueda extender en sistemas operativos
    que usan otros PMS distintos a los que
    lleva por defecto el cliente (apt, yum,
    zypper, pacman y winget) o que se
    quiera usar otro mecanismo para la
    gestión de las impresoras.

    View Slide

  5. También ha cambiado la forma de invocar
    los comandos a través de la terminal
    (CLI). Todo se ha unificado bajo un
    mismo comando (migasfree) y algunos de
    los parámetros han sufrido cambios.
    Tened esto muy en cuenta si tenéis
    scripts que hacen uso del cliente.

    View Slide

  6. Además, la API que consume el cliente
    se ha atomizado. Es decir, que se han
    separado acciones, para hacer más
    sencilla y extensible la operativa
    entre cliente y servidor. Esto hace
    posible que se puedan desarrollar otros
    clientes a futuro, tal vez
    especializándose en algunas de las
    operaciones disponibles.

    View Slide

  7. Este nuevo cliente sólo se puede usar
    si en el sistema está Python 3. Ya no
    hay soporte oficial para la versión 2.
    Gracias a esta modernización, se usa la
    librería Python Rich para mostrar la
    salida de los comandos.

    View Slide

  8. Ejemplo de uso del argumento “tags” en
    el comando unificado “migasfree”.

    View Slide

  9. Nueva funcionalidad que da información
    acerca de la identificación del equipo
    en el sistema migasfree.

    View Slide

  10. Necesitamos tener 3 programas en Windows para tener las mismas
    características que en Linux:
    1. el cliente en sí, que proporciona la comunicación con el
    servidor.
    2. un detector de las características hardware del equipo que siga
    la misma estructura que el comando lshw de linux.
    3. un sistema de paquetería que permita auditar el software y
    realizar acciones de instalación.
    Hasta ahora, tan sólo podíamos acometer los 2 primeros puntos, por
    lo que no habíamos invertido tiempo en el proyecto para tener el
    cliente en plataforma Windows. Sin embargo, en mayo de 2021,
    Microsoft liberó la versión 1.0 de Windows Package Manager Client
    (winget), el sistema de paquetería "oficial" para Windows. Este es
    el hecho que nos ha decidido a preparar el cliente de migasfree
    para Windows. Además, hemos creado el proyecto LsHw Windows
    Emulator, que es una simplificación de lshw, basado en llamadas a
    Windows Management Instrumentation (WMI).
    Por el momento, el soporte del cliente en Windows es experimental,
    debido al sistema de paquetería winget y a las novedades
    introducidas en el cliente.

    View Slide

  11. #migascon2022
    Muchas gracias por haber venido
    @migasfree
    Hasta aquí, hemos mostrado las
    novedades más importantes del cliente
    migasfree en su versión 5.
    El cambio más radical es la atomización
    de la API que consume el cliente. Es
    decir, que se han separado acciones,
    para hacer más sencilla y extensible la
    operativa entre cliente y servidor.
    Esto hace posible que se puedan
    desarrollar otros clientes a futuro,
    tal vez especializándose en algunas de
    las operaciones disponibles.
    Quedamos a la espera de vuestros
    comentarios. Gracias.

    View Slide