Дефектные обновления [Core, Extra, Community, Multilib]

экранировать '%s' обратным слэшем не работает
А двойным слешем (а может даже и тройным)?
Или через shell
ExecStart=/usr/bin/sh -c "/usr/bin/remind -z -b1 -m -k'notify-send  --urgency=critical %s & mpg123 /home/user/Sounds/arrive.mp3' /home/user/.reminders"
или
ExecStart=/usr/bin/sh -c "/usr/bin/remind -z -b1 -m -k'notify-send  --urgency=critical \%s & mpg123 /home/user/Sounds/arrive.mp3' /home/user/.reminders"
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE
notify-send не из графической сессии еще вроде нужно явно указывать XDG_RUNTIME_DIR
но тут могу ошибаться.
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE
alien175
экранировать '%s' обратным слэшем не работает
А двойным слешем (а может даже и тройным)?
Или через shell
ExecStart=/usr/bin/sh -c "/usr/bin/remind -z -b1 -m -k'notify-send  --urgency=critical %s & mpg123 /home/user/Sounds/arrive.mp3' /home/user/.reminders"
или
ExecStart=/usr/bin/sh -c "/usr/bin/remind -z -b1 -m -k'notify-send  --urgency=critical \%s & mpg123 /home/user/Sounds/arrive.mp3' /home/user/.reminders"
Не-а :))) Упорно передаёт /usr/bash :))) Уже и '%' экранировал, и 's' отдельно, все слэши передаёт в remind в виде '\\/usr/bash' и т.д. Использование шелла в юните тоже не помогает: результат аналогичный. Только запуск скрипта, в котором прописана нужная команда, работает.
XDG_RUNTIME_DIR тоже попробовал. Указал /tmp. Результата не дало.
konstantinov-ms
XDG_RUNTIME_DIR тоже попробовал. Указал /tmp. Результата не дало.
/run/user/1000 обычно - юзер, кому вы выводите сообщения.
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE
konstantinov-ms
Только запуск скрипта, в котором прописана нужная команда, работает
Много экспериментировал с unit и сделал для себя вывод, что лучше прописывать скрипт ... с командой сложнее, нужно смотреть как она работает ... если команда простая (никуда больше не лезет), то работает нормально, в противной случае возможны проблемы.

konstantinov-ms
Единственно, что systemd не пропустил такую конструкцию: "~/.reminders", пришлось указывать путь полностью: "/home/user/.reminders".
И да, лучше прописывать полный путь.
Ошибки не исчезают с опытом - они просто умнеют
konstantinov-ms
Уже и '%' экранировал
man почитать не догадались?
"%%"	Single percent sign	Use "%%" in place of "%" to specify a single percent sign.
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE
~
%h
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE
alien175
konstantinov-ms
XDG_RUNTIME_DIR тоже попробовал. Указал /tmp. Результата не дало.
/run/user/1000 обычно - юзер, кому вы выводите сообщения.
Спасибо, учту на будущее.

vasek
Много экспериментировал с unit и сделал для себя вывод, что лучше прописывать скрипт … с командой сложнее, нужно смотреть как она работает … если команда простая (никуда больше не лезет), то работает нормально, в противной случае возможны проблемы.
Похоже, что так. Если нужно передать, какие-то аргументы, то вылезает куча проблем.

alien175
man почитать не догадались?
Блин, ЗАРАБОТАЛО!!! Спасибо!!!
Таки добили общими усилиями :))))
P.S. Внёс соответствующие правки в исходный юнит. Спасибо всем за помощь!
konstantinov-ms
ЗАРАБОТАЛО!!! Спасибо!!!
Таки добили общими усилиями :))))
Просто нужно читать документацию. И никаких усилий не потребуется.
Ну или правильно гуглить https://www.google.com/search?q=systemd+escape+percent =)
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE
alien175
konstantinov-ms
ЗАРАБОТАЛО!!! Спасибо!!!
Таки добили общими усилиями :))))
Просто нужно читать документацию. И никаких усилий не потребуется.
Ну или правильно гуглить https://www.google.com/search?q=systemd+escape+percent =)
И ведь не поспоришь! ☝️ 😁😁😁
 
Зарегистрироваться или войдите чтобы оставить сообщение.