Closed yjcup closed 5 months ago
Hello @yjcup π
For some reason the detection logic believes that the path to the tmux
binary is /mnt/rv/[rosetta]
.
Are you using Vagrant
or Virtualbox
on Apple Silicon by chance?
If you don't use Oh my tmux! and you launch a tmux session, then type:
$ readlink "/proc/$(tmux display -p '#{pid}')/exe"
What does it print?
And the output of this command please
$ lsof -b -w -a -d txt -p $(tmux display -p '#{pid}') -Fn
Are you using
Vagrant
orVirtualbox
on Apple Silicon by chance?If you don't use Oh my tmux! and you launch a tmux session, then type:
$ readlink "/proc/$(tmux display -p '#{pid}')/exe"
What does it print?
Yes, my computer is an M2 mac, but I use ubuntu22 with x86 architecture on it through docker
yjc@ubuntux86:~$ readlink "/proc/$(tmux display -p '#{pid}')/exe"
/mnt/rv/[rosetta]
yjc@ubuntux86:~$ lsof -b -w -a -d txt -p $(tmux display -p '#{pid}') -Fn
p8932
ftxt
n/mnt/rv/[rosetta]
This is what I believed, this is really broken.
What if you issue
$ ps aux | grep tmux
?
This is what I believed, this is really broken.
What if you issue
$ ps aux | grep tmux
?
yjc@ubuntux86:~$ ps aux | grep tmux yjc 9301 0.0 0.0 1200328 4224 pts/1 S+ 19:53 0:00 [rosetta] /usr/bin/grep grep --color=auto tmux
I mean when tmux is running π
But in any case I'm much surprised neither readlink
nor lsof
work
I mean when tmux is running π
But in any case I'm much surprised neither
readlink
norlsof
work
Okay, I have already configured it through tmux.conf, and it works pretty well now π
Okay, I have already configured it through tmux.conf, and it works pretty well now
What do you mean?
If possible,
Could you please undo your changes and see if the gh-737
branch helps?
If possible,
Could you please undo your changes and see if the
gh-737
branch helps?
I revoked the previous configuration, and then git clone https://github.com/gpakosz/.tmux.git -b gh-737,
after entering tmux,source ~/.tmux.conf
'TMUX_PROGRAM="$(LSOF=$(PATH="$PATH:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" command -v lsof[0/0]
SOF -b -w -a -d txt -p 1892 -Fn 2>/dev/null | perl -n -e "if (s/^n((?:.(?!dylib$|so$))+)$/\1/g && s/(?
:\s+\([^\s]+?\))?$//g) { print; exit } } exit 1; {" || readlink "/proc/1892/exe" 2>/dev/null)"; [ -f "
$TMUX_PROGRAM" ] || TMUX_PROGRAM="$(command -v tmux || printf tmux); "$TMUX_PROGRAM" -S /tmp/tmux-501/
default set-environment -g TMUX_PROGRAM "$TMUX_PROGRAM"' returned 2
'"$TMUX_PROGRAM" -S /tmp/tmux-501/default set-environment -g TMUX_SOCKET "/tmp/tmux-501/default"' retu
rned 127
'"$TMUX_PROGRAM" set-environment -g TMUX_CONF $(for conf in "$HOME/.tmux.conf" "$XDG_CONFIG_HOME/tmux/
tmux.conf" "$HOME/.config/tmux/tmux.conf"; do [ -f "$conf" ] && printf "%s" "$conf" && break; done)' r
eturned 127
'"$TMUX_PROGRAM" set-environment -g TMUX_CONF_LOCAL "$TMUX_CONF.local"' returned 127
'"$TMUX_PROGRAM" source "$TMUX_CONF_LOCAL"' returned 127
I'm sorry I made a typo, I pushed in the gh-737
branch again.
The part I added is [ -f "$TMUX_PROGRAM" ] || TMUX_PROGRAM="$(command -v tmux || printf tmux)"
.
lsof
, TMUX_PROGRAM
will be set to mnt/rv/[rosetta]
TMUX_PROGRAM
will be set to the output of command -v tmux
command -v
test, TMUX_PROGRAM
will be set to just "tmux"Could you please try again?
I'm sorry I made a typo, I pushed in the
gh-737
branch again.The part I added is
[ -f "$TMUX_PROGRAM" ] || TMUX_PROGRAM="$(command -v tmux || printf tmux)"
.
- In your case, after having successfully run
lsof
,TMUX_PROGRAM
will be set tomnt/rv/[rosetta]
- Which will fail the `[ -f "$TMUX_PROGRAM" ] test because that file doesn't exist
- And in turn
TMUX_PROGRAM
will be set to the output ofcommand -v tmux
- And if
command -v
test,TMUX_PROGRAM
will be set to just "tmux"Could you please try again?
The configuration is working properly and it feels greatπ. Thank you
Thanks so much for testing. I'll keep this issue open until I merge this workaround
version: