Подскажите будильник.

Aivar
пугаете народ))
zotkindm
вроде достаточно этого...
export DISPLAY=:0
export XDG_RUNTIME_DIR=/run/user/`ваш uid`

p.s. я наверно вас обманул, чтоб в 100% случаев работало надо будет запускать как то так
su user -c "notify-send 'hi'"
Ошибки в тексте-неповторимый стиль автора©
Я прошу прощения, а при чем тут systemd?
Боже как все сложно, чтобы какой-то сраный будильник получить(простите не сдержался).
Лучше наверно скрипт написать, или на питоне запилить.
zotkindm
Я прошу прощения, а при чем тут systemd?
При том.

zotkindm
Лучше наверно скрипт написать, или на питоне запилить.
Никогда и никому не возбраняется. )
ну timer старутет service, а service стартует скрипт... всё как обычно(

Хотя стоять, а что вам мешает запустить в своём окружении timer??)
Просто от пользователя с параметром --user запускайте и всё.

p.s. ну и сложить их надо куда нить сюда ~/.config/systemd/user/ например.
Ошибки в тексте-неповторимый стиль автора©
Пробовал.
Ладно забудим тему, не закрывайте, может решение найду.
zotkindm, тут нет ничего сложного
  1. Создаём скрипт который будем периодически запускать:
  2. $ cat recall.sh
    #!/bin/bash
    
    notify-send "Тест"
    
    и делаем его исполняемым: $ chmode +x recall.sh
  3. Создаём юнит-таймер монотонного или реального времени(примеры можно посмотреть в русской вики systemd/Timers).
  4. Пример для монотонного: $ cat $HOME/.config/systemd/user/recall.timer
    [Timer]
    OnBootSec=10min
    OnUnitActiveSec=5min
    AccuracySec=1us
    
    [Install]
    WantedBy=timers.target
    
    здесь событие будет происходить каждые 5 минут, и спустя 10 мин после загрузки системы
  5. Создаём юнит-сервис который будет запускаться юнит-таймером:
  6. $ cat $HOME/.config/systemd/user/recall.service
    [Unit]
    After=network.target
    
    [Service]
    Type=simple
    ExecStart=/полный/путь/к/запускаемому/recall.sh
    
    [Install]
    WantedBy=multi-user.target
    
    здесь раздел Unit можно в принципе убрать если для работы скрипта сеть не нужна
  7. Запускаем:
  8. $ systemctl --user start recall.timer Если нужен автозапуск после загрузки системы, то: $ systemctl --user enable recall.timer
  9. Для слежки за таймером:
  10. $ systemctl --user list-timers
  11. Для остановки:
  12. $ systemctl --user stop recall.timer

Всё.

добавлю что если в работающем юнит-таймере измените значения то нужно будет перезагрузить конфигурацию:
$ systemctl --user daemon-reload
$ systemctl --user restart recall.timer
С помощью крона вся инструкция поместилась бы в три строчки :)
А если с at?
echo "notify-send test" | at 18:00
Velesich
С помощью крона вся инструкция поместилась бы в три строчки :)
не спорю, но я описал манипуляции на низком уровне без всяких прослоек
Никто не мешает написать скрипт обёртку для всего этого чтобы управлять таймером одной или двумя командами
 
Зарегистрироваться или войдите чтобы оставить сообщение.