xdg-mime — command line tool for querying information about file type handling and adding descriptions for new file types
xdg-mime   query  { filetype  |   default }  ... 
xdg-mime   default   application   mimetype(s) 
xdg-mime   install  [--mode ] [mode--novendor]  mimetypes-file 
xdg-mime   uninstall  [--mode ]  modemimetypes-file 
xdg-mime  { --help  |   --manual  |   --version }
The xdg-mime program can be used to query information about file types and to add descriptions for new file types.
Returns information related to file types.
The query option is for use inside a desktop session only. It is not recommended to use xdg-mime query as root.
The following queries are supported:
query filetype FILE:
	    Returns the file type of FILE in the form of a MIME type.
	  
query default mimetype:
	    Returns the default application that the desktop environment uses for opening
	    files of type mimetype. The default application is
            identified by its *.desktop file.
	  
	    Ask the desktop environment to make application
	    the default application for opening
	    files of type mimetype. An
            application can be made the default for several file types by
            specifying multiple mimetypes.
	  
	    application is the desktop file
	    id of the application and has the form vendor-name.desktop
	    application must already be installed
	    in the desktop menu before it can be made the default handler.
	    The aplication's desktop file must list support for all the
	    MIME types that it wishes to be the default handler for.
	  
Requests to make an application a default handler may be subject to system policy or approval by the end-user. xdg-mime query can be used to verify whether an application is the actual default handler for a specific file type.
The default option is for use inside a desktop session only. It is not recommended to use xdg-mime default as root.
mimetypes-file
            to the desktop environment. mimetypes-file
            must be a XML file that follows the freedesktop.org
            Shared MIME-info Database specification
            and that has a mime-info element as its document root. For
            each new file type one or more icons with name
            type-subtype
            must be installed with the xdg-icon-resource
            command in the mimetypes context. For example the
            filetype application/vnd.oasis.opendocument.text requires an
            icon named application-vnd.oasis.opendocument.text
            to be installed (unless the file type recommends another icon name).
	  mimetypes-file
            and previously added with xdg-mime install from the
            desktop environment. mimetypes-file
            must be a XML file that follows the freedesktop.org
            Shared MIME-info Database specification
            and that has a mime-info element as its document root.
	  --mode modemode 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.
--novendor
	    Normally, xdg-mime checks to ensure that the
	    mimetypes-file to be installed
	    has a proper vendor prefix. This option can be
	    used to disable that check.
	  
A vendor prefix consists of alpha characters ([a-zA-Z]) and is terminated with a dash ("-"). Companies and organizations are encouraged to use a word or phrase, preferably the organizations name, for which they hold a trademark as their vendor prefix. The purpose of the vendor prefix is to prevent name conflicts.
--help--manual--versionxdg-mime honours the following environment variables:
An exit code of 0 indicates success while a non-zero exit code indicates failure. The following failure codes can be returned:
12345
xdg-mime query filetype /tmp/foobar.png
Prints the MIME type of the file /tmp/foobar.png, in this case image/png
xdg-mime query default image/png
Prints the .desktop filename of the application which is registered to open PNG files.
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 folows.
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