読者です 読者をやめる 読者になる 読者になる

msys2のtmuxに手を入れて云々かんぬん

WindowsのminttyからLinuxsshしてscreenを使っているので
ウィンドウ1つを使いまわせるのですが

f:id:moguriso:20150708042217p:plain

Windowsでadbするときにcmdするかminttyを別ウィンドウで開いて、ウィンドウ2つを行き来することが出てきました。これは何ともウザったいので、Windowsのminttyにscreenを動かせないか試行錯誤してみたものの

https://gist.github.com/moguriso/9c1c39bc97a4d299608f

頑張っていじくった割には

(gdb) r
Starting program: /home/u8kun/repo/screen/src/screen.exe
[New Thread 61932.0x126f0]
[New Thread 61932.0x12f70]
[New Thread 61932.0xbca4]
[New Thread 61932.0x75ec]

Program received signal SIGABRT, Aborted.
CheckTtyname (tty=<optimized out>) at tty.c:1202
warning: Source file is more recent than executable.

敢え無くabortしました。*1

取り敢えず代替手段がないものかとtmuxを入れてみたところ

$ pacman -S tmux
$ tmux
can't create socket: Permission denied

という感じで動きませんでした。↓を参考に

qiita.com

$ tmux -S /tmp/tmux-[uid]/default

とすると動くのですが、なんか微妙です。。。

何となくコードを追っかけて見たところ、単に/tmpにディレクトリを作るときのデフォルト権限が

  • linux → 0700
  • msys → 0755

になってて、tmuxは起動時に0700(と言うか、otherが0)を期待しているのでエラーになってるだけの模様で、した。。

既にissue自体は上がっていたので情報をポストしたら誰か直してくれないかなと思ったのですが、よく考えたら自分で直せそうなので直しましたMacでも似たようなことがあるかもしれない気がしなくも無いですがMacでtmux使うことがあるとは思えないので判りません。。。

テスト前に部屋の模様替えしてる気分ですが。。。orz

*1:直す気力ありません...