I understand why the error is happening. I understand snap is strict about this. However, I would expect there would be some way to manually tell snap that it's ok to access a particular file, or add a file to it's environment, or something like that to get around the error.
I'm working with the spark-client snap app. It's been working fine. I just added a .inputrc file to my home dir, and now it fails because inside spark-client.spark-shell, it being a REPL, there is code that sees the file, but can't read it. I notice that when running snap run --shell spark-client.spark-shell
, the snap app can see all the files, but it can't read them (cat .inputrc
-> permission denied). Is there some how I can get around this? Something like:
- Give it access?
snap connect {something with :personal-files}
: can't because only the snap author can add plugs/slots?
- Copy the file into the snap app? Can't because
/snap/spark-client/current
is a mounted, read-only file system.
I saw someone suggest running the command directly and not as a snap command. That would be ok with me. I found the command /snap/spark-client/current/opt/spark/bin/spark-shell
but apparently something runs around it first because there are env vars it's expecting that aren't set, so I can't just run it directly. Is there a straightforward way to figure out exactly what is run as a snap app so I can run that not within snap?