Hello community,

here is the log from the commit of package xinit for openSUSE:Factory checked 
in at 2016-06-05 14:19:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xinit (Old)
 and      /work/SRC/openSUSE:Factory/.xinit.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xinit"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xinit/xinit.changes      2016-04-06 
11:51:22.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xinit.new/xinit.changes 2016-06-05 
14:19:52.000000000 +0200
@@ -1,0 +2,24 @@
+Wed Jun  1 12:37:18 UTC 2016 - [email protected]
+
+- xinitrc.common: Add plasma* in list of fallback WMs
+
+-------------------------------------------------------------------
+Wed Jun  1 10:43:56 UTC 2016 - [email protected]
+
+- xinitrc.common: Add comments, make error messages clearer.
+  Don't filter out twm, as it's only installed on request.
+  Don't expand fallback WINDOWMANAGER.
+
+-------------------------------------------------------------------
+Wed Jun  1 07:36:25 UTC 2016 - [email protected]
+
+- xinit.tar.bz2: skip twm and xsession desktops 
+
+-------------------------------------------------------------------
+Tue May 31 16:46:51 UTC 2016 - [email protected]
+
+- xinit.tar.bz2:
+  simplify bash code of /etc/X11/xinit/xinitrc.common to avoid that
+  already set WINDOWMANAGER variable becomes stripped (bsc#981437)
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xinit.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/etc/X11/xinit/xinitrc.common 
new/etc/X11/xinit/xinitrc.common
--- old/etc/X11/xinit/xinitrc.common    2016-04-05 09:59:53.000000000 +0200
+++ new/etc/X11/xinit/xinitrc.common    2016-06-01 14:36:57.000000000 +0200
@@ -54,7 +54,7 @@
            . $script
        else
            # run number ordered scripts sequentially
-           case ${script##*/} in 
+           case ${script##*/} in
                 [0-9][0-9]-*)  $script ;;
                 *) $script & ;;
            esac
@@ -66,58 +66,41 @@
 unset script
 
 #
-# Choose a window manager
+# Choose a window manager if not set by /etc/profile.d/profile.sh
 #
-if test -n "$WINDOWMANAGER" ; then
-       _epand_wm()
-       {
-               local x y z
-               for x in $WINDOWMANAGER ; do
-                       case "$x" in
-                       *=*)    y="${y:+$y }$x" ;;
-                       -*)     y="${y:+$y }$x" ;;
-                       *)      if z="$(type -p $x 2>/dev/null)" ; then
-                                       y="${y:+$y }$z"
-                               else
-                                       y="${y:+$y }$x"
-                               fi
-                       esac
-               done
-               test -n "$y" && WINDOWMANAGER="$y"
-       }
-       _epand_wm
-       unset _epand_wm
-fi
 if test -z "$WINDOWMANAGER" ; then
+       # For some reason, $WINDOWMANAGER is not set.
+       # This is because the user cleared it or DEFAULT_WM is empty.
+       # Fall back on any session we can find.
        _find_wm()
        {
-               local x
-               local i
                local file
                local dir="/usr/share/xsessions"
-               # prefer the desktops resp icewm as it's used by YaST anyways
-               for i in kde gnome xfce lxde icewm; do
-                       if [ -e "$dir/$i.desktop" ]; then
-                               file="$dir/$i.desktop"
-                               break
-                       fi
+
+               # Pick a session description file.
+               for file in 
${dir}/{plasma*,kde*,gnome*,xfce*,lxde*,icewm*,*}.desktop
+               do
+                       case "${file##*/}" in
+                               # Ignore user's .xsession as we can't
+                               # handle it as a fallback.
+                               xsession.*)
+                                       continue ;;
+                       esac
+                       test -e "$file" && break
                done
-               if [ -z "$file" ]; then
-                       # let's pick the first one
-                       local files=($dir/*.desktop)
-                       file="${files[0]}"
-                       # coolo doesn't like twm
-                       if [ "$file" != "${file%twm.desktop}" -a -n 
"${files[1]}" ]; then
-                               file="${files[1]}"
-                       fi
-               fi
-               if [ -n "$file" ]; then
-                        while read line; do
-                                x="${line#Exec=}"
-                                [ "$line" = "$x" ] || break
-                        done < "$file"
-               fi
-               WINDOWMANAGER=$(type -p "$x")
+               test -z "$file" && return
+
+               # Grab the session command line from the file.
+               local line
+               while read -r line
+               do
+                       case ${line} in
+                               Exec=*)
+                                       WINDOWMANAGER="${line#Exec=}"
+                                       break
+                                       ;;
+                       esac
+               done < "$file"
        }
        _find_wm
        unset _find_wm
@@ -130,10 +113,18 @@
 if test -z "$WINDOWMANAGER" ; then
     if test -t 1 ; then
        echo "Error: Unable to find a window manager. Please make sure you 
installed one!"
+       echo "       This could be due to a misconfigured WINDOWMANAGER in your 
shell,"
+       echo "       an unknown DEFAULT_WM in /etc/sysconfig/windowmanager, or 
because"
+       echo "       the programs referenced in /usr/share/xsessions/*.desktop 
are"
+       echo "       not in the PATH."
        echo "Exiting..."
     fi
-    xmessage -timeout 10 -default okay -center -file - <<-EOF
+    xmessage -timeout 20 -default okay -center -file - <<-EOF
        Error: Unable to find a window manager. Please make sure you installed 
one!
+              This could be due to a misconfigured WINDOWMANAGER in your shell,
+              an unknown DEFAULT_WM in /etc/sysconfig/windowmanager, or because
+              the session program referenced in /usr/share/xsessions/*.desktop 
is
+              not in the PATH.
        Exiting...
        EOF
     exit 1
@@ -212,7 +203,7 @@
 # Disable new Xcursor themes if none is specified resp. located
 # in $HOME (use "unset XCURSOR_CORE" to enable them again later)
 #
-#if test -z "$XCURSOR_THEME" -a ! -d $HOME/.icons ; then 
+#if test -z "$XCURSOR_THEME" -a ! -d $HOME/.icons ; then
 #    XCURSOR_CORE=true
 #    export XCURSOR_CORE
 #else


Reply via email to