libpurple 9p service

Enrico Weigelt weigelt at metux.de
Fri Feb 20 07:47:06 EST 2009


* Allan Clark <allanc at chickenandporn.com> wrote:

Hi,

(CC'ing to the list, since it might be of general interest)

> Heya;
> What's "9P"?  

It's a very small network filesystem and IPC protocol, developed
for the Plan9 OS:

    http://en.wikipedia.org/wiki/9P

The primary philosophy is to model computing resources into an 
hierachy and make them accessible by simple filesystem operations.

Instead of heaving dozens of separate protocols for specific things
(up to OS syscalls, etc), everything's done via fileservers (also
called Synthetic Filesystems), which can be mounted from anywhere - 
totally OS and network agnostic. (procfs or sysfs are well-known
examples for synthetic filesystems).

For example, in my current 9p-libpurple, pidgin/frinch becomes an
Fileserver which eg. has some subdir for accounts with one subdir
per account. Within each account dir you'll see the account's 
attributes as a plain file. Some files are writeable, so allowing
to change the attribute or trigger an action (eg. writing "0" to
the "connected" attribute disconnects the account, writing "1"
will connect it again). Other resources, eg. buddies or chats will
live in their own subdirs.

I'm currently in the process of pushing my current branch to a 
public git repo: (will take a few mins)

    git://git.metux.de/pidgin9p.git


cu
-- 
----------------------------------------------------------------------
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 cellphone: +49 174 7066481   email: info at metux.de   skype: nekrad666
----------------------------------------------------------------------
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
----------------------------------------------------------------------




More information about the Devel mailing list