commit: 7daf37974524787248820666a836689a2141e402
Author: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com>
AuthorDate: Fri Nov 3 03:34:32 2023 +0000
Commit: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com>
CommitDate: Fri Nov 3 03:36:31 2023 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=7daf3797
net-misc/megasync: add 4.10.0.0
Signed-off-by: Takuya Wakazono <pastalian46 <AT> gmail.com>
net-misc/megasync/Manifest | 2 +
.../megasync/files/megasync-4.10.0.0_ffmpeg6.patch | 27 ++++
net-misc/megasync/megasync-4.10.0.0.ebuild | 147 +++++++++++++++++++++
3 files changed, 176 insertions(+)
diff --git a/net-misc/megasync/Manifest b/net-misc/megasync/Manifest
index 84ee837620..0230088c95 100644
--- a/net-misc/megasync/Manifest
+++ b/net-misc/megasync/Manifest
@@ -1,4 +1,6 @@
+DIST megasync-4.10.0.0.tar.gz 20254658 BLAKE2B
c36a715ec4da883f5f8b9bf2f9f223b0701ba7b74399cba448bbf93dbc210bc2b3ff4b538af0eba08ea8a92f0134749fa2eeb3eba00b1de6cfad5d42117d2ab8
SHA512
3f37c39dd0552e64f802cebb63f275a8cbc2b445aad1f74576b732022563f79c8264257494f7778d6fec6dff98f06cc7276022edc6e6279bd6e683fdcfcddb94
DIST megasync-4.3.8.0.tar.gz 16019709 BLAKE2B
493ac0df0e8ca5c6617e493b5b3d81e45cedf2212a83ec9f5f6c07eee6fdf1d749b3735e10082b89f376f261ebfb825a3a7c457b8aa3be64702cddca34558558
SHA512
597b1d4a5a806514449b55e8bf81688b3c6d275372ebb56a45841b2f4c7caf8d9db363cf627fa0b6b84f4c662dc8cf87179b4478cd50b7b7efa1e23a9dca3389
DIST megasync-4.5.0.0.tar.gz 16162074 BLAKE2B
9ad09b61614992fc48572c168bb3b9692145289b945c01e371babe78a3b75bcc20a842f524279f6db35f8d93c914e9ba68ee5d187614b5041638813cb304531e
SHA512
f0c78d741be4a9ee9411be63667ea76cca3ff50ab70a81c904011e1ce1c6f0287ab5c90fc2b1a7a7c040b2d568819f91ecd10f8d570b22231df7b99166eacb11
+DIST megasync-sdk-4.10.0.0.tar.gz 3696547 BLAKE2B
13f69a0bd24a4aac6e73af1bd883bd0abdfd5ceef6e9e558286fc9002acd5f4822c762b57c4ca7fc0000d3f5ec3a1a00459e3b0a2d2d1c4963d7fc8caacd2b6a
SHA512
8dcbd0a0b086616a432ff0979695ddb799a01a32550f0777ddf26fe795b340a754dbcd3f77af55e9286673bca3c366cdaa07432c1c2b552b2ecf23f9500e8a2c
DIST megasync-sdk-4.3.8.0.tar.gz 3363057 BLAKE2B
fbc7006a5559a5e2220cd9f9f398c835a1de919624e4d00d052580cf7e3ac4bae2ec1acbd6650b1eaef1218363203837cad562875067e524e067a53d5553567b
SHA512
e6ec612fb11be4566d091d4159429ee50574081753caae3b1dd4e22221f2b213cfc0787b52051cbcdf9b0069869df6c95aa80951bdc3fa5098dd26fa0a2e7f7e
DIST megasync-sdk-4.5.0.0.tar.gz 3497367 BLAKE2B
1594d792f38df4df29acd25ea5c920acf27410513544abc618a692e3ed2e6e1a459123b043a9aa3bfdc4647d753d6c14cc5ee1bde02abd6c0f6d7ce66b118821
SHA512
177b9e31f2aacfa370132657bb70ec315edcfbcfe043f067f4c67b69a47ade7235699183541de2462d2ab2a18b4688006cd938ae80da603df9bd79d908b58140
diff --git a/net-misc/megasync/files/megasync-4.10.0.0_ffmpeg6.patch
b/net-misc/megasync/files/megasync-4.10.0.0_ffmpeg6.patch
new file mode 100644
index 0000000000..4c4757926e
--- /dev/null
+++ b/net-misc/megasync/files/megasync-4.10.0.0_ffmpeg6.patch
@@ -0,0 +1,27 @@
+diff -Naur a/src/MEGASync/mega/src/gfx/freeimage.cpp
b/src/MEGASync/mega/src/gfx/freeimage.cpp
+--- a/src/MEGASync/mega/src/gfx/freeimage.cpp 2023-09-27 22:20:26.000000000
+0900
++++ b/src/MEGASync/mega/src/gfx/freeimage.cpp 2023-11-03 11:01:24.526257561
+0900
+@@ -209,12 +209,6 @@
+
+ #ifdef HAVE_FFMPEG
+
+-#ifdef AV_CODEC_CAP_TRUNCATED
+-#define CAP_TRUNCATED AV_CODEC_CAP_TRUNCATED
+-#else
+-#define CAP_TRUNCATED CODEC_CAP_TRUNCATED
+-#endif
+-
+ const char *GfxProviderFreeImage::supportedformatsFfmpeg()
+ {
+ return ".264.265.3g2.3gp.3gpa.3gpp.3gpp2.mp3"
+@@ -330,10 +324,6 @@
+
+ // Force seeking to key frames
+ formatContext->seek2any = false;
+- if (decoder->capabilities & CAP_TRUNCATED)
+- {
+- codecContext->flags |= CAP_TRUNCATED;
+- }
+
+ AVPixelFormat sourcePixelFormat =
static_cast<AVPixelFormat>(codecParm->format);
+ AVPixelFormat targetPixelFormat = AV_PIX_FMT_BGR24; //raw data expected
by freeimage is in this format
diff --git a/net-misc/megasync/megasync-4.10.0.0.ebuild
b/net-misc/megasync/megasync-4.10.0.0.ebuild
new file mode 100644
index 0000000000..6f32a49537
--- /dev/null
+++ b/net-misc/megasync/megasync-4.10.0.0.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools desktop qmake-utils xdg cmake
+
+DESCRIPTION="The official Qt-based program for syncing your MEGA account in
your PC"
+HOMEPAGE="
+ https://mega.io
+ https://github.com/meganz/MEGAsync
+"
+
+if [[ ${PV} == 9999 ]];then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/meganz/MEGAsync"
+ EGIT_BRANCH="master"
+ EGIT_SUBMODULES=( '*' )
+else
+ MEGA_SDK_REV="91d14ae6b024339dd4e15acb367ac20fb24633ac" # commit of
src/MEGASync/mega submodule
+ MEGA_TAG_SUFFIX="Win"
+ SRC_URI="
+
https://github.com/meganz/MEGAsync/archive/v${PV}_${MEGA_TAG_SUFFIX}.tar.gz ->
${P}.tar.gz
+ https://github.com/meganz/sdk/archive/${MEGA_SDK_REV}.tar.gz ->
${PN}-sdk-${PV}.tar.gz
+ "
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}"/MEGAsync-${PV}_${MEGA_TAG_SUFFIX}
+fi
+
+LICENSE="MEGA"
+SLOT="0"
+IUSE="+cryptopp +curl +freeimage +sqlite +zlib dolphin examples java nautilus
php python readline threads thunar"
+
+RDEPEND="
+ app-arch/xz-utils
+ dev-libs/libgcrypt
+ dev-libs/libsodium
+ dev-libs/libuv
+ dev-libs/openssl:0=
+ media-libs/libpng
+ net-dns/c-ares
+ x11-themes/hicolor-icon-theme
+ cryptopp? ( dev-libs/crypto++ )
+ curl? ( net-misc/curl[ssl,curl_ssl_openssl(-)] )
+ dolphin? ( kde-apps/dolphin )
+ freeimage? ( media-libs/freeimage )
+ nautilus? ( >=gnome-base/nautilus-3 )
+ readline? ( sys-libs/readline:0 )
+ sqlite? ( dev-db/sqlite:3 )
+ thunar? ( xfce-base/thunar )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="
+ ${RDEPEND}
+ media-libs/libmediainfo
+ media-libs/libraw
+ dev-qt/qtcore:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtgui:5
+ dev-qt/qtconcurrent:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtdbus:5
+ dev-qt/qtimageformats:5
+ dev-qt/qtsvg:5
+ dev-qt/qtx11extras:5
+"
+BDEPEND="
+ dev-lang/swig
+ dev-qt/linguist-tools
+"
+
+DOCS=( CREDITS.md README.md )
+
+CMAKE_USE_DIR="${S}/src/MEGAShellExtDolphin"
+
+src_prepare() {
+ if [[ ${PV} != 9999 ]]; then
+ rmdir src/MEGASync/mega
+ mv "${WORKDIR}"/sdk-${MEGA_SDK_REV} src/MEGASync/mega
+ fi
+ cd "${S}/src/MEGASync/mega"
+ eapply -Np1 "${FILESDIR}/${PN}-4.5.0.0_pdfium.patch"
+ cd "${S}"
+ if has_version ">=media-video/ffmpeg-6.0"; then
+ eapply "${FILESDIR}/${PN}-4.10.0.0_ffmpeg6.patch"
+ fi
+ if use dolphin; then
+ # use the kde5 CMakeLists instead of the kde 4 version
+ mv src/MEGAShellExtDolphin/CMakeLists_kde5.txt
src/MEGAShellExtDolphin/CMakeLists.txt || die
+ cmake_src_prepare
+ else
+ default
+ fi
+ cd "${S}/src/MEGASync/mega"
+ eautoreconf
+}
+
+src_configure() {
+ cd "${S}/src/MEGASync/mega"
+ econf \
+ "--disable-silent-rules" \
+ "--disable-curl-checks" \
+ "--disable-megaapi" \
+ $(use_with zlib) \
+ $(use_with sqlite) \
+ $(use_with cryptopp) \
+ "--with-cares" \
+ $(use_with curl) \
+ "--without-termcap" \
+ $(use_enable threads posix-threads) \
+ "--with-sodium" \
+ $(use_with freeimage) \
+ $(use_with readline) \
+ $(use_enable examples) \
+ $(use_enable java) \
+ $(use_enable php) \
+ $(use_enable python) \
+ "--enable-gcc-hardening"
+ cd "${S}/src"
+
+ local myeqmakeargs=(
+ MEGA.pro
+ CONFIG+="release"
+ )
+
+ eqmake5 ${myeqmakeargs[@]}
+ use dolphin && cmake_src_configure
+ $(qt5_get_bindir)/lrelease MEGASync/MEGASync.pro
+}
+
+src_compile() {
+ emake -C src INSTALL_ROOT=. || die
+ use dolphin && cmake_src_compile
+}
+
+src_install() {
+ use dolphin && cmake_src_install
+ einstalldocs
+
+ dobin src/MEGASync/${PN}
+ domenu src/MEGASync/platform/linux/data/${PN}.desktop
+
+ cd src/MEGASync/platform/linux/data/icons/hicolor
+ for size in 16x16 32x32 48x48 128x128 256x256;do
+ doicon -s $size $size/apps/mega.png
+ done
+}