Unity のランチャに登録する方法 (追記: Lubuntu でも)
Ubuntu の Unity のランチャに *.desktop ファイルを登録する方法。 Ubuntu 11.10 使用。
apt-get などで追加したアプリケーションの場合、起動するとランチャにアイコンが表示されるので、右クリックして「ランチャーに常に表示」をチェックすることでランチャに登録されます。
しかしスクリプトなどはランチャにアイコンが表示されないためその操作が行えません。そこで *.desktop ファイルを作り、それをランチャにドロップします。
ここでは Ruby で書かれた Twitter クライアントの mikutter を登録してみます。ただし Ruby 1.9 系統のパスは /usr/bin/ruby1.9.1 に。 mikutter を置いた場所は /home/naoki/opt/mikutter とします。
まず、適当な場所にテキストファイルで以下の内容の mikutter.desktop を作成します。
[Desktop Entry] Type=Application Name=Mikutter GenericName=Twittter client Icon=/home/naoki/opt/mikutter/core/skin/data/icon.png Exec=/usr/bin/ruby1.9.1 /home/naoki/opt/mikutter/mikutter.rb Terminal=false
mikutter.desktop に実行権限を与えます。
$ chmod +x mikutter.desktop
そして、デスクトップやファイラから mikutter.desktop を Unity のランチャにドラッグ&ドロップします。ランチャのアイコンから起動できるか確認して完了です。(アプリケーションが非アクティブな状態でアイコンをクリックした際に、アクティブ化されず多重起動するケースもありましたが、一度ログアウトしたら問題はおこりませんでした。)
Firefox など既にランチャに登録されているものに特定のオプションを付加したいときも、同様にして Exec 欄を変更することで大丈夫なはずです。また、ランチャではなくデスクトップにショートカットファイルを作りたいときにも適用できます。
- 参考にさせていただきました
- desktop ファイルの仕様(英文)
- desktop ファイルがたくさんあります。記述の際に参考にしました
- /usr/share/applications
追記
ランチャは desktop ファイルをリンクしているだけのようで、デスクトップなどに置いた desktop ファイルを変更したり削除するとランチャは自動で登録を解除します。つまりデスクトップ等に desktop ファイルを一時的に作り、あとで削除するということはできません。もしデスクトップ等にアイコンを増やしたくないのであれば、どこか作業用のファイル置き場を作るか ~/.local/share/applications にでも置きましょう。
また、起動するとランチャに「?」のアイコンが表示されるアプリケーションが存在します(私の環境では mplayer など)。そういったアプリケーションのパスを Exec 欄に含め、好みのアイコンを指定した desktop ファイルを ~/.local/share/applications に置いておけば、そのファイルに記述されたアイコンがランチャに表示されるみたいです。常時ランチャに表示するもの以外にも desktop ファイルを作るメリットはありそうです。
Lubuntu
追記。最近 Lubuntu を使ってまして、そのときの方法。 Lubuntu 12.04
デスクトップ上にショートカットとして desktop ファイルを作成するには、上記の方法で問題ありません。
Lubuntu の場合、ショートカットアイコンをドラッグしてもランチャに追加することはできません。ランチャの設定でアプリケーション一覧の中から選択する必要があります。
まず、 ~/.local/share/applications/ に適切な Categories を記述した desktop ファイルを作成します。すると自動的にスタートメニューに取り込まれます(言い換えればそうしないとスタートメニューには登録できません)。そうやってスタートメニューに登録した後、パネルの「アプリケーション・ランチャー」の設定でランチャに追加します。
Categories の具体的な記述例は /usr/share/applications/*.desktop にあります。
アクセサリ Utility を含み Accessibility, System を含まない インターネット Network を含む オフィス Office を含む グラフィックス Graphics を含み Utility を含まない ゲーム Game を含む サウンドとビデオ AudioVideo を含む プログラミング Development を含む ユニバーサル・アクセス Accessibility を含み Settings を含まない 教育・教養 Education を含む システムツール System を含み Settings を含まない 設定 Settings を含む
- 参考にさせていただきました
- 登録されている Categories など
- LXDE のメニューのレイアウトと地域化に関するソース
- git clone git://lxde.git.sourceforge.net/gitroot/lxde/lxmenu-data