7.2. 全ユーザー用のカスタム MIME タイプの追加
/usr/share/mime/packages/
ディレクトリーに新規の MIME タイプ仕様ファイルを作成し、/usr/share/applications/
ディレクトリーに .desktop
ファイルを作成し、システム上の全ユーザーに対してカスタムの MIME タイプを追加し、その MIME タイプのデフォルトアプリケーションを登録する必要があります。
手順
以下の内容で
/usr/share/mime/packages/application-x-newtype.xml
ファイルを作成します。<?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="application/x-newtype"> <comment>new mime type</comment> <glob pattern="*.xyz"/> </mime-type> </mime-info>
ここにあるサンプルファイル application-x-newtype.xml 例は、新しい MIME タイプ application/x-newtype を定義し、.xyz 拡張子の付いたファイル名をその MIME タイプに割り当てます。
/usr/share/applications/
に、以下のような内容で、myapplication1.desktop
などの名前の付いた新しい.desktop
ファイルを作成します。[Desktop Entry] Type=Application MimeType=application/x-newtype Name=My Application 1 Exec=myapplication1 field_code
ここで、サンプル
myapplication1.desktop
ファイルはapplication/x-newtype
MIME タイプをMy Application 1
という名前のアプリケーションに関連付けます。これは、コマンドmyapplication1
で実行します。myapplication1
の開始方法に基づいて、Desktop Entry Specification からそれぞれのフィールドコードを 1 つ選択します。たとえば、複数のファイルを開くことができるアプリケーションの場合は、次のように使用します。Exec=myapplication1 %F
root ユーザーとして、変更を有効にするために MIME データベースを更新します。
# update-mime-database /usr/share/mime
root ユーザーとして、アプリケーションデータベースを更新します。
# update-desktop-database /usr/share/applications
検証手順
*.xyz
ファイルを MIME タイプapplication/x-newtype
に正常に関連付けたことを確認するには、まず test.xyz などの空のファイルを作成し、以下のコマンドを実行します。$ touch test.xyz $ gvfs-info test.xyz | grep "standard::content-type" standard::content-type: application/x-newtype
myapplication1.desktop
が MIME タイプapplication/x-newtype
のデフォルトの登録アプリケーションとして正しく設定されていることを確認するには、以下のコマンドを実行します。$ gio mime --query application/x-newtype Default application for 'application/x-newtype': myapplication1.desktop Registered applications: myapplication1.desktop Recommended applications: myapplication1.desktop