]> git.pld-linux.org Git - packages/xpra.git/blob - xpra.spec
ddde8c765e855f2138527cd8901501c711747b8e
[packages/xpra.git] / xpra.spec
1 # TODO
2 # - subpackages for client/server, see http://xpra.org/dev.html
3 # - nvenc/cuda support (on bcond)
4 #
5 # Conditional build:
6 %bcond_without  client          # client part
7 %bcond_without  server          # server part
8 %bcond_without  sound           # (gstreamer) sound support
9 %bcond_without  clipboard       # clipboard support
10 %bcond_without  csc             # colorspace conversion support
11 %bcond_without  dec_av          # avcodec decoding
12 %bcond_without  opengl          # OpenGL support
13 %bcond_without  vpx             # VPX/WebM support
14 %bcond_without  webp            # WebP support
15 %bcond_without  x264            # x264 encoding
16 %bcond_without  x265            # x265 encoding
17
18 %ifarch i386 i486 x32
19 %undefine       with_x265
20 %endif
21
22 Summary:        Xpra gives you "persistent remote applications" for X
23 Summary(pl.UTF-8):      Xpra - "stałe zdalne aplikacje" dla X
24 Name:           xpra
25 Version:        0.15.7
26 Release:        5
27 License:        GPL v2+
28 Group:          X11/Applications/Networking
29 Source0:        http://xpra.org/src/%{name}-%{version}.tar.xz
30 # Source0-md5:  63fa9e2cab464f53d2f37154eccf7596
31 Patch0:         setup-cc-ccache.patch
32 URL:            http://xpra.org/
33 BuildRequires:  OpenCL-devel
34 BuildRequires:  OpenGL-devel
35 # libavcodec libswscale
36 BuildRequires:  ffmpeg-devel
37 BuildRequires:  gtk+2-devel >= 2.0
38 BuildRequires:  libvpx-devel >= 1.4
39 BuildRequires:  libwebp-devel >= 0.3
40 BuildRequires:  libx264-devel
41 %{?with_x265:BuildRequires:     libx265-devel}
42 BuildRequires:  pkgconfig
43 BuildRequires:  python-Cython >= 0.19.0
44 BuildRequires:  python-devel >= 1:2.6
45 BuildRequires:  python-pygobject-devel >= 2.0
46 BuildRequires:  python-pygtk-devel >= 2:2.0
47 BuildRequires:  python-setuptools
48 BuildRequires:  rpm-pythonprov
49 BuildRequires:  sed >= 4.0
50 BuildRequires:  tar >= 1:1.22
51 BuildRequires:  xorg-lib-libXcomposite-devel
52 BuildRequires:  xorg-lib-libXdamage-devel
53 BuildRequires:  xorg-lib-libXtst-devel
54 BuildRequires:  xz
55 Requires:       libvpx >= 1.4
56 Requires:       libwebp >= 0.3
57 Requires:       python-pygtk-gtk >= 2:2.0
58 Requires:       xorg-app-setxkbmap
59 Requires:       xorg-app-xauth
60 Requires:       xorg-app-xmodmap
61 Requires:       xorg-xserver-Xvfb
62 Suggests:       python-PIL
63 Suggests:       python-PyOpenGL
64 Suggests:       python-numpy
65 Suggests:       python-pygtkglext
66 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67
68 %description
69 Xpra gives you "persistent remote applications" for X. That is, unlike
70 normal X applications, applications run with xpra are "persistent" --
71 you can run them remotely, and they don't die if your connection does.
72 You can detach them, and reattach them later -- even from another
73 computer -- with no loss of state. And unlike VNC or RDP, xpra is for
74 remote applications, not remote desktops -- individual applications
75 show up as individual windows on your screen, managed by your window
76 manager. They're not trapped in a box.
77
78 So basically it's screen for remote X apps.
79
80 %description -l pl.UTF-8
81 Xpra daje "stałe zdalne aplikacje" dla serwera X, które w
82 przeciwieństwie do zwykłych X-owych aplikacji, uruchamiane są z xprą
83 jako niezamykające. Można je uruchomić zdalnie i one nie zostaną
84 zamknięte, gdy połączenie zostanie przerwane. Można je odłączyć i
85 podłączyć z powrotem później, również z innego komputera, bez straty
86 stanu. W odróżnieniu od VNC czy RDP, xpra jest dla zdalnych aplikacji,
87 a nie zdalnych pulpitów - pojedyncze aplikacje pokazują się jako
88 samodzielne okno na lokalnym ekranie, zarządzane przez lokalnego
89 zarządcę okien.
90
91 W uproszczeniu xpra to "screen" dla zdalnych aplikacji X-owych.
92
93 %prep
94 %setup -q
95 %patch0 -p1
96
97 %{__sed} -e '1s,/usr/bin/env python,%{__python},' -i cups/xpraforwarder $(grep -l '/usr/bin/env python' -r xpra)
98
99 %build
100 CC="%{__cc}" \
101 CFLAGS="%{rpmcflags}" \
102 %{__python} setup.py build \
103         %{__with_without client} \
104         %{__with_without clipboard} \
105         %{__with_without csc csc_swscale} \
106         %{__with_without dec_av dec_avcodec2} \
107         %{__with_without opengl} \
108         %{__with_without server shadow} \
109         %{__with_without server} \
110         %{__with_without sound} \
111         %{__with_without vpx} \
112         %{__with_without webp} \
113         %{__with_without x264 enc_x264} \
114         %{__with_without x265 enc_x265} \
115         --with-Xdummy \
116         --with-gtk2 \
117         --without-gtk3 \
118         --with-strict \
119         --with-warn \
120         --with-x11 \
121         --with-PIC \
122         --with%{!?debug:out}-debug \
123         %{nil}
124
125 %install
126 rm -rf $RPM_BUILD_ROOT
127 %{__python} setup.py install \
128         --skip-build \
129         --prefix=%{_prefix} \
130         --install-purelib=%{py_sitescriptdir} \
131         --install-platlib=%{py_sitedir} \
132         --optimize=2 \
133         --root=$RPM_BUILD_ROOT
134
135 %{__rm} $RPM_BUILD_ROOT%{_datadir}/xpra/COPYING
136 %{__rm} $RPM_BUILD_ROOT%{_datadir}/xpra/README
137
138 %py_postclean
139
140 %clean
141 rm -rf $RPM_BUILD_ROOT
142
143 %files
144 %defattr(644,root,root,755)
145 %doc NEWS README
146 %dir %{_sysconfdir}/%{name}
147 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/xorg.conf
148 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/xpra.conf
149 %attr(755,root,root) %{_bindir}/xpra
150 %attr(755,root,root) %{_bindir}/xpra_Xdummy
151 %attr(755,root,root) %{_bindir}/xpra_launcher
152 %{_datadir}/appdata/xpra.appdata.xml
153 %{_datadir}/mime/packages/application-x-xpraconfig.xml
154 %dir %{_datadir}/xpra
155 %dir %{_datadir}/xpra/icons
156 %{_datadir}/xpra/icons/*.png
157 # experimental html5 client
158 %{_datadir}/%{name}/www
159 %{_desktopdir}/xpra.desktop
160 %{_desktopdir}/xpra_launcher.desktop
161 %{_iconsdir}/xpra.png
162 %{_mandir}/man1/xpra.1*
163 %{_mandir}/man1/xpra_launcher.1*
164
165 %dir %{py_sitedir}/xpra
166 %{py_sitedir}/xpra/client
167 %{py_sitedir}/xpra/clipboard
168 %dir %{py_sitedir}/xpra/codecs
169 %dir %{py_sitedir}/xpra/codecs/argb
170 %attr(755,root,root) %{py_sitedir}/xpra/codecs/argb/argb.so
171 %{py_sitedir}/xpra/codecs/argb/__init__.py[co]
172 %dir %{py_sitedir}/xpra/codecs/csc_swscale
173 %attr(755,root,root) %{py_sitedir}/xpra/codecs/csc_swscale/colorspace_converter.so
174 %{py_sitedir}/xpra/codecs/csc_swscale/__init__.py[co]
175 %dir %{py_sitedir}/xpra/codecs/dec_avcodec2
176 %attr(755,root,root) %{py_sitedir}/xpra/codecs/dec_avcodec2/decoder.so
177 %{py_sitedir}/xpra/codecs/dec_avcodec2/__init__.py[co]
178 %dir %{py_sitedir}/xpra/codecs/enc_proxy
179 %{py_sitedir}/xpra/codecs/enc_proxy/*.py[co]
180 %dir %{py_sitedir}/xpra/codecs/enc_x264
181 %attr(755,root,root) %{py_sitedir}/xpra/codecs/enc_x264/encoder.so
182 %{py_sitedir}/xpra/codecs/enc_x264/__init__.py[co]
183 %if %{with x265}
184 %dir %{py_sitedir}/xpra/codecs/enc_x265
185 %attr(755,root,root) %{py_sitedir}/xpra/codecs/enc_x265/encoder.so
186 %{py_sitedir}/xpra/codecs/enc_x265/__init__.py[co]
187 %endif
188 %dir %{py_sitedir}/xpra/codecs/vpx
189 %attr(755,root,root) %{py_sitedir}/xpra/codecs/vpx/decoder.so
190 %attr(755,root,root) %{py_sitedir}/xpra/codecs/vpx/encoder.so
191 %{py_sitedir}/xpra/codecs/vpx/__init__.py[co]
192 %dir %{py_sitedir}/xpra/codecs/webp
193 %attr(755,root,root) %{py_sitedir}/xpra/codecs/webp/decode.so
194 %attr(755,root,root) %{py_sitedir}/xpra/codecs/webp/encode.so
195 %{py_sitedir}/xpra/codecs/webp/__init__.py[co]
196 %dir %{py_sitedir}/xpra/codecs/xor
197 %attr(755,root,root) %{py_sitedir}/xpra/codecs/xor/cyxor.so
198 %{py_sitedir}/xpra/codecs/xor/*.py[co]
199 %{py_sitedir}/xpra/codecs/*.py[co]
200 %dir %{py_sitedir}/xpra/codecs/csc_cython
201 %{py_sitedir}/xpra/codecs/csc_cython/*.py[co]
202 %attr(755,root,root) %{py_sitedir}/xpra/codecs/csc_cython/colorspace_converter.so
203 %dir %{py_sitedir}/xpra/codecs/csc_opencl
204 %{py_sitedir}/xpra/codecs/csc_opencl/*.py[co]
205 %dir %{py_sitedir}/xpra/net/bencode
206 %{py_sitedir}/xpra/net/bencode/*.py[co]
207 %attr(755,root,root) %{py_sitedir}/xpra/net/bencode/cython_bencode.so
208 %dir %{py_sitedir}/xpra/gtk_common
209 %attr(755,root,root) %{py_sitedir}/xpra/gtk_common/gdk_atoms.so
210 %{py_sitedir}/xpra/gtk_common/*.py[co]
211 %{py_sitedir}/xpra/keyboard
212 %dir %{py_sitedir}/xpra/net
213 %{py_sitedir}/xpra/net/*.py[co]
214 %{py_sitedir}/xpra/platform
215 %{py_sitedir}/xpra/scripts
216 %dir %{py_sitedir}/xpra/server
217 %attr(755,root,root) %{py_sitedir}/xpra/server/cystats.so
218 %attr(755,root,root) %{py_sitedir}/xpra/server/region.so
219 %{py_sitedir}/xpra/server/*.py[co]
220 %dir %{py_sitedir}/xpra/server/auth
221 %{py_sitedir}/xpra/server/auth/*.py[co]
222 %{py_sitedir}/xpra/sound
223 %dir %{py_sitedir}/xpra/x11
224 %dir %{py_sitedir}/xpra/x11/bindings
225 %attr(755,root,root) %{py_sitedir}/xpra/x11/bindings/*.so
226 %{py_sitedir}/xpra/x11/bindings/__init__.py[co]
227 %dir %{py_sitedir}/xpra/x11/gtk_x11
228 %attr(755,root,root) %{py_sitedir}/xpra/x11/gtk_x11/gdk_*.so
229 %{py_sitedir}/xpra/x11/gtk_x11/*.py[co]
230 %{py_sitedir}/xpra/x11/*.py[co]
231 %{py_sitedir}/xpra/*.py[co]
232 %{py_sitedir}/xpra-%{version}-py*.egg-info
233
234 #%files -n cups-backend-xpra ?
235 %attr(756,root,root) %{_prefix}/lib/cups/backend/xpraforwarder
This page took 0.103821 seconds and 2 git commands to generate.