Bonsai a Gnome 중심의 다중 장치 동기화 서비스

그놈 분재

Red Hat 개발자 Christian Hergert Gnome Builder 통합 개발 환경에서 일한 "Bonsai"라는 새로운 파일럿 프로젝트를 도입했습니다. 어느 주요 초점이나는 Gnome을 사용하여 다양한 장치의 콘텐츠를 동기화하는 문제를 해결합니다.

사용자는 Bonsai를 사용하여 홈 네트워크에서 여러 Linux 장치를 연결할 수 있습니다. 모든 컴퓨터의 파일 및 애플리케이션 데이터에 액세스해야하지만 데이터를 타사 클라우드 서비스로 전송하고 싶지 않을 때.

분재 개인용 클라우드와 유사하게 작동해야합니다.

Bonsai는 개인 클라우드와 같은 서비스를 제공하고 사용하기위한 데몬이자 공유 라이브러리입니다. 대상 사용자는 콘텐츠를 동기화하려는 여러 장치가있는 그놈 데스크탑 사용자입니다.

분재에 대하여

Bonsai에는 bonsaid 배경 프로세스와 libbonsai 기능 라이브러리가 포함됩니다. 클라우드와 같은 서비스를 제공합니다.

백그라운드 프로세스는 메인 워크 스테이션이나 미니 컴퓨터에서 시작할 수 있습니다. Raspberry Pi는 무선 네트워크 및 홈 네트워크에서 영구적으로 작동하는 데이터 저장 장치에 지속적으로 연결됩니다.

라이브러리는 GNOME 응용 프로그램이 고급 API를 사용하여 Bonsai 서비스에 액세스하도록하는 데 사용됩니다.

외부 장치와 통신하려면 (기타 PC, 노트북, 전화, 사물 인터넷 장치), 토큰을 생성 할 수있는 분재 쌍 유틸리티가 제안되었습니다. 서비스에 연결합니다. 바인딩 후에는 직렬화 된 D-Bus 요청을 사용하여 서비스에 액세스 할 수 있도록 암호화 된 채널 (TLS)이 구성됩니다.

분재는 데이터 공유에만 국한되지 않습니다. y 또한 여러 시스템에서 액세스 할 수있는 개체를 만드는 데 사용할 수 있습니다. 장치, 트랜잭션, 보조 인덱스, 커서 간의 부분 동기화를 지원하고 공통 공유 데이터베이스를 기반으로 각 시스템에 특정 로컬 변경 사항을 적용 할 수 있습니다.

일반 개체 저장 GVariant API 및 LMDB를 기반으로합니다.

앱은 기기간에 통신 할 수있을 때 훨씬 좋습니다. 따라서 libbonsai-dao라는 이름의 Data-Access-Object 라이브러리는 GVariant 및 LMDB를 기반으로 직렬화 가능한 개체 저장소를 제공합니다.

 기본 및 보조 인덱스, 쿼리, 커서, 트랜잭션 및 장치 간 증분 동기화를 지원합니다. 기본 Bonsai 장치에서 가져온 변경 사항에 대한 로컬 변경 사항을 변경할 수 있습니다.

현재 파일 저장소에 액세스하기 위해 하나의 서비스 만 제공됩니다.하지만 향후 메일, 캘린더 플래너, 메모 (보류중인 작업), 사진 앨범, 음악 및 비디오 컬렉션, 검색 시스템, 백업, VPN 등에 액세스하기위한 다른 서비스를 구현할 계획입니다.

예를 들어 Gnome 응용 프로그램의 다른 컴퓨터에서 Bonsai를 사용하면 동기화 된 캘린더 플래너 또는 공통 사진 컬렉션으로 작업을 구성 할 수 있습니다.

또한s Christian Hergert는 서비스가 현재 안전하지 않다고 말합니다. 그러나 응용 프로그램을 격리하고이 부분을 개선하여 서비스를 안전하게 만들 수 있도록 즉석에서 작동합니다.

특히 개발자에게 기기 동기화를 기본적으로 지원하는 앱을 빌드 할 수있는 훌륭한 도구를 제공해야합니다.

이 모든 것을 실험하기 위해 제가 만든 것은 분재입니다. 이 단계에서는 훌륭한 실험이지만 저와 함께하고 싶은 다른 사람들과 협력 할만큼 흥미로워지고 있습니다.

분재 구입 및 설치 방법

프로젝트와 관련하여 작동 방식에 관심이있는 분들을 위해, 시도하거나 소스 코드를 살펴보면 프로젝트 코드가 C로 작성되었으며 GPLv3 라이선스가 적용된다는 것을 알아야합니다. 이것은 Gitlab에서 얻을 수 있습니다. 다음 링크에서.

패키지의 구성은 Meson의 도움으로 수행 할 수 있습니다. 

git clone https://gitlab.gnome.org/chergert/bonsai.git
cd bonsai/
meson build --prefix=/opt/gnome --libdir=lib
cd build/
ninja
ninja install

이 서비스에 대해 더 알고 싶다면 다음 링크.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.