Archlinux 3.16.3 systemd 216-3 startx at login prompt. No DM
I am slowly trying to use systemctl --user facilities. Until now, I am able to start few basic user services. Now it is time to start Xorg as a user service, but I can't manage to do it. As documentation is currently very sparse, I must admit I am a little lost when it comes to write the unit files. I can't even know if it is feasible. I have tried all kinds of things in my xorg.service file. Below are two ways among others. --------------------------------------- [Unit] Description=Xorg server at display :0 Requires=xorg.socket After=xorg.socket [Service] # ExecStart=/usr/bin/Xorg.bin -nolisten tcp vt$XDG_VTNR ExecStart=/usr/bin/xinit -- :0 -nolisten tcp vt$XDG_VTNR ---------------------------------- Results are usually failed status. Here are some logs: ----------------------------------- ● xorg.service - Xorg server at display :0 Loaded: loaded (/home/gabx/.config/systemd/user/xorg.service; static) Active: failed (Result: exit-code) since Thu 2014-10-30 10:22:34 CET; 39s ago Process: 11792 ExecStart=/usr/bin/Xorg.bin -nolisten tcp vt$XDG_VTNR (code=exited, status=1/FAILURE) Main PID: 11792 (code=exited, status=1/FAILURE) Oct 30 10:22:34 hortensia systemd[850]: Started Xorg server at display :0. Oct 30 10:22:34 hortensia Xorg.bin[11792]: use: X [:<display>] [option] Oct 30 10:22:34 hortensia Xorg.bin[11792]: -a # default pointer acceleration (factor) Oct 30 10:22:34 hortensia Xorg.bin[11792]: -ac disable access control restrictions Oct 30 10:22:34 hortensia systemd[850]: xorg.service: main process exited, code=exited, status=1/FAILURE Oct 30 10:22:34 hortensia systemd[850]: Unit xorg.service entered failed state. ----------------------------------------------------------- ● xorg.service - Xorg server at display :0 Loaded: loaded (/home/gabx/.config/systemd/user/xorg.service; static) Active: failed (Result: exit-code) since Thu 2014-10-30 10:42:17 CET; 1min 8s ago Process: 12191 ExecStart=/usr/bin/xinit -- :0 -nolisten tcp vt$XDG_VTNR (code=exited, status=1/FAILURE) Main PID: 12191 (code=exited, status=1/FAILURE) Oct 30 10:42:02 hortensia systemd[850]: Started Xorg server at display :0. Oct 30 10:42:02 hortensia xinit[12191]: /usr/bin/Xorg.wrap: Only console users are allowed to run the X server Oct 30 10:42:17 hortensia systemd[850]: xorg.service: main process exited, code=exited, status=1/FAILURE Oct 30 10:42:17 hortensia systemd[850]: Unit xorg.service entered failed state. ----------------------------------------------------------- I even tried to set $XDG_VTNR variable this way: $ systemctl --user set-environment XDG_VTNR=1 Some info about my system: ------------------------ gabx@hortensia ➤➤ ~ % systemctl --user status ● hortensia State: running Jobs: 0 queued Failed: 0 units Since: Thu 2014-10-30 11:09:46 CET; 18min ago CGroup: /user.slice/user-1000.slice/user@1000.service ├─852 /usr/lib/systemd/systemd --user ├─853 (sd-pam) ├─dbus.service │ └─2238 /usr/bin/dbus-daemon --session --address=systemd: --nofork --systemd-activation ├─tmux.service │ ├─900 /usr/bin/tmux new-session -d -n irc irssi && zsh │ ├─901 zsh -c irssi && zsh │ └─906 irssi ├─urxvtd.service │ └─1394 /usr/bin/urxvtd -o -q -f ├─gpg-agent.service │ └─898 /usr/bin/gpg-agent --homedir /home/gabx/.config/gnupg --daemon --write-env-file /home/gabx/.config/gnupg/gpg-agent.info └/home/g─ssh-agent.service └─892 /usr/bin/ssh-agent -d -a /run/user/1000/ssh_auth_sock ------------------------------------------------- gabx@hortensia ➤➤ ~ % systemctl --user show-environment DISPLAY=:0 HOME=/home/gabx LANG=en_US.UTF-8 LC_COLLATE=C LOGNAME=gabx MAIL=/var/spool/mail/gabx PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin SHELL=/usr/bin/zsh USER=gabx XDG_RUNTIME_DIR=/run/user/1000 ---------------------------------------------------------- gabx@hortensia ➤➤ ~ % systemd-cgls ├─1 /usr/lib/systemd/systemd ├─system.slice │ ├─dbus.service │ │ └─608 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation │ ├─lvm2-lvmetad.service │ │ └─365 /usr/bin/lvmetad -f │ ├─systemd-machined.service │ │ └─843 /usr/lib/systemd/systemd-machined │ ├─mysqld.service │ │ └─519 /usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid │ ├─adb.service │ │ └─583 adb -P 5037 fork-server server │ ├─systemd-journald.service │ │ └─200 /usr/lib/systemd/systemd-journald │ ├─system-devmon.slice │ │ └─devmon@gabx.service │ │ ├─ 549 /bin/bash /usr/bin/devmon │ │ └─1098 /usr/sbin/udevil --monitor │ ├─udisks2.service │ │ └─2202 /usr/lib/udisks2/udisksd --no-debug │ ├─systemd-timesyncd.service │ │ └─463 /usr/lib/systemd/systemd-timesyncd │ ├─systemd-logind.service │ │ └─590 /usr/lib/systemd/systemd-logind │ ├─systemd-networkd.service │ │ └─675 /usr/lib/systemd/systemd-networkd │ ├─systemd-udevd.service │ │ └─229 /usr/lib/systemd/systemd-udevd │ ├─system-systemd\x2dnspawn.slice │ │ └─systemd-nspawn@dahlia.service │ │ ├─471 /usr/bin/systemd-nspawn --quiet --keep-unit --boot --link-journal=guest --directory=/var/lib/container/dahlia │ │ ├─472 /usr/lib/systemd/systemd │ │ └─system.slice │ │ ├─dbus.service │ │ │ └─896 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation │ │ ├─systemd-journald.service │ │ │ └─870 /usr/lib/systemd/systemd-journald │ │ ├─systemd-logind.service │ │ │ └─904 /usr/lib/systemd/systemd-logind │ │ └─console-getty.service │ │ └─905 /sbin/agetty --noclear --keep-baud console 115200 38400 9600 vt102 │ ├─polkit.service │ │ └─2206 /usr/lib/polkit-1/polkitd --no-debug │ ├─bitlbee.service │ │ └─498 /usr/bin/bitlbee -F -n │ ├─acpid.service │ │ └─473 /usr/bin/acpid -f │ └─rtkit-daemon.service │ └─2283 /usr/lib/rtkit/rtkit-daemon └─user.slice └─user-1000.slice ├─user@1000.service │ ├─852 /usr/lib/systemd/systemd --user │ ├─853 (sd-pam) │ ├─dbus.service │ │ └─2238 /usr/bin/dbus-daemon --session --address=systemd: --nofork --systemd-activation │ ├─tmux.service │ │ ├─900 /usr/bin/tmux new-session -d -n irc irssi && zsh │ │ ├─901 zsh -c irssi && zsh │ │ └─906 irssi │ ├─urxvtd.service │ │ └─1394 /usr/bin/urxvtd -o -q -f │ ├─gpg-agent.service │ │ └─898 /usr/bin/gpg-agent --homedir /home/gabx/.config/gnupg --daemon --write-env-file /home/gabx/.config/gnupg/gpg-agent.info │ └─ssh-agent.service │ └─892 /usr/bin/ssh-agent -d -a /run/user/1000/ssh_auth_sock └─session-3.scope ├─1657 login -- gabx ├─1661 -zsh ├─1914 /bin/sh /usr/bin/startx ├─1936 xinit /home/gabx/.xinitrc -- /etc/X11/xinit/xserverrc :0 vt1 -auth /tmp/serverauth.x9Owrz1L2n ├─1937 /usr/bin/Xorg.bin -nolisten tcp :0 vt1 -auth /tmp/serverauth.x9Owrz1L2n vt1 ├─1941 i3 ├─1960 i3bar --bar_id=bar-0 --socket=/run/user/1000/i3/ipc-socket.1941 ├─1963 kalu ├─1965 firefox ├─1966 urxvt ├─1970 urxvt ├─1972 caja --no-desktop ├─1979 /usr/bin/dbus-launch --autolaunch 77f348a2b3fb429b85a5de751ea9175a --binary-syntax --close-stderr ├─1980 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session ├─1982 /usr/lib/at-spi2-core/at-spi-bus-launcher ├─1987 i3status --config=~/.config/i3/i3status.conf ├─1988 /usr/bin/dbus-daemon --config-file=/etc/at-spi2/accessibility.conf --nofork --print-address 3 ├─2004 /usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session ├─2015 zsh ├─2018 zsh ├─2026 /usr/lib/dconf/dconf-service ├─2068 /usr/bin/dunst ├─2177 /usr/lib/gvfs/gvfsd ├─2181 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes ├─2200 /usr/lib/gvfs/gvfs-udisks2-volume-monitor ├─2218 /usr/lib/gvfs/gvfs-afc-volume-monitor ├─2232 /usr/lib/gvfs/gvfsd-metadata ├─2282 /usr/bin/pulseaudio --start --log-target=syslog ├─2411 systemd-cgls └─2412 less --------------------------- gabx@hortensia ➤➤ ~ % cat /etc/pam.d/system-login #%PAM-1.0 auth required pam_tally.so onerr=succeed file=/var/log/faillog auth required pam_shells.so auth requisite pam_nologin.so auth include system-auth # for ssh authentification # auth optional pam_exec.so expose_authtok /etc/scripts/systemd-user-pam-ssh account required pam_access.so account required pam_nologin.so account include system-auth password include system-auth session optional pam_loginuid.so session include system-auth session optional pam_motd.so motd=/etc/motd session optional pam_mail.so dir=/var/spool/mail standard quiet # loaded now from system-auth -session optional pam_systemd.so #session required pam_env.so -------------------------------------------------------- gabx@hortensia ➤➤ ~ % cat /etc/pam.d/systemd-user # This file is part of systemd. # # Used by systemd --user instances. account include system-login session include system-login ------------------------------------------------------ gabx@hortensia ➤➤ ~ % cat .xinitrc xset fp rehash & # load my X resources xrdb -merge $HOME/.config/urxvt/.urxvtrc & # start desktop environment exec i3 ------------------------------------------- gabx@hortensia ➤➤ ~ % cat /etc/X11/xinit/xserverrc #!/bin/sh if [ -z "$XDG_VTNR" ]; then exec /usr/bin/X -nolisten tcp "$@" else exec /usr/bin/X -nolisten tcp "$@" vt$XDG_VTNR fi ----------------------------------------- Any help/hint/pointer would be appreciate. Thank you in advance. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel