Christian Hergert (), twórca zintegrowanego środowiska programistycznego GNOME Builder, obecnie pracujący w Red Hat, eksperymentalny projekt , mający na celu rozwiązanie problemu synchronizacji zawartości wielu urządzeń działających na GNOME. Użytkownicy mogą korzystać z Bonsai
do łączenia kilku urządzeń z systemem Linux w domowej sieci, gdy potrzebują dostępu do plików i danych aplikacji na wszystkich komputerach, ale nie chcą przekazywać swoich danych do zewnętrznych serwisów chmurowych. Kod projektu napisany jest w języku C i jest licencjonowany na zasadach GPLv3.
Bonsai obejmuje proces w tle bonsaid oraz bibliotekę funkcji libbonsai, aby zapewnić usługi przypominające usługi chmurowe. Proces w tle może być uruchomiony na głównym komputerze roboczym lub zawsze włączonym w domowej sieci mini-komputerze Raspberry Pi, podłączonym do sieci bezprzewodowej i nośnika do przechowywania danych. Biblioteka jest używana do organizowania dostępu aplikacji GNOME do usług Bonsai za pomocą wysokopoziomowego API. Do łączenia z zewnętrznymi urządzeniami (inne komputery, laptopy, telefony, urządzenia internetu rzeczy) zaproponowano narzędzie bonsai-pair, które umożliwia wygenerowanie tokenu do połączenia z usługami. Po łączeniu organizowany jest szyfrowany kanał (TLS) do komunikacji z usługami, w którym stosowane są serializowane zapytania D-Bus.
Bonsai nie ogranicza się tylko do zapewniania współdzielenia danych i może być również używany do tworzenia dostępnych dla wielu systemów magazynów obiektów z obsługą częściowej synchronizacji między urządzeniami, transakcjami, wtórnymi indeksami, kursorami i możliwością nakładania specyficznych dla każdej systemu lokalnych zmian na wspólną bazę danych. Wspólny magazyn obiektów oparty jest na i .
Obecnie oferowana jest tylko usługa dostępu do pamięci masowej, ale w przyszłości planowane jest wdrożenie innych usług, takich jak dostęp do poczty, kalendarza-planera, notatek (ToDo), albumów ze zdjęciami, zbiorów muzyki i wideo, systemu wyszukiwania, kopii zapasowych, VPN itd. Na przykład, za pomocą Bonsai na różnych komputerach w aplikacjach GNOME będzie można zorganizować pracę z synchronizowanym kalendarzem-planerem lub wspólną kolekcją zdjęć.
Źródło: opennet.ru
