CLIツールを使用してLinuxシステムに新しい(カスタム)MIMEタイプをインストールする方法は?

CLIツールを使用してLinuxシステムに新しい(カスタム)MIMEタイプをインストールする方法は?

知りたい新しいアカウントを作成して登録する手順を完了してください。習慣私のシステムのMIMEタイプ。重要な場合は、Arch LinuxでKDEを実行しています。

手順には、XMLファイルの作成、アイコンをファイルの種類、およびその他の必要な操作に関連付ける作業が含まれている必要があります。xdg-mime私はコマンドラインユーティリティを使用することを好みます。

1)私のユーザーアカウントと2)システム全体にこのMIME接続を追加する方法を知りたいです。

たとえば、MyCertInspectorというカスタムアプリケーションを使用して証明書ファイルを開くことを考えてみましょう。私はXMLが次のようになるはずだと思います。

<?xml version="1.0" encoding="utf-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
  <mime-type type="text/publickey">
    <glob-deleteall/>
    <glob pattern="*.crt"/>
    <glob pattern="*.cert"/>
  </mime-type>
</mime-info>

glob-deleteall私が理解したように、ユーザー - ローカル定義に含めると、既存のシステム全体のMIME接続が削除されます。私が理解した内容が正しいことを確認したいと思います。

また、このプロセスの最初のステップは、私が使用したいファイル拡張子と一緒にMIMEタイプが存在することを確認することです。 Archでこれを行う方法がわかりません。/usr/share/applications/defaults.listArch(少なくとも私のシステムでは)にはシステム全体のファイルはありませんmimeapps.list

回答を得るために必要な各ステップをカバーし、Arch Linuxシステムでコンテンツが配置される必要がある特定のディレクトリに言及するステップバイステップのガイドが必要です。

これまでの研究によると、一般的な手順は次のとおりです。

  1. 私が使用したいファイル拡張子を持つMIMEタイプがあることを確認してください。
  2. 目的のMIMEタイプのXMLファイルを作成します。
  3. sudo xdg-mime install [options]以下を使用して自分のXMLファイルを登録します(システムモードとローカルユーザーモードを処理する必要があります)。
  4. 新しいMIMEタイプをそれを開くために使用されたアプリケーションに関連付けます。
  5. MIMEタイプアイコンを登録します。
  6. その他の事項

私の目標は、この質問に対する答えを読んでいる人なら誰でも自分のシステムにカスタムMIMEタイプを作成してインストールするプロセス全体を理解できるようにすることです。

ベストアンサー1

まず引用します。はい部分的にman xdg-mime

EXAMPLES
           xdg-mime install shinythings-shiny.xml

       Adds a file type description for "shiny"-files. "shinythings-" is used as the vendor prefix. The file type description could look as follows.

           shinythings-shiny.xml:

           <?xml version="1.0"?>
           <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
             <mime-type type="text/x-shiny">
               <comment>Shiny new file type</comment>
               <glob pattern="*.shiny"/>
               <glob pattern="*.shi"/>
             </mime-type>
           </mime-info>

       An icon for this new file type must also be installed, for example with:

           xdg-icon-resource install --context mimetypes --size 64 shiny-file-icon.png text-x-shiny

1)私のユーザーアカウントと2)システム全体にこのMIME接続を追加する方法を知りたいです。

同じmanページから

xdg-mime install [--mode mode] [--novendor] mimetypes-file
--mode mode

mode can be user or system. In user mode the file is (un)installed for the current user only. In system mode the file is (un)installed for all users on the system. Usually only root is allowed to install in system mode.
The default is to use system mode when called by root and to use user mode when called by a non-root user.

glob-deleteall がユーザーのローカル定義に含まれる場合、既存のシステム全体の MIME 接続が削除されます。

はい、glob-deleteallは、mimetype定義のglob部分をオーバーライドするために使用されますが、ただシステム全体。どちらもモードによって異なります

Arch Linux システムの特定のディレクトリが参照されます。

システムモードにインストールされます/usr/share/mime/ユーザーモード.local/share/mimeファイルのリストは次のとおりです。

./.local/share/mime/generic-icons
./.local/share/mime/mime.cache
./.local/share/mime/types
./.local/share/mime/text
./.local/share/mime/text/x-shiny.xml
./.local/share/mime/version
./.local/share/mime/treemagic
./.local/share/mime/globs
./.local/share/mime/globs2
./.local/share/mime/aliases
./.local/share/mime/subclasses
./.local/share/mime/magic
./.local/share/mime/icons
./.local/share/mime/XMLnamespaces
./.local/share/mime/packages/shinythings-shiny.xml

結局、実行

update-mime-database ~/.local/share/mime/

設定を有効にします。

おすすめ記事