diff --git a/rpm/python-ramalama.spec b/rpm/python-ramalama.spec index 15d94c5b..487d4a7b 100644 --- a/rpm/python-ramalama.spec +++ b/rpm/python-ramalama.spec @@ -1,51 +1,46 @@ -%global debug_package %{nil} - %global pypi_name ramalama -%global forgeurl https://github.com/containers/%{pypi_name} +%global forgeurl https://github.com/containers/%{pypi_name} # see ramalama/version.py -%global version0 0.2.0 +%global version0 0.2.0 %forgemeta -%global desc RamaLama is a command line tool for working with AI LLM models. +%global summary RamaLama is a command line tool for working with AI LLM models %global _python_dist_allow_version_zero 1 -Name: python-%{pypi_name} +Name: python-%{pypi_name} # DO NOT TOUCH the Version string! # The TRUE source of this specfile is: # https://github.com/containers/ramalama/blob/main/rpm/python-ramalama.spec # If that's what you're reading, Version must be 0, and will be updated by Packit for # copr and koji builds. # If you're reading this on dist-git, the version is automatically filled in by Packit. -Version: 0 -License: MIT -Release: %autorelease -Summary: RESTful API for RamaLama -URL: %{forgeurl} +Version: 0 +License: MIT +Release: %{autorelease} +Summary: %{summary} +URL: %{forgeurl} # Tarball fetched from upstream -Source0: %{forgesource} -BuildArch: noarch - -BuildRequires: git-core -BuildRequires: golang -BuildRequires: golang-github-cpuguy83-md2man -BuildRequires: make -BuildRequires: pyproject-rpm-macros - -BuildRequires: python%{python3_pkgversion}-argcomplete -BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: python%{python3_pkgversion}-pip -BuildRequires: python%{python3_pkgversion}-setuptools -BuildRequires: python%{python3_pkgversion}-wheel +Source: %{forgesource} +BuildArch: noarch + +BuildRequires: git-core +BuildRequires: golang +BuildRequires: go-md2man +BuildRequires: make +BuildRequires: pyproject-rpm-macros + +BuildRequires: python%{python3_pkgversion}-argcomplete +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-pip +BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: python%{python3_pkgversion}-wheel %if 0%{?fedora} >= 40 -BuildRequires: python%{python3_pkgversion}-tqdm +BuildRequires: python%{python3_pkgversion}-tqdm %endif -Requires: python%{python3_pkgversion}-argcomplete - - %description -%desc +%summary On first run RamaLama inspects your system for GPU support, falling back to CPU support if no GPUs are present. It then uses container engines like Podman to @@ -58,37 +53,52 @@ will run the AI Models within a container based on the OCI image. Requires: podman %if 0%{?fedora} >= 40 Requires: python%{python3_pkgversion}-tqdm +# Needed as seen by BZ: 2327515 +Requires: python%{python3_pkgversion}-omlmd %else Recommends: python%{python3_pkgversion}-tqdm +Recommends: python%{python3_pkgversion}-omlmd %endif Summary: %{summary} Provides: %{pypi_name} = %{version}-%{release} -%{?python_provide:%python_provide python%{python3_pkgversion}-%{pypi_name}} %description -n python%{python3_pkgversion}-%{pypi_name} -%desc +%summary + +On first run RamaLama inspects your system for GPU support, falling back to CPU +support if no GPUs are present. It then uses container engines like Podman to +pull the appropriate OCI image with all of the software necessary to run an +AI Model for your systems setup. This eliminates the need for the user to +configure the system for AI themselves. After the initialization, RamaLama +will run the AI Models within a container based on the OCI image. + + +%if 0%{?fedora} >= 40 +%generate_buildrequires +%pyproject_buildrequires +%endif %prep -%forgesetup +%forgeautosetup -p1 %build %pyproject_wheel %install %pyproject_install -%pyproject_save_files %{pypi_name} +%pyproject_save_files -l %{pypi_name} %{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install-docs install-shortnames %{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install-completions -%files -n python%{python3_pkgversion}-%{pypi_name} -%license LICENSE +%check +%pyproject_check_import + +%files -n python%{python3_pkgversion}-%{pypi_name} -f %{pyproject_files} %doc README.md %{_bindir}/%{pypi_name} %{bash_completions_dir}/%{pypi_name} %{_datadir}/fish/vendor_completions.d/ramalama.fish %{_datadir}/zsh/vendor-completions/_ramalama -%{python3_sitelib}/%{pypi_name} -%{python3_sitelib}/%{pypi_name}-%{version}.dist-info %dir %{_datadir}/%{pypi_name} %{_datadir}/%{pypi_name}/shortnames.conf %{_datadir}/%{pypi_name}/ramalama.conf