FSKit running example project

Hello there,

I am wanting to create a custom FSKit extension, and am trying to get the sample passthrough project running:

https://developer.apple.com/documentation/fskit/building-a-passthrough-file-system

I have just followed the basic instructions from the tutorial above, so have:

  • Selected my team for the signing certificate (required for FSKit module).
  • Built and run.
  • Enabled "Passthrough file system" under "File System Extensions".
  • Made a test directory to mount to: mkdir ~/test

But when I run the mount command, I get the following error:

mount -t passthrough ~/Documents ~/test

mount: Loading resource: The operation couldn’t be completed. (com.apple.extensionKit.errorDomain error 2.)
mount: exec /Library/Filesystems/passthrough.fs/Contents/Resources/mount_passthrough for /Users/xxxxxxxx/test: No such file or directory
mount: /Users/xxxxxxxx/test failed with 72

The contents of /Library/Filesystems/ is empty, so I don't know if allowing the extension is meant to add something to this directory or not.

Any help would be much appreciated!

Answered by DTS Engineer in 886876022

IME the sample works in general. I’ve helped other folks in your situation:

  • In this thread the issue was that they’d not signed their code.
  • In this thread was the problem was cleared by a restart.

Please check those and reply back here if you continue to have problems.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

IME the sample works in general. I’ve helped other folks in your situation:

  • In this thread the issue was that they’d not signed their code.
  • In this thread was the problem was cleared by a restart.

Please check those and reply back here if you continue to have problems.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Hi there,

Many thanks for the response. I ended up finding the solution:

It works if I set the mount target to be any folder in the Home directory, so long as the folder is not inside one of the default folders (Eg. Documents, Desktop, Downloads, etc.)

So these work:

  • mount -t passthrough ~/Documents ~/test
  • mount -t passthrough ~/Downloads ~/test/best

But these will not work:

  • mount -t passthrough ~/Documents ~/Desktop/test
  • mount -t passthrough ~/Documents ~/Downloads/test

I tried these after restarting my computer too, so I don't know whether restarting had an effect or not.

In the sample project guide, each time the mount target is mentioned it is prefixed with "For example...", so I assumed I could use a target located elsewhere like in ~/Desktop

Regards,

FSKit running example project
 
 
Q