+# TODO
+# - avoid dropboxd relaunching itself with newer version if there's update available (disable auto updating):
+# glen 25034 19.9 1.5 1496132 81256 pts/46 Sl+ 11:02 1:02 /home/glen/.dropbox-dist/dropbox /newerversion
# NOTES:
# - Upstream Dropbox Support (https://www.dropbox.com/ticket)
+# - Release Notes (check new versions here): https://www.dropbox.com/release_notes
# - Download instructions (click the download link to find current version):
+# http://www.dropbox.com/downloading?os=lnx
# http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall
Summary: Sync and backup files between computers
Name: dropbox
-Version: 0.7.110
-Release: 0.10
+Version: 2.8.2
+Release: 1
License: Proprietary
Group: Daemons
-URL: http://www.dropbox.com/
Source0: http://dl-web.dropbox.com/u/17/%{name}-lnx.x86-%{version}.tar.gz
-# NoSource0-md5: e6cb1751ba33542a82b794cea7dc8dbd
+# NoSource0-md5: edd6e4dd3c4cf677668887ebbb7862c9
NoSource: 0
Source1: http://dl-web.dropbox.com/u/17/%{name}-lnx.x86_64-%{version}.tar.gz
-# NoSource1-md5: 434fb3451d1f638bddde2f5691beb426
+# NoSource1-md5: e5410eb64aa407be2d73c907417e75d3
NoSource: 1
+URL: http://www.dropbox.com/
BuildRequires: rpmbuild(macros) >= 1.566
BuildRequires: sed >= 4.0
BuildRequires: tar >= 1:1.15.1
+BuildRequires: zip
Conflicts: nautilus-dropbox < 0.6.3-2
ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _noautoprovfiles %{_libdir}/%{name}
# provided by package itself, but autodeps disabled
-%define _noautoreq libcrypto.so libssl.so libwx_.*.so
+%define _noautoreq libwx_.*.so librsync.so.1 libffi.so.6
# a zip and executable at the same time
%define _noautostrip .*/library.zip\\|.*/dropbox
your files are stored on Dropbox's secure servers, you can also access
them from any computer or mobile device using the Dropbox website.
+%package gui
+Summary: Gtk+2 GUI of Dropbox
+Group: X11/Applications
+Requires: %{name} = %{version}-%{release}
+
+%description gui
+Gtk+2 Systray of Dropbox Daemon status.
+
%prep
%setup -qcT
%ifarch %{ix86}
%{__tar} --strip-components=1 -xzf %{SOURCE1}
%endif
+# no need to package this
+# altho system python is also 2.7, don't know how to enforce using it system libs
+#%{__rm} -r distribute-0.6.26-py2.7.egg
+
+# libraries to be taken from system
+# for a in *.so*; do ls -ld /lib/$a /usr/lib/$a; done 2>/dev/null
+%{__rm} libpng12.so.0 libbz2.so.1.0 libpopt.so.0
+
# make into symlink, looks cleaner than hardlink:
# we can attach executable attrs to binary and leave no attrs for symlink in
# %files section.
ln -sf dropbox library.zip
-# use system lib, or we get weird errors like:
-# (dropbox:13225): Gtk-WARNING **: Error loading theme icon 'gtk-ok' for stock:
-# Unable to load image-loading module: /usr/lib64/gtk-2.0/2.10.0/loaders/svg_loader.so:
-# /usr/lib64/dropbox/libz.so.1: version `ZLIB_1.2.3.3' not found (required by /usr/lib64/libxml2.so.2)
-rm -f libz.so.1
-
-# don't really need test at runtime
-rm -rf ncrypt-*.egg/ncrypt/test
+# fun, let's delete non-linux files from archive
+unzip -l library.zip | \
+ grep -E '(arch|dropbox)/(mac|win32)|_(win32|mac).py|pynt|pymac|ui/cocoa|unittest' | \
+ grep -vE 'pymac/(__init__|constants|types|lazydll|lazyframework).py' | \
+ awk '{print $NF}' > lib.delete
+zip library.zip -d $(cat lib.delete)
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_bindir}
-ln -s %{_libdir}/dropbox/dropboxd $RPM_BUILD_ROOT%{_bindir}/dropboxd
+ln -s %{_libdir}/%{name}/dropboxd $RPM_BUILD_ROOT%{_bindir}/dropboxd
# install everything else
-install -d $RPM_BUILD_ROOT%{_libdir}/dropbox
-cp -a . $RPM_BUILD_ROOT%{_libdir}/dropbox
+install -d $RPM_BUILD_ROOT%{_libdir}/%{name}
+cp -a . $RPM_BUILD_ROOT%{_libdir}/%{name}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib.delete
# in doc
-rm -f $RPM_BUILD_ROOT%{_libdir}/dropbox/{ACKNOWLEDGEMENTS,VERSION}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/{ACKNOWLEDGEMENTS,VERSION,README}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc ACKNOWLEDGEMENTS VERSION
+%doc ACKNOWLEDGEMENTS VERSION README
%attr(755,root,root) %{_bindir}/dropboxd
-%dir %{_libdir}/dropbox
-%attr(755,root,root) %{_libdir}/dropbox/*.so*
-%attr(755,root,root) %{_libdir}/dropbox/dropbox
-%attr(755,root,root) %{_libdir}/dropbox/dropboxd
-%{_libdir}/dropbox/library.zip
-
-%dir %{_libdir}/dropbox/ncrypt-*.egg
-%attr(755,root,root) %{_libdir}/dropbox/ncrypt-*.egg/*.so
-%{_libdir}/dropbox/ncrypt-*.egg/*.pyc
-%{_libdir}/dropbox/ncrypt-*.egg/ncrypt
-%{_libdir}/dropbox/ncrypt-*.egg/EGG-INFO
-
-%dir %{_libdir}/dropbox/netifaces-*.egg
-%attr(755,root,root) %{_libdir}/dropbox/netifaces-*.egg/*.so
-%{_libdir}/dropbox/netifaces-*.egg/*.pyc
-%{_libdir}/dropbox/netifaces-*.egg/EGG-INFO
+%dir %{_libdir}/%{name}
+%attr(755,root,root) %{_libdir}/%{name}/*.so*
+%attr(755,root,root) %{_libdir}/%{name}/dropbox
+%attr(755,root,root) %{_libdir}/%{name}/dropboxd
+%{_libdir}/%{name}/library.zip
+
+%{_libdir}/%{name}/cffi-*-py*.egg
+%{_libdir}/%{name}/distribute-*-py*.egg
+%{_libdir}/%{name}/dropbox_sqlite_ext-*-py*.egg
+%{_libdir}/%{name}/mock-*-py*.egg
+%{_libdir}/%{name}/pycparser-*-py*.egg-info
+
+%exclude %{_libdir}/%{name}/libwx_gtk2*.so.*
+
+%files gui
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/libwx_gtk2*.so.*
+%dir %{_libdir}/%{name}/images
+%{_libdir}/%{name}/images/emblems
+%{_libdir}/%{name}/images/hicolor