diff --git a/fix-enlightenment-support.patch b/fix-enlightenment-support.patch new file mode 100644 index 0000000..ddbf9b5 --- /dev/null +++ b/fix-enlightenment-support.patch @@ -0,0 +1,86 @@ +Index: xdg-utils-20120916/scripts/xdg-su.in +Patch by Simon Lees simon@simotek.net based off a earlier patch +by Tomas Cech, this patch does 2 things, +1. In both xdg-su and xdg-terminal enlightenment is detected but then + no action is performed, this patch performs a action in these cases +2. Rather then performing the generic action specific enlightenment + actions have been added to use terminology rather then xterm as it + is essientially the enlightenment terminal emulator and matches the + terminology theme +=================================================================== +--- xdg-utils-20120916.orig/scripts/xdg-su.in ++++ xdg-utils-20120916/scripts/xdg-su.in +@@ -525,6 +525,27 @@ + + [ x"$1" != x"" ] || exit_failure_syntax + ++su_enlightenment() ++{ ++# Enlightenment doesn't have any reasonably working su/sudo graphical interface ++# but terminology works as a drop in replacement for xterm and has a matching theme ++ if which terminology >/dev/null ; then ++ if [ -z "$user" ] ; then ++ terminology -g 60x5 -T "xdg-su: $cmd" -e "su -c '$cmd'" ++ else ++ terminology -g 60x5 -T "xdg-su: $cmd" -e "su -c '$cmd' '$user'" ++ fi ++ ++ if [ $? -eq 0 ]; then ++ exit_success ++ else ++ exit_failure_operation_failed ++ fi ++ else ++ su_generic ++ fi ++} ++ + user= + cmd= + while [ $# -gt 0 ] ; do +@@ -588,6 +609,10 @@ + su_xfce + ;; + ++ enlightenment) ++ su_enlightenment ++ ;; ++ + *) + [ x"$user" = x"" ] && user=root + exit_failure_operation_impossible "no graphical method available for invoking '$cmd' as '$user'" +Index: xdg-utils-20120916/scripts/xdg-terminal.in +=================================================================== +--- xdg-utils-20120916.orig/scripts/xdg-terminal.in ++++ xdg-utils-20120916/scripts/xdg-terminal.in +@@ -563,6 +563,19 @@ + fi + } + ++terminal_enlightenment() ++{ ++ if which terminology &>/dev/null; then ++ if [ x"$1" = x"" ]; then ++ terminology ++ else ++ terminology -e "$1" ++ fi ++ else ++ terminal_generic "$1" ++ fi ++} ++ + #[ x"$1" != x"" ] || exit_failure_syntax + + command= +@@ -606,6 +619,10 @@ + lxde) + terminal_lxde "$command" + ;; ++ ++ enlightenment) ++ terminal_enlightenment "$command" ++ ;; + + generic) + terminal_generic "$command" diff --git a/xdg-utils.changes b/xdg-utils.changes index c73c739..4a8a271 100644 --- a/xdg-utils.changes +++ b/xdg-utils.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Sun Dec 28 08:43:50 UTC 2014 - simon@simotek.net + +- add fix-enlightenment-support.patch + * xdg-su and xdg-terminal both detected enlightenment then did nothing + * xdg-su and xdg-terminal both use terminology rather then xterm now + ------------------------------------------------------------------- Thu Nov 27 15:41:10 UTC 2014 - jslaby@suse.com diff --git a/xdg-utils.spec b/xdg-utils.spec index f479f1a..57ff2e2 100644 --- a/xdg-utils.spec +++ b/xdg-utils.spec @@ -35,6 +35,7 @@ Source0: xdg-utils-%{version}.tar.xz Patch0: install-some-more-scripts.diff Patch1: xdg-screensaver-gnome-perl.diff Patch2: xdg-mime-generic-do-not-return-more-than-one-default.patch +Patch3: fix-enlightenment-support.patch Requires: perl Requires: perl-Net-DBus Requires: perl-X11-Protocol @@ -60,6 +61,7 @@ these utilities work properly in their environment. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build %configure