biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / tools / dotool / default.nix
blobac71a666ac63585016f62e4792b1ba6e3095b0d0
1 { lib
2 , buildGoModule
3 , fetchFromSourcehut
4 , libxkbcommon
5 , pkg-config
6 , installShellFiles
7 , scdoc
8 }:
10 buildGoModule rec {
11   pname = "dotool";
12   version = "1.5";
14   src = fetchFromSourcehut {
15     owner = "~geb";
16     repo = "dotool";
17     rev = version;
18     hash = "sha256-4QmTHeU3TnpRATKIvilkIA3i2hDjM5zQwSvmRvoWuNE=";
19   };
21   vendorHash = "sha256-IQ847LHDYJPboWL/6lQNJ4vPPD/+xkrGI2LSZ7kBnp4=";
23   # uses nix store path for the dotool binary
24   # also replaces /bin/echo with echo
25   patches = [ ./fix-paths.patch ];
27   postPatch = ''
28     substituteInPlace ./dotoold --replace "@dotool@" "$out/bin/dotool"
29   '';
31   buildInputs = [ libxkbcommon ];
32   nativeBuildInputs = [ installShellFiles pkg-config scdoc ];
34   ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
36   postInstall = ''
37     mkdir -p $out/bin
38     cp ./dotoold ./dotoolc $out/bin
39     scdoc < doc/dotool.1.scd > doc/dotool.1
40     installManPage doc/dotool.1
41   '';
43   meta = with lib; {
44     description = "Command to simulate input anywhere";
45     homepage = "https://git.sr.ht/~geb/dotool";
46     changelog = "https://git.sr.ht/~geb/dotool/tree/${version}/item/CHANGELOG.md";
47     license = licenses.gpl3Only;
48     maintainers = with maintainers; [ dit7ya ];
49   };