-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathREADME
More file actions
95 lines (71 loc) · 2.25 KB
/
Copy pathREADME
File metadata and controls
95 lines (71 loc) · 2.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
These files make it possible to login to X without a desktop manager.
Installation
============
Several variables are supported by the installation through make:
# make [DESTDIR=</stage/path>] [BASH=</path/to/bash>]
[SHELL=</current/path/to/bash>] [install]
DESTDIR
-------
The DESTDIR path is prepended to each target in the installation, making staged
installs possible. Empty by default.
BASH
----
The path to the Bash executable used by xlogin. Defaults to /usr/bin/bash.
SHELL
-----
The path to the Bash executable used by make. Defaults to the value of BASH.
Usage
=====
To enable automatic login at boot, execute:
# systemctl enable xlogin@<username>
The xlogin service sets up a user session and runs the .xinitrc script of the
user. Several actions are available to the user.
Logout
------
$ loginctl terminate-session "$XDG_SESSION_ID"
or
$ systemctl --user exit
Shutdown
--------
$ systemctl poweroff
If no other users are logged in, this does not require a password.
Reboot
------
$ systemctl reboot
If no other users are logged in, this does not require a password.
Files
=====
Makefile
--------
This makes installation through
# make install
possible.
x-daemon
--------
This script makes starting X as a daemon possible. It is needed by the systemd
service that manages X.
x@.service
----------
This service governs an X session on a specified VT. It is of little use on its
own.
xlogin@.service
---------------
This service is responsible for setting up the user session and running the
user's .xinitrc script. The script should not return.
25-xlogin.sh
------------
This script makes sure the systemd user dbus socket is not reused for the
user's X session. Its invocation is guaranteed by having the following on top
of your .xinitrc:
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
As a consequence, systemd commands that interface the user session will no
longer be able to communicate with the systemd instance. To alleviate this
problem, include the following in your .bashrc:
for sd_cmd in systemctl systemd-analyze systemd-run; do
alias $sd_cmd='DBUS_SESSION_BUS_ADDRESS="unix:path=$XDG_RUNTIME_DIR/bus" '$sd_cmd
done