diff options
author | Rex Dieter <rdieter@fedoraproject.org> | 2011-03-28 11:49:24 -0500 |
---|---|---|
committer | Rex Dieter <rdieter@fedoraproject.org> | 2011-03-28 11:49:24 -0500 |
commit | 0fe531fd81740c725a99d09593a280e60692600c (patch) | |
tree | a72419555d138ad7e0b099f82f0b3436eaba91a1 | |
parent | 6acdc595995497e7e909df1a475f4d3172de1104 (diff) |
mimetype support for xdg-mime (generic) (BR33094)
-rw-r--r-- | ChangeLog | 1 | ||||
-rw-r--r-- | scripts/xdg-mime.in | 16 |
2 files changed, 14 insertions, 3 deletions
@@ -3,6 +3,7 @@ 2011-03-28 Rex Dieter <rdieter@fedoraproject.org> * xdg-open cannot detect xfce 4.8 correctly (BR33321) * xdg-mime's info_generic doesn't normalize symlinks (BR33097) + * mimetype support for xdg-mime (generic) (BR33094) 2011-02-01 Rex Dieter <rdieter@fedoraproject.org> * add support for GNOME 3.x diff --git a/scripts/xdg-mime.in b/scripts/xdg-mime.in index 048c3c4..930c141 100644 --- a/scripts/xdg-mime.in +++ b/scripts/xdg-mime.in @@ -76,9 +76,14 @@ info_gnome() if gvfs-info --help 2>/dev/null 1>&2; then DEBUG 1 "Running gvfs-info \"$1\"" gvfs-info "$1" 2> /dev/null | grep standard::content-type | cut -d' ' -f4 - else + elif gnomevfs-info --help 2>/dev/null 1>&2; then DEBUG 1 "Running gnomevfs-info \"$1\"" gnomevfs-info --slow-mime "$1" 2> /dev/null | grep "^MIME" | cut -d ":" -f 2 | sed s/"^ "// + else + # according to https://bugs.freedesktop.org/show_bug.cgi?id=33094#c5 + # neither gvfs-info or gnomevfs-info are present in a default Ubuntu Natty + # install, so fallback to info_generic + info_generic "$1" fi if [ $? -eq 0 ]; then @@ -90,8 +95,13 @@ info_gnome() info_generic() { - DEBUG 1 "Running file -i \"$1\"" - /usr/bin/file -i "$1" 2> /dev/null | cut -d ":" -f 2 | sed s/"^ "// + if mimetype --version >/dev/null 2>&1; then + DEBUG 1 "Running mimetype -b \"$1\"" + mimetype -b "$1" + else + DEBUG 1 "Running file -i \"$1\"" + /usr/bin/file -i "$1" 2> /dev/null | cut -d ":" -f 2 | sed s/"^ "// + fi if [ $? -eq 0 ]; then exit_success |