Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(608)

Side by Side Diff: scripts/xdg-desktop-menu

Issue 6735024: Linux: update xdg-utils again, and check in the built versions of the scripts. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/xdg-utils/
Patch Set: Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « scripts/xdg-desktop-icon ('k') | scripts/xdg-desktop-menu.in » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/sh 1 #!/bin/sh
2 #--------------------------------------------- 2 #---------------------------------------------
3 # xdg-desktop-menu 3 # xdg-desktop-menu
4 # 4 #
5 # Utility script to install menu items on a Linux desktop. 5 # Utility script to install menu items on a Linux desktop.
6 # Refer to the usage() function below for usage. 6 # Refer to the usage() function below for usage.
7 # 7 #
8 # Copyright 2009-2010, Fathi Boudra <fabo@freedesktop.org> 8 # Copyright 2009-2010, Fathi Boudra <fabo@freedesktop.org>
9 # Copyright 2009-2010, Rex Dieter <rdieter@fedoraproject.org> 9 # Copyright 2009-2010, Rex Dieter <rdieter@fedoraproject.org>
10 # Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at> 10 # Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at>
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 or more category keywords, or they can be added to a new submenu. 75 or more category keywords, or they can be added to a new submenu.
76 76
77 To add a menu entry to a predefined submenu the desktop file that 77 To add a menu entry to a predefined submenu the desktop file that
78 represents the menu entry must have a Categories= entry that lists one or 78 represents the menu entry must have a Categories= entry that lists one or
79 more keywords. The menu item will be included in an appropriate submenu 79 more keywords. The menu item will be included in an appropriate submenu
80 based on the included keywords. 80 based on the included keywords.
81 81
82 To add menu items to a new submenu the desktop-files must be preceded by a 82 To add menu items to a new submenu the desktop-files must be preceded by a
83 directory-file that describes the submenu. If multiple desktop-files are 83 directory-file that describes the submenu. If multiple desktop-files are
84 specified, all entries will be added to the same menu. If entries are 84 specified, all entries will be added to the same menu. If entries are
85 installed to a menu that has been created with a previous call to 85 installed to a menu that has been created with a previous call to
86 xdg-desktop-menu the entries will be installed in addition to any already 86 xdg-desktop-menu the entries will be installed in addition to any already
87 existing entries. 87 existing entries.
88 88
89 directory-file: The *.directory file indicated by directory-file represents 89 directory-file: The *.directory file indicated by directory-file represents
90 a submenu. The directory file provides the name and icon for a submenu. The 90 a submenu. The directory file provides the name and icon for a submenu. The
91 name of the directory file is used to identify the submenu. 91 name of the directory file is used to identify the submenu.
92 92
93 If multiple directory files are provided each file will represent a submenu 93 If multiple directory files are provided each file will represent a submenu
94 within the menu that preceeds it, creating a nested menu hierarchy 94 within the menu that preceeds it, creating a nested menu hierarchy
95 (sub-sub-menus). The menu entries themselves will be added to the last 95 (sub-sub-menus). The menu entries themselves will be added to the last
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after
597 #-------------------------------------- 597 #--------------------------------------
598 # Checks for known desktop environments 598 # Checks for known desktop environments
599 # set variable DE to the desktop environments name, lowercase 599 # set variable DE to the desktop environments name, lowercase
600 600
601 detectDE() 601 detectDE()
602 { 602 {
603 if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde; 603 if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde;
604 elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome; 604 elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome;
605 elif `dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/D Bus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/nul l 2>&1` ; then DE=gnome; 605 elif `dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/D Bus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/nul l 2>&1` ; then DE=gnome;
606 elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/nul l 2>&1; then DE=xfce; 606 elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/nul l 2>&1; then DE=xfce;
607 elif [ x"$DESKTOP_SESSION" == x"LXDE" ]; then DE=lxde; 607 fi
608 else DE="" 608
609 if [ x"$DE" = x"" ]; then
610 # fallback to checking $DESKTOP_SESSION
611 case "$DESKTOP_SESSION" in
612 LXDE)
613 DE=lxde;
614 ;;
615 xfce|xfce4)
616 DE=xfce;
617 ;;
618 esac
619 fi
620
621 if [ x"$DE" = x"" ]; then
622 # fallback to uname output for other platforms
623 case "$(uname 2>/dev/null)" in
624 Darwin)
625 DE=darwin;
626 ;;
627 esac
628 fi
629
630 if [ x"$DE" = x"gnome" ]; then
631 # gnome-default-applications-properties is only available in GNOME 2.x
632 # but not in GNOME 3.x
633 which gnome-default-applications-properties 2> /dev/null || DE="gnome3"
609 fi 634 fi
610 } 635 }
611 636
612 #---------------------------------------------------------------------------- 637 #----------------------------------------------------------------------------
613 # kfmclient exec/openURL can give bogus exit value in KDE <= 3.5.4 638 # kfmclient exec/openURL can give bogus exit value in KDE <= 3.5.4
614 # It also always returns 1 in KDE 3.4 and earlier 639 # It also always returns 1 in KDE 3.4 and earlier
615 # Simply return 0 in such case 640 # Simply return 0 in such case
616 641
617 kfmclient_fix_exit_code() 642 kfmclient_fix_exit_code()
618 { 643 {
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
680 DEBUG 2 "Found default apps for $MIME: $default_app" 705 DEBUG 2 "Found default apps for $MIME: $default_app"
681 default_app="$default_app;" 706 default_app="$default_app;"
682 break; 707 break;
683 fi 708 fi
684 done 709 done
685 DEBUG 2 "Current default apps for $MIME: $default_app" 710 DEBUG 2 "Current default apps for $MIME: $default_app"
686 if echo "$default_app" | grep "$2" > /dev/null 2> /dev/null; then 711 if echo "$default_app" | grep "$2" > /dev/null 2> /dev/null; then
687 # App already listed as default 712 # App already listed as default
688 continue; 713 continue;
689 fi 714 fi
690 default_file="$1/defaults.list" 715 default_file="$(readlink -f "$1/defaults.list")"
691 DEBUG 1 "Updating $default_file" 716 DEBUG 1 "Updating $default_file"
692 grep -v "$MIME=" $default_file > ${default_file}.new 2> /dev/null 717 grep -v "$MIME=" $default_file > ${default_file}.new 2> /dev/null
693 if ! grep "[Default Applications]" ${default_file}.new > /dev/null; then 718 if ! grep "[Default Applications]" ${default_file}.new > /dev/null; then
694 echo "[Default Applications]" >> ${default_file}.new 719 echo "[Default Applications]" >> ${default_file}.new
695 fi 720 fi
696 echo $MIME="$default_app$2" >> ${default_file}.new 721 echo $MIME="$default_app$2" >> ${default_file}.new
697 mv ${default_file}.new $default_file 722 mv ${default_file}.new $default_file
698 done 723 done
699 } 724 }
700 725
(...skipping 517 matching lines...) Expand 10 before | Expand all | Expand 10 after
1218 1243
1219 ;; 1244 ;;
1220 esac 1245 esac
1221 done 1246 done
1222 1247
1223 if [ x"$update" = x"yes" ] ; then 1248 if [ x"$update" = x"yes" ] ; then
1224 update_desktop_database 1249 update_desktop_database
1225 fi 1250 fi
1226 1251
1227 exit_success 1252 exit_success
OLDNEW
« no previous file with comments | « scripts/xdg-desktop-icon ('k') | scripts/xdg-desktop-menu.in » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698