From c4eaa713c1d83f2484e11766d2a6a3852b47f695 Mon Sep 17 00:00:00 2001 From: ungleich team Date: Mon, 13 May 2019 09:40:44 +0000 Subject: [PATCH] update for ver1.1.0 --- SPECS/guacamole-jdbc-postgresql-1.1.0.spec | 43 +++ SPECS/guacamole-jdbc-postgresql.spec | 40 +++ SPECS/guacamole-ldap-1.1.0.spec | 38 +++ SPECS/guacamole-server-1.1.0.spec | 346 +++++++++++++++++++++ SPECS/guacamole-totp-1.1.0.spec | 37 +++ SPECS/guacamole-totp.spec | 5 +- SPECS/guacamole-web-1.1.0.spec | 37 +++ 7 files changed, 544 insertions(+), 2 deletions(-) create mode 100644 SPECS/guacamole-jdbc-postgresql-1.1.0.spec create mode 100644 SPECS/guacamole-jdbc-postgresql.spec create mode 100644 SPECS/guacamole-ldap-1.1.0.spec create mode 100644 SPECS/guacamole-server-1.1.0.spec create mode 100644 SPECS/guacamole-totp-1.1.0.spec create mode 100644 SPECS/guacamole-web-1.1.0.spec diff --git a/SPECS/guacamole-jdbc-postgresql-1.1.0.spec b/SPECS/guacamole-jdbc-postgresql-1.1.0.spec new file mode 100644 index 0000000..05a4a63 --- /dev/null +++ b/SPECS/guacamole-jdbc-postgresql-1.1.0.spec @@ -0,0 +1,43 @@ +Name: guacamole-auth-jdbc +Version: 1.1.0 +Release: 1%{?dist} +Epoch: 1 +Summary: Web components from the Guacamole proxy +License: MPLv1.1 or GPLv2+ +URL: http://guac-dev.org/ + +Source0: %{name}-%{version}.tar.gz + +%description +Guacamole authoriztion with DB + +#%package -n guacamole-auth-jdbc-postgresql +Summary: Database authentication with postgresql +Requires: postgresql%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: tomcat%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + + +%prep +%autosetup + +%build + +%install +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/extensions +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/lib +install -m 644 /usr/share/java/postgresql-jdbc.jar %{buildroot}/usr/share/tomcat/.guacamole/lib/ +install -m 644 postgresql/guacamole-auth-jdbc-postgresql-%{version}.jar %{buildroot}/usr/share/tomcat/.guacamole/extensions/ +install -m 644 postgresql/schema/*.sql %{buildroot}/usr/share/tomcat/.guacamole/lib/ + +%files +%defattr(-,root,root,-) +/usr/share/tomcat/.guacamole/lib/postgresql-jdbc.jar +/usr/share/tomcat/.guacamole/extensions/guacamole-auth-jdbc-postgresql-%{version}.jar +/usr/share/tomcat/.guacamole/lib/*.sql + +%changelog +* Thu May 02 2019 kjg - 1.1.0-1 +- update for version 1.1.0. + +* Wed Apr 25 2019 kjg - 1.0.0-1 +- create version 1.0.0. diff --git a/SPECS/guacamole-jdbc-postgresql.spec b/SPECS/guacamole-jdbc-postgresql.spec new file mode 100644 index 0000000..d832397 --- /dev/null +++ b/SPECS/guacamole-jdbc-postgresql.spec @@ -0,0 +1,40 @@ +Name: guacamole-auth-jdbc +Version: 1.0.0 +Release: 1%{?dist} +Epoch: 1 +Summary: Web components from the Guacamole proxy +License: MPLv1.1 or GPLv2+ +URL: http://guac-dev.org/ + +Source0: http://apache.org/dyn/closer.cgi?action=download&filename=guacamole/%{version}/binary//%{name}-%{version}.tar.gz + +%description +Guacamole authoriztion with DB + +#%package -n guacamole-auth-jdbc-postgresql +Summary: Database authentication with postgresql +Requires: postgresql%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: tomcat%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + + +%prep +%autosetup + +%build + +%install +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/extensions +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/lib +install -m 644 /usr/share/java/postgresql-jdbc.jar %{buildroot}/usr/share/tomcat/.guacamole/lib/ +install -m 644 postgresql/guacamole-auth-jdbc-postgresql-1.0.0.jar %{buildroot}/usr/share/tomcat/.guacamole/extensions/ +install -m 644 postgresql/schema/*.sql %{buildroot}/usr/share/tomcat/.guacamole/lib/ + +%files +%defattr(-,root,root,-) +/usr/share/tomcat/.guacamole/lib/postgresql-jdbc.jar +/usr/share/tomcat/.guacamole/extensions/guacamole-auth-jdbc-postgresql-1.0.0.jar +/usr/share/tomcat/.guacamole/lib/*.sql + +%changelog +* Wed Apr 25 2019 kjg - 1.0.0-1 +- create version 1.0.0. diff --git a/SPECS/guacamole-ldap-1.1.0.spec b/SPECS/guacamole-ldap-1.1.0.spec new file mode 100644 index 0000000..d66877b --- /dev/null +++ b/SPECS/guacamole-ldap-1.1.0.spec @@ -0,0 +1,38 @@ +Name: guacamole-auth-ldap +Version: 1.1.0 +Release: 1%{?dist} +Epoch: 1 +Summary: Guacamole supports LDAP authentication via an extension available from the main project website. +License: MPLv1.1 or GPLv2+ +URL: http://guac-dev.org/ + +Source0: %{name}-%{version}.tar.gz + +%description +Guacamole authoriztion with LDAP + +#%package -n guacamole-ldap +Summary: authentication with LDAP +Requires: tomcat%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + + +%prep +%autosetup + +%build + +%install +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/extensions +install -m 644 guacamole-auth-ldap-%{version}.jar %{buildroot}/usr/share/tomcat/.guacamole/extensions/ + + +%files +%defattr(-,root,root,-) +/usr/share/tomcat/.guacamole/extensions/guacamole-auth-ldap-%{version}.jar + +%changelog +* Thu May 02 2019 kjg - 1.1.0-1 +- update for version 1.1.0. + +* Wed Apr 10 2019 kjg - 1.0.0-1 +- create version 1.0.0. diff --git a/SPECS/guacamole-server-1.1.0.spec b/SPECS/guacamole-server-1.1.0.spec new file mode 100644 index 0000000..fa53ba4 --- /dev/null +++ b/SPECS/guacamole-server-1.1.0.spec @@ -0,0 +1,346 @@ +%global _hardened_build 1 +%global username guacd + +# Can be rebuilt with FFmpeg/H264 support enabled by passing "--with=ffmpeg" to +# mock/rpmbuild; or by globally setting these variable: +# Fails with unpackaged files due to logic below - needs to be enabled -- 2019-04-09, Nico Schottelius +%global _with_ffmpeg 1 + +Name: guacamole-server +Version: 1.1.0 +Release: 1%{?dist} +Epoch: 1 +Summary: Server-side native components that form the Guacamole proxy +License: MPLv1.1 or GPLv2+ +URL: http://guac-dev.org/ + +Source0: %{name}-%{version}.tar.gz +Source1: %{name}.sysconfig +Source2: %{name}.service +Source3: %{name}.init + +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: doxygen +BuildRequires: libjpeg-devel +BuildRequires: libtool +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(freerdp) >= 1.0.2 +BuildRequires: pkgconfig(gnutls) +BuildRequires: pkgconfig(libpng) +BuildRequires: pkgconfig(libpulse) +BuildRequires: pkgconfig(libssh2) +BuildRequires: pkgconfig(libssl) +BuildRequires: pkgconfig(libtelnet) +BuildRequires: pkgconfig(libwebp) +BuildRequires: pkgconfig(ossp-uuid) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(vorbis) + +%{?_with_ffmpeg: +BuildRequires: pkgconfig(libavcodec) +BuildRequires: pkgconfig(libavutil) +BuildRequires: pkgconfig(libswscale) +} + +%if 0%{?rhel} == 6 +BuildRequires: libvncserver-devel +%else +BuildRequires: pkgconfig(libvncserver) +%endif + + +%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 main web application is provided by the "guacamole-client" package. + +%package -n libguac +Summary: The common library used by all C components of Guacamole + +%description -n libguac +libguac is the core library for guacd (the Guacamole proxy) and any protocol +support plugins for guacd. libguac provides efficient buffered I/O of text and +base64 data, as well as somewhat abstracted functions for sending Guacamole +instructions. + +%package -n libguac-devel +Summary: Development files for %{name} +Requires: libguac%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + +%description -n libguac-devel +The libguac-devel package contains libraries and header files for +developing applications that use %{name}. + +%package -n libguac-client-rdp +Summary: RDP support for guacd +Requires: libguac%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + +%description -n libguac-client-rdp +libguac-client-rdp is a protocol support plugin for the Guacamole proxy (guacd) +which provides support for RDP, the proprietary remote desktop protocol used by +Windows Remote Deskop / Terminal Services, via the libfreerdp library. + +%package -n libguac-client-ssh +Requires: libguac%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Summary: SSH support for guacd + +%description -n libguac-client-ssh +libguac-client-ssh is a protocol support plugin for the Guacamole proxy (guacd) +which provides support for SSH, the secure shell. + +%package -n libguac-client-vnc +Requires: libguac%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Summary: VNC support for guacd + +%description -n libguac-client-vnc +libguac-client-vnc is a protocol support plugin for the Guacamole proxy (guacd) +which provides support for VNC via the libvncclient library (part of +libvncserver). + +%package -n libguac-client-telnet +Requires: libguac%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Summary: Telnet support for guacd + +%description -n libguac-client-telnet +libguac-client-telnet is a protocol support plugin for the Guacamole proxy +(guacd) which provides support for Telnet via the libtelnet library. + +%package -n guacd +Summary: Proxy daemon for Guacamole +Requires(pre): shadow-utils +Requires: libguac%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + +%if 0%{?fedora} || 0%{?rhel} >= 7 +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +%endif + +%if 0%{?rhel} == 6 +Requires(post): /sbin/chkconfig +Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service +Requires(postun): /sbin/service +%endif + +%description -n guacd +guacd is the Guacamole proxy daemon used by the Guacamole web application and +framework to translate between arbitrary protocols and the Guacamole protocol. + +%prep +%autosetup + +%build +export CFLAGS="%{optflags} -Wno-error=deprecated-declarations" +autoreconf -vif +%configure \ + --disable-silent-rules \ + --disable-static + +%make_build +cd doc/ +doxygen Doxyfile + +%install +%make_install +find %{buildroot} -type f -name "*.la" -delete +cp -fr doc/doxygen-output/html . +%if 0%{?rhel} == 6 +rm -f html/installdox +%endif + +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig +install -p -m 644 -D %{SOURCE1} %{buildroot}%{_sysconfdir}/sysconfig/guacd +mkdir -p %{buildroot}%{_sharedstatedir}/guacd + +%if 0%{?fedora} || 0%{?rhel} >= 7 + +# Systemd unit files +mkdir -p %{buildroot}%{_unitdir} +install -p -m 644 -D %{SOURCE2} %{buildroot}%{_unitdir}/guacd.service + +%else + +# Initscripts +mkdir -p %{buildroot}%{_initrddir} +install -p -m 755 -D %{SOURCE3} %{buildroot}%{_initrddir}/guacd + +%endif + +%pre -n guacd +getent group %username >/dev/null || groupadd -r %username &>/dev/null || : +getent passwd %username >/dev/null || useradd -r -s /sbin/nologin \ + -d %{_sharedstatedir}/guacd -M -c 'Guacamole proxy daemon' -g %username %username &>/dev/null || : +exit 0 + +%if 0%{?fedora} || 0%{?rhel} >= 7 + +%post -n guacd +%systemd_post guacd.service + +%preun -n guacd +%systemd_preun guacd.service + +%postun -n guacd +%systemd_postun_with_restart guacd.service + +%endif + +%if 0%{?rhel} == 6 + +%post -n guacd +/sbin/chkconfig --add guacd + +%preun -n guacd +if [ "$1" = 0 ]; then + /sbin/service guacd stop >/dev/null 2>&1 || : + /sbin/chkconfig --del guacd +fi + +%postun -n guacd +if [ "$1" -ge "1" ]; then + /sbin/service guacd condrestart >/dev/null 2>&1 || : +fi + +%endif + +%ldconfig_scriptlets -n libguac + +%ldconfig_scriptlets -n libguac-client-rdp + +%ldconfig_scriptlets -n libguac-client-ssh + +%ldconfig_scriptlets -n libguac-client-vnc + +%ldconfig_scriptlets -n libguac-client-telnet + +%files -n libguac +%license LICENSE +%doc README CONTRIBUTING +%{_libdir}/libguac.so.* + +%files -n libguac-devel +%doc html +%{_includedir}/* +%{_libdir}/libguac.so + +# The libguac source code dlopen's these plugins, and they are named without +# the version in the shared object; i.e. "libguac-client-$(PROTOCOL).so". + +%files -n libguac-client-rdp +%{_libdir}/libguac-client-rdp.so +%{_libdir}/libguac-client-rdp.so.* +%{_libdir}/freerdp/*.so + +%files -n libguac-client-ssh +%{_libdir}/libguac-client-ssh.so +%{_libdir}/libguac-client-ssh.so.* + +%files -n libguac-client-vnc +%{_libdir}/libguac-client-vnc.so +%{_libdir}/libguac-client-vnc.so.* + +%files -n libguac-client-telnet +%{_libdir}/libguac-client-telnet.so +%{_libdir}/libguac-client-telnet.so.* + +%files -n guacd +%config(noreplace) %{_sysconfdir}/sysconfig/guacd +%{_bindir}/guaclog +%{?_with_ffmpeg: +%{_bindir}/guacenc +%{_mandir}/man1/guacenc.1.* +} +%{_mandir}/man1/guaclog.1.* +%{_mandir}/man5/guacd.conf.5.* +%{_mandir}/man8/guacd.8.* +%{_sbindir}/guacd +%if 0%{?fedora} || 0%{?rhel} >= 7 +%{_unitdir}/guacd.service +%else +%{_initrddir}/guacd +%endif +%attr(750,%{username},%{username}) %{_sharedstatedir}/guacd + +%changelog +* Thu May 02 2019 Jinguk Kwon - 1.1.0-1 +- Update to version 1.1.0. + +* Sat Jan 26 2019 Simone Caronni - 1.0.0-1 +- Update to version 1.0.0. + +* Tue Jul 03 2018 Simone Caronni - 0.9.14-1 +- Update to 0.9.14. +- Update SPEC file. + +* Tue Aug 15 2017 Simone Caronni - 1:0.9.13-1 +- Update to 0.9.13. + +* Wed Apr 05 2017 Simone Caronni - 1:0.9.12-1 +- Update to 0.9.12. + +* Thu Mar 02 2017 Simone Caronni - 1:0.9.11-2 +- Add conditional to build with optional FFmpeg support. + +* Thu Mar 02 2017 Simone Caronni - 1:0.9.11-1 +- Update to 0.9.11. + +* Sun Oct 09 2016 Simone Caronni - 1:0.9.9-3 +- Restore Epoch on all requirements; make it more flexible for rebases. +- Remove FreeRDP conditionals, always build support in EPEL 6/7. + +* Sat Oct 08 2016 Simone Caronni - 1:0.9.9-2 +- Restore Epoch. + +* Fri Apr 15 2016 Simone Caronni - 0.9.9-1 +- Update to 0.9.9. +- Add libwebp as a build requirement. +- Make FreeRDP conditional. +- Add OOSP UUID library build requirement. +- Update environment in service file. +- Use automatic dependency logic for FreeRDP libraries. +- Enable new telnet plugin. + +* Thu Oct 09 2014 Simone Caronni - 1:0.8.4-4 +- Also add epoch to the various components. + +* Tue Aug 26 2014 Simone Caronni - 1:0.8.4-3 +- Use automatic dependency logic for FreeRDP libraries. +- Update environment in service file. +- There is now VNC support (libvncserver) in all EPEL 7 arches. + +* Mon May 26 2014 Simone Caronni - 0.8.4-2 +- There is no VNC support (libvncserver) in EPEL 7 ppc/ppc64. + +* Mon May 26 2014 Simone Caronni - 0.8.4-1 +- Update to 0.8.4. + +* Mon Nov 18 2013 Simone Caronni - 0.8.3-5 +- Update patch for new autoconf. + +* Mon Nov 18 2013 Simone Caronni - 0.8.3-4 +- Require FreeRDP version >= 1.0.2 to avoid RDP refresh problems. + +* Thu Sep 05 2013 Simone Caronni - 0.8.3-3 +- Add autoconf patch for RHEL autconf compatibility. + +* Mon Sep 02 2013 Simone Caronni - 0.8.3-2 +- Add specific EPEL 6 workaround for really old autoconf version. + +* Wed Aug 28 2013 Simone Caronni - 0.8.3-1 +- Update to 0.8.3. +- Drop upstreamed patch. + +* Tue Jul 30 2013 Simone Caronni - 0.8.2-2 +- SysV init script was overwritten by mistake in SCM. + +* Tue Jul 16 2013 Simone Caronni - 0.8.2-1 +- First build. diff --git a/SPECS/guacamole-totp-1.1.0.spec b/SPECS/guacamole-totp-1.1.0.spec new file mode 100644 index 0000000..74b70a2 --- /dev/null +++ b/SPECS/guacamole-totp-1.1.0.spec @@ -0,0 +1,37 @@ +Name: guacamole-auth-totp +Version: 1.1.0 +Release: 1%{?dist} +Epoch: 1 +Summary: Guacamole supports TOTP as a second authentication factor. +License: MPLv1.1 or GPLv2+ +URL: http://guac-dev.org/ + +Source0: %{name}-%{version}.tar.gz + +%description +Guacamole authoriztion with TOTP + +#%package -n guacamole-totp +Summary: authentication with TOTP +Requires: tomcat%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + + +%prep +%autosetup + +%build + +%install +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/extensions +install -m 644 guacamole-auth-totp-%{version}.jar %{buildroot}/usr/share/tomcat/.guacamole/extensions/ + +%files +%defattr(-,root,root,-) +/usr/share/tomcat/.guacamole/extensions/guacamole-auth-totp-%{version}.jar + +%changelog +* Thu May 2 2019 kjg - 1.1.0-1 +- update for version 1.1.0. + +* Wed Apr 10 2019 kjg - 1.0.0-1 +- create version 1.0.0. diff --git a/SPECS/guacamole-totp.spec b/SPECS/guacamole-totp.spec index a370387..2ab572a 100644 --- a/SPECS/guacamole-totp.spec +++ b/SPECS/guacamole-totp.spec @@ -22,11 +22,12 @@ Requires: tomcat%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} %build %install -mkdir -p /usr/share/tomcat/.guacamole/extensions -cp guacamole-auth-totp-1.0.0.jar /usr/share/tomcat/.guacamole/extensions/ +mkdir -p %{buildroot}/usr/share/tomcat/.guacamole/extensions +install -m 644 guacamole-auth-totp-1.0.0.jar %{buildroot}/usr/share/tomcat/.guacamole/extensions/ %files %defattr(-,root,root,-) +/usr/share/tomcat/.guacamole/extensions/guacamole-auth-totp-1.0.0.jar %changelog * Wed Apr 10 2019 kjg - 1.0.0-1 diff --git a/SPECS/guacamole-web-1.1.0.spec b/SPECS/guacamole-web-1.1.0.spec new file mode 100644 index 0000000..860d329 --- /dev/null +++ b/SPECS/guacamole-web-1.1.0.spec @@ -0,0 +1,37 @@ +Name: guacamole +Version: 1.1.0 +Release: 1%{?dist} +Epoch: 1 +Summary: Web components from the Guacamole proxy +License: MPLv1.1 or GPLv2+ +URL: http://guac-dev.org/ + +Source0: %{name}-%{version}.war + +%description +Guacamole web application + +#%package -n guacamole-war +Summary: The main java guacamole war +Requires: tomcat%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + + +#%prep +#%autosetup + +%build + +%install +mkdir -p %{buildroot}/var/lib/tomcat/webapps +install -m 644 %{_sourcedir}/guacamole-%{version}.war %{buildroot}/var/lib/tomcat/webapps/guacamole.war + +%files +%defattr(-,root,root,-) +/var/lib/tomcat/webapps/guacamole.war + +%changelog +* Thu May 02 2019 kjg - 1.1.0-1 +- update for version 1.1.0. + +* Tue Apr 09 2019 kjg - 1.0.0-1 +- create version 1.0.0.