Migrating userlandfs to FUSE 3

Hello!

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!

3 Likes

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?

https://sourceforge.net/p/smbnetfs/git/ci/master/tree/

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.

2 Likes

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.

6 Likes

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!