From 21bb62e4ed715edb342bc6f1ca0983bd706228af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= Date: Fri, 29 May 2015 20:53:54 +0200 Subject: [PATCH] xdg-desktop-menu: Drop obsolete GNOME support This commit drops the obsolete support for the GNOME-specific directory for .desktop files, since it has not been needed since GNOME 2.10, and since it forces the creation of ~/.gnome whether you want it or not. https://bugs.freedesktop.org/show_bug.cgi?id=90775 --- scripts/xdg-desktop-menu.in | 47 +++++++++------------------------------------ 1 file changed, 9 insertions(+), 38 deletions(-) diff --git a/scripts/xdg-desktop-menu.in b/scripts/xdg-desktop-menu.in index 13159cb..8654764 100644 --- a/scripts/xdg-desktop-menu.in +++ b/scripts/xdg-desktop-menu.in @@ -126,22 +126,18 @@ update_submenu() DEBUG 3 "xdg_global_dir: $xdg_global_dir" DEBUG 3 "kde_user_dir: $kde_user_dir" DEBUG 3 "kde_global_dir: $kde_global_dir" - DEBUG 3 "gnome_user_dir: $gnome_user_dir" - DEBUG 3 "gnome_global_dir: $gnome_global_dir" if [ x"$mode" = x"user" ] ; then xdg_dir="$xdg_user_dir" kde_dir="$kde_user_dir" - gnome_dir="$gnome_user_dir" my_umask=077 my_chmod=0600 else xdg_dir="$xdg_global_dir" kde_dir="$kde_global_dir" - gnome_dir="$gnome_global_dir" my_umask=022 my_chmod=0644 - if [ -z "${xdg_dir}${kde_dir}${gnome_dir}" ] ; then + if [ -z "${xdg_dir}${kde_dir}" ] ; then exit_failure_operation_impossible "No writable system menu directory found." fi fi @@ -158,15 +154,6 @@ update_submenu() return fi - if [ $action = "install" ] && [ -f "/etc/xdg/menus/gnome-applications.menu" ] ; then - # Work around for Debian Gnome - gnome_xdg_dir=`echo "$xdg_dir" | sed -e 's^/applications-merged^/gnome-applications-merged^'` - if [ ! -e "$gnome_xdg_dir" ] ; then - DEBUG 1 "Debian Workaround: Link '$xdg_dir' to '$gnome_xdg_dir'" - mkdir -p `dirname "$gnome_xdg_dir"` - eval 'ln -s "applications-merged" "$gnome_xdg_dir"'$xdg_redirect_output - fi - fi if [ $action = "install" ] && [ -f "/etc/mandrake-release" ] ; then # Work around for Mandriva 2006 mandrake_xdg_dir=`echo "$xdg_dir" | sed -e 's^/applications-merged^/applications-mdk-merged^'` @@ -489,20 +476,16 @@ DEBUG 3 "xdg_user_dir: $xdg_user_dir" DEBUG 3 "xdg_global_dir: $xdg_global_dir" DEBUG 3 "kde_user_dir: $kde_user_dir" DEBUG 3 "kde_global_dir: $kde_global_dir" -DEBUG 3 "gnome_user_dir: $gnome_user_dir" -DEBUG 3 "gnome_global_dir: $gnome_global_dir" if [ x"$mode" = x"user" ] ; then xdg_dir="$xdg_user_dir" kde_dir="$kde_user_dir" - gnome_dir="$gnome_user_dir" my_umask=077 else xdg_dir="$xdg_global_dir" kde_dir="$kde_global_dir" - gnome_dir="$gnome_global_dir" my_umask=022 - if [ -z "${xdg_dir}${kde_dir}${gnome_dir}" ] ; then + if [ -z "${xdg_dir}${kde_dir}" ] ; then exit_failure_operation_impossible "No writable system menu directory found." fi fi @@ -510,14 +493,14 @@ fi for desktop_file in $directory_files; do basefile=`basename "$desktop_file"` - DEBUG 1 "$action $desktop_file in $xdg_dir $kde_dir $gnome_dir" + DEBUG 1 "$action $desktop_file in $xdg_dir $kde_dir" case $action in install) save_umask=`umask` umask $my_umask - for x in $xdg_dir $kde_dir $gnome_dir ; do + for x in $xdg_dir $kde_dir ; do mkdir -p $x eval 'cp $desktop_file $x/$basefile'$xdg_redirect_output done @@ -526,7 +509,7 @@ for desktop_file in $directory_files; do ;; uninstall) - for x in $xdg_dir $kde_dir $gnome_dir ; do + for x in $xdg_dir $kde_dir ; do rm -f $x/$basefile done @@ -555,29 +538,21 @@ kde_user_dir=`kde${KDE_SESSION_VERSION}-config --path apps 2> /dev/null | cut -d kde_global_dir=`kde${KDE_SESSION_VERSION}-config --path apps 2> /dev/null | cut -d ':' -f 2` [ -w $kde_global_dir ] || kde_global_dir= -gnome_user_dir="$HOME/.gnome/apps" -gnome_global_dir="/usr/share/gnome/apps" -[ -w $gnome_global_dir ] || gnome_global_dir= - DEBUG 3 "Install locations for *.desktop files:" DEBUG 3 "xdg_user_dir: $xdg_user_dir" DEBUG 3 "xdg_global_dir: $xdg_global_dir" DEBUG 3 "kde_user_dir: $kde_user_dir" DEBUG 3 "kde_global_dir: $kde_global_dir" -DEBUG 3 "gnome_user_dir: $gnome_user_dir" -DEBUG 3 "gnome_global_dir: $gnome_global_dir" if [ x"$mode" = x"user" ] ; then xdg_dir="$xdg_user_dir" kde_dir="$kde_user_dir" - gnome_dir="$gnome_user_dir" my_umask=077 else xdg_dir="$xdg_global_dir" kde_dir="$kde_global_dir" - gnome_dir="$gnome_global_dir" my_umask=022 - if [ -z "${xdg_dir}${kde_dir}${gnome_dir}" ] ; then + if [ -z "${xdg_dir}${kde_dir}" ] ; then exit_failure_operation_impossible "No writable system menu directory found." fi fi @@ -589,14 +564,14 @@ for desktop_file in $desktop_files; do basefile=`basename "$desktop_file"` - DEBUG 1 "$action $desktop_file in $xdg_dir $kde_dir $gnome_dir" + DEBUG 1 "$action $desktop_file in $xdg_dir $kde_dir" case $action in install) save_umask=`umask` umask $my_umask - for x in $xdg_dir $kde_dir $gnome_dir ; do + for x in $xdg_dir $kde_dir ; do mkdir -p $x eval 'cp $desktop_file $x/$basefile'$xdg_redirect_output done @@ -605,17 +580,13 @@ for desktop_file in $desktop_files; do echo "OnlyShowIn=Old;" >> $kde_dir/$basefile fi - if [ -f $gnome_dir/$basefile ] ; then - echo "OnlyShowIn=Old;" >> $gnome_dir/$basefile - fi - make_lazy_default "$xdg_dir" "$basefile" umask $save_umask ;; uninstall) - for x in $xdg_dir $kde_dir $gnome_dir ; do + for x in $xdg_dir $kde_dir ; do rm -f $x/$basefile done -- 2.4.2