☆Startup-Managerに頼らないUsplashの変更

☆Karmic のusplashをカスタマイズではUsplashを切り替えるためにStartup-Managerを使用しました。
しかし、Startup-Mangerは起動しただけで update-grub が走るようでやたらディスクアクセスが発生しますし/boot/grub/grub.cfgのタイムスタンプが更新されていたりします。
そこで、"update-alternatives"でなんとかしようと思い、検索しました。
とてもわかりやすいサイトが出てきたので、これを参考にして作業してみます。

参考サイト: コマンドを便利に切り替える update-alternatives 使いこなし講座

2010/03/03 注追記:☆Karmic のusplashをカスタマイズで行った /etc/default/grub の変更を反映するためには下記の手順だけでなくupdate-grubの実行が必要です。

●現在の状態の確認

update-alternatives --display を使います。

$ update-alternatives --display usplash-artwork.so
usplash-artwork.so - auto mode
 リンクは現在 /usr/lib/usplash/usplash-theme-xubuntu.so を指しています
/usr/lib/usplash/usplash-theme-ubuntu-mono.so - 優先度 20
/usr/lib/usplash/usplash-theme-ubuntu.so - 優先度 10
/usr/lib/usplash/usplash-theme-xubuntu.so - 優先度 55
現在の `最適' バージョンは /usr/lib/usplash/usplash-theme-xubuntu.so です。


このとき設定ファイルがどうなっているか確認します。

$ cat /var/lib/dpkg/alternatives/usplash-artwork.so 
auto
/usr/lib/usplash/usplash-artwork.so

/usr/lib/usplash/usplash-theme-ubuntu-mono.so
20
/usr/lib/usplash/usplash-theme-ubuntu.so
10
/usr/lib/usplash/usplash-theme-xubuntu.so
55

●設定の変更

変更方法には--setオプションを使う方法と--configオプションを使う方法の2つがあります。

■設定の変更(--set を使う場合)

直接ファイル名を指定して変更を行います。
パッケージのpostinstの"update-initramfs -u"の前にこれを使いしておけばよかったんですね。
そうしないと"update-initramfs -u"は無駄撃ちです。

$ sudo update-alternatives --set usplash-artwork.so /usr/lib/usplash/usplash-theme-ubuntu-mono.so
update-alternatives: using /usr/lib/usplash/usplash-theme-ubuntu-mono.so to provide /usr/lib/usplash/usplash-artwork.so (usplash-artwork.so) in manual mode.


このとき設定ファイルがどうなっているか確認します。
先頭行がmanualになるだけでどれが選択されているかは記録されないようです。

$ cat /var/lib/dpkg/alternatives/usplash-artwork.so 
manual
/usr/lib/usplash/usplash-artwork.so

/usr/lib/usplash/usplash-theme-ubuntu-mono.so
20
/usr/lib/usplash/usplash-theme-ubuntu.so
10
/usr/lib/usplash/usplash-theme-xubuntu.so
55

■設定の変更(--config を使う場合)

--configと機能名を指定して、出てきたプロンプトに選択する番号を指定します。
(1 を指定して/usr/lib/usplash/usplash-theme-ubuntu-mono.soを選択)

$ sudo update-alternatives --config usplash-artwork.so
There are 3 choices for the alternative usplash-artwork.so (providing /usr/lib/usplash/usplash-artwork.so).

  Selection    Path                                           Priority   Status
------------------------------------------------------------
* 0            /usr/lib/usplash/usplash-theme-xubuntu.so       55        auto mode
  1            /usr/lib/usplash/usplash-theme-ubuntu-mono.so   20        manual mode
  2            /usr/lib/usplash/usplash-theme-ubuntu.so        10        manual mode
  3            /usr/lib/usplash/usplash-theme-xubuntu.so       55        manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/usplash/usplash-theme-ubuntu-mono.so to provide /usr/lib/usplash/usplash-artwork.so (usplash-artwork.so) in manual mode.

●initrdの更新

update-initramfsでinitrdを更新します。

$ sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-2.6.31-19-generic

これで再起動のときからUsplashが変更されます。

●おまけ。設定の変更(ついでに--autoで推奨設定に戻す)

このあとupdate-initramfs -u も必要です。

$ sudo update-alternatives --auto usplash-artwork.so
update-alternatives: using /usr/lib/usplash/usplash-theme-xubuntu.so to provide /usr/lib/usplash/usplash-artwork.so (usplash-artwork.so) in auto mode.

☆Wine上に手作業で導入したプログラムをメニューに表示させる

昨日Wine上に導入したMZ4はインストーラーがなかったのでメニューに表示されません。
何処かにズバリの手順がないか検索したのですが、見つけられませんでした。
そこで私が手作業した方法を記述して公開します。
参考にしたサイトは前回も引用した2サイトです。
A. http://linuxos.blog102.fc2.com/blog-entry-125.html
B. http://qubuntu.blogspot.com/2009/10/wine.html

●必要なパッケージの導入

icoutils と imagemagick を導入します。

$ sudo apt-get install icoutils imagemagick

●アイコンの準備

実行ファイルから.icoファイルを抽出し、pngに変換します。
wrestoolのオプション-t14 はリソースタイプが14(アイコン)の指定です。-xは抽出の指定。
カレントディレクトリにicoファイルがたくさん出来るので画像ビューアで確認します。
使用するものを決めたらpngに変換して ~/.local/share/icons/ に出力します。

$ cd ~/.wine/drive_c/bin/MZ4
$ wrestool -x --output=. -t14 mz4.exe
# どのファイルを使うか画像ビューアで確認 mz4.exe_14_139_1041.ico を使うことにします。
$ convert mz4.exe_14_139_1041.ico ~/.local/share/icons/MZ4.png
$ rm *.ico

●desktopファイルの作成

~/.local/share/applications/wine/Programs/ ディレクトリにMZ4.desktopを作成します。
内容は下記の通り
hogeはユーザの名称に置き換えてください。
MZ4を展開したディレクトリが違う場合は適宜置き換えてください。
Nameに指定した文字列がメニューに表示されます。
Categoriesはメニューの何処に表示されるかの指定です。[ネットワーク]に表示されるようにしました。

~/.local/share/applications/wine/Programs/MZ4.desktop
[Desktop Entry]
Name=MZ4 1.31
Exec=env WINEPREFIX="/home/hoge/.wine" wine "C:\\bin\\MZ4\\mz4.exe"
Type=Application
StartupNotify=true
Path=/home/hoge/.wine/dosdevices/c:/bin/MZ4
Icon=/home/hoge/.local/share/icons/MZ4.png
Categories=Network;

●menuファイルの作成

~/.config/menus/applications-merged/に下記の内容でファイルを作ります。

~/.config/menus/applications-merged/wine-Programs-MZ4.menu
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
"http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
<Menu>
  <Name>Applications</Name>
  <Menu>
    <Name>wine-wine</Name>
    <Directory>wine-wine.directory</Directory>
  <Menu>
    <Name>wine-Programs</Name>
    <Directory>wine-Programs.directory</Directory>
    <Include>
      <Filename>wine-Programs-MZ4.desktop</Filename>
    </Include>
  </Menu>
  </Menu>
</Menu>

●ログアウトとログイン

上記の手続きを行うと、なぜかメニューの[その他]が表示されなくなりました。
ネットワークのところにもまだ追加したものが出てきません。
一旦ログアウトしてログインすると出てきました。
これは何かコマンドで対応できるのかもしれませんが見つけられませんでした。

●その他

~/.local/share/applications/ の直下には拡張子の関連付け情報が格納してあるようです。
これについてはまたの機会に。

☆Wine上で動かしているその他のアプリケーション

Wineで使っているその他のアプリ。

2010/02/27 訂正 Peggy PadとPeggyは日本語入力がダメでした。

●nPOPQ

フリーのPOP3メーラーです。
複数のPCでメールを見るので、通常使うメーラーは受信時にメールを削除しない設定にしています。
そこでスパム削除用にnPOPQを使ってます。
Windowsで設定をした状態でディレクトリごとWineへ持っていったものがそのまま動きます。
今のところおかしな挙動はありません。非常に軽快に動作します。オススメです。

●Peggy Pad

フリーのテキストエディタです。
Ubuntuでは主にnPOPQのメールビューアとして使っています。
インストーラで導入してフォントだけ設定してます。
特におかしな挙動はありません。URLを選択してCTRL+Bでブラウザが立ち上がります。
Perlと同じような拡張正規表現を使用した検索や置換えがつかえます。
Geanyを使うようになってあまり使っていませんが、文字コード周りはGeanyより強い気がします。

●Peggy Pro for PHP

シェアウェアのテキストエディタです。
残念ながら動作しない機能が結構あります。
とくに外部ツールをつかう機能はだめのようです。残念です。非常に残念です。
ほかには全角・半角変換などが動作しません。
これが完全に動作すればDRM付動画を見る以外はUbuntuでやっていけるのに。

☆TwitterのListに対応したMZ4をWineで使う

Twitterのリスト機能に対応したクライアントソフトを探してたのですがTweetDeckくらいしか見つけられませんでした。
そこでWindowsに探索範囲を広げるとMZ4が対応してました。以前はよく使っていたのに気づきませんでした。
最新バージョンは1.31、使っていたのは1.018でした。(1.018はリスト未対応)
残念ながらWineで使うとWebブラウザとの連携がうまくいきません.....。 一応導入方法を。
2010/02/27 追記 日本語入力がダメでした。

●導入

http://www.mz3.jp/mz3.html の下のほうから MZ4.1.3.1.lzh をダウンロードします。
ZIPなのでwineでインストールできません。適当なディレクトリを作って解凍します。
私は ~/.wine/drive_c/bin/MZ4 というディレクトリを作って解凍しました。

cd ~/.wine/drive_c/bin/MZ4
lha -x ~/Downloads/MZ4.1.3.1.lzh

メニューに出るようにしたい場合は
http://linuxos.blog102.fc2.com/blog-entry-125.html
http://qubuntu.blogspot.com/2009/10/wine.html
を参照してチャレンジしてください。

2010/02/28 この件に関するフォローを投稿しました。☆Wine上に手作業で導入したプログラムをメニューに表示させる

私はコマンドライン起動で十分なので下記のようなシェルスクリプトを~/bin/mz4として作成し、実行権限をつけます。

#!/bin/bash
env WINEPREFIX="/home/masaya/.wine" wine "C:\\bin\\MZ4\\mz4.exe" 

●設定

初回起動時に[クライアントタイプの選択]というダイアログが出ます。
TwitterとRSSは動作しますが、gmailとGoogleReaderはだめのようです。他のサービスは試していません。
mixiは使っていないのであればチェックをはずしておいたほうがいいです。(たくさんタブが作られてしまいます。)
次にログイン設定をします。ドロップダウンリストからTwitterを選択してIDとパスワードを入力します。
ログイン設定はあとでメニューの[設定]-[ログイン設定]で変更できます。
この後、絵文字ダウンロードに関するダイアログが出ますが、Twitterには関係なさそうなので2回とも[いいえ]を選びます。

1.クライアントタイプの選択 2.2番目のダイアログ 3.ログイン設定 4.4番目(絵文字) 5.5番目(絵文字)

メイン画面がすでに立ち上がっていますが、文字が出力されている部分は背景が描画されていません。
うっとうしいのでmz4を解凍したディレクトリのskin/aluminium/*.jpgを別へ移動してしまいます。
これで再起動すると背景が薄い灰色になります。
あとはメニューの[設定]-[一般]から起動するダイアログを覗いて、好みに動作をかえてください。

メイン画面
文字の背景は白
メイン画面
背景画像削除後

画面上部の[リスト一覧]をクリックすると自分で作ったリストの一覧が下部に表示されます。
下部に表示されたリストの部分をクリックするとそのリストのタイムラインが表示されます。

画面上部の[リスト一覧]をクリック
画面下部のリストをクリック

タイムラインを右クリックするとコンテキストメニューが出てきます。
冒頭に書いたように残念ながらブラウザでリンクを開けません。
ターミナルから起動している場合、下記のようなエラーメッセージがでます。

err:winebrowser:get_url_from_dde Unable to retrieve URL from string L"\""
err:winebrowser:wmain Usage: winebrowser URL
検索してみると既知の問題で特にMZ4のせいではないようです。
http://bugs.winehq.org/show_bug.cgi?id=13891

☆UbuntuにSylpheed 3.0を導入

今日、Sylpheedを立ち上げたら更新通知のダイアログ。初めて見ました。
ホームページを見るとマルチスレッドに対応してユーザの操作が不能になる場面が少なくなりましたと書いてあります。
それほど操作不能が気になったことはないのですが、入れてしまいます。
(メインはWinXP環境なのでメールさえ消してくれなければOKなのです。)

バージョンアップだから update-manager では更新できません。PPAを探します。
googleでppa sylpeedで検索。ヒットあり。
AWASHIRO Ikuyaさんのは3.0のベータでHajime Mizunoさんのは2.7.1。
Klaus Vormwegさんのが2010/02/24になっていて3.0正式版のようです。

sudo add-apt-repository ppa:klaus-vormweg/ppa
gksudo update-manager
とすると、お、geanyもちょっとだけ上がったのが出てますね。
使うアプリの趣味が合いますね。Klaus Vormwegさん。
sylpheed、sylpheed-i18n、geanyをアップデートしました。
立ち上げてみてもあまり変わりません。
設定ファイルのディレクトリの名前も.sylpheed-2.0ままです。
しばらく様子を見てから別のPCを更新するかどうか決めます。