rpms/kdebase-workspace/devel kdebase-workspace-4.4.92-kdm_plymouth.patch, 1.2, 1.3 kdebase-workspace-4.4.92-kdm_plymouth081.patch, 1.2, 1.3 kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch, 1.2, 1.3 kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch, 1.2, 1.3 kdebase-workspace.spec, 1.417, 1.418 kdebase-workspace-4.3.75-show_systemsettings.patch, 1.3, NONE kdebase-workspace-4.3.80-xsession_errors_O_APPEND.patch, 1.3, NONE kdebase-workspace-4.4.2-kdm_plymouth.patch, 1.3, NONE kdebase-workspace-4.4.80-kdm_plymouth081.patch, 1.3, NONE
Rex Dieter
rdieter at fedoraproject.org
Wed Jul 7 22:42:40 UTC 2010
Author: rdieter
Update of /cvs/pkgs/rpms/kdebase-workspace/devel
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv18160
Modified Files:
kdebase-workspace.spec
Added Files:
kdebase-workspace-4.4.92-kdm_plymouth.patch
kdebase-workspace-4.4.92-kdm_plymouth081.patch
kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch
kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch
Removed Files:
kdebase-workspace-4.3.75-show_systemsettings.patch
kdebase-workspace-4.3.80-xsession_errors_O_APPEND.patch
kdebase-workspace-4.4.2-kdm_plymouth.patch
kdebase-workspace-4.4.80-kdm_plymouth081.patch
Log Message:
ok, mild insanity, we *do* need some patches rebased after all
kdebase-workspace-4.4.92-kdm_plymouth.patch:
dm.c | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
Index: kdebase-workspace-4.4.92-kdm_plymouth.patch
===================================================================
RCS file: kdebase-workspace-4.4.92-kdm_plymouth.patch
diff -N kdebase-workspace-4.4.92-kdm_plymouth.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ kdebase-workspace-4.4.92-kdm_plymouth.patch 7 Jul 2010 22:42:38 -0000 1.3
@@ -0,0 +1,55 @@
+diff -up kdebase-workspace-4.4.92/kdm/backend/dm.c.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/dm.c
+--- kdebase-workspace-4.4.92/kdm/backend/dm.c.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
++++ kdebase-workspace-4.4.92/kdm/backend/dm.c 2010-07-07 14:01:03.867921854 -0500
+@@ -1329,6 +1329,36 @@ getBusyVTs(void)
+ 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
++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)
+ {
+@@ -1338,6 +1368,14 @@ allocateVT(struct display *d)
+ if ((d->displayType & d_location) == dLocal &&
+ d->status == notRunning && !d->serverVT && d->reqSrvVT >= 0)
+ {
++ 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 {
kdebase-workspace-4.4.92-kdm_plymouth081.patch:
dm.c | 112 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
dm.h | 4 ++
server.c | 5 ++
3 files changed, 121 insertions(+)
Index: kdebase-workspace-4.4.92-kdm_plymouth081.patch
===================================================================
RCS file: kdebase-workspace-4.4.92-kdm_plymouth081.patch
diff -N kdebase-workspace-4.4.92-kdm_plymouth081.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ kdebase-workspace-4.4.92-kdm_plymouth081.patch 7 Jul 2010 22:42:38 -0000 1.3
@@ -0,0 +1,165 @@
+diff -up kdebase-workspace-4.4.92/kdm/backend/dm.c.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/dm.c
+--- kdebase-workspace-4.4.92/kdm/backend/dm.c.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
++++ kdebase-workspace-4.4.92/kdm/backend/dm.c 2010-07-07 13:55:48.425171749 -0500
+@@ -1329,6 +1329,81 @@ getBusyVTs(void)
+ 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)
+ {
+@@ -1338,6 +1413,43 @@ allocateVT(struct display *d)
+ if ((d->displayType & d_location) == dLocal &&
+ d->status == notRunning && !d->serverVT && d->reqSrvVT >= 0)
+ {
++ /* check for pymouth using old/deprecated method first */
++ if ( triggered_to_force_display_on_active_vt() >= 0 ) {
++ int vt;
++ vt = get_active_vt();
++ if (vt > 0) {
++ d->serverVT = vt;
++ return;
++ }
++ }
++
++ /* 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 ();
++ }
++ }
++
+ if (d->reqSrvVT && d->reqSrvVT < 16) {
+ d->serverVT = d->reqSrvVT;
+ } else {
+diff -up kdebase-workspace-4.4.92/kdm/backend/dm.h.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/dm.h
+--- kdebase-workspace-4.4.92/kdm/backend/dm.h.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
++++ kdebase-workspace-4.4.92/kdm/backend/dm.h 2010-07-07 13:48:11.874921158 -0500
+@@ -292,6 +292,8 @@ struct display {
+ 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
+@@ -404,6 +406,8 @@ int anyDisplaysLeft(void);
+ 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
+diff -up kdebase-workspace-4.4.92/kdm/backend/server.c.kdm_plymouth kdebase-workspace-4.4.92/kdm/backend/server.c
+--- kdebase-workspace-4.4.92/kdm/backend/server.c.kdm_plymouth 2010-07-06 01:54:30.000000000 -0500
++++ kdebase-workspace-4.4.92/kdm/backend/server.c 2010-07-07 13:56:46.960921366 -0500
+@@ -137,6 +137,11 @@ startServerSuccess()
+ 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);
+ }
kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch:
systemsettings.desktop | 1 +
1 file changed, 1 insertion(+)
Index: kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch
===================================================================
RCS file: kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch
diff -N kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch 7 Jul 2010 22:42:38 -0000 1.3
@@ -0,0 +1,9 @@
+diff -up kdebase-workspace-4.4.92/plasma/desktop/applets/kickoff/core/applicationmodel.cpp.show_systemsettings kdebase-workspace-4.4.92/plasma/desktop/applets/kickoff/core/applicationmodel.cpp
+diff -up kdebase-workspace-4.4.92/systemsettings/app/systemsettings.desktop.show_systemsettings kdebase-workspace-4.4.92/systemsettings/app/systemsettings.desktop
+--- kdebase-workspace-4.4.92/systemsettings/app/systemsettings.desktop.show_systemsettings 2010-04-28 03:01:06.000000000 -0500
++++ kdebase-workspace-4.4.92/systemsettings/app/systemsettings.desktop 2010-07-07 17:32:00.204202460 -0500
+@@ -169,3 +169,4 @@ Name[zh_TW]=系統設定
+
+ X-DBUS-StartupType=Unique
+ Categories=Qt;KDE;Settings;
++OnlyShowIn=KDE;
kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch:
client.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch
===================================================================
RCS file: kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch
diff -N kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch 7 Jul 2010 22:42:39 -0000 1.3
@@ -0,0 +1,12 @@
+diff -up kdebase-workspace-4.4.92/kdm/backend/client.c.xsession_errors_O_APPEND kdebase-workspace-4.4.92/kdm/backend/client.c
+--- kdebase-workspace-4.4.92/kdm/backend/client.c.xsession_errors_O_APPEND 2010-07-06 01:54:30.000000000 -0500
++++ kdebase-workspace-4.4.92/kdm/backend/client.c 2010-07-07 12:27:24.901922619 -0500
+@@ -1223,7 +1223,7 @@ createClientLog(const char *log)
+ if (!(lname = expandMacros(log, macros)))
+ exit(1);
+ unlink(lname);
+- if ((lfd = open(lname, O_WRONLY|O_CREAT|O_EXCL, 0600)) >= 0) {
++ if ((lfd = open(lname, O_WRONLY|O_CREAT|O_EXCL|O_APPEND, 0600)) >= 0) {
+ dup2(lfd, 1);
+ dup2(lfd, 2);
+ close(lfd);
Index: kdebase-workspace.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kdebase-workspace/devel/kdebase-workspace.spec,v
retrieving revision 1.417
retrieving revision 1.418
diff -u -p -r1.417 -r1.418
--- kdebase-workspace.spec 7 Jul 2010 19:57:25 -0000 1.417
+++ kdebase-workspace.spec 7 Jul 2010 22:42:39 -0000 1.418
@@ -23,7 +23,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version
Patch1: kdebase-workspace-4.4.80-redhat-startkde.patch
Patch2: kdebase-workspace-4.3.98-plasma-konsole.patch
-Patch3: kdebase-workspace-4.3.75-show_systemsettings.patch
+Patch3: kdebase-workspace-4.4.92-systemsettings_onlyshowin_kde.patch
%if 0%{?polkit_1}
Patch4: kdebase-workspace-4.3.95-ck-shutdown.patch
%else
@@ -45,10 +45,10 @@ Patch16: kdebase-workspace-4.4.80-batter
# to the classic menu (as in KDE <= 4.2.x); the default is still the upstream
# default Leave submenu
Patch17: kdebase-workspace-4.4.0-classicmenu-logout.patch
-Patch18: kdebase-workspace-4.4.2-kdm_plymouth.patch
+Patch18: kdebase-workspace-4.4.92-kdm_plymouth.patch
# kubuntu kudos! bulletproof-X bits ripped out
-Patch19: kdebase-workspace-4.4.80-kdm_plymouth081.patch
-Patch20: kdebase-workspace-4.3.80-xsession_errors_O_APPEND.patch
+Patch19: kdebase-workspace-4.4.92-kdm_plymouth081.patch
+Patch20: kdebase-workspace-4.4.92-xsession_errors_O_APPEND.patch
# support the widgetStyle4 hack in the Qt KDE platform plugin
Patch21: kdebase-workspace-4.3.98-platformplugin-widgetstyle4.patch
# fix the Games menu in the classic menu mixing up Name and Description
@@ -288,7 +288,7 @@ Requires: akonadi
# RH/Fedora-specific startkde changes
%patch1 -p1 -b .redhat-startkde
%patch2 -p1 -b .plasma-konsole
-%patch3 -p1 -b .show_systemsettings
+%patch3 -p1 -b .systemsettings_onlyshowin_kde
# ConsoleKit >= 0.2.4 shutdown/reboot support (needed for GDM 2.22)
%patch4 -p1 -b .ck-shutdown
%patch7 -p0 -b .krdb
--- kdebase-workspace-4.3.75-show_systemsettings.patch DELETED ---
--- kdebase-workspace-4.3.80-xsession_errors_O_APPEND.patch DELETED ---
--- kdebase-workspace-4.4.2-kdm_plymouth.patch DELETED ---
--- kdebase-workspace-4.4.80-kdm_plymouth081.patch DELETED ---
More information about the scm-commits
mailing list