Closed babaric-dev closed 6 months ago
Can you please post the strace
log of eww when it throws the 111 error?
strace
log (only last 63K bytes)Ok, it seems like the error happens in server/daemon process of eww.
It obtains the message "failed to open window bar
\n\nCaused by:\n Connection refused (os error 111)" from socket.
Can you please get its (server/daemon process) strace log?
There is no error 111 or TMPDIR mentioning. Let's wait for somebody else because I did not found something I can help with.
strace -f eww daemon
[pid 7814] socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 22
[pid 7814] connect(22, {sa_family=AF_UNIX, sun_path="/tmp/.X11-unix/X1"}, 35) = -1 ECONNREFUSED (Connection refused)
[pid 7814] close(22) = 0
[pid 7814] socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 22
[pid 7814] connect(22, {sa_family=AF_UNIX, sun_path="/tmp/.X11-unix/X1"}, 35) = -1 ENOENT (No such file or directory)
Some hardcoded paths may be introduced by external dependencies of rust packages...
This issue continues #19912, which reports the "os error 111" message when running
eww open [window]
in Termux.Observations:
eww
starts successfully when invoked with$TMPDIR
binded to/tmp
usingproot
.eww
throws the error when$TMPDIR
is not binded withproot
.eww
also throws the error whenproot
is not used at all (original issue).Patch:
A patch exists to remove the hardcoded
/tmp
path: https://github.com/termux/termux-packages/blob/157aaa43f7b656a83cea45ba1d908b590a18fbe0/x11-packages/eww/fix_tmp_hardcoded_path.patch#L7-L8This patch has an effect, as evidenced by the following:
eww logs
shows the correct paths being loaded, including the IPC socket in/data/data/com.termux/files/usr/tmp/eww-server_d38055b3e89a3ab8
.ls $TMPDIR
confirms the the IPC socket indeed exists.Conclusion:
Despite the patch, the
eww
still uses/tmp
under the hood for some reason.I have limited knowledge of Rust and need help for diving further into the issue. I suspect it might be related to the packages (crates) used by the project. Any help would be greatly appreciated.