Migrating userlandfs to FUSE 3


I am porting an MTP client to Haiku to access files on my Android phone. This comes with a FUSE backend that should be usable with userlandfs. I found that userlandfs currently implement FUSE 2, but this new software uses FUSE 3. I have started migrating userlandfs to implement the FUSE 3 API instead of FUSE2.

However, this means the following software would stop working as no FUSE 3 version is available yet:

  • curlftpfs
  • gphotofs
  • fusesmb-haiku

So I would like to know if someone uses one of these, and if we can find a way to not break things for them. Let me know if you need this software!


I’ve tried using fusesmb-haiku, but it is quite finicky (with password protected shares, spaces in paths, using IPs instead of hosts etc etc), and its SMBv1 which most modern systems just don’t support.

I use fusesmb-haiku for accessing files on my NAS. It isn’t perfect and I would be happy to use an alternative such as SFTP/sshfs if it could integrate with Tracker (if anyone has any suggestions?). Being able to discover shares in the GUI is important to me.

1 Like

Are the differences between Fuse2 and Fuse3 too big, to the point of difficulting the update of said utilities ?

I use fusesmb, but it is indeed very finicky and annoying. It may be nicer to have a proper smb driver intree (I wanted to do that but haven’t gotten around to learning enough about it yet)

edit: mostly use it because the nfs driver is finicky too, and smb has worked where nfs did not

1 Like

NFS4 is supported by haiku and should work for this, gui discovery requires us to implement DNS-SD which we currently do not.

Sshfs-fuse comes into my mind.

SMBnetFS maybe?


Depends on FUSE >= 2.6 and on libsmbclient >= 3.5 (part of samba).

HaikuPorts repo have samba 3.6.25, but it is ancient (7 years old). We need to update our samba port. Feel free to work on it.


Then it doesn’t really help me: it’s still fuse 2 and will also get broken by this update.

Sshfs already has a fuse 3 version, I will be testing that soon.

That’s an option, but I don’t want to work on software that wasn’t updated in 15 years if no one is really using it. Also I don’t necessarily have servers available to test things here.

1 Like

Ah yes, but as far as I know this still requires shares to be mounted from the Terminal?

Right, makes sense.

Correct. But you can add it to your bootscript to get the share mounted on boot.

I will see what I can do for better integration of userlandfs with the GUI.


Sure, that is fine for us but not so good for casual users. I suppose it is not so important at the moment as there are other things (WiFi, screen brightness) in my bootscript already.

Why do you need this? is it a bug?

I use Haiku on a laptop (ThinkPad X230) and the brightness setting didn’t remain constant across reboots (not sure if this is a bug or expected behaviour). I added screenmode -b 0.2 to my UserBootscript as a workaround.

Just removed it and rebooted and the brightness setting did stick, so I’m not sure why I thought I needed this. Ignore me!

There used to be bugs with this but they have since been fixed :slight_smile:

Wonderful, exactly what we like to see!