-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathSignal-Desktop.spec
437 lines (313 loc) · 12.9 KB
/
Signal-Desktop.spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
# mock configuration:
# - Requires network for running yarn/electron build
%global debug_package %{nil}
# Build id links are sometimes in conflict with other RPMs.
%define _build_id_links none
# Remove bundled libraries from requirements/provides
%global __requires_exclude ^(libffmpeg\\.so.*|libEGL\\.so.*|libGLESv2\\.so.*|libvk_swiftshader\\.so.*|libvulkan\\.so.*)$
%global __provides_exclude ^(libffmpeg\\.so.*|libEGL\\.so.*|libGLESv2\\.so.*|libvk_swiftshader\\.so.*|libvulkan\\.so.*)$
%global __requires_exclude_from ^%{_libdir}/%{name}/resources/app.asar.unpacked/.*$
%global __provides_exclude_from ^%{_libdir}/%{name}/resources/app.asar.unpacked/.*$
#global beta beta.2
%global desktop_id org.signal.Signal
Name: Signal-Desktop
Version: 7.38.0
Release: 1%{?dist}
Summary: Private messaging from your desktop
License: AGPLv3
URL: https://signal.org/
BuildArch: aarch64 x86_64
Source0: https://github.com/signalapp/%{name}/archive/v%{version}%{?beta:-%{beta}}.tar.gz#/Signal-Desktop-%{version}%{?beta:-%{beta}}.tar.gz
Source1: %{name}-wrapper
Source2: %{desktop_id}.desktop
Source3: %{desktop_id}.metainfo.xml
Patch0: %{name}-fix-build.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc-c++
BuildRequires: git-core
BuildRequires: git-lfs
BuildRequires: libappstream-glib
BuildRequires: libxcrypt-compat
BuildRequires: lzo
BuildRequires: python3
%if 0%{?fedora}
BuildRequires: nodejs-npm
%else
BuildRequires: npm
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(pangocairo)
BuildRequires: pkgconfig(pixman-1)
%endif
Requires: libappindicator-gtk3
Requires: libnotify
Provides: signal-desktop = %{version}-%{release}
Obsoletes: signal-desktop < %{version}-%{release}
%description
Millions of people use Signal every day for free and instantaneous communication
anywhere in the world. Send and receive high-fidelity messages, participate in
HD voice/video calls, and explore a growing set of new features that help you
stay connected. Signal’s advanced privacy-preserving technology is always
enabled, so you can focus on sharing the moments that matter with the people who
matter to you.
Signal Desktop is an Electron application that links with Signal on Android or
iOS.
%prep
%autosetup -p1 -n %{name}-%{version}%{?beta:-%{beta}}
%build
npm install
npm run clean-transpile
cd sticker-creator
npm install
npm run build
cd ..
npm run generate
npm run prepare-beta-build
npm run build-linux
# Remove non-relevant binaries
rm -fr release/linux-unpacked/chrome_*.pak \
crelease/linux-unpacked/hrome-sandbox \
release/linux-unpacked/swiftshader
%install
# Main files
install -dm 755 %{buildroot}%{_libdir}/%{name}
install -dm 755 %{buildroot}%{_bindir}
cp -fr release/linux*unpacked/* %{buildroot}%{_libdir}/%{name}
# Icons
for size in 16 24 32 48 64 128 256 512 1024; do
install -p -D -m 644 build/icons/png/${size}x${size}.png \
%{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps/%{name}.png
done
# Wrapper script
mkdir -p %{buildroot}%{_bindir}
cat %{SOURCE1} | sed -e 's|INSTALL_DIR|%{_libdir}/%{name}|g' \
> %{buildroot}%{_bindir}/signal-desktop
chmod +x %{buildroot}%{_bindir}/signal-desktop
# Desktop file
install -m 0644 -D -p %{SOURCE2} %{buildroot}%{_datadir}/applications/%{desktop_id}.desktop
# AppData file
install -m 0644 -D -p %{SOURCE3} %{buildroot}%{_metainfodir}/%{desktop_id}.metainfo.xml
%if 0%{?rhel}
sed -i -e '/url type="contribute"/d' %{buildroot}%{_metainfodir}/%{desktop_id}.metainfo.xml
%endif
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/%{desktop_id}.desktop
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%{desktop_id}.metainfo.xml
%files
%doc LICENSE
%{_bindir}/signal-desktop
%{_datadir}/applications/%{desktop_id}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_metainfodir}/%{desktop_id}.metainfo.xml
%{_libdir}/%{name}
%changelog
* Sun Jan 19 2025 Simone Caronni <[email protected]> - 7.38.0-1
- Update to 7.38.0.
* Fri Jan 10 2025 Simone Caronni <[email protected]> - 7.37.0-1
- Update to 7.37.0.
* Fri Dec 20 2024 Simone Caronni <[email protected]> - 7.36.1-1
- Update to 7.36.1.
* Thu Dec 12 2024 Simone Caronni <[email protected]> - 7.36.0-1
- Update to 7.36.0.
* Sat Dec 07 2024 Simone Caronni <[email protected]> - 7.35.1-1
- Update to 7.35.1.
* Fri Dec 06 2024 Simone Caronni <[email protected]> - 7.35.0-1
- Update to 7.35.0.
* Fri Nov 22 2024 Simone Caronni <[email protected]> - 7.34.0-1
- Update to 7.34.0.
* Mon Nov 18 2024 Simone Caronni <[email protected]> - 7.33.0-1
- Update to 7.33.0.
* Sat Nov 09 2024 Simone Caronni <[email protected]> - 7.32.0-1
- Update to 7.32.0.
* Thu Oct 31 2024 Simone Caronni <[email protected]> - 7.31.0-1
- Update to 7.31.0.
* Fri Oct 25 2024 Simone Caronni <[email protected]> - 7.30.0-1
- Update to 7.30.0.
- Change the way it's built, drop yarn.
* Wed Oct 23 2024 Simone Caronni <[email protected]> - 7.29.0-1
- Update to 7.29.0.
* Fri Oct 04 2024 Simone Caronni <[email protected]> - 7.27.0-1
- Update to 7.27.0.
* Sun Sep 15 2024 Simone Caronni <[email protected]> - 7.24.1-1
- Update to 7.24.1.
* Thu Sep 12 2024 Simone Caronni <[email protected]> - 7.24.0-1
- Update to 7.24.0.
* Thu Sep 05 2024 Simone Caronni <[email protected]> - 7.23.0-1
- Update to 7.23.0.
* Thu Aug 29 2024 Simone Caronni <[email protected]> - 7.22.2-1
- Update to 7.22.2.
* Thu Aug 29 2024 Simone Caronni <[email protected]> - 7.22.0-1
- Update to 7.22.0.
* Sun Aug 25 2024 Simone Caronni <[email protected]> - 7.21.0-1
- Update to 7.21.0.
* Thu Aug 15 2024 Simone Caronni <[email protected]> - 7.20.0-1
- Update to 7.20.0.
* Tue Aug 13 2024 Simone Caronni <[email protected]> - 7.19.1-1
- Update to 7.19.1.
* Sun Aug 04 2024 Simone Caronni <[email protected]> - 7.18.0-1
- Update to 7.18.0.
* Thu Jul 18 2024 Simone Caronni <[email protected]> - 7.16.0-1
- Update to 7.16.0.
* Wed Jul 03 2024 Simone Caronni <[email protected]> - 7.15.0-1
- Update to 7.15.0.
* Fri Jun 28 2024 Simone Caronni <[email protected]> - 7.14.0-1
- Update to 7.14.0.
- Rename desktop file to autopopulate icon in Appstream metadata.
* Sat Jun 22 2024 Simone Caronni <[email protected]> - 7.13.0-1
- Update to 7.13.0.
* Thu Jun 13 2024 Simone Caronni <[email protected]> - 7.12.0-1
- Update to 7.12.0.
* Thu Jun 06 2024 Simone Caronni <[email protected]> - 7.11.1-1
- Update to 7.11.1.
* Thu May 30 2024 Simone Caronni <[email protected]> - 7.11.0-1
- Update to 7.11.0.
* Thu May 23 2024 Simone Caronni <[email protected]> - 7.10.0-1
- Update to 7.10.0.
* Thu May 16 2024 Simone Caronni <[email protected]> - 7.9.0-1
- Update to 7.9.0.
* Tue May 14 2024 Simone Caronni <[email protected]> - 7.8.0-1
- Update to 7.8.0.
* Sat May 04 2024 Simone Caronni <[email protected]> - 7.7.0-1
- Update to 7.7.0.
* Sat Apr 27 2024 Simone Caronni <[email protected]> - 7.6.0-1
- Update to 7.6.0.
* Tue Apr 23 2024 Simone Caronni <[email protected]> - 7.5.1-1
- Update to 7.5.1.
* Tue Apr 02 2024 Simone Caronni <[email protected]> - 7.4.0-1
- Update to 7.4.0.
* Tue Mar 19 2024 Simone Caronni <[email protected]> - 7.2.1-1
- Update to 7.2.1.
* Sat Mar 16 2024 Simone Caronni <[email protected]> - 7.2.0-1
- Update to 7.2.0.
* Thu Mar 07 2024 Simone Caronni <[email protected]> - 7.1.1-1
- Update to 7.1.1.
* Sun Mar 03 2024 Simone Caronni <[email protected]> - 7.0.0-1
- Update to 7.0.0.
* Thu Feb 22 2024 Simone Caronni <[email protected]> - 6.48.1-1
- Update to 6.48.1.
* Thu Feb 22 2024 Simone Caronni <[email protected]> - 6.48.0-1
- Update to 6.48.0.
* Sat Feb 17 2024 Simone Caronni <[email protected]> - 6.47.1-1
- Update to 6.47.1.
* Fri Feb 09 2024 Simone Caronni <[email protected]> - 6.47.0-1
- Update to 6.47.0.
* Mon Feb 05 2024 Simone Caronni <[email protected]> - 6.46.0-1
- Update to 6.46.0.
* Wed Jan 31 2024 Simone Caronni <[email protected]> - 6.45.1-1
- Update to 6.45.1.
* Thu Jan 25 2024 Simone Caronni <[email protected]> - 6.45.0-1
- Update to 6.45.0.
* Thu Jan 18 2024 Simone Caronni <[email protected]> - 6.44.1-1
- Update to 6.44.1.
* Tue Jan 16 2024 Simone Caronni <[email protected]> - 6.44.0-1
- Update to 6.44.0.
* Wed Jan 10 2024 Simone Caronni <[email protected]> - 6.43.2-1
- Update to 6.43.2.
* Sat Jan 06 2024 Simone Caronni <[email protected]> - 6.43.1-1
- Update to 6.43.1.
* Thu Dec 28 2023 Simone Caronni <[email protected]> - 6.42.1-1
- Update to 6.42.1.
* Fri Dec 15 2023 Simone Caronni <[email protected]> - 6.42.0-1
- Update to 6.42.0.
* Thu Dec 07 2023 Simone Caronni <[email protected]> - 6.41.0-1
- Update to 6.41.0.
* Thu Nov 30 2023 Simone Caronni <[email protected]> - 6.40.0-1
- Update to 6.40.0.
* Sun Nov 26 2023 Simone Caronni <[email protected]> - 6.39.1-1
- Update to 6.39.1.
* Thu Nov 16 2023 Simone Caronni <[email protected]> - 6.39.0-1
- Update to 6.39.0.
* Thu Nov 09 2023 Simone Caronni <[email protected]> - 6.38.0-1
- Update to 6.38.0.
* Thu Nov 02 2023 Simone Caronni <[email protected]> - 6.37.0-1
- Update to 6.37.0.
- Update node-gyp to fix Python 3.12 / Fedora 39 builds.
* Fri Oct 20 2023 Simone Caronni <[email protected]> - 6.35.0-1
- Update to 6.35.0.
* Tue Oct 17 2023 Simone Caronni <[email protected]> - 6.34.1-1
- Update to 6.34.1.
* Tue Oct 10 2023 Simone Caronni <[email protected]> - 6.33.0-1
- Update to 6.33.0.
* Wed Oct 04 2023 Simone Caronni <[email protected]> - 6.32.0-1
- Update to 6.32.0.
* Fri Sep 22 2023 Simone Caronni <[email protected]> - 6.31.0-1
- Update to 6.31.0.
* Fri Sep 08 2023 Simone Caronni <[email protected]> - 6.30.1-1
- Update to 6.30.1.
* Thu Aug 24 2023 Simone Caronni <[email protected]> - 6.29.1-1
- Update to 6.29.1.
* Tue Aug 22 2023 Simone Caronni <[email protected]> - 6.29.0-1
- Update to 6.29.0.
* Thu Aug 10 2023 Simone Caronni <[email protected]> - 6.28.0-1
- Update to 6.28.0.
* Mon Aug 07 2023 Simone Caronni <[email protected]> - 6.27.1-1
- Update to 6.27.1.
* Thu Jul 20 2023 Simone Caronni <[email protected]> - 6.26.0-1
- Update to 6.26.0.
* Mon Jul 17 2023 Simone Caronni <[email protected]> - 6.25.0-1
- Update to 6.25.0.
* Thu Jul 06 2023 Simone Caronni <[email protected]> - 6.24.0-1
- Update to 6.24.0.
* Sat Jul 01 2023 Simone Caronni <[email protected]> - 6.23.0-1
- Update to 6.23.0.
* Thu Jun 22 2023 Simone Caronni <[email protected]> - 6.22.0-1
- Update to 6.22.0.
* Fri Jun 16 2023 Simone Caronni <[email protected]> - 6.21.0-1
- Update to 6.21.0.
* Mon Jun 12 2023 Simone Caronni <[email protected]> - 6.20.2-1
- Update to 6.20.2.
* Fri Jun 02 2023 Simone Caronni <[email protected]> - 6.20.0-1
- Update to 6.20.0.
* Sat May 27 2023 Simone Caronni <[email protected]> - 6.19.0-1
- Update to 6.19.0.
* Tue May 23 2023 Simone Caronni <[email protected]> - 6.18.1-1
- Update to 6.18.1.
* Tue May 16 2023 Simone Caronni <[email protected]> - 6.17.1-1
- Update to 6.17.1.
* Wed May 10 2023 Simone Caronni <[email protected]> - 6.17.0-1
- Update to 6.17.0.
* Thu Apr 27 2023 Simone Caronni <[email protected]> - 6.16.0-1
- Update to 6.16.0.
* Mon Apr 10 2023 Simone Caronni <[email protected]> - 6.13.0-1
- Update to 6.13.0.
* Thu Mar 30 2023 Simone Caronni <[email protected]> - 6.12.0-1
- Update to 6.12.0.
* Tue Mar 28 2023 Simone Caronni <[email protected]> - 6.11.0-2
- Adjust requirements for npm again.
* Sun Mar 26 2023 Simone Caronni <[email protected]> - 6.11.0-1
- Update to 6.11.0.
* Tue Mar 21 2023 Simone Caronni <[email protected]> - 6.10.1-2
- Trim changelog.
- Adjust requirements for npm and provide an explanation.
* Mon Mar 20 2023 Simone Caronni <[email protected]> - 6.10.1-1
- Update to 6.10.1.
* Thu Mar 02 2023 Simone Caronni <[email protected]> - 6.8.0-1
- Update to 6.8.0.
* Fri Feb 24 2023 Simone Caronni <[email protected]> - 6.7.0-1
- Update to 6.7.0.
* Fri Feb 10 2023 Simone Caronni <[email protected]> - 6.5.0-1
- Update to 6.5.0.
* Fri Feb 03 2023 Simone Caronni <[email protected]> - 6.4.1-1
- Update to 6.4.1.
* Thu Jan 26 2023 Simone Caronni <[email protected]> - 6.3.0-1
- Update to 6.3.0.
* Thu Jan 12 2023 Simone Caronni <[email protected]> - 6.2.0-1
- Update to 6.2.0.
* Fri Dec 16 2022 Simone Caronni <[email protected]> - 6.1.0-1
- Update to 6.1.0.
* Tue Dec 06 2022 Simone Caronni <[email protected]> - 6.0.1-1
- Update to 6.0.1.
* Sun Dec 04 2022 Simone Caronni <[email protected]> - 6.0.0-1
- Update to 6.0.0.
* Thu Nov 10 2022 Simone Caronni <[email protected]> - 5.63.1-1
- Update to 5.63.1.
* Mon Nov 07 2022 Simone Caronni <[email protected]> - 5.63.0-1
- Update to 5.63.0.
* Sun Oct 30 2022 Simone Caronni <[email protected]> - 5.62.0-2
- Add note about mock configuration.
- Trim changelog.
- Increase timeout for aarch64 builds.
- Reduce patching, skip useless steps and make it work with Node.js packages in
main distribution.
- Add AppData.
* Thu Oct 06 2022 Simone Caronni <[email protected]> - 5.62.0-1
- Update to 5.62.0.