No Such Blog or Diary
GDMでローカルサーバ立ち上げない+α
- 2005-04-19 (Tue)
- ソフトウェア ( Linux/coLinux Windows )
coLinux で gdm を使うときにはローカルのXサーバを勝手に立ち上げてほしくない.でも,それをやるには --no-console のオプションを渡さなければならない.
ということで,/usr/X11R6/bin/gdm-nc というファイルを作って,中身を
#!/bin/bash /usr/bin/gdm --no-console
としておいて,/etc/rc.conf 内の DisplayManagerの起動コマンドをこれに変えてしまう.
DISPLAYMANAGER="gdm-nc"
これでローカルにXサーバが起動しなくなる.めでたし.
ついでに,kinput2 を起動させるために ~/.xprofile で
export XMODIFIERS="@im=kinput2" kinput2 &
としておくか.(ふつうはどこで設定するのだらう?)
- Comments: 0
- TrackBack (Close): -
CapsLock さようなら
いい加減 CapsLock がうざくなってきたので過去やっていたように Ctrl に変身してもらう事にした.
設定はレジストリエディタでマッピングをかえればよく,変える値は HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Control -> Keyboard Layout -> Scancode Map である.最初はエントリが無いのでバイナリ値のエントリを作る必要があるはず.
で,その中身はこんなんで.最初の8バイトがヘッダ,次にエントリ数,続いてマッピングのエントリとなる.エントリの最後には終端記号として 0 が必要らしい.
00 00 00 00 ; header version 00 00 00 00 ; header flags 02 00 00 00 ; header エントリ数(including Terminate) 1d 00 3a 00 ; エントリ: CapsLock -> 左Ctrl 00 00 00 00 ; Terminalte
ちなみに,リトルエンディアンなのでキーマップのエントリは始め2バイトが変更先で後ろ2バイトが変更元.詳しくは Scan Code Mapper for Windows で.それぞれのキーのスキャンコードは以下のとおりらしい.ここから一覧が取れる.(Scan Code Set 1のほう)
Backspace 00 0E Tab 00 0F CapsLock 00 3A Enter 00 1C Left Shift 00 2A Right Shift 00 36 Left Ctrl 00 1D Left Alt 00 38 Space Bar 00 39 Right Alt E0 38 Right Ctrl E0 1D NumLock 00 45 Esc 00 01 F1~F10 00 3B ~ 00 44 F11 00 57 F12 00 58 Scroll Lock 00 46 Left Win key E0 5B Right Win key E0 5C Application Key E0 5D Insert E0 52 Delete E0 53 Left Arrow E0 4B Home E0 47 End E0 4F Up Arrow E0 48 Down Arrow E0 50 Page Up E0 49 Page Down E0 51 Right Arrow E0 4D DBE_KATAKANA 00 70 (カタカナ ひらがな) DBE_SBCSCHAR 00 77 (???) CONVERT 00 79 (変換) NONCONVERT 00 7B (無変換)
これでWindowsキーの無いIBMマシンでもエクスプローラが楽に立ち上げられるぞ.
- Comments: 0
- TrackBack (Close): -
フック
ふとフックが気になって Windows のフック登録の API を調べてみた.どうやら SetWindowsHookEx という名前らしい.グローバルにフックするにはDLLを作る必要があるそうで面倒かもしれないけど今度これで遊んでみよう.ここらへんが参考になるかなぁ?
- Comments: 0
- TrackBack (Close): -
VNCで合わせ鏡
誰でも考えるであろうことをふと思いつき,実際にやってみた.
何をやったかというと,Windows の VNC Client から coLinux につないで X (Xvnc) を立ち上げ,そのなかから Windows 側で立ち上げた VNC Server に VNC Client で接続するということをした.これをやると,Windows で画面描画をした際に coLinux 内の VNC Client の描画が起こり,その描画は Windows の VNC Client に伝わり Windows 側の新たな描画を生じる.あとはこのサイクルが描画イベントが画面領域の外に出るまで繰り返され,合わせ鏡と同じ現象となる.
ちなみに結果はこんなもん.(ただ単に Window が重なっているようにしか見えない...)
- Comments: 0
- TrackBack (Close): -
coLinuxes -- 複数起動
- 2005-04-06 (Wed)
- ソフトウェア ( Linux/coLinux Windows )
無意味に coLinux を複数起動して通信させてみた.
やり方としては TAPアダプタを複数用意してブリッジ接続してやるだけ.TAPアダプタの増やし方は,[コントロールパネル]->[ハードウェアの追加]->[新しいハードウェア デバイスの追加]->[一覧から選択]->[ネットワーク アダプタ]->[TAP-Win32 Provider(coLinux)]->[TAP-Win32 Adapter V8(coLinux)] で.追加されたら [コントロールパネル]->[ネットワーク接続] で名前を TAP1, TAP2, ... とかに変えておく.
あとは,coLinux の設定XMLファイルのほうで,
<network index="0" name="TAP2" type="tap" />
のように name 属性を接続の名前 TAP1, TAP2, .. などに重ならないように指定するだけ.MACは自動でランダムに割り当てられるはずなので指定なし.
- Comments: 0
- TrackBack (Close): -
xfs が入ってなかった
- 2005-04-06 (Wed)
- ソフトウェア ( Linux/coLinux )
Gentoo で xorg-x11 を GRP インストールしたら xfs が入ってなかった... しょうがないからソースから作り直す.念のため USE に font-server を追加して.
で,まあ,ちゃんとコンパイルできたわけだが,今度は /etc/X11/fs/config が空... 面倒なのでここに xfs の config を書いておく.
# # X Font Server configuration file # # allow a max of 4 clients to connect to this font server client-limit = 4 # no tcp, use sockets! #no-listen = tcp # when a font server reaches its limit, start up a new one clone-self = on # alternate font servers for clients to use #alternate-servers = foo:7101,bar:7102 # where to look for fonts # Some of these are commented out, i.e. the TrueType and Type1 # directories in /usr/share, because they aren't forced to be # installed alongside X. catalogue = /usr/share/fonts/75dpi, /usr/share/fonts/100dpi, /usr/share/fonts/shinonome, /usr/share/fonts/monafont, /usr/share/fonts/mplus, /usr/share/fonts/aquafont, /usr/share/fonts/aquapfont, /usr/share/fonts/mikachan-font, /usr/share/fonts/artwiz:unscaled, /usr/share/fonts/misc, /usr/share/fonts/Type1, /usr/share/fonts/util, /usr/share/fonts/local, /usr/share/fonts/TTF, /usr/share/fonts/cyrillic # in 12 points, decipoints default-point-size = 120 # 100 x 100 and 75 x 75 default-resolutions = 75,75,100,100 # how to log errors use-syslog = on # font cache control, specified in KB cache-hi-mark = 2048 cache-low-mark = 1433 cache-balance = 70
とりあえず,これで xfs, gdm, xinetd, vncserver を設定して coLinux + VNC の GUI 環境ができた.
ちなみに,gdm の立ち上げうサーバを Xvfb :1 とかしてディスプレイ 0 以外にしておくと native に起動したときに startx でパラメータを渡さなくていいから楽(そうでないと startx -- :1 とかしてディスプレイ番号を指定しなければならない)
- Comments: 0
- TrackBack (Close): -