Warning: count(): Parameter must be an array or an object that implements Countable in /usr/local/www/admnote/wp-includes/post-template.php on line 284

Cygwin Xサーバ

CygwinのXサーバをSolaris 9と共に使うためのインストールと設定メモ。

たまにしか使わないので、ずっとASTEC-Xの評価版を使っていたものの、使うたびにダウンロードしてくるのも悲しく、けどXサーバのみに4万円出す踏ん切りもつかず、Cygwinを使うことに。

使ってみた感想としては、「個人で使うなら、これで十分。商用Xサーバなど購入する必要なし」。フォントサーバの設定など、多少サーバ側でも設定変更が必要ではあるけれども、設定さえきちんとすればASTEC-Xの代替フォントよりずっときれいに表示できる(もちろん、ASTEC-Xでだってフォントサーバを使えばきれいに表示できるけど)。

何よりフリーなのが素敵。そして、くだらなくも重要な点は、ASTEC-Xと違ってアイコンがダサくない。アイコントレイに入りっぱなしのアイコンがダサいのって、結構気になりますからね。

インストール

  1. Cygwinトップページの右上にある「Install Cygwin now」をクリックしてsetup.exeをダウンロードし、実行。

  2. Select Packagesで、X11以下の次のものを選択(ディスクに余裕があるなら、X11以下すべてをインストールしてもたぶん特に害なし)。

    • WindowMaker
    • X-startup-scripts
    • lesstif
    • xorg-x11-* すべて(ただし、パッケージ説明に「EXPERIMENTAL」なんて怖い文字が入っているモノを除く)
    • xwinclip
    • xwinwm

日本語環境のインストール

  1. Cygwin + X + 日本語アプリケーション を参照し、適宜ファイルをインストール。

Solaris CDEの日本語化設定

特に設定しなくても日本語で表示されてたから、別にいらないかも。

  1. /etc/dt/configディレクトリを作成
  2. /usr/dt/config/Xconfigを/etc/dt/configにコピーし、languageの定義行を次のように追加。

Solarisのフォントサーバ設定

SolarisのOpenWindowsやCDEのフォントは、CygwinのXサーバをインストールしただけだと表示できない。表示のためにはSolaris側でフォントサーバを起動する必要がある(らしい)。どうも、ASTEC-Xなど有償のPC用Xサーバでは、相手がSolarisだと自動的に代替フォントを使用したりしているみたい。だから、あんなダサダサな明朝体なのですね。ほんとはゴシック体で表示しているのに。

  1. Solaris 2.6以降では、フォントサーバはinetdから自動起動されるようにデフォルト設定されている。一度でも誰かがフォントサーバにアクセスするとfsというデーモンが起動され、再起動するまで設定変更しても有効にならない。設定変更前に、デーモンが起動されていないか確認し、起動されていたらkill。

  2. /usr/openwin/lib/X11/fontserver.cfg を編集し、catalogue定義を次のように書き換える(実際には改行なしで記述)。

    フォントサーバにアクセスすればデーモンが自動起動されるので、ファイルを書き換えるだけで設定変更は完了。

  3. 追加設定したフォントがフォントサーバから読めるか確認。svrの部分はフォントサーバのホスト名に置き換える。エラーを出さずにフォント情報が表示されれば正常。

起動スクリプト作成

  1. PCの$HOME/.bashrcに次のaliasを定義(実際には改行なしで記述)。

    xxx.xxx.xxx.xxx はSolarisマシンのIPアドレス、yyy.yyy.yyy.yyy はPCのIPアドレス、svr はSolarisマシンのホスト名に置き換える。

  2. pathの通ったディレクトリにxlocalという名前で次の内容のスクリプトを作成し、実行権を与える。

    この設定で、xsunを実行すればSolarisマシンへのCDEログイン画面が表示され、xlocalを実行すればPC上のデスクトップでXサーバが起動されるようになる。2つを同時に起動可。DISPLAYはCDEログイン用のXサーバがunix:1.0、デスクトップのXサーバがunix:0.0。

tgifコンパイル

拾ってくるセットに入っているのでいらなそうだけど、一応自力でコンパイルしてみたのでメモを。

  1. tgif公式サイトよりパッケージダウンロード
  2. 解凍
  3. Makefile作成。

  4. MakefileのDEFINESに「-D_NO_RAND48 -D_NO_DL_SUPPORT」を追加。

  5. PROGRAMSの行をtgif.exeに書き換え

  6. SYS_LIBRARIESの定義から-ldlをはずす。

  7. コンパイル、インストール。

関連リンク