15
0
forked from pool/python-fvs
Files
python-fvs/python-fvs.spec

85 lines
2.8 KiB
RPMSpec
Raw Normal View History

#
# spec file for package python-fvs
#
# Copyright (c) 2022 SUSE LLC
#
# 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 skip_python2 1
# FVS requires Python 3.9 or higher
%define skip_python37 1
%define skip_python38 1
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-fvs
Version: 0.3.4
Release: 0
Summary: File Versioning System with hash comparison
License: MIT
URL: https://github.com/mirkobrombin/FVS
Source0: https://github.com/mirkobrombin/FVS/archive/%{version}/FVS-%{version}.tar.gz
BuildRequires: %{python_module orjson}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module wheel}
BuildRequires: python-rpm-macros
BuildRequires: fdupes
Requires: python-orjson
Requires(post): update-alternatives
Requires(postun):update-alternatives
BuildArch: noarch
%python_subpackages
%description
File Versioning System with hash comparison and data storage to create unlinked states that can be deleted
Why FVS?
The main reason for this project is for the purpose of personal knowledge and understanding of the versioning system. The second reason is to make a simple and easy-to-implement versioning system for Bottles.
There are plenty of other versioning systems out there, but all of these provide features that I wouldn't need in my projects.
The purpose of FVS is to always remain as clear and simple as possible, providing only the functionality of organizing file versions into states,
ie recovery points that take advantage of deduplication to minimize space consumption
%prep
%setup -q -n FVS-%{version}
%build
# Remove export CFLAGS=... for noarch packages (unneeded)
# export CFLAGS="%{optflags}"
# %python_build
%pyproject_wheel
%install
# %python_install
%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/fvs
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%python_expand $python setup.py test
%post
%python_install_alternative fvs
%postun
%python_uninstall_alternative fvs
%files %{python_files}
%license LICENSE
%doc README.md
# For noarch packages: sitelib
%{python_sitelib}/*
%python_alternative %{_bindir}/fvs
%changelog