Christian Hergert (), autor do ambiente de desenvolvimento integrado GNOME Builder, atualmente trabalhando na Red Hat, projeto experimental , destinado a resolver o problema de sincronização de conteúdo entre vários dispositivos que utilizam o GNOME. Os usuários podem usar Bonsai
para conectar vários dispositivos Linux em uma rede doméstica, quando é necessário acessar arquivos e dados de aplicativos em todos os computadores, mas não se quer transferir os dados para serviços de nuvem de terceiros. O código do projeto está escrito em C e sob a licença GPLv3.
Bonsai inclui um processo em segundo plano chamado bonsaid e uma biblioteca de funções chamada libbonsai para fornecer serviços semelhantes aos da nuvem. O processo em segundo plano pode ser executado na estação de trabalho principal ou em um mini-computador Raspberry Pi sempre ligado em rede doméstica, conectado a uma rede sem fio e a um dispositivo de armazenamento. A biblioteca é usada para organizar o acesso de aplicativos GNOME aos serviços Bonsai por meio de uma API de alto nível. Para conectar dispositivos externos (outros PCs, laptops, telefones, dispositivos da Internet das Coisas), uma ferramenta chamada bonsai-pair foi proposta, permitindo gerar um token para conexão aos serviços. Após a conexão, um canal criptografado (TLS) é estabelecido para interagir com os serviços usando solicitações serializadas D-Bus.
Bonsai não se limita apenas a fornecer compartilhamento de dados e também pode ser usado para criar armazenamentos de objetos acessíveis por vários sistemas com suporte para sincronização parcial entre dispositivos, transações, índices secundários, cursos e a possibilidade de sobrepor alterações locais específicas de cada sistema a um banco de dados colaborativo comum. O armazenamento de objetos comum é construído sobre e .
Atualmente, é oferecido apenas um serviço para acesso a armazenamento de arquivos, mas no futuro planeja-se implementar outros serviços para acesso a e-mails, calendários, notas (ToDo), álbuns de fotos, coleções de música e vídeo, sistema de busca, backup, VPN, etc. Por exemplo, com Bonsai, em diferentes computadores nos aplicativos GNOME, será possível organizar o trabalho com um calendário planejador ou uma coleção de fotos sincronizada.
Fonte: opennet.ru
