]>
Commit | Line | Data |
---|---|---|
eec680ba ER |
1 | # TODO |
2 | # - avoid dropboxd relaunching itself with newer version if there's update available (disable auto updating): | |
3 | # glen 25034 19.9 1.5 1496132 81256 pts/46 Sl+ 11:02 1:02 /home/glen/.dropbox-dist/dropbox /newerversion | |
9dd470b7 ER |
4 | # NOTES: |
5 | # - Upstream Dropbox Support (https://www.dropbox.com/ticket) | |
77d2e1b5 | 6 | # - Release Notes (check new versions here): https://www.dropbox.com/release_notes |
9dd470b7 | 7 | # - Download instructions (click the download link to find current version): |
14bae0cf | 8 | # http://www.dropbox.com/downloading?os=lnx |
84f5c3ef | 9 | # http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall |
da4b87b9 ER |
10 | Summary: Sync and backup files between computers |
11 | Name: dropbox | |
d78295a9 | 12 | # https://www.dropboxforum.com/hc/en-us/community/posts/206682016-New-Versioning-Scheme |
5f7a680f | 13 | Version: 66.4.84 |
7f499e9b | 14 | Release: 1 |
da4b87b9 ER |
15 | License: Proprietary |
16 | Group: Daemons | |
6cecb0b6 | 17 | Source0: https://clientupdates.dropboxstatic.com/dbx-releng/client/%{name}-lnx.x86-%{version}.tar.gz |
5f7a680f | 18 | # NoSource0-md5: 95a25bc9e57e053defc133e67e590c5c |
da4b87b9 | 19 | NoSource: 0 |
6cecb0b6 | 20 | Source1: https://clientupdates.dropboxstatic.com/dbx-releng/client/%{name}-lnx.x86_64-%{version}.tar.gz |
5f7a680f | 21 | # NoSource1-md5: 3a28db85d941c5d8628964684370e788 |
da4b87b9 | 22 | NoSource: 1 |
6cecb0b6 | 23 | URL: https://www.dropbox.com/ |
da4b87b9 ER |
24 | BuildRequires: rpmbuild(macros) >= 1.566 |
25 | BuildRequires: sed >= 4.0 | |
26 | BuildRequires: tar >= 1:1.15.1 | |
6b9a4628 | 27 | BuildRequires: unzip |
5fe51dfe | 28 | BuildRequires: zip |
8c0a6f53 | 29 | Conflicts: nautilus-dropbox < 0.6.3-2 |
da4b87b9 ER |
30 | ExclusiveArch: %{ix86} %{x8664} |
31 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
32 | ||
33 | # generate no Provides from private modules | |
34 | %define _noautoprovfiles %{_libdir}/%{name} | |
35 | ||
6cecb0b6 | 36 | # libicu-42, but pld th already has 59+ |
d4b9c773 ER |
37 | %define icu_libs libicudata.so.42 libicui18n.so.42 libicuuc.so.42 |
38 | ||
da4b87b9 | 39 | # provided by package itself, but autodeps disabled |
38baf4d5 | 40 | %define _noautoreq libwx_.*.so %{icu_libs} libffi.so.6 librsync.so.1 |
da4b87b9 ER |
41 | |
42 | # a zip and executable at the same time | |
43 | %define _noautostrip .*/library.zip\\|.*/dropbox | |
44 | ||
45 | # debuginfo wouldn't be useful | |
46 | %define _enable_debug_packages 0 | |
47 | ||
b70c96ae | 48 | # prelinked library, it is missing some cairo symbols |
d4b9c773 | 49 | #define skip_post_check_so libwx_gtk2ud_core-2.8.so.0 |
b70c96ae | 50 | |
da4b87b9 ER |
51 | %description |
52 | Dropbox is software that syncs your files online and across your | |
53 | computers. | |
54 | ||
55 | Put your files into your Dropbox on one computer, and they'll be | |
56 | instantly available on any of your other computers that you've | |
57 | installed Dropbox on (Windows, Mac, and Linux too!) Because a copy of | |
58 | your files are stored on Dropbox's secure servers, you can also access | |
59 | them from any computer or mobile device using the Dropbox website. | |
60 | ||
eec680ba ER |
61 | %package gui |
62 | Summary: Gtk+2 GUI of Dropbox | |
63 | Group: X11/Applications | |
64 | Requires: %{name} = %{version}-%{release} | |
65 | ||
66 | %description gui | |
67 | Gtk+2 Systray of Dropbox Daemon status. | |
68 | ||
da4b87b9 ER |
69 | %prep |
70 | %setup -qcT | |
71 | %ifarch %{ix86} | |
72 | %{__tar} --strip-components=1 -xzf %{SOURCE0} | |
73 | %endif | |
74 | %ifarch %{x8664} | |
75 | %{__tar} --strip-components=1 -xzf %{SOURCE1} | |
76 | %endif | |
27fd1422 | 77 | mv dropbox-lnx.*-%{version}/* . |
da4b87b9 | 78 | |
84f5c3ef | 79 | # no need to package this |
284b53dc ER |
80 | # altho system python is also 2.7, don't know how to enforce using it system libs |
81 | #%{__rm} -r distribute-0.6.26-py2.7.egg | |
77d2e1b5 ER |
82 | |
83 | # libraries to be taken from system | |
d78295a9 | 84 | # for a in *.so*; do ls -ld /lib64/$a /us?/lib64/$a; done 2>/dev/null |
2033761e | 85 | %{__rm} libpopt.so.0 libdrm.so.2 libGL.so.1 |
3893feea | 86 | %{__rm} libffi.so.6 |
d78295a9 ER |
87 | %{__rm} libX11-xcb.so.1 |
88 | %{__rm} libQt5{Core,DBus,Gui,Network,OpenGL,PrintSupport,Qml,Quick,Sql,WebKit,WebKitWidgets,Widgets,XcbQpa}.so.5 | |
89 | %{__rm} qt.conf | |
90 | %{__rm} -r plugins | |
84f5c3ef | 91 | |
3893feea | 92 | # keep librsync, won't finish syncing if not using upstream copy |
5dd25d12 | 93 | test -f librsync.so.1 |
3893feea | 94 | |
6cecb0b6 | 95 | %if 1 |
84f5c3ef | 96 | # fun, let's delete non-linux files from archive |
5f7a680f ER |
97 | d=.delete-lib.txt |
98 | unzip -l python-packages-36.zip | \ | |
8669a5fc ER |
99 | grep -E '(arch|dropbox)/(mac|win32)|_(win32|mac)\.py|pymac|ui/cocoa|unittest' | \ |
100 | grep -vE 'pymac/(__init__|constants|types|lazydll|lazyframework)\.py' | \ | |
5f7a680f ER |
101 | grep -vE 'dropbox/mac/(version|__init__)\.py' | \ |
102 | grep -vF 'dropbox/client/features/files/local/operations/_mac.py' | \ | |
103 | awk '{print $NF}' > $d | |
104 | zip python-packages-36.zip -d $(cat $d) | |
6cecb0b6 | 105 | %endif |
bd07dff0 | 106 | |
da4b87b9 ER |
107 | %install |
108 | rm -rf $RPM_BUILD_ROOT | |
109 | install -d $RPM_BUILD_ROOT%{_bindir} | |
77d2e1b5 | 110 | ln -s %{_libdir}/%{name}/dropboxd $RPM_BUILD_ROOT%{_bindir}/dropboxd |
da4b87b9 ER |
111 | |
112 | # install everything else | |
77d2e1b5 | 113 | install -d $RPM_BUILD_ROOT%{_libdir}/%{name} |
5f7a680f | 114 | cp -a * $RPM_BUILD_ROOT%{_libdir}/%{name} |
da4b87b9 ER |
115 | |
116 | # in doc | |
77d2e1b5 | 117 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/{ACKNOWLEDGEMENTS,VERSION,README} |
da4b87b9 ER |
118 | |
119 | %clean | |
120 | rm -rf $RPM_BUILD_ROOT | |
121 | ||
122 | %files | |
123 | %defattr(644,root,root,755) | |
14bae0cf | 124 | %doc ACKNOWLEDGEMENTS VERSION README |
da4b87b9 | 125 | %attr(755,root,root) %{_bindir}/dropboxd |
77d2e1b5 | 126 | %dir %{_libdir}/%{name} |
6cecb0b6 | 127 | %attr(755,root,root) %{_libdir}/%{name}/*-linux-gnu.so |
77d2e1b5 ER |
128 | %attr(755,root,root) %{_libdir}/%{name}/dropbox |
129 | %attr(755,root,root) %{_libdir}/%{name}/dropboxd | |
6cecb0b6 ER |
130 | %attr(755,root,root) %{_libdir}/%{name}/libdropbox_sqlite_ext.so |
131 | %attr(755,root,root) %{_libdir}/%{name}/libicudata.so.* | |
132 | %attr(755,root,root) %{_libdir}/%{name}/libicui18n.so.* | |
133 | %attr(755,root,root) %{_libdir}/%{name}/libicuuc.so.* | |
134 | %attr(755,root,root) %{_libdir}/%{name}/librsync.so.1 | |
135 | %{_libdir}/%{name}/python-packages-*.zip | |
77d2e1b5 | 136 | |
dbd4f1f7 ER |
137 | # need +x bits for .so files |
138 | %defattr(-,root,root,-) | |
dbd4f1f7 | 139 | |
d4b9c773 ER |
140 | # GUI parts |
141 | %exclude %{_libdir}/%{name}/PyQt5.*.so | |
eec680ba ER |
142 | |
143 | %files gui | |
144 | %defattr(644,root,root,755) | |
d4b9c773 | 145 | %attr(755,root,root) %{_libdir}/%{name}/PyQt5.*.so |
6cecb0b6 | 146 | %attr(755,root,root) %{_libdir}/%{name}/wmctrl |
77d2e1b5 ER |
147 | %dir %{_libdir}/%{name}/images |
148 | %{_libdir}/%{name}/images/emblems | |
149 | %{_libdir}/%{name}/images/hicolor | |
e2a81b70 | 150 | %{_libdir}/%{name}/resources |