7a1f801
%global jsname jsroot
7a1f801
7a1f801
Name:		js-%{jsname}
e1e4306
Version:	7.5.5
e1e4306
Release:	1%{?dist}
7a1f801
Summary:	JavaScript ROOT - Interactive numerical data analysis graphics
7a1f801
b26a0fa
#		Most files are MIT, d3.mjs is BSD, dat.gui.mjs is Apache-2.0
b26a0fa
License:	MIT AND BSD-3-Clause AND Apache-2.0
7a1f801
URL:		https://jsroot.gsi.de/
7a1f801
Source0:	https://github.com/root-project/%{jsname}/archive/%{version}/%{jsname}-%{version}.tar.gz
7a1f801
#		Use locally installed mathjax instead of remote installation.
7a1f801
Patch0:		%{name}-mathjax.patch
7a1f801
7a1f801
BuildArch:	noarch
7a1f801
BuildRequires:	web-assets-devel
7a1f801
Requires:	web-assets-filesystem
b26a0fa
Requires:	mathjax3
7a1f801
7a1f801
%description
7a1f801
JavaScript ROOT provides interactive ROOT-like graphics in web browsers.
7a1f801
Data can be read and displayed from binary and JSON ROOT files.
7a1f801
7a1f801
%prep
7a1f801
%setup -q -n %{jsname}-%{version}
a936908
%patch -P 0 -p1
7a1f801
7a1f801
%build
b26a0fa
# nothing to do
7a1f801
b26a0fa
%install
b26a0fa
mkdir -p %{buildroot}%{_jsdir}/%{jsname}
b26a0fa
b26a0fa
# In upstream's released version modules/d3.mjs and modules/three.mjs
b26a0fa
# ar minified, but in root's bundled version they ar not.
b26a0fa
# Leave them unminified in Fedora.
b26a0fa
for d in modules modules/base modules/draw modules/geom modules/gpad \
9fddaa8
    modules/gui modules/hist modules/hist2d ; do
