import tigervnc-1.9.0-12.el8
This commit is contained in:
parent
b93853e86d
commit
96eb36ba55
@ -0,0 +1,13 @@
|
|||||||
|
diff --git a/unix/vncserver b/unix/vncserver
|
||||||
|
index bb4f2feb..68be032d 100755
|
||||||
|
--- a/unix/vncserver
|
||||||
|
+++ b/unix/vncserver
|
||||||
|
@@ -709,7 +709,7 @@ sub List
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
- exit 1;
|
||||||
|
+ exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
45
SOURCES/vncserver-system.service
Normal file
45
SOURCES/vncserver-system.service
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
# The vncserver service unit file
|
||||||
|
#
|
||||||
|
# Quick HowTo:
|
||||||
|
# 1. Copy this file to /etc/systemd/system/vncserver@.service
|
||||||
|
# 2. Replace <USER> with the actual user name and edit vncserver
|
||||||
|
# parameters in the wrapper script located in /usr/bin/vncserver_wrapper
|
||||||
|
# 3. Run `systemctl daemon-reload`
|
||||||
|
# 4. Run `systemctl enable vncserver@:<display>.service`
|
||||||
|
#
|
||||||
|
# DO NOT RUN THIS SERVICE if your local area network is
|
||||||
|
# untrusted! For a secure way of using VNC, you should
|
||||||
|
# limit connections to the local host and then tunnel from
|
||||||
|
# the machine you want to view VNC on (host A) to the machine
|
||||||
|
# whose VNC output you want to view (host B)
|
||||||
|
#
|
||||||
|
# [user@hostA ~]$ ssh -v -C -L 590N:localhost:590M hostB
|
||||||
|
#
|
||||||
|
# this will open a connection on port 590N of your hostA to hostB's port 590M
|
||||||
|
# (in fact, it ssh-connects to hostB and then connects to localhost (on hostB).
|
||||||
|
# See the ssh man page for details on port forwarding)
|
||||||
|
#
|
||||||
|
# You can then point a VNC client on hostA at vncdisplay N of localhost and with
|
||||||
|
# the help of ssh, you end up seeing what hostB makes available on port 590M
|
||||||
|
#
|
||||||
|
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
|
||||||
|
#
|
||||||
|
# Use "-localhost" to prevent remote VNC clients connecting except when
|
||||||
|
# doing so through a secure tunnel. See the "-via" option in the
|
||||||
|
# `man vncviewer' manual page.
|
||||||
|
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=Remote desktop service (VNC)
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
|
||||||
|
# Clean any existing files in /tmp/.X11-unix environment
|
||||||
|
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
|
||||||
|
ExecStart=/usr/bin/vncserver_wrapper <USER> %i
|
||||||
|
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
42
SOURCES/vncserver_wrapper
Executable file
42
SOURCES/vncserver_wrapper
Executable file
@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
USER="$1"
|
||||||
|
INSTANCE="$2"
|
||||||
|
|
||||||
|
die() {
|
||||||
|
echo "FATAL: ${@:-}" >&2
|
||||||
|
exit 2
|
||||||
|
}
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
[ -n "$VNCPID" ] || return
|
||||||
|
if kill -0 $VNCPID 2>/dev/null; then
|
||||||
|
kill $VNCPID
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
trap cleanup TERM INT HUP
|
||||||
|
|
||||||
|
[ -n "$USER" -a -n "$INSTANCE" ] || die "Invalid usage!"
|
||||||
|
|
||||||
|
/usr/sbin/runuser -l "$USER" -c "/usr/bin/vncserver ${INSTANCE}"
|
||||||
|
[ $? -eq 0 ] || die "'runuser -l $USER' failed!"
|
||||||
|
|
||||||
|
# Wait up to 5 seconds for vncserver to be up
|
||||||
|
for tries in $(seq 1 50); do
|
||||||
|
[ -e "~$USER/.vnc/$(hostname)${INSTANCE}.pid" ] && break
|
||||||
|
sleep 0.1
|
||||||
|
done
|
||||||
|
|
||||||
|
eval HOME=~$USER
|
||||||
|
|
||||||
|
VNCPID=$(cat "$HOME/.vnc/$(hostname)${INSTANCE}.pid" 2>/dev/null || true)
|
||||||
|
[ -n "$VNCPID" ] || die "'vncserver ${INSTANCE}' failed to start after 5 seconds!"
|
||||||
|
|
||||||
|
echo "'vncserver ${INSTANCE}' has PID $VNCPID, waiting until it exits ..."
|
||||||
|
|
||||||
|
while kill -0 $VNCPID 2>/dev/null; do
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "PID $VNCPID exited, exiting ..."
|
@ -1,6 +1,6 @@
|
|||||||
Name: tigervnc
|
Name: tigervnc
|
||||||
Version: 1.9.0
|
Version: 1.9.0
|
||||||
Release: 9%{?dist}
|
Release: 12%{?dist}
|
||||||
Summary: A TigerVNC remote display system
|
Summary: A TigerVNC remote display system
|
||||||
|
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
@ -9,11 +9,13 @@ License: GPLv2+
|
|||||||
URL: http://www.tigervnc.com
|
URL: http://www.tigervnc.com
|
||||||
|
|
||||||
Source0: %{name}-%{version}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
Source1: vncserver.service
|
Source1: vncserver-system.service
|
||||||
Source2: vncserver.sysconfig
|
Source2: vncserver-user.service
|
||||||
Source3: 10-libvnc.conf
|
Source3: vncserver.sysconfig
|
||||||
Source4: xvnc.service
|
Source4: 10-libvnc.conf
|
||||||
Source5: xvnc.socket
|
Source5: xvnc.service
|
||||||
|
Source6: xvnc.socket
|
||||||
|
Source7: vncserver_wrapper
|
||||||
|
|
||||||
Patch1: tigervnc-manpages.patch
|
Patch1: tigervnc-manpages.patch
|
||||||
Patch2: tigervnc-getmaster.patch
|
Patch2: tigervnc-getmaster.patch
|
||||||
@ -26,6 +28,7 @@ Patch8: tigervnc-let-user-know-about-not-using-view-only-password.patch
|
|||||||
Patch9: tigervnc-working-tls-on-fips-systems.patch
|
Patch9: tigervnc-working-tls-on-fips-systems.patch
|
||||||
Patch11: tigervnc-utilize-system-crypto-policies.patch
|
Patch11: tigervnc-utilize-system-crypto-policies.patch
|
||||||
Patch12: tigervnc-passwd-crash-with-malloc-checks.patch
|
Patch12: tigervnc-passwd-crash-with-malloc-checks.patch
|
||||||
|
Patch13: tigervnc-vncserver-do-not-return-returncode-indicating-error.patch
|
||||||
|
|
||||||
Patch50: tigervnc-covscan.patch
|
Patch50: tigervnc-covscan.patch
|
||||||
|
|
||||||
@ -185,6 +188,8 @@ popd
|
|||||||
|
|
||||||
%patch12 -p1 -b .passwd-crash-with-malloc-checks
|
%patch12 -p1 -b .passwd-crash-with-malloc-checks
|
||||||
|
|
||||||
|
%patch13 -p1 -b .vncserver-do-not-return-returncode-indicating-error
|
||||||
|
|
||||||
%patch50 -p1 -b .tigervnc-covscan
|
%patch50 -p1 -b .tigervnc-covscan
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -240,15 +245,19 @@ make install DESTDIR=%{buildroot}
|
|||||||
popd
|
popd
|
||||||
|
|
||||||
# Install systemd unit file
|
# Install systemd unit file
|
||||||
mkdir -p %{buildroot}%{_userunitdir}
|
|
||||||
install -m644 %{SOURCE1} %{buildroot}%{_userunitdir}/vncserver@.service
|
|
||||||
mkdir -p %{buildroot}%{_unitdir}
|
mkdir -p %{buildroot}%{_unitdir}
|
||||||
install -m644 %{SOURCE4} %{buildroot}%{_unitdir}/xvnc@.service
|
mkdir -p %{buildroot}%{_userunitdir}
|
||||||
install -m644 %{SOURCE5} %{buildroot}%{_unitdir}/xvnc.socket
|
install -m644 %{SOURCE1} %{buildroot}%{_unitdir}/vncserver@.service
|
||||||
|
install -m644 %{SOURCE2} %{buildroot}%{_userunitdir}/vncserver@.service
|
||||||
|
install -m644 %{SOURCE5} %{buildroot}%{_unitdir}/xvnc@.service
|
||||||
|
install -m644 %{SOURCE6} %{buildroot}%{_unitdir}/xvnc.socket
|
||||||
rm -rf %{buildroot}%{_initrddir}
|
rm -rf %{buildroot}%{_initrddir}
|
||||||
|
|
||||||
|
# Install vncserver wrapper script
|
||||||
|
install -m744 %{SOURCE7} %{buildroot}%{_bindir}/vncserver_wrapper
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
|
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
|
||||||
install -m644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/vncservers
|
install -m644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/vncservers
|
||||||
|
|
||||||
# Install desktop stuff
|
# Install desktop stuff
|
||||||
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/{16x16,24x24,48x48}/apps
|
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/{16x16,24x24,48x48}/apps
|
||||||
@ -276,7 +285,7 @@ rm -f %{buildroot}%{_libdir}/xorg/modules/extensions/libvnc.la
|
|||||||
rm -f %{buildroot}%{_libdir}/xorg/modules/extensions/libvnc.so
|
rm -f %{buildroot}%{_libdir}/xorg/modules/extensions/libvnc.so
|
||||||
%else
|
%else
|
||||||
mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/
|
mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/
|
||||||
install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.conf
|
install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.conf
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%post server
|
%post server
|
||||||
@ -290,7 +299,9 @@ install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.c
|
|||||||
%systemd_preun xvnc.socket
|
%systemd_preun xvnc.socket
|
||||||
|
|
||||||
%postun server
|
%postun server
|
||||||
%systemd_postun
|
%systemd_postun vncserver.service
|
||||||
|
%systemd_postun xvnc.service
|
||||||
|
%systemd_postun xvnc.socket
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%doc README.rst
|
%doc README.rst
|
||||||
@ -301,10 +312,12 @@ install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.c
|
|||||||
%files server
|
%files server
|
||||||
%config(noreplace) %{_sysconfdir}/sysconfig/vncservers
|
%config(noreplace) %{_sysconfdir}/sysconfig/vncservers
|
||||||
%{_userunitdir}/vncserver@.service
|
%{_userunitdir}/vncserver@.service
|
||||||
|
%{_unitdir}/vncserver@.service
|
||||||
%{_unitdir}/xvnc@.service
|
%{_unitdir}/xvnc@.service
|
||||||
%{_unitdir}/xvnc.socket
|
%{_unitdir}/xvnc.socket
|
||||||
%{_bindir}/x0vncserver
|
%{_bindir}/x0vncserver
|
||||||
%{_bindir}/vncserver
|
%{_bindir}/vncserver
|
||||||
|
%{_bindir}/vncserver_wrapper
|
||||||
%{_mandir}/man1/vncserver.1*
|
%{_mandir}/man1/vncserver.1*
|
||||||
%{_mandir}/man1/x0vncserver.1*
|
%{_mandir}/man1/x0vncserver.1*
|
||||||
|
|
||||||
@ -333,6 +346,18 @@ install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-libvnc.c
|
|||||||
%{_datadir}/icons/hicolor/*/apps/*
|
%{_datadir}/icons/hicolor/*/apps/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Dec 11 2019 Jan Grulich <jgrulich@redhat.com> - 1.9.0-12
|
||||||
|
- Fix installation of systemd files
|
||||||
|
Resolves: bz#1671714
|
||||||
|
|
||||||
|
* Wed Nov 20 2019 Jan Grulich <jgrulich@redhat.com> - 1.9.0-11
|
||||||
|
- Use wrapper script to workaround systemd issues
|
||||||
|
Resolves: bz#1671714
|
||||||
|
|
||||||
|
* Fri Jul 12 2019 Jan Grulich <jgrulich@redhat.com> - 1.9.0-10
|
||||||
|
- Do not return returncode indicating error when running "vncserver -list"
|
||||||
|
Resolves: bz#1727860
|
||||||
|
|
||||||
* Fri Feb 08 2019 Jan Grulich <jgrulich@redhat.com> - 1.9.0-9
|
* Fri Feb 08 2019 Jan Grulich <jgrulich@redhat.com> - 1.9.0-9
|
||||||
- Make tigervnc systemd service a user service
|
- Make tigervnc systemd service a user service
|
||||||
Resolves: bz#1639846
|
Resolves: bz#1639846
|
||||||
|
Loading…
Reference in New Issue
Block a user