Difference between revisions of "Custom File Associations"

From ArchWiki
Jump to: navigation, search
Line 1: Line 1:
[[Category:X Server (English)]]
+
[[Category:Desktop environments (English)]]
 
The following method creates a custom mime type and file association manually.  This is useful if your desktop does not have a mime type/file association editor installed.  In this example, a fictional multimedia application 'foobar' will be associated with all '*.foo' files.  This will be done a per user basis (as opposed to system-wide).
 
The following method creates a custom mime type and file association manually.  This is useful if your desktop does not have a mime type/file association editor installed.  In this example, a fictional multimedia application 'foobar' will be associated with all '*.foo' files.  This will be done a per user basis (as opposed to system-wide).
  

Revision as of 02:43, 15 April 2012

The following method creates a custom mime type and file association manually. This is useful if your desktop does not have a mime type/file association editor installed. In this example, a fictional multimedia application 'foobar' will be associated with all '*.foo' files. This will be done a per user basis (as opposed to system-wide).

  • First, create the file ~/.local/share/mime/packages/application-x-foobar.xml:
$ mkdir -p ~/.local/share/mime/packages
$ cd ~/.local/share/mime/packages
$ touch application-x-foobar.xml
  • Then edit ~/.local/share/mime/packages/application-x-foobar.xml and add this text:
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
	<mime-type type="application/x-foobar">
		<comment>foo file</comment>
		<icon name="application-x-foobar"/>
		<glob-deleteall/>
		<glob pattern="*.foo"/>
	</mime-type>
</mime-info>

Note that you can use any icon, including one for another application.

  • Next, edit or create the file ~/.local/share/applications/foobar.desktop to contain something like:
[Desktop Entry]
Name=Foobar
Exec=/usr/bin/foobar
MimeType=application/x-foobar
Icon=foobar
Terminal=false
Type=Application
Categories=AudioVideo;Player;Video;
Comment=

Note that Categories should be set appropriately for the application type (in this example, a multimedia app).

  • Now update the mime database with:
$ update-mime-database ~/.local/share/mime

Programs that use mime types, such as file managers, should now open '*.foo' files with foobar. (You may need to restart your file manager to see the change.)