From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id B0C741581C1 for ; Fri, 12 Jul 2024 17:56:26 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 75F7BE2A9E; Fri, 12 Jul 2024 17:56:25 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 4E650E2A9E for ; Fri, 12 Jul 2024 17:56:25 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 3107533BF08 for ; Fri, 12 Jul 2024 17:56:24 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 9068CB82 for ; Fri, 12 Jul 2024 17:56:22 +0000 (UTC) From: "Takuya Wakazono" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Takuya Wakazono" Message-ID: <1720806954.66b1ec0cd4f881d69cf83773e8fa8177fcca9a69.pastalian46@gentoo> Subject: [gentoo-commits] repo/proj/guru:dev commit in: net-misc/megasync/files/, net-misc/megasync/ X-VCS-Repository: repo/proj/guru X-VCS-Files: net-misc/megasync/Manifest net-misc/megasync/files/megasync-5.3.0.0-fix-install-dir.patch net-misc/megasync/files/megasync-5.3.0.0-link-zlib.patch net-misc/megasync/files/megasync-5.3.0.0-rename-libcryptopp.patch net-misc/megasync/megasync-5.3.0.0.ebuild net-misc/megasync/megasync-9999.ebuild net-misc/megasync/metadata.xml X-VCS-Directories: net-misc/megasync/ net-misc/megasync/files/ X-VCS-Committer: pastalian46 X-VCS-Committer-Name: Takuya Wakazono X-VCS-Revision: 66b1ec0cd4f881d69cf83773e8fa8177fcca9a69 X-VCS-Branch: dev Date: Fri, 12 Jul 2024 17:56:22 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: cedb9d57-fef3-4ff2-ac1e-64f91f2ec861 X-Archives-Hash: 206c7b3af4bb3caeb3b2586abab6afc5 commit: 66b1ec0cd4f881d69cf83773e8fa8177fcca9a69 Author: Takuya Wakazono gmail com> AuthorDate: Fri Jul 12 17:28:40 2024 +0000 Commit: Takuya Wakazono gmail com> CommitDate: Fri Jul 12 17:55:54 2024 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=66b1ec0c net-misc/megasync: add 5.3.0.0 Set myself as a primary maintainer since the original maintainer lacks time to maintain this. Signed-off-by: Takuya Wakazono gmail.com> net-misc/megasync/Manifest | 2 + .../files/megasync-5.3.0.0-fix-install-dir.patch | 27 ++++ .../files/megasync-5.3.0.0-link-zlib.patch | 12 ++ .../megasync-5.3.0.0-rename-libcryptopp.patch | 11 ++ net-misc/megasync/megasync-5.3.0.0.ebuild | 172 +++++++++++++++++++++ net-misc/megasync/megasync-9999.ebuild | 139 ++++++++++------- net-misc/megasync/metadata.xml | 20 +-- 7 files changed, 321 insertions(+), 62 deletions(-) diff --git a/net-misc/megasync/Manifest b/net-misc/megasync/Manifest index 0fbd27795..432a384e0 100644 --- a/net-misc/megasync/Manifest +++ b/net-misc/megasync/Manifest @@ -1,2 +1,4 @@ DIST megasync-5.2.1.0.tar.gz 23819376 BLAKE2B 249471d14f146b0bbe4c97690c1832d63f06005b2dcc6f334a9fe2a33672d0b1bce3b738270d28a1674804320f53b25e3533548ed4a6f1af01ce91e24d138e32 SHA512 f667e73a8e6527cb79608584d486aeb9a8ebde4b6f3bc10f560030ee725575622c561fe75a217e8d9d97ddf204fd94ce258cc2b70a200baead7a5e44ab285aa8 +DIST megasync-5.3.0.0.tar.gz 24307650 BLAKE2B 4b4253f40abea54856d869ba5094d18dd7239f3c7a9d25611e1a053d370e943f29f3cbb4a672b559b1908600f6eafea586ec65e8a24cceb44a592337ff5e0f8a SHA512 61a4e0bf351816113bca23328dfe1872a031f6457368127dd1ec55f5147d22059e3cbb8998497398dbf706050eb228e09b41ed6300262a89c3abf71e1152f0e7 DIST megasync-sdk-5.2.1.0.tar.gz 3809248 BLAKE2B acf9be7b3d0faf843e394b717cb75ee703aadfdf2b79a6ea06eccb49d6d179ef8b2f3d430edce4bc37e6e53a45f1eab3865c433d015cf8d8412d6b037edbd81a SHA512 2c65c53050dcd7757a1015200d4e25ca260e833105e577c6506d36efa280c5e5e511e8b5ea029a6efac09f36ffd6bfdb49b71417d32457d42397de83240451ec +DIST megasync-sdk-5.3.0.0.tar.gz 4146154 BLAKE2B 7b73f4475958f0d2ad341638f0f5c7ab1c9570f38ecceb7393268b4307cd4052a6ba5b358fabf3138ba7ad6e503c18c4314204d2a4c8c2d19846e4093889b24e SHA512 8b301cf8654112893bb79e3ce8f9f2c7ee27bafcc68df6f4bceb88bb54a2f5168cedf34bd262dfeb0ef0c67b46c9420259d7f0f13bc067f9ae7799cc09d28abc diff --git a/net-misc/megasync/files/megasync-5.3.0.0-fix-install-dir.patch b/net-misc/megasync/files/megasync-5.3.0.0-fix-install-dir.patch new file mode 100644 index 000000000..a5f86e3e7 --- /dev/null +++ b/net-misc/megasync/files/megasync-5.3.0.0-fix-install-dir.patch @@ -0,0 +1,27 @@ +--- a/contrib/cmake/modules/desktopapp_configuration.cmake ++++ b/contrib/cmake/modules/desktopapp_configuration.cmake +@@ -29,8 +29,6 @@ if(UNIX AND NOT APPLE) + # Note: using cmake --install --prefix /some/prefix will keep the RPATH as configured above. + # Used for building packages: in which install dir is a path construction folder that will not be there in packages + +- set(CMAKE_INSTALL_LIBDIR "opt/megasync/lib") # override default "lib" from GNUInstallDirs +- set(CMAKE_INSTALL_BINDIR "usr/bin") # override default "bin" from GNUInstallDirs + + # Override CMAKE_INSTALL_PREFIX + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) # In consecutive runs it will always be undef/false +--- a/src/MEGASync/CMakeLists.txt ++++ b/src/MEGASync/CMakeLists.txt +@@ -142,13 +142,6 @@ if (UNIX AND NOT APPLE) + + set(vcpkg_lib_folder "${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/$<$:debug/>lib/") + +- install(DIRECTORY "${vcpkg_lib_folder}" +- TYPE LIB # In CMAKE_INSTALL_LIBDIR directory +- FILES_MATCHING +- PATTERN "*.so*" +- PATTERN "manual-link" EXCLUDE +- PATTERN "pkgconfig" EXCLUDE +- ) + + if(DEPLOY_QT_LIBRARIES) + include(desktopapp_deploy_qt) diff --git a/net-misc/megasync/files/megasync-5.3.0.0-link-zlib.patch b/net-misc/megasync/files/megasync-5.3.0.0-link-zlib.patch new file mode 100644 index 000000000..49db675fd --- /dev/null +++ b/net-misc/megasync/files/megasync-5.3.0.0-link-zlib.patch @@ -0,0 +1,12 @@ +--- a/src/MEGASync/control/control.cmake ++++ b/src/MEGASync/control/control.cmake +@@ -71,6 +71,9 @@ set(DESKTOP_APP_CONTROL_SOURCES + control/StatsEventHandler.cpp + ) + ++find_package(ZLIB REQUIRED) ++target_link_libraries(MEGAsync PRIVATE ZLIB::ZLIB) ++ + target_sources(MEGAsync + PRIVATE + ${DESKTOP_APP_CONTROL_HEADERS} diff --git a/net-misc/megasync/files/megasync-5.3.0.0-rename-libcryptopp.patch b/net-misc/megasync/files/megasync-5.3.0.0-rename-libcryptopp.patch new file mode 100644 index 000000000..0688c4475 --- /dev/null +++ b/net-misc/megasync/files/megasync-5.3.0.0-rename-libcryptopp.patch @@ -0,0 +1,11 @@ +--- a/src/MEGASync/mega/contrib/cmake/modules/sdklib_libraries.cmake ++++ b/src/MEGASync/mega/contrib/cmake/modules/sdklib_libraries.cmake +@@ -95,7 +95,7 @@ macro(load_sdklib_libraries) + + find_package(PkgConfig REQUIRED) # For libraries loaded using pkg-config + +- pkg_check_modules(cryptopp REQUIRED IMPORTED_TARGET libcrypto++) ++ pkg_check_modules(cryptopp REQUIRED IMPORTED_TARGET libcryptopp) + target_link_libraries(SDKlib PUBLIC PkgConfig::cryptopp) # TODO: Private for SDK core + + pkg_check_modules(sodium REQUIRED IMPORTED_TARGET libsodium) diff --git a/net-misc/megasync/megasync-5.3.0.0.ebuild b/net-misc/megasync/megasync-5.3.0.0.ebuild new file mode 100644 index 000000000..c93022217 --- /dev/null +++ b/net-misc/megasync/megasync-5.3.0.0.ebuild @@ -0,0 +1,172 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic qmake-utils xdg + +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="eb8dba09149e1aad0210c3591f3ef6e50022f714" # commit of src/MEGASync/mega submodule + MEGA_TAG_SUFFIX="Linux" + 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="dolphin mediainfo nautilus nemo thumbnail thunar" + +DEPEND=" + dev-db/sqlite:3 + dev-libs/crypto++:= + dev-libs/icu:= + dev-libs/libsodium:= + dev-libs/libuv:= + dev-libs/openssl:0= + dev-qt/qtconcurrent:5 + dev-qt/qtcore:5 + dev-qt/qtdbus:5 + dev-qt/qtdeclarative:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtimageformats:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + net-dns/c-ares:= + net-misc/curl[ssl] + sys-libs/zlib + x11-libs/libxcb:= + dolphin? ( + kde-apps/dolphin:5 + kde-frameworks/kcoreaddons:5 + kde-frameworks/kio:5 + kde-frameworks/kwidgetsaddons:5 + ) + mediainfo? ( + media-libs/libmediainfo + media-libs/libzen + ) + nautilus? ( + dev-libs/glib:2 + >=gnome-base/nautilus-43 + ) + nemo? ( + dev-libs/glib:2 + gnome-extra/nemo + ) + thumbnail? ( + media-libs/freeimage + media-video/ffmpeg:= + ) + thunar? ( xfce-base/thunar:= ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + dev-qt/linguist-tools:5 + dolphin? ( kde-frameworks/extra-cmake-modules ) +" + +PATCHES=( + "${FILESDIR}/${PN}-4.10.0.0_ffmpeg6.patch" + "${FILESDIR}/${PN}-4.10.0.0_fix-build.patch" + "${FILESDIR}/${PN}-5.3.0.0-link-zlib.patch" + "${FILESDIR}/${PN}-5.3.0.0-fix-install-dir.patch" + "${FILESDIR}/${PN}-5.3.0.0-rename-libcryptopp.patch" +) + +BUILD_DIR_DOLPHIN="${S}_dolphin" + +dolphin_run() { + if use dolphin; then + cd "${S}/src/MEGAShellExtDolphin" || die + BUILD_DIR="${BUILD_DIR_DOLPHIN}" CMAKE_USE_DIR="${S}/src/MEGAShellExtDolphin" "$@" + fi +} + +nautilus_run() { + if use nautilus; then + cd "${S}/src/MEGAShellExtNautilus" || die + "$@" + fi +} + +nemo_run() { + if use nemo; then + cd "${S}/src/MEGAShellExtNemo" || die + "$@" + fi +} + +thunar_run() { + if use thunar; then + cd "${S}/src/MEGAShellExtThunar" || die + "$@" + fi +} + +src_prepare() { + if [[ ${PV} != 9999 ]]; then + rmdir src/MEGASync/mega || die + mv "${WORKDIR}/sdk-${MEGA_SDK_REV}" src/MEGASync/mega || die + fi + + cmake_src_prepare +} + +src_configure() { + # https://github.com/meganz/sdk/issues/2679 + append-cppflags -DNDEBUG + + local mycmakeargs=( + # build internal libs as static + -DBUILD_SHARED_LIBS=OFF + -DCMAKE_MODULE_PATH="${S}/src/MEGASync/mega/contrib/cmake/modules/packages" + -DENABLE_DESKTOP_UPDATE_GEN=OFF + -DUSE_FFMPEG=$(usex thumbnail) + -DUSE_FREEIMAGE=$(usex thumbnail) + -DUSE_MEDIAINFO=$(usex mediainfo) + -DUSE_PDFIUM=OFF + -DUSE_READLINE=OFF + ) + cmake_src_configure + + unset mycmakeargs + dolphin_run cmake_src_configure + nautilus_run eqmake5 + nemo_run eqmake5 + thunar_run eqmake5 +} + +src_compile() { + cmake_src_compile + + dolphin_run cmake_src_compile + nautilus_run emake + nemo_run emake + thunar_run emake +} + +src_install() { + cmake_src_install + + dolphin_run cmake_src_install + nautilus_run emake INSTALL_ROOT="${D}" install + nemo_run emake INSTALL_ROOT="${D}" install + thunar_run emake INSTALL_ROOT="${D}" install +} diff --git a/net-misc/megasync/megasync-9999.ebuild b/net-misc/megasync/megasync-9999.ebuild index f9b4f301f..c93022217 100644 --- a/net-misc/megasync/megasync-9999.ebuild +++ b/net-misc/megasync/megasync-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit autotools cmake qmake-utils xdg +inherit cmake flag-o-matic qmake-utils xdg DESCRIPTION="The official Qt-based program for syncing your MEGA account in your PC" HOMEPAGE=" @@ -17,7 +17,7 @@ if [[ ${PV} == 9999 ]];then EGIT_BRANCH="master" EGIT_SUBMODULES=( '*' ) else - MEGA_SDK_REV="f71b60452a5d6c32bebc5125a13977a335d78e71" # commit of src/MEGASync/mega submodule + MEGA_SDK_REV="eb8dba09149e1aad0210c3591f3ef6e50022f714" # commit of src/MEGASync/mega submodule MEGA_TAG_SUFFIX="Linux" SRC_URI=" https://github.com/meganz/MEGAsync/archive/v${PV}_${MEGA_TAG_SUFFIX}.tar.gz -> ${P}.tar.gz @@ -29,7 +29,7 @@ fi LICENSE="MEGA" SLOT="0" -IUSE="dolphin freeimage nautilus nemo thunar" +IUSE="dolphin mediainfo nautilus nemo thumbnail thunar" DEPEND=" dev-db/sqlite:3 @@ -48,26 +48,35 @@ DEPEND=" dev-qt/qtsvg:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5 - media-libs/libmediainfo - media-libs/libraw - media-libs/libzen net-dns/c-ares:= - net-misc/curl[ssl,curl_ssl_openssl(-)] + net-misc/curl[ssl] sys-libs/zlib x11-libs/libxcb:= - dolphin? ( kde-apps/dolphin ) - freeimage? ( + dolphin? ( + kde-apps/dolphin:5 + kde-frameworks/kcoreaddons:5 + kde-frameworks/kio:5 + kde-frameworks/kwidgetsaddons:5 + ) + mediainfo? ( + media-libs/libmediainfo + media-libs/libzen + ) + nautilus? ( + dev-libs/glib:2 + >=gnome-base/nautilus-43 + ) + nemo? ( + dev-libs/glib:2 + gnome-extra/nemo + ) + thumbnail? ( media-libs/freeimage media-video/ffmpeg:= ) - nautilus? ( >=gnome-base/nautilus-43 ) - nemo? ( gnome-extra/nemo ) - thunar? ( xfce-base/thunar ) -" -RDEPEND=" - ${DEPEND} - x11-themes/hicolor-icon-theme + thunar? ( xfce-base/thunar:= ) " +RDEPEND="${DEPEND}" BDEPEND=" dev-qt/linguist-tools:5 dolphin? ( kde-frameworks/extra-cmake-modules ) @@ -76,9 +85,40 @@ BDEPEND=" PATCHES=( "${FILESDIR}/${PN}-4.10.0.0_ffmpeg6.patch" "${FILESDIR}/${PN}-4.10.0.0_fix-build.patch" + "${FILESDIR}/${PN}-5.3.0.0-link-zlib.patch" + "${FILESDIR}/${PN}-5.3.0.0-fix-install-dir.patch" + "${FILESDIR}/${PN}-5.3.0.0-rename-libcryptopp.patch" ) -CMAKE_USE_DIR="${S}/src/MEGAShellExtDolphin" +BUILD_DIR_DOLPHIN="${S}_dolphin" + +dolphin_run() { + if use dolphin; then + cd "${S}/src/MEGAShellExtDolphin" || die + BUILD_DIR="${BUILD_DIR_DOLPHIN}" CMAKE_USE_DIR="${S}/src/MEGAShellExtDolphin" "$@" + fi +} + +nautilus_run() { + if use nautilus; then + cd "${S}/src/MEGAShellExtNautilus" || die + "$@" + fi +} + +nemo_run() { + if use nemo; then + cd "${S}/src/MEGAShellExtNemo" || die + "$@" + fi +} + +thunar_run() { + if use thunar; then + cd "${S}/src/MEGAShellExtThunar" || die + "$@" + fi +} src_prepare() { if [[ ${PV} != 9999 ]]; then @@ -86,52 +126,47 @@ src_prepare() { mv "${WORKDIR}/sdk-${MEGA_SDK_REV}" src/MEGASync/mega || die fi - if use dolphin; then - cmake_src_prepare - else - default - fi - - cd "${S}/src/MEGASync/mega" || die - eautoreconf + cmake_src_prepare } src_configure() { - cd "${S}/src/MEGASync/mega" || die - econf \ - "--disable-curl-checks" \ - "--disable-examples" \ - $(use_with freeimage) - - cd "${S}/src" || die - local myqmakeargs=( - MEGA.pro - CONFIG+="release" - $(usex freeimage "" "CONFIG+=nofreeimage") - $(usev nautilus "SUBDIRS+=MEGAShellExtNautilus") - $(usev nemo "SUBDIRS+=MEGAShellExtNemo") - $(usev thunar "SUBDIRS+=MEGAShellExtThunar") + # https://github.com/meganz/sdk/issues/2679 + append-cppflags -DNDEBUG + + local mycmakeargs=( + # build internal libs as static + -DBUILD_SHARED_LIBS=OFF + -DCMAKE_MODULE_PATH="${S}/src/MEGASync/mega/contrib/cmake/modules/packages" + -DENABLE_DESKTOP_UPDATE_GEN=OFF + -DUSE_FFMPEG=$(usex thumbnail) + -DUSE_FREEIMAGE=$(usex thumbnail) + -DUSE_MEDIAINFO=$(usex mediainfo) + -DUSE_PDFIUM=OFF + -DUSE_READLINE=OFF ) + cmake_src_configure - eqmake5 "${myqmakeargs[@]}" - $(qt5_get_bindir)/lrelease MEGASync/MEGASync.pro || die - - use dolphin && cmake_src_configure + unset mycmakeargs + dolphin_run cmake_src_configure + nautilus_run eqmake5 + nemo_run eqmake5 + thunar_run eqmake5 } src_compile() { - emake -C src + cmake_src_compile - use dolphin && cmake_src_compile + dolphin_run cmake_src_compile + nautilus_run emake + nemo_run emake + thunar_run emake } src_install() { - emake -C src INSTALL_ROOT="${D}" install - dobin "src/MEGASync/${PN}" - dodoc CREDITS.md README.md - - rm -rf "${D}"/usr/share/doc/megasync || die - rm -rf "${D}"/usr/share/icons/ubuntu-mono-dark || die + cmake_src_install - use dolphin && cmake_src_install + dolphin_run cmake_src_install + nautilus_run emake INSTALL_ROOT="${D}" install + nemo_run emake INSTALL_ROOT="${D}" install + thunar_run emake INSTALL_ROOT="${D}" install } diff --git a/net-misc/megasync/metadata.xml b/net-misc/megasync/metadata.xml index 063ed9ae0..aa423a992 100644 --- a/net-misc/megasync/metadata.xml +++ b/net-misc/megasync/metadata.xml @@ -1,23 +1,23 @@ - - samuelbernardo.mail@gmail.com - Samuel Bernardo - megasync client from mega.nz - pastalian46@gmail.com Takuya Wakazono + + samuelbernardo.mail@gmail.com + Samuel Bernardo + meganz/MEGAsync - Upload your files to your Mega account from Dolphin file manager. - Upload your files to your Mega account from nautilus. - Upload your files to your Mega account from Nemo. - Upload your files to your Mega account from Thunar. - Use freeimage to manage graphic images format. + Build a plugin for Dolphin + Use media-libs/libmediainfo to determine media properties + Build a plugin for nautilus + Build a plugin for Nemo + Enable support for thumbnail generation + Build a plugin for Thunar