
As already noted in the code comment, we all knew that the in memory conversion to a PNG stream is a cumbersome technique. But it was worth to remove the GTK dependency. After finding out, that gdk_pixbuf_new_from_data can actually use a GVariant and share its memory without allocating new memory, I poked the cairo docs for a similar technique. There is cairo_image_surface_create_for_data, which would achieve the same, but cairo uses another color byte order. So we have to manually copy and reassemble the bytes. It may look like a big rise in complexity, but actually, it's straight forward copying pixel by pixel and changing the byte's order. And the gdk_pixbuf_to_cairo_surface is 33x faster.
Dunst
Description
Dunst is a highly configurable and lightweight notification daemon.
Installation
Dependencies
Dunst has a number of build dependencies that must be present before attempting configuration. The names are different depending on distribution:
- dbus
- libxinerama
- libxrandr
- libxss
- glib
- pango/cairo
- libgtk-3-dev
Building
git clone https://github.com/dunst-project/dunst.git
cd dunst
make
sudo make install
Make parameters
PREFIX=<PATH>
: Set the prefix of the installation. (Default:/usr/local
)MANPREFIX=<PATH>
: Set the prefix of the manpage. (Default:${PREFIX}/share/man
)SYSTEMD=(0|1)
: Enable/Disable the systemd unit. (Default: detected viapkg-config
)SERVICEDIR_SYSTEMD=<PATH>
: The path to put the systemd user service file. Unused, ifSYSTEMD=0
. (Default: detected viapkg-config
)SERVICEDIR_DBUS=<PATH>
: The path to put the dbus service file. (Default: detected viapkg-config
)
Make sure to run all make calls with the same parameter set. So when building with make PREFIX=/usr
, you have to install it with make PREFIX=/usr install
, too.
Checkout the wiki for more information.
Bug reports
Please use the issue tracker provided by GitHub to send us bug reports or feature requests. You can also join us on the IRC channel #dunst
on Freenode.
Maintainers
Author
written by Sascha Kruse dunst@knopwob.de
Copyright
copyright 2013 Sascha Kruse and contributors (see LICENSE
for licensing information)
If you feel that copyrights are violated, please send me an email.