nixpkgs/pkgs/applications/misc/redshift/default.nix
Tobias Geerinckx-Rice 91fbdd3ee2 redshift: 1.10 -> 1.11
Changes:
- Add option preserve for gamma adjustment methods (randr, vidmode,
  quartz, w32gdi) to apply redness on top of current gamma
  correction.
- Fix #158: Add redshift.desktop file to resolve an issue where
  Geoclue2 would not allow redshift to obtain the current location.
- Fix #263: Make sure that the child process is terminated when
  redshift-gtk exits.
- Fix #284: A sample configuation file has been added to the
  distribution tarball.
- Fix warning message in redshift-gtk that is some cases caused
  redshift-gtk to fail (#271)
- Fix #174: Use nanosleep() for sleeping to avoid high CPU load on
  platforms (NetBSD, ...) with limitations in usleep()
- Various updates to man page and translations.
2016-01-03 01:05:06 +01:00

69 lines
2.3 KiB
Nix

{ fetchurl, stdenv, gettext, intltool, makeWrapper, pkgconfig
, geoclue2
, guiSupport ? true, hicolor_icon_theme, gtk3, python, pygobject3, pyxdg
, drmSupport ? true, libdrm
, randrSupport ? true, libxcb
, vidModeSupport ? true, libX11, libXxf86vm
}:
let
version = "1.11";
mkFlag = flag: name: if flag
then "--enable-${name}"
else "--disable-${name}";
in
stdenv.mkDerivation {
name = "redshift-${version}";
src = fetchurl {
sha256 = "0ngkwj7rg8nfk806w0sg443w6wjr91xdc0zisqfm5h2i77wm1qqh";
url = "https://github.com/jonls/redshift/releases/download/v${version}/redshift-${version}.tar.xz";
};
buildInputs = [ geoclue2 ]
++ stdenv.lib.optionals guiSupport [ hicolor_icon_theme gtk3 python
pygobject3 pyxdg ]
++ stdenv.lib.optionals drmSupport [ libdrm ]
++ stdenv.lib.optionals randrSupport [ libxcb ]
++ stdenv.lib.optionals vidModeSupport [ libX11 libXxf86vm ];
nativeBuildInputs = [ gettext intltool makeWrapper pkgconfig ];
configureFlags = [
(mkFlag guiSupport "gui")
(mkFlag drmSupport "drm")
(mkFlag randrSupport "randr")
(mkFlag vidModeSupport "vidmode")
];
enableParallelBuilding = true;
preInstall = stdenv.lib.optionalString guiSupport ''
substituteInPlace src/redshift-gtk/redshift-gtk \
--replace "/usr/bin/env python3" "${python}/bin/${python.executable}"
'';
postInstall = stdenv.lib.optionalString guiSupport ''
wrapProgram "$out/bin/redshift-gtk" \
--prefix PYTHONPATH : "$PYTHONPATH" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix XDG_DATA_DIRS : "$out/share:${hicolor_icon_theme}/share"
install -Dm644 {.,$out/share/doc/redshift}/redshift.conf.sample
'';
meta = with stdenv.lib; {
inherit version;
description = "Gradually change screen color temperature";
longDescription = ''
The color temperature is set according to the position of the
sun. A different color temperature is set during night and
daytime. During twilight and early morning, the color
temperature transitions smoothly from night to daytime
temperature to allow your eyes to slowly adapt.
'';
license = licenses.gpl3Plus;
homepage = http://jonls.dk/redshift;
platforms = platforms.linux;
maintainers = with maintainers; [ mornfall nckx ];
};
}