Index: xdg-utils-20160610/ChangeLog =================================================================== --- xdg-utils-20160610.orig/ChangeLog +++ xdg-utils-20160610/ChangeLog @@ -1,5 +1,9 @@ === xdg-utils 1.1.2 (unreleased) === +2016-08-25 Simon Lees + * Add support for LXQt + * Add enlightenment to xdg-email, xdg-settings + 2016-06-10 Rex Dieter * xdg-open: prefer open_generic_xdg_x_scheme_handler over open_envvar (BR96472) Index: xdg-utils-20160610/scripts/xdg-email.in =================================================================== --- xdg-utils-20160610.orig/scripts/xdg-email.in +++ xdg-utils-20160610/scripts/xdg-email.in @@ -459,7 +459,7 @@ case "$DE" in open_xfce "${mailto}" ;; - generic) + generic|lxqt|enlightenment) open_generic "${mailto}" ;; Index: xdg-utils-20160610/scripts/xdg-open.in =================================================================== --- xdg-utils-20160610.orig/scripts/xdg-open.in +++ xdg-utils-20160610/scripts/xdg-open.in @@ -488,7 +488,7 @@ case "$DE" in open_xfce "$url" ;; - lxde) + lxde|lxqt) open_lxde "$url" ;; Index: xdg-utils-20160610/scripts/xdg-settings.in =================================================================== --- xdg-utils-20160610.orig/scripts/xdg-settings.in +++ xdg-utils-20160610/scripts/xdg-settings.in @@ -852,7 +852,7 @@ case "$DE" in dispatch_specific xfce "$@" ;; - generic) + generic|lxqt|enlightenment) dispatch_specific generic "$@" ;; Index: xdg-utils-20160610/scripts/xdg-su.in =================================================================== --- xdg-utils-20160610.orig/scripts/xdg-su.in +++ xdg-utils-20160610/scripts/xdg-su.in @@ -78,6 +78,49 @@ su_gnome() fi } +su_lxqt() +{ + LXQTSU=`which lxqt-sudo 2>/dev/null` + if [ $? -eq 0 ] ; then + if [ -z "$user" ] ; then + # -s option runs as su rather then sudo + $LXQTSU -s "$cmd" + else + # lxqt-sudo does not support specifying a user + su_generic + fi + + if [ $? -eq 0 ]; then + exit_success + else + exit_failure_operation_failed + fi + else + su_generic + fi +} + +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 +} + su_generic() { if [ -z "$user" ] ; then @@ -167,6 +210,14 @@ case "$DE" in su_xfce ;; + lxqt) + su_lxqt + ;; + + enlightenment) + su_enlightenment + ;; + *) [ x"$user" = x"" ] && user=root exit_failure_operation_impossible "no graphical method available for invoking '$cmd' as '$user'" Index: xdg-utils-20160610/scripts/xdg-terminal.in =================================================================== --- xdg-utils-20160610.orig/scripts/xdg-terminal.in +++ xdg-utils-20160610/scripts/xdg-terminal.in @@ -176,6 +176,32 @@ terminal_lxde() fi } +terminal_lxqt() +{ + if which qterminal &>/dev/null; then + if [ x"$1" = x"" ]; then + qterminal + else + qterminal -e "$1" + fi + else + terminal_generic "$1" + 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= @@ -232,6 +258,14 @@ case "$DE" in terminal_lxde "$command" ;; + lxqt) + terminal_lxqt "$command" + ;; + + enlightenment) + terminal_enlightenment "$command" + ;; + generic) terminal_generic "$command" ;; Index: xdg-utils-20160610/scripts/xdg-utils-common.in =================================================================== --- xdg-utils-20160610.orig/scripts/xdg-utils-common.in +++ xdg-utils-20160610/scripts/xdg-utils-common.in @@ -273,6 +273,9 @@ detectDE() LXDE) DE=lxde; ;; + LXQt) + DE=lxqt; + ;; MATE) DE=mate; ;; @@ -294,6 +297,7 @@ detectDE() elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce; elif xprop -root 2> /dev/null | grep -i '^xfce_desktop_window' >/dev/null 2>&1; then DE=xfce elif echo $DESKTOP | grep -q '^Enlightenment'; then DE=enlightenment; + elif [ x"$LXQT_SESSION_CONFIG" != x"" ]; then DE=mate; fi fi