A Canonical lançou a primeira versão da interface Ubuntu Frame, destinada à criação de quiosques de internet, terminais de autoatendimento, painéis de informações, sinalização digital, espelhos inteligentes, telas industriais, dispositivos IoT e outras aplicações similares. A interface foi projetada para fornecer uma experiência de tela cheia para um único aplicativo e se baseia no uso do servidor de exibição Mir e do protocolo Wayland. Os desenvolvimentos do projeto são distribuídos sob a licença GPLv3. Pacotes no formato snap estão disponíveis para download.
O Ubuntu Frame pode ser usado para executar aplicativos baseados em GTK, Qt, Flutter e SDL2, assim como programas em Java, HTML5 e Electron. É possível executar tanto aplicativos compilados com suporte ao Wayland quanto programas baseados no protocolo X11 (utilizando o Xwayland). Para organizar o funcionamento no Ubuntu Frame com páginas da web ou sites separados, está sendo desenvolvido o programa Electron Wayland, que implementa um navegador web em tela cheia especializado, assim como a porta do mecanismo WPE WebKit. Para uma preparação rápida e implementação de soluções baseadas no Ubuntu Frame, é recomendável utilizar pacotes no formato snap, que permitem isolar os programas em execução do restante do sistema.

A interface Ubuntu Frame é adaptada para funcionar sobre o ambiente do sistema Ubuntu Core, uma versão compacta da distribuição Ubuntu, fornecida como uma imagem monolítica indivisível do sistema básico, na qual não há divisão em pacotes deb separados e é utilizado o mecanismo de atualização atômica de todo o sistema. Os componentes do Ubuntu Core, incluindo o sistema básico, o núcleo Linux, as extensões do sistema e aplicativos adicionais, são entregues no formato snap e gerenciados pela ferramenta snapd. Os componentes no formato Span são isolados usando AppArmor e Seccomp, o que cria uma camada adicional de proteção para o sistema em caso de comprometimento de aplicativos individuais. O sistema de arquivos básico é montado em modo somente leitura.
Para criar um quiosque personalizado, restrito ao funcionamento de um único aplicativo, o desenvolvedor precisa apenas preparar o próprio aplicativo, enquanto todas as outras tarefas relacionadas ao suporte de hardware, manutenção do sistema e organização da interação com o usuário são realizadas pelo Ubuntu Core e Ubuntu Frame, incluindo suporte para controle por meio de gestos na tela em sistemas com telas sensíveis ao toque. Foi anunciado que atualizações para correção de erros e vulnerabilidades nas versões do Ubuntu Frame serão fornecidas por 10 anos. Se desejado, a interface pode ser executada não apenas no Ubuntu Core, mas também em qualquer distribuição Linux que suporte pacotes Snap. No caso mais simples, para implantar um quiosque na web, basta instalar e executar o pacote ubuntu-frame e configurar alguns parâmetros: snap install ubuntu-frame snap install wpe-webkit-mir-kiosk snap set wpe-webkit-mir-kiosk daemon=true snap set ubuntu-frame daemon=true snap set wpe-webkit-mir-kiosk url=https://example.com
Fonte: opennet.ru
