diff --git a/.gitignore b/.gitignore index 76c7950..b4b1b1d 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ tigervnc-1.0.90-20100721svn4113.tar.bz2 /tigervnc-1.11.90.tar.gz /tigervnc-1.12.0.tar.gz /tigervnc-1.13.0.tar.gz +/tigervnc-1.13.1.tar.gz diff --git a/sources b/sources index 8f4e8bf..0a5c2a0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (tigervnc-1.13.0.tar.gz) = 55936f075ec64880f4b3e9a803f17761abd4c111392ff0fd5289161cd981acae0b57adf26f768db50162e8d7bfd9666686b8d4ac5fc3389c6f9319df16b90be8 +SHA512 (tigervnc-1.13.1.tar.gz) = 9190dbcd3b57ba52286c158c0675104d68463d7e3ea8e23493514b64451ddb511f3daf0f177339bc231155daea376d9c8dc58216663e10aa12f67468f4559da5 diff --git a/tigervnc-sanity-check-when-cleaning-up-keymap-changes.patch b/tigervnc-sanity-check-when-cleaning-up-keymap-changes.patch deleted file mode 100644 index 012a741..0000000 --- a/tigervnc-sanity-check-when-cleaning-up-keymap-changes.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 774c6bcf33b5c9b94c1ff12895775e77c555decc Mon Sep 17 00:00:00 2001 -From: Pierre Ossman -Date: Thu, 9 Feb 2023 11:30:37 +0100 -Subject: [PATCH] Sanity check when cleaning up keymap changes - -Make sure we don't send a bogus request to the X server in the (common) -case that we don't actually have anything to restore. - -(cherry picked from commit 1e3484f2017f038dd5149cd50741feaf39a680e4) ---- - unix/x0vncserver/XDesktop.cxx | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/unix/x0vncserver/XDesktop.cxx b/unix/x0vncserver/XDesktop.cxx -index d5c6b2db9..f9c810968 100644 ---- a/unix/x0vncserver/XDesktop.cxx -+++ b/unix/x0vncserver/XDesktop.cxx -@@ -481,6 +481,10 @@ void XDesktop::deleteAddedKeysyms(Display* dpy) { - } - } - -+ // Did we actually find something to remove? -+ if (highestKeyCode < lowestKeyCode) -+ return; -+ - changes.changed |= XkbKeySymsMask; - changes.first_key_sym = lowestKeyCode; - changes.num_key_syms = highestKeyCode - lowestKeyCode + 1; diff --git a/tigervnc-selinux-allow-vncsession-create-vnc-directory.patch b/tigervnc-selinux-allow-vncsession-create-vnc-directory.patch deleted file mode 100644 index d6bc61b..0000000 --- a/tigervnc-selinux-allow-vncsession-create-vnc-directory.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 717d787de8f913070446444e37d552b51f05515e Mon Sep 17 00:00:00 2001 -From: Zdenek Pytela -Date: Mon, 16 Jan 2023 12:35:40 +0100 -Subject: [PATCH] SELinux: Allow vncsession create ~/.vnc directory - -Addresses the following AVC denial: - -type=PROCTITLE msg=audit(01/12/2023 02:58:12.648:696) : proctitle=/usr/sbin/vncsession fedora :1 -type=PATH msg=audit(01/12/2023 02:58:12.648:696) : item=1 name=/home/fedora/.vnc nametype=CREATE cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 cap_frootid=0 -type=PATH msg=audit(01/12/2023 02:58:12.648:696) : item=0 name=/home/fedora/ inode=262145 dev=fc:02 mode=dir,700 ouid=fedora ogid=fedora rdev=00:00 obj=unconfined_u:object_r:user_home_dir_t:s0 nametype=PARENT cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 cap_frootid=0 -type=CWD msg=audit(01/12/2023 02:58:12.648:696) : cwd=/home/fedora -type=SYSCALL msg=audit(01/12/2023 02:58:12.648:696) : arch=x86_64 syscall=mkdir success=no exit=EACCES(Permission denied) a0=0x7fff47d52540 a1=0755 a2=0x0 a3=0x0 items=2 ppid=2869 pid=2880 auid=fedora uid=fedora gid=fedora euid=fedora suid=fedora fsuid=fedora egid=fedora sgid=fedora fsgid=fedora tty=(none) ses=8 comm=vncsession exe=/usr/sbin/vncsession subj=system_u:system_r:vnc_session_t:s0 key=(null) -type=AVC msg=audit(01/12/2023 02:58:12.648:696) : avc: denied { create } for pid=2880 comm=vncsession name=.vnc scontext=system_u:system_r:vnc_session_t:s0 tcontext=system_u:object_r:vnc_home_t:s0 tclass=dir permissive=0 - -Resolves: rhbz#2143704 ---- - unix/vncserver/selinux/vncsession.te | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/unix/vncserver/selinux/vncsession.te b/unix/vncserver/selinux/vncsession.te -index fb966c14b..680be8ea1 100644 ---- a/unix/vncserver/selinux/vncsession.te -+++ b/unix/vncserver/selinux/vncsession.te -@@ -37,6 +37,7 @@ allow vnc_session_t self:fifo_file rw_fifo_file_perms; - allow vnc_session_t vnc_session_var_run_t:file manage_file_perms; - files_pid_filetrans(vnc_session_t, vnc_session_var_run_t, file) - -+create_dirs_pattern(vnc_session_t, vnc_home_t, vnc_home_t) - manage_files_pattern(vnc_session_t, vnc_home_t, vnc_home_t) - manage_fifo_files_pattern(vnc_session_t, vnc_home_t, vnc_home_t) - manage_sock_files_pattern(vnc_session_t, vnc_home_t, vnc_home_t) diff --git a/tigervnc.spec b/tigervnc.spec index f60bf1e..ec89817 100644 --- a/tigervnc.spec +++ b/tigervnc.spec @@ -5,8 +5,8 @@ %bcond_without server Name: tigervnc -Version: 1.13.0 -Release: 4%{?dist} +Version: 1.13.1 +Release: 1%{?dist} Summary: A TigerVNC remote display system %global _hardened_build 1 @@ -24,11 +24,9 @@ Source4: HOWTO.md Source5: vncserver # Downstream patches -Patch1: tigervnc-vncsession-restore-script-systemd-service.patch +Patch1: tigervnc-vncsession-restore-script-systemd-service.patch # Upstream patches -Patch50: tigervnc-sanity-check-when-cleaning-up-keymap-changes.patch -Patch51: tigervnc-selinux-allow-vncsession-create-vnc-directory.patch # This is tigervnc-%%{version}/unix/xserver116.patch rebased on the latest xorg Patch100: tigervnc-xserver120.patch @@ -36,34 +34,57 @@ Patch100: tigervnc-xserver120.patch BuildRequires: make BuildRequires: gcc-c++ BuildRequires: gettext -BuildRequires: cmake, desktop-file-utils, libappstream-glib -BuildRequires: ImageMagick -BuildRequires: libxkbfile-devel, openssl-devel, libpciaccess-devel -BuildRequires: freetype-devel, libjpeg-turbo-devel, gnutls-devel, pam-devel -BuildRequires: libXext-devel, libX11-devel, libXi-devel, libXrandr-devel -%if %{with server} -# X11/graphics dependencies -BuildRequires: automake, autoconf, libtool, gettext-autopoint -BuildRequires: xorg-x11-server-source -BuildRequires: libXdamage-devel, libXrandr-devel, libXt-devel, libXdmcp-devel -BuildRequires: libXinerama-devel, mesa-libGL-devel, libxshmfence-devel -BuildRequires: pixman-devel, libdrm-devel, -BuildRequires: xorg-x11-util-macros, xorg-x11-xtrans-devel, libXtst-devel -BuildRequires: xorg-x11-font-utils -%if 0%{?fedora} > 24 || 0%{?rhel} >= 7 -BuildRequires: libXfont2-devel -%else -BuildRequires: libXfont-devel -%endif -# SELinux -BuildRequires: libselinux-devel, selinux-policy-devel, systemd -%endif +BuildRequires: cmake + +BuildRequires: gnutls-devel +BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib +BuildRequires: libjpeg-turbo-devel +BuildRequires: openssl-devel +BuildRequires: pam-devel # TigerVNC 1.4.x requires fltk 1.3.3 for keyboard handling support # See https://github.com/TigerVNC/tigervnc/issues/8, also bug #1208814 BuildRequires: fltk-devel >= 1.3.3 BuildRequires: xorg-x11-server-devel +%if 0%{?fedora} +# Icons +BuildRequires: ImageMagick +%endif + + +%if %{with server} +# X11/graphics dependencies +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gettext-autopoint +BuildRequires: libX11-devel +BuildRequires: libXdamage-devel +BuildRequires: libXdmcp-devel +BuildRequires: libXext-devel +BuildRequires: libXfixes-devel +BuildRequires: libXfont2-devel +BuildRequires: libXi-devel +BuildRequires: libXinerama-devel +BuildRequires: libXrandr-devel +BuildRequires: libXt-devel +BuildRequires: libXtst-devel +BuildRequires: libdrm-devel +BuildRequires: libtool +BuildRequires: libxkbfile-devel +BuildRequires: libxshmfence-devel +BuildRequires: mesa-libGL-devel +BuildRequires: pixman-devel +BuildRequires: xorg-x11-font-utils +BuildRequires: xorg-x11-server-source +BuildRequires: xorg-x11-util-macros +BuildRequires: xorg-x11-xtrans-devel + +# SELinux +BuildRequires: libselinux-devel, selinux-policy-devel, systemd +%endif + Requires(post): coreutils Requires(postun):coreutils @@ -105,8 +126,11 @@ Requires(preun): systemd Requires(postun): systemd Requires(post): systemd -Requires: mesa-dri-drivers, xkeyboard-config, xkbcomp -Requires: tigervnc-license, dbus-x11 +Requires: dbus-x11 +Requires: mesa-dri-drivers +Requires: tigervnc-license +Requires: xkbcomp +Requires: xkeyboard-config %description server-minimal The VNC system allows you to access the same desktop from a wide @@ -154,8 +178,6 @@ runs properly under an environment with SELinux enabled. %setup -q %patch1 -p1 -b .vncsession-restore-script-systemd-service -%patch50 -p1 -b .sanity-check-when-cleaning-up-keymap-changes -%patch51 -p1 -b .selinux-allow-vncsession-create-vnc-directory %if %{with server} cp -r /usr/share/xorg-x11-server-source/* unix/xserver @@ -221,8 +243,21 @@ popd pushd unix/vncserver/selinux make popd + %endif +%if 0%{?rhel} +# Build icons +%if 0%{?rhel} >= 9 +pushd %{_target_platform}/media +%else +pushd media +%endif +make +popd +%endif + + %install %cmake_install rm -f %{buildroot}%{_docdir}/%{name}-%{version}/{README.rst,LICENCE.TXT} @@ -344,6 +379,9 @@ fi %{_datadir}/icons/hicolor/*/apps/* %changelog +* Wed Mar 01 2023 Jan Grulich - 1.13.1-1 +- 1.13.1 + * Tue Feb 21 2023 Jan Grulich - 1.13.0-3 - vncsession: allow to create .vnc directory