Hello community,

here is the log from the commit of package xdm for openSUSE:Factory checked in 
at 2016-03-07 15:02:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xdm (Old)
 and      /work/SRC/openSUSE:Factory/.xdm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xdm"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xdm/xdm.changes  2016-02-23 16:52:40.000000000 
+0100
+++ /work/SRC/openSUSE:Factory/.xdm.new/xdm.changes     2016-03-07 
15:02:31.000000000 +0100
@@ -1,0 +2,28 @@
+Thu Mar  3 15:31:51 UTC 2016 - [email protected]
+
+- After boo#968405 got fixed in /etc/rpm/macros.systemd, resurrect the old 
+  behavior of %postun (boo#968405).
+
+-------------------------------------------------------------------
+Sat Feb 27 11:53:42 UTC 2016 - [email protected]
+
+- xdm.tar.bz:
+  * /etc/X11/xdm/sys.xsession: 
+    fix regression from fix for boo#967002 (boo#968172).
+  * /etc/X11/xdm/Xsession:
+    + Add comments for documentation
+    + Fix semantics
+    + Don't use $HOME/.xinitrc as session script. Let sys.xession
+      handle this.
+    + Make argument parser more robust:
+      add parse error detection.
+  * Add an 'xsession' desktop file: this should offer a session 
+    where the $HOME/.xsession is used (boo#968631).
+  
+-------------------------------------------------------------------
+Fri Feb 26 12:46:53 UTC 2016 - [email protected]
+
+- Remove %service_del_postun display-manager.service
+  from %postun macro (boo#968405). 
+
+-------------------------------------------------------------------

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

Other differences:
------------------
++++++ xdm.spec ++++++
--- /var/tmp/diff_new_pack.RjOUrZ/_old  2016-03-07 15:02:32.000000000 +0100
+++ /var/tmp/diff_new_pack.RjOUrZ/_new  2016-03-07 15:02:32.000000000 +0100
@@ -180,8 +180,7 @@
 %{insserv_cleanup}
 %else
 # Do not restart DM on update (bnc#886641)
-export DISABLE_RESTART_ON_UPDATE=yes
-%service_del_postun display-manager.service
+%service_del_postun -n display-manager.service
 %endif
 
 %preun
@@ -229,6 +228,8 @@
 %{_libdir}/X11/xdm/
 %dir %{_datadir}/X11/app-defaults
 %{_datadir}/X11/app-defaults/Chooser
+%dir %{_datadir}/xsessions
+%{_datadir}/xsessions/xsession.desktop
 %{_mandir}/man1/chooser.1%{?ext_man}
 %{_mandir}/man1/xdm.1%{?ext_man}
 %if 0%{?suse_version} < 1315

++++++ xdm.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/etc/X11/xdm/Xsession new/etc/X11/xdm/Xsession
--- old/etc/X11/xdm/Xsession    2014-12-03 10:57:43.000000000 +0100
+++ new/etc/X11/xdm/Xsession    2016-03-01 16:02:42.000000000 +0100
@@ -46,6 +46,7 @@
 # `set' in their profile files.
 #
 argv=("$@")
+cmdln="$@"
 
 #
 # Handle the NoChange option of wdm 
@@ -179,6 +180,11 @@
 export WINDOWMANAGER
 
 #
+# Some traditional system X sessions
+#
+sessions=( $XDMDIR/sys.xsession $XINITDIR/xinitrc )
+
+#
 # By default we set system defaults for the language
 #
 . /etc/profile.d/lang.sh
@@ -187,12 +193,18 @@
 # Handle arguments given by xdm/kdm/gdm.
 #
 forced=no
+parse_error=no
+extra_env_settings=no
+#
+# Parse commandline of the form:
+# env [ FOO=bar ... ] startwm [args1 ..] [ab_AB.UTF-8] [args2 ..]
 if test ${#argv[@]} -gt 0 ; then
     typeset -i argc=0
     for l in ${argv[@]} ; do
        case "$l" in
             # extra environment variables settings
             "env")
+               test $extra_env_settings = yes && parse_error=1
                 extra_env_settings="yes"
                 unset argv[$argc]
                 ;;
@@ -203,8 +215,8 @@
                 fi
                 ;;
            [a-z][a-z]_[A-Z][A-Z]*)
-               GDM_LANG=$l
-               break
+               export GDM_LANG=$l
+               test $extra_env_settings = yes && parse_error=1
                 ;;
             *)
                 # stop extracting env info after the first one that's not an 
ENV
@@ -217,25 +229,41 @@
         # argv is an array with index starting from 0
        let argc++ || :
     done
-    unset argv[$argc]
+    test $parse_error = yes && echo "Parse error: $cmdln" >&2
+    unset cmdln
     unset l
 
     # get Window Manager only after the previous argument processing.
     #
-    # reset the parameter array for convenience
+    # reset the parameter array as some parameters may have been unset
+    # and sourced scripts may have done a set -- ...
     argv=("${argv[@]}")
     case "${argv[0]}" in
-        failsafe)      exec $failsafe   ;;
-        default)       ;;
-        custom)        ;;
-        *)             forced=yes
-           WINDOWMANAGER=${argv[0]} ;;
+        failsafe)
+           exec $failsafe   ;;
+        default|custom)
+           sessions=( $HOME/.xsession "${sessions[@]}" )
+           ;;
+        *)
+           forced=yes
+           WINDOWMANAGER="${argv[0]}"
     esac
