Использую notify.sh Все просто до безобазия.
Итак сам скрипт
cat /usr/local/bin/update
#!/bin/sh
#update for gentoo
#emerge --sync
/usr/bin/emerge --sync && /usr/local/bin/notify.sh "Обновление" "Portage обновлены до "$(date +%D) 60000 normal /usr/share/icons/gnome/scalable/status/dialog-information.svg transfer.complete || /usr/local/bin/notify.sh "Обновление" "Обновление portage завершилось неудачей" 60000 critical /usr/share/icons/gnome/scalable/status/dialog-error.svg transfer.error;
#layman -S
/usr/bin/layman -S && /usr/local/bin/notify.sh "Обновление" "Оверлеи обновлены до "$(date +%D) 60000 normal /usr/share/icons/gnome/scalable/status/dialog-information.svg transfer.complete || /usr/local/bin/notify.sh "Обновление" "Обновление оверлеев завершилось неудачей" 60000 critical /usr/share/icons/gnome/scalable/status/dialog-error.svg transfer.error;
#emerge -uDNv @world
/usr/bin/emerge -uDNv @world && /usr/local/bin/notify.sh "Обновление" "Мир обновлен" 60000 normal /usr/share/icons/gnome/scalable/status/dialog-information.svg transfer.complete || /usr/local/bin/notify.sh "Обновление" "Обновление мира завершилось неудачей" 60000 critical /usr/share/icons/gnome/scalable/status/dialog-error.svg transfer.error;
#emerge @preserved-rebuild
/usr/bin/emerge @preserved-rebuild && /usr/local/bin/notify.sh "Обновление" "<strong>emerge @preserved-rebuild</strong> завершился успешно" 60000 normal /usr/share/icons/gnome/scalable/status/dialog-information.svg transfer.complete || /usr/local/bin/notify.sh "Обновление" "<strong>emerge @preserved-rebuild</strong> завершилось неудачей" 60000 critical /usr/share/icons/gnome/scalable/status/dialog-error.svg transfer.error;
#revdep-rebuild
/usr/bin/revdep-rebuild && /usr/local/bin/notify.sh "Обновление" "<strong>revdep-rebuild</strong> завершился успешно" 60000 normal /usr/share/icons/gnome/scalable/status/dialog-information.svg transfer.complete || /usr/local/bin/notify.sh "Обновление" "<strong>revdep-rebuild</strong> завершилось неудачей" 60000 critical /usr/share/icons/gnome/scalable/status/dialog-error.svg transfer.error;
Теперь очередь cron
cat /etc/cron.daily/update
#! /bin/sh
/usr/local/bin/update
Делаем скрипты исполнимыми
chmod +x /etc/cron.daily/update
chmod +x /usr/local/bin/update
Наслаждаемся.
Comments