lol

redshift: fix dependencies, make configurable

+29 -10
+29 -10
pkgs/applications/misc/redshift/default.nix
··· 1 - { fetchurl, stdenv, gettext, geoclue, intltool, makeWrapper 2 - , pkgconfig , python, pygobject3, pyxdg }: 1 + { fetchurl, stdenv, gettext, intltool, pkgconfig, makeWrapper 2 + , geoclue, python, pygobject3, pyxdg 3 + , libdrm, libX11, libxcb, libXxf86vm 4 + , guiSupport ? true 5 + , drmSupport ? true 6 + , randrSupport ? true 7 + , vidModeSupport ? true 8 + }: 3 9 4 - let version = "1.10"; in 10 + let 11 + version = "1.10"; 12 + mkFlag = flag: name: if flag then "--enable-${name}" else "--disable-${name}"; 13 + in 5 14 stdenv.mkDerivation { 6 15 name = "redshift-${version}"; 7 16 src = fetchurl { ··· 9 18 url = "https://github.com/jonls/redshift/releases/download/v${version}/redshift-${version}.tar.xz"; 10 19 }; 11 20 12 - buildInputs = [ 13 - gettext intltool makeWrapper pkgconfig python pygobject3 pyxdg 21 + buildInputs = [ geoclue ] 22 + ++ stdenv.lib.optional guiSupport [ python pygobject3 pyxdg ] 23 + ++ stdenv.lib.optional drmSupport [ libdrm ] 24 + ++ stdenv.lib.optional randrSupport [ libxcb ] 25 + ++ stdenv.lib.optional vidModeSupport [ libX11 libXxf86vm ]; 26 + nativeBuildInputs = [ gettext intltool makeWrapper pkgconfig ]; 27 + 28 + configureFlags = [ 29 + (mkFlag guiSupport "gui") 30 + (mkFlag drmSupport "drm") 31 + (mkFlag randrSupport "randr") 32 + (mkFlag vidModeSupport "vidmode") 14 33 ]; 15 34 16 - preInstall = '' 35 + preInstall = stdenv.lib.optionalString guiSupport '' 17 36 substituteInPlace src/redshift-gtk/redshift-gtk python \ 18 37 --replace "/usr/bin/env python3" "${python}/bin/${python.executable}" 19 38 ''; 20 - /* 21 - postInstall = '' 22 - wrapProgram "$out/bin/redshift-gtk" --prefix PYTHONPATH : $PYTHONPATH 39 + 40 + postInstall = stdenv.lib.optionalString guiSupport '' 41 + wrapProgram "$out/bin/redshift-gtk" --prefix PYTHONPATH : "$PYTHONPATH" 23 42 ''; 24 - */ 43 + 25 44 meta = with stdenv.lib; { 26 45 inherit version; 27 46 description = "Gradually change screen color temperature";