commit:     b12959fe16c93702e193a050bdb4be568411e54a
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 29 09:07:59 2017 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Sat Jul 29 09:09:29 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b12959fe

app-backup/spideroak-bin: fix bug #622784

Package-Manager: Portage-2.3.6, Repoman-2.3.1

 .../spideroak-bin/spideroak-bin-6.3.0-r1.ebuild    | 104 +++++++++++++++++++++
 1 file changed, 104 insertions(+)

diff --git a/app-backup/spideroak-bin/spideroak-bin-6.3.0-r1.ebuild 
b/app-backup/spideroak-bin/spideroak-bin-6.3.0-r1.ebuild
new file mode 100644
index 00000000000..ee101fd0f53
--- /dev/null
+++ b/app-backup/spideroak-bin/spideroak-bin-6.3.0-r1.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit eutils unpacker
+
+DESCRIPTION="Secure free online backup, storage, and sharing system"
+HOMEPAGE="https://spideroak.com";
+
+SRC_URI_BASE="https://spideroak.com/release/spideroak";
+SRC_URI="x86? ( ${SRC_URI_BASE}/deb_x86 -> ${P}_x86.deb )
+       amd64? ( ${SRC_URI_BASE}/deb_x64 -> ${P}_amd64.deb )"
+
+RESTRICT="mirror strip"
+
+LICENSE="spideroak"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="dbus X"
+
+DEPEND="dev-util/patchelf"
+RDEPEND="
+       app-crypt/mit-krb5[keyutils]
+       media-libs/libpng:1.2
+       dbus? ( sys-apps/dbus )
+       X? (
+               media-libs/fontconfig
+               media-libs/freetype:2
+               dev-libs/glib:2
+               x11-libs/libICE
+               x11-libs/libSM
+               x11-libs/libX11
+               x11-libs/libXext
+               x11-libs/libXmu
+               x11-libs/libXrender
+               x11-libs/libXt
+       )
+"
+
+S=${WORKDIR}
+
+QA_PREBUILT="*"
+
+src_prepare() {
+       # Set RPATH for preserve-libs handling (bug #400979).
+       cd "${S}/opt/SpiderOakONE/lib" || die
+       local x
+       for x in `find` ; do
+               # Use \x7fELF header to separate ELF executables and libraries
+               [[ -f ${x} && $(od -t x1 -N 4 "${x}") == *"7f 45 4c 46"* ]] || 
continue
+               patchelf --set-rpath '$ORIGIN' "${x}" || \
+                       die "patchelf failed on ${x}"
+       done
+
+       #Remove the libraries that break compatibility in modern systems
+       #SpiderOak will use the system libs instead
+       rm -f "${S}/opt/SpiderOakONE/lib/libstdc++.so.6"
+       rm -f "${S}/opt/SpiderOakONE/lib/libgcc_s.so.1"
+       rm -f "${S}/opt/SpiderOakONE/lib/libpng12.so.0"
+       rm -f "${S}/opt/SpiderOakONE/lib/libz.so.1"
+
+       eapply_user
+}
+
+src_install() {
+       #install the wrapper script
+       exeinto /usr/bin
+       doexe usr/bin/SpiderOakONE
+
+       # inotify_dir_watcher needs to be marked executable, bug #453266
+       #chmod a+rx opt/SpiderOakONE/lib/inotify_dir_watcher
+
+       #install the executable
+       exeinto /opt/SpiderOakONE/lib
+       doexe opt/SpiderOakONE/lib/SpiderOakONE
+       doexe opt/SpiderOakONE/lib/inotify_dir_watcher
+       rm -f opt/SpiderOakONE/lib/{SpiderOakONE,inotify_dir_watcher}
+
+       #install the prebundled libraries
+       insinto /opt/SpiderOakONE
+       doins -r opt/SpiderOakONE/lib
+
+       #install the config files
+       use dbus || rm -rf etc/dbus-1
+       insinto /
+       doins -r etc
+
+       #install the manpage
+       doman usr/share/man/man1/SpiderOakONE.1.gz
+
+       if use X; then
+               domenu usr/share/applications/SpiderOakONE.desktop
+               doicon usr/share/pixmaps/SpiderOakONE.png
+       fi
+}
+
+pkg_postinst() {
+       if ! use X; then
+               einfo "For instructions on running SpiderOakONE without a GUI, 
please read the FAQ:"
+               einfo "  
https://spideroak.com/faq/questions/62/how_do_i_install_spideroak_on_a_headless_linux_server/";
+               einfo "  
https://spideroak.com/faq/questions/67/how_can_i_use_spideroak_from_the_commandline/";
+       fi
+}

Reply via email to