2015-05-09

X.Orgの設定を探る

今まで有耶無耶にググって使えるようにしてきたX.Orgの設定ですが、LMDE2 Betsyのインストール時にノウハウが違ってたのでどう解決したもんかなと思いちょっと調べたので、今回備忘がてら書き残しておこうかと。

xorg.confはmanがあった
「あれが動かないんだけどどうすればいいの?」という疑問は基本的にRTFM問題だったというオチであります。
なんで、疑問を持ったらman 5 xorg.confしてからという話なんですが、やっぱりというかなんと言うかそもそもmanが長いのも確かで、掻い摘んで設定ファイルをどこから読むのかなーというところを見ても、一般ユーザーの場合
  • /etc/X11/<cmdline>
  • /usr/etc/X11/<cmdline>
  • /etc/X11/$XORGCONFIG
  • /usr/etc/X11/$XORGCONFIG
  • /etc/X11/xorg.conf
  • /etc/xorg.conf
  • /usr/etc/X11/xorg.conf.<hostname>
  • /usr/etc/X11/xorg.conf
  • /usr/lib/X11/xorg.conf.<hostname>
  • /usr/lib/X11/xorg.conf
追加configファイルは
  • /etc/X11/<cmdline>
  • /etc/X11/xorg.conf.d

rootユーザーの場合
  • <cmdline>
  • /etc/X11/<cmdline>
  • /usr/etc/X11/<cmdline>
  • $XORGCONFIG
  • /etc/X11/$XORGCONFIG
  • /usr/etc/X11/$XORGCONFIG
  • /etc/X11/xorg.conf
  • /etc/xorg.conf
  • /usr/etc/X11/xorg.conf.<hostname>
  • /usr/etc/X11/xorg.conf
  • /usr/lib/X11/xorg.conf.<hostname>
  • /usr/lib/X11/xorg.conf
追加configファイルは
  • <cmdline>
  • /etc/X11/<cmdline>
  • /etc/X11/xorg.conf.d
それでもって、ベンダ提供とかサードパーティーとかローカル管理者がファイルを置くべきディレクトリは
  • /usr/share/X11/xorg.conf.d
と書かれているので、実は割とどこにあっても読み込んでくれそうだなぁという感覚でFHSに則るとより良いかなというのがmanを読んだ後の感想です。

で、LMDEではどこに置けばいいの?
先週LMDEをクリーンインストールした時に置いた場所は/usr/share/X11/xorg.conf.dなんですが[1]、「ローカル管理者が置くファイル」に該当するのでここにしたというのと、DebianのWiki[2]でもここになってたからというのが理由です。

かつてのDebianではどうなっていたのか?
ところが、「ThinkPad トラックポイント Linux」とかで探すと/usr/share/X11/xorg.conf.dに置いてる記事が(日本語では)1件もなかったので、昔は違ったんだろうなぁという事情が見えてきます。
件のDebianのWikiの「TrackPoint scrolling on Squeeze and later」を見ると、gpointing-device-settingsパッケージを入れる記述がありますが、lenny以降はorphanで2011年の更新が最後になっている状態です。
xinputパッケージを使う場合は~/.xsessionrcにコマンドを書いておく方法が書かれています。
lennyでは/etc/X11/xorg.confの中のConfigured Mouseセクションに書き足す方法が書かれています。

設定値はどうやれば探れるのか?
20-thinkpad.confに記述する値はIdentifierとかMatchProductとかMatchDevicePathとかがいきなりしれっと書かれていますが、これらの値は本当はどうやって見つけるべきなのか。
DebianのWikiにコマンドが書かれています。
# dmidecode -t 21
# dmidecode 2.12
SMBIOS version fixup (2.33 -> 2.3).
SMBIOS 2.3 present.

Handle 0x002E, DMI type 21, 7 bytes
Built-in Pointing Device
    Type: Track Point
    Interface: PS/2
    Buttons: 3
