Skip to content

Commit

Permalink
daemon: clean house (drop factory mode)
Browse files Browse the repository at this point in the history
GDM has a currently unused feature called "factory mode", where
the login screen gets allocated its own VT and any subsequent logins
from that login screen go to their own VT.  Any time there's a user
switch GDM just jumps back to initial VT where the login screen is
patiently waiting.

This feature has a lot of upsides, and we've had it as a TODO item to
start using it for while now.

It doesn't look it's going to happen in the near term, though, and
factory mode has downsides as well:

- a VT switch after the user hits enter at the login screen would be
  jarring and would ruin the "flicker free" boot experience we've tried
  to acheive at various points in the past. This could theoretically be
  fixed by Wayland.

- it adds a bunch of untested, unused code to the codebase.

This latter reason makes me want to kill it for now. It shouldn't be
hard to resurrect later if we end up needing the feature.

This commit drops that code.
  • Loading branch information
halfline committed Jul 6, 2012
1 parent 84c9c43 commit c8bffea
Show file tree
Hide file tree
Showing 17 changed files with 0 additions and 3,318 deletions.
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,9 @@ configure.lineno
gdm.conf
gdm.conf-custom
gdm-display-glue.h
gdm-factory-slave-glue.h
gdm-local-display-factory-glue.h
gdm-manager-glue.h
gdm.pot
gdm-product-display-glue.h
gdm-product-slave-glue.h
gdm-restart
gdm-safe-restart
gdm.schemas
Expand Down
22 changes: 0 additions & 22 deletions daemon/INTERNALS
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,6 @@ Server diplay.

A subclass of GdmDisplay that represents a local display.

*** GdmProductDisplay

A subclass of GdmDisplay that only runs a user session. It does not
run a login greeter interface. It will also be destroyed when
the user session ends.

*** GdmXdmcpDisplay

A subclass of GdmDisplay that represents a remote XDMCP display.
Expand All @@ -57,15 +51,6 @@ slave communicates with the parent display using the D-Bus protocol.
A subclass of GdmSlave that runs both a login greeter and a user
session.

*** GdmFactorySlave

A subclass of GdmSlave that only runs a login greeter.

*** GdmProductSlave

A subclass of GdmSlave that only runs a user session.


** GdmServer

A class that manages running a local X Server.
Expand Down Expand Up @@ -93,13 +78,6 @@ A class of object that implements the GdmSession interface. It is
used to start and directly control a GdmSessionWorker subprocess by
creating a D-Bus server on a private connection.

*** GdmSessionRelay

A class of object that implements the GdmSession interface. It is
used to relay session controls to a remote listener. In particular,
it is used to relay messages between the GreeterServer in a
GdmFactorySlave and the GdmSessionDirect in a GdmProductSlave.

** GdmSessionWorkerJob

A class that manages running a GdmSessionWorker subprocess. This will
Expand Down
91 changes: 0 additions & 91 deletions daemon/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@ AM_CPPFLAGS = \
BUILT_SOURCES = \
gdm-slave-glue.h \
gdm-simple-slave-glue.h \
gdm-factory-slave-glue.h \
gdm-product-slave-glue.h \
gdm-xdmcp-chooser-slave-glue.h \
gdm-session-direct-glue.h \
gdm-manager-glue.h \
Expand All @@ -42,7 +40,6 @@ BUILT_SOURCES = \
gdm-static-display-glue.h \
gdm-transient-display-glue.h \
gdm-local-display-factory-glue.h \
gdm-product-display-glue.h \
$(NULL)

gdm-manager-glue.h: gdm-manager.xml Makefile.am
Expand All @@ -51,10 +48,6 @@ gdm-slave-glue.h: gdm-slave.xml Makefile.am
dbus-binding-tool --prefix=gdm_slave --mode=glib-server --output=gdm-slave-glue.h $(srcdir)/gdm-slave.xml
gdm-simple-slave-glue.h: gdm-simple-slave.xml Makefile.am
dbus-binding-tool --prefix=gdm_simple_slave --mode=glib-server --output=gdm-simple-slave-glue.h $(srcdir)/gdm-simple-slave.xml
gdm-factory-slave-glue.h: gdm-factory-slave.xml Makefile.am
dbus-binding-tool --prefix=gdm_factory_slave --mode=glib-server --output=gdm-factory-slave-glue.h $(srcdir)/gdm-factory-slave.xml
gdm-product-slave-glue.h: gdm-product-slave.xml Makefile.am
dbus-binding-tool --prefix=gdm_product_slave --mode=glib-server --output=gdm-product-slave-glue.h $(srcdir)/gdm-product-slave.xml
gdm-xdmcp-chooser-slave-glue.h: gdm-xdmcp-chooser-slave.xml Makefile.am
dbus-binding-tool --prefix=gdm_xdmcp_chooser_slave --mode=glib-server --output=gdm-xdmcp-chooser-slave-glue.h $(srcdir)/gdm-xdmcp-chooser-slave.xml
gdm-session-direct-glue.h: gdm-session-direct.xml Makefile.am
Expand All @@ -71,8 +64,6 @@ gdm-transient-display-glue.h: gdm-transient-display.xml Makefile.am
dbus-binding-tool --prefix=gdm_transient_display --mode=glib-server --output=gdm-transient-display-glue.h $(srcdir)/gdm-transient-display.xml
gdm-local-display-factory-glue.h: gdm-local-display-factory.xml Makefile.am
dbus-binding-tool --prefix=gdm_local_display_factory --mode=glib-server --output=gdm-local-display-factory-glue.h $(srcdir)/gdm-local-display-factory.xml
gdm-product-display-glue.h: gdm-product-display.xml Makefile.am
dbus-binding-tool --prefix=gdm_product_display --mode=glib-server --output=gdm-product-display-glue.h $(srcdir)/gdm-product-display.xml

noinst_PROGRAMS = \
test-session \
Expand Down Expand Up @@ -101,8 +92,6 @@ test_session_LDADD = \

libexec_PROGRAMS = \
gdm-simple-slave \
gdm-factory-slave \
gdm-product-slave \
gdm-session-worker \
$(NULL)

Expand Down Expand Up @@ -152,82 +141,6 @@ gdm_simple_slave_LDADD = \
$(SYSTEMD_LIBS) \
$(NULL)

gdm_factory_slave_SOURCES = \
factory-slave-main.c \
gdm-greeter-server.c \
gdm-greeter-server.h \
gdm-welcome-session.c \
gdm-welcome-session.h \
gdm-greeter-session.c \
gdm-greeter-session.h \
gdm-server.c \
gdm-server.h \
gdm-session.c \
gdm-session.h \
gdm-session-direct.c \
gdm-session-direct.h \
gdm-session-private.h \
gdm-session-record.c \
gdm-session-record.h \
gdm-session-relay.c \
gdm-session-relay.h \
gdm-session-worker-job.c \
gdm-session-worker-job.h \
gdm-xerrors.h \
gdm-xerrors.c \
gdm-slave.c \
gdm-slave.h \
gdm-factory-slave.c \
gdm-factory-slave.h \
$(NULL)

gdm_factory_slave_LDFLAGS = \
$(PAM_LIBS) \
$(LIBXKLAVIER_LIBS) \
$(NULL)

gdm_factory_slave_LDADD = \
$(top_builddir)/common/libgdmcommon.la \
$(XLIB_LIBS) \
$(DAEMON_LIBS) \
$(SYSTEMD_LIBS) \
$(NULL)

gdm_product_slave_SOURCES = \
product-slave-main.c \
gdm-server.c \
gdm-server.h \
gdm-session.c \
gdm-session.h \
gdm-session-private.h \
gdm-session-direct.c \
gdm-session-direct.h \
gdm-session-record.c \
gdm-session-record.h \
gdm-session-worker-job.c \
gdm-session-worker-job.h \
gdm-xerrors.h \
gdm-xerrors.c \
gdm-slave.c \
gdm-slave.h \
gdm-product-slave.c \
gdm-product-slave.h \
$(NULL)

gdm_product_slave_LDFLAGS = \
$(PAM_LIBS) \
$(LIBXKLAVIER_LIBS) \
$(NULL)

gdm_product_slave_LDADD = \
$(top_builddir)/common/libgdmcommon.la \
$(XLIB_LIBS) \
$(DAEMON_LIBS) \
$(EXTRA_DAEMON_LIBS) \
$(LIBXKLAVIER_LIBS) \
$(SYSTEMD_LIBS) \
$(NULL)

gdm_xdmcp_chooser_slave_SOURCES = \
xdmcp-chooser-slave-main.c \
gdm-chooser-server.c \
Expand Down Expand Up @@ -313,8 +226,6 @@ gdm_binary_SOURCES = \
gdm-static-display.h \
gdm-transient-display.c \
gdm-transient-display.h \
gdm-product-display.c \
gdm-product-display.h \
gdm-manager.c \
gdm-manager.h \
gdm-slave-proxy.c \
Expand Down Expand Up @@ -380,7 +291,6 @@ EXTRA_DIST = \
gdm.in \
gdm-slave.xml \
gdm-simple-slave.xml \
gdm-factory-slave.xml \
gdm-product-slave.xml \
gdm-xdmcp-chooser-slave.xml \
gdm-session-direct.xml \
Expand All @@ -391,5 +301,4 @@ EXTRA_DIST = \
gdm-static-display.xml \
gdm-transient-display.xml \
gdm-local-display-factory.xml \
gdm-product-display.xml \
$(NULL)
Loading

0 comments on commit c8bffea

Please sign in to comment.