ff55031559164971978026c77eeb9bfe5a29b827
[gentoo.git] / net-misc / dropbox / dropbox-95.4.441.ebuild
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5
6 inherit desktop pax-utils systemd xdg
7
8 DESCRIPTION="Dropbox daemon (pretends to be GUI-less)"
9 HOMEPAGE="https://www.dropbox.com/"
10 SRC_URI="
11         amd64? ( https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-${PV}.tar.gz )
12         x86? ( https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86-${PV}.tar.gz )"
13
14 LICENSE="BSD-2 CC-BY-ND-3.0 FTL MIT LGPL-2 openssl dropbox"
15 SLOT="0"
16 KEYWORDS="~amd64 ~x86 ~x86-linux"
17 IUSE="+librsync-bundled selinux X"
18
19 RESTRICT="mirror strip"
20
21 QA_PREBUILT="opt/.*"
22 QA_EXECSTACK="opt/dropbox/dropbox"
23
24 BDEPEND="dev-util/patchelf"
25
26 # Be sure to have GLIBCXX_3.4.9, #393125
27 RDEPEND="
28         X? (
29                 dev-libs/glib:2
30                 media-libs/fontconfig
31                 media-libs/freetype
32                 virtual/jpeg
33                 x11-libs/libSM
34                 x11-libs/libX11
35                 x11-libs/libXinerama
36                 x11-libs/libXxf86vm
37                 x11-libs/pango[X]
38                 x11-misc/wmctrl
39                 x11-themes/hicolor-icon-theme
40         )
41         !librsync-bundled? ( <net-libs/librsync-2 )
42         selinux? ( sec-policy/selinux-dropbox )
43         app-arch/bzip2
44         dev-libs/libffi-compat:6
45         dev-libs/popt
46         net-misc/wget
47         >=sys-devel/gcc-4.2.0
48         sys-libs/zlib
49         sys-libs/ncurses-compat:5"
50
51 src_unpack() {
52         unpack ${A}
53         mkdir -p "${S}" || die
54         mv "${WORKDIR}"/.dropbox-dist/* "${S}" || die
55         mv "${S}"/dropbox-lnx.*-${PV}/* "${S}" || die
56         rmdir "${S}"/dropbox-lnx.*-${PV}/ || die
57         rmdir .dropbox-dist || die
58 }
59
60 src_prepare() {
61         default
62
63         rm -vf libGL.so.1 libX11* libdrm.so.2 libffi.so.6 libpopt.so.0 wmctrl || die
64         # tray icon doesnt load when removing libQt5* (bug 641416)
65         #rm -vrf libQt5* libicu* qt.conf plugins/ || die
66         if use X ; then
67                 mv images/hicolor/16x16/status "${T}" || die
68         else
69                 rm -vrf PyQt5* *pyqt5* images || die
70         fi
71         if use librsync-bundled ; then
72                 patchelf --set-rpath '$ORIGIN' librsyncffi_native.*.so || die
73         else
74                 rm -vf librsync.so.1 || die
75         fi
76         patchelf --set-rpath '$ORIGIN' \
77                 apex._apex.*.so \
78                 nucleus_python.*.so \
79                 tprt.*.so \
80                 || die
81         pax-mark cm dropbox
82         mv README ACKNOWLEDGEMENTS "${T}" || die
83 }
84
85 src_install() {
86         local targetdir="/opt/dropbox"
87
88         insinto "${targetdir}"
89         doins -r *
90         fperms a+x "${targetdir}"/{dropbox,dropboxd}
91         dosym "${targetdir}/dropboxd" "/opt/bin/dropbox"
92
93         use X && doicon -s 16 -c status "${T}"/status
94
95         make_desktop_entry "${PN}" "Dropbox" "dropboxstatus-logo"
96
97         newinitd "${FILESDIR}"/dropbox.initd dropbox
98         newconfd "${FILESDIR}"/dropbox.conf dropbox
99         systemd_newunit "${FILESDIR}"/dropbox_at.service-r2 "dropbox@.service"
100
101         dodoc "${T}"/{README,ACKNOWLEDGEMENTS}
102 }