# cat /proc/bus/input/devices
(snip)
I: Bus=0011 Vendor=0002 Product=000a Version=0000
N: Name="TPPS/2 IBM TrackPoint"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input7
U: Uniq=
H: Handlers=mouse0 event7
B: PROP=0
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
(snip)
これらの値を持ってくるのが正解というところでしょうか。
dmidecodeコマンドを初めて知ったんですが、type(-t/--type)で0(BIOS)から42(Management Controller Host Interface)まで情報が見えるのでこれから使ってみようかなと思います。

[1] http://utimukat55.blogspot.jp/2015/05/lmde-2-betsythinkpad.html
[2] https://wiki.debian.org/InstallingDebianOn/Thinkpad/Trackpoint のTrackpoint Scrolling on Wheezy or Jessie

2015-05-06

LMDE 2 Betsyを新しくないThinkPadに入れてみた

概要
今までLMDE UP8を入れていたThinkPad X40に先頃リリースされたLMDE 2 Betsy(MATE)をクリーンインストールしました。
apt-get dist-upgradeで更新できるかなと思ってトライはしてみたんですが、更新後PCを再起動したらGRUBの後kernel起動ができなくなってしまったので、あえなくクリーンインストールとなりました。
インストール自体はISOイメージをUSBメモリ(4GB)にddで焼いて、USBメモリから起動、起動後にHDDへインストールの手順で行いました。手順はこちらを参考に。[1]
インストールしたのは今回もMATEで、結構古いPCに入れるというのと軽快さを重視しての選択です。アーキテクチャはPentiumMなので選択肢は必然的に32bitのみ。

インストール後にすること
いろいろとインストール後にすることはあるんですが、今まで弊blogに書いてきたことがそのまま今回も使えたりしたので、参照するだけのところは基本的にはリンクを貼るだけにします。
  • aptの参照ミラーを日本に切り替える
  • 日本語入力できるようにする(fcitx) [2]
  • ネットワーク(無線LAN)を使えるようにする
  • sudoではなくsuでrootユーザになれるようにする [3] ※ただし、usermodでsudoグループから削除できなくなってた
  • デスクトップ/ダウンロード/テンプレート/公開/ドキュメント/音楽/画像/ビデオディレクトリをDesktop/Download/Template/Public/Document/Music/Pictures/Videosディレクトリに変更する
  • ThinkPadのトラックポイントのスクロールを有効にする
  • MintUpdateの自動起動を無効にする
  • スワップファイルをファイルシステム上に作る [4]
  • 日本語フォントとしてVLゴシック、モトヤ2種、Ricty Diminishedをインストール
  • ChromiumブラウザとPPAPI版のFlashのインストール(Flashのインストールについて[5])

aptの参照ミラーを日本に切り替える
Betsyのデフォルトのapt-lineは/etc/apt/sources.list.d/official-package-repositories.listに記載されていて、そのままでもこれといって問題はないんですがパッケージの取得の効率化のためにミラーを日本に切り替えます。diffは以下。
--- official-package-repositories.list.org    2015-04-07 02:02:43.000000000 +0900
+++ official-package-repositories.list    2015-05-05 10:22:31.050908564 +0900
@@ -1,7 +1,7 @@
 deb http://packages.linuxmint.com betsy main upstream import

-deb http://ftp.us.debian.org/debian jessie main contrib non-free
-deb http://ftp.us.debian.org/debian jessie-updates main contrib non-free
+deb http://ftp.jp.debian.org/debian jessie main contrib non-free
+deb http://ftp.jp.debian.org/debian jessie-updates main contrib non-free
 deb http://security.debian.org jessie/updates main contrib non-free

 deb http://www.deb-multimedia.org jessie main non-free
各パッケージの取得前に一度apt-get update、apt-get upgradeしておきましょう。

ネットワーク(無線LAN)を使えるようにする
デフォルトの状態で無線LANアダプタを認識していたので、ドライバのインストールとかは必要ありませんでした。
デスクトップ右下がこんな感じになっているので、クリックするとアクセス可能なSSID一覧が表示されます。
こんな感じのダイアログがでるので、PSKとかを入力して接続完了。

