Bug 2467653

Summary: Review Request: keyd - A powerful key remapper for the Linux desktop
Product: [Fedora] Fedora Reporter: Dick Marinus <dick>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora, package-review
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: https://github.com/rvaiya/%{name}
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
The .spec file difference from Copr build 10897154 to 10897339 none

Description Dick Marinus 2026-05-07 07:04:04 UTC
Spec URL: https://download.copr.fedorainfracloud.org/results/meeuw/keyd/fedora-44-x86_64/10431945-keyd/keyd.spec
SRPM URL: https://download.copr.fedorainfracloud.org/results/meeuw/keyd/fedora-44-x86_64/10431945-keyd/keyd-2.6.0-1.fc44.src.rpm
Description: Linux lacks a good key remapping solution. In order to achieve satisfactory results a medley of tools need to be employed (e.g xcape, xmodmap) with the end result often being tethered to a specified environment (X11). keyd attempts to solve this problem by providing a flexible system wide daemon which remaps keys using kernel level input primitives (evdev, uinput).
Fedora Account System Username: meeuw

Comment 1 Artur Frenszek-Iwicki 2026-08-23 15:16:18 UTC
Hey, Dick. Are you still interested in this?
If that's the case, please upload the spec+srpm to some persistent storage, as COPR deletes the files after a couple of days.

Comment 3 Artur Frenszek-Iwicki 2026-08-23 19:17:52 UTC
> BuildRequires: gcc-c++
> BuildRequires: kernel-headers
You're missing a BR on "make"; it's not part of the default buildroot since Fedora 34.
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot

> %package -n gnome-shell-extension-keyd
> Summary: Gnome Shell Extension used by keyd to obtain active window information.
> Requires: gnome-shell < 50
This should probably require the main package, as well.
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_requiring_base_package

Also, as the extension is just some JavaScript code + metadata,
you can make it "BuildArch: noarch".

> %install
> install -Dm644 LICENSE -t "%{buildroot}/usr/share/licenses/keyd"
You don't need install the file manually; "%license LICENSE" will handle it for you.

> mkdir -p %{buildroot}%{_datadir}/gnome-shell/extensions/keyd.github.com/
> cp -r data/gnome-extension-45/* %{buildroot}%{_datadir}/gnome-shell/extensions/keyd.github.com/
You should aim to preserve file timestamps. Use either "cp -pr" or "cp -a" here.
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_timestamps

> %check
> [[ "$(bin/keyd --version)" = "keyd v%{version} ()" ]]
Since %check runs after %install, might make sense to invoke %{buildroot}%{_bindir}/keyd here.

> %files
> %{_docdir}/%{name}
This should be marked as %doc.

> %files
> %{_prefix}/lib/systemd/system/%{name}.service
You could use the %{_unitdir} macro, instead.
> %{_prefix}/lib/systemd/system/%{name}.service
...and %{_sysusersdir} here.

> %files
> %{_mandir}/man1/%{name}.1.gz
> %{_mandir}/man1/%{name}-application-mapper.1.gz
Do not assume that man pages will be gzipped.
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_manpages

Comment 4 Dick Marinus 2026-08-24 08:36:50 UTC
Thank you Artur for your good suggestions!

I've also added some systemd scriptlets, changed the gcc-c++ dependency to gcc and added a comment where the gnome-shell < 50 comes from.

Updated spec/srpm:
https://mrns.nl/~meeuw/86f4f9c869699475681a89930701921ae37f8e704ebfb04bc21aae67-keyd-2.6.0-1.fc44.src.rpm
https://mrns.nl/~meeuw/86f4f9c869699475681a89930701921ae37f8e704ebfb04bc21aae67-keyd.spec

Comment 5 Fedora Review Service 2026-08-24 12:52:52 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/10897154
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2467653-keyd/fedora-rawhide-x86_64/10897154-keyd/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 6 Fedora Review Service 2026-08-24 13:58:02 UTC
Created attachment 2155518 [details]
The .spec file difference from Copr build 10897154 to 10897339

Comment 7 Fedora Review Service 2026-08-24 13:58:04 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/10897339
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2467653-keyd/fedora-rawhide-x86_64/10897339-keyd/fedora-review/review.txt

Found issues:

- Systemd service file(s) in keyd
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_scriptlets

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.