Awesome WM -Переключение скрытия/отображения Wibox

Судя по ответам здесь, возникает много непонимания того, как работает systemd. Во-первых, не используйте конфликты для исключения цели. Это сделано для того, чтобы конфликтующие службы не запускались одновременно.

If a unit has a Conflicts= setting on another unit, starting the former will stop the latter and vice versa.

Под единицей понимается файл.service, предназначенный для запуска конкретной службы, а не цели, которую необходимо достичь. Другими словами -слова Conflicts=reboot.targetв лучшем случае бессмысленны, а в худшем не позволят вам перезагрузиться. Не делай этого. Это не означает, что не запускайте это при перезагрузке. Это означает прервать либо эту службу, либо reboot.target в зависимости от времени и того, как systemd интерпретирует это ошибочное использование конфликтов.

Вот пример текущего настроенного устройства (, также известного как файл.service ), который запускается только при завершении работы, а не при перезагрузке:

[Unit]
Description=Play sound
DefaultDependencies=no
Before=poweroff.target halt.target

[Service]
ExecStart=/usr/local/bin/playsound.sh
ExecStop=/usr/local/bin/playsound.sh
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=poweroff.target halt.target 

poweroff.target эквивалентен старому уровню выполнения systemv 0, который достигается только при завершении работы. halt.target — это альтернативный путь выключения, используемый systemd, который также недоступен при перезагрузке.Раздел установки указывает systemd добавить эту службу в список, который должен быть завершен до того, как poweroff.targetили halt.targetбудут считаться достигнутыми.

Эта служба установлена ​​и работает в моей системе.

0
05.08.2020, 04:47
1 ответ

Я хочу исправиться, код из Arch Wiki работает отлично, единственная оговорка заключается в том, что вам нужно включить этот код в массив globalkeys. Теперь работает по назначению.

0
18.03.2021, 23:14

Теги

Похожие вопросы