summaryrefslogtreecommitdiff
path: root/Base/etc
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2020-02-16 19:28:08 +0100
committerAndreas Kling <kling@serenityos.org>2020-02-16 21:58:17 +0100
commit9f54ea9bcd81567f4250cdea4b4f21f249e6d7b4 (patch)
treea88478357ef41fdc36c3f53c49a72941ab2d334c /Base/etc
parenta6e69bda71440f40d6c9d289258a69c0942b90ba (diff)
downloadserenity-9f54ea9bcd81567f4250cdea4b4f21f249e6d7b4.zip
NotificationServer: Add a system service for desktop notifications
This patch adds NotificationServer, which runs as the "notify" user and provides an IPC API for desktop notifications. LibGUI gains the GUI::Notification class for showing notifications. NotificationServer is spawned on demand and will unspawn after dimissing all visible notifications. :^) Finally, this also comes with a small /bin/notify utility.
Diffstat (limited to 'Base/etc')
-rw-r--r--Base/etc/SystemServer.ini8
-rw-r--r--Base/etc/group3
-rw-r--r--Base/etc/passwd1
3 files changed, 11 insertions, 1 deletions
diff --git a/Base/etc/SystemServer.ini b/Base/etc/SystemServer.ini
index f5fd678a3a..96f9349cee 100644
--- a/Base/etc/SystemServer.ini
+++ b/Base/etc/SystemServer.ini
@@ -20,6 +20,14 @@ Priority=low
KeepAlive=1
User=lookup
+[NotificationServer]
+Socket=/tmp/portal/notify
+SocketPermissions=660
+Lazy=1
+Priority=low
+KeepAlive=1
+User=notify
+
[WindowServer]
Socket=/tmp/portal/window
SocketPermissions=660
diff --git a/Base/etc/group b/Base/etc/group
index 847883e3da..d435cf62c8 100644
--- a/Base/etc/group
+++ b/Base/etc/group
@@ -5,5 +5,6 @@ phys:x:3:window
audio:x:4:anon
lookup:x:10:protocol,anon
protocol:x:11:anon
-window:x:13:anon
+notify:x:12:anon
+window:x:13:anon,notify
users:x:100:anon
diff --git a/Base/etc/passwd b/Base/etc/passwd
index 78f60742f2..b10404b60b 100644
--- a/Base/etc/passwd
+++ b/Base/etc/passwd
@@ -1,6 +1,7 @@
root:x:0:0:root:/:/bin/sh
lookup:x:10:10:LookupServer,,,:/:/bin/false
protocol:x:11:11:ProtocolServer,,,:/:/bin/false
+notify:x:12:12:NotificationServer,,,:/:/bin/false
window:x:13:13:WindowServer,,,:/:/bin/false
anon:x:100:100:Anonymous,,,:/home/anon:/bin/sh
nona:x:200:200:Nona,,,:/home/nona:/bin/sh