libtmux is picking up the wrong tmux version
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
Research direction
Read libtmux/common.py around line 241 and the linked tmuxp report first; inspect how which combines default_paths with append_env_path. Done means the selected tmux executable follows the user's intended environment path rather than /usr/bin/tmux, addressing the reported protocol mismatch.
Written by the indexing model from the issue text.
Description
See: https://github.com/tmux-python/tmuxp/issues/794
Started new server, protocol mismatch. tmuxp seems to be using /usr/bin/tmux instead of what I have aliased.
$ tmux -V
tmux.orig 2.8
$ /usr/bin/tmux -V
tmux 1.8
The problem for me is https://github.com/tmux-python/libtmux/blob/master/libtmux/common.py#L241
Your search paths are then placing the system paths AFTER the custom patch which tmux pulls up:
241 def __init__(self, *args: t.Any, **kwargs: t.Any) -> None:
242 tmux_bin = which(
243 "tmux",
244 default_paths=kwargs.get(
245 "tmux_search_paths",
246 ["/bin", "/sbin", "/usr/bin", "/usr/sbin", "/usr/local/bin"],
247 ),
248 append_env_path=kwargs.get("append_env_path", True),
249 )
This really should be the other way around.
$ which tmux
tmux=/apollo/env/envImprovement/bin/tmux
I'd hate to have to fork this, so can we just perform a subprocess.run which tmux instead? Why do we need to search paths?
tmuxp:
-------------------------
environment:
dist: Linux-5.4.204-124.362.amzn2int.x86_64-x86_64-with-glibc2.2.5
arch: x86_64
uname: Linux; dev-dsk-deguzim-1a-fa82568b.us-east-1.amazon.com; 5.4.204-124.362.amzn2int.x86_64
version: #1 SMP Wed Jul 13 03:24:31 UTC 2022
-------------------------
tmux version: 1.8
libtmux version: 0.12.0
tmuxp version: 1.12.1
tmux path: /usr/bin/tmux
tmuxp path: /home/deguzim/.local/lib/python3.7/site-packages/tmuxp
shell: /bin/zsh
-------------------------
tmux sessions:
protocol version mismatch (client 7, server 8)
tmux windows:
protocol version mismatch (client 7, server 8)
tmux panes:
protocol version mismatch (client 7, server 8)
tmux global options:
protocol version mismatch (client 7, server 8)
tmux window options:
protocol version mismatch (client 7, server 8)
- Dominant language
- Python
- Stars
- 1.2k
- Forks
- 127
- Avg merge
- 2h 13m
- Merged PRs (30d)
- 1
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from tmux-python/libtmux
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
tmux-python/libtmux#759 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tmux-python/libtmux#745 · 2 comments ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
tmux-python/libtmux#744 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
tmux-python/libtmux#731 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tmux-python/libtmux#654 ·
All issues in tmux-python/libtmux
Similar issues
-
essnmx good first issue
Difficulty 1/5 Under an hour Newbie friendliness 95/100
-
[Feature] 奇物选择添加优先级 Open
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
syfoud/Simulated_Scepter#174 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Giskard-AI/giskard-oss#2840 · 1 comment ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success Openarea: repo bug perceived difficulty: 2
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
yeti-platform/yeti#1380 ·