X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=tigervnc.spec;h=c4fce1689776794945cde6fa8ab0cd29d310c642;hb=bc6523d65ed2000634dd6885476bb41df17d90eb;hp=6b56b4e5699f3ff3bf28f7d7dbc83fc0e6a993f2;hpb=451f5de754245753f661ef9b323e679683cbf8da;p=packages%2Ftigervnc.git diff --git a/tigervnc.spec b/tigervnc.spec index 6b56b4e..c4fce16 100644 --- a/tigervnc.spec +++ b/tigervnc.spec @@ -1,36 +1,32 @@ -# TODO: -# - tigervnc.init - -%define xversion 1.12.0 +%define xversion 1.16.0 Summary: A TigerVNC remote display system Summary(pl.UTF-8): System zdalnego dostępu TigerVNC Name: tigervnc -Version: 1.2.0 -Release: 1 +Version: 1.7.1 +Release: 2 License: GPL v2 Group: X11/Applications/Networking -Source0: http://dl.sourceforge.net/tigervnc/1.2.0/%{name}-%{version}.tar.gz -# Source0-md5: 3a5755b4ed600a81c3a17976c6f8420d +Source0: https://github.com/TigerVNC/tigervnc/archive/v%{version}.tar.gz?/%{name}-%{version}.tar.gz +# Source0-md5: 82dbb9d178b8e313b51f1651e0398dfe Source1: %{name}.desktop -Patch0: %{name}-cookie.patch -Patch1: %{name}-ldnow.patch -Patch2: %{name}-rh102434.patch -Patch3: %{name}-viewer-reparent.patch -Patch4: %{name}-as-needed.patch -Patch5: %{name}-ipv6.patch -Patch6: %{name}-xorg111.patch -Patch7: %{name}-rh692048.patch -Patch8: gnutls3.patch -Patch9: no-bashizm.patch -Patch10: xorg112.patch -Patch11: cmake-mandir.patch +Source2: vncserver.init +Source3: vncserver.sysconfig +Source4: vncserver.target +Source5: vncserver-service-generator +Patch0: %{name}-xserver.patch +Patch1: %{name}-libvnc-os.patch +Patch2: %{name}-getmaster.patch +Patch3: %{name}-utilize-system-crypto-policies.patch +Patch4: %{name}-xstartup.patch +Patch100: xserver.patch URL: http://www.tigervnc.com/ BuildRequires: ImageMagick BuildRequires: ImageMagick-coder-png BuildRequires: ImageMagick-coder-svg BuildRequires: Mesa-libGL-devel >= 7.8.1 BuildRequires: cpp +BuildRequires: fltk-devel BuildRequires: gnutls-devel BuildRequires: libjpeg-turbo-devel BuildRequires: xorg-xserver-server-source >= %{xversion} @@ -48,6 +44,7 @@ BuildRequires: pam-devel BuildRequires: perl-base BuildRequires: pixman-devel >= 0.16.0 BuildRequires: pkgconfig >= 1:0.19 +BuildRequires: rpmbuild(macros) >= 1.647 BuildRequires: xorg-app-mkfontscale BuildRequires: xorg-font-font-util >= 1.1 BuildRequires: xorg-lib-libX11-devel @@ -72,15 +69,18 @@ BuildRequires: xorg-lib-libfontenc-devel BuildRequires: xorg-lib-libpciaccess-devel >= 0.13 BuildRequires: xorg-lib-libxkbfile-devel BuildRequires: xorg-lib-libxkbui-devel >= 1.0.2 +BuildRequires: xorg-lib-libxshmfence-devel >= 1.1 BuildRequires: xorg-lib-xtrans-devel >= 1.2.2 BuildRequires: xorg-proto-bigreqsproto-devel >= 1.1.0 BuildRequires: xorg-proto-damageproto-devel >= 1.1 +BuildRequires: xorg-proto-dri3proto-devel >= 1.0 BuildRequires: xorg-proto-fixesproto-devel >= 4.1 BuildRequires: xorg-proto-fontcacheproto-devel BuildRequires: xorg-proto-fontsproto-devel BuildRequires: xorg-proto-glproto-devel >= 1.4.10 BuildRequires: xorg-proto-inputproto-devel >= 1.9.99.902 BuildRequires: xorg-proto-kbproto-devel >= 1.0.3 +BuildRequires: xorg-proto-presentproto-devel >= 1.0 BuildRequires: xorg-proto-printproto-devel BuildRequires: xorg-proto-randrproto-devel >= 1.3 BuildRequires: xorg-proto-recordproto-devel @@ -112,22 +112,27 @@ performance and remote display functionality. Originally this software was based on the (never released) VNC 4 branch of TightVNC. %description -l pl.UTF-8 -TigerVNC to zestaw serwerów i klientów VNC, które koncentrują się -na wydajności i funkcjonalności zdalnego wyświetlania. Pierwotnie -oprogramowanie oparte było na (nigdy nie wydanej) -gałęzi VNC 4 TightVNC. +TigerVNC to zestaw serwerów i klientów VNC, które koncentrują się na +wydajności i funkcjonalności zdalnego wyświetlania. Pierwotnie +oprogramowanie oparte było na (nigdy nie wydanej) gałęzi VNC 4 +TightVNC. %package server Summary: VNC X server - TigerVNC version 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: util-linux +Requires: xkeyboard-config Requires: xorg-app-xauth +Requires: xorg-app-xkbcomp Obsoletes: vnc-server %description server @@ -151,48 +156,40 @@ vncpasswd generates password file (both on server and viewer side). %description utils -l pl.UTF-8 Ten pakiet zawiera dodatkowe narzędzia do tightvnc: vncconfig i vncpasswd. vncconfig służy do konfigurowania i kontroli działającej -instancji Xvnc lub innego serwera X z rozszerzeniem VNC. -vncpasswd służy to tworzenia pliku z hasłem (zarówno po -stronie serwera, jak i przeglądarki). +instancji Xvnc lub innego serwera X z rozszerzeniem VNC. vncpasswd +służy to tworzenia pliku z hasłem (zarówno po stronie serwera, jak i +przeglądarki). %package -n xorg-xserver-libvnc Summary: TigerVNC module for X.org server Summary(pl.UTF-8): Moduł TigerVNC dla servera X.org Group: X11/Servers -%requires_eq_to xorg-xserver-server xorg-xserver-server-source +%requires_eq_to xorg-xserver-server xorg-xserver-server-source Provides: xorg-xserver-module(vnc) %description -n xorg-xserver-libvnc -This package contains libvnc.so module for X.org server, -allowing others to access the desktop on your machine. +This package contains libvnc.so module for X.org server, allowing +others to access the desktop on your machine. %description -n xorg-xserver-libvnc -l pl.UTF-8 -Ten pakiet zawiera moduł libvnc.so dla serwera X.org, -pozwalający na zdalny dostęp do pulpitu. +Ten pakiet zawiera moduł libvnc.so dla serwera X.org, pozwalający na +zdalny dostęp do pulpitu. %prep %setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 -#patch3 -p1 +%patch3 -p1 %patch4 -p1 -%patch5 -p0 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch11 -p1 cp -a %{_usrsrc}/xorg-xserver-server-%{_xserverver}/* unix/xserver cd unix/xserver -patch -p1 <../xserver110.patch -cd - -%patch6 -p1 -%patch10 -p1 +%patch100 -p1 %build %cmake . -%{__make} +%{__make} -j1 cd unix/xserver %{__aclocal} -I m4 @@ -220,10 +217,13 @@ export CXXFLAGS="%{rpmcxxflags} -fpermissive" --disable-xfbdev \ --disable-dri \ --enable-dri2 \ + --enable-dri3 \ --with-pic \ --disable-static \ --disable-xinerama \ --disable-composite \ + --disable-wayland \ + --disable-xwayland \ --enable-glx \ --enable-glx-tls \ --enable-aiglx \ @@ -236,11 +236,11 @@ export CXXFLAGS="%{rpmcxxflags} -fpermissive" --with-xkb-output=/var/lib/xkb \ --disable-unit-tests -%{__make} +%{__make} -j1 cd - cd media -%{__make} +%{__make} -j1 %install rm -rf $RPM_BUILD_ROOT @@ -255,14 +255,25 @@ cd unix/xserver/hw/vnc DESTDIR=$RPM_BUILD_ROOT cd - -install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} +cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} -install media/icons/tigervnc_16.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/16x16/apps/tigervnc.png -install media/icons/tigervnc_22.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/22x22/apps/tigervnc.png -install media/icons/tigervnc_24.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/tigervnc.png -install media/icons/tigervnc_32.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/32x32/apps/tigervnc.png -install media/icons/tigervnc_48.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/48x48/apps/tigervnc.png -install media/icons/tigervnc.svg $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/apps/tigervnc.svg +cp -p media/icons/tigervnc_16.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/16x16/apps/tigervnc.png +cp -p media/icons/tigervnc_22.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/22x22/apps/tigervnc.png +cp -p media/icons/tigervnc_24.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/24x24/apps/tigervnc.png +cp -p media/icons/tigervnc_32.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/32x32/apps/tigervnc.png +cp -p media/icons/tigervnc_48.png $RPM_BUILD_ROOT%{_iconsdir}/hicolor/48x48/apps/tigervnc.png +cp -p media/icons/tigervnc.svg $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/apps/tigervnc.svg + +install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} +cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vncserver +cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/vncserver + +install -d $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdunitdir}-generators} +install -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/vncserver.target +install -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}-generators/vncserver-service-generator +ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vncserver.service + +%{__rm} -r $RPM_BUILD_ROOT%{_docdir} %find_lang %{name} @@ -270,16 +281,40 @@ install media/icons/tigervnc.svg $RPM_BUILD_ROOT%{_iconsdir}/hicolor/scalable/ap rm -rf $RPM_BUILD_ROOT %post -[ ! -x /usr/bin/update-desktop-database ] || %update_desktop_database_post +[ ! -x %{_bindir}/update-desktop-database ] || %update_desktop_database_post %update_icon_cache hicolor %postun -[ ! -x /usr/bin/update-desktop-database ] || %update_desktop_database_postun +[ ! -x %{_bindir}/update-desktop-database ] || %update_desktop_database_postun %update_icon_cache hicolor +%post server +/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) -%doc doc/* +%doc README.txt doc/* %attr(755,root,root) %{_bindir}/vncviewer %{_mandir}/man1/vncviewer.1* %{_desktopdir}/tigervnc.desktop @@ -290,6 +325,11 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/Xvnc %attr(755,root,root) %{_bindir}/vncserver %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) %{systemdunitdir}-generators/vncserver-service-generator +%{systemdunitdir}/vncserver.target +%{systemdunitdir}/vncserver.service %{_mandir}/man1/Xvnc.1* %{_mandir}/man1/vncserver.1* %{_mandir}/man1/x0vncserver.1*