Name: dotool Version: 1.5 Release: 1%{?dist} Summary: Command to simulate input anywhere License: GPL3 URL: https://git.sr.ht/~geb/dotool Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz Source1: dotoold.service BuildRequires: golang, go-md2man, libxkbcommon-devel, git-core, systemd-rpm-macros %{?systemd_requires} %global debug_package %{nil} %description dotool reads actions from stdin and simulates keyboard/mouse input using Linux's uinput module. It works systemwide and supports keyboard layouts. %prep %autosetup -p1 %build go build -ldflags "-X main.version=%{version}" go-md2man -in README.md -out %{name}.1 %install install -Dm 0755 %{name} %{buildroot}%{_bindir}/%{name} install -Dm 0755 %{name}c %{buildroot}%{_bindir}/%{name}c install -Dm 0755 %{name}d %{buildroot}%{_bindir}/%{name}d install -Dm 0644 80-dotool.rules %{buildroot}%{_sysconfdir}/udev/rules.d/80-dotool.rules install -Dm 0644 %{SOURCE1} %{buildroot}%{_unitdir}/dotoold.service install -Dm 0644 %{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1 %post echo 'Ensure your user is in the `input` group:' echo ' # usermod -aG input $USER' %files %license LICENSE %doc README.md doc/ %{_bindir}/%{name}* %{_sysconfdir}/udev/rules.d/80-dotool.rules %{_unitdir}/dotoold.service %{_mandir}/man1/* %changelog * Thu Jun 12 2025 Martin Kaufmann - 1.5-1 - Initial release