diff --git a/pkgs/by-name/du/dunst/package.nix b/pkgs/by-name/du/dunst/package.nix index f89bcd196ab3..f01f65c86283 100644 --- a/pkgs/by-name/du/dunst/package.nix +++ b/pkgs/by-name/du/dunst/package.nix @@ -1,28 +1,69 @@ -{ stdenv, lib, fetchFromGitHub, makeWrapper -, pkg-config, which, perl, jq, libXrandr, coreutils -, cairo, dbus, systemd, gdk-pixbuf, glib, libX11, libXScrnSaver -, wayland, wayland-protocols -, libXinerama, libnotify, pango, xorgproto, librsvg -, testers, dunst +{ stdenv +, lib +, fetchFromGitHub +, makeWrapper +, pkg-config +, which +, perl +, jq +, libXrandr +, coreutils +, cairo +, dbus +, systemd +, gdk-pixbuf +, glib +, libX11 +, libXScrnSaver +, wayland +, wayland-protocols +, libXinerama +, libnotify +, pango +, xorgproto +, librsvg +, testers +, dunst +, withX11 ? true +, withWayland ? true }: stdenv.mkDerivation (finalAttrs: { pname = "dunst"; - version = "1.10.0"; + version = "1.11.0"; src = fetchFromGitHub { owner = "dunst-project"; repo = "dunst"; rev = "v${finalAttrs.version}"; - hash = "sha256-6smFUdWqOuYB0btsDgHtIpDBfHhkpIQfjyZ8wtRg1bQ="; + hash = "sha256-eiFvvavXGNcHZnEGwlTLxRqFNdkvEZMwNIkVyDn1V6o="; }; - nativeBuildInputs = [ perl pkg-config which systemd makeWrapper ]; + nativeBuildInputs = [ + perl + pkg-config + which + systemd + makeWrapper + ]; buildInputs = [ - cairo dbus gdk-pixbuf glib libX11 libXScrnSaver - libXinerama libnotify pango xorgproto librsvg libXrandr - wayland wayland-protocols + cairo + dbus + gdk-pixbuf + glib + libnotify + pango + librsvg + ] ++ lib.optionals withX11 [ + libX11 + libXScrnSaver + libXinerama + xorgproto + libXrandr + ] ++ lib.optionals withWayland [ + wayland + wayland-protocols ]; outputs = [ "out" "man" ]; @@ -33,7 +74,9 @@ stdenv.mkDerivation (finalAttrs: { "SYSCONFDIR=$(out)/etc" "SERVICEDIR_DBUS=$(out)/share/dbus-1/services" "SERVICEDIR_SYSTEMD=$(out)/lib/systemd/user" - ]; + ] + ++ lib.optional (!withX11) "X11=0" + ++ lib.optional (!withWayland) "WAYLAND=0"; postInstall = '' wrapProgram $out/bin/dunst \ @@ -42,10 +85,8 @@ stdenv.mkDerivation (finalAttrs: { wrapProgram $out/bin/dunstctl \ --prefix PATH : "${lib.makeBinPath [ coreutils dbus ]}" - install -D contrib/_dunst.zshcomp $out/share/zsh/site-functions/_dunst - install -D contrib/_dunstctl.zshcomp $out/share/zsh/site-functions/_dunstctl - substituteInPlace $out/share/zsh/site-functions/_dunstctl \ - --replace "jq -M" "${jq}/bin/jq -M" + substituteInPlace $out/share/zsh/site-functions/_dunstctl $out/share/fish/vendor_completions.d/{dunstctl,dunstify} \ + --replace-fail "jq" "${lib.getExe jq}" ''; passthru.tests.version = testers.testVersion { package = dunst; }; @@ -56,7 +97,7 @@ stdenv.mkDerivation (finalAttrs: { license = licenses.bsd3; # NOTE: 'unix' or even 'all' COULD work too, I'm not sure platforms = platforms.linux; - maintainers = with maintainers; [ domenkozar ]; + maintainers = with maintainers; [ domenkozar gepbird ]; mainProgram = "dunst"; }; })