ksigner/ksigner.spec.in

75 lines
2.1 KiB
RPMSpec

Name: ksigner
Version: @VERSION@
Release: @RELEASE@%{?dist}
Summary: Secure Boot kernel signing utility
License: MIT
URL: https://git.radon.win/radon/ksigner
Source0: %{name}-%{version}.tar.gz
BuildArch: noarch
Requires: openssl
Requires: mokutil
Requires: sbsigntools
Requires: hmaccalc
Requires: sudo
Requires: bash >= 4.0
Requires: dnf5
Requires: libdnf5-plugin-actions
%description
A utility for signing Linux kernels with custom keys for Secure Boot.
Supports signing individual kernels or all kernels.
%prep
%setup -q
%build
# Nothing to build
%install
# Create directories
install -d %{buildroot}%{_bindir}
install -d %{buildroot}%{_sysconfdir}/ksigner
install -d %{buildroot}%{_unitdir}
install -d %{buildroot}%{_sysconfdir}/kernel/postinst.d
install -d %{buildroot}%{_mandir}/man8
install -d %{buildroot}%{_sysconfdir}/dnf/libdnf5-plugins/actions.d
# Install main script
install -m 755 ksigner %{buildroot}%{_bindir}/ksigner
# Install configuration file
install -m 644 ksigner.conf %{buildroot}%{_sysconfdir}/ksigner/ksigner.conf
# Install man page
install -m 644 ksigner.8 %{buildroot}%{_mandir}/man8/ksigner.8
# Install dnf5 plugin
install -m 755 ksigner.actions %{buildroot}%{_sysconfdir}/dnf/libdnf5-plugins/actions.d/ksigner.actions
%post
echo "==========================================="
echo "Kernel Signer has been installed."
echo "To set up kernel signing:"
echo " 1. Run: sudo ksigner setup"
echo " 2. Reboot your system"
echo " 3. In MOK Manager: Enroll MOK Continue Yes Enter password"
echo "==========================================="
%files
%license LICENSE
%doc README.md
%{_bindir}/ksigner
%config(noreplace) %{_sysconfdir}/ksigner/ksigner.conf
%{_mandir}/man8/ksigner.8*
%{_sysconfdir}/dnf/libdnf5-plugins/actions.d/ksigner.actions
%changelog
* Wed Sep 24 2025 RadioactivePb <radioactivepb@gmail.com> - 0.2.0-1
- Added libdnf5 actions plugin for automatic kernel signing
* Tue Sep 23 2025 RadioactivePb <radioactivepb@gmail.com> - 0.1.1-1
- Initial RPM release
- Added configuration file support