Я хочу настроить docked.target
на моем уровне systemd. Идея состоит в том, чтобы запустить некоторые службы для настройки моих внешних дисплеев.
У меня в настоящее время есть это как мое правило:
SUBSYSTEM=="usb", ACTION=="add", ENV{ID_VENDOR}=="17ef", ENV{ID_MODEL}=="100a", SYMLINK+="tp_mini_dock", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}="docked.target"
Правило обнаруживается очень хорошо (я вижу dev-tp_mini_dock.device
когда я пристыкован).
Затем у меня есть это в ~/.config/systemd/user/docked.target
(также попытался /etc/systemd/user
без удачи):
[Unit]
Description=Docked to ThinkPad Mini Dock
BindTo=dev-tp_mini_dock.device
Но это не начинается, когда я док. Однако, если я вручную запускаю docked.target
во время пристыковки, он останавливается, как и ожидалось, когда я отсоединяюсь.
Однако если я использую ENV{SYSTEMD_WANTS}="docked.target"
и помещаю файл в /etc/systemd/system/docked.target
, цель запускается, как и ожидалось, когда я подключаюсь к док-станции. Проблема в том, что мой экземпляр уровня пользователя не знает об услугах / целях системного уровня.
Какие-нибудь мысли? Я видел несколько других вопросов в сети, и один почти точно такой же, как у меня: https://bbs.archlinux.org/viewtopic.php?pid=1600019