В Ubuntu 22.04 c Wayland запускаю демон emacs через systemd:
~/.config/systemd/user/emacs.service
[Unit]
Description=Emacs text editor
Documentation=info:emacs man:emacs(1) https://gnu.org/software/emacs/
[Service]
Type=notify
ExecStart=/usr/bin/emacs --fg-daemon
# Emacs will exit with status 15 after having received SIGTERM, which
# is the default "KillSignal" value systemd uses to stop services.
SuccessExitStatus=15
# The location of the SSH auth socket varies by distribution, and some
# set it from PAM, so don't override by default.
# Environment=SSH_AUTH_SOCK=%t/keyring/ssh
Restart=on-failure
[Install]
WantedBy=default.target
В .profile
задан необходимый мне PATH
, и импортирование его в systemd:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH
systemctl --user import-environment PATH
Но после загрузки системы emacs не хочет видеть мой путь (конкретнее, run-python
не находит python
), хотя если я перезапускаю emacs.service
из командной строки, все работает.
Соответственно, вопрос: как правильно задать PATH
, чтобы при загрузке системы он считывался до того, как запустится emacs.service
?