From ce7b9f50c3fadbad22feeb28e4429ad9bee02bcc Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Fri, 3 Oct 2014 15:58:44 +0200 Subject: console: add user console daemon This adds a first draft of systemd-consoled. This is still missing a lot of features and does some rather primitive rendering. However, it shows the direction this code is going and serves as basis for further testing. The systemd-consoled binary should be run as `systemd --user' unit. It automatically picks up any session marked as Desktop=SYSTEMD-CONSOLE. Therefore, you can use any login-manager you want (ranging from /bin/login to gdm) to create sessions for systemd-consoled. However, the sessions managers must be prepared to set the Desktop= variable properly. The user-session is called `systemd-console', only the daemon providing the terminal environment is called `systemd-consoled' (mind the 'd'). So far, only a single terminal session is provided on each opened user-session. However, we support multiple user-sessions (even across multiple seats) just fine. In the future, the workspace logic will get extended so you can have multiple terminal sessions in a single user-session for easier access. Note that this is still experimental! Instructions on how to run it will follow shortly. --- Makefile.am | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'Makefile.am') diff --git a/Makefile.am b/Makefile.am index 503302851b..60011b7d98 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3020,6 +3020,9 @@ if ENABLE_TERMINAL noinst_LTLIBRARIES += \ libsystemd-terminal.la +bin_PROGRAMS += \ + systemd-consoled + noinst_PROGRAMS += \ systemd-evcat \ systemd-modeset \ @@ -3068,6 +3071,25 @@ libsystemd_terminal_la_LIBADD = \ libsystemd-shared.la \ $(TERMINAL_LIBS) +systemd_consoled_CFLAGS = \ + $(AM_CFLAGS) \ + $(TERMINAL_CFLAGS) + +systemd_consoled_SOURCES = \ + src/console/consoled.h \ + src/console/consoled.c \ + src/console/consoled-display.c \ + src/console/consoled-manager.c \ + src/console/consoled-session.c \ + src/console/consoled-terminal.c \ + src/console/consoled-workspace.c + +systemd_consoled_LDADD = \ + libsystemd-terminal.la \ + libsystemd-internal.la \ + libsystemd-shared.la \ + $(TERMINAL_LIBS) + systemd_evcat_CFLAGS = \ $(AM_CFLAGS) \ $(TERMINAL_CFLAGS) -- cgit v1.2.3-54-g00ecf