File x2gobroker.spec of Package x2gobroker
#
# spec file for package x2gobroker
#
# 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/
#
Name: x2gobroker
Version: 0.0.4.3
Release: 0
Summary: X2Go http(s) based session broker
License: AGPL-3.0-or-later
Group: Productivity/Networking/Other
URL: https://x2go.org/
#DL-URL: http://code.x2go.org/releases/source/x2gobroker/
#Git-Clone: git://code.x2go.org/x2gobroker
#Git-Web: http://code.x2go.org/gitweb?p=x2gobroker.git;a=summary
Source: http://code.x2go.org/releases/source/%name/%name-%version.tar.gz
Source2: http://code.x2go.org/releases/source/%name/%name-%version.tar.gz.asc
Source3: %name.keyring
Source4: %name-rpmlintrc
BuildRequires: fdupes
BuildRequires: gcc
BuildRequires: python3-base
BuildRequires: python3-setuptools
BuildRequires: sudo
BuildRequires: pkgconfig(systemd)
BuildRequires: systemd-rpm-macros
BuildRequires: sysuser-tools
Requires: logrotate
Requires: python3-argparse
Requires: python3-base >= 2.6
Requires: python3-daemon
Requires: python3-lockfile
Requires: python3-netaddr
Requires: python3-pampy
Requires: python3-paramiko
Requires: python3-setproctitle
Requires: python3-tornado
Requires: python3-wsgilog
Requires: sudo
%sysusers_requires
%description
X2Go is a server based computing environment with
* session resuming
* low bandwidth support
* session brokerage support
* client side mass storage mounting support
* client side printing support
* audio support
* authentication by smartcard and USB stick
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains the x2gobroker executable.
%package -n python3-x2gobroker
Summary: X2Go Session Broker (Python3 module)
Requires: python3
Requires: python3-daemon
Requires: python3-lockfile
Requires: python3-netaddr
Requires: python3-paramiko
Requires: python3-tornado
Group: Productivity/Networking/Other
%if 0%{?suse_version}
Requires: python3-pampy
%else
Requires: python3-pam
%endif
Requires(post): permissions
Requires(verify): permissions
%description -n python3-x2gobroker
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains the broker's Python3 library.
%package authservice
Summary: X2Go Session Broker (PAM authentication service)
Requires: logrotate
Requires: python3
Requires: python3-setproctitle
Requires(pre): python3-x2gobroker = %version-%release
Group: Productivity/Networking/Other
%if 0%{?suse_version}
Requires: python3-pampy
%else
Requires: python3-pam
%endif
Requires(post): permissions
Requires(verify): permissions
%description authservice
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains the authentication service against the PAM system.
%package loadchecker
Summary: X2Go Session Broker (load checker service)
Requires: logrotate
Requires: python3
Requires: python3-setproctitle
Requires(pre): python3-x2gobroker = %version-%release
Group: Productivity/Networking/Other
Requires(post): permissions
Requires(verify): permissions
%description loadchecker
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains the load checker service required for broker setups
with dynamic load balancing.
%package daemon
Summary: X2Go Session Broker (standalone daemon)
Requires: logrotate
Requires: x2gobroker = %version-%release
Requires: x2gobroker-authservice = %version-%release
Group: Productivity/Networking/Other
Requires(post): permissions
Requires(verify): permissions
%description daemon
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains the start-stop script that installs the X2Go Session Broker
as standalone daemon.
%package ssh
Summary: X2Go Session Broker (SSH broker)
Requires: x2gobroker = %version-%release
Group: Productivity/Networking/Other
Requires(post): permissions
Requires(verify): permissions
%description ssh
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This add-on package provides fully-featured SSH brokerage support (with access
to broker agents on remote X2Go servers).
%package wsgi
Summary: X2Go Session Broker (WSGI)
Requires: logrotate
Requires: python3
Requires: x2gobroker = %version-%release
Requires: x2gobroker-authservice = %version-%release
Group: Productivity/Networking/Other
%if 0%{?suse_version}
Requires: apache2
Requires: apache2-mod_wsgi
%else
Requires: httpd
Requires: mod_wsgi
%endif
Requires(post): permissions
Requires(verify): permissions
%description wsgi
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains an Apache2 configuration that installs the X2Go Session
Broker as a WSGI application into a running Apache2 httpd.
%package agent
Summary: X2Go Session Broker (remote agent)
Requires: python3
Requires: python3-paramiko
Requires: python3-setproctitle
Requires: perl(File::Which)
Group: Productivity/Networking/Other
%if 0%{?suse_version}
%if 0%{?suse_version} < 1140
Requires: perl = %perl_version
%else
%perl_requires
%endif
%else
Requires: perl(:MODULE_COMPAT_%(eval, "`perl, -V:version`";, echo, $version))
%endif
%if 0%{?fedora} || 0%{?rhel}
BuildRequires: perl-generators
%endif
Requires(post): permissions
Requires(verify): permissions
%description agent
The session broker is a server tool for X2Go that tells your X2Go Client
application in a terminal server cluster what servers and session types are
most appropriate for the user in front of the X2Go terminal.
A session broker is most useful in load balanced X2Go server farms.
This package contains a setuid agent command that extends X2Go Session Broker
functionality. It has to be installed on X2Go Servers that shall be
controlled via a session broker.
The broker agent provides means to the X2Go Session Broker for controlling
the X2Go Server it is installed on (e.g. suspend/terminate sessions, deploy
SSH login keys, detect server load, detect running/suspended sessions
of connecting users, etc.).
WARNING: This package installs a setuid wrapper
(%_libdir/x2go/broker/x2gobroker-agent) on your system. This setuid wrapper
aims to be a secure replacement for the deprecated suidperl exectuable that
was removed from Perl (>= 5.12).
This wrapper is only able to execute the Perl script
%_libdir/x2go/broker/x2gobroker-agent.pl. For running properly,
x2gobroker-agent.pl needs setuid root privileges.
If you hesitate to install this package, study the code of the named wrapper
and the named Perl script beforehand. Note that the X2Go session broker will
lack functionality, but it will work without this x2gobroker-agent component
installed on your to-be-managed X2Go servers.
%prep
%autosetup -p1
find . -type f -name "x2gobroker*" -exec sed -i -e 's|\/usr\/bin\/env python3|\/usr\/bin\/python|g' {} \;
%if 0%{?fedora}
%check
python3 test.py
%endif
%build
echo "Files where we will be patching libexecedir:"
find . -type f -exec grep -l "%_prefix/lib/x2go/" "{}" "+"
find . -type f -exec grep -l "%_prefix/lib/x2go/" "{}" "+" | \
xargs perl -i -pe 's{%_prefix/lib/x2go/}{%_libexecdir/x2go/}'
%if 0%{?el6}
sed -i etc/broker/x2gobroker-sessionprofiles.conf \
-e 's/localhost-mate/localhost-gnome/' \
-e 's/^name=MATE - localhost/name=GNOME - localhost/' \
-e 's/^command=MATE/command=GNOME/'
%endif
sed -i logrotate/x2gobroker-authservice \
-e 's/adm/root/'
sed -i logrotate/x2gobroker-loadchecker \
-e 's/adm/root/'
sed -i logrotate/x2gobroker-daemon \
-e 's/adm/root/'
sed -i logrotate/x2gobroker-wsgi \
-e 's/adm/root/'
%make_build PREFIX="%_prefix" LIBDIR="%_libexecdir" CFLAGS="%{?__global_cppflags} %{?__global_cflags} %optflags" LDFLAGS="%{?__global_ldflags}"
%install
b=%buildroot
# work around install bug
# :: install: cannot stat 'man/man1/x2gobroker-daemon.1*': No such file or directory
ln -s x2gobroker.1 man/man1/x2gobroker-daemon.1
ln -s x2gobroker.1 man/man1/x2gobroker-ssh.1
make install PREFIX="%_prefix" LIBDIR="%_libexecdir" DESTDIR="$b"
#
# Somewhat distro specific (especially the paths), thus this was not
# done in the shipped tarball's Makefile
#
%if 0%{?suse_version}
mkdir -p "$b/%_sysconfdir/apache2"/{conf.d,vhosts.d}
ln -s "%_sysconfdir/x2go/x2gobroker-wsgi.apache.conf" \
"$b/%_sysconfdir/apache2/conf.d/x2gobroker-wsgi.conf"
ln -s "%_sysconfdir/x2go/x2gobroker-wsgi.apache.vhost" \
"$b/%_sysconfdir/apache2/vhosts.d/x2gobroker-wsgi.sample"
%else
mkdir -p "$b/%_sysconfdir/httpd"/{conf.d,vhosts.d}
ln -s "%_sysconfdir/x2go/x2gobroker-wsgi.apache.conf" \
"$b/%_sysconfdir/httpd/conf.d/x2gobroker-wsgi.conf"
ln -s "%_sysconfdir/x2go/x2gobroker-wsgi.apache.vhost" \
"$b/%_sysconfdir/httpd/vhosts.d/x2gobroker-wsgi.sample"
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
# System.d session cleanup script
mkdir -p "%buildroot%_unitdir"
mkdir -p %buildroot%_sbindir
install -pm0644 'x2gobroker-daemon.service' "%buildroot%_unitdir"
ln -s %_sbindir/service %buildroot%_sbindir/rcx2gobroker-daemon
install -pm0644 'x2gobroker-authservice.service' "%buildroot%_unitdir"
ln -s %_sbindir/service %buildroot%_sbindir/rcx2gobroker-authservice
install -pm0644 'x2gobroker-loadchecker.service' "%buildroot%_unitdir"
ln -s %_sbindir/service %buildroot%_sbindir/rcx2gobroker-loadchecker
#
rm -f "%buildroot%_sysconfdir/default/x2gobroker-daemon"
rm -f "%buildroot%_sysconfdir/default/x2gobroker-authservice"
rm -f "%buildroot%_sysconfdir/default/x2gobroker-loadchecker"
rm -f "%buildroot%_sysconfdir/default/python-x2gobroker"
%else
%if 0%{?el6} || ( 0%{?suse_version} && 0%{?suse_version} < 1140)
rm -f "%buildroot%_sysconfdir/x2go/broker/defaults.conf"
mkdir -p "$b/%_initddir"
install -pm0755 "%SOURCE3" \
"$b/%_initddir/x2gobroker-loadchecker"
install -pm0755 "%SOURCE2" \
"$b/%_initddir/x2gobroker-authservice"
install -pm0755 "%SOURCE1" \
"$b/%_initddir/x2gobroker-daemon"
%endif
%endif
mkdir -p "$b/%_sysusersdir"
echo 'u x2gobroker - "X2Go Broker System User" %_localstatedir/lib/x2gobroker' >system-user-x2gobroker.conf
cp -a system-user-*.conf "$b/%_sysusersdir/"
%sysusers_generate_pre system-user-x2gouser.conf snip-x2gobroker system-user-x2gobroker.conf
# Delete tmpfiles.d configuration file on systems
# not using systemd.
%if ( ! 0%{?fedora} ) && ( ( 0%{?rhel} && 0%{?rhel} < 7 ) || ( 0%{?suse_version} && 0%{?suse_version} < 1210 ) )
rm -f "%buildroot/%_libexecdir/tmpfiles.d/"*.conf
%endif
#
# Totally distro-specific
#
%if 0%{?fdupes:1}
%fdupes "%buildroot/%_prefix"
%endif
%pre -n python3-x2gobroker -f snip-x2gobroker.pre
%if 0%{?suse_version}
%post -n python3-x2gobroker
%set_permissions "%_localstatedir/log/x2gobroker"
%verifyscript -n python3-x2gobroker
%verify_permissions -e "%_localstatedir/log/x2gobroker"
%endif
%if 0%{?suse_version} >= 1230
%pre authservice
%service_add_pre x2gobroker-authservice.service
%endif
%post authservice
%tmpfiles_create %_tmpfilesdir/x2gobroker-authservice.conf
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%if 0%{?suse_version}
%service_add_post x2gobroker-authservice.service
%else
%systemd_post x2gobroker-authservice.service
%endif
%else
/sbin/chkconfig --add 'x2gobroker-authservice'
if [ "$1" -ge "1" ] ; then
/sbin/service 'x2gobroker-authservice' 'condrestart' >'/dev/null' 2>&1 || :
fi
%endif
%if 0%{?suse_version}
%set_permissions "%_localstatedir/log/x2gobroker"
%verifyscript authservice
%verify_permissions -e "%_localstatedir/log/x2gobroker"
%endif
%preun authservice
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%if 0%{?suse_version}
%service_del_preun x2gobroker-authservice.service
%else
%systemd_preun x2gobroker-authservice.service
%endif
%else
if [ "$1" = 0 ]; then
/sbin/service 'x2gobroker-authservice' 'stop' >'/dev/null' 2>&1
/sbin/chkconfig --del 'x2gobroker-authservice'
fi
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%postun authservice
%if 0%{?suse_version}
%service_del_postun x2gobroker-authservice.service
%else
%systemd_postun x2gobroker-authservice.service
%endif
%endif
%if 0%{?suse_version} >= 1230
%pre loadchecker
%service_add_pre x2gobroker-loadchecker.service
%endif
%post loadchecker
%tmpfiles_create %_tmpfilesdir/x2gobroker-loadchecker.conf
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%if 0%{?suse_version}
%service_add_post x2gobroker-loadchecker.service
%else
%systemd_post x2gobroker-loadchecker.service
%endif
%else
/sbin/chkconfig --add 'x2gobroker-loadchecker'
if [ "$1" -ge "1" ] ; then
/sbin/service 'x2gobroker-loadchecker' 'condrestart' >'/dev/null' 2>&1 || :
fi
%endif
%if 0%{?suse_version}
%set_permissions "%_localstatedir/log/x2gobroker"
%verifyscript loadchecker
%verify_permissions -e "%_localstatedir/log/x2gobroker"
%endif
%preun loadchecker
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%if 0%{?suse_version}
%service_del_preun x2gobroker-loadchecker.service
%else
%systemd_preun x2gobroker-loadchecker.service
%endif
%else
if [ "$1" = 0 ]; then
/sbin/service 'x2gobroker-loadchecker' 'stop' >'/dev/null' 2>&1
/sbin/chkconfig --del 'x2gobroker-loadchecker'
fi
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%postun loadchecker
%if 0%{?suse_version}
%service_del_postun x2gobroker-loadchecker.service
%else
%systemd_postun x2gobroker-loadchecker.service
%endif
%endif
%if 0%{?suse_version} >= 1230
%pre daemon
%service_add_pre x2gobroker-daemon.service
%endif
%post daemon
%tmpfiles_create %_tmpfilesdir/x2gobroker-daemon.conf
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%if 0%{?suse_version}
%service_add_post x2gobroker-daemon.service
%else
%systemd_post x2gobroker-daemon.service
%endif
%else
/sbin/chkconfig --add 'x2gobroker-daemon'
if [ "$1" -ge "1" ] ; then
/sbin/service 'x2gobroker-daemon' 'condrestart' >'/dev/null' 2>&1 || :
fi
%endif
%if 0%{?suse_version}
%set_permissions "%_localstatedir/log/x2gobroker"
%verifyscript daemon
%verify_permissions -e "%_localstatedir/log/x2gobroker"
%endif
%preun daemon
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%if 0%{?suse_version}
%service_del_preun x2gobroker-daemon.service
%else
%systemd_preun x2gobroker-daemon.service
%endif
%else
if [ "$1" = 0 ]; then
/sbin/service 'x2gobroker-daemon' 'stop' >'/dev/null' 2>&1
/sbin/chkconfig --del 'x2gobroker-daemon'
fi
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%postun daemon
%if 0%{?suse_version}
%service_del_postun x2gobroker-daemon.service
%else
%systemd_postun x2gobroker-daemon.service
%endif
%endif
%post ssh
if ! %_bindir/getent 'group' 'x2gobroker-users' 1>'/dev/null' 2>'/dev/null'; then
%_sbindir/groupadd -r 'x2gobroker-users'
fi
%if 0%{?suse_version}
%set_permissions '%_bindir/x2gobroker-ssh'
%verifyscript ssh
%verify_permissions -e '%_bindir/x2gobroker-ssh'
%endif
%pre agent -f snip-x2gobroker.pre
%if 0%{?suse_version}
%post agent
%set_permissions "%_libexecdir/x2go/x2gobroker-agent"
%set_permissions "%_localstatedir/log/x2gobroker"
%verifyscript agent
%verify_permissions -e "%_libexecdir/x2go/x2gobroker-agent"
%verify_permissions -e "%_localstatedir/log/x2gobroker"
%endif
%if 0%{?suse_version}
%post wsgi
%set_permissions "%_libexecdir/x2gobroker/wsgi/x2gobroker-wsgi"
%set_permissions "%_localstatedir/log/x2gobroker"
%verifyscript wsgi
%verify_permissions -e "%_localstatedir/log/x2gobroker"
%endif
%files
%license COPYING
%doc README ChangeLog
%_bindir/x2gobroker
%_bindir/x2gobroker-testauth
%_sbindir/x2gobroker-keygen
%_sbindir/x2gobroker-testagent
%_mandir/man1/x2gobroker*.1%{?ext_man}
%exclude %_mandir/man1/x2gobroker-ssh.1*
%exclude %_mandir/man1/x2gobroker-daemon.1*
%_mandir/man8/x2gobroker-keygen.8%{?ext_man}
%_mandir/man8/x2gobroker-testagent.8%{?ext_man}
%files -n python3-x2gobroker
%license COPYING
%doc README ChangeLog
%config(noreplace) %_sysconfdir/x2go
%exclude %_sysconfdir/x2go/x2gobroker-wsgi.apache.conf
%exclude %_sysconfdir/x2go/x2gobroker-wsgi.apache.vhost
%config %_sysconfdir/pam.d
%if 0%{?el6} || (0%{?suse_version} && 0%{?suse_version} < 1140)
%config %_sysconfdir/default/python-x2gobroker
%endif
%python3_sitelib/x2gobroker*
%attr(02750,x2gobroker,x2gobroker) %_localstatedir/log/x2gobroker
%attr(00750,x2gobroker,x2gobroker) %_localstatedir/lib/x2gobroker
%files authservice
%license COPYING
%doc README ChangeLog
%ghost %_rundir/%name
%if 0%{?el6}
%_initddir/x2gobroker-authservice
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%_unitdir/x2gobroker-authservice.service
%_sbindir/rcx2gobroker-authservice
%endif
%if 0%{?el6} || (0%{?suse_version} && 0%{?suse_version} < 1140)
%config %_sysconfdir/default/x2gobroker-authservice
%endif
%config %_sysconfdir/logrotate.d/x2gobroker-authservice
%_sbindir/x2gobroker-authservice
%_mandir/man8/x2gobroker-authservice.8%{?ext_man}
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1210
%dir %_libexecdir/tmpfiles.d
%_libexecdir/tmpfiles.d/x2gobroker-authservice.conf
%endif
%attr(02750,x2gobroker,x2gobroker) %_localstatedir/log/x2gobroker
%files loadchecker
%license COPYING
%doc README ChangeLog
%ghost %_rundir/%name
%if 0%{?el6}
%_initddir/x2gobroker-loadchecker
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%_unitdir/x2gobroker-loadchecker.service
%_sbindir/rcx2gobroker-loadchecker
%endif
%if 0%{?el6} || (0%{?suse_version} && 0%{?suse_version} < 1140)
%config %_sysconfdir/default/x2gobroker-loadchecker
%endif
%config %_sysconfdir/logrotate.d/x2gobroker-loadchecker
%_sbindir/x2gobroker-loadchecker
%_mandir/man8/x2gobroker-loadchecker.8%{?ext_man}
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1210
%dir %_libexecdir/tmpfiles.d
%_libexecdir/tmpfiles.d/x2gobroker-loadchecker.conf
%endif
%attr(02750,x2gobroker,x2gobroker) %_localstatedir/log/x2gobroker
%files daemon
%license COPYING
%doc README ChangeLog
%ghost %_rundir/%name
%_bindir/x2gobroker-daemon
%if 0%{?el6}
%_initddir/x2gobroker-daemon
%endif
%if 0%{?fedora} || 0%{?el7} || 0%{?suse_version} >= 1230
%_unitdir/x2gobroker-daemon.service
%_sbindir/rcx2gobroker-daemon
%endif
%if 0%{?el6} || (0%{?suse_version} && 0%{?suse_version} < 1140)
%config %_sysconfdir/default/x2gobroker-daemon
%endif
%_sbindir/x2gobroker-daemon-debug
%_mandir/man1/x2gobroker-daemon.1%{?ext_man}
%_mandir/man8/x2gobroker-daemon-debug.8%{?ext_man}
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1210
%dir %_libexecdir/tmpfiles.d
%_libexecdir/tmpfiles.d/x2gobroker-daemon.conf
%endif
%config %_sysconfdir/logrotate.d/x2gobroker-daemon
%attr(02750,x2gobroker,x2gobroker) %_localstatedir/log/x2gobroker
%files ssh
%license COPYING
%doc README ChangeLog
%attr(04550,x2gobroker,x2gobroker-users) %_bindir/x2gobroker-ssh
%_mandir/man1/x2gobroker-ssh.1%{?ext_man}
%config(noreplace) %_sysconfdir/sudoers.d/x2gobroker-ssh
%files wsgi
%license COPYING
%doc README ChangeLog
%if 0%{?suse_version}
%_sysconfdir/apache2
%else
%_sysconfdir/httpd
%endif
%attr(02750,x2gobroker,x2gobroker) %_localstatedir/log/x2gobroker
%config %_sysconfdir/x2go/x2gobroker-wsgi.apache.conf
%config %_sysconfdir/x2go/x2gobroker-wsgi.apache.vhost
%config %_sysconfdir/logrotate.d/x2gobroker-wsgi
%dir "%_libexecdir/x2gobroker"
%dir "%_libexecdir/x2gobroker/wsgi"
"%_libexecdir/x2gobroker/wsgi/x2gobroker-wsgi"
%files agent
%license COPYING
%doc README ChangeLog
%attr(02750,x2gobroker,x2gobroker) %_localstatedir/log/x2gobroker
%attr(00750,x2gobroker,x2gobroker) %_localstatedir/lib/x2gobroker
%dir %_libexecdir/x2go
%attr(04750,root,x2gobroker) %_libexecdir/x2go/x2gobroker-agent
%_libexecdir/x2go/x2gobroker-agent.pl
%_sbindir/x2gobroker-pubkeyauthorizer
%_mandir/man8/x2gobroker-pubkeyauthorizer.8%{?ext_man}
%_sysusersdir/*
%changelog