Mktemp: failed to create file via template '/home/mersdk/.mb2.lock.XXX': Permission denied

Recently i’ve started getting this error when trying to build with sfdk:
mktemp: failed to create file via template '/home/mersdk/.mb2.lock.XXX': Permission denied

A reinstall of build targets did not fix it; but a reinstall of the whole SDK did.
…but that is not sustainable to have to do every time.

Any ideas?

Where exactly is /home/mersdk/ anyway? It is not on my host machine of course.

Maybe in the docker container? Or in one of the qemu images…

I was guessing the build docker image, yes… but reinstalling the build targets did nothing to help, and the problem came back from a restart.
I also can’t reach build-shell, since it too fails this way.

After some faffing about with docker i found that i can docker exec sailfish-sdk-build-engine_attah ...
Not sure if it is the actual solution, but my /home/merdsk was owned by root:root. So a chmod o+rwx seems to have done the trick.

I wonder how it ended up like this - especially since it worked fine up until reboot.

1 Like

I always assumed it was ‘~/SailfishOS/mersdk/’ where the Build Engine stuff (Snapshots, etc) live. But that’s not with a docker setup but with the vbox setup. I’d like to know where mb2 lives?

To answer my question, it’s part of the platform sdk, which I do not have installed. Quelle surprise!

I had exactly the same problem and it began round about 10 days ago. Executing chmod in the virtual machine worked for me, too. I had to add “-R” to get rid of any build errors.
No glue how i ran into it neither. Maybe docker.io and containerd updates that where installed on my system at 2023-08-07 have something to do with it. :thinking: Je ne sepa.