☆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/ の直下には拡張子の関連付け情報が格納してあるようです。
これについてはまたの機会に。

0 件のコメント:

コメントを投稿