I’m still confused what exactly these packages are responsible for tbh. Without them i wouldn’t be able to mount a smb or nfs share into a folder? Is that correct? Or is that solely for applications accessing said shares directly saving me from manually mounting shares?
When you don’t have kio-fuse installed, and you use, say, Blender or LibreOffice to open a file on a Samba share you’ve accessed from Dolphin, the app gets asked to open a smb:// URL. These apps don’t include samba clients, so what ends up happening is that KIO downloads the file locally to /tmp and passes the app that path. This works, but it means that under the hood, you’re not actually modifying the file on the samba share; you’re modifying a local copy. When you save the file, KIO detects that the local copy has changed, and asks you if you want to replace the remote copy with the modified local copy.
This process presents multiple problems, among them:
- It’s annoying for the user to have to confirm what it is they just asked to do.
- If the remote file was modified by someone else, your local changes will silently clobber their changes.
- If the file is very large (e.g. a video file on a NAS) the local copy operations will take ages and ages. You will be annoyed by the time it actually opens, and re-saving the file will take a long time. The state could get out of sync if yo make another change and save while the first saved copy is still re-uploading back to the server.
- If you use the app’s own “Open” dialog, it won’t be able to find files located next to the file it opened, because the share has not been mounted anywhere in a way that the app can see.
kio-fuse solves all these problems. When Blender or LibreOffice (or whatever) is passed a smb:// URL, kio-fuse notices and silently mounts the share that the file is localed on as a FUSE mount, and passes the app a path to the file on the FUSE mount–just like GVfs does. This allows all three of the above-mentioned problems to be solved.
Really, the fact that kio-fuse is a separate package and not included in kio itself is mostly an implementation detail.
Is that helpful?