`bst checkout` prints a stack trace when it lacks permission to make symlinks
Full stack trace is:
jonathanmaw@fafnir:~/workspace/buildstream/buildstream-tests$ bst checkout gnome/gnome-system.bst ~/tmp/
Loading: 511
Resolving: 511/511
Checking: 511/511
Traceback (most recent call last):
File "/home/jonathanmaw/.local/bin/bst", line 9, in
load_entry_point('BuildStream==0.1.dev747-g16926bb.d20170525', 'console_scripts', 'bst')()
File "/home/jonathanmaw/.local/lib/python3.4/site-packages/click/core.py", line 722, in __call__
return self.main(*args, **kwargs)
File "/home/jonathanmaw/.local/lib/python3.4/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/home/jonathanmaw/.local/lib/python3.4/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/jonathanmaw/.local/lib/python3.4/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/jonathanmaw/.local/lib/python3.4/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/home/jonathanmaw/.local/lib/python3.4/site-packages/click/decorators.py", line 27, in new_func
return f(get_current_context().obj, *args, **kwargs)
File "/home/jonathanmaw/workspace/buildstream/buildstream/buildstream/_frontend/main.py", line 343, in checkout
app.pipeline.checkout(directory, force)
File "/home/jonathanmaw/workspace/buildstream/buildstream/buildstream/_pipeline.py", line 394, in checkout
utils.link_files(extract, directory)
File "/home/jonathanmaw/workspace/buildstream/buildstream/buildstream/utils.py", line 270, in link_files
return _process_list(src, dest, files, safe_link, ignore_missing=ignore_missing)
File "/home/jonathanmaw/workspace/buildstream/buildstream/buildstream/utils.py", line 432, in _process_list
os.symlink(target, destpath)
PermissionError: [Errno 13] Permission denied: 'usr/bin' -> '/home/jonathanmaw/tmp/bin'
The problem on my end turned out to be that ~/tmp was owned by root.