ssh-key-dir/rust-ssh-key-dir.spec
2022-11-11 09:13:52 +08:00

87 lines
2.0 KiB
RPMSpec

%define debug_package %{nil}
%bcond_without check
%global __cargo_skip_build 0
%global crate ssh-key-dir
Name: rust-%{crate}
Version: 0.1.4
Release: 1
Summary: sshd AuthorizedKeysCommand to read ~/.ssh/authorized_keys.d
License: ASL 2.0
URL: https://crates.io/crates/ssh-key-dir
Source: %{crate}-%{version}.crate
Source1: https://github.com/coreos/%{crate}/releases/download/v%{version}/%{crate}-%{version}-vendor.tar.gz
BuildRequires: rust-packaging >= 21
%global _description %{expand:
sshd AuthorizedKeysCommand to read key files from ~/.ssh/authorized_keys.d.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
License: ASL 2.0 and MIT
Requires: openssh-server
Requires(post): openssh-server
Requires(post): systemd
Requires(postun): openssh-server
Requires(postun): systemd
%description -n %{crate} %{_description}
%files -n %{crate}
%{_libexecdir}/ssh-key-dir
%config(noreplace) %{_sysconfdir}/ssh/sshd_config.d/40-ssh-key-dir.conf
%doc README.md
%license LICENSE
%post -n %{crate}
/usr/bin/systemctl try-reload-or-restart sshd.service
%postun -n %{crate}
if [ $1 == 0 ] ; then
/usr/bin/systemctl try-reload-or-restart sshd.service
fi
%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep
tar xvf %{SOURCE1}
mkdir -p .cargo
cat >.cargo/config << EOF
[source.crates-io]
replace-with = "vendored-sources"
[source.vendored-sources]
directory = "vendor"
EOF
%build
%cargo_build
%install
%cargo_install
mkdir -p %{buildroot}%{_libexecdir}
mv %{_builddir}/ssh-key-dir-0.1.4/.cargo/bin/ssh-key-dir %{buildroot}%{_libexecdir}
install -Dpm0644 -t %{buildroot}%{_sysconfdir}/ssh/sshd_config.d conf/40-ssh-key-dir.conf
%if %{with check}
%check
%cargo_test
%endif
%changelog
* Tue Nov 08 2022 duyiwei <duyiwei@kylinos.cn> - 0.1.4-1
- upgrade version to 0.1.4
* Tue Jun 07 2022 duyiwei <duyiwei@kylinos.cn> - 0.1.3-1
- upgrade to 0.1.3
* Wed Jan 26 2022 duyiwei <duyiwei@kylinos.cn> - 0.1.2-1
- Package init