使用 Unity 運行 16.04,每次登入後我都會在螢幕右上角看到這個煩人的通知氣泡,表明有可用更新。
這不僅令人煩惱,而且通常甚至不是真的,因為我保留了一些不應該升級的軟體包,但通知程式似乎並不關心。
如何停用這些可用更新的通知?
我不想完全禁用notify-osd。另外,我已經禁用了自動檢查更新,因為apt
無論如何我都會手動執行此操作。
答案1
根據這篇 Fedoraforum.org 帖子,您可以嘗試停用 GNOME 軟體的自動下載更新:
gsettings set org.gnome.software download-updates false
該鍵的描述如下:
如果啟用,GNOME 軟體會在背景自動下載更新,並在準備好時提示使用者安裝它們。
我手邊沒有任何更新可供測試。
答案2
如何使用 dbus-monitor 僅攔截(殺死)特定通知
可以自動殺掉具體的如果您有特定的識別字串(出現在通知文字中),則會收到訊息。在這種情況下,「更新」可能就可以了。
如何設定
將以下腳本複製到空文件中:
#!/bin/bash string=$1 match="update" if [[ $string == *$match* ]] then pkill notify-osd fi
將其另存為
killnot.sh
.notify-osd
如果通知中出現特定字串,這將終止。編輯該行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>
該訊息不應出現。
如果一切正常,請將其新增至您的啟動應用程式:Dash > 啟動應用程式 > 新增。新增指令:
/path/to/monitor_notifs.sh
註釋/解釋
該腳本的monitor_notifs.sh
使用dbus-monitor
方式與這個答案。在背景運行意味著沒有什麼到您的系統並且僅觸發通知。
這些通知在發生時會作為參數傳遞給腳本killnot.sh
,該腳本不執行任何操作,除非識別字串位於通知文字中。那樣的話就會殺人notify-osd
。
透過對第一個腳本進行一些編輯,您可以一次對多個關鍵字進行設定終止通知。
編輯僅運行命令直到出現氣泡
如果該通知僅在登入後出現,正如您在問題中提到的,您可以「智慧」解決方案以在攔截更新通知後自行終止:
如果您在設定中完全按照指示命名腳本,請在腳本中新增一行killnot.sh
:
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
在完成其工作後將被終止,並且您不再執行後台腳本。
在我看來,你無法接近清潔。
答案3
我找到了該文件/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
中提琴!重新啟用則相反。
答案4
修正了最新版本的 gnome(ubuntu) 軟體中的錯誤https://bugs.launchpad.net/ubuntu/+source/gnome-software/+bug/1592382