개발자를 위한 새 기능
그놈 2.22 개발자 플랫폼은 외부 개발자들이 써드 파티 응용프로그램을 개발할 수 있는 안정적인 기반을 제공합니다. 그놈 및 그놈 플랫폼은 그놈 위에서 동작하는 자유소프트웨어 및 독점 소프트웨어를 허용하도록 라이센스되어 있습니다.
그놈 플랫폼의 라이브러리는 이후 2.x 릴리즈 기간 동안 API와 ABI 수준에서 호환될 수 있도록 보장됩니다. 그놈 데스크탑의 라이브러리의 경우 이러한 보장이 적용되지 않지만 대부분의 경우 릴리즈 사이의 일관성을 유지하고 있습니다.
- 6.1. GVFS및 GIO
- 6.2. Anjuta 통합 개발 환경
6.1. GVFS및 GIO
GVFS는 SFTP, FTP, DAV, SMB, ObexFTP 등과 같은 백엔드를 가진 사용자 공간의 가상 파일시스템입니다. GVFS는 GNOME-VFS를 대체하게 됩니다. GNOME-VFS는 낡은 모듈로 취급되고, 개발자가 새 프로그램을 개발할 때 사용하지 않게 됩니다.
GVFS는 두개의 부분으로 이루어져 있습니다:
- GIO는 GLib의 일부분인 공유라이브러리이며, GVFS에게 API를 제공합니다;
- GVFS 자신은 SFTP, FTP, DAV, SMB, ObexFTP같은 여러가지 파일시스템 형식 및 프로토콜의 백엔드를 포함하는 새로운 패키지입니다.
GVFS/GIO는 현대적이고, 사용하기 쉬운 VFS시스템을 제공하는 것이 목적입니다. POSIX 입출력 API에 가까워지기 보다는, POSIX 입출력 호출을 바로 사용하는 것보다 개발자가 더 좋아할 만한 API를 제공하는 것이 최종 목적입니다.GVFS/GIO는 고수준의 문서 집중 인터페이스를 제공합니다. 또한 GIO는 파일의 읽기 쓰기 뿐만 아니라, 파일 감시, 비동기 입출력 및 파일이름 자동완성 기능도 지원합니다.
GVFS는 현재의 GVFS마운트를 계속해서 추적하는 하나의 주 데몬(gvfsd)가 실행되는 방식으로 동작합니다. 각각의 마운트는 분리된 데몬으로 동작됩니다(일부 마운트는 데몬 프로세스를 공유합니다만, 대부분은 그렇지 않습니다). 클라이언트는 (세션 버스에서 피어투 피어 D-BUS를 사용하여) D-BUS호출의 조합과 파일 내용을 위한 각각의 프로토콜로 통신을 하게됩니다. 백엔드를 외부 프로세스로 분리하였기 때문에 응용 프로그램과 의존성이 최소화되고 전체 시스템이 아주 견고하게 되었습니다.
또한 GVFS는 ~/.gvfs/에 FUSE 마운트위치를 제공하여서 표준 POSIX 입출력을 사용하는 구식 프로그램에서도 사용할 수 있습니다.
GNOME-VFS와는 다르게 GVFS의 연결은 상태를 유지합니다. 따라서 사용자가 각각의 연결에 암호를 따로 입력하지 않고, 한번만 입력하면 됩니다.
GVFS로 바뀌면서, 자동 마운트 및 자동 시작이 그놈 볼륨 관리자가 아닌, 노틸러스에서 직접 처리하게 됩니다.
GIO의 API문서는 POSIX입출력과 GNOME-VFS를 GIO로 옮기는데 필요한 안내서와 함께 온라인에서 찾아볼 수 있습니다.
- 6.1.1. 빠진 기능
6.1.1. 빠진 기능
GVFS는 GNOME-VFS에 있던 여라가지 많은 문제점을 해결했지만, 아직 몇몇 기능이 빠져있습니다. 특히 fonts://와 themes:// 주소를 사용할 수 없게되었습니다.
이러한 문제는 곧 수정이 될 것입니다. 또한 아직 몇몇 프로그램이 GVFS로 완전히 옮겨지지 않았습니다. 이러한 현황은 온라인 문서로 지켜볼 수 있습니다.