Blame 2ping.spec

Bernhard M. Wiedemann be00ad
#
Bernhard M. Wiedemann be00ad
# spec file for package 2ping
Bernhard M. Wiedemann be00ad
#
56ee7f
# Copyright (c) 2023 SUSE LLC
Bernhard M. Wiedemann be00ad
#
Bernhard M. Wiedemann be00ad
# All modifications and additions to the file contributed by third parties
Bernhard M. Wiedemann be00ad
# remain the property of their copyright owners, unless otherwise agreed
Bernhard M. Wiedemann be00ad
# upon. The license for this file, and modifications and additions to the
Bernhard M. Wiedemann be00ad
# file, is the same license as for the pristine package itself (unless the
Bernhard M. Wiedemann be00ad
# license for the pristine package is not an Open Source License, in which
Bernhard M. Wiedemann be00ad
# case the license is the MIT License). An "Open Source License" is a
Bernhard M. Wiedemann be00ad
# license that conforms to the Open Source Definition (Version 1.9)
Bernhard M. Wiedemann be00ad
# published by the Open Source Initiative.
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
# Please submit bugfixes or comments via https://bugs.opensuse.org/
Bernhard M. Wiedemann be00ad
#
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
Name:           2ping
f5c8f2
Version:        4.5.1
Bernhard M. Wiedemann be00ad
Release:        0
Bernhard M. Wiedemann be00ad
Summary:        Bi-directional ping utility
Bernhard M. Wiedemann be00ad
License:        GPL-2.0-or-later
Bernhard M. Wiedemann 6f72b0
URL:            https://www.finnie.org/software/2ping/
f5c8f2
Source0:        https://www.finnie.org/software/2ping/%{name}-%{version}.tar.gz
f5c8f2
Source1:        https://www.finnie.org/software/2ping/%{name}-%{version}.tar.gz.asc
Bernhard M. Wiedemann be00ad
Source2:        %{name}.keyring
327033
Patch0:         harden_2ping.service.patch
Bernhard M. Wiedemann be00ad
BuildRequires:  fdupes
56ee7f
BuildRequires:  python-rpm-macros
f5c8f2
BuildRequires:  python3-devel >= 3.6
ef82ed
BuildRequires:  python3-distro
ef82ed
BuildRequires:  python3-dnspython
ef82ed
BuildRequires:  python3-netifaces
ef82ed
BuildRequires:  python3-pycryptodomex
ef82ed
BuildRequires:  python3-pytest
ef82ed
BuildRequires:  python3-setuptools
Bernhard M. Wiedemann 6f72b0
BuildRequires:  systemd-rpm-macros
4a85ed
Requires:       python3 >= 3.6
Bernhard M. Wiedemann 6f72b0
Recommends:     python3-distro
Bernhard M. Wiedemann 6f72b0
Recommends:     python3-dnspython
Bernhard M. Wiedemann 6f72b0
Recommends:     python3-netifaces
Bernhard M. Wiedemann 6f72b0
Recommends:     python3-pycryptodomex
Bernhard M. Wiedemann be00ad
BuildArch:      noarch
Bernhard M. Wiedemann 6f72b0
%{?systemd_requires}
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%description
Bernhard M. Wiedemann be00ad
2ping is a bi-directional ping utility. It uses 3-way pings (akin to TCP SYN,
Bernhard M. Wiedemann be00ad
SYN/ACK, ACK) and after-the-fact state comparison between a 2ping listener and
Bernhard M. Wiedemann be00ad
a 2ping client to determine which direction packet loss occurs.
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%prep
Bernhard M. Wiedemann 6f72b0
%autosetup
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%build
ef82ed
%python3_build
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%install
ef82ed
%python3_install
Bernhard M. Wiedemann 6f72b0
install -Dp -m 0644 2ping.service %{buildroot}%{_unitdir}/2ping.service
Bernhard M. Wiedemann 6f72b0
install -Dp -m 0644 doc/2ping.1 %{buildroot}%{_mandir}/man1/2ping.1
Bernhard M. Wiedemann 6f72b0
install -Dp -m 0644 doc/2ping.1 %{buildroot}%{_mandir}/man1/2ping6.1
Bernhard M. Wiedemann 6f72b0
Bernhard M. Wiedemann 6f72b0
mkdir -p %{buildroot}%{_sbindir}
Bernhard M. Wiedemann 6f72b0
ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc2ping
Bernhard M. Wiedemann be00ad
56ee7f
# Fix python shebangs
56ee7f
%python3_fix_shebang
56ee7f
Bernhard M. Wiedemann be00ad
# create symlinks for man pages
Bernhard M. Wiedemann 6f72b0
%fdupes -s %{buildroot}%{_mandir}
Bernhard M. Wiedemann be00ad
# create hardlinks for the rest
Bernhard M. Wiedemann 6f72b0
%fdupes %{buildroot}%{_prefix}
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%check
f5c8f2
py.test -v
Bernhard M. Wiedemann 6f72b0
Bernhard M. Wiedemann 6f72b0
%pre
Bernhard M. Wiedemann 6f72b0
%service_add_pre 2ping.service
Bernhard M. Wiedemann 6f72b0
Bernhard M. Wiedemann 6f72b0
%post
Bernhard M. Wiedemann 6f72b0
%service_add_post 2ping.service
Bernhard M. Wiedemann 6f72b0
Bernhard M. Wiedemann 6f72b0
%preun
Bernhard M. Wiedemann 6f72b0
%service_del_preun 2ping.service
Bernhard M. Wiedemann 6f72b0
Bernhard M. Wiedemann 6f72b0
%postun
Bernhard M. Wiedemann 6f72b0
%service_del_postun 2ping.service
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%files
f5c8f2
%license COPYING.md
f5c8f2
%doc ChangeLog.md README.md
Bernhard M. Wiedemann 6f72b0
%{_bindir}/%{name}
Bernhard M. Wiedemann 6f72b0
%{_bindir}/%{name}6
Bernhard M. Wiedemann 6f72b0
%{_mandir}/man1/%{name}.1%{?ext_man}
Bernhard M. Wiedemann 6f72b0
%{_mandir}/man1/%{name}6.1%{?ext_man}
Bernhard M. Wiedemann 6f72b0
%{_sbindir}/rc%{name}
Bernhard M. Wiedemann 6f72b0
%{_unitdir}/2ping.service
Bernhard M. Wiedemann be00ad
%{python3_sitelib}/*
Bernhard M. Wiedemann be00ad
Bernhard M. Wiedemann be00ad
%changelog