Pemberitahuan tidak berfungsi pada manajer jendela mandiri Linux (Openbox, Awesome WM, dan yang serupa). Saya mencoba menginstal pemberitahuan-daemon dan dunst, tetapi mengirim dengan notify-send "something"
tidak membuat jendela apa pun untuk muncul.
Saya mencoba menjalankan polkit-gnome-agent dan langsung menjalankan daemon notifikasi, tetapi tidak membantu (sementara yang lalu saya memecahkan masalah yang sama dengan cara ini, tetapi sekarang tidak melakukan apa-apa).
Tidak ada indikasi kesalahan kecuali saya mengirim notifikasi sepele dengan python, maka saya hanya mendapatkan pesan kesalahan samar:
File "/usr/lib/python3.3/site-packages/gi/types.py", line 113, in function
return info.invoke(*args, **kwargs)
gi._glib.GError: Could not connect: Connection refused
Trivial C program tidak menghasilkan apa-apa (misalnya tidak ada kesalahan).
Saya menggunakan Archlinux dengan systemd dan d-bus, saya curiga ini masalah dengan polkit atau semacam daemon yang tidak berjalan di jendela manajer mulai, tetapi tidak tahu, apa yang bisa saya coba atau bagaimana saya bisa mendapatkan pesan kesalahan yang lebih bermakna.
EDIT: Saya mengambil kode sampel dari sana: https://wiki.archlinux.org/index.php/Libnotify#Python
Dbus harus dijalankan karena systemd memilikinya sebagai ketergantungan. Saya telah libnotify
menginstal - ini adalah paket yang menyediakan notify-send
. Daemon notifikasi juga harus dimulai sesuai kebutuhan (hanya ketika notifikasi arives), dengan mengikuti file desktop /usr/share/dbus-1/services/org.freedesktop.Notifications.service
:
[D-BUS Service]
Name=org.freedesktop.Notifications
Exec=/usr/bin/dunst
Saya bahkan telah mencoba menjalankan daemon secara langsung (hanya mengeksekusi) dan mencoba mengirim notifikasi. Jika seseorang tahu bagaimana saya bisa mendapatkan saya info lebih lanjut, jangan ragu untuk menyarankan.
EDIT 2: Saya mencoba menjalankan daemon notifikasi dengan sudo: sudo notification-daemon_name &
(dalam kasus saya sudo dunst &
) dan sudo notify-send something
, kemudian notifikasi berfungsi. Tetapi ketika saya mencoba melakukan tindakan sebelumnya sebagai pengguna tidakrivil (yang penting sebagian besar program mengirim pemberitahuan sebagai pengguna tidakrivil), tidak ada yang terlihat.
notification-daemon
menolak untuk bekerja sama sekali tanpa kesalahan atau peringatan.
EDIT 3: Jelas itu adalah masalah izin: Saya tidak dapat mengirim pemberitahuan tanpa akses root. Setelah reboot bersih: sudo notify-send "something"
berfungsi bahkan tanpa meluncurkan daemon secara manual, namun apa yang harus saya (dan program saya luncurkan) lakukan untuk dapat mengirim notifikasi tanpa hak root seperti yang dimungkinkan di Gnome atau lingkungan desktop penuh lainnya?
libnotify
karena ini memberikannotify-send
perintah (yang Anda butuhkan)?