デスクトップ/ダウンロード/テンプレート/公開/ドキュメント/音楽/画像/ビデオディレクトリをDesktop/Download/Template/Public/Document/Music/Pictures/Videosディレクトリに変更する
ロケールに合わせて日本語でディレクトリ作ってくれるんですが、ターミナルからcdで移動するときにIME切り替えないといけないのが超絶めんどくさいので、以下のコマンドで変更します。
$ LANG=C xdg-user-dirs-gtk-update
コマンド実行後、ダイアログが表示されるので適切に操作して完了。

ThinkPadのトラックポイントのスクロールを有効にする
デフォルトでは左右ボタンと中ボタン(貼り付け)は機能しますが中ボタンドラッグのスクロールができないので、/usr/share/X11/xorg.conf.d/20-thinkpad.conf というファイルを作って以下の内容を記述します。
 Section "InputClass"
     Identifier "Trackpoint Wheel Emulation"
     MatchProduct       "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|ThinkPad Compact USB Keyboard with TrackPoint|USB Trackpoint pointing device"
     MatchDevicePath    "/dev/input/event*"
     Option             "EmulateWheel"          "true"
     Option             "EmulateWheelButton"    "2"
     Option             "Emulate3Buttons"       "false"
     Option             "XAxisMapping"          "6 7"
     Option             "YAxisMapping"          "4 5"
 EndSection
詳細は別途エントリにて。


MintUpdateの自動起動を無効にする
LinuxMintの特徴の一つでもあるMintUpdateですが、更新タイミングとかが気に食わなかったので自動起動を停止しました。
デスクトップ左下Menu→設定→自動起動するアプリ を選ぶと以下の画面になるので、
 「自動起動するプログラム」タブの中のMintUpdateのチェックを外して閉じます。

日本語フォントとしてVLゴシック、モトヤ2種、Ricty Diminishedをインストール
これまでのスクリーンショットの日本語フォントで大丈夫な方は作業不要です。
個人的には見やすさ重視のVLゴシック、改まったところで使うモトヤ、エディタとかで使うRicty Diminishedを使う予定なので、これらをインストールします。
ただし、Ricty DiminishedはDebian GNU/Linuxのjessieには入らなかったので、パッケージを直接ダウンロード[6]してdpkgコマンドでインストールしました。
# apt-get install fonts-vlgothic fonts-motoya-l-cedar fonts-motoya-l-maruberi
# dpkg -i /home/user/Downloads/fonts-ricty-diminished_3.2.4-1_all.deb
また、Rictyフォントのインストールはこちら[7]で紹介しています(今回検証していません)

Chromiumブラウザのインストール
BetsyはデフォルトでFirefoxがインストールされています。Chromiumはメモリ使用量がきついのですが一応インストールしています。
# apt-get install chromium
てなわけで、インストール後に最低限必要な手順を備忘を兼ねて書き出しました。
今までLMDE UP8使ってて今回Betsyにした感じだと、正直何が変わったのか体感できてないんですが(汗)、動作は軽快だし今のところ悪いところは見つかってないです。
きっとCinnamonの方だと色々と変わってるんじゃないかなーという気はします。
何よりアップデートが掛からないと使うことができないというのが更新の理由ですね。

[1] http://www.tecmint.com/linux-mint-debian-edition-betsy-cinnamon-installation-customization/
[2] http://utimukat55.blogspot.jp/2014/06/lmde-up8matefcitx.html
[3] http://utimukat55.blogspot.jp/2013/10/sudo.html
[4] http://utimukat55.blogspot.jp/2014/05/linuxswapswap.html
[5] http://utimukat55.blogspot.jp/2014/06/debianchromiumflash.html
[6] https://packages.debian.org/stretch/all/fonts-ricty-diminished/download
[7] http://utimukat55.blogspot.jp/2014/01/ricty.html