diff --git a/net-misc/dropbox/Manifest b/net-misc/dropbox/Manifest new file mode 100644 index 0000000..130fc51 --- /dev/null +++ b/net-misc/dropbox/Manifest @@ -0,0 +1,7 @@ +AUX dropbox.conf 322 BLAKE2B db94efba3a73841cb56a0fcc75f4f6d7fb7424a35f48a7eb3ad3294a927d8cbd708427e4aba8b6f62157a5b6e7cec8d7631a6d79ccd55616a9bca63003ef72f5 SHA512 100a9480dc086e18972c25bbf554e47737dae43989fc7fe1d01173c2570e64792e64fa7d52a93ca53f3e1248b3b335fd838b5c7713dae937e919f0e6a99bb132 +AUX dropbox.initd 1581 BLAKE2B c23a753b7e4d1132d516d607e0eee35072130f6e66c59af008cedd9d9d8c104d9ae1c4644ad984a40ec48a498782b442f79058f499e61c3a3b7a700886353b4b SHA512 4275b7cca361978be6d4379f9d14edc75e51684708a61c1b9880f63e0a02e75c4eb165145bf5a2b4e0704daa5a506dc3506a953db6f5a95977f0101fbbda4912 +AUX dropbox_at.service-r1 220 BLAKE2B 3e7111d8b49bc52626343960d2609f084032c8015c06d700883d47c8ce7569ef5bcb881b682c68a2a911d5f24bcbf554a0e098722f4bf0f1477b80243c6978b0 SHA512 ea685e6eb901b841e54aeb9b530d5a0d2a367d8b598019f7f0d2ae69b013be7cf3986c68fabbbaa30c51c9fb5406dc45b07ff15914c7cf18a7aceacf466328e5 +DIST dropbox-lnx.x86-68.4.102.tar.gz 84829405 BLAKE2B d6eae2367e13cc14f86449f6acbd63910e62d9793c212b071930fbdfffa565512347070f0bfcc0a7dad059a6397c7775ba4171b997dce335fd0b4a200d4f4888 SHA512 0403cb9566c95879cdf9a446f1f45f25b328f8e0f4472071ecbf020f6d2ede979e7ca9cc8b0a43a598758f1fc926f31c5d17c323d3fb6dade170a1438313d809 +DIST dropbox-lnx.x86_64-68.4.102.tar.gz 89299832 BLAKE2B 273ad4c6bfb1f73155a56bb91d9b769ccb7f39c0ea78f4fa5f92c398ccaa1dd8232b921928764328e653065c2ddb0b49375f8427c6375ec441ab448dd301d43e SHA512 473907dec79c6524c014d9abcabc16fbba702ee46465a8674b703307c93d7a57ba3aa876e1d635bf01f249242f15ac6608f71c8cda372ac8116ee1b353738878 +EBUILD dropbox-68.4.102.ebuild 3026 BLAKE2B c2b8aba2fbdd245aac386962009a9fbdab5eb2de835d500f6f1418c7436abb8f070a689f7475f38e46f5d2393ab85374db161db259668028dbc678b66dd60400 SHA512 a24de0a97271ad55448223de64a126d6e95e1653792ad08b43229ed56f845fd874cfa5ce32baf695f7124462ec40c961e14c81a1de8a52a3b4e6c0ba741e0be9 +MISC metadata.xml 310 BLAKE2B 23b03ea102df2d6bd008a75d7b7fee7a9c83a439caec808a864c748b21fce8186b38f9235cc8761781751a2e116944fa7e1889ca2b6e73003f83779a06b01f3c SHA512 55cec8df94006c5c581b2c73acdab164620c17cefd1b65edeeeb5db601ab7727770440e5940ed5f0654845f39448fe2622ccda935ffc12447e324d1deab4491a diff --git a/net-misc/dropbox/dropbox-68.4.102.ebuild b/net-misc/dropbox/dropbox-68.4.102.ebuild new file mode 100644 index 0000000..5762533 --- /dev/null +++ b/net-misc/dropbox/dropbox-68.4.102.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_5 python3_6 ) +inherit eutils gnome2-utils pax-utils systemd python-single-r1 + +DESCRIPTION="Dropbox daemon (pretends to be GUI-less)" +HOMEPAGE="https://www.dropbox.com/" +SRC_URI=" + x86? ( https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86-${PV}.tar.gz ) + amd64? ( https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-${PV}.tar.gz )" + +LICENSE="CC-BY-ND-3.0 FTL MIT LGPL-2 openssl dropbox" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~x86-linux" +IUSE="+librsync-bundled selinux X" +RESTRICT="mirror strip" + +QA_PREBUILT="opt/.*" +QA_EXECSTACK="opt/dropbox/dropbox" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DEPEND="librsync-bundled? ( dev-util/patchelf )" + +# Be sure to have GLIBCXX_3.4.9, #393125 +# USE=X require wxGTK's dependencies. system-library cannot be used due to +# missing symbol (CtlColorEvent). #443686 +RDEPEND="${PYTHON_DEPS} + X? ( + dev-libs/glib:2 + dev-qt/qtcore:5 + dev-qt/qtdbus:5 + dev-qt/qtdeclarative:5 + dev-qt/qtgui:5[-gles2,xcb] + dev-qt/qtopengl:5[-gles2] + dev-qt/qtnetwork:5 + dev-qt/qtprintsupport:5[-gles2] + dev-qt/qtwebkit:5 + dev-qt/qtwidgets:5[-gles2] + media-libs/fontconfig + media-libs/freetype + virtual/jpeg + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXinerama + x11-libs/libXxf86vm + x11-libs/pango[X] + x11-misc/wmctrl + x11-themes/hicolor-icon-theme + ) + !librsync-bundled? ( =sys-devel/gcc-4.2.0 + sys-libs/zlib + sys-libs/ncurses:5/5" + +src_unpack() { + unpack ${A} + mkdir -p "${S}" || die + mv "${WORKDIR}"/.dropbox-dist/* "${S}" || die + mv "${S}"/dropbox-lnx.*-${PV}/* "${S}" || die + rmdir "${S}"/dropbox-lnx.*-${PV}/ || die + rmdir .dropbox-dist || die +} + +src_prepare() { + eapply_user + + rm -vf libGL.so.1 libX11* libdrm.so.2 libpopt.so.0 wmctrl || die + # tray icon doesnt load when removing libQt5* (bug 641416) + #rm -vrf libQt5* libicu* qt.conf plugins/ || die + if use X ; then + mv images/hicolor/16x16/status "${T}" || die + else + rm -vrf PyQt5* *pyqt5* images || die + fi + if use librsync-bundled ; then + patchelf --set-rpath '$ORIGIN' librsyncffi.compiled._librsyncffi*.so || die + else + rm -vf librsync.so.1 || die + fi + pax-mark cm dropbox + mv README ACKNOWLEDGEMENTS "${T}" || die +} + +src_install() { + local targetdir="/opt/dropbox" + + insinto "${targetdir}" + doins -r * + fperms a+x "${targetdir}"/{dropbox,dropboxd} + dosym "${targetdir}/dropboxd" "/opt/bin/dropbox" + + use X && doicon -s 16 -c status "${T}"/status + + make_desktop_entry "${PN}" "Dropbox" + + newinitd "${FILESDIR}"/dropbox.initd dropbox + newconfd "${FILESDIR}"/dropbox.conf dropbox + systemd_newunit "${FILESDIR}"/dropbox_at.service-r1 "dropbox@.service" + + dodoc "${T}"/{README,ACKNOWLEDGEMENTS} +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + gnome2_icon_cache_update +} + +pkg_postrm() { + gnome2_icon_cache_update +} diff --git a/net-misc/dropbox/files/dropbox.conf b/net-misc/dropbox/files/dropbox.conf new file mode 100644 index 0000000..c20c3c4 --- /dev/null +++ b/net-misc/dropbox/files/dropbox.conf @@ -0,0 +1,14 @@ +# /etc/conf.d/dropbox.conf: config file for /etc/init.d/dropbox + +# Users to run dropbox +DROPBOX_USERS="" + +# integer [-20 .. 19 ] default 0 +# change the priority of the server -20 (high) to 19 (low) +# see nice(1) for description +#NICE=0 + +# See start-stop-daemon(8) for possible settings +#IONICE=2 + +PID_DIR=/var/run/dropbox diff --git a/net-misc/dropbox/files/dropbox.initd b/net-misc/dropbox/files/dropbox.initd new file mode 100644 index 0000000..4f8dd70 --- /dev/null +++ b/net-misc/dropbox/files/dropbox.initd @@ -0,0 +1,65 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later + +depend() { + need localmount net + after bootmisc +} + +start() { + local tmpnice="${NICE:+"--nicelevel "}${NICE}" + local tmpionice="${IONICE:+"--ionice "}${IONICE}" + local started="" + + ebegin "Starting dropbox" + for dbuser in ${DROPBOX_USERS}; do + local homedir=$(eval echo ~${dbuser}) + if test -d "${homedir}" && \ + echo 0 > ${homedir}/.dropbox/dropbox.pid && \ + start-stop-daemon -S -b \ + ${tmpnice} ${tmpionice} \ + -u ${dbuser} -v \ + -p ${homedir}/.dropbox/dropbox.pid \ + -e HOME=${homedir} \ + -x /opt/bin/dropbox; then + started="${started} ${dbuser}" + else + eend $? + eerror "Failed to start dropbox for ${dbuser}" + if [ -n "${started}" ]; then + eerror "Stopping already started dropbox" + DROPBOX_USERS=${started} stop + fi + return 1 + fi + done + if [ -z "${started}" ];then + eerror "No dropbox started" + eend 1 + else + eend 0 + fi +} + +stop() { + local retval=0 + ebegin "Stopping dropbox" + for dbuser in ${DROPBOX_USERS}; do + local homedir=$(eval echo ~${dbuser}) + start-stop-daemon --stop \ + --pidfile ${homedir}/.dropbox/dropbox.pid || retval=$? + done + eend ${retval} +} + +status() { + for dbuser in ${DROPBOX_USERS}; do + local homedir=$(eval echo ~${dbuser}) + if [ -e ${homedir}/.dropbox/dropbox.pid ] ; then + echo "dropboxd for USER $dbuser: running." + else + echo "dropboxd for USER $dbuser: not running." + fi + done +} diff --git a/net-misc/dropbox/files/dropbox_at.service-r1 b/net-misc/dropbox/files/dropbox_at.service-r1 new file mode 100644 index 0000000..b46a850 --- /dev/null +++ b/net-misc/dropbox/files/dropbox_at.service-r1 @@ -0,0 +1,13 @@ +[Unit] +Description=Dropbox +After=local-fs.target network.target + +[Service] +ExecStart=/opt/dropbox/dropboxd +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process +Restart=always +User=%i + +[Install] +WantedBy=multi-user.target diff --git a/net-misc/dropbox/metadata.xml b/net-misc/dropbox/metadata.xml new file mode 100644 index 0000000..6d19b99 --- /dev/null +++ b/net-misc/dropbox/metadata.xml @@ -0,0 +1,10 @@ + + + + + danny@nerdcruft.net + + + Use bundled librsync library + +