summary refs log tree commit diff
path: root/pkgs/applications/misc/clipmenu
diff options
context:
space:
mode:
authorChristian Kögler <ck3d@gmx.de>2020-12-28 22:24:25 +0100
committerChristian Kögler <ck3d@gmx.de>2020-12-28 22:25:49 +0100
commit2f81c7a76a5b57add7236a433acbf12106b11975 (patch)
tree343102fd3153342a9e2f08740051d7de297011be /pkgs/applications/misc/clipmenu
parentf6ff5f85cade02dbc021c4fec35af2cbfbf959db (diff)
downloadnixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.tar
nixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.tar.gz
nixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.tar.bz2
nixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.tar.lz
nixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.tar.xz
nixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.tar.zst
nixpkgs-2f81c7a76a5b57add7236a433acbf12106b11975.zip
clipmenu: Fix systemd service, clipctl, clipmenud
clipmenud.service:
- fix path to clipmenud

clipmenud:
- fix "ignore window" function by adding xdotools
- add coreutils to make clipmenud fully self contained (needed for
  systemd service)

clipctl:
- fix process name, caused by wrapping clipmenud
Diffstat (limited to 'pkgs/applications/misc/clipmenu')
-rw-r--r--pkgs/applications/misc/clipmenu/default.nix33
1 files changed, 25 insertions, 8 deletions
diff --git a/pkgs/applications/misc/clipmenu/default.nix b/pkgs/applications/misc/clipmenu/default.nix
index 03cb05150b7..f616e86c5b7 100644
--- a/pkgs/applications/misc/clipmenu/default.nix
+++ b/pkgs/applications/misc/clipmenu/default.nix
@@ -1,7 +1,15 @@
-{ clipnotify, makeWrapper, xsel, dmenu, util-linux, gawk, stdenv, fetchFromGitHub, lib }:
-let
-  runtimePath = lib.makeBinPath [ clipnotify xsel dmenu util-linux gawk ];
-in
+{ stdenv
+, lib
+, fetchFromGitHub
+, makeWrapper
+, clipnotify
+, coreutils
+, dmenu
+, gawk
+, util-linux
+, xdotool
+, xsel
+}:
 stdenv.mkDerivation rec {
   pname = "clipmenu";
   version = "6.2.0";
@@ -13,14 +21,23 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-nvctEwyho6kl4+NXi76jT2kG7nchmI2a7mgxlgjXA5A=";
   };
 
+  postPatch = ''
+    sed -i init/clipmenud.service \
+      -e "s,/usr/bin,$out/bin,"
+  '';
+
   makeFlags = [ "PREFIX=$(out)" ];
   buildInputs = [ makeWrapper ];
   nativeBuildInputs = [ xsel clipnotify ];
 
-  installPhase = ''
-    for bin in $out/bin/*; do
-      wrapProgram "$bin" --prefix PATH : "${runtimePath}"
-    done
+  postFixup = ''
+    sed -i "$out/bin/clipctl" -e 's,clipmenud\$,\.clipmenud-wrapped\$,'
+
+    wrapProgram "$out/bin/clipmenu" \
+      --prefix PATH : "${lib.makeBinPath [ xsel ]}"
+
+    wrapProgram "$out/bin/clipmenud" \
+      --set PATH "${lib.makeBinPath [ clipnotify coreutils gawk util-linux xdotool xsel ]}"
   '';
 
   meta = with stdenv.lib; {