# # spec file for package susemanager-frontend-libs # # Copyright (c) 2024 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/ # %global bootstrap_version 3.1.0 %global jquery_version 3.5.1 %global jquery_ui_version 1.10.4 %global less_version 1.6.0 %global roboto_version 1.2 %global awesome_version 4.4.0 %global pwstrength_version 1.0.2 %global moment_version 2.5.1 %global select2_version 3.4.5 %global select2_bootstrap_version 1.4.6 %global jquery_timepicker_version 1.11.14 %global bootstrap_timepicker_version 1.0 %global patternfly_version 1.1.2 %global clipboardjs_version 1.5.3 %global ace_editor_version 1.3.3 %global susemanager_shared_path /usr/share/susemanager %global wwwroot %{susemanager_shared_path}/www %global wwwdocroot %{wwwroot}/htdocs Name: susemanager-frontend-libs Version: 5.0.0 Release: 230900.1.1.uyuni3 # Make sure you review this when adding more libraries Summary: Web libraries used by SUSE Manager License: Apache-2.0 AND MIT AND OFL-1.1 AND BSD-3-Clause AND OFL-1.1 Group: Productivity/Networking/Web/Frontends URL: https://www.suse.com/products/suse-manager # MIT Source0: http://code.jquery.com/jquery-%{jquery_version}.min.js # Apache-2.0 Source1: https://github.com/twbs/bootstrap/archive/v%{bootstrap_version}.tar.gz # Apache-2.0 Source2: https://raw.github.com/less/less.js/master/dist/less-%{less_version}.min.js # Apache-2.0 Source3: http://developer.android.com/downloads/design/roboto-%{roboto_version}.zip # MIT and OFL-1.1 Source4: http://fontawesome.io/assets/font-awesome-%{awesome_version}.zip # MIT or GPLv3 Source5: https://raw.github.com/ablanco/jquery.pwstrength.bootstrap/%{pwstrength_version}/dist/pwstrength-bootstrap-%{pwstrength_version}.js # MIT Source6: moment.min.js Source7: moment-with-langs.min.js # # Apache-2.0 - http://www.fontsquirrel.com/fonts/droid-sans Source8: droid-sans.zip # Apache-2.0 - http://www.fontsquirrel.com/fonts/droid-sans-mono Source9: droid-sans-mono.zip # Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.sortable.js # Licensed MIT Source10: jquery-ui-1.10.4.custom.min.js # Licensed MIT and (Apache-2.0 or GPL-2.0) Source11: https://github.com/ivaynberg/select2/archive/%{select2_version}.zip # Licensed MIT # https://github.com/fk/select2-bootstrap-css/releases Source12: select2-bootstrap-css-%{select2_bootstrap_version}.tar.gz # # MIT Source13: https://raw2.github.com/jonthornton/jquery-timepicker/master/jquery.timepicker.min.js Source14: https://raw2.github.com/jonthornton/jquery-timepicker/master/jquery.timepicker.js Source15: https://github.com/jonthornton/jquery-timepicker/blob/master/jquery.timepicker.css # Apache-2.0 Source16: https://github.com/eternicode/bootstrap-datepicker/blob/master/js/bootstrap-datepicker.js Source17: bootstrap-datepicker.min.js Source18: https://github.com/eternicode/bootstrap-datepicker/blob/master/css/datepicker3.css Source19: https://github.com/eternicode/bootstrap-datepicker/blob/master/css/datepicker.css # MIT, Apache-2.0, OFL-1.1 # https://github.com/patternfly/patternfly/archive/v1.1.2.tar.gz Source20: patternfly-1.1.2.tar.gz Patch1: patternfly-1.1.2-python3.patch # BSD-3-Clause # MIT # Source23: clipboard.js-%{clipboardjs_version}.tar.gz # https://www.google.com/fonts/specimen/Raleway # OFL-1.1 Source24: Raleway.tar.gz # BSD-3-Clause # https://github.com/ajaxorg/ace-builds/archive/v1.3.3.tar.gz #h ttps://github.com/ajaxorg/ace-builds/archive/v1.3.3.tar.gz Source26: ace-editor.js-%{ace_editor_version}.tar.gz Patch0: pwstrength-bootstrap-1.0.2.js.patch Provides: susemanager(ace-editor) = %{ace_editor_version} Provides: susemanager(bootstrap-datepicker) = %{bootstrap_timepicker_version} Provides: susemanager(font-awesome) = %{awesome_version} Provides: susemanager(jquery) = %{jquery_version} Provides: susemanager(jquery-timepicker) = %{jquery_timepicker_version} Provides: susemanager(jquery-ui) = %{jquery_ui_version} Provides: susemanager(momentjs) = %{moment_version} Provides: susemanager(pwstrength-bootstrap) Provides: susemanager(roboto) = %{roboto_version} Provides: susemanager(select2) = %{select2_version} Provides: susemanager(select2-bootstrap) = %{select2_bootstrap_version} Provides: susemanager(select2-bootstrap-css) = %{select2_bootstrap_version} Provides: susemanager(twitter-bootstrap-js) = %{bootstrap_version} Provides: ace-editor = %{ace_editor_version} Obsoletes: ace-editor < %{ace_editor_version} BuildArch: noarch BuildRequires: fdupes BuildRequires: unzip BuildRoot: %{_tmppath}/%{name}-%{version}-build %description This package contains all the front-end dependencies of SUSE Manager like web/javascript libraries. %package devel Requires: %{name} = %{version}-%{release} Summary: LESS files to build SUSE Manager CSS and others Group: Development/Languages/Other Provides: susemanager(less-js) = %{less_version} Provides: susemanager(twitter-bootstrap-less) = %{bootstrap_version} %description devel This package contains all the less files needed to build SUSE Manager CSS files. %prep tar xpvf %{SOURCE1} unzip %{SOURCE3} unzip %{SOURCE4} cp %{SOURCE5} . unzip %{SOURCE8} unzip %{SOURCE9} unzip %{SOURCE11} tar xpvf %{SOURCE12} tar xpvf %{SOURCE20} %if 0%{?suse_version} >= 1320 %patch1 -p0 %endif tar xpvf %{SOURCE23} tar xpvf %{SOURCE24} tar xpvf %{SOURCE26} cp pwstrength-bootstrap-%{pwstrength_version}.js %{SOURCE5} %build %install %{__mkdir_p} %{buildroot}%{wwwdocroot}/javascript %{__mkdir_p} %{buildroot}%{wwwdocroot}/css %{__install} -m 644 %{SOURCE0} %{buildroot}%{wwwdocroot}/javascript/jquery.js %{__install} -m 644 %{SOURCE10} %{buildroot}%{wwwdocroot}/javascript/jquery-ui.js %{__mkdir_p} %{buildroot}%{wwwdocroot}/css/patternfly1/resources/components cp -r patternfly-%{patternfly_version}/less %{buildroot}%{wwwdocroot}/css/patternfly1/resources cp -r patternfly-%{patternfly_version}/components %{buildroot}%{wwwdocroot}/css/patternfly1/resources %{__mkdir_p} %{buildroot}%{wwwdocroot}/fonts cp patternfly-%{patternfly_version}/dist/fonts/OpenSans-* %{buildroot}%{wwwdocroot}/fonts cp patternfly-%{patternfly_version}/dist/fonts/PatternFlyIcons-webfont.* %{buildroot}%{wwwdocroot}/fonts %{__mkdir_p} %{buildroot}%{wwwdocroot}/fonts/Raleway cp Raleway-Regular.ttf %{buildroot}%{wwwdocroot}/fonts/Raleway cp Raleway-Light.ttf %{buildroot}%{wwwdocroot}/fonts/Raleway # we don't install bootstrap (dist/ directory) as SUSE Manager only depends on bootstrap # at compile time (spacewalk.less includes bootstrap). # We put the bootstrap less files in a devel sub-package %{__mkdir_p} %{buildroot}%{wwwdocroot}/css/bootstrap cp -r bootstrap-%{bootstrap_version}/less %{buildroot}%{wwwdocroot}/css/bootstrap # but we do require the javascript part of bootstrap %{__install} -m 644 bootstrap-%{bootstrap_version}/dist/js/bootstrap.min.js %{buildroot}%{wwwdocroot}/javascript/bootstrap.js %{__install} -m 644 %{SOURCE2} %{buildroot}%{wwwdocroot}/javascript/less.js %{__install} -m 644 %{SOURCE5} %{buildroot}%{wwwdocroot}/javascript %{__mkdir_p} %{buildroot}%{wwwdocroot}/javascript/momentjs %{__install} -m 644 %{SOURCE6} %{buildroot}%{wwwdocroot}/javascript/momentjs/moment.min.js %{__install} -m 644 %{SOURCE7} %{buildroot}%{wwwdocroot}/javascript/momentjs/moment-with-langs.min.js %{__mkdir_p} %{buildroot}%{wwwdocroot}/fonts/Roboto %{__install} -m 644 Roboto_v%{roboto_version}/Roboto/LICENSE.txt %{buildroot}%{wwwdocroot}/fonts/Roboto %{__install} -m 644 Roboto_v%{roboto_version}/Roboto/Roboto-Bold.ttf %{buildroot}%{wwwdocroot}/fonts/Roboto %{__install} -m 644 Roboto_v%{roboto_version}/Roboto/Roboto-Light.ttf %{buildroot}%{wwwdocroot}/fonts/Roboto %{__mkdir_p} %{buildroot}%{wwwdocroot}/fonts/font-awesome cp -r font-awesome-%{awesome_version}/css %{buildroot}%{wwwdocroot}/fonts/font-awesome cp -r font-awesome-%{awesome_version}/fonts %{buildroot}%{wwwdocroot}/fonts/font-awesome %{__install} -m 644 Droid*.ttf %{buildroot}%{wwwdocroot}/fonts/ %{__install} -m 644 "Apache License.txt" %{buildroot}%{wwwdocroot}/fonts/ %{__install} -m 644 LICENSE.txt %{buildroot}%{wwwdocroot}/fonts/ %{__mkdir_p} %{buildroot}%{wwwdocroot}/javascript/select2 %{__install} -m 644 select2-%{select2_version}/select2.css %{buildroot}%{wwwdocroot}/javascript/select2/ %{__install} -m 644 select2-%{select2_version}/select2.js %{buildroot}%{wwwdocroot}/javascript/select2/ %{__install} -m 644 select2-%{select2_version}/select2.png %{buildroot}%{wwwdocroot}/javascript/select2/ %{__install} -m 644 select2-%{select2_version}/select2x2.png %{buildroot}%{wwwdocroot}/javascript/select2/ %{__install} -m 644 select2-%{select2_version}/select2-spinner.gif %{buildroot}%{wwwdocroot}/javascript/select2/ %{__install} -m 644 select2-%{select2_version}/LICENSE %{buildroot}%{wwwdocroot}/javascript/select2/LICENSE.select2 %{__install} -m 644 select2-bootstrap-css-%{select2_bootstrap_version}/select2-bootstrap.css %{buildroot}%{wwwdocroot}/javascript/select2/ %{__install} -m 644 select2-bootstrap-css-%{select2_bootstrap_version}/LICENSE %{buildroot}%{wwwdocroot}/javascript/select2/LICENSE.select2-bootstrap %{__install} -m 644 %{SOURCE13} %{buildroot}%{wwwdocroot}/javascript/jquery.timepicker.min.js %{__install} -m 644 %{SOURCE14} %{buildroot}%{wwwdocroot}/javascript/jquery.timepicker.js %{__install} -m 644 %{SOURCE15} %{buildroot}%{wwwdocroot}/css/jquery.timepicker.css %{__install} -m 644 %{SOURCE16} %{buildroot}%{wwwdocroot}/javascript/bootstrap-datepicker.js %{__install} -m 644 %{SOURCE17} %{buildroot}%{wwwdocroot}/javascript/bootstrap-datepicker.min.js %{__install} -m 644 %{SOURCE18} %{buildroot}%{wwwdocroot}/css/bootstrap-datepicker.css %{__mkdir_p} %{buildroot}%{wwwdocroot}/javascript/clipboard %{__install} -m 644 clipboard.js-%{clipboardjs_version}/dist/clipboard.js %{buildroot}%{wwwdocroot}/javascript/clipboard/ %{__install} -m 644 clipboard.js-%{clipboardjs_version}/dist/clipboard.min.js %{buildroot}%{wwwdocroot}/javascript/clipboard/ %{__mkdir_p} %{buildroot}%{wwwdocroot}/javascript/ace-editor/ cp -r ace-builds-%{ace_editor_version}/src-min-noconflict %{buildroot}%{wwwdocroot}/javascript/ace-editor/ %fdupes %{buildroot}/ %files %doc OFL.txt %defattr(-,root,root) %dir %{susemanager_shared_path} %dir %{wwwroot} %dir %{wwwdocroot} %dir %{wwwdocroot}/javascript %dir %{wwwdocroot}/javascript/clipboard %dir %{wwwdocroot}/css %dir %{wwwdocroot}/fonts %dir %{wwwdocroot}/javascript/ace-editor %dir %{wwwdocroot}/javascript/ace-editor/src-min-noconflict %{wwwdocroot}/javascript/bootstrap.js %{wwwdocroot}/javascript/jquery.js %{wwwdocroot}/javascript/jquery-ui.js %{wwwdocroot}/javascript/pwstrength-bootstrap-%{pwstrength_version}.js %{wwwdocroot}/javascript/select2 %{wwwdocroot}/fonts/*.txt %{wwwdocroot}/fonts/*.ttf %{wwwdocroot}/fonts/Roboto %{wwwdocroot}/fonts/Raleway %{wwwdocroot}/fonts/font-awesome %{wwwdocroot}/javascript/bootstrap-datepicker.min.js %{wwwdocroot}/css/bootstrap-datepicker.css %{wwwdocroot}/javascript/bootstrap-datepicker.js %{wwwdocroot}/javascript/jquery.timepicker.min.js %{wwwdocroot}/javascript/jquery.timepicker.js %{wwwdocroot}/css/jquery.timepicker.css %{wwwdocroot}/javascript/momentjs %{wwwdocroot}/fonts/PatternFlyIcons-webfont.* %{wwwdocroot}/fonts/OpenSans-* %{wwwdocroot}/javascript/clipboard/clipboard.min.js %{wwwdocroot}/javascript/ace-editor/src-min-noconflict/* %files devel %defattr(-,root,root) %dir %{wwwdocroot}/css/bootstrap %{wwwdocroot}/css/bootstrap/less %dir %{wwwdocroot}/css/patternfly1 %dir %{wwwdocroot}/css/patternfly1/resources %{wwwdocroot}/css/patternfly1/resources/components %{wwwdocroot}/css/patternfly1/resources/less %{wwwdocroot}/javascript/less.js %{wwwdocroot}/javascript/clipboard/clipboard.js %changelog * Fri Jan 12 2024 Julio González Gil - Update version to 5.0.0, to be in line with the next version of SUSE Manager * Tue Nov 21 2023 Stefan Bluhm - Also apply /usr/share/susemanager/www changes for Enterprise Linux. * Thu Oct 19 2023 Michele Bussolotto - move all file managed by RPM from /srv to /usr/share/susemanager/www * Wed Aug 10 2022 Julio González Gil - Update version to 4.4.0, to be in line with the next version of SUSE Manager * Thu Oct 21 2021 Julio González Gil - Update version to 4.3.0, to be in line with the next version of SUSE Manager * Fri Feb 26 2021 Cédric Bosdonnat - Remove now unneeded validator source * Sat Nov 28 2020 Stefan Bluhm - fixed "Provides: susemanager(select2-bootstrap)". - Parameterised webserver dir and added detection logic. * Thu Nov 12 2020 Karl Tarvas - Version 4.2.1 - Update Bootstrap to 3.1.0 * Tue Nov 10 2020 Julio González Gil - Bump version to 4.2.0 * Wed Aug 12 2020 Dario Leidi - upgrade jquery to 3.5.1 - CVE-2020-11022 (bsc#1172831) * Wed Nov 27 2019 Julio González Gil - Bump version to 4.1.0 (bsc#1154940) * Fri Apr 26 2019 Julio González Gil - Fix wrong bugzilla entry at changelog * Tue Feb 19 2019 dleidi@suse.com - Version 4.0.2 - update jquery.timepicker to 1.11.14 (bsc#1119081) * Fri Nov 9 2018 luneves@suse.com - Fix package version (bsc#1115449) * Wed Sep 5 2018 luneves@suse.com - remove react bundle generation and gulpfile (bsc#1108845) * Wed Aug 8 2018 jgonzalez@suse.com - Version 4.0.0 (bsc#1104034) * Mon Jun 18 2018 luneves@suse.com - update susemanager-nodejs-sdk-devel to 1.0.3 (bsc#1098029) * Thu Jun 14 2018 luneves@suse.com - update susemanager-nodejs-sdk-devel to 1.0.2 (bsc#1096747) * Thu May 31 2018 jgonzalez@suse.com - Enforce susemanager-nodejs-sdk-devel dependency version (bsc#1095231) * Fri Apr 27 2018 kkaempf@suse.com - updating ace-editor to 1.3.3 (bsc#1090040) * Thu Nov 23 2017 jgonzalez@suse.com - version 3.2.0 - Fix node_modules location for SLES15 - Fix patternfly 1.1.2 for python3 - Add: * patternfly-1.1.2-python3.patch * Fri Mar 17 2017 mc@suse.de - version 3.1.0 - add validator.js javascript library to the package * Tue Mar 7 2017 mc@suse.de - Provide/Obsolete old ace-editor package * Tue Mar 7 2017 dleidi@suse.com - add ace-editor javascript library to the package * Tue Nov 29 2016 mantel@suse.de - switch architecture to "noarch" * Tue Jul 19 2016 moio@suse.com - fix creation of source maps for debugging * Tue Feb 23 2016 moio@suse.com - gulpfile bugfix: separate exports for React and ReactDOM * Fri Feb 19 2016 malbu@suse.de - Update gulpfile.js to prepend the Babel polyfill to the React.js bundle. * Thu Feb 18 2016 malbu@suse.de - add babel polyfill 6.5.0 * Thu Feb 18 2016 moio@suse.com - Update React.js to latest versions (bugfixes, stateless functions) * Wed Feb 17 2016 moio@suse.com - Minify React via gulp and save source maps * Wed Feb 17 2016 moio@suse.com - Include non-minified React version as well * Mon Nov 2 2015 dmacvicar@suse.de - add Raleway fonts - 2.1.5 * Wed Oct 28 2015 dmacvicar@suse.de - add clipboard.js 1.5.3 * Wed Oct 28 2015 dmacvicar@suse.de - update select2-bootstrap-css to 1.4.6 * Fri Oct 9 2015 dmacvicar@suse.de - update Font Awesome to 4.4.0 * Thu Oct 1 2015 bmaryniuk@suse.com - Add reactjs 0.13.3 * Wed Jan 21 2015 dmacvicar@suse.de - add patternfly fonts (OpenSans and PatterFlyIcons) * Tue Jan 20 2015 dmacvicar@suse.de - add patternfly to the -devel package * Wed Jul 9 2014 dmacvicar@suse.de - add jquery-ui and pwstrength-bootstrap to provides * Fri Jul 4 2014 mseidl@suse.de - adding missing provides * Fri Mar 7 2014 jrenner@suse.de - install the bootstrap *.less files into the css subdirectory * Mon Feb 17 2014 mc@suse.de - move momentjs from devel to main package * Fri Feb 14 2014 dmacvicar@suse.de - version 2.1.4 - add bootstrap-datepicker and jquery-timepicker * Wed Feb 12 2014 mc@suse.com - version 2.1.3 - add select2-bootstrap * Tue Feb 11 2014 mc@suse.de - version 2.1.2 - add jquery-ui.js and select2 * Fri Feb 7 2014 mc@suse.com - add Droid Fonts * Tue Jan 28 2014 mmeister@suse.com - update the jquery password plugin patch * Tue Jan 28 2014 dmacvicar@suse.de - add momentjs * Fri Jan 24 2014 mmeister@suse.com - add password strength jquery plugin + patch * Fri Jan 17 2014 mc@suse.de - version 2.1.1 - add Roboto fonts - add font-awesome * Wed Jan 15 2014 dmacvicar@suse.de - move less.js provides to the devel package - add a provide for bootstrap less files * Wed Jan 15 2014 dmacvicar@suse.de - move less.js to the devel package - put the bootstrap less files exactly where they are needed, as the package is not shared, no need for an alias * Fri Jan 10 2014 dmacvicar@suse.de - initial package for 2.1