%global packname shiny %global rlibdir %{_datadir}/R/library %global with_loop 0 Name: R-%{packname} Version: 1.3.2 Release: 2%{?dist} Summary: Web Application Framework for R License: GPLv3 URL: https://CRAN.R-project.org/package=%{packname} Source0: https://cran.r-project.org/src/contrib/%{packname}_%{version}.tar.gz # Here's the R view of the dependencies world: # Depends: R-methods # Imports: R-utils, R-grDevices, R-httpuv >= 1.5.0, R-mime >= 0.3, R-jsonlite >= 0.9.16, R-xtable, R-digest, R-htmltools >= 0.3.6, R-R6 >= 2.0, R-sourcetools, R-later >= 0.7.2, R-promises >= 1.0.1, R-tools, R-crayon, R-rlang # Suggests: R-datasets, R-Cairo >= 1.5-5, R-testthat, R-knitr >= 1.6, R-markdown, R-rmarkdown, R-ggplot2, R-reactlog >= 1.0.0, R-magrittr # LinkingTo: # Enhances: BuildArch: noarch Requires: R-core Requires: R-methods Requires: R-utils Requires: R-grDevices Requires: R-httpuv >= 1.5.0 Requires: R-mime >= 0.3 Requires: R-jsonlite >= 0.9.16 Requires: R-xtable Requires: R-digest Requires: R-htmltools >= 0.3.6 Requires: R-R6 >= 2.0 Requires: R-sourcetools Requires: R-later >= 0.7.2 Requires: R-promises >= 1.0.1 Requires: R-tools Requires: R-crayon Requires: R-rlang Suggests: R-datasets Suggests: R-Cairo >= 1.5.5 Suggests: R-testthat Suggests: R-knitr >= 1.6 Suggests: R-markdown Suggests: R-rmarkdown Suggests: R-ggplot2 Suggests: R-reactlog >= 1.0.0 Suggests: R-magrittr BuildRequires: R-devel BuildRequires: tex(latex) BuildRequires: R-methods BuildRequires: R-utils BuildRequires: R-grDevices BuildRequires: R-httpuv >= 1.5.0 BuildRequires: R-mime >= 0.3 BuildRequires: R-jsonlite >= 0.9.16 BuildRequires: R-xtable BuildRequires: R-digest BuildRequires: R-htmltools >= 0.3.6 BuildRequires: R-R6 >= 2.0 BuildRequires: R-sourcetools BuildRequires: R-later >= 0.7.2 BuildRequires: R-promises >= 1.0.1 BuildRequires: R-tools BuildRequires: R-crayon BuildRequires: R-rlang BuildRequires: R-datasets BuildRequires: R-Cairo >= 1.5.5 BuildRequires: R-testthat BuildRequires: R-knitr >= 1.6 BuildRequires: R-markdown BuildRequires: R-rmarkdown BuildRequires: R-ggplot2 BuildRequires: R-magrittr %if %{with_loop} BuildRequires: R-reactlog >= 1.0.0 %endif # # Unbundle some things and mark others. # # Bootstrap, not in Fedora properly. Provides: bundled(xstatic-bootstrap-common) = 3.3.7 BuildRequires: xstatic-datatables-common >= 1.10.5 Requires: xstatic-datatables-common >= 1.10.5 # Should be >=1.6.4, but 1.3.1.0 works too. BuildRequires: xstatic-bootstrap-datepicker-common Requires: xstatic-bootstrap-datepicker-common # Too old in Fedora to unbundle. Provides: bundled(fontawesome-fonts) = 5.3.1 Provides: bundled(fontawesome-fonts-web) = 5.3.1 # Broken in Fedora #BuildRequires: js-highlight >= 6.2 #Requires: js-highlight >= 6.2 Provides: bundled(js-highlight) = 6.2 Provides: bundled(js-ionrangeslider) = 2.1.6 BuildRequires: js-jquery >= 1.12.4 Requires: js-jquery >= 1.12.4 # Should be >= 1.12.1, but 1.12.0.1 works too. BuildRequires: xstatic-jquery-ui-common Requires: xstatic-jquery-ui-common Provides: bundled(json2) = 2014.02.04 Provides: bundled(selectize) = 0.11.2 BuildRequires: nodejs-showdown >= 0.3.1 Requires: nodejs-showdown >= 0.3.1 Provides: bundled(js-strftime) = 0.9.2 %description Makes it incredibly easy to build interactive web applications with R. Automatic "reactive" binding between inputs and outputs and extensive prebuilt widgets make it possible to build beautiful, responsive, and powerful applications with minimal effort. %prep %setup -q -c -n %{packname} %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 # Unbundle things; can't be done before install since it copies symlink targets. # DataTables rm -r %{buildroot}%{rlibdir}/%{packname}/www/shared/datatables/css/dataTables.bootstrap.css rm -r %{buildroot}%{rlibdir}/%{packname}/www/shared/datatables/{images,js,upgrade1.10.txt} for f in /usr/share/javascript/datatables/css/*; do ln -s $f %{buildroot}%{rlibdir}/%{packname}/www/shared/datatables/css${f##*/} done ln -s /usr/share/javascript/datatables/images \ %{buildroot}%{rlibdir}/%{packname}/www/shared/datatables/images ln -s /usr/share/javascript/datatables/js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/datatables/js rm -r %{buildroot}%{rlibdir}/%{packname}/www/shared/datepicker/* mkdir %{buildroot}%{rlibdir}/%{packname}/www/shared/datepicker/css ln -s /usr/share/javascript/bootstrap_datepicker/datepicker3.css \ %{buildroot}%{rlibdir}/%{packname}/www/shared/datepicker/css/bootstrap-datepicker3.css mkdir %{buildroot}%{rlibdir}/%{packname}/www/shared/datepicker/js ln -s /usr/share/javascript/bootstrap_datepicker/bootstrap-datepicker.js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/datepicker/js/bootstrap-datepicker.js ln -s /usr/share/javascript/bootstrap_datepicker/locales \ %{buildroot}%{rlibdir}/%{packname}/www/shared/datepicker/js/locales rm %{buildroot}%{rlibdir}/%{packname}/www/shared/highlight/{LICENSE,classref.txt,highlight.pack.js} ln -s /usr/share/javascript/highlight.js/highlight.pack.js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/highlight/highlight.pack.js rm %{buildroot}%{rlibdir}/%{packname}/www/shared/{jquery-AUTHORS.txt,jquery.js,jquery.min.js,jquery.min.map} ln -s /usr/share/javascript/jquery/latest/jquery.js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/jquery.js ln -s /usr/share/javascript/jquery/latest/jquery.min.js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/jquery.min.js ln -s /usr/share/javascript/jquery/latest/jquery.min.map \ %{buildroot}%{rlibdir}/%{packname}/www/shared/jquery.min.map rm -r %{buildroot}%{rlibdir}/%{packname}/www/shared/jqueryui ln -s /usr/share/javascript/jquery_ui \ %{buildroot}%{rlibdir}/%{packname}/www/shared/jqueryui rm -r %{buildroot}%{rlibdir}/%{packname}/www/shared/showdown/* mkdir %{buildroot}%{rlibdir}/%{packname}/www/shared/showdown/compressed ln -s /usr/lib/node_modules/showdown/compressed/showdown.js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/showdown/compressed/showdown.js mkdir %{buildroot}%{rlibdir}/%{packname}/www/shared/showdown/src ln -s /usr/lib/node_modules/showdown/src/showdown.js \ %{buildroot}%{rlibdir}/%{packname}/www/shared/showdown/src/showdown.js %check %if %{with_loop} %{_bindir}/R CMD check %{packname} %else _R_CHECK_FORCE_SUGGESTS_=0 %{_bindir}/R CMD check %{packname} %endif %files %dir %{rlibdir}/%{packname} %license %{rlibdir}/%{packname}/LICENSE %doc %{rlibdir}/%{packname}/html %{rlibdir}/%{packname}/DESCRIPTION %doc %{rlibdir}/%{packname}/NEWS.md %{rlibdir}/%{packname}/INDEX %{rlibdir}/%{packname}/NAMESPACE %{rlibdir}/%{packname}/Meta %{rlibdir}/%{packname}/R %{rlibdir}/%{packname}/help %{rlibdir}/%{packname}/examples %{rlibdir}/%{packname}/staticdocs %{rlibdir}/%{packname}/template %{rlibdir}/%{packname}/www-dir %{rlibdir}/%{packname}/www %changelog * Wed Mar 04 2020 Elliott Sales de Andrade - 1.3.2-2 - Re-bundle highlighjs, which is broken in Fedora * Thu May 23 2019 Elliott Sales de Andrade - 1.3.2-1 - initial package for Fedora