9fddaa8
mkdir %{buildroot}%{_jsdir}/%{jsname}/${d}
9fddaa8
install -m 644 -p ${d}/*.mjs %{buildroot}%{_jsdir}/%{jsname}/${d}
7a1f801
done
7a1f801
9fddaa8
ln -rs %{buildroot}%{_jsdir}/mathjax@3 %{buildroot}%{_jsdir}/%{jsname}/mathjax
7a1f801
b26a0fa
mkdir %{buildroot}%{_jsdir}/%{jsname}/build
b26a0fa
install -m 644 -p build/jsroot.js %{buildroot}%{_jsdir}/%{jsname}/build
9d37ae6
b26a0fa
mkdir %{buildroot}%{_jsdir}/%{jsname}/scripts
7a1f801
install -m 644 -p scripts/*.js %{buildroot}%{_jsdir}/%{jsname}/scripts
7a1f801
b26a0fa
# Upstream's released version adds a copy with the ending .min.js
b26a0fa
# Despite its name it is not minified. Do the same for Fedora.
b26a0fa
ln %{buildroot}%{_jsdir}/%{jsname}/scripts/JSRoot.core.js \
b26a0fa
   %{buildroot}%{_jsdir}/%{jsname}/scripts/JSRoot.core.min.js
ef53b13
7a1f801
mkdir -p %{buildroot}%{_jsdir}/%{jsname}/files
7a1f801
install -m 644 -p files/* %{buildroot}%{_jsdir}/%{jsname}/files
7a1f801
7a1f801
mkdir -p %{buildroot}%{_jsdir}/%{jsname}/img
7a1f801
install -m 644 -p img/* %{buildroot}%{_jsdir}/%{jsname}/img
7a1f801
7a1f801
mkdir -p %{buildroot}%{_pkgdocdir}
b26a0fa
ln -rs %{buildroot}%{_jsdir}/%{jsname}/build %{buildroot}%{_pkgdocdir}
b26a0fa
ln -rs %{buildroot}%{_jsdir}/%{jsname}/img %{buildroot}%{_pkgdocdir}
b26a0fa
ln -rs %{buildroot}%{_jsdir}/%{jsname}/modules %{buildroot}%{_pkgdocdir}
b26a0fa
ln -rs %{buildroot}%{_jsdir}/%{jsname}/scripts %{buildroot}%{_pkgdocdir}
b26a0fa
b26a0fa
%pretrans -p <lua>
b26a0fa
-- Remove links created by broken scriptlet in root-net-http
b26a0fa
linkstoremove = {
b26a0fa
  "%{_jsdir}/%{jsname}/img/img",
b26a0fa
  "%{_jsdir}/%{jsname}/libs/libs",
b26a0fa
  "%{_jsdir}/%{jsname}/scripts/scripts",
b26a0fa
  "%{_jsdir}/%{jsname}/style/style"
b26a0fa
}
b26a0fa
for _, path in ipairs(linkstoremove) do
b26a0fa
  st = posix.stat(path)
b26a0fa
  if st and st.type == "link" then
b26a0fa
    os.remove(path)
b26a0fa
  end
b26a0fa
end
7a1f801
7a1f801
%files
7a1f801
%{_jsdir}/%{jsname}
b26a0fa
%license LICENSE libs/*.LICENSE
1ec01e1
%doc %{_pkgdocdir}/*
7a1f801
%doc changes.md demo docs/* index.htm readme.md
7a1f801
7a1f801
%changelog
e1e4306
* Sat Apr 06 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 7.5.5-1
e1e4306
- Update to version 7.5.5
e1e4306
39e752c
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 7.5.3-3
39e752c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
39e752c
4332f8e
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 7.5.3-2
4332f8e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
4332f8e
9fddaa8
* Fri Nov 24 2023 Mattias Ellert <mattias.ellert@physics.uu.se> - 7.5.3-1
9fddaa8
- Update to version 7.5.3
9fddaa8
a936908
* Sat Oct 14 2023 Mattias Ellert <mattias.ellert@physics.uu.se> - 7.3.4-1
a936908
- Update to version 7.3.4
a936908
74af8aa
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 7.3.1-2
74af8aa
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
74af8aa
1ec01e1
* Tue Mar 28 2023 Mattias Ellert <mattias.ellert@physics.uu.se> - 7.3.1-1
1ec01e1
- Update to version 7.3.1
1ec01e1
b26a0fa
* Wed Mar 15 2023 Mattias Ellert <mattias.ellert@physics.uu.se> - 7.3.0-1
b26a0fa
- Update to version 7.3.0
b26a0fa
d63ac2b
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.3.4-5
d63ac2b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
d63ac2b
6a4cf75
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.3.4-4
6a4cf75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
6a4cf75
b4024d2
* Mon Jul 18 2022 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.3.4-3
b4024d2
- Change CSS minifier from yuicompressor to rcssmin on Fedora
b4024d2
a3bd42d
* Wed Jun 15 2022 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.3.4-2
a3bd42d
- Update backport patch to match root 6.26.04
a3bd42d
1271339
* Tue Apr 05 2022 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.3.4-1
1271339
- Update to version 6.3.4
1271339
b1b375f
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.2.1-2
b1b375f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
b1b375f
6556821
* Fri Nov 05 2021 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.2.1-1
6556821
- Update to version 6.2.1
6556821
e06d47e
* Mon Aug 16 2021 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.2.0-1
e06d47e
- Update to version 6.2.0
e06d47e
- This version uses a newer javascript version syntax that requires a
e06d47e
  newer uglify-js version
e06d47e
01f349a
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.9.1-2
01f349a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
01f349a
ef53b13
* Thu Mar 11 2021 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.9.1-1
ef53b13
- Update to version 5.9.1
ef53b13
- Change Requires to new js-jquery-ui package (also for EPEL 8)
ef53b13
c89cdf5
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.8.0-6
c89cdf5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
c89cdf5
af74473
* Sat Sep 26 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.8.0-5
af74473
- Compatibility with uglifyjs v3 (no --preamble option)
af74473
7b53a92
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.8.0-4
7b53a92
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
7b53a92
93babbf
* Thu Jul 23 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.8.0-3
93babbf
- Do not use closure-compiler for Fedora 33+ - it is orphaned and
93babbf
  uninstallable with broken deps.
93babbf
9cf0554
* Wed Jul 15 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.8.0-2
9cf0554
- No longer bundle js-jquery, js-jquery-mousewheel and
9cf0554
  js-jquery-ui-touch-punch for EPEL 8.
9cf0554
- Still bundle js-jquery-ui which is not available in EPEL 8.
9cf0554
f83cca4
* Mon Mar 23 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.8.0-1
f83cca4
- Update to version 5.8.0
f83cca4
3822c83
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.7.2-2
3822c83
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
3822c83
9d37ae6
* Sat Nov 23 2019 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.7.2-1
9d37ae6
- Update to version 5.7.2
9d37ae6
- Bundle jquery and its dependants in EPEL 8 - not available
9d37ae6
809cb23
* Wed Aug 14 2019 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.7.1-1
809cb23
- Update to version 5.7.1
809cb23
deea60d
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.7.0-2
deea60d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
deea60d
ea3425b
* Wed May 01 2019 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.7.0-1
ea3425b
- Update to version 5.7.0
ea3425b
3de02de
* Fri Mar 22 2019 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.6.4-1
3de02de
- Update to version 5.6.4
3de02de
b3e6b3a
* Fri Feb 01 2019 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.6.3-1
b3e6b3a
- Update to version 5.6.3
b3e6b3a
b90a426
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.6.1-2
b90a426
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
b90a426
7d95fcd
* Sat Nov 10 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.6.1-1
7d95fcd
- Update to version 5.6.1
7d95fcd
a93d12c
* Mon Nov 05 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.6.0-1
a93d12c
- Update to version 5.6.0
a93d12c
c07a4b8
* Thu Aug 30 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.5.1-1
c07a4b8
- Update to version 5.5.1
c07a4b8
c56c462
* Fri Jul 20 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.5.0-1
c56c462
- Update to version 5.5.0
c56c462
- Change dependency to js-jquery since js-jquery2 is orphaned
c56c462
18d88fc
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.4.2-3
18d88fc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
18d88fc
e54398a
* Thu Jun 14 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.4.2-2
e54398a
- Adapt symlinks to updated jquery-ui package
e54398a
c56c462
* Wed May 30 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.4.2-1
66cffbf
- Update to version 5.4.2
66cffbf
967959e
* Wed Apr 11 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.4.1-1
967959e
- Update to version 5.4.1
967959e
d319229
* Sat Feb 24 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.4.0-1
d319229
- Update to version 5.4.0
d319229
4860ba1
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.5-2
4860ba1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
4860ba1
005b9ae
* Mon Feb 05 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.3.5-1
005b9ae
- Update to version 5.3.5
005b9ae
7a1f801
* Wed Jan 03 2018 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.3.4-2
7a1f801
- Make Summary more informative
7a1f801
- Add files directory needed by root-net-http
7a1f801
7a1f801
* Mon Dec 25 2017 Mattias Ellert <mattias.ellert@physics.uu.se> - 5.3.4-1
7a1f801
- Initial packaging for Fedora