From: Lennart Poettering Date: Mon, 15 Nov 2010 21:12:41 +0000 (+0100) Subject: drop support for MANAGER_SESSION, introduce MANAGER_USER instead X-Git-Tag: v12~17 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=af2d49f70bcff20efaf2d69aecaf4b3e898ff1fa drop support for MANAGER_SESSION, introduce MANAGER_USER instead --- diff --git a/Makefile.am b/Makefile.am index 3389f436d..8cc25306f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -30,9 +30,9 @@ bashcompletiondir=$(sysconfdir)/bash_completion.d # Our own, non-special dirs pkgsysconfdir=$(sysconfdir)/systemd -sessionunitdir=$(pkgdatadir)/session +userunitdir=$(pkgdatadir)/user tmpfilesdir=$(sysconfdir)/tmpfiles.d -sessiongeneratordir=$(pkglibexecdir)/session-generators +usergeneratordir=$(pkglibexecdir)/user-generators # And these are the special ones for / rootdir=@rootdir@ @@ -49,9 +49,9 @@ AM_CPPFLAGS = \ -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \ -DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \ -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \ - -DSESSION_CONFIG_FILE=\"$(pkgsysconfdir)/session.conf\" \ - -DSESSION_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/session\" \ - -DSESSION_DATA_UNIT_PATH=\"$(sessionunitdir)\" \ + -DUSER_CONFIG_FILE=\"$(pkgsysconfdir)/user.conf\" \ + -DUSER_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/user\" \ + -DUSER_DATA_UNIT_PATH=\"$(userunitdir)\" \ -DSYSTEMD_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \ -DSYSTEMD_BINARY_PATH=\"$(rootbindir)/systemd\" \ -DSYSTEMD_SHUTDOWN_BINARY_PATH=\"$(rootlibexecdir)/systemd-shutdown\" \ @@ -61,7 +61,7 @@ AM_CPPFLAGS = \ -DRANDOM_SEED=\"$(localstatedir)/lib/random-seed\" \ -DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \ -DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \ - -DSESSION_GENERATOR_PATH=\"$(sessiongeneratordir)\" \ + -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \ -I $(top_srcdir)/src if TARGET_GENTOO @@ -268,13 +268,13 @@ nodist_systemunit_DATA = \ units/quotacheck.service \ units/rescue.service -dist_sessionunit_DATA = \ - units/session/default.target \ - units/session/exit.target +dist_userunit_DATA = \ + units/user/default.target \ + units/user/exit.target -nodist_sessionunit_DATA = \ - units/session/remote-fs.target \ - units/session/exit.service +nodist_userunit_DATA = \ + units/user/remote-fs.target \ + units/user/exit.service EXTRA_DIST = \ units/getty@.service.m4 \ @@ -307,7 +307,7 @@ EXTRA_DIST = \ units/poweroff.service.in \ units/reboot.service.in \ units/kexec.service.in \ - units/session/exit.service.in \ + units/user/exit.service.in \ units/fsck@.service.in \ units/fsck-root.service.in \ units/quotacheck.service.in \ @@ -1008,19 +1008,19 @@ M4_PROCESS_SYSTEM = \ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \ $(M4) -P $(M4_DISTRO_FLAG) -DFOR_SYSTEM=1 < $< > $@ || rm $@ -M4_PROCESS_SESSION = \ +M4_PROCESS_USER = \ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \ - $(M4) -P $(M4_DISTRO_FLAG) -DFOR_SESSION=1 < $< > $@ || rm $@ + $(M4) -P $(M4_DISTRO_FLAG) -DFOR_USER=1 < $< > $@ || rm $@ units/%: units/%.m4 Makefile $(M4_PROCESS_SYSTEM) -units/session/%: units/%.m4 Makefile - $(M4_PROCESS_SESSION) +units/user/%: units/%.m4 Makefile + $(M4_PROCESS_USER) CLEANFILES = \ $(nodist_systemunit_DATA) \ - $(nodist_sessionunit_DATA) \ + $(nodist_userunit_DATA) \ $(nodist_man_MANS) \ ${XML_IN_FILES:.xml.in=.html} \ $(pkgconfigdata_DATA) @@ -1105,7 +1105,7 @@ CLEANFILES += \ install-data-hook: $(MKDIR_P) -m 0755 \ $(DESTDIR)$(systemunitdir) \ - $(DESTDIR)$(sessionunitdir) \ + $(DESTDIR)$(userunitdir) \ $(DESTDIR)$(systemunitdir)/sysinit.target.wants \ $(DESTDIR)$(systemunitdir)/sockets.target.wants \ $(DESTDIR)$(systemunitdir)/basic.target.wants \ @@ -1123,11 +1123,11 @@ install-data-hook: $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants \ $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \ $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \ - $(DESTDIR)$(pkgsysconfdir)/session \ + $(DESTDIR)$(pkgsysconfdir)/user \ $(DESTDIR)$(sysconfdir)/xdg/systemd ( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \ - rm -f session && \ - $(LN_S) $(pkgsysconfdir)/session session ) + rm -f user && \ + $(LN_S) $(pkgsysconfdir)/user user ) ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \ rm -f systemd-initctl.socket systemd-logger.socket systemd-shutdownd.socket syslog.socket && \ $(LN_S) ../systemd-logger.socket systemd-logger.socket && \ @@ -1167,7 +1167,7 @@ install-data-hook: $(LN_S) ../remount-rootfs.service remount-rootfs.service && \ $(LN_S) ../var-run.mount var-run.mount && \ $(LN_S) ../var-lock.mount var-lock.mount ) - ( cd $(DESTDIR)$(sessionunitdir) && \ + ( cd $(DESTDIR)$(userunitdir) && \ rm -f shutdown.target sockets.target local-fs.target swap.target bluetooth.target printer.target && \ $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \ $(LN_S) $(systemunitdir)/sockets.target sockets.target && \ diff --git a/TODO b/TODO index 29b70115a..945f8d998 100644 --- a/TODO +++ b/TODO @@ -42,8 +42,6 @@ * add systemctl switch to dump transaction without executing it -* system.conf/session.conf man page - * suspend, resume * systemctl auto-pager a la git @@ -79,8 +77,6 @@ * declare /etc/os-release cross-distro standard -* rename s/session/user/g - * fix hotplug transactions External: diff --git a/man/daemon.xml b/man/daemon.xml index 42a7ffd8b..f592e7d6e 100644 --- a/man/daemon.xml +++ b/man/daemon.xml @@ -760,8 +760,8 @@ --variable=systemdsystemunitdir (for system services), resp. pkg-config systemd - --variable=systemdsessionunitdir - (for session services). This will make the + --variable=systemduserunitdir + (for user services). This will make the services available in the system on explicit request but not activate them automatically during boot. Optionally, during package @@ -795,7 +795,7 @@ AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_sy machines, and optionally allows their installation even on machines lacking systemd. (Modification of this snippet for the - session unit directory is left as excercise to the + user unit directory is left as excercise to the reader.) Additionally, to ensure that diff --git a/man/systemadm.xml b/man/systemadm.xml index 1377b18c2..cefc30098 100644 --- a/man/systemadm.xml +++ b/man/systemadm.xml @@ -45,7 +45,7 @@ systemadm Graphical frontend for the systemd system - and session manager + and service manager @@ -58,7 +58,7 @@ Description systemadm is a graphical - frontend for the systemd system and session manager + frontend for the systemd system and service manager and allows introspection and control of systemd. @@ -87,10 +87,10 @@ - + Connect to the systemd - session manager of the calling + manager of the calling user. diff --git a/man/systemctl.xml b/man/systemctl.xml index 10e0f8244..844d21887 100644 --- a/man/systemctl.xml +++ b/man/systemctl.xml @@ -44,7 +44,7 @@ systemctl - Control the systemd system and session manager + Control the systemd system and service manager @@ -59,7 +59,7 @@ systemctl may be used to introspect and control the state of the systemd1 - system and session manager. + system and service manager. @@ -178,10 +178,10 @@ - + Talk to the systemd - session manager of the calling user. + manager of the calling user. @@ -224,10 +224,10 @@ When used with enable and disable, operate on the - global session configuŕation + global user configuŕation directory, thus enabling or disabling a unit file globally for all future - sessions of all users. + logins of all users. @@ -598,11 +598,11 @@ Depending on whether , - or + or is specified this enables the unit for the system, - for sessions of the calling user only - or for all future session of all + for the calling user only + or for all future logins of all users. Note that in the latter case no systemd daemon configuration is reloaded. @@ -643,7 +643,7 @@ This command honours , - , + , in a similar way as enable. @@ -942,9 +942,9 @@ Ask the systemd manager to quit. This is only - supported for session managers + supported for user service managers (i.e. in conjunction with the - option) and + option) and will fail otherwise. diff --git a/man/systemd.conf.xml b/man/systemd.conf.xml index 399cae0a6..6759f9781 100644 --- a/man/systemd.conf.xml +++ b/man/systemd.conf.xml @@ -49,7 +49,7 @@ system.conf - session.conf + user.conf @@ -57,7 +57,7 @@ When run as system instance systemd reads the configuration file system.conf, - otherwise session.conf. These + otherwise user.conf. These configuration files contain a few settings controlling basic manager operations. @@ -79,6 +79,7 @@ DumpCore=yes CrashShell=no ShowStatus=yes + SysVConsole=yes CrashChVT=1 Configures various @@ -99,6 +100,18 @@ process. Takes a space-separated list of CPU indexes. + + + MountAuto=yes + SwapAuto=yes + + Configures whether + systemd should automatically activate + all swap or mounts listed in + /etc/fstab, or + whether this job is left to some other + system script. + diff --git a/man/systemd.special.xml.in b/man/systemd.special.xml.in index 2855f6a25..afe882e51 100644 --- a/man/systemd.special.xml.in +++ b/man/systemd.special.xml.in @@ -698,9 +698,9 @@ - Special Session Units + Special User Units - When systemd runs as a service instance, the + When systemd runs as a user instance, the following special units are available, which have similar definitions as their system counterparts: default.target, @@ -719,22 +719,22 @@ A special service unit for shutting down the - session. + user service manager. Applications wanting to - terminate the session should - start this unit. If systemd - receives SIGTERM or SIGINT - when running as session daemon - it will start this - unit. + terminate the user service + manager should start this + unit. If systemd receives + SIGTERM or SIGINT when running + as user service daemon it will + start this unit. Normally, this pulls in shutdown.target which in turn should be conflicted by all units that want to be shut down on - session exit. + user service manager exit. diff --git a/man/systemd.xml b/man/systemd.xml index f434bfcc5..c6c06e57e 100644 --- a/man/systemd.xml +++ b/man/systemd.xml @@ -45,7 +45,7 @@ systemd init - systemd System and Session Manager + systemd System and Service Manager @@ -60,7 +60,7 @@ Description - systemd is a system and session manager for + systemd is a system and service manager for Linux operating systems. When run as first process on boot (as PID 1), it acts as init system that brings up and maintains userspace services. @@ -77,7 +77,7 @@ When run as system instance, systemd interprets the configuration file system.conf, otherwise - session.conf. See + user.conf. See systemd.conf5 for more information. @@ -136,10 +136,10 @@ - + Tell systemd to run a - system instance (resp. session + system instance (resp. user instance), even if the process ID is not 1 (resp. is 1), i.e. systemd is not (resp. is) run as init process. @@ -159,27 +159,36 @@ - Dump core on crash. This switch has no effect when run as session instance. + Dump core on + crash. This switch has no effect when + run as user + instance. - Run shell on crash. This switch has no effect when run as session instance. + Run shell on + crash. This switch has no effect when + run as user + instance. - Ask for confirmation when spawning processes. This switch has no effect when run as session instance. + Ask for confirmation + when spawning processes. This switch + has no effect when run as user + instance. Show terse service status information while booting. This - switch has no effect when run as - session instance. Takes a boolean - argument which may be omitted - which is interpreted as + switch has no effect when run as user + instance. Takes a boolean argument + which may be omitted which is + interpreted as . @@ -188,7 +197,7 @@ Controls whether output of SysV init scripts will be directed to the console. This switch - has no effect when run as session + has no effect when run as user instance. Takes a boolean argument which may be omitted which is interpreted as @@ -489,10 +498,10 @@ - Session unit directories + User unit directories Similar rules apply - for the session unit + for the user unit directories. However, here the XDG Base Directory specification @@ -500,11 +509,11 @@ units. Applications should place their unit files in the directory returned by pkg-config systemd - --variable=systemdsessionunitdir. Global + --variable=systemduserunitdir. Global configuration is done in the directory reported by pkg-config systemd - --variable=systemdsessionconfdir. The + --variable=systemduserconfdir. The enable and disable commands of the @@ -565,12 +574,12 @@ to systemctl daemon-reexec. - systemd session managers will + systemd user managers will start the exit.target unit when this signal is received. This is mostly equivalent to - systemctl --session start + systemctl --user start exit.target. @@ -585,7 +594,7 @@ systemctl start ctl-alt-del.target. - systemd session managers + systemd user managers treat this signal the same way as SIGTERM. @@ -602,7 +611,7 @@ kbrequest.target. This signal is ignored by - systemd session + systemd user managers. @@ -757,7 +766,7 @@ $XDG_DATA_HOME $XDG_DATA_DIRS - The systemd session + The systemd user manager uses these variables in accordance to the XDG diff --git a/src/dbus-manager.c b/src/dbus-manager.c index 769035f60..d1d3b4784 100644 --- a/src/dbus-manager.c +++ b/src/dbus-manager.c @@ -854,7 +854,7 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection, } else if (dbus_message_is_method_call(message, "org.freedesktop.systemd1.Manager", "Exit")) { if (m->running_as == MANAGER_SYSTEM) { - dbus_set_error(&error, BUS_ERROR_NOT_SUPPORTED, "Exit is only supported for session managers."); + dbus_set_error(&error, BUS_ERROR_NOT_SUPPORTED, "Exit is only supported for user service managers."); return bus_send_error_reply(m, connection, message, &error, -ENOTSUP); } diff --git a/src/dbus.c b/src/dbus.c index 4365bca7b..66076f021 100644 --- a/src/dbus.c +++ b/src/dbus.c @@ -864,7 +864,7 @@ static int bus_init_api(Manager *m) { if (m->running_as == MANAGER_SYSTEM && m->system_bus) m->api_bus = m->system_bus; else { - if (!(m->api_bus = dbus_bus_get_private(m->running_as == MANAGER_SESSION ? DBUS_BUS_SESSION : DBUS_BUS_SYSTEM, &error))) { + if (!(m->api_bus = dbus_bus_get_private(m->running_as == MANAGER_USER ? DBUS_BUS_SESSION : DBUS_BUS_SYSTEM, &error))) { log_debug("Failed to get API D-Bus connection, retrying later: %s", error.message); r = 0; goto fail; diff --git a/src/main.c b/src/main.c index 71e684b1b..4bdc6763f 100644 --- a/src/main.c +++ b/src/main.c @@ -514,7 +514,7 @@ static int parse_config_file(void) { const char *fn; int r; - fn = arg_running_as == MANAGER_SYSTEM ? SYSTEM_CONFIG_FILE : SESSION_CONFIG_FILE; + fn = arg_running_as == MANAGER_SYSTEM ? SYSTEM_CONFIG_FILE : USER_CONFIG_FILE; if (!(f = fopen(fn, "re"))) { if (errno == ENOENT) @@ -573,7 +573,7 @@ static int parse_argv(int argc, char *argv[]) { ARG_LOG_LOCATION, ARG_UNIT, ARG_SYSTEM, - ARG_SESSION, + ARG_USER, ARG_TEST, ARG_DUMP_CONFIGURATION_ITEMS, ARG_DUMP_CORE, @@ -592,7 +592,7 @@ static int parse_argv(int argc, char *argv[]) { { "log-location", optional_argument, NULL, ARG_LOG_LOCATION }, { "unit", required_argument, NULL, ARG_UNIT }, { "system", no_argument, NULL, ARG_SYSTEM }, - { "session", no_argument, NULL, ARG_SESSION }, + { "user", no_argument, NULL, ARG_USER }, { "test", no_argument, NULL, ARG_TEST }, { "help", no_argument, NULL, 'h' }, { "dump-configuration-items", no_argument, NULL, ARG_DUMP_CONFIGURATION_ITEMS }, @@ -671,8 +671,8 @@ static int parse_argv(int argc, char *argv[]) { arg_running_as = MANAGER_SYSTEM; break; - case ARG_SESSION: - arg_running_as = MANAGER_SESSION; + case ARG_USER: + arg_running_as = MANAGER_USER; break; case ARG_TEST: @@ -794,14 +794,14 @@ static int parse_argv(int argc, char *argv[]) { static int help(void) { printf("%s [OPTIONS...]\n\n" - "Starts up and maintains the system or a session.\n\n" + "Starts up and maintains the system or user services.\n\n" " -h --help Show this help\n" " --test Determine startup sequence, dump it and exit\n" " --dump-configuration-items Dump understood unit configuration items\n" " --introspect[=INTERFACE] Extract D-Bus interface data\n" " --unit=UNIT Set default unit\n" " --system Run a system instance, even if PID != 1\n" - " --session Run a session instance\n" + " --user Run a user instance\n" " --dump-core Dump core on crash\n" " --crash-shell Run shell on crash\n" " --confirm-spawn Ask for confirmation when spawning processes\n" @@ -951,7 +951,7 @@ int main(int argc, char *argv[]) { if (label_init() < 0) goto finish; } else { - arg_running_as = MANAGER_SESSION; + arg_running_as = MANAGER_USER; log_set_target(LOG_TARGET_CONSOLE); } @@ -1235,7 +1235,7 @@ finish: if (arg_running_as == MANAGER_SYSTEM) args[i++] = "--system"; else - args[i++] = "--session"; + args[i++] = "--user"; if (arg_dump_core) args[i++] = "--dump-core"; diff --git a/src/manager.c b/src/manager.c index 204a88e79..25d85eaf1 100644 --- a/src/manager.c +++ b/src/manager.c @@ -2015,7 +2015,7 @@ static int manager_start_target(Manager *m, const char *name, JobMode mode) { dbus_error_init(&error); - log_info("Activating special unit %s", name); + log_debug("Activating special unit %s", name); if ((r = manager_add_job_by_name(m, JOB_START, name, mode, true, &error, NULL)) < 0) log_error("Failed to enqueue %s job: %s", name, bus_error(&error, r)); @@ -2839,7 +2839,7 @@ void manager_run_generators(Manager *m) { assert(m); - generator_path = m->running_as == MANAGER_SYSTEM ? SYSTEM_GENERATOR_PATH : SESSION_GENERATOR_PATH; + generator_path = m->running_as == MANAGER_SYSTEM ? SYSTEM_GENERATOR_PATH : USER_GENERATOR_PATH; if (!(d = opendir(generator_path))) { if (errno == ENOENT) @@ -2852,9 +2852,9 @@ void manager_run_generators(Manager *m) { if (!m->generator_unit_path) { char *p; char system_path[] = "/dev/.systemd/generator-XXXXXX", - session_path[] = "/tmp/systemd-generator-XXXXXX"; + user_path[] = "/tmp/systemd-generator-XXXXXX"; - if (!(p = mkdtemp(m->running_as == MANAGER_SYSTEM ? system_path : session_path))) { + if (!(p = mkdtemp(m->running_as == MANAGER_SYSTEM ? system_path : user_path))) { log_error("Failed to generate generator directory: %m"); goto finish; } @@ -2990,7 +2990,7 @@ void manager_undo_generators(Manager *m) { static const char* const manager_running_as_table[_MANAGER_RUNNING_AS_MAX] = { [MANAGER_SYSTEM] = "system", - [MANAGER_SESSION] = "session" + [MANAGER_USER] = "user" }; DEFINE_STRING_TABLE_LOOKUP(manager_running_as, ManagerRunningAs); diff --git a/src/manager.h b/src/manager.h index e61194ad4..c7ace2dd5 100644 --- a/src/manager.h +++ b/src/manager.h @@ -51,7 +51,7 @@ typedef enum ManagerExitCode { typedef enum ManagerRunningAs { MANAGER_SYSTEM, - MANAGER_SESSION, + MANAGER_USER, _MANAGER_RUNNING_AS_MAX, _MANAGER_RUNNING_AS_INVALID = -1 } ManagerRunningAs; diff --git a/src/path-lookup.c b/src/path-lookup.c index c746e5e1a..f094969ad 100644 --- a/src/path-lookup.c +++ b/src/path-lookup.c @@ -30,11 +30,11 @@ #include "path-lookup.h" -int session_config_home(char **config_home) { +int user_config_home(char **config_home) { const char *e; if ((e = getenv("XDG_CONFIG_HOME"))) { - if (asprintf(config_home, "%s/systemd/session", e) < 0) + if (asprintf(config_home, "%s/systemd/user", e) < 0) return -ENOMEM; return 1; @@ -42,7 +42,7 @@ int session_config_home(char **config_home) { const char *home; if ((home = getenv("HOME"))) { - if (asprintf(config_home, "%s/.config/systemd/session", home) < 0) + if (asprintf(config_home, "%s/.config/systemd/user", home) < 0) return -ENOMEM; return 1; @@ -52,7 +52,7 @@ int session_config_home(char **config_home) { return 0; } -static char** session_dirs(void) { +static char** user_dirs(void) { const char *home, *e; char *config_home = NULL, *data_home = NULL; char **config_dirs = NULL, **data_dirs = NULL; @@ -67,7 +67,7 @@ static char** session_dirs(void) { * as data, and allow overriding as configuration. */ - if (session_config_home(&config_home) < 0) + if (user_config_home(&config_home) < 0) goto fail; home = getenv("HOME"); @@ -81,11 +81,11 @@ static char** session_dirs(void) { * /etc/systemd/ anyway. */ if ((e = getenv("XDG_DATA_HOME"))) { - if (asprintf(&data_home, "%s/systemd/session", e) < 0) + if (asprintf(&data_home, "%s/systemd/user", e) < 0) goto fail; } else if (home) { - if (asprintf(&data_home, "%s/.local/share/systemd/session", home) < 0) + if (asprintf(&data_home, "%s/.local/share/systemd/user", home) < 0) goto fail; /* There is really no need for two unit dirs in $HOME, @@ -96,7 +96,7 @@ static char** session_dirs(void) { * one. */ mkdir_parents(data_home, 0777); - (void) symlink("../../../.config/systemd/session", data_home); + (void) symlink("../../../.config/systemd/user", data_home); } if ((e = getenv("XDG_DATA_DIRS"))) @@ -115,12 +115,12 @@ static char** session_dirs(void) { r = t; } - if (!(t = strv_merge_concat(r, config_dirs, "/systemd/session"))) + if (!(t = strv_merge_concat(r, config_dirs, "/systemd/user"))) goto finish; strv_free(r); r = t; - if (!(t = strv_append(r, SESSION_CONFIG_UNIT_PATH))) + if (!(t = strv_append(r, USER_CONFIG_UNIT_PATH))) goto fail; strv_free(r); r = t; @@ -132,12 +132,12 @@ static char** session_dirs(void) { r = t; } - if (!(t = strv_merge_concat(r, data_dirs, "/systemd/session"))) + if (!(t = strv_merge_concat(r, data_dirs, "/systemd/user"))) goto fail; strv_free(r); r = t; - if (!(t = strv_append(r, SESSION_DATA_UNIT_PATH))) + if (!(t = strv_append(r, USER_DATA_UNIT_PATH))) goto fail; strv_free(r); r = t; @@ -176,8 +176,8 @@ int lookup_paths_init(LookupPaths *p, ManagerRunningAs running_as) { /* Nothing is set, so let's figure something out. */ strv_free(p->unit_path); - if (running_as == MANAGER_SESSION) { - if (!(p->unit_path = session_dirs())) + if (running_as == MANAGER_USER) { + if (!(p->unit_path = user_dirs())) return -ENOMEM; } else if (!(p->unit_path = strv_new( diff --git a/src/path-lookup.h b/src/path-lookup.h index dca8b55e1..e06f9793d 100644 --- a/src/path-lookup.h +++ b/src/path-lookup.h @@ -32,7 +32,7 @@ typedef struct LookupPaths { #include "manager.h" -int session_config_home(char **config_home); +int user_config_home(char **config_home); int lookup_paths_init(LookupPaths *p, ManagerRunningAs running_as); void lookup_paths_free(LookupPaths *p); diff --git a/src/sd-daemon.h b/src/sd-daemon.h index fdf3cc035..d0a0a9459 100644 --- a/src/sd-daemon.h +++ b/src/sd-daemon.h @@ -252,7 +252,7 @@ int sd_notifyf(int unset_environment, const char *format, ...) _sd_printf_attr_( fine. You should NOT protect them with a call to this function. Also note that this function checks whether the system, not the user session is controlled by systemd. However the functions above work - for both session and system services. + for both user and system services. See sd_booted(3) for more information. */ diff --git a/src/service.c b/src/service.c index 0b54e5bfc..184ddf914 100644 --- a/src/service.c +++ b/src/service.c @@ -1014,7 +1014,7 @@ static int service_add_default_dependencies(Service *s) { if ((r = unit_add_two_dependencies_by_name(UNIT(s), UNIT_AFTER, UNIT_REQUIRES, SPECIAL_BASIC_TARGET, NULL, true)) < 0) return r; - } else if (s->meta.manager->running_as == MANAGER_SESSION) { + } else if (s->meta.manager->running_as == MANAGER_USER) { if ((r = unit_add_two_dependencies_by_name(UNIT(s), UNIT_AFTER, UNIT_REQUIRES, SPECIAL_SOCKETS_TARGET, NULL, true)) < 0) return r; diff --git a/src/systemadm.vala b/src/systemadm.vala index 2f3aed205..3a01efd3c 100644 --- a/src/systemadm.vala +++ b/src/systemadm.vala @@ -22,7 +22,7 @@ using GLib; using DBus; using Pango; -static bool session = false; +static bool user = false; public class LeftLabel : Label { public LeftLabel(string? text = null) { @@ -103,7 +103,7 @@ public class MainWindow : Window { private ComboBox unit_type_combo_box; public MainWindow() throws DBus.Error { - title = session ? "systemd Session Manager" : "systemd System Manager"; + title = user ? "systemd User Service Manager" : "systemd System Manager"; position = WindowPosition.CENTER; set_default_size(1000, 700); set_border_width(12); @@ -297,7 +297,7 @@ public class MainWindow : Window { bbox.pack_start(cancel_button, false, true, 0); - bus = DBus.Bus.get(session ? DBus.BusType.SESSION : DBus.BusType.SYSTEM); + bus = DBus.Bus.get(user ? DBus.BusType.SESSION : DBus.BusType.SYSTEM); manager = bus.get_object( "org.freedesktop.systemd1", @@ -967,8 +967,8 @@ public class MainWindow : Window { } static const OptionEntry entries[] = { - { "session", 0, 0, OptionArg.NONE, out session, "Connect to session bus", null }, - { "system", 0, OptionFlags.REVERSE, OptionArg.NONE, out session, "Connect to system bus", null }, + { "user", 0, 0, OptionArg.NONE, out user, "Connect to user service manager", null }, + { "system", 0, OptionFlags.REVERSE, OptionArg.NONE, out user, "Connect to system manager", null }, { null } }; diff --git a/src/systemctl-bash-completion.sh b/src/systemctl-bash-completion.sh index 53f8e52aa..3e3380c8e 100644 --- a/src/systemctl-bash-completion.sh +++ b/src/systemctl-bash-completion.sh @@ -44,7 +44,7 @@ _systemctl () { local -A OPTS=( [STANDALONE]='--all -a --defaults --fail --force -f --full --global --help -h --no-ask-password --no-block --no-reload --no-wall - --order --require --quiet -q --session --system --version' + --order --require --quiet -q --system --user --version' [ARG]='--kill-mode --kill-who --property -p --signal -s --type -t' ) diff --git a/src/systemctl.c b/src/systemctl.c index 372b3d0ca..9d6e01230 100644 --- a/src/systemctl.c +++ b/src/systemctl.c @@ -61,7 +61,7 @@ static const char *arg_type = NULL; static char **arg_property = NULL; static bool arg_all = false; static bool arg_fail = false; -static bool arg_session = false; +static bool arg_user = false; static bool arg_global = false; static bool arg_immediate = false; static bool arg_no_block = false; @@ -1234,7 +1234,7 @@ static int start_unit_one( if (need_daemon_reload(bus, name)) log_warning("Unit file of created job changed on disk, 'systemctl %s daemon-reload' recommended.", - arg_session ? "--session" : "--system"); + arg_user ? "--user" : "--system"); if (!arg_no_block) { char *p; @@ -1937,7 +1937,7 @@ static void print_status_info(UnitStatusInfo *i) { printf("\n%sWarning:%s Unit file changed on disk, 'systemctl %s daemon-reload' recommended.\n", ansi_highlight(true), ansi_highlight(false), - arg_session ? "--session" : "--system"); + arg_user ? "--user" : "--system"); } static int status_property(const char *name, DBusMessageIter *iter, UnitStatusInfo *i) { @@ -3919,13 +3919,13 @@ static int install_info_apply(const char *verb, LookupPaths *paths, InstallInfo static char *get_config_path(void) { - if (arg_session && arg_global) - return strdup(SESSION_CONFIG_UNIT_PATH); + if (arg_user && arg_global) + return strdup(USER_CONFIG_UNIT_PATH); - if (arg_session) { + if (arg_user) { char *p; - if (session_config_home(&p) < 0) + if (user_config_home(&p) < 0) return NULL; return p; @@ -3946,7 +3946,7 @@ static int enable_unit(DBusConnection *bus, char **args, unsigned n) { dbus_error_init(&error); zero(paths); - if ((r = lookup_paths_init(&paths, arg_session ? MANAGER_SESSION : MANAGER_SYSTEM)) < 0) { + if ((r = lookup_paths_init(&paths, arg_user ? MANAGER_USER : MANAGER_SYSTEM)) < 0) { log_error("Failed to determine lookup paths: %s", strerror(-r)); goto finish; } @@ -4010,9 +4010,9 @@ static int enable_unit(DBusConnection *bus, char **args, unsigned n) { /* Don't try to reload anything when updating a unit globally */ !arg_global && /* Don't try to reload anything if we are called for system changes but the system wasn't booted with systemd */ - (arg_session || sd_booted() > 0) && + (arg_user || sd_booted() > 0) && /* Don't try to reload anything if we are running in a chroot environment */ - (arg_session || running_in_chroot() <= 0) ) { + (arg_user || running_in_chroot() <= 0) ) { int q; if ((q = daemon_reload(bus, args, n)) < 0) @@ -4047,8 +4047,8 @@ static int systemctl_help(void) { " pending\n" " -q --quiet Suppress output\n" " --no-block Do not wait until operation finished\n" - " --system Connect to system bus\n" - " --session Connect to session bus\n" + " --system Connect to system manager\n" + " --user Connect to user service manager\n" " --order When generating graph for dot, show only order\n" " --require When generating graph for dot, show only requirement\n" " --no-wall Don't send wall message before halt/power-off/reboot\n" @@ -4105,7 +4105,7 @@ static int systemctl_help(void) { " poweroff Shut down and power-off the system\n" " reboot Shut down and reboot the system\n" " kexec Shut down and reboot the system with kexec\n" - " exit Ask for session termination\n", + " exit Ask for user instance termination\n", program_invocation_short_name); return 0; @@ -4182,7 +4182,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) { enum { ARG_FAIL = 0x100, ARG_VERSION, - ARG_SESSION, + ARG_USER, ARG_SYSTEM, ARG_GLOBAL, ARG_NO_BLOCK, @@ -4205,7 +4205,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) { { "all", no_argument, NULL, 'a' }, { "full", no_argument, NULL, ARG_FULL }, { "fail", no_argument, NULL, ARG_FAIL }, - { "session", no_argument, NULL, ARG_SESSION }, + { "user", no_argument, NULL, ARG_USER }, { "system", no_argument, NULL, ARG_SYSTEM }, { "global", no_argument, NULL, ARG_GLOBAL }, { "no-block", no_argument, NULL, ARG_NO_BLOCK }, @@ -4273,12 +4273,12 @@ static int systemctl_parse_argv(int argc, char *argv[]) { arg_fail = true; break; - case ARG_SESSION: - arg_session = true; + case ARG_USER: + arg_user = true; break; case ARG_SYSTEM: - arg_session = false; + arg_user = false; break; case ARG_NO_BLOCK: @@ -4315,7 +4315,7 @@ static int systemctl_parse_argv(int argc, char *argv[]) { case ARG_GLOBAL: arg_global = true; - arg_session = true; + arg_user = true; break; case ARG_DEFAULTS: @@ -5236,7 +5236,7 @@ int main(int argc, char*argv[]) { goto finish; } - bus_connect(arg_session ? DBUS_BUS_SESSION : DBUS_BUS_SYSTEM, &bus, &private_bus, &error); + bus_connect(arg_user ? DBUS_BUS_SESSION : DBUS_BUS_SYSTEM, &bus, &private_bus, &error); switch (arg_action) { diff --git a/systemd.pc.in b/systemd.pc.in index 71a5678f8..b5230f6bf 100644 --- a/systemd.pc.in +++ b/systemd.pc.in @@ -13,6 +13,6 @@ systemdsystemconfdir=@pkgsysconfdir@/system systemdsessionconfdir=@pkgsysconfdir@/session Name: systemd -Description: systemd System and Session Manager +Description: systemd System and Service Manager URL: @PACKAGE_URL@ Version: @PACKAGE_VERSION@ diff --git a/units/session/.gitignore b/units/user/.gitignore similarity index 100% rename from units/session/.gitignore rename to units/user/.gitignore diff --git a/units/session/Makefile b/units/user/Makefile similarity index 100% rename from units/session/Makefile rename to units/user/Makefile diff --git a/units/session/default.target b/units/user/default.target similarity index 100% rename from units/session/default.target rename to units/user/default.target diff --git a/units/session/exit.service.in b/units/user/exit.service.in similarity index 90% rename from units/session/exit.service.in rename to units/user/exit.service.in index 024fbe172..a20b089c9 100644 --- a/units/session/exit.service.in +++ b/units/user/exit.service.in @@ -15,4 +15,4 @@ After=shutdown.target [Service] Type=oneshot -ExecStart=@SYSTEMCTL@ --session --force exit +ExecStart=@SYSTEMCTL@ --user --force exit diff --git a/units/session/exit.target b/units/user/exit.target similarity index 100% rename from units/session/exit.target rename to units/user/exit.target