うおぉぉぉ!全然進まなかった。
結局インストーラはシェルスクリプトで書いているんだが。
とりあえずなんとかなったのをココにバックアップ。
#! /bin/sh # -r オプションで削除 if test $# = 1; then if test $1 = -r; then rm -r /usr/share/y901x rm /usr/bin/y901x rm /usr/share/applications/y901.desktop rm /usr/share/pixmaps/y901x.xpm fi else # 拡張子があるものだけ /usr/share にコピー if ! test -d /usr/share/y901x; then mkdir /usr/share/y901x fi cp -f *.* /usr/share/y901x/ # /usr/bin に作成 touch /usr/bin/y901x chmod 755 /usr/bin/y901x cat << _EOS_ > /usr/bin/y901x #! /bin/sh exec python /usr/share/y901x/y901main.py \$@ _EOS_ # .desktop 作成、MimeType は Totem コピペ touch /usr/share/applications/y901.desktop cat << _EOSB_ > /usr/share/applications/y901.desktop [Desktop Entry] Encoding=UTF-8 Version=1.0 Type=Application Terminal=false Icon[ja_JP]=y901x Name[ja_JP]=Y901x Exec=y901x %U Comment[ja_JP]=わいきゅうまるいちえっくす Name=Y901x Comment=y901x Icon=y901x StartupNotify=true Categories=GNOME;GTK;AudioVideo;Video;Player;X-Ximian-Main;X-Red-Hat-Base; MimeType=application/ogg;application/ram;(以下略 _EOSB_ # アイコンのコピー cp -f y901x.xpm /usr/share/pixmaps/ fi
ヒアドキュメントとやらに詰まりまくった。
MimeType を入れただけでは「別のアプリで開く」でしか登録ができないなぁ。
Nautilus の右メニューに入れるにはどうすれば…まだ勉強が足らない。
それよりやはりカレントディレクトリをスクリプトで変更はやはりまずい。
そうすると glade ファイルの読み込みはどうすればいいんかいなぁ?
try: self.widgets = gtk.glade.XML("/usr/share/hoge/a.glade", "b") except: self.widgets = gtk.glade.XML("a.glade", "b")
しか思いつかないし見つからないんだが…まだ勉強が足らない。
てか $@ でコマンドラインオプションを送るとリストで届くんだね。
コマンドラインオプションを付けると解析はどうすれば…まだ勉強が足らない。
アイコンデザインが…いつものことだ。
やりたいこと以外で詰まって全然進展しない!
まぁプログラミングってそういうもんですけどね。
Tips サイトは多いのに何も有効なアプリを公開していない人が多い理由はコレだよ。
追記
でなんとかなったぞい!
Nautilus への右メニューへは一度「別のアプリで開く」を行えば登録される。
ということでこの件は終わらせよう、先へ進めない。
UpdateManager のソースがマジで参考になったんだが、コレって Python 製なんだね。
何故こういうトコを強調して日本での Python 普及を唱える人が出ないのやら。
Mono の覚書のほうがアクセスが多いのがオイラは超気に入らないんだよ!