mirror of
https://github.com/caronc/apprise.git
synced 2024-12-01 20:44:12 +01:00
269 lines
8.7 KiB
RPMSpec
269 lines
8.7 KiB
RPMSpec
|
# Copyright (C) 2019 Chris Caron <lead2gold@gmail.com>
|
||
|
# All rights reserved.
|
||
|
#
|
||
|
# This code is licensed under the MIT License.
|
||
|
#
|
||
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||
|
# of this software and associated documentation files(the "Software"), to deal
|
||
|
# in the Software without restriction, including without limitation the rights
|
||
|
# to use, copy, modify, merge, publish, distribute, sublicense, and / or sell
|
||
|
# copies of the Software, and to permit persons to whom the Software is
|
||
|
# furnished to do so, subject to the following conditions :
|
||
|
#
|
||
|
# The above copyright notice and this permission notice shall be included in
|
||
|
# all copies or substantial portions of the Software.
|
||
|
#
|
||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.IN NO EVENT SHALL THE
|
||
|
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||
|
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||
|
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||
|
# THE SOFTWARE.
|
||
|
###############################################################################
|
||
|
%global with_python2 1
|
||
|
%global with_python3 1
|
||
|
|
||
|
%if 0%{?fedora} || 0%{?rhel} >= 8
|
||
|
# Python v2 Support dropped
|
||
|
%global with_python2 0
|
||
|
%endif # fedora and/or rhel7
|
||
|
|
||
|
%if 0%{?_module_build}
|
||
|
%bcond_with tests
|
||
|
%else
|
||
|
# When bootstrapping Python, we cannot test this yet
|
||
|
%bcond_without tests
|
||
|
%endif # module_build
|
||
|
|
||
|
%if 0%{?rhel} && 0%{?rhel} <= 7
|
||
|
%global with_python3 0
|
||
|
%endif # using rhel7
|
||
|
|
||
|
Name: python-apprise
|
||
|
Version: 0.7.4
|
||
|
Release: 1%{?dist}
|
||
|
Summary: A simple wrapper to many popular notification services used today
|
||
|
License: MIT
|
||
|
URL: https://github.com/caronc/apprise
|
||
|
Source0: %{url}/archive/v%{version}/apprise-%{version}.tar.gz
|
||
|
# A simple man page to help with rpmlint. Future versions of apprise would not
|
||
|
# require this entry as it will be part of the distribution going forward.
|
||
|
# this man page was added as part of the Fedora review process
|
||
|
Source1: apprise.1
|
||
|
# this patch allows version of requests that ships with RHEL v7 to
|
||
|
# correctly handle test coverage. It also removes reference to a
|
||
|
# extra check not supported in py.test in EPEL7 builds
|
||
|
Patch0: apprise-rhel7-support.patch
|
||
|
# This patch was discovered during a public review made on this package
|
||
|
# with the fedora packaging team. Rather then spin a new release, this
|
||
|
# patch will allow the cli she-bang details to be set correctly; they should
|
||
|
# hae never been hardcoded in the first place. This will be removed in
|
||
|
# the next release
|
||
|
Patch1: apprise-remove-shebang-on-cli.patch
|
||
|
BuildArch: noarch
|
||
|
|
||
|
%description
|
||
|
Apprise is a Python package for simplifying access to all of the different
|
||
|
notification services that are out there. Apprise opens the door and makes
|
||
|
it easy to access:
|
||
|
|
||
|
Boxcar, Discord, E-Mail, Emby, Faast, Growl, IFTTT, Join, KODI, MatterMost,
|
||
|
Matrix, Notify My Android, Prowl, Pushalot, PushBullet, Pushjet, Pushover,
|
||
|
Rocket.Chat, Slack, Super Toasty, Stride, Telegram, Twitter, XBMC
|
||
|
|
||
|
%if 0%{?with_python2}
|
||
|
%package -n python2-apprise
|
||
|
Summary: A simple wrapper to many popular notification services used today
|
||
|
%{?python_provide:%python_provide python2-apprise}
|
||
|
|
||
|
BuildRequires: python2-devel
|
||
|
BuildRequires: python-decorator
|
||
|
BuildRequires: python-requests
|
||
|
BuildRequires: python2-requests-oauthlib
|
||
|
BuildRequires: python2-oauthlib
|
||
|
BuildRequires: python-six
|
||
|
BuildRequires: python2-click >= 5.0
|
||
|
BuildRequires: python-markdown
|
||
|
%if 0%{?rhel} && 0%{?rhel} <= 7
|
||
|
BuildRequires: python-yaml
|
||
|
%else
|
||
|
BuildRequires: python2-yaml
|
||
|
%endif # using rhel7
|
||
|
|
||
|
Requires: python-decorator
|
||
|
Requires: python-requests
|
||
|
Requires: python2-requests-oauthlib
|
||
|
Requires: python2-oauthlib
|
||
|
Requires: python-six
|
||
|
Requires: python-markdown
|
||
|
%if 0%{?rhel} && 0%{?rhel} <= 7
|
||
|
BuildRequires: python-yaml
|
||
|
%else
|
||
|
Requires: python2-yaml
|
||
|
%endif # using rhel7
|
||
|
|
||
|
%if %{with tests}
|
||
|
BuildRequires: python-mock
|
||
|
BuildRequires: python2-pytest-runner
|
||
|
BuildRequires: python2-pytest
|
||
|
|
||
|
%endif # with_tests
|
||
|
|
||
|
%description -n python2-apprise
|
||
|
Apprise is a Python package for simplifying access to all of the different
|
||
|
notification services that are out there. Apprise opens the door and makes
|
||
|
it easy to access:
|
||
|
|
||
|
Boxcar, Discord, E-Mail, Emby, Faast, Growl, IFTTT, Join, KODI, MatterMost,
|
||
|
Matrix, Notify My Android, Prowl, Pushalot, PushBullet, Pushjet, Pushover,
|
||
|
Rocket.Chat, Slack, Super Toasty, Stride, Telegram, Twitter, XBMC
|
||
|
%endif # with_python2
|
||
|
|
||
|
%package -n apprise
|
||
|
Summary: Apprise CLI Tool
|
||
|
|
||
|
%if 0%{?with_python3}
|
||
|
Requires: python%{python3_pkgversion}-click >= 5.0
|
||
|
Requires: python%{python3_pkgversion}-apprise = %{version}-%{release}
|
||
|
%endif # with_python3
|
||
|
|
||
|
%if 0%{?with_python2}
|
||
|
Requires: python2-click >= 5.0
|
||
|
Requires: python2-apprise = %{version}-%{release}
|
||
|
%endif # with_python2
|
||
|
|
||
|
%description -n apprise
|
||
|
An accompanied CLI tool that can be used as part of Apprise
|
||
|
to issue notifications from the command line to you favorite
|
||
|
services.
|
||
|
|
||
|
%if 0%{?with_python3}
|
||
|
%package -n python%{python3_pkgversion}-apprise
|
||
|
Summary: A simple wrapper to many popular notification services used today
|
||
|
%{?python_provide:%python_provide python%{python3_pkgversion}-apprise}
|
||
|
|
||
|
BuildRequires: python%{python3_pkgversion}-devel
|
||
|
BuildRequires: python%{python3_pkgversion}-decorator
|
||
|
BuildRequires: python%{python3_pkgversion}-requests
|
||
|
BuildRequires: python%{python3_pkgversion}-requests-oauthlib
|
||
|
BuildRequires: python%{python3_pkgversion}-oauthlib
|
||
|
BuildRequires: python%{python3_pkgversion}-six
|
||
|
BuildRequires: python%{python3_pkgversion}-click >= 5.0
|
||
|
BuildRequires: python%{python3_pkgversion}-markdown
|
||
|
BuildRequires: python%{python3_pkgversion}-yaml
|
||
|
Requires: python%{python3_pkgversion}-decorator
|
||
|
Requires: python%{python3_pkgversion}-requests
|
||
|
Requires: python%{python3_pkgversion}-requests-oauthlib
|
||
|
Requires: python%{python3_pkgversion}-oauthlib
|
||
|
Requires: python%{python3_pkgversion}-six
|
||
|
Requires: python%{python3_pkgversion}-markdown
|
||
|
Requires: python%{python3_pkgversion}-yaml
|
||
|
|
||
|
%if %{with tests}
|
||
|
BuildRequires: python%{python3_pkgversion}-mock
|
||
|
BuildRequires: python%{python3_pkgversion}-pytest
|
||
|
BuildRequires: python%{python3_pkgversion}-pytest-runner
|
||
|
%endif # with_tests
|
||
|
|
||
|
%description -n python%{python3_pkgversion}-apprise
|
||
|
Apprise is a Python package for simplifying access to all of the different
|
||
|
notification services that are out there. Apprise opens the door and makes
|
||
|
it easy to access:
|
||
|
|
||
|
Boxcar, Discord, E-Mail, Emby, Faast, Growl, IFTTT, Join, KODI, MatterMost,
|
||
|
Matrix, Notify My Android, Prowl, Pushalot, PushBullet, Pushjet, Pushover,
|
||
|
Rocket.Chat, Slack, Super Toasty, Stride, Telegram, Twitter, XBMC
|
||
|
%endif # with_python3
|
||
|
|
||
|
%prep
|
||
|
%setup -q -n apprise-%{version}
|
||
|
%if 0%{?rhel} && 0%{?rhel} <= 7
|
||
|
# rhel7 older package work-arounds
|
||
|
%patch0 -p1
|
||
|
%endif # using rhel7
|
||
|
# Remove shebang
|
||
|
%patch1 -p1
|
||
|
|
||
|
%build
|
||
|
%if 0%{?with_python2}
|
||
|
%py2_build
|
||
|
%endif # with_python2
|
||
|
%if 0%{?with_python3}
|
||
|
%py3_build
|
||
|
%endif # with_python3
|
||
|
|
||
|
%install
|
||
|
%if 0%{?with_python2}
|
||
|
%py2_install
|
||
|
%endif # with_python2
|
||
|
%if 0%{?with_python3}
|
||
|
%py3_install
|
||
|
%endif # with_python3
|
||
|
|
||
|
# Install man page
|
||
|
# Future versions will look like this:
|
||
|
# install -p -D -T -m 0644 packages/man/apprise.1 \
|
||
|
# %{buildroot}%{_mandir}/man1/apprise.1
|
||
|
#
|
||
|
# For now:
|
||
|
install -p -D -T -m 0644 %{SOURCE1} \
|
||
|
%{buildroot}%{_mandir}/man1/apprise.1
|
||
|
|
||
|
%if %{with tests}
|
||
|
%check
|
||
|
%if 0%{?with_python2}
|
||
|
LANG=C.UTF-8 PYTHONPATH=%{buildroot}%{python2_sitelib} py.test
|
||
|
%endif # with_python2
|
||
|
%if 0%{?with_python3}
|
||
|
LANG=C.UTF-8 PYTHONPATH=%{buildroot}%{python3_sitelib} py.test-%{python3_version}
|
||
|
%endif # with_python3
|
||
|
%endif # with_tests
|
||
|
|
||
|
%if 0%{?with_python2}
|
||
|
%files -n python2-apprise
|
||
|
%license LICENSE
|
||
|
%doc README.md
|
||
|
%{python2_sitelib}/apprise
|
||
|
%exclude %{python2_sitelib}/apprise/cli.*
|
||
|
%{python2_sitelib}/*.egg-info
|
||
|
%endif # with_python2
|
||
|
|
||
|
%if 0%{?with_python3}
|
||
|
%files -n python%{python3_pkgversion}-apprise
|
||
|
%license LICENSE
|
||
|
%doc README.md
|
||
|
%{python3_sitelib}/apprise
|
||
|
%exclude %{python3_sitelib}/apprise/cli.*
|
||
|
%{python3_sitelib}/*.egg-info
|
||
|
%endif # with_python3
|
||
|
|
||
|
%files -n apprise
|
||
|
%{_bindir}/apprise
|
||
|
%{_mandir}/man1/apprise.1*
|
||
|
|
||
|
%if 0%{?with_python3}
|
||
|
%{python3_sitelib}/apprise/cli.*
|
||
|
%endif # with_python3
|
||
|
|
||
|
%if 0%{?with_python2}
|
||
|
%{python2_sitelib}/apprise/cli.*
|
||
|
%endif # with_python2
|
||
|
|
||
|
%changelog
|
||
|
* Sun Mar 10 2019 Chris Caron <lead2gold@gmail.com> - 0.7.4-1
|
||
|
- Updated to v0.7.4
|
||
|
- Fedora review process added a man page, spec restructuring and 2 patch files
|
||
|
to accomodate some valid points brought forth. These have already been pused
|
||
|
upstream and will be removed on the next version.
|
||
|
|
||
|
* Fri Feb 22 2019 Chris Caron <lead2gold@gmail.com> - 0.7.3-1
|
||
|
- Updated to v0.7.3
|
||
|
- Added Python 3 build support
|
||
|
|
||
|
* Sun Sep 9 2018 Chris Caron <lead2gold@gmail.com> - 0.5.0-1
|
||
|
- Updated to v0.5.0
|
||
|
|
||
|
* Sun Mar 11 2018 Chris Caron <lead2gold@gmail.com> - 0.0.8-1
|
||
|
- Initial Release
|