HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //usr/libexec/run-systemd-session
#!/bin/sh
set -e

# clean-up upstart env, if the last session was run with upstart
# without session systemd restart
unset UPSTART_SESSION
systemctl --user unset-environment UPSTART_SESSION

# some old Qt programs still check this long-deprecated env var
dbus-update-activation-environment --systemd GNOME_DESKTOP_SESSION_ID=this-is-deprecated

# stop any lingering active units from a previous session
systemctl --user stop graphical-session.target graphical-session-pre.target

# robustness: if the previous graphical session left some failed units,
# reset them so that they don't break this startup
for unit in $(systemctl --user --no-legend --state=failed list-units | cut -f1 -d' '); do
    if [ "$(systemctl --user show -p PartOf --value $unit)" = "graphical-session.target" ]; then
        systemctl --user reset-failed $unit
    fi
done

# FIXME: synthesize After=graphical-session-pre.target dependencies until this
# can be done declaratively (https://github.com/systemd/systemd/issues/3750)
# This could be a generator, but we don't want to penalize non-graphical logins
# with this.
systemctl --user list-unit-files --no-legend | while read unit status _; do
    [ "${unit%.service}" != "$unit" ] || continue
    [ "$status" != "$disabled" ] || continue
    if [ "$(systemctl --user show -p PartOf --value $unit)" = "graphical-session.target" ]; then
        mkdir -p "$XDG_RUNTIME_DIR/systemd/user/${unit}.d"
        printf '[Unit]\nAfter=graphical-session-pre.target\n' > "$XDG_RUNTIME_DIR/systemd/user/${unit}.d/graphical-session-pre.conf"
    fi
done
systemctl --user daemon-reload

systemctl --user start --wait "$1"

dbus-update-activation-environment --systemd GNOME_DESKTOP_SESSION_ID=

# Delay killing the X server until all graphical units stopped
systemctl --user stop graphical-session-pre.target