commit kdebase4-workspace for openSUSE:Factory
![](https://seccdn.libravatar.org/avatar/e2145bc5cf53dda95c308a3c75e8fef3.jpg?s=120&d=mm&r=g)
Hello community, here is the log from the commit of package kdebase4-workspace for openSUSE:Factory checked in at 2012-03-12 20:14:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kdebase4-workspace (Old) and /work/SRC/openSUSE:Factory/.kdebase4-workspace.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "kdebase4-workspace", Maintainer is "kde-maintainers@suse.de" Changes: -------- --- /work/SRC/openSUSE:Factory/kdebase4-workspace/kdebase4-workspace.changes 2012-02-28 14:13:46.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.kdebase4-workspace.new/kdebase4-workspace.changes 2012-03-12 20:14:57.000000000 +0100 @@ -1,0 +2,6 @@ +Fri Mar 2 23:16:32 CET 2012 - dmueller@suse.de + +- update to 4.8.1 + * see http://kde.org/announcements/changelogs/changelog4_8_0to4_8_1.php for details + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/kdebase4-workspace/python-kdebase4.changes 2012-01-31 10:21:01.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.kdebase4-workspace.new/python-kdebase4.changes 2012-03-12 20:14:57.000000000 +0100 @@ -1,0 +2,11 @@ +Fri Mar 2 23:16:32 CET 2012 - dmueller@suse.de + +- update to 4.8.1 + * see http://kde.org/announcements/changelogs/changelog4_8_0to4_8_1.php for details + +------------------------------------------------------------------- +Mon Feb 27 20:46:29 CET 2012 - dmueller@suse.de + +- require the right version of kactivities4 to avoid crashes + +------------------------------------------------------------------- Old: ---- kde-workspace-4.8.0.tar.bz2 New: ---- kde-workspace-4.8.1.tar.bz2 kdm_plymouth.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdebase4-workspace.spec ++++++ --- /var/tmp/diff_new_pack.l1KYKt/_old 2012-03-12 20:15:00.000000000 +0100 +++ /var/tmp/diff_new_pack.l1KYKt/_new 2012-03-12 20:15:00.000000000 +0100 @@ -17,7 +17,7 @@ Name: kdebase4-workspace -Version: 4.8.0 +Version: 4.8.1 Release: 0 Summary: The KDE Workspace Components License: GPL-2.0+ @@ -97,6 +97,10 @@ Patch201: plasma-notifications-kill-timer.diff Patch202: plasma-disable-networkmanager.diff Patch211: disable-python-support.diff +# Patch from Fedora to enable plymouth support in KDM. +# Patch is based on the changes within GDM to detect running plymouth +# and issue a quit to the plymouth daemon +Patch400: kdm_plymouth.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %suse_version > 1200 @@ -328,6 +332,7 @@ %patch201 -p1 %patch202 -p1 %patch211 +%patch400 -p0 cp %{SOURCE3} kwin/effects/cube/data/cubecap.png %build ++++++ python-kdebase4.spec ++++++ --- /var/tmp/diff_new_pack.l1KYKt/_old 2012-03-12 20:15:00.000000000 +0100 +++ /var/tmp/diff_new_pack.l1KYKt/_new 2012-03-12 20:15:00.000000000 +0100 @@ -17,7 +17,7 @@ Name: python-kdebase4 -Version: 4.8.0 +Version: 4.8.1 Release: 0 Summary: Python bindings for KDE 4 desktop shell License: GPL-2.0+ ++++++ kde-workspace-4.8.0.tar.bz2 -> kde-workspace-4.8.1.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/kdebase4-workspace/kde-workspace-4.8.0.tar.bz2 /work/SRC/openSUSE:Factory/.kdebase4-workspace.new/kde-workspace-4.8.1.tar.bz2 differ: char 11, line 1 ++++++ kdm_plymouth.patch ++++++ --- kdm/backend/dm.c 2011-09-06 16:09:17.000000000 +0200 +++ kdm/backend/dm.c 2011-09-07 16:23:59.017135854 +0200 @@ -1347,6 +1347,81 @@ return activeVTs; } +static int +get_active_vt (void) +{ + int console_fd; + struct vt_stat console_state = { 0 }; + console_fd = open ("/dev/tty0", O_RDONLY | O_NOCTTY); + if (console_fd < 0) { + goto out; + } + if (ioctl (console_fd, VT_GETSTATE, &console_state) < 0) { + goto out; + } +out: + if (console_fd >= 0) { + close (console_fd); + } + return console_state.v_active; +} + +static int +plymouth_is_running (void) +{ + int status; + status = system ("/bin/plymouth --ping"); + + return WIFEXITED (status) && WEXITSTATUS (status) == 0; +} + +static int +plymouth_has_active_vt (void) +{ + int status; + status = system ("/bin/plymouth --has-active-vt"); + + return WIFEXITED (status) && WEXITSTATUS (status) == 0; +} + +static int +plymouth_prepare_for_transition (void) +{ + int status; + status = system ("/bin/plymouth deactivate"); + + return WIFEXITED (status) && WEXITSTATUS (status) == 0; +} + +int +plymouth_quit_with_transition (void) +{ + int status; + status = system ("/bin/plymouth quit --retain-splash"); + + return WIFEXITED (status) && WEXITSTATUS (status) == 0; +} + +static int +plymouth_quit_without_transition (void) +{ + int status; + status = system ("/bin/plymouth quit"); + + return WIFEXITED (status) && WEXITSTATUS (status) == 0; +} + +static int +triggered_to_force_display_on_active_vt (void) +{ + int should_force_display_on_active_vt; + should_force_display_on_active_vt=open("/var/spool/gdm/force-display-on-active-vt", O_RDONLY); + if ( should_force_display_on_active_vt >= 0 ) + close(should_force_display_on_active_vt); + unlink("/var/spool/gdm/force-display-on-active-vt"); + return should_force_display_on_active_vt; +} + static void allocateVT(struct display *d) { @@ -1356,6 +1431,43 @@ if ((d->displayType & d_location) == dLocal && d->status == notRunning && !d->serverVT && d->reqSrvVT >= 0) { + /* check for plymouth using newer methods */ + d->plymouth_is_running = plymouth_is_running (); + if (d->plymouth_is_running) { + /* call plymouth deactivate */ + plymouth_prepare_for_transition (); + if (plymouth_has_active_vt ()) { + /* plymouth was displaying a splash screen and has + * terminated leaving it on screen + */ + int vt; + vt = get_active_vt (); + if (vt > 0) { + /* start the X server on the active vt */ + d->serverVT = vt; + return; + } + } + else { + /* plymouth might have been running but did not display + * a splash screen. + */ + + /* call plymouth quit and start the X server as usual */ + d->plymouth_is_running = !plymouth_quit_without_transition (); + } + + /* fallback to old/deprecated method */ + } else if ( triggered_to_force_display_on_active_vt() >= 0 ) { + int vt; + vt = get_active_vt(); + if (vt > 0) { + d->serverVT = vt; + return; + } + } + + if (d->reqSrvVT && d->reqSrvVT < 16) { d->serverVT = d->reqSrvVT; } else { --- kdm/backend/dm.h 2011-09-06 16:09:17.000000000 +0200 +++ kdm/backend/dm.h 2011-09-07 16:23:59.018135847 +0200 @@ -304,6 +304,8 @@ int authNum; /* number of authorizations */ char *authFile; /* file to store authorization in */ char *greeterAuthFile; /* file to store authorization for greeter in */ + + int plymouth_is_running; /* Plymouth's status */ }; #define d_location 1 @@ -428,6 +430,8 @@ void forEachDisplay(void (*f)(struct display *)); #ifdef HAVE_VTS void forEachDisplayRev(void (*f)(struct display *)); +/* function for plymouth */ +int plymouth_quit_with_transition (void); #endif void removeDisplay(struct display *old); struct display --- kdm/backend/server.c 2011-09-06 16:09:17.000000000 +0200 +++ kdm/backend/server.c 2011-09-07 16:23:59.018135847 +0200 @@ -137,6 +137,11 @@ struct display *d = startingServer; d->serverStatus = ignore; serverTimeout = TO_INF; + if (d->plymouth_is_running) { + debug( "Quitting Plymouth with transition\n" ); + d->plymouth_is_running = !plymouth_quit_with_transition (); + debug ("Is Plymouth still running? %s\n", d->plymouth_is_running ? "yes" : "no"); + } debug("X server ready, starting session\n"); startDisplayP2(d); } -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de