nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, buildGoModule
3, fetchFromSourcehut
4, libxkbcommon
5, pkg-config
6}:
7
8buildGoModule rec {
9 pname = "dotool";
10 version = "1.3";
11
12 src = fetchFromSourcehut {
13 owner = "~geb";
14 repo = "dotool";
15 rev = version;
16 hash = "sha256-z0fQ+qenHjtoriYSD2sOjEvfLVtZcMJbvnjKZFRSsMA=";
17 };
18
19 vendorHash = "sha256-v0uoG9mNaemzhQAiG85RequGjkSllPd4UK2SrLjfm7A=";
20
21 # uses nix store path for the dotool binary
22 # also replaces /bin/echo with echo
23 patches = [ ./fix-paths.patch ];
24
25 postPatch = ''
26 substituteInPlace ./dotoold --replace "@dotool@" "$out/bin/dotool"
27 '';
28
29 buildInputs = [ libxkbcommon ];
30 nativeBuildInputs = [ pkg-config ];
31
32 ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
33
34 postInstall = ''
35 mkdir -p $out/bin
36 cp ./dotoold ./dotoolc $out/bin
37 '';
38
39 meta = with lib; {
40 description = "Command to simulate input anywhere";
41 homepage = "https://git.sr.ht/~geb/dotool";
42 changelog = "https://git.sr.ht/~geb/dotool/tree/${version}/item/CHANGELOG.md";
43 license = licenses.gpl3Only;
44 maintainers = with maintainers; [ dit7ya ];
45 };
46}