Re: Pure rust ostree FUSE implementation





On Wed, Aug 12, 2020, at 12:51 PM, Will Manley wrote:
I've written a FUSE implementation which is backed by an ostree bare-user repo:

https://github.com/wmanley/ostree-oxide

Very interesting!  Feel free to send a PR linking to this from the main page under related projects.

Rust is certainly really good for FUSE.

It's written in pure rust and doesn't link to libostree or glib.  

Do you have a reason for that?  Memory safety?  Performance?  I have thought in the past that avoiding some 
of the GInputStream abstractions as well as using crossbeam/rayon for things like committing objects would be 
a huge speedup.

But...reimplementing everything there is not a trivial endeavor.

https://docs.rs/gvariant/0.3.0/gvariant/

Nice.  Have you compared with https://lib.rs/crates/zvariant ?

(GVariant is a superset of DBus...I think it boils down to the "maybe" type only existing in GVariant)

There's probably a better forum for this...it looks like the gtk-rs developers use Matrix.  Or we could try 
to summon the zvariant developers here.

On this topic I intend to build on top of the recent momentum in e.g.
https://github.com/ostreedev/ostree/pull/2127
for both more tests, but another thing I'd like to do is create an
ostree-ext-rs crate that is in the ostree git repo, that is 
"somewhat API slushy helpers on top of the ostree-rs crate",
which would make it way easier for us to share code
between ostree/rpm-ostree, and would also be useful for any
other projects that are in Rust and using ostree which...I
thought https://github.com/advancedtelematic/aktualizr was
but looks like it's fully C++ now (or maybe I'm confused about
the history).

Anyways thanks a lot for posting this!



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]