nixpkgs/pkgs/applications/misc/redshift-plasma-applet/default.nix
Karl d274ef1aa4 redshift-plasma-applet: patch to work with redshift 1.12 update
From patch commit message:

> Redshift version >= 1.12 requires the -P option to clear the
> existing gamma ramps for one-shot mode. Without it the screen
> gets darker and darker until it is impossible to see anything.

Apply this fix since a new version of the applet has not been
released.
2021-06-10 01:42:58 -05:00

59 lines
2.0 KiB
Nix

{ lib, stdenv, cmake, extra-cmake-modules, plasma-framework, kwindowsystem, redshift, fetchFromGitHub, fetchpatch, }:
let version = "1.0.18"; in
stdenv.mkDerivation {
pname = "redshift-plasma-applet";
inherit version;
src = fetchFromGitHub {
owner = "kotelnik";
repo = "plasma-applet-redshift-control";
rev = "v${version}";
sha256 = "122nnbafa596rxdxlfshxk45lzch8c9342bzj7kzrsjkjg0xr9pq";
};
patches = [
# This patch fetches from out-of-source repo because the GitHub copy is frozen,
# the active fork is now on invent.kde.org. Remove this patch when a new version is released and src is updated
# Redshift version >= 1.12 requires the -P option to clear the existing effects before applying shading.
# Without it scrolling makes the screen gets darker and darker until it is impossible to see anything.
(fetchpatch {
url = "https://invent.kde.org/plasma/plasma-redshift-control/-/commit/898c3a4cfc6c317915f1e664078d8606497c4049.patch";
sha256 = "0b6pa3fcj698mgqnc85jbbmcl3qpf418mh06qgsd3c4v237my0nv";
})
];
patchPhase = ''
substituteInPlace package/contents/ui/main.qml \
--replace "redshiftCommand: 'redshift'" \
"redshiftCommand: '${redshift}/bin/redshift'" \
--replace "redshiftOneTimeCommand: 'redshift -O " \
"redshiftOneTimeCommand: '${redshift}/bin/redshift -O "
substituteInPlace package/contents/ui/config/ConfigAdvanced.qml \
--replace "'redshift -V'" \
"'${redshift}/bin/redshift -V'"
'';
nativeBuildInputs = [
cmake
extra-cmake-modules
];
buildInputs = [
plasma-framework
kwindowsystem
];
dontWrapQtApps = true;
meta = with lib; {
description = "KDE Plasma 5 widget for controlling Redshift";
homepage = "https://github.com/kotelnik/plasma-applet-redshift-control";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ benley zraexy ];
};
}