%global __brp_check_rpaths %{nil} %global __requires_exclude ^libmpi %global packname GitAI %global packver 0.1.1 %global rlibdir /usr/local/lib/R/library Name: R-CRAN-%{packname} Version: 0.1.1 Release: 1%{?dist}%{?buildtag} Summary: Extracts Knowledge from 'Git' Repositories License: MIT + file LICENSE URL: https://cran.r-project.org/package=%{packname} Source0: %{url}&version=%{packver}#/%{packname}_%{packver}.tar.gz BuildRequires: R-devel >= 4.1.0 Requires: R-core >= 4.1.0 BuildArch: noarch BuildRequires: R-CRAN-cli >= 3.4.0 BuildRequires: R-CRAN-GitStats >= 2.2.0 BuildRequires: R-CRAN-ellmer BuildRequires: R-CRAN-httr2 BuildRequires: R-CRAN-lubridate BuildRequires: R-CRAN-R6 BuildRequires: R-CRAN-S7 BuildRequires: R-CRAN-dplyr BuildRequires: R-CRAN-purrr BuildRequires: R-CRAN-rlang BuildRequires: R-CRAN-glue Requires: R-CRAN-cli >= 3.4.0 Requires: R-CRAN-GitStats >= 2.2.0 Requires: R-CRAN-ellmer Requires: R-CRAN-httr2 Requires: R-CRAN-lubridate Requires: R-CRAN-R6 Requires: R-CRAN-S7 Requires: R-CRAN-dplyr Requires: R-CRAN-purrr Requires: R-CRAN-rlang Requires: R-CRAN-glue %description Scan multiple 'Git' repositories, pull specified files content and process it with large language models. You can summarize the content in specific way, extract information and data, or find answers to your questions about the repositories. The output can be stored in vector database and used for semantic search or as a part of a RAG (Retrieval Augmented Generation) prompt. %prep %setup -q -c -n %{packname} # fix end of executable files find -type f -executable -exec grep -Iq . {} \; -exec sed -i -e '$a\' {} \; # prevent binary stripping [ -d %{packname}/src ] && find %{packname}/src -type f -exec \ sed -i 's@/usr/bin/strip@/usr/bin/true@g' {} \; || true [ -d %{packname}/src ] && find %{packname}/src/Make* -type f -exec \ sed -i 's@-g0@@g' {} \; || true # don't allow local prefix in executable scripts find -type f -executable -exec sed -Ei 's@#!( )*/usr/local/bin@#!/usr/bin@g' {} \; %build %install mkdir -p %{buildroot}%{rlibdir} %{_bindir}/R CMD INSTALL -l %{buildroot}%{rlibdir} %{packname} test -d %{packname}/src && (cd %{packname}/src; rm -f *.o *.so) rm -f %{buildroot}%{rlibdir}/R.css # remove buildroot from installed files find %{buildroot}%{rlibdir} -type f -exec sed -i "s@%{buildroot}@@g" {} \; %files %{rlibdir}/%{packname}