synergyインストールメモ

synergyは、一つのマウスとキーボードで複数のマシンを操作できるようにしてくれる。
自分は、MacBookAirとwindowsXPのノートPCとLinuxのデスクトップを持っている。
これらすべてをMacBookAirのキーボードとタッチパッドで操作する。
ここでsynergyでは、
MacBookAirをサーバ、
windowsXPLinuxをクライアントとしている。
 
 

Leopardに対してのパッチを当ててコンパイル

http://d.hatena.ne.jp/zariganitosh/20080318/1205813394
こちらによると、Leopardでは、サーバーが起動してからしばらくして落ちてしまうらしい。
実際にこれを確認して悩んでた。
上記のURLの通り、パッチを当ててコンパイル

$ cd ./synergy-1.3.1
$ patch -p0 < ~/Downloads/synergy.patch
$ patch lib/platform/COSXKeyState.cpp < ~/Downloads/OSX_BusError.patch
$ ./configure
$ make
$ sudo make install

 
 

サーバーの設定

synergy.confを設定する。
設定に使うマシン名は、それぞれに設定されているホスト名が使われる。

まず、どんなマシンがあるのかを設定する。
例として、moe、larry、curlyみたいな設定がされているがこれは消す。

section: screens
hato-no-macbook-air.local:
HATONOTEPC:
localhost.localdomain:
end

次に上記で設定したマシンに関係を設定していく。
今回行なったのは、

という設定。設定ファイルには次のように記述する。

section: links
hato-no-macbook-air.local:
left = localhost.localdomain
right = HATONOTEPC

これに伴い、

という設定にする。

HATONOTEPC:
left = hato-no-macbook-air.local
localhost.localdomain:
right = hato-no-macbook-air.local
end

これで、Macの画面左端にポインタを持っていけば、Linuxの右端にポインタが現れ、
Macの画面右端にポインタを持っていけば、Windowsの左端にポインタが現れるような設定になった。
 
この設定ファイルを「/etc」ディレクトリに入れて、サーバを起動する。

$ /usr/local/bin/synergys --config /etc/synergy.conf

# 動作確認をするときのコマンド
$ /usr/local/bin/synergys -f --config /etc/synergy.conf

 
 

Linuxでのクライアントの起動と停止

Linuxでもソースをコンパイルしてインストール。
クライアントの場合は、設定は特にいらない。
下記のコマンドで、クライアントを起動。

$ /usr/local/bin/synergyc hato-no-macbook-air.local

これでクライアントは起動する。
停止はkillで行なう。

$ ps -x | grep synergy # pidを確認
$ kill

 
 

Windowsのクライアント

Windowsのクライアントはバイナリでインストールした。
サーバのIPもしくはホスト名を指定して起動。
 
 

ログイン時にサーバー起動

http://taishizi.blog105.fc2.com/blog-entry-133.html
自動起動に関してはこちらを参考にさせていただきました。
 
今回はapple scriptを利用してシェルスクリプトをログイン時に起動するように設定した。
まず

「アプリケーション>AppleScriptスクリプトエディタ」

で、エディタを起動して、下記のスクリプトを記述。

do shell script "/usr/local/bin/synergys --config /ect/synergy.conf"

このapple scriptでsynergyサーバーを起動する。
このスクリプトを適当なファイル名で保存する。
ログイン時にこのスクリプトを起動させる設定は

システム環境設定>アカウント>(自分のアカウント)>「ログイン項目」

で、保存したファイルを指定する。
これにより、ログイン時に起動するようになった。
 
 

日本語入力

http://wiki.nothing.sh/page/memo/Synergy
日本語に関してのパッチはこちらを参考にしました。
 
http://www.h5.dion.ne.jp/~pollux/
切り替えに関してはこちらの「CmdSpace」をインストールして対応しました。