SHA256
1
0
forked from pool/mygnuhealth
mygnuhealth/mygnuhealth.spec

124 lines
3.9 KiB
RPMSpec

#
# spec file for package mygnuhealth
#
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2020-2023 Dr. Axel Braun
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define modname MyGNUHealth
%define majorver 2
#boo#1181905
%global __requires_exclude qmlimport\\((BloodPressure|FedLogin|GHBio|GHBol|GHPsycho|Glucose|LocalAccountManager|MoodEnergy|NetworkSettings|Osat|ProfileSettings|Weight|PoL|GHLifestyle|GHPhysicalActivity|GHNutrition|GHSleep|GHAbout)
Name: mygnuhealth
Version: %{majorver}.0.0
Release: 0
Summary: The personal health record for the GNU Health system
License: GPL-3.0-or-later
Group: Productivity/Office/Management
URL: http://health.gnu.org/
Source: https://ftp.gnu.org/gnu/health/mygnuhealth/%{name}-%{version}.tar.gz
Source1: https://ftp.gnu.org/gnu/health/mygnuhealth/%{name}-%{version}.tar.gz.sig
Source2: https://savannah.gnu.org/project/memberlist-gpgkeys.php?group=health&download=1#/%{name}.keyring
## Patch0: shebang.diff
## Patch1: doc_path.diff
# SECTION build
BuildRequires: fdupes
BuildRequires: python3-wheel
BuildRequires: python3-setuptools >= 61
BuildRequires: python3-pip
BuildRequires: update-desktop-files
BuildRequires: python-rpm-macros
# /SECTION
# SECTION test requirements
# there are no tests, but at least check that all the runtime requirements are available on build time
BuildRequires: python3-bcrypt
BuildRequires: python3-Kivy
BuildRequires: python3-pygal
BuildRequires: python3-tinydb
BuildRequires: python3-requests
BuildRequires: python3-CairoSVG
# DO NOT SUBMIT TO FACTORY UNTIL THIS IS PATCHED to tinycss2 or old obsolete tinycss is back
#BuildRequires: python3-tinycss
BuildRequires: python3-cssselect
Requires: python3-bcrypt
Requires: python3-Kivy
Requires: python3-pygal
Requires: python3-tinydb
Requires: python3-requests
Requires: python3-CairoSVG
Requires: python3-tinycss
Requires: python3-cssselect
# /SECTION
BuildArch: noarch
%description
The Personal Health Information Management System for Desktop and Mobile Devices
for the GNU Health ecosystem
%package -n %{name}-doc
Summary: Documentation files for MyGNUHealth
Group: Productivity/Office/Management
%description -n %{name}-doc
This package includes the documentation for MyGNUHealth Personal Health
Information Management System for Desktop and Mobile Devices
%prep
%autosetup -p1 -n %{name}
%build
%python3_pyproject_wheel
%install
%python3_pyproject_install
# remove shebang
sed -i '1{/env python/d}' %{buildroot}%{python3_sitelib}/mygnuhealth/*.py
# menu-entry
desktop-file-install --dir %{buildroot}%{_datadir}/applications org.gnuhealth.mygnuhealth.desktop
%suse_update_desktop_file org.gnuhealth.mygnuhealth
%fdupes %{buildroot}%{python3_sitelib}
# install and deduplicate doc
mkdir -p %{buildroot}%{_docdir}/%{name}-doc/
cp -r doc/* %{buildroot}%{_docdir}/%{name}-doc/
%fdupes %{buildroot}%{_docdir}
%post
#clean qml cache to avoid issues
rm -rf /home/*/.cache/mygnuhealth
%postun
#clean qml cache - housekeeping
rm -rf /home/*/.cache/mygnuhealth
%files
%attr(755,root,root) %{_bindir}/%{name}
%{_datadir}/applications/org.gnuhealth.mygnuhealth.desktop
%license COPYRIGHT LICENSE
%{python3_sitelib}/mygnuhealth
%{python3_sitelib}/mygnuhealth-%{version}.dist-info
%files -n %{name}-doc
%doc README.rst
%{_docdir}/*
%changelog