Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

12.3.2. 全ユーザー用のカスタム MIME タイプの追加

システム上のすべてのユーザー用にカスタム MIME タイプを追加し、その MIME タイプのデフォルトアプリケーションを登録するには、/usr/share/mime/packages/ ディレクトリーに新規の MIME タイプ仕様ファイルと /usr/share/applications/ ディレクトリーに .desktop ファイルを作成する必要があります。

手順12.3 全ユーザー用のカスタム application/x-newtype MIME タイプの追加

  1. /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 タイプに割り当てます。
  2. myapplication1.desktop などの名前の付いた新規の .desktop ファイルを作成し、これを /usr/share/applications/ ディレクトリーに置きます。
    [Desktop Entry]
    Type=Application
    MimeType=application/x-newtype
    Name=My Application 1
    Exec=myapplication1
    上記のサンプル myapplication1.desktop ファイルは、application/x-newtype MIME タイプを My Application 1 という名前のアプリケーションに関連付けます。これはコマンド myapplication1 で実行されます。
  3. 変更を有効にするには、root として MIME データベースを更新します。
    # update-mime-database /usr/share/mime
  4. root としてアプリケーションデータベースを更新します。
    # update-desktop-database /usr/share/applications
  5. *.xyz ファイルを application/x-newtype MIME タイプに正常に関連付けたことを確認するには、まず test.xyz などの空のファイルを作成します。
    $ touch test.xyz
    次に、gvfs-info コマンドを実行します。
    $ gvfs-info test.xyz | grep "standard::content-type"
      standard::content-type: application/x-newtype
    
  6. myapplication1.desktopapplication/x-newtype MIME タイプのデフォルトの登録アプリケーションとして正常に設定されていることを確認するには、gvfs-mime --query コマンドを実行します。
    $ gvfs-mime --query application/x-newtype
    Default application for 'application/x-newtype': myapplication1.desktop
    Registered applications:
    	myapplication1.desktop
    Recommended applications:
    	myapplication1.desktop