AppDirGen
Application
directory Generator について
_________________________ update
2008/07/22
AppDirGen は、様々なアプリケーションのデスクトップエントリファイルを読
み込み、ROX 環境下で実行可能なアプリケーションディレクトリ AppDir
を生
成するユーティリティプログラムです。
生成された AppDir は、ROX 環境下で、
デスクトップ(ピンボード)やパネル上のアイコン
ファイラー画面上のアイテム
として、又、「対応アプリの設定」や「アプリに送る」、「メニューをカス
タマイズ」などの、
設定用アイテム
として、利用/実行する事ができます。
GNOME/KDE 等の、統合デスクトップ環境が必要でない場合でも、デスクスペー
スに余裕があれば、それらの関連アプリケーションをインストールして置く事
をおすすめします。
AppDirGen の使用により、それらのアプリケーションのデスクトップエントリ
ファイル は
rox + 任意のウインドウマネージャ環境下で、有効に利用する事
が出来るようになります。
各アプリケーションへのアクセスが容易になるだけでなく、(統合デスクトッ
プ環境以外の)ウインドウマネージャ環境下では、ターミナルなどから起動す
るしかアクセスの方法が無い、システムの設定用アプリケーション等にも、容
易に GUI でアクセス出来るようになります。
使い方
準備
運用
更
新の通知(rox コマンドの拡張)
活用
注意
デスクトップエントリファイルについて
AppDir について
アイコンのカスタマイズ
ライセンス
番外
Vine Linux - Fluxbox
での AppDir の活用
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
使い方:
準備:
依存:
AppDirGen の実行には、
rox (rox-filer)
bash
diff (diffutils)
patch
nkf
tree
expr (coreutils)
などのコマンドを必要とします。
このドキュメントをご覧の場合は、多分それらは既にインストール済
みと思われますが、万一まだの場合は、先にそれらを含むパッケージ
をインストールして置いててください。
※パッケージ管理システムに基づくパッケージとしてインストールさ
れている場合は、これらへの依存は既に解決されているでしょう。
実行権限:
AppDirGen の一部機能(更新の通知)は、実行の際に root 権限を必要
とします。
又、生成されたAppDir の一部に、root 権限を必要とする場合に、
gksu コマンドが要求される場合が有ります。必要に応じて gksu を
含むパッケージを別途インストールして置いてください。
運用:
実行:
$HOME/Apps にインストールされた AppDirGen をクリックすると、タ
ーミナルウィンドウが開きます。指示にしたがって入力してください。
更新が有る場合:
新しいデスクトップエントリファイルが見付かった場合は、変更を適
用するかどうかを問い合わせて来ます。
'y'[Enter] を押せば:
該当する AppDir
の生成が始まりますので、その状態でしばらく
待ってください。
ディスクアクセスが終了し AppDir の生成が完了すると、
$HOME/Apps/Applications ウィンドウが表示されます。
'n'[Enter] を押せば:
変更の適用は保留されます。
更新が無い場合:
新しいデスクトップエントリファイルが見付からなかった場合は、更
新が無い旨が報告されますので、[Enter] を押してウィンドウを閉じ
てください。この場合 $HOME/Apps/Applications は変更されません。
強制更新:
$HOME/Apps/Applications
の一部又は全部を損なった等の理由で強制
的に更新したい場合は、
1.AppDirGen 右クリック →「更新を強行する」
2.$HOME/Apps/Applications を削除 → AppDirGen をクリック
の、どちらかを実行してください。
更新の通知(rox コマンドの拡張):
システムの更新やアプリケーションのインストール/アンインストー
ルにより、デスクトップエントリファイルが追加/削除されることが
有ります。
AppDirGen は このような変更をチェックして、AppDirGen を自動実
行するように ROX-Filer を拡張することが出来ます。
ROX-Filer を拡張し、更新通知を有効にするには、
AppDirGen
右クリック →「更新通知を有効にする」
拡張した ROX-Filer を元に戻すには、
AppDirGen
右クリック →「更新通知を無効にする」
を実行してください。
※いずれの場合も、実行には root 権限が必要です。
※ROX-Filer が拡張されると、デスクトップエントリファイルが追加
/削除された日に AppDirGen が実行されなかった時、その翌日以降に
最初に rox コマンドが実行された時に、AppDirGen が自動実行され
るようになります。
※ROX-Filer の拡張については、こちらをご覧下さい。
活用:
AppDirGen を実行すると
$HOME/Apps/Applications 以下に、全デス
クトップエントリファイルに対応する AppDir
が、カテゴリごとに
分類されて生成されます。
生成された各 AppDir は、そのまま、又は別のディレクトリにコピー
して、又は ROX のデスクトップやパネルに貼り付けて、ファイラー
画面上のアイテムとして、或いはデスクトップ・アイコンやパネル・
アイテムとして利用可能です。
※生成された
AppDir には既にアイコン画像が内蔵されているので、
その都度アイコンを設定する必要は有りません。
又、ROX-Filer
における「対応アプリの設定」や「アプリに送る」、
「メニューをカスタマイズ」等の設定時に、実際のアプリケーション
の代わりに、よりアクセスし易いこれらの AppDir
を利用する事も出
来ます。
※ なんらかのアプリケーションが、システム内で新規にインストー
ル/アンインストールされた時、$HOME/Apps/Applications 以下にそ
れに対応する AppDir が存在しない/対応する AppDir が無効、な状
態になります。
この様な場合は、AppDirGen をクリックして、変更を適用してくださ
い。
注意:
生成された AppDir の中には、GNOME/KDE/XFCE 等の統合デスクトッ
プ環境下でなければ意味を成さないもの(GNOME/KDE/XFCE 環境の設定
ツール等)や、実行できないもの(GNOME/KDE/XFCE 環境のデーモン等
に依存するもの等)が含まれます。
又、少数ですが、rox + ウインドウマネージャ環境での GTK テーマ
を強制的に GNOME/XFCE の GTK テーマに変更してしまうものもあり
ます。(多くの場合、ログインし直せば元に戻ります)
生成された AppDir の運用に当たっては、上記の点に充分注意を払い、
実際に有効な AppDir のみをご利用下さい。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
デスクトップエントリファイルについて:
/user/share/ の *.desktop ファイル群は、デスクトップエントリ
(Desktop
Entry)と呼ばれる、freedesktop.org
準拠のアプリケーシ
ョン等に添付される、アプリションの情報を記述したファイルです。
GNOME/KDE 用アプリをはじめとする、多くのデスクトップ用 GUI ア
プリケーションには、殆どの場合このファイルが添付され、アプリケ
ーションインストール時に、/usr/share/applications 以下に配置さ
れメニューなどもこのファイルを参照して生成されます。
(freedesktop.org (http://www.freedesktop.org/) は UINX 互換 OS
下のフリーなデスクトップ環境の、各種標準化などを策定する団体です)
AppDirGenは、このファイルからアプリケーション情報を読み取り、
rox
環境下で該当アプリケーションを直ちに利用できるようにする
Wrapper = AppDir を自動生成しています。
デスクトップエントリの最新仕様は、Desktop
Entry Specification
で公開されています。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
AppDir
について:
AppDir(Application directory) は、rox 環境下で実行可能な、ディ
レクトリ形式のアプリケーションです。
AppDir はファイルシステムから見れば単なるディレクトリですが、
rox のファイラー画面や、ピンボード(rox のデスクトップ)/パネル
上に置かれたアイテム(アイコン)としては、実行可能アプリケーショ
ンとして認識され、クリックで実行する事が出来ます。
つまり
AppDir は、rox 環境下では、
"ディレクトリ"、
且つ"
アイコン"、
且つ"
実行ファイル"
として扱われます。
AppDir の要件:
任意の名前のディレクトリ下に、
AppRun
という名前の実行可能ファイルが有れば、そのディレクトリ
は AppDir として認識され、ROX
環境下でそのディレクトリアイコ
ンクリックすれば、実行することが出来ます。
AppRun の存在が AppDir
として認識される為の最低要件です。
AppInfo.xml
という名前の xml 形式のファイルが有れば、その内容
が AppDir のツールチップやプロパティ、実行オプションなどに反
映されます。
.DirIcon
という名前の画像ファイルが有れば、その画像を AppDir
のアイコンとして表示することが出来ます。
Help
という名前のサブディレクトリが有れば、rox のメニューから、
そのディレクトリを表示させることができます。該当 AppDir の各種
ドキュメント類は、このディレクトリに納めて置きます。
様々な AppDir:
AppDir
には、単純な AppRun スクリプトのみにより構成されるもの
から、AppDir
内に高度なバイナリ実行ファイルや、複数のドキュメ
ント類を含むものまで、様々なものがあります。
典型的な
AppDir の例は、/usr/apps 以下のアイコン化されたディレ
クトリ群で、その中の "ROX-Filer" は、rox コマンドから呼び出さ
れる
rox-filer の実体であり、これも実は AppDir なのです。
そして、AppDirGen 自体も、複数のスクリプトファイルやドキュメン
ト類により構成された AppDir です。
AppDirGen の場合:
AppDirGen
によって、~/Apps/Applications 以下に生成される AppDir
群は、これらの内では最も単純なもので、
・実際のアプリケーションを呼び出す AppRun シェルスクリプト
デスクトップエントリファイルの
Exec キーの値を参考に
生成されます。
・アプリケーションのアイコンを利用した .DirIcon
デスクトップエントリ
ファイルの Icon
キーの値を参考生
に成されます。
・アプリケーションの簡単な説明を表示する AppInfo.xml
デスクトップエントリファイルの Comment([ja]) キーの
値を参考に生成されます。
のみで構成され、アプリケーションのラッパーとして働きます。
※AppDirGenでは、AppRun、.DirIcon、AppInfo.xml は、
デスクトップエントリファイ
ルの
Exec、Icon、Comment 各
キーの値を参考にして生成されます。
※AppRun
の公式ドキュメント(英文)は、オンラインマニュアル、
ROX-Filer
User Manual - Application directories
又は、
公
式サイトマニュアル
- Application directories
で、閲覧する事が出来ます。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
アイコンのカスタマイズ:
AppDirGen は AppDir 生成時に、/usr/share 以下にインストールされている
主要アイコンテーマから、AppDir での検索順に従い、アプリケーション用ア
イコンを検索し、AppDir 用のアイコンとして採用しています。
もし採用されたアイコンが好みに合わない場合は、
1.$HOME/.icons/AppIcons/ に、該当アプリケーションのデスクトップエント
リファイルの "Icon"
キーの値と同名のアイコン画像(拡張子の指定がない場
合は ".png" を追加)を置けば、最優先で採用されます。
2.$HOME/.icons/AppIcons/ に、"アプリケーションのコマンド名".png という
名前のアイコン用ファイルがあれば、それが次の優先順で採用されます。
※共に同名のリンクでも構いません。
※
たとえば epiphany の場合、"Icon" キーの値は
"gnome-web-browser"、コ
マンド名は "epiphany" ですが、$HOME/.icons/AppIcons/ に、
"gnome-web-browser.png" があれば、これが AppDir のアイコンになります。
"epiphany.png" があれば、次の優先順で AppDir のアイコンに採用されます。
もし好みのアイコンテーマがあれば、そのテーマの apps ディレクトリから、
$HOME/.icons/AppIcons/ にリンクを張っても構いません。
(例: ln -s /usr/share/icons/kids/64x64/apps ~/.icons/AppIcons)
※
AppDir と アプリケーションのコマンド名は、必ずしも同じとは限りませ
ん。"アプリケーションのコマンド名" が判らない時は、該当 AppDir を
1.Shift キーを押しながらクリックし、
2.表示されたフォルダ内の AppRun スクリプトをエディタ等で開き、
3.実行コマンドを調べてください。
"exec xxxxx $@” という行が見当たれば、xxxxx の部分が、"アプリケーショ
ンのコマンド名です。
※
"コマンド名.png" より、"デスクトップエントリファイルの Icon
キーの
値" の優先度を高くしたのは、一部アプリケーションでは、同一コマンド名の
起動オプション毎に、別のデスクトップエントリを持ち、Icon
キーも別の値
を持つ場合が有るからです。(例: OpenOffice 関連)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ライセンス:
AppDirGen
は GLP ライセンスに基づき、コピー/再配布/改造する事が
出来ます。
AppDirGen / Application Directory Generator
Copyright (C) 2008- "OKATANA" \
(KATO Masashi<mkato@par.odn.ne.jp> \
TANAKA hiroaki<mosaicist@par.odn.ne.jp>)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - \
Suite 330, Boston, MA 02111-1307, USA.
※ GNU General Public License 日本語訳は、
http://www.opensource.jp/
等のサイトで公開されています。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Vine Linux - Fluxbox での AppDir の活用
Vine Linux の fluxbox のユーザーメニューでは、AppDir を rox 用のアプリ
ケーションディレクトリとして認識可能なように拡張されています。
簡単に利用するには、
~/.fluxbox/UserMenu
ディレクトリに、AppDirGen で生成された AppDir を、ドラッグ&ドロップで
リンクを貼るかコピーするだけです。後は、
ルートメニュー → Fluxboxメニュー → Vineツール
全メニュー再作成
すれば、ユーザーメニューから AppDir を呼び出せるようになります。