Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[ANN] FuseFS-0.1

0 views
Skip to first unread message

Greg Millam

unread,
Sep 19, 2005, 5:13:27 AM9/19/05
to
Howdy -

FuseFS lets ruby programmers define filesystems entirely in Ruby.
That is - with FuseFS, you can now create a virtual filesystem out of
ruby objects, SQL databases, anything!

FUSE is a Linux kernel module + library that permits programmers to
do this without directly implementing anything in the kernel. (FUSE is
what permits SSHFS and GMailFS in Python - Surely we can do better!)

Sample proof-of-concept virtual filesystems include:

"dictfs": The entire contents of dict.org's definitions are
available at your fingertips! Mount it on a directory and "cat
mountpoint/hacker" to see definitions from the Jargon file, Webster's
dictionary, Free online computing dictionary, and more! (requires ruby-dict)

"sqlfs": browse your databases rows and columns as
mountpoint/tablename/<primary key>/field ! With full read-write support,
you can edit your table entries in your favorite editor! (requires
ruby-mysql)

Have I got your "oh the possibilities" creative juices flowing yet? Well
it's here and ready for the taking:

http://walker.deafcode.com/code/fusefs-0.1.tar.gz

You will need:

* Linux with a 2.6 kernel
* FUSE. On gentoo, this is as simple as: "emerge sys-fs/fuse"

You can read: README.txt and API.txt for how to quickly get set up.

Do note: This is a very preliminary version, and only something I've
been hacking on a few hours a day since Wednesday. If you spot a bug,
have a suggestion for a change, or want something with it, just email me
- I'm open to suggestions, and I'm not locking its API down anytime soon.

- Greg Millam


Greg Millam

unread,
Sep 19, 2005, 7:42:19 AM9/19/05
to
Whoops! I've made a mistake in the packaging. As a result, I've fixed
it, and releasing it as another version: FuseFS-0.2 (less than 2 hours
later ... Yow! But don't worry, it wasn't a serious mistake, it would
just call root.remove rather than root.delete as it should have, which
was a minor API change I made for the release. )

http://walker.deafcode.com/code/fusefs-0.2.tar.gz

Also included with this version is sample/yamlfs.rb - You can define a
filesystem in a YAML file of Hashes and Strings! Editable, too. (dirs ==
hashes, files == strings)

- Greg

Gavin Kistner

unread,
Sep 19, 2005, 8:04:37 AM9/19/05
to
On Sep 19, 2005, at 5:42 AM, Greg Millam wrote:
> Also included with this version is sample/yamlfs.rb - You can
> define a filesystem in a YAML file of Hashes and Strings! Editable,
> too. (dirs == hashes, files == strings)

Uhm...whoa. Way too early in the morning for this sort of power and
possibility. I'm not on Linux, and I haven't ever said to myself
"man, I wish I could do this"...but wow. Crazy cool idea! :)

George Moschovitis

unread,
Sep 19, 2005, 8:47:34 AM9/19/05
to

Erik Terpstra

unread,
Sep 19, 2005, 8:56:45 AM9/19/05
to
Wow, that is one impressive library!
Thanks a lot, I can't wait to give it a go.

Cheers,

Erik.

Greg Millam

unread,
Sep 19, 2005, 9:29:14 AM9/19/05
to
(Another mini announcement already? Yow!)

FuseFS now has a project page on rubyforge:

Please download FuseFS from there, to ease bandwidth off my home server =).

http://rubyforge.org/projects/fusefs/

Han Holl

unread,
Sep 20, 2005, 6:18:07 AM9/20/05
to
On 9/19/05, Greg Millam <ruby...@lethalcode.net> wrote:
[ cut ]

> You will need:
>
> * Linux with a 2.6 kernel
> * FUSE. On gentoo, this is as simple as: "emerge sys-fs/fuse"

Why do I need a 2.6 kernel ? It seems to run just fine on 2.4.30.

Cheers,

Han Holl

0 new messages