diff --git a/pkgs/tools/security/pass/wofi-pass.nix b/pkgs/tools/security/pass/wofi-pass.nix new file mode 100644 index 000000000000..f205d8881e51 --- /dev/null +++ b/pkgs/tools/security/pass/wofi-pass.nix @@ -0,0 +1,65 @@ +{ lib +, stdenv +, fetchFromGitHub +, pass-wayland +, coreutils +, gnugrep +, libnotify +, pwgen +, findutils +, makeWrapper +, wl-clipboard +, wtype +, wofi +, extensions ? exts: [] +}: + +let + wrapperPath = lib.makeBinPath [ + coreutils + findutils + gnugrep + libnotify + pwgen + wofi + wl-clipboard + wtype + (pass-wayland.withExtensions extensions) + ]; +in +stdenv.mkDerivation rec { + pname = "wofi-pass"; + version = "23.1.2"; + + src = fetchFromGitHub { + owner = "schmidtandreas"; + repo = "wofi-pass"; + rev = "v${version}"; + sha256 = "sha256-Z1a+nfnL6NXhufpCU7VIkwuifoS88Pf9qI8GCuP/Zqc="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + dontBuild = true; + + installPhase = '' + install -Dm755 wofi-pass -t $out/bin + install -Dm755 wofi-pass.conf -t $out/share/doc/wofi-pass/wofi-pass.conf + ''; + + fixupPhase = '' + patchShebangs $out/bin + + wrapProgram $out/bin/wofi-pass \ + --prefix PATH : "${wrapperPath}" + ''; + + meta = { + description = "A script to make wofi work with password-store"; + homepage = "https://github.com/schmidtandreas/wofi-pass"; + maintainers = with lib.maintainers; [ akechishiro ]; + license = lib.licenses.gpl2Plus; + platforms = with lib.platforms; linux; + mainProgram = "wofi-pass"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9639aac6c89c..7216bd8d6a40 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -36512,6 +36512,8 @@ with pkgs; wofi = callPackage ../applications/misc/wofi { }; + wofi-pass = callPackage ../../pkgs/tools/security/pass/wofi-pass.nix { }; + wofi-emoji = callPackage ../applications/misc/wofi-emoji { }; cl-wordle = callPackage ../games/cl-wordle { };