Открыл документацию по Void "Per-User Services"
Создал:
Shell
/etc/sv/runsvdir-toxa
├── run
Shell
# chmod +x /etc/sv/runsvdir-toxa/run
Код: Выделить всё
#!/bin/sh
export USER="toxa"
export HOME="/home/toxa"
groups="$(id -Gn "$USER" | tr ' ' ':')"
svdir="$HOME/.local/service"
exec chpst -u "$USER:$groups" runsvdir "$svdir"
В нем run содержит:
Код: Выделить всё
#!/usr/bin/sh
exec 2>&1
exec /usr/bin/emacs --fg-daemon # пробовал и вариант с --daemon
Shell
# chmod +x ~/.local/service/emacs-daemon/run
Shell
# ln -s /etc/sv/runsvdir-toxa /var/service/
Shell
$ sv status ~/.local/service/*
run: /home/toxa/.local/service/emacs-daemon: (pid 8800) 2s
Shell
$ ps -aux |grep emacs
toxa 1081 0.0 0.0 2376 1376 ? S 23:32 0:00 runsv emacs-daemon
toxa 9327 98.1 0.9 339992 149296 ? R 23:49 0:01 /usr/bin/emacs --fg-daemon
toxa 9334 0.0 0.0 6692 2624 pts/2 S+ 23:49 0:00 grep --color=auto emacs
Shell
srwx------ 1 toxa toxa 0 мая 10 23:32 /tmp/emacs1000/server
Shell
$ emacsclient -c
emacsclient: can't find socket; have you started the server?
emacsclient: To start the server in Emacs, type "M-x server-start".
emacsclient: No socket or alternate editor. Please use:
--socket-name
--server-file (or environment variable EMACS_SERVER_FILE)
--alternate-editor (or environment variable ALTERNATE_EDITOR)
Shell
$ emacsclient -c --server-file /tmp/emacs1000/server
emacsclient: error accessing server file "/tmp/emacs1000/server"