]>
Commit | Line | Data |
---|---|---|
f1a9b771 | 1 | # TODO |
29951ed6 | 2 | # - subpackages for client/server, see http://xpra.org/dev.html |
6fb59b95 | 3 | # - nvenc/cuda support (on bcond) |
4d273b65 ER |
4 | # |
5 | # Conditional build: | |
6fb59b95 JB |
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 | |
6fb59b95 JB |
13 | %bcond_without vpx # VPX/WebM support |
14 | %bcond_without webp # WebP support | |
15 | %bcond_without x264 # x264 encoding | |
eeadf629 JR |
16 | %bcond_without x265 # x265 encoding |
17 | ||
c790771b | 18 | %ifarch i386 i486 x32 |
eeadf629 JR |
19 | %undefine with_x265 |
20 | %endif | |
4d273b65 | 21 | |
160ef313 | 22 | Summary: Xpra gives you "persistent remote applications" for X |
5a5f28f1 | 23 | Summary(pl.UTF-8): Xpra - "stałe zdalne aplikacje" dla X |
160ef313 | 24 | Name: xpra |
5b5972d7 | 25 | Version: 0.15.7 |
8e1763ef | 26 | Release: 3 |
160ef313 | 27 | License: GPL v2+ |
33952dff | 28 | Group: X11/Applications/Networking |
f1a9b771 | 29 | Source0: http://xpra.org/src/%{name}-%{version}.tar.xz |
5b5972d7 | 30 | # Source0-md5: 63fa9e2cab464f53d2f37154eccf7596 |
ee1187c7 | 31 | Patch0: setup-cc-ccache.patch |
160ef313 | 32 | URL: http://xpra.org/ |
62cb8620 | 33 | BuildRequires: OpenCL-devel |
5a5f28f1 | 34 | BuildRequires: OpenGL-devel |
62cb8620 | 35 | # libavcodec libswscale |
29951ed6 | 36 | BuildRequires: ffmpeg-devel |
5a5f28f1 | 37 | BuildRequires: gtk+2-devel >= 2.0 |
5b5972d7 | 38 | BuildRequires: libvpx-devel >= 1.4 |
62cb8620 | 39 | BuildRequires: libwebp-devel >= 0.3 |
29951ed6 | 40 | BuildRequires: libx264-devel |
eeadf629 | 41 | %{?with_x265:BuildRequires: libx265-devel} |
29951ed6 | 42 | BuildRequires: pkgconfig |
5b5972d7 | 43 | BuildRequires: python-Cython >= 0.19.0 |
62cb8620 | 44 | BuildRequires: python-devel >= 1:2.6 |
5a5f28f1 JB |
45 | BuildRequires: python-pygobject-devel >= 2.0 |
46 | BuildRequires: python-pygtk-devel >= 2:2.0 | |
5b5972d7 | 47 | BuildRequires: python-setuptools |
160ef313 | 48 | BuildRequires: rpm-pythonprov |
5b5972d7 | 49 | BuildRequires: sed >= 4.0 |
f1a9b771 | 50 | BuildRequires: tar >= 1:1.22 |
5b5972d7 JB |
51 | BuildRequires: xorg-lib-libXcomposite-devel |
52 | BuildRequires: xorg-lib-libXdamage-devel | |
29951ed6 | 53 | BuildRequires: xorg-lib-libXtst-devel |
f1a9b771 | 54 | BuildRequires: xz |
5b5972d7 | 55 | Requires: libvpx >= 1.4 |
62cb8620 | 56 | Requires: libwebp >= 0.3 |
5a5f28f1 | 57 | Requires: python-pygtk-gtk >= 2:2.0 |
33952dff ER |
58 | Requires: xorg-app-setxkbmap |
59 | Requires: xorg-app-xauth | |
60 | Requires: xorg-app-xmodmap | |
282f26dd | 61 | Requires: xorg-xserver-Xvfb |
5b5972d7 | 62 | Suggests: python-PIL |
5c84ecfd | 63 | Suggests: python-PyOpenGL |
5b5972d7 | 64 | Suggests: python-numpy |
5c84ecfd | 65 | Suggests: python-pygtkglext |
160ef313 ER |
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 | ||
134fd9a0 | 80 | %description -l pl.UTF-8 |
5a5f28f1 JB |
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 | |
134fd9a0 | 85 | podłączyć z powrotem później, również z innego komputera, bez straty |
5a5f28f1 JB |
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. | |
134fd9a0 | 90 | |
5a5f28f1 | 91 | W uproszczeniu xpra to "screen" dla zdalnych aplikacji X-owych. |
134fd9a0 | 92 | |
160ef313 | 93 | %prep |
f1a9b771 | 94 | %setup -q |
ee1187c7 | 95 | %patch0 -p1 |
160ef313 | 96 | |
5b5972d7 JB |
97 | %{__sed} -e '1s,/usr/bin/env python,%{__python},' -i cups/xpraforwarder $(grep -l '/usr/bin/env python' -r xpra) |
98 | ||
160ef313 ER |
99 | %build |
100 | CC="%{__cc}" \ | |
101 | CFLAGS="%{rpmcflags}" \ | |
4d273b65 ER |
102 | %{__python} setup.py build \ |
103 | %{__with_without client} \ | |
104 | %{__with_without clipboard} \ | |
105 | %{__with_without csc csc_swscale} \ | |
5b5972d7 | 106 | %{__with_without dec_av dec_avcodec2} \ |
4d273b65 | 107 | %{__with_without opengl} \ |
4d273b65 ER |
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} \ | |
eeadf629 | 114 | %{__with_without x265 enc_x265} \ |
4d273b65 | 115 | --with-Xdummy \ |
4d273b65 ER |
116 | --with-gtk2 \ |
117 | --without-gtk3 \ | |
4d273b65 ER |
118 | --with-strict \ |
119 | --with-warn \ | |
120 | --with-x11 \ | |
121 | --with-PIC \ | |
122 | --with%{!?debug:out}-debug \ | |
123 | %{nil} | |
160ef313 ER |
124 | |
125 | %install | |
126 | rm -rf $RPM_BUILD_ROOT | |
127 | %{__python} setup.py install \ | |
128 | --skip-build \ | |
129 | --optimize=2 \ | |
130 | --root=$RPM_BUILD_ROOT | |
131 | ||
160ef313 | 132 | %{__rm} $RPM_BUILD_ROOT%{_datadir}/xpra/COPYING |
5a5f28f1 | 133 | %{__rm} $RPM_BUILD_ROOT%{_datadir}/xpra/README |
160ef313 ER |
134 | |
135 | %py_postclean | |
136 | ||
137 | %clean | |
138 | rm -rf $RPM_BUILD_ROOT | |
139 | ||
140 | %files | |
141 | %defattr(644,root,root,755) | |
5a5f28f1 | 142 | %doc NEWS README |
160ef313 ER |
143 | %dir %{_sysconfdir}/%{name} |
144 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/xorg.conf | |
145 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/xpra.conf | |
160ef313 ER |
146 | %attr(755,root,root) %{_bindir}/xpra |
147 | %attr(755,root,root) %{_bindir}/xpra_Xdummy | |
148 | %attr(755,root,root) %{_bindir}/xpra_launcher | |
5b5972d7 JB |
149 | %{_datadir}/appdata/xpra.appdata.xml |
150 | %{_datadir}/mime/packages/application-x-xpraconfig.xml | |
160ef313 ER |
151 | %dir %{_datadir}/xpra |
152 | %dir %{_datadir}/xpra/icons | |
153 | %{_datadir}/xpra/icons/*.png | |
383a6766 ER |
154 | # experimental html5 client |
155 | %{_datadir}/%{name}/www | |
5a5f28f1 | 156 | %{_desktopdir}/xpra.desktop |
160ef313 ER |
157 | %{_desktopdir}/xpra_launcher.desktop |
158 | %{_iconsdir}/xpra.png | |
160ef313 ER |
159 | %{_mandir}/man1/xpra.1* |
160 | %{_mandir}/man1/xpra_launcher.1* | |
161 | ||
160ef313 | 162 | %dir %{py_sitedir}/xpra |
5a5f28f1 JB |
163 | %{py_sitedir}/xpra/client |
164 | %{py_sitedir}/xpra/clipboard | |
165 | %dir %{py_sitedir}/xpra/codecs | |
166 | %dir %{py_sitedir}/xpra/codecs/argb | |
167 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/argb/argb.so | |
168 | %{py_sitedir}/xpra/codecs/argb/__init__.py[co] | |
169 | %dir %{py_sitedir}/xpra/codecs/csc_swscale | |
170 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/csc_swscale/colorspace_converter.so | |
171 | %{py_sitedir}/xpra/codecs/csc_swscale/__init__.py[co] | |
62cb8620 JB |
172 | %dir %{py_sitedir}/xpra/codecs/dec_avcodec2 |
173 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/dec_avcodec2/decoder.so | |
174 | %{py_sitedir}/xpra/codecs/dec_avcodec2/__init__.py[co] | |
175 | %dir %{py_sitedir}/xpra/codecs/enc_proxy | |
176 | %{py_sitedir}/xpra/codecs/enc_proxy/*.py[co] | |
5a5f28f1 JB |
177 | %dir %{py_sitedir}/xpra/codecs/enc_x264 |
178 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/enc_x264/encoder.so | |
179 | %{py_sitedir}/xpra/codecs/enc_x264/__init__.py[co] | |
eeadf629 | 180 | %if %{with x265} |
62cb8620 JB |
181 | %dir %{py_sitedir}/xpra/codecs/enc_x265 |
182 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/enc_x265/encoder.so | |
183 | %{py_sitedir}/xpra/codecs/enc_x265/__init__.py[co] | |
eeadf629 | 184 | %endif |
5a5f28f1 JB |
185 | %dir %{py_sitedir}/xpra/codecs/vpx |
186 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/vpx/decoder.so | |
187 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/vpx/encoder.so | |
188 | %{py_sitedir}/xpra/codecs/vpx/__init__.py[co] | |
62cb8620 JB |
189 | %dir %{py_sitedir}/xpra/codecs/webp |
190 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/webp/decode.so | |
191 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/webp/encode.so | |
192 | %{py_sitedir}/xpra/codecs/webp/__init__.py[co] | |
5a5f28f1 JB |
193 | %dir %{py_sitedir}/xpra/codecs/xor |
194 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/xor/cyxor.so | |
195 | %{py_sitedir}/xpra/codecs/xor/*.py[co] | |
196 | %{py_sitedir}/xpra/codecs/*.py[co] | |
383a6766 ER |
197 | %dir %{py_sitedir}/xpra/codecs/csc_cython |
198 | %{py_sitedir}/xpra/codecs/csc_cython/*.py[co] | |
199 | %attr(755,root,root) %{py_sitedir}/xpra/codecs/csc_cython/colorspace_converter.so | |
200 | %dir %{py_sitedir}/xpra/codecs/csc_opencl | |
201 | %{py_sitedir}/xpra/codecs/csc_opencl/*.py[co] | |
202 | %dir %{py_sitedir}/xpra/net/bencode | |
203 | %{py_sitedir}/xpra/net/bencode/*.py[co] | |
204 | %attr(755,root,root) %{py_sitedir}/xpra/net/bencode/cython_bencode.so | |
5a5f28f1 JB |
205 | %dir %{py_sitedir}/xpra/gtk_common |
206 | %attr(755,root,root) %{py_sitedir}/xpra/gtk_common/gdk_atoms.so | |
207 | %{py_sitedir}/xpra/gtk_common/*.py[co] | |
208 | %{py_sitedir}/xpra/keyboard | |
209 | %dir %{py_sitedir}/xpra/net | |
5a5f28f1 JB |
210 | %{py_sitedir}/xpra/net/*.py[co] |
211 | %{py_sitedir}/xpra/platform | |
212 | %{py_sitedir}/xpra/scripts | |
213 | %dir %{py_sitedir}/xpra/server | |
5b5972d7 JB |
214 | %attr(755,root,root) %{py_sitedir}/xpra/server/cystats.so |
215 | %attr(755,root,root) %{py_sitedir}/xpra/server/region.so | |
5a5f28f1 | 216 | %{py_sitedir}/xpra/server/*.py[co] |
383a6766 ER |
217 | %dir %{py_sitedir}/xpra/server/auth |
218 | %{py_sitedir}/xpra/server/auth/*.py[co] | |
5a5f28f1 JB |
219 | %{py_sitedir}/xpra/sound |
220 | %dir %{py_sitedir}/xpra/x11 | |
221 | %dir %{py_sitedir}/xpra/x11/bindings | |
222 | %attr(755,root,root) %{py_sitedir}/xpra/x11/bindings/*.so | |
223 | %{py_sitedir}/xpra/x11/bindings/__init__.py[co] | |
224 | %dir %{py_sitedir}/xpra/x11/gtk_x11 | |
225 | %attr(755,root,root) %{py_sitedir}/xpra/x11/gtk_x11/gdk_*.so | |
226 | %{py_sitedir}/xpra/x11/gtk_x11/*.py[co] | |
227 | %{py_sitedir}/xpra/x11/*.py[co] | |
160ef313 | 228 | %{py_sitedir}/xpra/*.py[co] |
383a6766 | 229 | %{py_sitedir}/xpra-%{version}-py*.egg-info |
5b5972d7 JB |
230 | |
231 | #%files -n cups-backend-xpra ? | |
232 | %attr(756,root,root) %{_prefix}/lib/cups/backend/xpraforwarder |