Запуск 16.04 с Unity, после каждого входа в систему я вижу этот надоедливый пузырь уведомлений в правом верхнем углу экрана, что есть доступные обновления.
Это не только раздражает, но часто даже не соответствует действительности, так как я сдерживаю некоторые пакеты, которые не должны обновляться, но уведомителю, похоже, это не важно.
Как отключить эти уведомления для доступных обновлений?
Я не хочу полностью отключать notify-osd. Кроме того, я уже отключил автоматическую проверку обновлений, так как все равно делаю это вручную, используя apt
.
Согласно это сообщение Fedoraforum.org , Вы могли попытаться отключить автоматическую загрузку программного обеспечения GNOME обновлений:
gsettings set org.gnome.software download-updates false
описание того ключа чтения:
, Если включено, программное обеспечение GNOME автоматически загружает обновления в фоновом режиме и предлагает пользователю устанавливать их, когда готовый.
у меня нет обновлений под рукой для тестирования.
Ошибка закрепила на последней версии гнома (человечность) - программное обеспечение https://bugs.launchpad.net/ubuntu / + source/gnome-software / + ошибка/1592382
Я нашел файл /etc/xdg/autostart/update-notifier.desktop
, который автоматически запускает update-notifier
сервис. Как Вы можете или не можете знать, никакой .desktop
файл в /etc/xdg/autostart
, каталог запустится, любая команда дана Exec=
параметр.
Все необходимо сделать для отключения его, должен сделать mv /etc/xdg/autostart/update-notifier.desktop /etc/xdg/autostart/update-notifier.desktop.bak
и альт! Перевключение является реверсом.
Можно автоматически уничтожить определенные сообщения, если у Вас есть определенная строка идентификации, который occurres в тексте уведомления. В этом случае "обновление", вероятно, сделает.
Скопируйте сценарий ниже в пустой файл:
#!/bin/bash
string=$1
match="update"
if [[ $string == *$match* ]]
then
pkill notify-osd
fi
Сохраните его как killnot.sh
. Это уничтожит notify-osd
если определенная строка occurres в уведомлении. Отредактируйте строку match="update"
для отражения идентификации представляют в виде строки в уведомлении (уведомлениях), которое требуется уничтожить. Сделайте исполняемый файл сценария.
Скопируйте сценарий ниже в пустой файл:
#!/bin/bash
scriptpath=/home/jacob/Bureaublad/killnot.sh
dbus-monitor "interface='org.freedesktop.Notifications'" | \
grep --line-buffered "string" | \
grep --line-buffered -e method -e ":" -e '""' -e urgency -e notify -v | \
grep --line-buffered '.*(?=string)|(?<=string).*' -oPi | \
grep --line-buffered -v '^\s*$' | \
xargs -I '{}' $scriptpath {}
Отредактируйте строку scriptpath=/home/jacob/Bureaublad/killnot.sh
отразить реальный путь к сценарию 1 (killnot.sh
) и сохраните его как monitor_notifs.sh
. Сделайте исполняемый файл сценария.
Тестовый прогон установка командой:
/path/to/monitor_notifs.sh
Для тестирования выполните в другом терминале команду:
notify-send <identifying_string>
mesasage не должен появляться.
Если все хорошо работает, добавьте его к своим приложениям Запуска: Тире> Приложения Запуска> Добавляет. Добавьте команду:
/path/to/monitor_notifs.sh
Сценарий monitor_notifs.sh
использование dbus-monitor
таким же образом как этот ответ. Выполнение его в фоновом режиме ничего не значит для Вашей системы и только инициировало уведомления.
Эти уведомления, когда они происходят, передаются как аргумент сценарию killnot.sh
, который ничего не делает, если строка идентификации не находится в тексте уведомления. В этом случае это уничтожит notify-osd
.
С небольшим редактированием первого сценария можно заставить установку уничтожить уведомления на нескольких ключевых словах сразу.
Если уведомление только появляется, после входят в систему, как Вы упоминаете в своем вопросе, можно "привести решение в порядок" уничтожить себя после того, как это прервало обновление notificalion:
При именовании сценариев в установке точно, как обозначено добавьте одну строку к killnot.sh
sript:
pkill -P "$( pgrep -f run_intercept )"
Сценарий затем становится:
#!/bin/bash
string=$1
match="update"
if [[ $string == *$match* ]]
then
pkill notify-osd
pkill -P "$( pgrep -f run_intercept )"
fi
Основной сценарий, run_intercept
, будет затем уничтожен после того, как это сделало свое задание, и у Вас нет фонового сценария, работающего больше.
Ближе для очистки Вас не может войти в эту ситуацию imo.
StartupWMClass=
строка к.desktop
файл после этот ответ . – pomsky 8 November 2017 в 05:43