176 lines
6.1 KiB
Diff
176 lines
6.1 KiB
Diff
From 21bb62e4ed715edb342bc6f1ca0983bd706228af Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= <johannes@kyriasis.com>
|
|
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
|