about summary refs log tree commit diff
path: root/pkgs/desktops/gnome/extensions/caffeine/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops/gnome/extensions/caffeine/default.nix')
-rw-r--r--pkgs/desktops/gnome/extensions/caffeine/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome/extensions/caffeine/default.nix b/pkgs/desktops/gnome/extensions/caffeine/default.nix
new file mode 100644
index 0000000000000..3085a4461e712
--- /dev/null
+++ b/pkgs/desktops/gnome/extensions/caffeine/default.nix
@@ -0,0 +1,40 @@
+{ lib, stdenv, fetchFromGitHub, glib, gettext, bash, gnome }:
+
+stdenv.mkDerivation rec {
+  pname = "gnome-shell-extension-caffeine";
+  version = "37";
+
+  src = fetchFromGitHub {
+    owner = "eonpatapon";
+    repo = "gnome-shell-extension-caffeine";
+    rev = "v${version}";
+    sha256 = "1mpa0fbpmv3pblb20dxj8iykn4ayvx89qffpcs67bzlq597zsbkb";
+  };
+
+  uuid = "caffeine@patapon.info";
+
+  nativeBuildInputs = [
+    glib gettext
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+    ${bash}/bin/bash ./update-locale.sh
+    glib-compile-schemas --strict --targetdir=caffeine@patapon.info/schemas/ caffeine@patapon.info/schemas
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/share/gnome-shell/extensions
+    cp -r ${uuid} $out/share/gnome-shell/extensions
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Fill the cup to inhibit auto suspend and screensaver";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ eperuffo ];
+    homepage = "https://github.com/eonpatapon/gnome-shell-extension-caffeine";
+  };
+}