1 { mkDerivation, haskellPackages, fetchFromGitHub, lib }:
4 # deadd-notification-center.service
7 Description=Deadd Notification Center
8 PartOf=graphical-session.target
12 BusName=org.freedesktop.Notifications
13 ExecStart=$out/bin/deadd-notification-center
16 WantedBy=graphical-session.target
19 pname = "deadd-notification-center";
22 src = fetchFromGitHub {
24 repo = "linux_notification_center";
26 hash = "sha256-VU9NaQVS0n8hFRjWMvCMkaF5mZ4hpnluV31+/SAK7tU=";
33 libraryHaskellDepends = with haskellPackages; [
34 aeson base bytestring ConfigFile containers dbus directory env-locale
35 filepath gi-cairo gi-gdk gi-gdkpixbuf gi-gio gi-glib gi-gobject
36 gi-gtk gi-pango haskell-gettext haskell-gi haskell-gi-base
37 hdaemonize here lens mtl process regex-tdfa setlocale split stm
38 tagsoup text time transformers tuple unix yaml
41 executableHaskellDepends = with haskellPackages; [ base ];
43 # Test suite does nothing.
47 substituteInPlace src/NotificationCenter.hs \
48 --replace '/etc/xdg/deadd/deadd.css' "$out/etc/deadd.css"
51 # Add systemd user unit and install default style.
53 mkdir -p $out/lib/systemd/user
54 install -Dm644 style.css $out/etc/deadd.css
55 echo "${systemd-service}" > $out/lib/systemd/user/deadd-notification-center.service
58 description = "Haskell-written notification center for users that like a desktop with style";
59 homepage = "https://github.com/phuhl/linux_notification_center";
60 license = lib.licenses.bsd3;
61 maintainers = with lib.maintainers; [ melkor333 sna ];
62 platforms = lib.platforms.linux;
63 mainProgram = "deadd-notification-center";