%global jetty_version 8.1.17.v20150415 Name: guacamole-client Version: 1.5.5 Release: 2%{?dist} Summary: Server-side Java components that form the Guacamole application License: MPLv1.1 or GPL+ or AGPLv3+ URL: http://guac-dev.org/ Source0: https://dlcdn.apache.org/guacamole/%{version}/source/%{name}-%{version}.tar.gz Source1: %{name}-context.xml Source2: %{name}-guacamole.properties.user-mapping Source3: %{name}-HOWTO Source4: %{name}-tomcat-server.xml Source5: %{name}-httpd-conf-httpd.conf Source6: %{name}-httpd-conf.d-guacamole.conf Source7: %{name}-guacamole.properties.mysql Source8: 000-create-guacamole_db.sql Source9: 003-create-guacamole_user.sql Source10: guacamole-setup-mariadb.sh Source11: guacamole.properties.postgresql-example Source12: guacamole.properties.ldap-example Patch0: guacamole-client-1.5.1-de-translations.diff BuildArch: noarch BuildRequires: maven BuildRequires: maven-local #BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) >= 3.2.0 #BuildRequires: mvn(org.fedoraproject.xmvn:xmvn-mojo) # guacamole runs in tomcat as a webapp Requires: tomcat Requires: tomcat-webapps # apache reverse proxy Requires: httpd Requires: mod_ssl %description Guacamole is an HTML5 remote desktop gateway. Guacamole provides access to desktop environments using remote desktop protocols like VNC and RDP. A centralized server acts as a tunnel and proxy, allowing access to multiple desktops through a web browser. No browser plugins are needed, and no client software needs to be installed. The client requires nothing more than a web browser supporting HTML5 and AJAX. The centralized server is provided by the "guacamole-server" package. Summary: Web-based remote desktop application %package -n guacamole-apache-reverse-proxy Summary: configuration example files for setting up guacamole with apache as proxy # apache reverse proxy Requires: httpd Requires: mod_ssl %description -n guacamole-apache-reverse-proxy %{summary}. %package -n guacamole-client-examples Summary: example files from guacamole-client %description -n guacamole-client-examples %{summary}. %package -n guacamole-auth-duo Summary: guacamole extension %description -n guacamole-auth-duo %{summary}. %package -n guacamole-auth-header Summary: guacamole extension %description -n guacamole-auth-header %{summary}. %package -n guacamole-auth-jdbc-mysql # Guacamole Database install Requires: mariadb Requires: mysql-connector-java Summary: guacamole extension %description -n guacamole-auth-jdbc-mysql %{summary}. %package -n guacamole-auth-jdbc-postgresql Summary: guacamole extension %description -n guacamole-auth-jdbc-postgresql %{summary}. %package -n guacamole-auth-jdbc-sqlserver Summary: guacamole extension %description -n guacamole-auth-jdbc-sqlserver %{summary}. %package -n guacamole-auth-json Summary: guacamole extension %description -n guacamole-auth-json %{summary}. %package -n guacamole-auth-ldap Summary: guacamole extension %description -n guacamole-auth-ldap %{summary}. %package -n guacamole-auth-quickconnect Summary: guacamole extension %description -n guacamole-auth-quickconnect %{summary}. %package -n guacamole-auth-radius Summary: guacamole extension %description -n guacamole-auth-radius %{summary}. %package -n guacamole-auth-sso Summary: guacamole extension %description -n guacamole-auth-sso %{summary}. %package -n guacamole-auth-totp Summary: guacamole extension %description -n guacamole-auth-totp %{summary}. %package -n guacamole-history-recording-storage Summary: guacamole extension %description -n guacamole-history-recording-storage %{summary}. %package -n guacamole-vault Summary: guacamole extension %description -n guacamole-vault %{summary}. %prep %autosetup -p1 install -p -m644 -D %{SOURCE1} guacamole/src/main/webapp/META-INF/context.xml %build mvn -fn package # build radius extension manually pushd extensions/guacamole-auth-radius mvn -fn package popd %install %mvn_install # Put data files into tomcat's webapps directory mkdir -p %{buildroot}%{_datadir}/tomcat/webapps/guacamole/ cp -frvp guacamole/target/guacamole-%{version}/* %{buildroot}%{_datadir}/tomcat/webapps/guacamole/ # Use Fedora packaged jar files #pushd %{buildroot}%{_datadir}/tomcat/webapps/guacamole/WEB-INF/lib/ #xmvn-subst -s `ls *.jar | grep -v "guacamole"` #popd # Configuration file install -d %{buildroot}%{_sysconfdir}/guacamole cp -p guacamole/doc/example/* %{buildroot}%{_sysconfdir}/guacamole cp -p %{SOURCE2} %{buildroot}%{_sysconfdir}/guacamole/guacamole.properties # install the user-mapping.xml example file and an according guacamole.properties for the client # to ensure lowlevel functionality install -d %{buildroot}%{_datadir}/guacamole-client cp -p guacamole/doc/example/* %{buildroot}%{_datadir}/guacamole-client/ cp -a -a %{SOURCE2} %{buildroot}%{_datadir}/guacamole-client/guacamole.properties cp -a -a %{SOURCE3} %{buildroot}%{_datadir}/guacamole-client/HOWTO # install example files install -d %{buildroot}%{_datadir}/guacamole-client/ cp -r doc/guacamole-branding-example %{buildroot}%{_datadir}/guacamole-client/ cp -r doc/guacamole-playback-example %{buildroot}%{_datadir}/guacamole-client/ cp -r doc/guacamole-example %{buildroot}%{_datadir}/guacamole-client/ # install apache reverse proxy example files install -d %{buildroot}%{_datadir}/guacamole-apache-reverse-proxy cp -a %{SOURCE4} %{buildroot}%{_datadir}/guacamole-apache-reverse-proxy/tomcat-server.xml cp -a %{SOURCE5} %{buildroot}%{_datadir}/guacamole-apache-reverse-proxy/httpd-conf-httpd.conf cp -a %{SOURCE6} %{buildroot}%{_datadir}/guacamole-apache-reverse-proxy/httpd-conf.d-guacamole.conf # Extensions install -d %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-duo/target/guacamole-auth-duo-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-header/target/guacamole-auth-header-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-mysql/target/guacamole-auth-jdbc-mysql-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions # JDBC Driver files go here (mysl-connector-java.jar) install -d %{buildroot}%{_sysconfdir}/guacamole/lib install -d %{buildroot}%{_datadir}/java/ ln -s %{_datadir}/java/mysql-connector-java.jar %{buildroot}%{_sysconfdir}/guacamole/lib/mysql-connector-java.jar install -d %{buildroot}%{_datadir}/guacamole-auth-jdbc-mysql/schema cp -r extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-mysql/schema/* %{buildroot}%{_datadir}/guacamole-auth-jdbc-mysql/schema/ cp -a %{SOURCE7} %{buildroot}%{_datadir}/guacamole-auth-jdbc-mysql/guacamole.properties cp -a %{SOURCE8} %{buildroot}%{_datadir}/guacamole-auth-jdbc-mysql/schema/000-create-guacamole_db.sql cp -a %{SOURCE9} %{buildroot}%{_datadir}/guacamole-auth-jdbc-mysql/schema/003-create-guacamole_user.sql cp -a %{SOURCE10} %{buildroot}%{_datadir}/guacamole-auth-jdbc-mysql/schema/guacamole-setup-mariadb.sh cp -p extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-postgresql/target/guacamole-auth-jdbc-postgresql-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions install -d %{buildroot}%{_datadir}/guacamole-auth-jdbc-postgresql cp -r extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-postgresql/schema %{buildroot}%{_datadir}/guacamole-auth-jdbc-postgresql/ cp -a %{SOURCE11} %{buildroot}%{_datadir}/guacamole-auth-jdbc-postgresql/guacamole.properties cp -p extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-sqlserver/target/guacamole-auth-jdbc-sqlserver-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions install -d %{buildroot}%{_datadir}/guacamole-auth-jdbc-sqlserver cp -r extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-sqlserver/schema %{buildroot}%{_datadir}/guacamole-auth-jdbc-sqlserver/ cp -p extensions/guacamole-auth-json/target/guacamole-auth-json-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-ldap/target/guacamole-auth-ldap-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions install -d %{buildroot}%{_datadir}/guacamole-auth-ldap cp -r extensions/guacamole-auth-ldap/schema %{buildroot}%{_datadir}/guacamole-auth-ldap/ cp -r extensions/guacamole-auth-ldap/doc %{buildroot}%{_datadir}/guacamole-auth-ldap/ cp -a %{SOURCE12} %{buildroot}%{_datadir}/guacamole-auth-ldap/guacamole.properties cp -p extensions/guacamole-auth-quickconnect/target/guacamole-auth-quickconnect-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-radius/target/guacamole-auth-radius-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-sso/modules/guacamole-auth-sso-base/target/guacamole-auth-sso-base-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-sso/modules/guacamole-auth-sso-cas/target/guacamole-auth-sso-cas-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-sso/modules/guacamole-auth-sso-openid/target/guacamole-auth-sso-openid-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-sso/modules/guacamole-auth-sso-saml/target/guacamole-auth-sso-saml-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-auth-totp/target/guacamole-auth-totp-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-history-recording-storage/target/guacamole-history-recording-storage-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions # recordings need this directory present with according rights install -d %{buildroot}%{_sharedstatedir}/guacamole/recordings cp -p extensions/guacamole-vault/modules/guacamole-vault-base/target/guacamole-vault-base-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions cp -p extensions/guacamole-vault/modules/guacamole-vault-ksm/target/guacamole-vault-ksm-%{version}.jar \ %{buildroot}%{_sysconfdir}/guacamole/extensions %files %license LICENSE %{_datadir}/tomcat/webapps/guacamole %dir %{_sysconfdir}/guacamole %config(noreplace) %attr(640,root,tomcat) %{_sysconfdir}/guacamole/user-mapping.xml %config(noreplace) %attr(640,root,tomcat) %{_sysconfdir}/guacamole/guacamole.properties %{_datadir}/guacamole-client/HOWTO %{_datadir}/guacamole-client/guacamole.properties %{_datadir}/guacamole-client/user-mapping.xml %files -n guacamole-client-examples %{_datadir}/guacamole-client/guacamole-branding-example %{_datadir}/guacamole-client/guacamole-playback-example %{_datadir}/guacamole-client/guacamole-example %files -n guacamole-apache-reverse-proxy %{_datadir}/guacamole-apache-reverse-proxy %files -n guacamole-auth-duo %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-duo-%{version}.jar %files -n guacamole-auth-header %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-header-%{version}.jar %files -n guacamole-auth-jdbc-mysql %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-jdbc-mysql-%{version}.jar %{_datadir}/guacamole-auth-jdbc-mysql %{_sysconfdir}/guacamole/lib/mysql-connector-java.jar %files -n guacamole-auth-jdbc-postgresql %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-jdbc-postgresql-%{version}.jar %{_datadir}/guacamole-auth-jdbc-postgresql %files -n guacamole-auth-jdbc-sqlserver %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-jdbc-sqlserver-%{version}.jar %{_datadir}/guacamole-auth-jdbc-sqlserver/ %files -n guacamole-auth-json %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-json-%{version}.jar %files -n guacamole-auth-ldap %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-ldap-%{version}.jar %{_datadir}/guacamole-auth-ldap/ %files -n guacamole-auth-quickconnect %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-quickconnect-%{version}.jar %files -n guacamole-auth-radius %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-radius-%{version}.jar %files -n guacamole-auth-sso %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-sso-base-%{version}.jar %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-sso-cas-%{version}.jar %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-sso-openid-%{version}.jar %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-sso-saml-%{version}.jar %files -n guacamole-auth-totp %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-auth-totp-%{version}.jar %files -n guacamole-history-recording-storage %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-history-recording-storage-%{version}.jar %attr(2770,guacd,tomcat) %{_sharedstatedir}/guacamole/recordings %files -n guacamole-vault %dir %{_sysconfdir}/guacamole/extensions %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-vault-base-%{version}.jar %attr(640,root,tomcat) %{_sysconfdir}/guacamole/extensions/guacamole-vault-ksm-%{version}.jar %changelog * Mon May 29 2023 Marie Loise Nolden - 1.5.2-1 - 1.5.2 * Wed Apr 19 2023 Marie Loise Nolden - 1.5.1-1 - bugfix release 1.5.1