Usually I'm avoiding snap-based applications, but sometime I need them.
For example - Markdown Lint Tool is shipped only as Snap named mdl
.
It works great when files are in home folder -
$ echo "# header" > ~/test.md
$ /snap/bin/mdl ~/test.md ; echo $?
0
but it fails when file is located in /tmp
directory:
$ echo "# header" > /tmp/test.md
$ cat /tmp/test.md
# header
$ /snap/bin/mdl /tmp/test.md
/snap/mdl/140/lib/ruby/gems/2.4.0/gems/mdl-0.9.0/lib/mdl/doc.rb:57:in `read': No such file or directory @ rb_sysopen - /tmp/test.md (Errno::ENOENT)
from /snap/mdl/140/lib/ruby/gems/2.4.0/gems/mdl-0.9.0/lib/mdl/doc.rb:57:in `new_from_file'
from /snap/mdl/140/lib/ruby/gems/2.4.0/gems/mdl-0.9.0/lib/mdl.rb:75:in `block in run'
from /snap/mdl/140/lib/ruby/gems/2.4.0/gems/mdl-0.9.0/lib/mdl.rb:73:in `each'
from /snap/mdl/140/lib/ruby/gems/2.4.0/gems/mdl-0.9.0/lib/mdl.rb:73:in `run'
from /snap/mdl/140/lib/ruby/gems/2.4.0/gems/mdl-0.9.0/bin/mdl:10:in `<top (required)>'
from /snap/mdl/140/bin/mdl:23:in `load'
from /snap/mdl/140/bin/mdl:23:in `<main>'
For this particular application there are no options for snap connect
:
$ snap connections | grep mdl
home mdl:home :home -
Also I can't install it as classic:
$ snap install mdl --classic
Warning: flag --classic ignored for strictly confined snap mdl
mdl 0.9.0 from Snapcrafters installed
What should I do to give Snap application full access to the /tmp
folder?
Does it happen by Snap design or not?