-
+else
+    #
+    # Xdm does not provide any arguments
+    #
+    sessions=( $HOME/.xsession "${sessions[@]}" )
 fi
 readonly argv
 
 #
+# No window manager? Get system default
+#
+if test -z "$WINDOWMANAGER" ; then
+    . /etc/profile.d/profile.sh
+fi
+
+#
 # If GDM had set GDM_LANG then override LANG:
 #
 if test -n "$GDM_LANG" ; then
@@ -259,13 +287,6 @@
 fi
 
 #
-# No window manager? Get system default
-#
-if test "$forced" != "yes" ; then
-    . /etc/profile.d/profile.sh
-fi
-
-#
 # Source common code shared between the
 # X session and X init scripts
 #
@@ -275,33 +296,18 @@
 set -- "${argv[@]}"
 shift
 
-#
-# Some common user and system files
-#
-session=$HOME/.xsession
-xinitrc=$HOME/.xinitrc
-sysinit=$XINITDIR/xinitrc
-syssess=$XDMDIR/sys.xsession
-
 # User login X session
 # If the user doesn't have their own xsession, then run
 # system xsession or xinitrc script if they exist, but
 # use a forced X session type if the user asked for
 # an other session environment.
 
-if   test "$forced" = "yes" ; then
-     command="$syssess"
-elif test -f $session ; then
-     command="$session"
-elif test -f $xinitrc ; then
-     command="$xinitrc"
-elif test -f $syssess; then
-     command="$syssess"
-elif test -f $sysinit ; then
-     command="$sysinit"
-elif test -n "$WINDOWMANAGER" ; then
-     unset STARTUP WINDOW_MANAGER
-     command="$WINDOWMANAGER"
+if test $forced != yes ; then
+    for command in "${sessions[@]}"; do
+       test -f "$command" && break
+    done
+else
+    command="${sessions[0]}"
 fi
 
 #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/etc/X11/xdm/sys.xsession new/etc/X11/xdm/sys.xsession
--- old/etc/X11/xdm/sys.xsession        2016-02-17 12:32:37.000000000 +0100
+++ new/etc/X11/xdm/sys.xsession        2016-02-27 12:49:15.000000000 +0100
@@ -15,7 +15,7 @@
 # If gpg is configured and gpg-agent is wanted set "yes"
 #
 usegpg=yes
-${GNUPGHOME:=$HOME/.gnupg}
+: ${GNUPGHOME:=$HOME/.gnupg}
 
 #
 # Use the file ~/.myagents to overide the defaults
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/usr/share/xsessions/xsession.desktop 
new/usr/share/xsessions/xsession.desktop
--- old/usr/share/xsessions/xsession.desktop    1970-01-01 01:00:00.000000000 
+0100
+++ new/usr/share/xsessions/xsession.desktop    2016-02-27 12:51:11.000000000 
+0100
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Name=User Xsession
+Type=Xsession
+Encoding=UTF-8
+Exec=default


Reply via email to