[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Cannot execute org babel shell script over tramp to remote termux (Andro

From: Matt Mello
Subject: Cannot execute org babel shell script over tramp to remote termux (Android) due to tmpdir issues
Date: Wed, 4 Jul 2018 20:11:04 -0700

I have an Android device (not rooted) with termux installed on it, running sshd, where an org file resides.
On my mac desktop, I have installed (GNU Emacs 26.1 (build 1, x86_64-apple-darwin14.5.0, NS appkit-1348.17 Version 10.10.5 (Build 14F2511)) of 2018-05-30).

Within Emacs, I am opening (visit via C-x C-f) the org file using tramp that exists on the Android/termux machine.  (I have tried the following with both the scp and the ssh methods.)
That org file has a babel bash script in it.

When I hit C-c C-c in the bash script, it attempts to run it on the remote termux/Android environment and always gives this error:

Tramp: Decoding remote file ‘/scp:phone#8022:/tmp/ob-input-NNFaG8’ using ‘base64 -d -i >%s’...failed
tramp-file-name-handler: Couldn’t write region to ‘/scp:phone#8022:/tmp/ob-input-NNFaG8’, decode using ‘base64 -d -i >%s’ failed

I noticed in
that the following is recommended:

When the Android device is not ‘rooted’, specify a writable directory for temporary files:
     (add-to-list 'tramp-remote-process-environment "TMPDIR=$HOME")

So, I have added that to my init script, but I still get the error.  
No matter what I do, tramp always has tramp-tmpdir set to /tmp.

I even tried reading tramp.el to see what is going on, but I'm an elisp n00b, and keep getting lost in the weeds.

Any suggestions as to how to FORCE the tmpdir for a remote?

--- Matt

reply via email to

[Prev in Thread] Current Thread [Next in Thread]