{ pkgs }: let name = "yubilock"; runtimeInputs = with pkgs; [ systemd coreutils yubikey-manager gawk getent logger ]; yubilock = (pkgs.writeScriptBin name (builtins.readFile ./yubilock.sh)).overrideAttrs (old: { buildCommand = "${old.buildCommand}\n patchShebangs $out"; }); in pkgs.symlinkJoin { inherit name; paths = [ yubilock ] ++ runtimeInputs; buildInputs = [ pkgs.makeWrapper ]; postBuild = "wrapProgram $out/bin/${name} --prefix PATH : $out/bin"; }