1 |
Name: ckb-next |
2 |
Version: 0.4.2 |
3 |
Release: %mkrel 4 |
4 |
Summary: Corsair RGB keyboard driver for Linux and OS X |
5 |
Group: System/Configuration |
6 |
#bundled kissfft library is BSD |
7 |
License: GPLv2 and BSD |
8 |
|
9 |
URL: https://github.com/ckb-next/ckb-next |
10 |
Source0: https://github.com/ckb-next/ckb-next/archive/v%{version}/%{name}-%{version}.tar.gz |
11 |
|
12 |
# Upstream provides none of the following files |
13 |
Source1: ckb-next.appdata.xml |
14 |
Source2: ckb-next.1 |
15 |
Source3: 99-ckb-next.preset |
16 |
Source4: README.install.urpmi |
17 |
|
18 |
Patch0: ckb-next-0.4.2-fix-daemon-path.patch |
19 |
Patch1: ckb-next-0.4.2--missing-extern-qualifiers.patch |
20 |
Patch2: 0001-Replace-AppIndicator-with-minimal-KStatusNotifier.patch |
21 |
|
22 |
BuildRequires: cmake |
23 |
BuildRequires: cmake(Qt5Core) >= 5.3 |
24 |
BuildRequires: cmake(Qt5DBus) >= 5.3 |
25 |
BuildRequires: cmake(Qt5Gui) >= 5.3 |
26 |
BuildRequires: cmake(Qt5Network) >= 5.3 |
27 |
BuildRequires: cmake(Qt5Widgets) >= 5.3 |
28 |
BuildRequires: quazip-devel |
29 |
BuildRequires: pkgconfig(dbusmenu-qt5) |
30 |
BuildRequires: pkgconfig(openssl) |
31 |
BuildRequires: pkgconfig(gudev-1.0) |
32 |
BuildRequires: pkgconfig(systemd) |
33 |
BuildRequires: pkgconfig(libpulse) |
34 |
BuildRequires: pkgconfig(zlib) |
35 |
BuildRequires: desktop-file-utils |
36 |
BuildRequires: appstream-util |
37 |
BuildRequires: ImageMagick |
38 |
|
39 |
Requires(post): rpm-helper >= %{rpmhelper_required_version} |
40 |
Requires(preun): rpm-helper >= %{rpmhelper_required_version} |
41 |
Requires(postun): rpm-helper >= %{rpmhelper_required_version} |
42 |
|
43 |
%description |
44 |
ckb-next is an open-source driver for Corsair keyboards and mice. It aims to |
45 |
bring the features of their proprietary CUE software to the Linux and Mac |
46 |
operating systems. This project is currently a work in progress, but it already |
47 |
supports much of the same functionality, including full RGB animations. |
48 |
|
49 |
%files |
50 |
%license LICENSE |
51 |
%doc CHANGELOG.md FIRMWARE README.md README.install.urpmi |
52 |
%{_bindir}/* |
53 |
%{_libexecdir}/%{name}-* |
54 |
%{_unitdir}/ckb-next-daemon.service |
55 |
%{_presetdir}/99-ckb-next.preset |
56 |
%{_datadir}/applications/ckb-next.desktop |
57 |
%{_datadir}/appdata/ckb-next.appdata.xml |
58 |
%{_iconsdir}/hicolor/*/apps/ckb-next.png |
59 |
%{_mandir}/man1/* |
60 |
%{_udevrulesdir}/*.rules |
61 |
%{_libdir}/cmake/ckb-next |
62 |
|
63 |
%prep |
64 |
%setup -q |
65 |
%autopatch -p1 |
66 |
|
67 |
%build |
68 |
# We force systemd since autodetection fail inside the buildsystem |
69 |
%cmake -DCMAKE_BUILD_TYPE=Release \ |
70 |
-DFORCE_INIT_SYSTEM=systemd \ |
71 |
-DSAFE_INSTALL=OFF \ |
72 |
-DSAFE_UNINSTALL=OFF \ |
73 |
-DCMAKE_INSTALL_PREFIX=%{_prefix} \ |
74 |
-DCMAKE_INSTALL_LIBEXECDIR=%{_libexecdir} \ |
75 |
-DDISABLE_UPDATER=1 \ |
76 |
-DUDEV_RULE_DIRECTORY=%{_udevrulesdir} |
77 |
|
78 |
%cmake_build |
79 |
|
80 |
%install |
81 |
%cmake_install |
82 |
|
83 |
%__install -Dpm 0644 %{SOURCE1} %{buildroot}%{_datadir}/appdata/ckb-next.appdata.xml |
84 |
%__install -Dpm 0644 %{SOURCE2} %{buildroot}%{_mandir}/man1/ckb-next.1 |
85 |
%__install -Dpm 0644 %{SOURCE3} %{buildroot}/%{_presetdir}/99-ckb-next.preset |
86 |
%__install -Dpm 0644 %{SOURCE4} README.install.urpmi |
87 |
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/ckb-next.appdata.xml |
88 |
|
89 |
%post |
90 |
%_post_service %{name}-daemon |
91 |
|
92 |
%preun |
93 |
%_preun_service %{name}-daemon |
94 |
|
95 |
%postun |
96 |
%systemd_postun_with_restart %{name}-daemon |