nixpkgs/pkgs/desktops/pantheon/services/elementary-dpms-helper/default.nix
2021-01-16 17:58:11 +07:00

66 lines
1.4 KiB
Nix

{ lib, stdenv
, fetchFromGitHub
, nix-update-script
, pantheon
, meson
, ninja
, desktop-file-utils
, glib
, coreutils
, elementary-settings-daemon
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "elementary-dpms-helper";
version = "1.0";
repoName = "dpms-helper";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
rev = version;
sha256 = "sha256-0KbfAxvZ+aFjq+XEK4uoRHSyKlaky0FlJd2a5TG4bms=";
};
passthru = {
updateScript = nix-update-script {
attrPath = "pantheon.${pname}";
};
};
nativeBuildInputs = [
desktop-file-utils
meson
ninja
wrapGAppsHook
];
buildInputs = [
elementary-settings-daemon
glib
];
preFixup = ''
gappsWrapperArgs+=(--prefix PATH : "${lib.makeBinPath [ glib.dev coreutils ]}")
'';
postFixup = ''
substituteInPlace $out/etc/xdg/autostart/io.elementary.dpms-helper.desktop \
--replace "Exec=io.elementary.dpms-helper" "Exec=$out/bin/io.elementary.dpms-helper"
'';
# See: https://github.com/elementary/dpms-helper/pull/10
postInstall = ''
${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
'';
meta = with lib; {
description = "Sets DPMS settings found in org.pantheon.dpms";
homepage = "https://github.com/elementary/dpms-helper";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = pantheon.maintainers;
};
}