-%define xversion 1.16.0
+%define xversion 1.17.0
Summary: A TigerVNC remote display system
Summary(pl.UTF-8): System zdalnego dostępu TigerVNC
Name: tigervnc
-Version: 1.4.3
-Release: 2
+Version: 1.5.0
+Release: 1
License: GPL v2
Group: X11/Applications/Networking
Source0: https://github.com/TigerVNC/tigervnc/archive/v%{version}.tar.gz?/%{name}-%{version}.tar.gz
-# Source0-md5: 2177ee42fa1a3902b6feeaa7747f1c2a
+# Source0-md5: b11cc4c4d5249b9b8e355ee6f47ec4fe
Source1: %{name}.desktop
Source2: vncserver.init
Source3: vncserver.sysconfig
-Source4: vncserver.target
-Source5: vncserver-service-generator
Patch0: %{name}-cookie.patch
-Patch1: %{name}-ldnow.patch
-Patch3: %{name}-as-needed.patch
-Patch4: %{name}-ipv6.patch
-Patch5: %{name}-rh692048.patch
-Patch6: no-bashizm.patch
-Patch7: format-security.patch
-Patch8: tigervnc-xstartup.patch
-Patch9: xserver.patch
-Patch10: tigervnc-getmaster.patch
-Patch11: tigervnc-xserver-1.17.patch
+Patch1: %{name}-as-needed.patch
+Patch2: %{name}-rh692048.patch
+Patch3: tigervnc-xstartup.patch
+Patch4: tigervnc-getmaster.patch
+Patch5: xserver.patch
URL: http://www.tigervnc.com/
BuildRequires: ImageMagick
BuildRequires: ImageMagick-coder-png
Summary(pl.UTF-8): X serwer VNC - wersja TigerVNC
Group: X11/Applications/Networking
Requires(post,preun): /sbin/chkconfig
-Requires(post,preun,postun): systemd-units >= 38
Requires: xorg-app-rgb
# for vncpasswd tool
Requires: %{name}-utils = %{version}-%{release}
# for mcookie
Requires: util-linux
Requires: libjpeg-turbo
-Requires: systemd-units >= 38
Requires: xkeyboard-config
Requires: xorg-app-xauth
Requires: xorg-app-xkbcomp
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%patch3 -p1
-%patch4 -p0
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-%patch10 -p1
-%patch11 -p1
+%patch4 -p1
cp -a %{_usrsrc}/xorg-xserver-server-%{_xserverver}/* unix/xserver
cd unix/xserver
-%patch9 -p1
+%patch5 -p1
%build
%cmake .
%{__automake}
export CXXFLAGS="%{rpmcxxflags} -fpermissive"
%configure \
- --with-os-name="PLD/Linux" \
- --with-os-vendor="PLD/Team" \
+ --with-os-name="TLD/Linux" \
+ --with-os-vendor="TLD/Linux" \
--disable-config-dbus \
--disable-config-hal \
--disable-config-udev \
install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vncserver
install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/vncserver
-install -d $RPM_BUILD_ROOT{%{systemdunitdir},/lib/systemd/system-generators}
-install -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/vncserver.target
-install -p %{SOURCE5} $RPM_BUILD_ROOT/lib/systemd/system-generators/vncserver-service-generator
-ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vncserver.service
-
%{__rm} -r $RPM_BUILD_ROOT%{_docdir}
%find_lang %{name}
/sbin/chkconfig --add vncserver
%service vncserver restart "VNC server"
NORESTART=1
-%systemd_post vncserver.target
%preun server
if [ "$1" = "0" ]; then
%service vncserver stop
/sbin/chkconfig --del vncserver
fi
-%systemd_preun vncserver.target
-
-%postun server
-%systemd_reload
-
-%triggerpostun server -- tigervnc-server < 1.3.0-5
-[ -f /etc/sysconfig/rpm ] && . /etc/sysconfig/rpm
-[ ${RPM_ENABLE_SYSTEMD_SERVICE:-yes} = no ] && return 1
-export SYSTEMD_LOG_LEVEL=warning SYSTEMD_LOG_TARGET=syslog
-if [ "$(echo /etc/rc.d/rc[0-6].d/S[0-9][0-9]vncserver)" != "/etc/rc.d/rc[0-6].d/S[0-9][0-9]vncserver" ]; then
- /bin/systemctl --quiet enable vncserver.target || :
-fi
%files -f %{name}.lang
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/x0vncserver
%attr(754,root,root) /etc/rc.d/init.d/vncserver
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vncserver
-%attr(755,root,root) /lib/systemd/system-generators/vncserver-service-generator
-%{systemdunitdir}/vncserver.target
-%{systemdunitdir}/vncserver.service
%{_mandir}/man1/Xvnc.1*
%{_mandir}/man1/vncserver.1*
%{_mandir}/man1/x0vncserver.1*
+++ /dev/null
-#!/bin/sh
-
-destunitdir=${1:-/tmp}
-
-# Do nothing if vncserver target is disabled
-[ -e /etc/systemd/system/multi-user.target.wants/vncserver.target ] || exit 0
-
-VNCSERVERS=""
-[ -f /etc/sysconfig/vncserver ] && . /etc/sysconfig/vncserver
-
-if [ -d $destunitdir/vncserver.target.wants ]; then
- rm -f $destunitdir/vncserver.target.wants/vncserver@*.service
-else
- mkdir -p $destunitdir/vncserver.target.wants
-fi
-
-for display in $VNCSERVERS; do
- DISP="${display%%:*}"
- USER="${display##*:}"
- if [ "x$USER" == "xroot" ]; then
- echo "-- Do not run vncserver as root!"
- continue
- fi
- VNCUSERARGS="${VNCSERVERARGS[${DISP}]}"
- if [ ! id $USER >/dev/null 2>&1 ]; then
- echo "-- User $USER does not exists!"
- continue
- fi
- USERHOME=$(eval "echo ~$USER")
- if [ ! -f "$USERHOME/.vnc/passwd" ]; then
- echo "-- No password file found for user $USER!"
- continue
- fi
- cat >$destunitdir/vncserver.target.wants/vncserver@$DISP.service <<EOF
-[Unit]
-Description=Remote desktop service (VNC) on display %i
-Requires=vncserver.target
-After=vncserver.target
-PropagateReloadFrom=vncserver.target
-
-[Service]
-Type=simple
-ExecStart=/sbin/runuser -l $USER -c "/usr/bin/vncserver -fg :%i $VNCUSERARGS"
-ExecStop=/sbin/runuser -l $USER -c "/usr/bin/vncserver -kill :%i"
-
-[Install]
-WantedBy=vncserver.target
-EOF
-done