Documentation › Sessions and login
What happens when you log in
The session manager: environment, language, keyboard, compositor, shell and autostart, step by step
A session is started by /usr/bin/aurora-session, Aurora's session manager. It is
a short shell script; this is what it does, in order.
1. Environment
- Language. Reads
/etc/default/locale, then your own choice from Settings in~/.config/aurora/locale.conf. If the formats come from another language than the interface (for example English text with Italian formats), day and month names follow the interface language while numbers, units and currency keep the region's. - Keyboard. Reads
/etc/default/keyboard, then~/.config/aurora/keyboard.conf, and exports the layout for the compositor (XKB_DEFAULT_LAYOUTand friends). - Paths and toolkits. Sets the login
PATH(including~/.local/bin) and the variables that make apps use Wayland:
| Variable | Value in an Aurora session |
|---|---|
XMODIFIERS | @im=fcitx GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx SDL_IM_MODULE=fcitx |
AURORA_INPUT_METHOD | fcitx |
XDG_CURRENT_DESKTOP | Aurora:wlroots |
XDG_SESSION_DESKTOP | aurora |
XDG_SESSION_TYPE | wayland |
MOZ_ENABLE_WAYLAND | 1 |
QT_QPA_PLATFORM | wayland;xcb |
QT_QPA_PLATFORMTHEME | gnome |
SDL_VIDEODRIVER | wayland,x11 |
_JAVA_AWT_WM_NONREPARENTING | 1 |
GTK_USE_PORTAL | 1 |
AURORA_COMPOSITOR | labwc |
AURORA_COMPOSITOR | labwc |
AURORA_COMPOSITOR | labwc |
AURORA_COMPOSITOR | labwc |
Apps started through D-Bus or systemd get the same values: the session hands them to
dbus-update-activation-environment when it starts.
2. Graphics
/usr/libexec/aurora-render-env chooses renderers that work on this machine:
the GPU when there is one, software rendering in virtual machines without 3D (and the extra
settings Hyper-V's display needs).
3. The compositor
- Picks Wayfire or labwc (session choice,
~/.config/aurora/compositor, safe graphics, the graphics check above). - On first login copies the default labwc configuration to
~/.config/labwc/, and writes the GTK stylesheet imports for the window style (aurora-look). - For Wayfire, renders
~/.config/aurora/wayfire.iniand starts it, watching for an early failure (see fallback).
4. Startup programs
The compositor runs Aurora's startup script (/usr/share/aurora/labwc/autostart),
which:
- passes the environment to D-Bus and systemd;
- creates the standard folders (Desktop, Documents, Downloads…) if missing;
- applies the display layout saved in Settings (
~/.config/aurora/displays.sh); - starts Aurora Shell under a watchdog: if the shell ever exits, it starts again, at most five times a minute, until you log out (its log is
$XDG_RUNTIME_DIR/aurora-shell.log); - starts the administrator password prompt (the polkit agent);
- runs
aurora-autostart, which starts the apps in XDG autostart (yours in~/.config/autostartand the system's in/etc/xdg/autostart), honoringOnlyShowIn,NotShowIn,HiddenandTryExec; manage them in Task Manager → Startup Apps or Settings → Apps; - starts
aurora-idle(screen off, lock and suspend on inactivity); - opens the installer when you chose “Install Aurora OS”, or the Welcome app the first time you log in.
5. The shell
Aurora Shell draws every part of the desktop as Wayland layer surfaces: wallpaper and
desktop icons, widgets, top bar, dock, notifications, on-screen indicators, Spotlight,
overview and hot corners. It also runs the notification server, the system tray host,
clipboard history, Night Light, the dynamic wallpaper, the weather, Storage Sense and screen
time. Running aurora-shell again with a command talks to the running shell (see
Shell commands).
Logging out
Logging out writes a marker so the watchdog doesn't restart the shell, ends the compositor, and greetd shows the login screen again.