]> git.pld-linux.org Git - packages/dropbox.git/blob - dropbox.spec
cleanup more foreign py libraries
[packages/dropbox.git] / dropbox.spec
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
4 # NOTES:
5 # - Upstream Dropbox Support (https://www.dropbox.com/ticket)
6 # - Release Notes (check new versions here): https://www.dropbox.com/release_notes
7 # - Download instructions (click the download link to find current version):
8 #   http://www.dropbox.com/downloading?os=lnx
9 #   http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall
10 Summary:        Sync and backup files between computers
11 Name:           dropbox
12 Version:        2.6.33
13 Release:        1
14 License:        Proprietary
15 Group:          Daemons
16 Source0:        http://dl-web.dropbox.com/u/17/%{name}-lnx.x86-%{version}.tar.gz
17 # NoSource0-md5:        4155a85791150a40f97cff68ca2e0668
18 NoSource:       0
19 Source1:        http://dl-web.dropbox.com/u/17/%{name}-lnx.x86_64-%{version}.tar.gz
20 # NoSource1-md5:        72e52d33ab69f15be40247dd42c33d92
21 NoSource:       1
22 URL:            http://www.dropbox.com/
23 BuildRequires:  rpmbuild(macros) >= 1.566
24 BuildRequires:  sed >= 4.0
25 BuildRequires:  tar >= 1:1.15.1
26 BuildRequires:  zip
27 Conflicts:      nautilus-dropbox < 0.6.3-2
28 ExclusiveArch:  %{ix86} %{x8664}
29 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30
31 # generate no Provides from private modules
32 %define         _noautoprovfiles        %{_libdir}/%{name}
33
34 # provided by package itself, but autodeps disabled
35 %define         _noautoreq              libwx_.*.so librsync.so.1 libffi.so.6
36
37 # a zip and executable at the same time
38 %define         _noautostrip    .*/library.zip\\|.*/dropbox
39
40 # debuginfo wouldn't be useful
41 %define         _enable_debug_packages  0
42
43 # prelinked library, it is missing some cairo symbols
44 %define         skip_post_check_so      libwx_gtk2ud_core-2.8.so.0
45
46 %description
47 Dropbox is software that syncs your files online and across your
48 computers.
49
50 Put your files into your Dropbox on one computer, and they'll be
51 instantly available on any of your other computers that you've
52 installed Dropbox on (Windows, Mac, and Linux too!) Because a copy of
53 your files are stored on Dropbox's secure servers, you can also access
54 them from any computer or mobile device using the Dropbox website.
55
56 %package gui
57 Summary:        Gtk+2 GUI of Dropbox
58 Group:          X11/Applications
59 Requires:       %{name} = %{version}-%{release}
60
61 %description gui
62 Gtk+2 Systray of Dropbox Daemon status.
63
64 %prep
65 %setup -qcT
66 %ifarch %{ix86}
67 %{__tar} --strip-components=1 -xzf %{SOURCE0}
68 %endif
69 %ifarch %{x8664}
70 %{__tar} --strip-components=1 -xzf %{SOURCE1}
71 %endif
72
73 # no need to package this
74 # altho system python is also 2.7, don't know how to enforce using it system libs
75 #%{__rm} -r distribute-0.6.26-py2.7.egg
76
77 # libraries to be taken from system
78 # for a in *.so*; do ls -ld /lib/$a /usr/lib/$a; done 2>/dev/null
79 %{__rm} libpng12.so.0 libbz2.so.1.0 libpopt.so.0
80
81 # make into symlink, looks cleaner than hardlink:
82 # we can attach executable attrs to binary and leave no attrs for symlink in
83 # %files section.
84 ln -sf dropbox library.zip
85
86 # fun, let's delete non-linux files from archive
87 unzip -l library.zip | \
88         grep -E '(arch|dropbox)/(mac|win32)|_(win32|mac).py|pynt|pymac|ui/cocoa|unittest' | \
89         grep -vE 'pymac/(__init__|constants|types|lazydll|lazyframework).py' | \
90         awk '{print $NF}' > lib.delete
91 zip library.zip -d $(cat lib.delete)
92
93 %install
94 rm -rf $RPM_BUILD_ROOT
95 install -d $RPM_BUILD_ROOT%{_bindir}
96 ln -s %{_libdir}/%{name}/dropboxd $RPM_BUILD_ROOT%{_bindir}/dropboxd
97
98 # install everything else
99 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}
100 cp -a . $RPM_BUILD_ROOT%{_libdir}/%{name}
101 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib.delete
102
103 # in doc
104 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/{ACKNOWLEDGEMENTS,VERSION,README}
105
106 %clean
107 rm -rf $RPM_BUILD_ROOT
108
109 %files
110 %defattr(644,root,root,755)
111 %doc ACKNOWLEDGEMENTS VERSION README
112 %attr(755,root,root) %{_bindir}/dropboxd
113 %dir %{_libdir}/%{name}
114 %attr(755,root,root) %{_libdir}/%{name}/*.so*
115 %attr(755,root,root) %{_libdir}/%{name}/dropbox
116 %attr(755,root,root) %{_libdir}/%{name}/dropboxd
117 %{_libdir}/%{name}/library.zip
118
119 %{_libdir}/%{name}/cffi-*-py*.egg
120 %{_libdir}/%{name}/distribute-*-py*.egg
121 %{_libdir}/%{name}/dropbox_sqlite_ext-*-py*.egg
122 %{_libdir}/%{name}/mock-*-py*.egg
123 %{_libdir}/%{name}/pycparser-*-py*.egg-info
124
125 %exclude %{_libdir}/%{name}/libwx_gtk2*.so.*
126
127 %files gui
128 %defattr(644,root,root,755)
129 %attr(755,root,root) %{_libdir}/%{name}/libwx_gtk2*.so.*
130 %dir %{_libdir}/%{name}/images
131 %{_libdir}/%{name}/images/emblems
132 %{_libdir}/%{name}/images/hicolor
This page took 0.084994 seconds and 3 git commands to generate.