summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSven Eden <sven.eden@gmx.de>2018-01-01 16:37:51 +0100
committerSven Eden <sven.eden@gmx.de>2018-01-01 16:37:51 +0100
commit2c9f0295d01dc4351b0635e986cb10d9bb431d9d (patch)
treea48dca931c68e5eb41f805bb1944417eb6856bef /net-misc
parentnet-misc/megasync: New Manifest for upstream file changes. (diff)
downloadseden-2c9f0295d01dc4351b0635e986cb10d9bb431d9d.tar.gz
seden-2c9f0295d01dc4351b0635e986cb10d9bb431d9d.tar.bz2
seden-2c9f0295d01dc4351b0635e986cb10d9bb431d9d.zip
net-misc/megasync: Finally a true build-from-source build. *yay*
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/megasync/Manifest5
-rw-r--r--net-misc/megasync/files/megasync-3.5.3-adapt_distro_version.patch17
-rw-r--r--net-misc/megasync/files/megasync-3.5.3-enable_install_target.patch19
-rw-r--r--net-misc/megasync/megasync-15.10-r1.ebuild63
-rw-r--r--net-misc/megasync/megasync-16.04-r1.ebuild69
-rw-r--r--net-misc/megasync/megasync-3.5.3.ebuild162
-rw-r--r--net-misc/megasync/metadata.xml38
7 files changed, 234 insertions, 139 deletions
diff --git a/net-misc/megasync/Manifest b/net-misc/megasync/Manifest
index 5681c1d..736978b 100644
--- a/net-misc/megasync/Manifest
+++ b/net-misc/megasync/Manifest
@@ -1,4 +1 @@
-DIST megasync-xUbuntu_15.10_amd64.deb 3085826 SHA256 3253231e9a3be1a9ab1fc46289bd1de00bbaaf71878c97680ecacb354b90bdb5 SHA512 80250c2057bc5f278527adb8676927437eb35dde361e4e501ef8717ffddc07801530e925f6b6718d55b923bcd3510413d48a3c3d5f0277649af0c484d344f643 WHIRLPOOL a6405ddb8334c2cf19d08e0a41c9d8444dd3d484f128c85af9be39f9cdc27be87aa1805e5fc67e3321fac63db30d7e6906b89e98e933b281ebb30974ca35156e
-DIST megasync-xUbuntu_15.10_i386.deb 3157256 SHA256 52fc539df3701ebc69e3670ab2f49404d7b03fcfbe19dbcee0330b0c703f5354 SHA512 a3834903b85e4c13950bc67b1f36a634a93e67e115a6f8d5f7255d7ad4aace7d04ffda27e263d29376c6f1ee2e658d8df9369f782e6153415b9ef48669c8bc37 WHIRLPOOL cf5be334516be976f0032d8f1701e5539460d208c96be9f957c4418519502a47f1556eca795dc9581b44998c0c64cb7cd88a8ca18da386d675b818571844adf5
-DIST megasync-xUbuntu_16.04_amd64.deb 3085592 SHA256 b9d2d3acd7ab41561b47d6c41d024e6109b3977a36712966f77fd56e4323300f SHA512 18cb6e9fa15b8c783881e38b48ef4a4509018e9f87b15593dfbe3fb5e4e18aae287351b1737ff13661e5534035fea583c5ed7de62b1a342007dd68800ea9d53b WHIRLPOOL 9d5a76d495cf6bb207e60b458c2a51b2cd93caa83fc47dad957c0f00d3f54bc5ac6a18dbd56224903a4e1b3bdbb2df2441d2c1cd94da760be38c0a500dab9664
-DIST megasync-xUbuntu_16.04_i386.deb 3157244 SHA256 243a76096c300dd02bf7dcb2e8a9d1ef07665259c297c845f6eabb7e558f4a47 SHA512 cdf6cab7ec66c1e3f20e18c277f2b368a187e6cb285ccaa5754e82dbcd97d4f1dfc26df7e235703d955a238900994a8501fbdc18075c328a5b4a7206d2954566 WHIRLPOOL 84bf6db9720e50e06c56630984eb2416eb1a8d72574cf4998269b2caec7f7a421fa922917ac233461c5c20379fe6ca63417daa373fa2d456c7a806e36fea58c4
+DIST megasync-3.5.3-2.1.src.rpm 33464304 SHA256 00f3d7fe3d5cb1670593bb8dff0855d9e863d9cc4b5c987922679c73a642a539 SHA512 622f19095260fd4c281a426d8203369daf5a7ae302b23e30a1b3329efd18a622c5d9f21d1647f2898202fb1d75315b089068fc92d990324a3cc774bb80a75c59 WHIRLPOOL 255f8a7d7f23c17beeadf83a60bfb4394b0899fd97dfc61f941c878c3ea473c32c3942721884ae56ff7f968a6830f9af380bea1faf4da4e44aff77f1e532ff48
diff --git a/net-misc/megasync/files/megasync-3.5.3-adapt_distro_version.patch b/net-misc/megasync/files/megasync-3.5.3-adapt_distro_version.patch
new file mode 100644
index 0000000..1e0c3e7
--- /dev/null
+++ b/net-misc/megasync/files/megasync-3.5.3-adapt_distro_version.patch
@@ -0,0 +1,17 @@
+--- ./MEGASync/platform/platform.pri.ori 2017-12-29 08:14:10.123439659 +0100
++++ ./MEGASync/platform/platform.pri 2017-12-29 09:10:06.323377579 +0100
+@@ -26,12 +26,12 @@
+
+ distro.target = $$PWD/linux/data/distro
+ distro.path = $$DATADIR/doc/megasync
+- system(command -v lsb_release): distro.commands = lsb_release -ds > $$distro.target
++ distro.commands = cat /etc/gentoo-release > $$distro.target
+ distro.files = $$distro.target
+
+ version.target = $$PWD/linux/data/version
+ version.path = $$DATADIR/doc/megasync
+- system(command -v lsb_release): version.commands = lsb_release -rs > $$version.target
++ version.commands = cut -d \' \' -f 5 /etc/gentoo-release > $$version.target
+ version.files = $$version.target
+
+ INSTALLS += distro version
diff --git a/net-misc/megasync/files/megasync-3.5.3-enable_install_target.patch b/net-misc/megasync/files/megasync-3.5.3-enable_install_target.patch
new file mode 100644
index 0000000..d3ff194
--- /dev/null
+++ b/net-misc/megasync/files/megasync-3.5.3-enable_install_target.patch
@@ -0,0 +1,19 @@
+--- a/MEGASync/MEGASync.pro 2017-12-28 09:21:38.917418127 +0100
++++ b/MEGASync/MEGASync.pro 2017-12-28 09:22:28.967419630 +0100
+@@ -28,11 +28,11 @@
+ TARGET = megasync
+
+ # Uncomment the following if "make install" doesn't copy megasync in /usr/bin directory
+-# isEmpty(PREFIX) {
+-# PREFIX = /usr
+-# }
+-# target.path = $$PREFIX/bin
+-# INSTALLS += target
++ isEmpty(PREFIX) {
++ PREFIX = /usr
++ }
++ target.path = $$PREFIX/bin
++ INSTALLS += target
+ }
+ else {
+ TARGET = MEGAsync
diff --git a/net-misc/megasync/megasync-15.10-r1.ebuild b/net-misc/megasync/megasync-15.10-r1.ebuild
deleted file mode 100644
index f49a278..0000000
--- a/net-misc/megasync/megasync-15.10-r1.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=6
-inherit eutils multilib
-
-DESCRIPTION="The official QT-Based mega.co.nz client for sync your MEGA account"
-HOMEPAGE="http://mega.co.nz"
-
-URL_64="https://mega.nz/linux/MEGAsync/xUbuntu_${PV}/amd64/${PN}-xUbuntu_${PV}_amd64.deb"
-URL_32="https://mega.nz/linux/MEGAsync/xUbuntu_${PV}/i386/${PN}-xUbuntu_${PV}_i386.deb"
-
-SRC_URI="
- amd64? ( ${URL_64} )
- x86? ( ${URL_32} )
-"
-
-LICENSE="TheClarifiedArtisticLicense"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RESTRICT="mirror"
-
-IUSE="libressl"
-
-DEPEND="
- sys-devel/binutils
- app-arch/tar
-"
-
-RDEPEND="
- dev-qt/qtdbus:4
- libressl? ( dev-libs/libressl )
- !libressl? ( dev-libs/openssl )
- media-libs/libpng
- net-dns/c-ares"
-
-S="${WORKDIR}"
-
-src_unpack() {
- unpack $A
- unpack ./data.tar.xz
- cd ./usr
-}
-
-src_install() {
- exeinto /usr/bin
- doexe usr/bin/megasync
- domenu usr/share/applications/megasync.desktop
- doicon -s 16 usr/share/icons/hicolor/16x16/apps/mega.png
- doicon -s 32 usr/share/icons/hicolor/32x32/apps/mega.png
- doicon -s 48 usr/share/icons/hicolor/48x48/apps/mega.png
- doicon -s 128 usr/share/icons/hicolor/128x128/apps/mega.png
- doicon -s 256 usr/share/icons/hicolor/256x256/apps/mega.png
-
- # Unfortunately the damn thing wants openssl so-names,
- # although it works fine with libressl
- if use libressl; then
- dosym "libcrypto.so" "${EPREFIX}usr/$(get_libdir)/libcrypto.so.1.0.0"
- dosym "libssl.so" "${EPREFIX}usr/$(get_libdir)/libssl.so.1.0.0"
- fi
-}
diff --git a/net-misc/megasync/megasync-16.04-r1.ebuild b/net-misc/megasync/megasync-16.04-r1.ebuild
deleted file mode 100644
index 856cb1b..0000000
--- a/net-misc/megasync/megasync-16.04-r1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=6
-inherit eutils multilib
-
-DESCRIPTION="The official QT-Based mega.co.nz client for sync your MEGA account"
-HOMEPAGE="http://mega.co.nz"
-
-URL_64="https://mega.nz/linux/MEGAsync/xUbuntu_${PV}/amd64/${PN}-xUbuntu_${PV}_amd64.deb"
-URL_32="https://mega.nz/linux/MEGAsync/xUbuntu_${PV}/i386/${PN}-xUbuntu_${PV}_i386.deb"
-
-SRC_URI="
- amd64? ( ${URL_64} )
- x86? ( ${URL_32} )
-"
-
-LICENSE="TheClarifiedArtisticLicense"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RESTRICT="mirror"
-
-IUSE="libressl"
-
-DEPEND="
- sys-devel/binutils
- app-arch/tar
-"
-
-RDEPEND="
- dev-qt/qtdbus:4
- libressl? ( dev-libs/libressl )
- !libressl? ( dev-libs/openssl )
- media-libs/libpng
- net-dns/c-ares
- dev-libs/crypto++"
-
-S="${WORKDIR}"
-
-src_unpack() {
- unpack $A
- unpack ./data.tar.xz
- cd ./usr
-}
-
-src_install() {
- exeinto /usr/bin
- doexe usr/bin/megasync
- domenu usr/share/applications/megasync.desktop
- doicon -s 16 usr/share/icons/hicolor/16x16/apps/mega.png
- doicon -s 32 usr/share/icons/hicolor/32x32/apps/mega.png
- doicon -s 48 usr/share/icons/hicolor/48x48/apps/mega.png
- doicon -s 128 usr/share/icons/hicolor/128x128/apps/mega.png
- doicon -s 256 usr/share/icons/hicolor/256x256/apps/mega.png
-
- # Unfortunately the damn thing wants openssl so-names,
- # although it works fine with libressl
- if use libressl; then
- dosym "libcrypto.so" "${EPREFIX}usr/$(get_libdir)/libcrypto.so.1.0.0"
- dosym "libssl.so" "${EPREFIX}usr/$(get_libdir)/libssl.so.1.0.0"
- fi
-
- # Our libcrypto++ installs as
- # libcrypto++.so.0.0.0 but mega sync needs
- # libcrypto++.so.9
- dosym "libcrypto++.so.0.0.0" "${EPREFIX}usr/$(get_libdir)/libcrypto++.so.9"
-}
diff --git a/net-misc/megasync/megasync-3.5.3.ebuild b/net-misc/megasync/megasync-3.5.3.ebuild
new file mode 100644
index 0000000..b14567b
--- /dev/null
+++ b/net-misc/megasync/megasync-3.5.3.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools eutils gnome2-utils qmake-utils rpm
+
+DESCRIPTION="Easy automated syncing between your computers and your MEGA cloud drive"
+HOMEPAGE="http://mega.co.nz"
+
+RELEASE="2.1"
+
+BASE_URL=""
+
+SRC_URI="https://mega.nz/linux/MEGAsync/Fedora_27/src/megasync-${PV}-${RELEASE}.src.rpm"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RESTRICT="mirror"
+
+IUSE="+api chat +curl debug doc dot examples +inotify java libressl +libuv pcre
+php python static-libs +sync tests +tools +threads"
+
+REQUIRED_USE="
+ sync? ( !java !php !python )
+ dot? ( doc )
+"
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/crypto++
+ dev-libs/libsodium
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtdbus:5
+ dev-qt/qtcore:5
+ media-libs/freeimage
+ media-libs/libpng:0
+ net-dns/c-ares
+ x11-themes/hicolor-icon-theme
+ sys-libs/readline:0
+ curl? ( net-misc/curl )
+ libressl? ( dev-libs/libressl )
+ !libressl? ( dev-libs/openssl:0 )
+ libuv? ( dev-libs/libuv )
+ pcre? ( dev-libs/libpcre )
+ php? ( dev-lang/php:* )
+ tests? ( dev-cpp/gtest )
+"
+
+DEPEND="
+ ${RDEPEND}
+ sys-devel/binutils
+ doc? ( app-doc/doxygen[dot=] )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-enable_install_target.patch
+ "${FILESDIR}"/${P}-adapt_distro_version.patch
+)
+
+DOCS=(
+ MEGASync/mega/CREDITS.md
+ MEGASync/mega/LICENSE
+ MEGASync/mega/README.md
+)
+
+src_prepare() {
+ default
+
+ # We then have to prepare the SDK
+ pushd "MEGASync/mega" > /dev/null || die
+ eautoreconf
+ popd > /dev/null || die
+
+ # Now build the translations
+ $(qt5_get_bindir)/lrelease MEGASync/MEGASync.pro || die "lrelease failed"
+}
+
+src_configure() {
+ # We have to prepare the SDK first
+ pushd "MEGASync/mega" > /dev/null || die
+ econf \
+ $(use_enable static-libs) \
+ $(use_enable debug) \
+ $(use_enable inotify) \
+ $(usex !threads --disable-posix-threads "") \
+ $(use_enable sync) \
+ $(usex !api --disable-megaapi "") \
+ $(use_enable java) \
+ $(use_enable chat) \
+ $(use_enable curl curl-checks) \
+ $(use_enable examples) \
+ $(use_enable tools megacmd) \
+ $(use_enable tests) \
+ $(use_enable python) \
+ $(use_enable php) \
+ $(use_enable doc doxygen-doc) \
+ $(use_enable dot doxygen-dot) \
+ --disable-doxygen-ps \
+ $(use_with java java-include-dir "$(java-config -g JAVA_HOME)/include") \
+ $(use_with libuv libuv "${EPREFIX}/usr/$(get_libdir)") \
+ $(use_with pcre pcre "${EPREFIX}/usr/$(get_libdir)") \
+ $(use_with python python3)
+
+ popd > /dev/null || die
+
+ # Now the global configuration can take place
+ eqmake5 \
+ CONFIG+=$(usex debug debug release) \
+ $(usex tools CONFIG+=with_tools "") \
+ $(usex pcre QMAKE_LFLAGS+="$(pkg-config --libs libpcre)" "") \
+ DEFINES+=no_desktop \
+ -recursive MEGA.pro
+}
+
+src_compile() {
+ # We have to build the SDK first
+ pushd "MEGASync/mega" > /dev/null || die
+ emake
+ popd > /dev/null || die
+
+ default
+}
+
+src_install() {
+ # We have to install the SDK first
+ pushd "MEGASync/mega" > /dev/null || die
+ emake DESTDIR="${D}" install
+ popd > /dev/null || die
+
+ emake INSTALL_ROOT="${D}" install
+
+ # Install desktop file
+ insinto /usr/share/applications
+ doins "${S}"/MEGASync/platform/linux/data/megasync.desktop
+
+ # Install icons
+ local s SIZES=(16 32 48 128 256)
+ local p="${S}"/MEGASync/platform/linux/data/icons/hicolor
+ for s in "${SIZES[@]}"; do
+ doicon -s $s ${p}/${s}x${s}/apps/mega.png
+ done
+ local v STATUS=(synching warning paused logging uptodate)
+ p="${S}"/MEGASync/gui/images
+ for v in "${STATUS[@]}"; do
+ newicon -s scalable -c status ${p}/${v}.svg mega${v}.svg
+ done
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/net-misc/megasync/metadata.xml b/net-misc/megasync/metadata.xml
index ab0b332..39b0bc2 100644
--- a/net-misc/megasync/metadata.xml
+++ b/net-misc/megasync/metadata.xml
@@ -1,7 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer>
- <email>yamakuzure@gmx.net</email>
- </maintainer>
+ <maintainer type="person">
+ <email>yamakuzure@gmx.net</email>
+ <name>Sven Eden</name>
+ <description>Proxied maintainer; set to assignee in all bugs</description>
+ </maintainer>
+<longdescription lang="en">
+MEGA --- _The Privacy Company_ --- is a Secure Cloud Storage
+provider that protects your data thanks to end-to-end encryption. We call it User Controlled Encryption,
+or UCE, and all our clients automatically manage it.
+
+All files stored on MEGA are encrypted. All data transfers from and to MEGA are encrypted. And while
+most cloud storage providers can and do claim the same, MEGA is different – unlike the industry norm
+where the cloud storage provider holds the decryption key, with MEGA, you control the encryption,
+you hold the keys, and you decide who you grant or deny access to your files.
+</longdescription>
+ <use>
+ <flag name="api">Enable MEGA API support</flag>
+ <flag name="chat">Enable chat support</flag>
+ <flag name="curl">Enable cURL checks</flag>
+ <flag name="doc">Generate doxygen documentation</flag>
+ <flag name="dot">Generate graphics for doxygen documentation</flag>
+ <flag name="examples">Build example applications</flag>
+ <flag name="inotify">Enable inotify support</flag>
+ <flag name="java">Build Java language bindings</flag>
+ <flag name="libressl">Use libressl instead of openssl</flag>
+ <flag name="libuv">Enable asynchronous I/O using libuv</flag>
+ <flag name="pcre">Enable support for libpcre</flag>
+ <flag name="php">Build PHP language bindings</flag>
+ <flag name="python">Build Python language bindings</flag>
+ <flag name="static-libs"></flag>
+ <flag name="sync">Include sync subsystem</flag>
+ <flag name="tests">Build test applications</flag>
+ <flag name="tools">Build tools like megacmd</flag>
+ <flag name="threads">Enable multi-threading</flag>
+ </use>
</pkgmetadata>