Additions:

Deletions:

Additions:

~The above code can be added to the ##pinstall.sh## file in a [[PETs PET]] package.
~To reverse the process on uninstall use code below, it removes the lines added. Put them in the ##puninstall.sh## file of a package (take care as mistakes can break MIME-Types):

Deletions:

~This code can be added to the ##pinstall.sh## file in a [[PETs PET]] package. The following code removes the lines added, which can be put in ##puninstall.sh## (take care as mistakes can break MIME-Types):

Additions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[FreeDesktopOrg freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only a generic filetype rather than a specific format there is no need to add a MIME-type - instead [[AssociateFiles associate]] existing MIME-type to that program.

Deletions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only a generic filetype rather than a specific format there is no need to add a MIME-type - instead [[AssociateFiles associate]] existing MIME-type to that program.

Additions:

Additions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only a generic filetype rather than a specific format there is no need to add a MIME-type - instead [[AssociateFiles associate]] existing MIME-type to that program.

Deletions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic filetypes then there is no need to add a MIME-type - instead simply [[AssociateFiles associate]] current MIME-type to that program.

Additions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic filetypes then there is no need to add a MIME-type - instead simply [[AssociateFiles associate]] current MIME-type to that program.

Deletions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic file-types then there is no need to add a MIME-type - instead simply [[AssociateFiles associate]] current MIME-type to that program.

Additions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic file-types then there is no need to add a MIME-type - instead simply [[AssociateFiles associate]] current MIME-type to that program.
==Add new MIME-Type - method one - update-mime-database==
~1. This method cannot be used in standard Puppy. It requires XML description files and command ##update-mime-database##. These are often provided by loading the appropriate [[devx devx sfs]].
---
~Caution: running ##update-mime-database## without the XML descriptions will remove most of your MIME-types stored in globs, globs2 etc. To add a MIME-type without needing add all descriptions see below.
---
~2. Provide extra MIME-type information to add in an XML description file located at ##/usr/share/mime/packages/##
---
---
~3. This information is then added to various files in using the command ##update-mime-database /usr/share/mime## (files updated include globs, globs2, magic, subclasses, aliases, icons, generic-icons, XMLnamespaces and mime.cache).
---
~Note in standard Puppy as the XML descriptions in ##/usr/share/mime/...## and the command ##update-mime-database## have been removed - this saves about 2.5Mb of space.
==Add new MIME-Type - method - append mime files==
~This method works without loading the [[devx devx sfs]].
---
---
---
---
---

Deletions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic file-types then there is no need to add a MIME-type, but [[AssociateFiles associate]] a current MIME-type to that program.
==Add new MIME-Type - using update-mime-database==
~Note: this method cannot be used in standard Puppy, see below.
~A program can provide extra MIME-type information by having an XML description file in ##/usr/share/mime/packages/##
~This information is then added to various files in ##/usr/share/mime## using the command ##update-mime-database## (files updated include globs, globs2, magic, subclasses, aliases, icons, generic-icons, XMLnamespaces and mime.cache)
~This method can't be used in standard Puppy as the XML descriptions in ##/usr/share/mime/...##(various directories) and the ##update-mime-database## command have been removed (although they are in the [[devx devx sfs]]). This saves about 2.5Mb of space. Running ##update-mime-database## without the XML descriptions will remove most of your MIME-types stored in globs, globs2 etc. To add a MIME-type without needing add all descriptions see below.
==Add new MIME-Type - without using update-mime-database==

Additions:

~This code can be added to the ##pinstall.sh## file in a [[PETs PET]] package. The following code removes the lines added, which can be put in ##puninstall.sh## (take care as mistakes can break MIME-Types):

Deletions:

~This lines can be added to the ##pinstall.sh## file in a [[PETs PET]] package. This code removes the lines added, which can be put in ##puninstall.sh## (take care as mistakes can break MIME-Types):

Additions:

~**MIME-types** define different file types allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic file-types then there is no need to add a MIME-type, but [[AssociateFiles associate]] a current MIME-type to that program.

Deletions:

~MIME-types define different file type allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic file-types then there is no need to add a MIME-type, but [[AssociateFiles associate]] a current MIME-type to the program.

Deletions:

Additions:

==== How To Add MIME-Types ====
~MIME-types define different file type allowing the operating system to deal with them correctly. Many generic file types are already defined in Puppy such as Jpegs and ""Mp3s"". These are defined by [[XML]] description files in the [[http://www.freedesktop.org freedesktop.org's]] package [[SharedMimeInfo shared-mime-info]]. If a program only uses generic file-types then there is no need to add a MIME-type, but [[AssociateFiles associate]] a current MIME-type to the program.
==Add new MIME-Type - using update-mime-database==
~Note: this method cannot be used in standard Puppy, see below.
~A program can provide extra MIME-type information by having an XML description in ##/usr/share/mime/packages/##
~For example this is [[Audacity Audacity's]], ##/usr/share/mime/packages/audacity.xml##
~%%(xml)
<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-audacity-project">
<sub-class-of type="text/xml"/>
<comment>Audacity project</comment>
<glob pattern="*.aup"/>
</mime-type>
</mime-info>
%%
~This information is then added to various files in ##/usr/share/mime## using the command ##update-mime-database## (files updated include globs, globs2, magic, subclasses, aliases, icons, generic-icons, XMLnamespaces and mime.cache)
~This method can't be used in standard Puppy as the XML descriptions in ##/usr/share/mime/...##(various directories) and the ##update-mime-database## command have been removed (although they are in the [[devx devx sfs]]). This saves about 2.5Mb of space. Running ##update-mime-database## without the XML descriptions will remove most of your MIME-types stored in globs, globs2 etc. To add a MIME-type without needing add all descriptions see below.
==Add new MIME-Type - without using update-mime-database==
~All [[ROXFiler ROX]] needs is an extra line adding to various files in ##/usr/share/mime## (minimally just ##globs##). The ##echo## and ##"">>""## commands can do this. For example, observing ##update-mime-database## on audacity.xml the equilavent code is:
~%%(bash)
#add mime-type (without using update-mime-database)
echo application/x-audacity-project:*.aup >> /usr/share/mime/globs
echo 50:application/x-audacity-project:*.aup >> /usr/share/mime/globs2
echo application/x-audacity-project text/xml >> /usr/share/mime/subclasses
echo application/x-audacity-project >> /usr/share/mime/types
%%
~You should still include the XML MIME-type description, otherwise if ##update-mime-database## is used the added lines will be removed but new description written.
CategoryTutorial