summary refs log tree commit diff
path: root/pkgs/applications/misc/rofi
diff options
context:
space:
mode:
authorMaximilian Bosch <maximilian@mbosch.me>2018-03-11 02:37:59 +0100
committerMaximilian Bosch <maximilian@mbosch.me>2018-04-04 15:24:51 +0200
commit26a4e02e956ed287bc85f2b0f729a79343f0be92 (patch)
treee1d06faaf8d1340f52660f9994f440519240877c /pkgs/applications/misc/rofi
parenta308118d64304a0ddb3fac21c7db52f08219d63b (diff)
downloadnixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.tar
nixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.tar.gz
nixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.tar.bz2
nixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.tar.lz
nixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.tar.xz
nixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.tar.zst
nixlib-26a4e02e956ed287bc85f2b0f729a79343f0be92.zip
rofi: add `theme` option
This is helpful when defining a `*.rasi` theme for rofi using
`pkgs.writeText` rather than messing up the impure `~/.config`
directory.
Diffstat (limited to 'pkgs/applications/misc/rofi')
-rw-r--r--pkgs/applications/misc/rofi/default.nix6
-rw-r--r--pkgs/applications/misc/rofi/wrapper.nix17
2 files changed, 20 insertions, 3 deletions
diff --git a/pkgs/applications/misc/rofi/default.nix b/pkgs/applications/misc/rofi/default.nix
index f291060a10f2..7da721e9f374 100644
--- a/pkgs/applications/misc/rofi/default.nix
+++ b/pkgs/applications/misc/rofi/default.nix
@@ -5,10 +5,10 @@
 
 stdenv.mkDerivation rec {
   version = "1.5.1";
-  name = "rofi-${version}";
+  name = "rofi-unwrapped-${version}";
 
   src = fetchurl {
-    url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/${name}.tar.gz";
+    url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/rofi-${version}.tar.gz";
     sha256 = "1dc33zf33z38jcxb0lxpyd31waalpf6d4cd9z5f9m5qphdk1g679";
   };
 
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     description = "Window switcher, run dialog and dmenu replacement";
     homepage = https://davedavenport.github.io/rofi;
     license = licenses.mit;
-    maintainers = with maintainers; [ mbakke garbas ];
+    maintainers = with maintainers; [ mbakke garbas ma27 ];
     platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/applications/misc/rofi/wrapper.nix b/pkgs/applications/misc/rofi/wrapper.nix
new file mode 100644
index 000000000000..44c6f892bf58
--- /dev/null
+++ b/pkgs/applications/misc/rofi/wrapper.nix
@@ -0,0 +1,17 @@
+{ stdenv, rofi-unwrapped, makeWrapper, theme ? null, lib }:
+
+stdenv.mkDerivation {
+  name = "rofi-${rofi-unwrapped.version}";
+  buildInputs = [ makeWrapper ];
+  preferLocalBuild = true;
+  passthru = { unwrapped = rofi-unwrapped; };
+  buildCommand = ''
+    mkdir -p $out/bin
+    ln -s ${rofi-unwrapped}/bin/rofi $out/bin/rofi
+    ${lib.optionalString (theme != null) ''wrapProgram $out/bin/rofi --add-flags "-theme ${theme}"''}
+  '';
+
+  meta = rofi-unwrapped.meta // {
+    priority = (rofi-unwrapped.meta.priority or 0) - 1;
+  };
+}