# Generated by rust2rpm %bcond_without check # Not interested in packaging lib # stratisd is supposed to be daemon used through dbus %global __cargo_is_lib() false Name: stratisd Version: 1.0.3 Release: 1%{?dist} Summary: Daemon that manages block devices to create filesystems License: MPLv2.0 URL: https://github.com/stratis-storage/stratisd Source: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz ExclusiveArch: %{rust_arches} BuildRequires: rust-packaging BuildRequires: (crate(byteorder/default) >= 1.0.0 with crate(byteorder/default) < 2.0.0) BuildRequires: (crate(chrono/default) >= 0.4.0 with crate(chrono/default) < 0.5.0) BuildRequires: (crate(clap/default) >= 2.0.0 with crate(clap/default) < 3.0.0) BuildRequires: (crate(crc/default) >= 1.0.0 with crate(crc/default) < 2.0.0) BuildRequires: (crate(dbus/default) >= 0.6.4 with crate(dbus/default) < 0.7.0) BuildRequires: (crate(devicemapper/default) >= 0.26.0 with crate(devicemapper/default) < 0.27.0) BuildRequires: (crate(env_logger/default) >= 0.5.0 with crate(env_logger/default) < 0.6.0) BuildRequires: (crate(error-chain/default) >= 0.12.0 with crate(error-chain/default) < 0.13.0) BuildRequires: (crate(lazy_static/default) >= 1.0.0 with crate(lazy_static/default) < 2.0.0) BuildRequires: (crate(libc/default) >= 0.2.36 with crate(libc/default) < 0.3.0) BuildRequires: (crate(libmount/default) >= 0.1.10 with crate(libmount/default) < 0.2.0) BuildRequires: (crate(libudev/default) >= 0.2.0 with crate(libudev/default) < 0.3.0) BuildRequires: (crate(log/default) >= 0.4.0 with crate(log/default) < 0.5.0) BuildRequires: (crate(nix/default) >= 0.13.0 with crate(nix/default) < 0.14.0) BuildRequires: (crate(rand/default) >= 0.4.0 with crate(rand/default) < 0.5.0) BuildRequires: (crate(serde/default) >= 1.0.0 with crate(serde/default) < 2.0.0) BuildRequires: (crate(serde_derive/default) >= 1.0.0 with crate(serde_derive/default) < 2.0.0) BuildRequires: (crate(serde_json/default) >= 1.0.0 with crate(serde_json/default) < 2.0.0) BuildRequires: (crate(tempfile/default) >= 3.0.1 with crate(tempfile/default) < 4.0.0) BuildRequires: (crate(timerfd/default) >= 1.0.0 with crate(timerfd/default) < 2.0.0) BuildRequires: (crate(uuid/default) >= 0.7.0 with crate(uuid/default) < 0.8.0) BuildRequires: (crate(uuid/serde) >= 0.7.0 with crate(uuid/serde) < 0.8.0) BuildRequires: (crate(uuid/v4) >= 0.7.0 with crate(uuid/v4) < 0.8.0) %if %{with check} BuildRequires: (crate(either/default) >= 1.1.0 with crate(either/default) < 2.0.0) BuildRequires: (crate(loopdev/default) >= 0.2.0 with crate(loopdev/default) < 0.3.0) BuildRequires: (crate(matches/default) >= 0.1.8 with crate(matches/default) < 0.2.0) BuildRequires: (crate(proptest/default) >= 0.8.0 with crate(proptest/default) < 0.9.0) %endif BuildRequires: %{_bindir}/a2x BuildRequires: systemd %{?systemd_requires} Requires: xfsprogs Requires: device-mapper-persistent-data %description %{summary}. %prep %autosetup -p1 sed -i -e 's/nix = "0.11"/nix = "0.13"/' Cargo.toml %cargo_prep %build %cargo_build %cargo_build -n a2x -f manpage docs/stratisd.txt %install %cargo_install # Daemon should be really private mkdir -p %{buildroot}%{_libexecdir} mv %{buildroot}%{_bindir}/stratisd %{buildroot}%{_libexecdir}/stratisd %cargo_install -n # Init version should be in sbin mkdir -p %{buildroot}%{_sbindir} mv %{buildroot}%{_bindir}/stratisd %{buildroot}%{_sbindir}/stratisd-init %{__install} -Dpm0644 -t %{buildroot}%{_datadir}/dbus-1/system.d stratisd.conf %{__install} -Dpm0644 -t %{buildroot}%{_mandir}/man8 docs/stratisd.8 %{__install} -Dpm0644 -t %{buildroot}%{_unitdir} stratisd.service %if %{with check} %check %cargo_test -- -- --skip real_ --skip loop_ --skip travis_ %endif %post %systemd_post stratisd.service %preun %systemd_preun stratisd.service %postun %systemd_postun_with_restart stratisd.service %files %license LICENSE %doc README.md %{_libexecdir}/stratisd %{_sbindir}/stratisd-init %dir %{_datadir}/dbus-1 %{_datadir}/dbus-1/system.d/stratisd.conf %{_mandir}/man8/stratisd.8* %{_unitdir}/stratisd.service %changelog * Wed Mar 06 2019 Igor Gnatenko - 1.0.3-1 - Update to 1.0.3 * Wed Dec 12 2018 Igor Gnatenko - 1.0.2-1 - Update to 1.0.2 * Fri Nov 02 2018 Igor Gnatenko - 1.0.1-1 - Update to 1.0.1 * Thu Sep 27 2018 Igor Gnatenko - 1.0.0-1 - Initial package